今天,正運(yùn)動(dòng)小助手給大家分享一下EtherCAT運(yùn)動(dòng)控制卡的自定義運(yùn)動(dòng)曲線,主要介紹一下如何通過在線命令封裝自己想使用的Basic指令到上位機(jī)接口中供上位機(jī)調(diào)用。
一、ECI2828運(yùn)動(dòng)控制卡的硬件介紹
ECI2828系列控制卡支持最多達(dá)16軸直線插補(bǔ)、任意圓弧插補(bǔ)、空間圓弧、螺旋插補(bǔ)、電子凸輪、電子齒輪、同步跟隨、虛擬軸、機(jī)械手指令等。采用優(yōu)化的網(wǎng)絡(luò)通訊協(xié)議可以實(shí)現(xiàn)實(shí)時(shí)的運(yùn)動(dòng)控制。
ECI2828系列運(yùn)動(dòng)控制卡支持以太網(wǎng),232通訊接口和電腦相連,接收電腦的指令運(yùn)行,可以通過EtherCAT總線和CAN總線去連接各個(gè)擴(kuò)展模塊,從而擴(kuò)展輸入輸出點(diǎn)數(shù)或運(yùn)動(dòng)軸。
ECI2828系列運(yùn)動(dòng)控制卡的應(yīng)用程序可以使用 VC、VB、VS、C++、C#等多種高級語言來開發(fā),程序運(yùn)行時(shí)需要?jiǎng)討B(tài)庫zmotion.dll。調(diào)試時(shí)可以把ZDevelop軟件同時(shí)連接到控制器,從而方便調(diào)試、方便觀察。
ECI2828控制卡本身的硬件接口也十分豐富。具有8個(gè)本地脈沖軸,每個(gè)軸帶獨(dú)立編碼器,最多16個(gè)虛擬軸。板上自帶24個(gè)通用輸入口(其中4路是高速輸入口可以作為高速鎖存使用),16個(gè)通用輸出口(其中4路是高速輸出口可以實(shí)現(xiàn)4路的PSO),2路AD和DA。
自帶1個(gè) RS232串口,1個(gè)以太網(wǎng)接口。帶一個(gè)CAN總線接口,支持通過ZCAN協(xié)議來連接擴(kuò)展模塊。帶一個(gè)CANOPEN接口(功能需要軟件版本支持)。帶一個(gè)EtherCAT總線接口可擴(kuò)展數(shù)字模擬IO以及脈沖定位模塊等,帶一個(gè)手輪接口。
二、運(yùn)動(dòng)控制卡的Qt開發(fā)流程
1.新建Qt 項(xiàng)目
(1)將函數(shù)庫相關(guān)的文件復(fù)制到新建的項(xiàng)目中。
(2)向新建的項(xiàng)目里面添加函數(shù)庫的靜態(tài)庫。(zmotion.lib)
(3)添加函數(shù)庫相關(guān)的頭文件到項(xiàng)目中(zmcaux.cpp、zmcaux.h、Zmotion.h)。
(4)聲明相關(guān)頭文件,并定義連接句柄。
2.PC函數(shù)介紹
(1)PC函數(shù)手冊也在光盤資料里面,具體路徑如下:“光盤資料8.PC函數(shù)函數(shù)庫2.1ZMotion函數(shù)庫編程手冊V2.1.pdf”。
(2)PC編程一般需要建立上位機(jī)和控制器之間的鏈接。和控制卡的連接一般習(xí)慣使用網(wǎng)口方式進(jìn)行鏈接,具體接口說明如下。
(3)如果想將Basic指令封裝成上位機(jī)可以直接調(diào)用的接口就必須使用在線命令這個(gè)接口進(jìn)行函數(shù)封裝,在線命令接口說明如下。
(4)Basic指令SPEED的封裝示例。
3.Qt進(jìn)行Move_Pt指令的封裝,實(shí)現(xiàn)自定義曲線的運(yùn)動(dòng)。
(1)自定義曲線運(yùn)動(dòng)例程Qt界面如下。
(2)通過Qt的connect將【連接按鈕】的單擊事件綁定一個(gè)槽函數(shù)進(jìn)行鏈接控制器的操作。
(3)通過定時(shí)器更新控制器各個(gè)軸的位置和速度信息。
(4)Basic指令Move_Pt的介紹。
(5)Move_Pt的接口封裝。
A.通過在線命令ZAux_DirectCommand()進(jìn)行接口封裝。
B.Qt例程調(diào)用剛剛封裝的接口MyApi::ZAux_Direct_MovePt()。
C.示波器波形抓取。
(6)封裝一個(gè)API可以下發(fā)多個(gè)move_ptabs指令進(jìn)行加工。A.一次下發(fā)多個(gè)move_ptabs指令的封裝。
B.Qt例程調(diào)用剛封裝的接口
MyApi::ZAux_Direct_MovePtAbsS()。
C.Qt抓取軸運(yùn)動(dòng)的位置數(shù)據(jù),產(chǎn)生位置波形圖。
D.抓波形圖查看效果。a.Y=((-sin(PI*2*i/T)/(PI*2))+i/T)*500速度和位置曲線。
b.Qt抓取Y=((-sin(PI*2*i/T)/(PI*2))+i/T)*500的位置曲線。
本次,正運(yùn)動(dòng)技術(shù)EtherCAT運(yùn)動(dòng)控制卡的自定義運(yùn)動(dòng)曲線,就分享到這里。
審核編輯:湯梓紅
-
總線
+關(guān)注
關(guān)注
10文章
2900瀏覽量
88293 -
運(yùn)動(dòng)控制卡
+關(guān)注
關(guān)注
7文章
114瀏覽量
15500 -
ethercat
+關(guān)注
關(guān)注
18文章
732瀏覽量
38804
發(fā)布評論請先 登錄
相關(guān)推薦
評論