肖 克,徐世許,張 震,石朝陽
(青島大學 自動化學院,青島266071)
隨著社會高度信息化、智能化的發展,人們對體育器材的要求也越來越高,將自動化技術應用在體育器材行業成為一種趨勢。其中伺服電機驅動的抗眩暈器材相比于傳統的器材有高精度、高穩定性的特點,具有更好的訓練效果。但是伺服電機存在著運行狀態不可視的問題,因此為了保證訓練人員的人身安全必須保證電機運行的安全性。本文基于NX 運動控制器設計的伺服電機運行數據采集系統,用來控制伺服電機并且負責監視記錄電機運行的數據,電機運轉出現異常時方便操作員及時發現并且便于后期維修人員檢查數據庫中的運行數據,找出異常原因,快速解決問題,提升了自動化程度。
電機運行數據采集系統硬件包括歐姆龍NX102-1000 運動控制器、伺服驅動器、伺服電機、減速機和上位機,NX102-1000 運動控制器支持高速計數器,具有增量脈沖輸入模式、增/減脈沖輸入模式,以及實現與伺服驅動器和上位機的通信,此外NX中還自帶轉速、位置以及轉矩變量。系統上位機與NX 以EtherNet/IP 通信方式連接,當伺服電機需要啟動時,上位機向NX 發送電機運轉需要保持的轉速以及最終需要到達的圈數。在此系統中,主站是NX,主站發出的命令經過EtherCAT 通信發送到從站伺服驅動器[1],5 臺電機分別由5 個伺服驅動器驅動來控制。伺服電機自帶的編碼器監測電機轉速、位置,伺服電機用模擬量控制轉矩,在此直接監控模擬量就可以間接得到轉矩的大小。轉速、位置和轉矩信號一起經過伺服驅動器處理傳輸到NX[2],并根據應用需求利用位置信息生成需要的圈數,NX 將信號通過EtherNet/IP 通信傳回上位機,在上位機中通過CX-Supervisor 組態軟件將電機轉速、位置和轉矩等信息寫入SQL Server 數據庫中并且顯示在上位機界面上,同時CX-Supervisor 具有在出現轉矩超限、網絡故障等狀況的時候發出報警的功能,代替了以往的人工監視,提高了工作的可靠性。操作人員還可以在顯示界面對設定圈數和設定轉速進行編輯,滿足實際訓練中的各種需求。通過讓電機轉速和圈數等信息實時可視化可以及時發現電機運行是否故障,從而第一時間解決問題,提高了伺服電機運行效率。使用數據庫對電機的轉速、位置以及轉矩信息進行及時地保存,保證電機信息實時更新,有利于電機運行數據存儲。電機運行數據采集系統的結構如圖1所示。

圖1 硬件系統結構Fig.1 Hardware system structure
NX 運動控制器CPU 單元內置EIP 端口,與CX-Supervisor 組態軟件的通訊遵循EtherNet/IP 協議。使用屏蔽雙絞線作為傳輸介質,通過工業交換機網,在同一網絡環境下即可進行數據信息的傳輸。NX 與CX-Supervisor 建立通信十分簡便,不需編寫通信程序,只需通過簡單的設置即可完成數據交換,提高了開發人員的開發效率。
建立通信的步驟如下:
步驟1在Sysmac Studio 軟件上對NX 的IP地址進行設置與修改,默認地址為192.168.250.1。
步驟2修改上位機的IP,使其與NX 處于同一網絡。
步驟3設置Sysmac Gateway Console 軟件參數,將網口IP 地址設定為上位機的IP 地址[3]。
步驟4在上位機軟件上添加NX 運動控制器設備,選擇Sysmac-Device 設備類型,CX-Supervisor會自動識別可連接設備的信息:IP 地址、產品序列號、產品名稱等。
步驟5在CX-Supervisor 中新增外部變量,并將其與控制器中全局變量相關聯,如圖2所示。

