一、冗余定義
什么是總線冗余功能?我們都知道,EtherCAT現(xiàn)場總線具有靈活的拓?fù)浣Y(jié)構(gòu),設(shè)備間支持線型、星型、樹型的連接方式,其中線型結(jié)構(gòu)簡單、傳輸效率高,大多數(shù)的現(xiàn)場應(yīng)用中也是使用這種連接方式,如下圖所示。
線型的連接方式確實(shí)簡單,走線靈活,便于現(xiàn)場設(shè)備布局與維護(hù)。在自動(dòng)化的工業(yè)生產(chǎn)中,設(shè)備通常在不同的環(huán)境中長時(shí)間運(yùn)行,線纜的老化、安裝連接不夠嚴(yán)謹(jǐn)?shù)纫蛩貙?dǎo)致線纜斷連。假如有一天第一個(gè)伺服和第二個(gè)伺服之間的線纜斷了,那么第1個(gè)伺服后面的設(shè)備是不是將無法正常運(yùn)行呢?如下圖所示。
不管是哪種接線方式,線纜斷線將會(huì)影響設(shè)備的正常運(yùn)轉(zhuǎn),哪怕是傳統(tǒng)的CAN、RS485等通信的設(shè)備控制也都無法正常運(yùn)轉(zhuǎn)。問題還得要解決,那有沒有標(biāo)準(zhǔn)的、又不需要添加太多額外的設(shè)計(jì)成本,就能解決上述的問題呢?一起來看看EtherCAT總線給出的解決方案,以及EtherCAT冗余技術(shù)的實(shí)現(xiàn)原理。我們先看它的連接方式,如下圖所示。
從EtherCAT的線纜冗余接線圖中可以看出,復(fù)用了最后一個(gè)從站設(shè)備的OUT端接回主站,是不是有點(diǎn)巧妙呢?減少了硬件成本,還能解決問題,確實(shí)受大家喜歡。再來細(xì)看它的數(shù)據(jù)流向,假設(shè)還是第一個(gè)伺服和第二個(gè)伺服之間斷開了,它的工作原理如下圖所示。
伺服1和伺服2的線纜斷開后仍與從站設(shè)備連接著,但通信線路變成兩條支線,設(shè)備仍然可以正常通信,設(shè)備依然還能夠繼續(xù)控制運(yùn)行。上述就是EtherCAT冗余的解決方案,將線型結(jié)構(gòu)變成了環(huán)形結(jié)構(gòu),實(shí)現(xiàn)了鏈路冗余功能。
冗余功能的優(yōu)勢
01節(jié)約設(shè)計(jì)成本
EtherCAT線纜冗余,使用了最后一個(gè)從站設(shè)備的OUT端口,使得冗余功能標(biāo)準(zhǔn)化。
02增強(qiáng)系統(tǒng)可靠性和穩(wěn)定性
工業(yè)自動(dòng)化行業(yè)中通常要求總線上的設(shè)備不間斷運(yùn)轉(zhuǎn),不允許停止生產(chǎn),冗余技術(shù)可以實(shí)現(xiàn)應(yīng)用系統(tǒng)的可靠性和穩(wěn)定性。
03故障診斷與處理
當(dāng)出現(xiàn)線纜斷線時(shí),變成兩條之鏈路控制繼續(xù)工作,同時(shí)EtherCAT可以自動(dòng)檢測到總線系統(tǒng)中的故障點(diǎn),可大大簡化系統(tǒng)的維護(hù)工作,提高了設(shè)備的維護(hù)性。
二、環(huán)境配置
?正運(yùn)動(dòng)目前只有7系240520以后的版本支持。
環(huán)境準(zhǔn)備
(1)準(zhǔn)備一臺(tái)VPLC711-i5-ETH5一體機(jī);
(2)安裝240520以上MotionRT版本;
(3)EtherCAT做主口,其他網(wǎng)口任選一個(gè)做從口;
(4)按照?qǐng)D示接線,EtherCAT接入第一個(gè)設(shè)備的in,最后一個(gè)設(shè)備的out接入VPLC711上的對(duì)應(yīng)冗余網(wǎng)口,形成一個(gè)環(huán)路;
(5)在總線初始化過程中,SLOT_STOP總線停止后加入SLOT_SLAVE(0)=1;(6)此時(shí)環(huán)路中任意處斷開一個(gè)接口,節(jié)點(diǎn)運(yùn)行正常;
(7)有需求可在代碼中加入斷線檢測的指令。
三、RT驅(qū)動(dòng)安裝
第一步:安裝驅(qū)動(dòng)程序
1.打開“設(shè)備管理器”,選擇“操作”中的“添加過時(shí)硬件”,選擇“手動(dòng)選擇”。
2.點(diǎn)擊“下一步”。
3.點(diǎn)擊“從磁盤安裝”。
4.點(diǎn)擊“瀏覽按鈕”選擇驅(qū)動(dòng)所在的路徑,打開文件夾“driver_signed”,選擇“ZMotionRt64.inf”。
5.一直點(diǎn)擊”下一步“,直到安裝完成。
注意:驅(qū)動(dòng)更新時(shí),要從設(shè)備管理器刪除設(shè)備,一定要選擇把驅(qū)動(dòng)文件也刪除。
第二步:安裝EtherCAT協(xié)議
MotionRT711支持XPCI/XPCIE的ECAT網(wǎng)口,也支持電腦普通網(wǎng)口作為ECAT使用。
1.在Windows網(wǎng)絡(luò)連接界面,選擇需要用作冗余功能總線的網(wǎng)口,右擊屬性→安裝→協(xié)議→添加。
2.選擇“從磁盤安裝”。
3.瀏覽驅(qū)動(dòng)位置,選擇”ZMotionRtPacket.inf”。
4.點(diǎn)擊“確定”。
在屬性中查看有ZMotionRT64 Packet Protocol Driver就是安裝成功,勾選上就可以添加對(duì)應(yīng)的網(wǎng)口總線協(xié)議。不接設(shè)備的網(wǎng)口可以在這里取消掉勾選。
5.添加總線協(xié)議。
在RT7啟動(dòng)界面,點(diǎn)擊“AddEcat”,在EtherCAT總線列表下,將對(duì)應(yīng)的冗余網(wǎng)口的總線增加到列表,增加成功之后,“Start”即可。如下圖的標(biāo)號(hào)2所示。
四、冗余代碼指令分析
冗余指令使用方法如下所示。SLOT_SLAVE -- EtherCAT冗余配置。(該指令在總線停止時(shí)進(jìn)行設(shè)置)
斷線檢測指令解析如下
一、SLOT_INFO和NODE_INFO
打印SLOT_INFO(slot,5)可檢測到線纜是否斷開,0-線纜正常,1-檢測到線纜斷開。
NODE_INFO有相同功能。NODE_INFO(slot,node,6)也可檢測到設(shè)備網(wǎng)口狀態(tài),按bit位操作,第0位表示IN口狀態(tài),第1位表示OUT口狀態(tài),置1為正常,置0為斷開。
(SLOT_INFO只能讀取線路是否有斷線,不能確定是哪個(gè)節(jié)點(diǎn)斷線,NODE_INFO可以精確到某個(gè)節(jié)點(diǎn)斷線)。如下圖范例所示。
(1)表示整個(gè)環(huán)路EtherCat檢測到斷線。
(2)打印值為3,二進(jìn)制表示為0011,Bit0和Bit1均為1,表示節(jié)點(diǎn)0,正常接線。
(3)打印值為2,二進(jìn)制表示為0010,Bit0為0,Bit1為1,表示節(jié)點(diǎn)1 EtherCat In處斷開。
二、NODE_REGREAD
NODE_REGREAD(slot,node,address=0x111,bytes,modbusindes)可以讀取到設(shè)備網(wǎng)口狀態(tài),從而精準(zhǔn)判斷哪個(gè)設(shè)備哪個(gè)網(wǎng)口斷開。
正常返回為90,in處斷開返回89,out處斷開返回86。
BIT0=第一個(gè)口狀態(tài)(in口),BIT2=第二個(gè)口狀態(tài)(out口)。只看bit0和bit2,置1為斷開,置0為正常。如下圖范例所示。
(1)打印值為89,二進(jìn)制表示為01011001,Bit0為1,表示節(jié)點(diǎn)1 EtherCAT In口斷開。
(2)打印值為86,二進(jìn)制表示為01010110,Bit2為1,表示節(jié)點(diǎn)0 EtherCAT Out口斷開。
(3)打印值為90,二進(jìn)制表示為01011010,Bit0和Bit2均為0,表示節(jié)點(diǎn)2連接正常。
五、上位機(jī)C#檢測掉線應(yīng)用實(shí)例
我們通過basic腳本程序,slot_info指令循環(huán)判斷是否有掉線,若掉線,則設(shè)置對(duì)應(yīng)變量test的值,值為1表示掉線,為0則表示正常連接。Basic部分程序如下圖所示。(這里通過讀取basic全局變量值判斷,也可以通過寄存器的值判斷,或者通過node_regread掉線指令檢測)
通過上述basic程序可以看到,程序循環(huán)監(jiān)控,刷新slot_info指令的返回值,賦值給test變量,此時(shí),上位機(jī)通過監(jiān)控test的值的變化來判斷是否有掉線,上位機(jī)顯示界面如下圖所示。
1、伺服正常工作無掉線的情況。
2、伺服正常工作過程中,其中一個(gè)EtherCAT節(jié)點(diǎn)掉線的情況。
3、相關(guān)部分程序如下圖所示。
如上圖可知,上位機(jī)通過相關(guān)接口實(shí)時(shí)讀取basic底層變量test的值,來判斷相對(duì)應(yīng)的EtherCAT節(jié)點(diǎn)是否掉線。
六、機(jī)器視覺EtherCAT運(yùn)動(dòng)控制器VPLC711
VPLC711是一款基于x86平臺(tái)和Windows操作系統(tǒng)的高性能機(jī)器視覺EtherCAT運(yùn)動(dòng)控制器,具備強(qiáng)大的運(yùn)算能力和靈活性。它具有出色的實(shí)時(shí)性能和多路高速硬件輸入與多路高速PSO輸出,能夠精準(zhǔn)控制多軸同步運(yùn)動(dòng),并與外部設(shè)備實(shí)現(xiàn)多協(xié)議的高速通信。
VPLC711支持多種硬件接口和通信協(xié)議,方便與其他設(shè)備的連接和集成。除此之外,VPLC711還具備視覺處理功能,能夠?qū)崟r(shí)處理圖像數(shù)據(jù),實(shí)現(xiàn)視覺檢測、測量和定位等應(yīng)用。
VPLC711內(nèi)置Windows運(yùn)動(dòng)控制實(shí)時(shí)內(nèi)核MotionRT7,形成一種開放式IPC形態(tài)實(shí)時(shí)軟控制器/軟PLC,為用戶提供靈活集成的運(yùn)動(dòng)控制+視覺一體化解決方案。
VPLC711硬件參數(shù)
1.采用x86高性能CPU,EtherCAT可支持1ms 64軸同步運(yùn)行;
2.板載RS232,RS485,EtherNet*5,EtherCAT,USB3.0*4硬件接口;
3.板載20DI,其中4個(gè)高速色標(biāo)鎖存,2組高速單端編碼器;
4.板載20DO,其中4個(gè)高速單端脈沖軸,4組高速PWM;
5.支持DVI-D,HDMI顯示,支持雙網(wǎng)口不同IP設(shè)置。
想要了解更多關(guān)于VPLC711的詳情介紹,可以點(diǎn)擊“x86平臺(tái)實(shí)時(shí)Windows機(jī)器視覺EtherCAT運(yùn)動(dòng)控制器VPLC711”查看。
審核編輯 黃宇
-
總線
+關(guān)注
關(guān)注
10文章
2869瀏覽量
87995 -
ethercat
+關(guān)注
關(guān)注
18文章
657瀏覽量
38611
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論