|
一、XPLC006E功能介紹
XPLC006E是正運動運動控製器推出的一款多軸經濟型EtherCAT總線運動控製器,XPLC係列運動控製器可應用於各種需要脫機或聯機運行的場合。

XPLC006E自帶6個電機軸,最多12軸運動控製(含虛擬軸數),支持12軸直線插補、電子凸輪、電子齒輪、同步跟隨、虛擬軸設置等功能。
XPLC006E支持多任務同時運行,同時可以在PC上直接仿真運行,編程方式多種可選,支持ZDevelop軟件的Basic/PLC梯形圖/HMI組態和常用上位機軟件編程。
XPLC006E隻支持EtherCAT總線軸,不支持脈衝軸和編碼器軸。采用EtherCAT總線與驅動器通訊,1ms的刷新周期。
XPLC006E支持PLC、Basic、HMI組態三種編程方式。PC上位機API編程支持C#、C++、LabVIEW、VB、matlab、Qt、Linux、.Net、iMAC、Python、 ROS等接口。

→此款產品有XPLC004E、XPLC006E、XPLC008E三個不同軸數的型號可選。
二、XPLC864E功能介紹
XPLC864E在XPLC006E的功能基礎上做了升級(即上節介紹的XPLC006E的功能都支持),部分資源空間優於XPLC006E,使用方法基本一致,不同之處在於XPLC864E,硬件支持32點輸入、32點輸出、2個ADC、2個DAC,支持脈衝軸和總線軸混合使用,總實軸軸數為8,除了帶EtherCAT接口之外,輸出口硬件上可配置為8個軸的脈衝方向信號輸出,另帶兩路編碼器輸入,可由輸入口配置
XPLC864E支持PLC、Basic、HMI組態三種編程方式。PC上位機API編程支持C#、C++、LabVIEW、VB、matlab、Qt、Linux、.Net、iMAC、Python、 ROS等接口。


XPLC係列經濟型EtherCAT總線運動控製器支持多種編程方式,支持使用正運動技術自主研發的ZDevelop開發環境的Basic語言和PLC梯形圖,上一節講解了PLC梯形圖的開發,本節內容主要講解ModbusRTU或ModbusTcp與觸摸屏通訊。
三、控製器與觸摸屏的通訊簡介
XPLC006E控製器的串口和網口采用MODBUS協議,隻要支持MODBUS通訊協議的觸摸屏都可以與XPLC006E控製器連接使用。
控製器使用MODBUS協議與第三方觸摸屏通訊時,此時需要將數據放在MODBUS寄存器內進行傳遞,支持通過串口或網口連接到控製器,有位寄存器和字寄存器兩類可用。
控製器的MODBUS地址與其他廠家的觸摸屏地址映射關係有所不同,編寫程序之前要理清控製器和觸摸屏的MODBUS寄存器地址對應關係,控製器與部分觸摸屏MODBUS寄存器地址關係如下。
1.控製器的MODBUS地址從0開始,在與威綸觸摸屏通訊時,地址都是從0開始,所以是一一對應。
控製器MODBUS_BIT(0)對應威綸觸摸屏MODBUS_0X_0,布爾型。
控製器MODBUS_REG(0)對應威綸觸摸屏MODBUS_4X_0,字寄存器。
2.在與昆侖通態觸摸屏通訊時,昆侖通態地址從1開始,沒有0地址,控製器地址從0開始,所以觸摸屏地址加1。
控製器MODBUS_BIT(0)對應昆侖通態觸摸屏MODBUS_0X_1,布爾型。
控製器MODBUS_REG(0)對應昆侖通態觸摸屏MODBUS_4X_1,字寄存器 。

