本文以正運動技術EtherCAT運動控制器ZMC408CE為例,介紹如何使用LabVIEW對控制器參數(shù)進行獲取內容并生成示波器波形。
01 ZMC408CE硬件介紹
ZMC408CE是正運動推出的一款多軸高性能EtherCAT總線運動控制器,具有EtherCAT、EtherNET、RS232、CAN和U盤等通訊接口,ZMC系列運動控制器可應用于各種需要脫機或聯(lián)機運行的場合。
ZMC408CE支持8軸運動控制,最多可擴展至32軸,支持直線插補、任意圓弧插補、空間圓弧、螺旋插補、電子凸輪、電子齒輪、同步跟隨等功能。ZMC408CE支持PLC、Basic、HMI組態(tài)三種編程方式。PC上位機API編程支持C#、C++、LabVIEW、Matlab、Qt、Linux、VB.Net、Python等接口。
ZMC408CE支持8軸運動控制,可采用脈沖軸(帶編碼器反饋)或EtherCAT總線軸,通用IO包含24路輸入口和16路輸出口,部分IO為高速IO,模擬量AD/DA各兩路,EtherCAT最快125us的刷新周期。
ZMC408CE支持8個通道的硬件比較輸出、硬件定時器、運動中精準輸出,還支持8通道PWM輸出,對應的輸出口為OUT0-7,支持8個通道同時觸發(fā)硬件比較輸出。
02 LabVIEW進行運動控制開發(fā)
1、創(chuàng)建LabVIEW項目。
2.將“光盤資料”里面LabVIEW的Vi函數(shù)庫“zauxdll”文件夾下載到電腦中,然后復制到LabVIEW安裝路徑下LabVIEW/user.lib的文件夾內。
Zauxdll函數(shù)庫路徑
Zauxdll函數(shù)庫粘貼路徑
3、相關PC函數(shù)介紹。
PC函數(shù)手冊也在光盤資料里面,具體路徑如下:“光盤資料8.PC函數(shù)函數(shù)庫2.1ZMotion函數(shù)庫編程手冊 V2.1.pdf”。
(1)ZAux_OpenEth()接口說明。
(2)獲取table寄存器內容,導入示波器數(shù)據(jù)源。
(3)獲取規(guī)劃位置。
(4)獲取反饋速度。
(5)獲取規(guī)劃速度。
(6)獲取反饋位置。
(7)電子凸輪運動。
4、LabVIEW進行運動控制的數(shù)據(jù)采集數(shù)據(jù)源獲取。
(1)新建Vi,在前面板,右鍵鼠標,選擇控件進行UI設計,如圖所示,左邊是連接界面以及獲取點數(shù)、數(shù)據(jù)源等,右邊是示波器圖形規(guī)劃的位置。
(2)在程序編輯框中通過鼠標,在添加的幀里面添加“While循環(huán)”,在“While循環(huán)”里面又添加“事件結構”,右擊選擇添加事件分支,選擇“超時”事件,獲取當前獲取到數(shù)據(jù)源的采樣點數(shù),并將數(shù)據(jù)源數(shù)據(jù)導入到示波器中按波形顯示出來。
(3)選擇事件結構,右擊選擇添加事件分支,在循環(huán)結構中,當句柄為空時自動進行獲取當前ip的控制器,然后在該事件分支中使用“Z Aux Open Eth.vi”函數(shù)對控制器進行連接,以實現(xiàn)連接控制器按鈕的功能。
(4)選擇事件結構,右擊選擇添加事件分支,選擇“斷開”值改變,然后在該事件分支中使用“Z Aux Close.vi”函數(shù)對控制器斷開連接,以實現(xiàn)斷開鏈接按鈕的功能。
(5)選擇事件結構,右擊選擇添加事件分支,選擇“觸發(fā)”值改變,然后在該事件分支中使用“Z Aux Trigger.vi”函數(shù)進行觸發(fā)示波器抓取,以實現(xiàn)觸發(fā)指令抓取數(shù)據(jù)源將數(shù)據(jù)存儲到table寄存器中。
(6)選擇事件結構,右擊選擇添加事件分支,選擇“啟動采集”值改變,然后在該事件分支中使用“Z Aux Execute.vi”函數(shù)調用指令SCOPE進行啟動獲取數(shù)據(jù)源數(shù)據(jù),存放到table寄存器中。
(7)選擇事件結構,右擊選擇事件,選擇“XY圖:”鼠標改變,然后在該事件分支實時讀取XY示波器以及XY2示波器對應范圍內鼠標的坐標位置,并顯示在界面上。
(8)選擇條件結構,當正弦運動按鈕按下時兩段觸發(fā)正弦運動使用平鋪順序結構按順序執(zhí)行兩段電子凸輪運動指令,使用“Z Aux Cam.vi”函數(shù)按照提前加載在table寄存器內的數(shù)據(jù)進行對應電子凸輪運動。
03 調試與監(jiān)控
編譯運行例程,同時連接ZDevelop軟件,并對應使用單軸小例程運動一個正弦波形軌跡,進行抓取波形進行對比LabVIEW示波器波形以及ZDevelop軟件波形對比。
1.生成正弦波形數(shù)據(jù)的算法指令如下。
DIM num_p,scale,m,t '變量定義 num_p=100 scale=500 FOR p=0 TO num_p TABLE(p,((-SIN(PI*2*p/num_p)/(PI*2))+p/num_p)*scale) 'table存儲凸輪表運動參數(shù) NEXT
2、ZDevelop軟件示波器波形如下圖所示。
3、LabVIEW示波器波形,示波器數(shù)據(jù)源是DPOS數(shù)據(jù)內容,與ZDevelop軟件示波器dpos波形一致。
4、LabVIEW示波器波形,示波器數(shù)據(jù)源是VP_Speed數(shù)據(jù)內容,與ZDevelop軟件示波器VP_speed波形一致。
本次,正運動技術EtherCAT運動控制器在LabVIEW中的運動控制與實時數(shù)據(jù)采集,就分享到這里。
更多精彩內容請關注“正運動小助手”公眾號,需要相關開發(fā)環(huán)境與例程代碼,請咨詢正運動技術銷售工程師。
本文由正運動技術原創(chuàng),歡迎大家轉載,共同學習,一起提高中國智能制造水平。文章版權歸正運動技術所有,如有轉載請注明文章來源。
審核編輯 黃宇
-
LabVIEW
+關注
關注
1990文章
3668瀏覽量
331580 -
運動控制器
+關注
關注
2文章
437瀏覽量
25077 -
數(shù)據(jù)采集
+關注
關注
40文章
6764瀏覽量
115271 -
ethercat
+關注
關注
19文章
912瀏覽量
39483
發(fā)布評論請先 登錄
相關推薦









EtherCAT運動控制器上位機開發(fā)之Python+Qt(二):回零# 正運動技術# 運動控制器# 運動控制

評論