圖2 新增變量Fig.2 Increment variable
為使電機轉速信息以及運行情況可視化,同時減少操作人員的工作難度、提高工作效率設計了上位機監控軟件。使用CX-Supervisor 編寫上位機監控界面,能夠使采集系統擁有上位機和NX 間進行通信的能力,監視電機從啟動到停止的全部過程。使用該軟件編寫上位機界面,可實現一鍵模擬,只需點擊鼠標右鍵即可實現模擬仿真,并且CX-Supervisor 支持多種腳本語言,可以提高編寫效率。該組態軟件能夠用任意數據庫收集并存儲機器數據便于進行過程分析。在本系統中,當抗眩暈器材啟動前,可以在監控界面設置轉速和圈數,啟動后在監控界面顯示器材的設定轉速、設定圈數、當前轉速、當前位置和當前圈數,在運行時,每Sample_interval ms向SQL Server 數據庫寫入一次數據,方便以后查看。
CX-Supervisor 向NX 傳輸控制命令,NX 執行運動控制程序,控制伺服電機完成任務,NX 控制器使用Sysmac Studio 進行編程,不僅具備類似于PLC的梯形圖指令與ST 語法指令,可以實現基本PLC的編程功能,還有著自己獨特的指令和語言。NX 的很多指令使用功能(FUN)或者功能塊(FB)表示。功能可以在程序、功能以及功能塊之間調用。但功能塊只能從程序和功能塊之中調用。
NX 的CPU 單元內置了運動控制功能模塊,簡稱MC 功能模塊。
在運動控制系統中,運動控制的控制對象為軸或軸組。軸可以是一個通過EtherCAT 連接的實際的伺服驅動或者編碼器,或者是在MC 功能模塊中虛擬的伺服驅動或編碼器。
設計的上位機監控軟件既能夠實現整個采集監控系統的數據通訊功能,又能夠完成狀態監視,數據管理儲存[4]。本系統設計的界面極具人性化特點,特點有數據實時顯示和報警信息顯示記錄等,軟件設計的功能如圖3所示。

圖3 系統功能Fig.3 System function
在CX-Supervisor 中增加電機轉速、位置、轉矩和圈數變量之后,設計該系統的界面布局,并設置相應的參數,使文本與顯示的數值類型相對應。同時,將設定轉速、設定圈數和采集間隔對應的參數設置為顯示數字鍵盤,這樣可以方便操作人員在顯示界面根據實際情況修改伺服電機轉速、圈數,提高工作效率。
為便于電機的數據采集和后期檢查,上位機監控軟件會根據電機的當前轉速和當前位置每隔Sample_interval ms 向SQL Server 數據庫寫入一次數據,其中Sample_interval 由操作人員設定。5 臺電機運行的數據庫表格分開保存,便于后期工作人員檢查。利用CX-Supervisor 組態軟件中的ADO 控件完成對數據庫記錄的增加、修改、查詢及更新。在上位機的CX-Supervisor 中通過ADO 控件與數據庫相關聯,對SQL Server 數據庫進行實時更新。將Datagrid 控件的數據源設置為ADO 控件的recordset 對象,就可以顯示ADO 控件中的數據內容,1 號電機的記錄數據庫相關代碼如下:

將電機的轉速、位置以及圈數信息顯示在監控界面上,同時在該軟件中加入了網絡故障和轉矩超限警報,能夠方便現場的操作人員實時了解伺服電機工作情況,出現故障時可以方便維修人員及時排查故障原因,可以實現更快的完成維修。位置記數模式為循環模式,模最大位置設定值360°,模最小位置設定值0°,當前角度在0~360°間變化,電機每轉1 圈,已轉圈數加1。上位機監控界面如圖4所示。

圖4 上位機監控界面Fig.4 Host computer monitoring interface
系統運行前要對NX 的通信協議進行設置,該設置必須和上位機保持一致。在上位機界面中將設定轉速和設定圈數設置完成之后,點擊“啟動”按鈕,界面中會不斷更新顯示電機的轉速和圈數信息,同時每隔Sample_interval 向數據庫寫入一次數據,其中Sample_interval 設定為2000 ms。
應用CX-Supervisor 的數據跟蹤功能,將運行過程中1 號電機的轉速、位置以及轉矩的變化過程用折線圖顯示出來,可以使工作人員更加明顯地看出電機運轉時的數據變化,運行結果如圖5所示。
折線圖和數據庫表中的數據可以看出,設計的本套伺服電機運行數據采集系統能夠精準的控制電機運行并且可以準確的采集監視電機數據,滿足使用要求。


圖5 系統運行結果Fig.5 System running results
針對控制體育器材的伺服電機運行狀態不可視的問題,本文設計了基于NX 運動控制器的伺服電機運行數據采集系統。使用該系統,既能控制器材的轉速和圈數,又可以精確地顯示器材的轉速等數據,并且在出現故障狀況的時候發出警報,提醒工作人員做出必要措施,使器材的工作性能以及安全性能取得更大的進步。操作人員只需通過上位機監控界面就可以了解其運動情況,并且轉速、位置以及轉矩數據無需人工記錄,不僅減少人力、物力,同時提高系統的可靠性。