四、觸摸屏與控製器的連接方式
genjuchumopinghekongzhiqishangdaidetongxunjiekouxuanzetongxunlianjiefangshi,kexuanchuankoulianjiehuowangkoulianjie。chumopinghekongzhiqijianlitongxunlianjiedeshihou,cishichumopingweizhuzhan,kongzhiqiweicongzhan,zhuyaozaichumopingduancaozuolianjie,lianjieshiduiyingdechuankouhuowangkoucanshuyaopipei,kongzhiqiduanzhixutigongtongxundecanshu,yixiaweiwangkouhechuankoudetongxuncanshushuoming。
1. 網口連接
控製器出廠默認IP地址為“192.168.0.11”,網口默認為MODBUS從端,IP地址可在軟件“控製器狀態”窗口查看。使用IP_ADDRESS指令修改IP地址或在修改IP地址窗口修改,修改一次永久生效。控製器至少包含2個網口通道,網口的端口號為502,支持觸摸屏的MODBUS-TCP協議連接。
網口通道數查看:不同型號控製器支持的串口通道數和網口通道數不同。使用在線命令欄發送“?*port”查看通道數,如下圖,通道數確定了控製器能同時連接的設備個數。

上圖中的Port:0-1為串口通道,2-9都是網口通道,10-15為自定義網口通訊通道,20為控製器互聯通道。
不同型號的控製器支持的通訊通道數不同。控製器至少有2個網口通道,所以可以通過網口同時連接2個設備,比如連接上位機程序的同時,再連接ZDevelop軟件在線監控。通過路由器連接兩個不同設備也是可以的。
在線命令欄發送“?*port_status”查看通訊端口是否已被使用。返回值為0表示沒有連接,返回值為1表示連接。
前兩個通道COM為串口通道,串口總是返回1,第三個通道為網口通道,用於連接ZDevelop。

當前網口通道協議查看使用PROTOCOL 指令返回當前通道的通訊協議,根據下表返回值判斷。
VAR1 = PROTOCOL(port)
port:通道號

2.串口連接
串口通常可選RS232串口或RS485串口,串口默認參數為:波特率38400,數據位8,停止位1,校驗位無,串口默認為MODBUS從端,與觸摸屏通訊時無需修改,采用SETCOM指令配置串口參數。
注意:串口參數時掉電不保存的,控製器重新上電後,SETCOM參數會還原成默認值,控製器的所有串口的MODBUS協議站號ADDRESS為 1- 127,缺省=1。
串口參數可通過“控製器狀態”窗口通訊配置查詢如下圖,或“?*SETCOM”打印查看。

五、控製器連接觸摸屏使用
1.控製器與觸摸屏通訊的參考流程
(1)控製器端的程序使用ZDevelop軟件編寫完成下載到控製器內。
(2)觸摸屏端的程序使用對應的編程軟件編寫完成後下載到觸摸屏保存。
(3)程序下載完成之後,選擇串口或網口連接觸摸屏與控製器脫機運行。
通訊時可用寄存器類型有如下幾種:MODBUS_BIT(布爾型),MODBUS_REG(16位整型),MODBUS_LONG(32位整型),MODBUS_IEEE(32位浮點型),MODBUS_STRING(8位字節型)。
2.下載控製器程序
控製器端的程序使用ZDevelop軟件編寫完成並下載到控製器內。

3.下載觸摸屏程序
威綸觸摸屏端的程序使用EasyBuilder編程軟件編寫,編程方法參見威綸提供手冊,程序編程完成後,打開“係統參數設置”窗口,如下圖。

(1)添加要與觸摸屏連接的設備
設備列表裏會顯示本機觸摸屏和本機設備,若有本機設備雙擊該行,若是第一次建立連接,沒有本機設備,需要新建,點擊 “新建設備/服務器...”,彈出“設備屬性”窗口。

(2)設置設備屬性
如下圖所示,選擇設備類型,先選MODBUS IDA通訊協議,再根據觸摸屏與控製器的實際連接方式選擇。
串口通訊和網口通訊所選的設備類型不同,詳見後續說明。

