EtherCAT是自動(dòng)化控制最好的實(shí)時(shí)環(huán)形控制總線之一,本文以最簡(jiǎn)單的方式帶你實(shí)際操作ZMC300E的EtherCAT總線,讓你的EtherCAT電機(jī)轉(zhuǎn)起來。
前言
當(dāng)一個(gè)鼠標(biāo)插入到電腦時(shí),發(fā)生了什么?
然后,電腦會(huì)提示安裝驅(qū)動(dòng);
最后,就可以通過鼠標(biāo)來移動(dòng)光標(biāo)、單擊、雙擊等操作了。
這有問題么?當(dāng)前沒有問題,但作為程序猿,有兩個(gè)地方值得深挖一下。1、電腦安裝的驅(qū)動(dòng),是什么驅(qū)動(dòng)?當(dāng)然是鼠標(biāo)驅(qū)動(dòng),因?yàn)槲覀兘尤氲氖鞘髽?biāo)。但電腦是如何知道呢?原來USB規(guī)范中,要求每個(gè)USB設(shè)備都要有自己的設(shè)備描述符,電腦通過分析該描述符,才知道接入的是什么設(shè)備。2、為什么能通過鼠標(biāo)來移動(dòng)光標(biāo)?這是雙方共同合作的結(jié)果。首先鼠標(biāo)提供光標(biāo)位置的數(shù)據(jù),然后電腦收到鼠標(biāo)的數(shù)據(jù)后,將數(shù)據(jù)作用到光標(biāo)的位置上產(chǎn)生移動(dòng)效果。這需要有個(gè)前提,即鼠標(biāo)數(shù)據(jù)的格式,電腦需要先知道其格式,才能解釋這份數(shù)據(jù)。這份數(shù)據(jù)格式的定義,在USB的接口描述符規(guī)范中進(jìn)行了定義。
說了這么多,這和EtherCAT有關(guān)系么?當(dāng)然有,對(duì)于EtherCAT或者任意一個(gè)總線來說,都需要知道接入設(shè)備的類型及數(shù)據(jù)格式,否則是無(wú)法解釋數(shù)據(jù)的,通常有兩種方式:
事先約定:通過事先約定的來確定工作如何進(jìn)行。這就像發(fā)個(gè)信息說“我們晚上8點(diǎn)一起看電影吧“一樣簡(jiǎn)單,這是小編喜歡它的原因。但這個(gè)約定有時(shí)就像友誼的小船說翻就翻,對(duì)方招呼也不打,只剩你一個(gè)人還傻傻地站在的電影院門口;
協(xié)議規(guī)范:定義一套完整的規(guī)范,大家一起遵循它。規(guī)范通常都很多很雜,學(xué)習(xí)成本較高,按規(guī)范開發(fā)就像是你去做的基金定投,短期收益低,但穩(wěn)定可靠。
EhterCAT和USB一樣都采用了協(xié)議規(guī)范這種方式,這里簡(jiǎn)單介紹一下EtherCAT的相關(guān)規(guī)范及用途:
ESI(EtherCAT Slave Information):這個(gè)是從站提供的標(biāo)準(zhǔn)描述規(guī)范文件,該文件描述了設(shè)備的類型、數(shù)據(jù)格式及一些“特殊癖好”,這就相當(dāng)于USB的設(shè)備描述符+接口描述符。
ENI(EtherCAT Network Information):這個(gè)是用于給主站啟動(dòng)時(shí),加載的標(biāo)準(zhǔn)配置規(guī)范文件,用于初始化所有的從站。這個(gè)文件描述了從站的數(shù)量、每個(gè)從站的類型及數(shù)據(jù)格式、DC等配置信息。
ESI還理解,為啥還多了個(gè)ENI呢?EtherCAT規(guī)范為了滿足工業(yè)控制的復(fù)雜性,ESI中提供了非常強(qiáng)大的可配置功能,相對(duì)的使用起來也變得困難了。因此EtherCAT采用靜態(tài)化配置,即由PC使用可視化工具進(jìn)行對(duì)應(yīng)的配置工作,配置完成后導(dǎo)出不可變的ENI配置,給到具體的主站設(shè)備來執(zhí)行。所謂靜態(tài)化配置,即EtherCAT網(wǎng)絡(luò)設(shè)備發(fā)生變化時(shí),需要重新執(zhí)行配置工作,相比于USB的全自動(dòng)配置,功能強(qiáng)大了,但使用也麻煩了。有得必有失,這是EtherCAT的選擇。簡(jiǎn)單總結(jié)一下EtherCAT開發(fā),可分三步走:生成ENI,加載ENI,解釋輸入輸出數(shù)據(jù)。
準(zhǔn)備工作
開始EtherCAT測(cè)試前,需要準(zhǔn)備以下硬件:一臺(tái)電腦、一臺(tái)ZMC300E運(yùn)動(dòng)控制器、一臺(tái)EtherCAT伺服驅(qū)動(dòng)器、2根網(wǎng)線,然后使用網(wǎng)線將設(shè)備按如下示意圖進(jìn)行連接。
生成ENI文件
1. 啟動(dòng)EtherCAT服務(wù)
打開putty.exe軟件,輸入運(yùn)動(dòng)控制器NET1的默認(rèn)IP地址:192.168.1.136,賬號(hào)和密碼為root。
2.連接設(shè)備
啟動(dòng)ZlgEtherCatStudio上位機(jī)配置軟件,輸入運(yùn)動(dòng)控制器NET1的默認(rèn)IP地址:192.168.1.136,點(diǎn)擊回車。
3. 掃描網(wǎng)絡(luò)
通過掃描EtherCAT總線,來識(shí)別接入了多少個(gè)設(shè)備,并將其網(wǎng)絡(luò)拓?fù)涮砑拥奖镜刂髡緲涔?jié)點(diǎn)。
4.導(dǎo)入ESI
如果該從站無(wú)法正確識(shí)別,可手動(dòng)導(dǎo)入從站ESI(EtherCAT Slave Information)文件。
5. 配置FMMU
一般應(yīng)用不需配置從站FMMU/SM,使用從站默認(rèn)配置即可。當(dāng)需要改變輸入輸出變量時(shí),可通過本配置項(xiàng)配置。
6. 生成ENI文件
導(dǎo)出ENI,取名為text_eni。
加載ENI文件1.將上一步生成的test_eni.xml文件,通過WinSCP工具上傳到運(yùn)動(dòng)控制器的目錄/opt中。
2. 使用控制器加載ENI配置/文件在putty.exe工具,先輸入ctrl+c結(jié)束當(dāng)前主站程序,輸入以下命令啟動(dòng)主站并加載ENI配置文件:/opt/ecat_test/master /opt/test_eni.xml,看到輸出ethercat start success即代表成功。
解釋輸入輸出數(shù)據(jù)
在CiA402規(guī)范中,定義了伺服類設(shè)備的數(shù)據(jù)格式,這里給大家介紹一下最常用的位置控制模式的數(shù)據(jù)格式。
1.輸出數(shù)據(jù)
Controlword:控制字,16Bit,主要用于控制電機(jī)上下電,抱閘等;
Target Position:目標(biāo)位置,32Bit,用于控制電機(jī)轉(zhuǎn)到指定的位置。
2.輸入數(shù)據(jù)(相對(duì)于設(shè)備)
Statusword:控制字,16Bit,主要用于控制電機(jī)上電、下電、抱閘等操作;
Position Actual Value:實(shí)際位置,用于反饋電機(jī)當(dāng)前所在位置。我們要做的就是周期性解釋以上4個(gè)數(shù)據(jù),然后執(zhí)行對(duì)應(yīng)的操作即可,可參考如下代碼:
電機(jī)測(cè)試
在putty.exe工具中,可使用以下命令,對(duì)電機(jī)進(jìn)行簡(jiǎn)易測(cè)試,這些命令是基于CiA402規(guī)范進(jìn)行實(shí)現(xiàn)的。
1. move_test命令
angle表示電機(jī)轉(zhuǎn)動(dòng)角度,輸入該命令后,電機(jī)會(huì)一直重復(fù)執(zhí)行輸出:先正轉(zhuǎn)angle度,然后反轉(zhuǎn)angle度。
輸入move_test 90,仔細(xì)觀察電機(jī)的轉(zhuǎn)動(dòng),如果發(fā)現(xiàn)轉(zhuǎn)動(dòng)的角度比90度小,則說明脈沖當(dāng)量偏小,應(yīng)適當(dāng)增加。推薦10倍住上遞增進(jìn)行測(cè)試,該值默認(rèn)為1。
2、units命令unit表示脈沖當(dāng)量,units 1000命令用于將軸0的脈沖當(dāng)量設(shè)置成1000。使用units?查看所有軸的脈沖當(dāng)量。
其它補(bǔ)充
1. 關(guān)于脈沖當(dāng)量
在實(shí)際應(yīng)用中,脈沖當(dāng)量的準(zhǔn)備值,是如何計(jì)算出來的?這個(gè)應(yīng)根據(jù)實(shí)際的場(chǎng)景及所需要單位來確定,這里給出一個(gè)常見的,以角度為單位的脈沖當(dāng)量計(jì)算公式。
編碼器的分辨率,可以從伺服驅(qū)動(dòng)器的手冊(cè)得到。
2. 關(guān)于EtherCAT主站
ZMC300E提供的EtherCAT主站,采用的是KPA master主站,商業(yè)授權(quán),其主要特點(diǎn)是高效、穩(wěn)定、支持通過硬件來消除幀抖動(dòng)(ZMC300E可做到±15us的抖動(dòng)),我司已購(gòu)買其版權(quán),用戶可免費(fèi)自由使用。
-
電機(jī)
+關(guān)注
關(guān)注
142文章
8875瀏覽量
144866
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論