A.若采用串口連接
設備類型:選擇模式MODBUS RTU(Zero-based Addressing);
接口類型:選擇串口類型(RS485或RS232);
COM:通訊端口設置匹配的波特率等參數,如下圖,此時參數必須與連接到控製器的端口參數一致,設置完成確認關閉係統參數設置窗口。

B.若采用網口連接
設備類型:選擇模式MODBUS TCP/IP(Zero-based Addressing),接口類型自動改為以太網;
IP:填入當前要連接的控製器的IP地址和端口號,如下圖;
設置完成確認關閉係統參數設置窗口。

係統參數設置完成後,編譯寫好的組態程序,點擊“編譯”,打開如下圖編譯窗口。

點擊右下角“開始編譯”按鈕,編譯成功打印信息提示,“開始編譯”按鈕變成“編譯”按鈕,程序不正確編譯窗口會打印出錯誤提示信息,這時需要修改程序直至編譯成功。

程序編譯成功,將觸摸屏連接到PC下載程序,下載程序入口如下圖。

點擊下載按鈕,通過以太網將程序下載到觸摸屏,下載完成後,程序已寫入觸摸屏,可以斷開觸摸屏與PC的連接。
(3)觸摸屏和控製器通訊
在控製器端的程序成功下載到控製器後,和觸摸屏端的程序成功下載到觸摸屏之後,可與PCduankailianjie,wulilianjiechumopingyukongzhiqi,cishichumopingyukongzhiqijiukeyixianghutongxinle,ruowufatongxun,zexuyaojianzhashangyibuchumopingduandetongxuncanshudepeizhi。
(4)控製器與觸摸屏脫機仿真
若沒有控製器或觸摸屏,可采用仿真器仿真,ZDevelop程序下載到仿真器內,隻支持網口連接仿真,按照上麵的步驟,EasyBuilder軟件的係統參數設置時選擇設備類型為MODBUS IDA—MODBUS TCP/IP(Zero-based Addressing),IP地址填入仿真器IP:127.0.0.1,如下圖選擇“在線模擬”即可連接控製器程序與組態程序進行仿真。

點擊在線模擬之後自動開始編譯,編譯結果正確打開如下觸摸屏仿真界麵,此時可以操作。編譯不成功會出現報錯錯誤信息。
觸摸屏仿真界麵如下圖所示:

六、觸摸屏通訊例程
1.課程前期準備材料
(1)電腦1台:用於程序開發;
(2)控製器1個:XPLC864E,完成直線和平麵圓弧插補;
(3)24V直流電源1個:控製器采用24V直流電源供電;
(4)總線驅動器+電機(或步進驅動器+電機)2套:數量根據軸數選定;
(5)威綸觸摸屏1個:人機交互;
(6)控製器接線端子若幹;
(7)網線若幹;
(8)連接線若幹。
2.項目配置
寄存器地址分配如下表:

本項目使用的D寄存器均為MODBUS_IEEE。
任務資源配置如下圖:本實例占用三個任務。
任務0:主循環,循環掃描外部輸入信號來決定其他任務的啟動。
任務1:由任務0啟動,加工前先用任務1執行回零程序,回零完成後任務1用於加工程序。
任務2:由任務0啟動,用於手動運動。

如下圖,在ZDevelop軟件上通過“寄存器”窗口批量查詢MODBUS寄存器的值。

3.應用程序
(1)威綸觸摸屏端程序
使用觸摸屏廠商提供的組態編程軟件編寫,觸摸屏通過MODBUS與控製器通訊,元件屬性設置對應MODBUS寄存器地址,按下元件可以修改對應的MODBUS寄存器地址的值,傳遞給控製器處理,程序界麵如下圖。

(2)控製器端程序
控製器的編程界麵和程序如下圖:

控製器端通過WHILE不斷的掃描MODBUS寄存器值的變化來決定是否執行對應的程序。
'**********初始化模塊*********
SETCOM(38400,8,1,0,0,4,2,1000) '出廠模式,MODBUS字寄存器和VR空間獨立
ERRSWITCH = 3 '全部信息輸出
RAPIDSTOP(2)
WAIT IDLE
BASE(0,1) '選定 X Y軸
DPOS=0,0
ATYPE=1,1
UNITS = 100,100
SPEED = 100,100
ACCEL = 1000,1000
DECEL = 1000,1000
SRAMP = 100,100
DIM run_state '運行狀態
run_state = 0 '0 停止,1 運行,2 回零
MODBUS_REG(0) = run_state '顯示運行狀態
DIM radius,length '半徑,長度
radius = 100 '缺省半徑大小
length = 300 '缺省長度
'FLASH_READ 0,radius,length
MODBUS_IEEE(2) = radius '顯示半徑大小
MODBUS_IEEE(4) = length '顯示長度
DIM home_done '回零完成的標誌位 0 未回零,1 已回零
home_done = 0 '上電進入未回零狀態
MODBUS_BIT(0) = 0 '啟動 按鈕複歸
MODBUS_BIT(1) = 0 '停止 按鈕複歸
MODBUS_BIT(4) = 0 '回零 按鈕複歸
MODBUS_BIT(5) = 0 '保存數據 按鈕複歸
MODBUS_BIT(1000)=0 'X軸 回零標誌為0
MODBUS_BIT(1001)=0 'Y軸 回零標誌為0
STOPTASK 2
RUNTASK 2, guidetask '啟動手動運行任務
'**********按鍵掃描模塊*********
WHILE 1 '掃描觸摸屏端按鈕輸入
IF MODBUS_BIT(0)= 1 THEN '啟動按鈕按下
MODBUS_BIT(0) = 0 '按鈕複歸
IF run_state = 0 THEN '待機停止狀態
IF home_done = 0 THEN'未回零時不啟動運動
TRACE "before move need home"
ELSEIF home_done = 1 THEN'已回零啟動任務運行
TRACE "move start"
STOPTASK 1 '軟件安全,停止任務0
RUNTASK 1, movetask '啟動運行加工任務1
ENDIF
ENDIF
ELSEIF MODBUS_BIT(1) = 1 THEN '停止按鈕按下
TRACE "move stop"
MODBUS_BIT(1) = 0 '按鈕複歸
RAPIDSTOP(2)
STOPTASK 1
RAPIDSTOP(2)
WAIT IDLE(0)
run_state = 0 '停止標誌
MODBUS_REG(0) = run_state '顯示狀態
ENDIF
IF MODBUS_BIT(4) = 1 THEN '回零按鈕按下
MODBUS_BIT(4) = 0 '回零複歸
IF run_state= 0 THEN
stoptask 1
runtask 1,home_task '啟動回零任務
ENDIF
ENDIF
'''保存數據處理
IF MODBUS_BIT(5) = 1 THEN '保存數據 按鈕按下
MODBUS_BIT(5) = 0 '保存數據 按鈕複歸
PRINT "寫入數據到FLASH"
radius = MODBUS_IEEE(2)
length = MODBUS_IEEE(4)
FLASH_WRITE 0,radius,length'往扇區0寫入數據
ENDIF
WEND
END
'**********加工運動模塊*********
movetask: '運行畫圓弧+跑道的任務
run_state =1 '進入運行狀態
MODBUS_REG(0) = run_state
radius = MODBUS_IEEE(2) '讀取半徑
length = MODBUS_IEEE(4) '讀取長度
TRIGGER
BASE(0,1) '選定 X Y軸
MOVEABS(0,0)
MOVE(length,0) '從原點開始走跑道軌跡
MOVECIRC(0,radius*2,0,radius,0)
MOVE(-length,0)
MOVECIRC(0,-radius*2,0,-radius,0)
WAIT IDLE(0)
run_state = 0'進入待機狀態
MODBUS_REG(0) = run_state
END
'**********回零任務*********
home_task:
TRACE "enter home task"
run_state = 2 '回零標誌
MODBUS_REG(0) = run_state '顯示狀態
TRIGGER
BASE(0,1)
CANCEL(2) AXIS(0)'先軸0,軸1停止
CANCEL(2) AXIS(1)
WAIT IDLE(0)
WAIT IDLE(1)
MOVEABS(0) AXIS(0)'虛擬設備軸0的歸零,實際軸使用DATUM回零
MOVEABS(0) AXIS(1)'虛擬設備軸1的歸零
WAIT IDLE(0)
MODBUS_BIT(1000)=1'設置軸0已歸零的標誌
WAIT IDLE(1)
MODBUS_BIT(1001)=1'設置軸1已歸零的標誌
home_done = 1
TRACE "home task done"
run_state = 0 '回到待機狀態
MODBUS_REG(0) = run_state
END
'**********手動運動*********
guidetask:
WHILE 1
IF run_state = 0 THEN '判斷是否處於停止狀態
BASE(0)
IF MODBUS_BIT(10) = 1 THEN '左
MODBUS_BIT(10) = 0
VMOVE(-1)
ELSEIF MODBUS_BIT(11) = 1 THEN '右
MODBUS_BIT(11) = 0
VMOVE(1)
ELSEIF MTYPE = 10 OR MTYPE = 11 THEN '非VMOVE運動
CANCEL(2)
ENDIF
BASE(1)
IF MODBUS_BIT(20) = 1 THEN '左
MODBUS_BIT(20) = 0
VMOVE(-1)
ELSEIF MODBUS_BIT(21) = 1 THEN '右
MODBUS_BIT(21) = 0
VMOVE(1)
ELSEIF MTYPE = 10 OR MTYPE = 11 THEN '非VMOVE運動
CANCEL(2)
ENDIF
ENDIF
DELAY(100)
WEND
END
(3)應用程序運動效果
A.軸位置曲線XY模式下的合成插補軌跡

B.XY模式下的合成插補軌跡


本次,正運動技術經濟型EtherCAT運動控製器(四):ModbusRTU或ModbusTcp與觸摸屏通訊 ,就分享到這裏。更多精彩內容請關注“正運動小助手”公眾號。
本(ben)文(wen)由(you)正(zheng)運(yun)動(dong)技(ji)術(shu)原(yuan)創(chuang),歡(huan)迎(ying)大(da)家(jia)轉(zhuan)載(zai),共(gong)同(tong)學(xue)習(xi),一(yi)起(qi)提(ti)高(gao)中(zhong)國(guo)智(zhi)能(neng)製(zhi)造(zao)水(shui)平(ping)。文(wen)章(zhang)版(ban)權(quan)歸(gui)正(zheng)運(yun)動(dong)技(ji)術(shu)所(suo)有(you),如(ru)有(you)轉(zhuan)載(zai)請(qing)注(zhu)明(ming)文(wen)章(zhang)來(lai)源(yuan)。
正運動技術專注於運動控製技術研究和通用運動控製軟硬件產品的研發,是國家級高新技術企業。正運動技術彙集了來自華為、中zhong興xing等deng公gong司si的de優you秀xiu人ren才cai,在zai堅jian持chi自zi主zhu創chuang新xin的de同tong時shi,積ji極ji聯lian合he各ge大da高gao校xiao協xie同tong運yun動dong控kong製zhi基ji礎chu技ji術shu的de研yan究jiu,是shi國guo內nei工gong控kong領ling域yu發fa展zhan最zui快kuai的de企qi業ye之zhi一yi,也ye是shi國guo內nei少shao有you、完整掌握運動控製核心技術和實時工控軟件平台技術的企業。主要業務有:運動控製卡_運動控製器_EtherCAT運動控製卡_EtherCAT控製器_運動控製係統_視覺控製器__運動控製PLC_運動控製_機器人控製器_視覺定位_XPCIe/XPCI係列運動控製卡等等。
|