0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【產(chǎn)品應(yīng)用】三個(gè)步驟,讓你的EtherCAT電機(jī)轉(zhuǎn)起來

ZLG致遠(yuǎn)電子 ? 2022-12-09 11:09 ? 次閱讀

EtherCAT是自動(dòng)化控制最好的實(shí)時(shí)環(huán)形控制總線之一,本文以最簡(jiǎn)單的方式帶你實(shí)際操作ZMC300E的EtherCAT總線,讓你的EtherCAT電機(jī)轉(zhuǎn)起來。

c02ad89e-7741-11ed-b116-dac502259ad0.jpg 前言

當(dāng)一個(gè)鼠標(biāo)插入到電腦時(shí),發(fā)生了什么?

首先電腦會(huì)檢測(cè)到有USB插入;

然后,電腦會(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ù)。


c02ad89e-7741-11ed-b116-dac502259ad0.jpg 準(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)行連接。

c03a7628-7741-11ed-b116-dac502259ad0.png

c02ad89e-7741-11ed-b116-dac502259ad0.jpg 生成ENI文件

1. 啟動(dòng)EtherCAT服務(wù)

打開putty.exe軟件,輸入運(yùn)動(dòng)控制器NET1的默認(rèn)IP地址:192.168.1.136,賬號(hào)和密碼為root。

c04ddf1a-7741-11ed-b116-dac502259ad0.png

2.連接設(shè)備

啟動(dòng)ZlgEtherCatStudio上位機(jī)配置軟件,輸入運(yùn)動(dòng)控制器NET1的默認(rèn)IP地址:192.168.1.136,點(diǎn)擊回車。

c054d2f2-7741-11ed-b116-dac502259ad0.png

3. 掃描網(wǎng)絡(luò)

通過掃描EtherCAT總線,來識(shí)別接入了多少個(gè)設(shè)備,并將其網(wǎng)絡(luò)拓?fù)涮砑拥奖镜刂髡緲涔?jié)點(diǎn)。

c05dd3ac-7741-11ed-b116-dac502259ad0.png

4.導(dǎo)入ESI

如果該從站無(wú)法正確識(shí)別,可手動(dòng)導(dǎo)入從站ESI(EtherCAT Slave Information)文件。

c0676e26-7741-11ed-b116-dac502259ad0.png

5. 配置FMMU

一般應(yīng)用不需配置從站FMMU/SM,使用從站默認(rèn)配置即可。當(dāng)需要改變輸入輸出變量時(shí),可通過本配置項(xiàng)配置。

c070fb6c-7741-11ed-b116-dac502259ad0.png

6. 生成ENI文件

導(dǎo)出ENI,取名為text_eni。

c077bfce-7741-11ed-b116-dac502259ad0.png


c02ad89e-7741-11ed-b116-dac502259ad0.jpg 加載ENI文件1.將上一步生成的test_eni.xml文件,通過WinSCP工具上傳到運(yùn)動(dòng)控制器的目錄/opt中。

c0878936-7741-11ed-b116-dac502259ad0.png

2. 使用控制器加載ENI配置/文件在putty.exe工具,先輸入ctrl+c結(jié)束當(dāng)前主站程序,輸入以下命令啟動(dòng)主站并加載ENI配置文件:/opt/ecat_test/master /opt/test_eni.xml,看到輸出ethercat start success即代表成功。


c02ad89e-7741-11ed-b116-dac502259ad0.jpg 解釋輸入輸出數(shù)據(jù)

在CiA402規(guī)范中,定義了伺服類設(shè)備的數(shù)據(jù)格式,這里給大家介紹一下最常用的位置控制模式的數(shù)據(jù)格式。

1.輸出數(shù)據(jù)

c09a7f46-7741-11ed-b116-dac502259ad0.png

Controlword:控制字,16Bit,主要用于控制電機(jī)上下電,抱閘等;

Target Position:目標(biāo)位置,32Bit,用于控制電機(jī)轉(zhuǎn)到指定的位置。

2.輸入數(shù)據(jù)(相對(duì)于設(shè)備)c0a00dee-7741-11ed-b116-dac502259ad0.png

Statusword:控制字,16Bit,主要用于控制電機(jī)上電、下電、抱閘等操作;

Position Actual Value:實(shí)際位置,用于反饋電機(jī)當(dāng)前所在位置。我們要做的就是周期性解釋以上4個(gè)數(shù)據(jù),然后執(zhí)行對(duì)應(yīng)的操作即可,可參考如下代碼:

c0a8347e-7741-11ed-b116-dac502259ad0.png


c02ad89e-7741-11ed-b116-dac502259ad0.jpg 電機(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)量。
c02ad89e-7741-11ed-b116-dac502259ad0.jpg 其它補(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ì)算公式。

c0bb895c-7741-11ed-b116-dac502259ad0.png

編碼器的分辨率,可以從伺服驅(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)自由使用。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 電機(jī)
    +關(guān)注

    關(guān)注

    142

    文章

    8875

    瀏覽量

    144866
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    簡(jiǎn)述光刻工藝的三個(gè)主要步驟

    “ 光刻作為半導(dǎo)體中的關(guān)鍵工藝,其中包括3大步驟的工藝:涂膠、曝光、顯影。三個(gè)步驟有一個(gè)異常,整個(gè)光刻工藝都需要返工處理,因此現(xiàn)場(chǎng)異常的處理顯得尤為關(guān)鍵”
    的頭像 發(fā)表于 10-22 13:52 ?238次閱讀

    PMSM_3_4的程序用的LEVEL1,永磁同步電機(jī)不能正常轉(zhuǎn)起來,為什么?

    有人用官網(wǎng)上的PMSM_3_4程序控制永磁同步電機(jī)嗎? 為什么我用PMSM_3_4的程序用的LEVEL1,永磁同步電機(jī)不能正常轉(zhuǎn)起來,電機(jī)只在那來回?cái)[動(dòng)。有誰(shuí)能幫忙解答一下嗎?
    發(fā)表于 09-14 07:21

    快速確定升壓轉(zhuǎn)換器最大輸出電流的三個(gè)步驟

    電子發(fā)燒友網(wǎng)站提供《快速確定升壓轉(zhuǎn)換器最大輸出電流的三個(gè)步驟.pdf》資料免費(fèi)下載
    發(fā)表于 09-07 10:42 ?0次下載
    快速確定升壓轉(zhuǎn)換器最大輸出電流的<b class='flag-5'>三個(gè)</b><b class='flag-5'>步驟</b>

    建立神經(jīng)網(wǎng)絡(luò)模型的三個(gè)步驟

    建立神經(jīng)網(wǎng)絡(luò)模型是一個(gè)復(fù)雜的過程,涉及到多個(gè)步驟和細(xì)節(jié)。以下是對(duì)建立神經(jīng)網(wǎng)絡(luò)模型的三個(gè)主要步驟的介紹: 第一步:數(shù)據(jù)準(zhǔn)備 1.1 數(shù)據(jù)收集 數(shù)據(jù)是神經(jīng)網(wǎng)絡(luò)的基礎(chǔ)。首先,
    的頭像 發(fā)表于 07-02 11:20 ?661次閱讀

    研控8線步進(jìn)電機(jī)最簡(jiǎn)單三個(gè)步驟

    步進(jìn)電機(jī)是一種將電脈沖信號(hào)轉(zhuǎn)換為機(jī)械角位移的電機(jī),廣泛應(yīng)用于各種自動(dòng)化設(shè)備和機(jī)器人中。研控8線步進(jìn)電機(jī)是一種常見的步進(jìn)電機(jī)類型,具有較高的精度和穩(wěn)定性。本文將詳細(xì)介紹研控8線步進(jìn)
    的頭像 發(fā)表于 06-12 09:16 ?1086次閱讀

    不用上位機(jī)如何伺服電機(jī)轉(zhuǎn)起來

    在沒有上位機(jī)的情況下,要讓伺服電機(jī)轉(zhuǎn)動(dòng)起來,可以通過以下步驟實(shí)現(xiàn): 1. 了解伺服電機(jī)的基本原理 伺服電機(jī)是一種高精度的
    的頭像 發(fā)表于 06-06 10:57 ?875次閱讀

    RISC-V的中斷處理 中斷操作三個(gè)步驟

    中斷操作三個(gè)步驟: 1、中斷初始化 2、trap處理 3、用戶中斷處理
    的頭像 發(fā)表于 05-20 16:38 ?1014次閱讀

    stm32 foc2.0電機(jī)可以向一個(gè)方向轉(zhuǎn)起來,在反轉(zhuǎn)的時(shí)候會(huì)卡一下,為什么?

    我的電機(jī)是23對(duì)極的,帶Hall直流無(wú)刷電機(jī)。配置好參數(shù)后,電機(jī)可以向一個(gè)方向轉(zhuǎn)起來,運(yùn)轉(zhuǎn)很好,但在反轉(zhuǎn)的時(shí)候會(huì)卡一下。不知道什么原因。經(jīng)過
    發(fā)表于 05-10 06:18

    stm8s003/stm8s005單片機(jī)控制的電機(jī),當(dāng)電機(jī)轉(zhuǎn)起來時(shí),用手一捏住光感線,電機(jī)速度就變慢了或是停下,為什么?

    我最近遇到一個(gè)問題,很奇怪,也很難解釋。我采用的stm8s003 stm8s005單片機(jī)控制的電機(jī),用于跑步機(jī)方面的。電機(jī)的速度反饋采用的是光感,當(dāng)電機(jī)
    發(fā)表于 05-08 08:13

    STEVAL-SPIN3202如何使用SDK5.x控制電機(jī)?

    我現(xiàn)在使用的板子是STEVAL-SPIN3202,電機(jī)使用的是BR2804-1700Kv,已經(jīng)通過workbench生成的代碼電機(jī)轉(zhuǎn)起來了,想請(qǐng)教一下,接下來該學(xué)習(xí)些什么去控制
    發(fā)表于 04-17 06:49

    怎么電機(jī)轉(zhuǎn)起來

    我有一個(gè)80w相六線380v/220v電機(jī),一個(gè)相序保護(hù)繼電器xj12,請(qǐng)問我還需要做什么才能讓它轉(zhuǎn)起來?需要變頻器嗎?我從哪里弄電源呢?
    發(fā)表于 03-27 16:07

    TLE9893的評(píng)估版驅(qū)動(dòng)一個(gè)無(wú)感BLDC,請(qǐng)問怎么配置config Wizard才能讓電機(jī)轉(zhuǎn)起來

    不需要什么精確的控制,只要能夠轉(zhuǎn)起來就行
    發(fā)表于 01-25 07:31

    單相電機(jī)啟動(dòng)時(shí)如果電容壞了,用手推一下電機(jī)會(huì)不會(huì)轉(zhuǎn)起來?

    單相電機(jī)啟動(dòng)時(shí)如果電容壞了,用手推一下電機(jī)電機(jī)會(huì)不會(huì)轉(zhuǎn)起來?
    發(fā)表于 12-18 07:33

    單相電機(jī)起動(dòng)電容壞了,用手起動(dòng)電機(jī)轉(zhuǎn)起來以后能否達(dá)到額定轉(zhuǎn)數(shù)呢?

    單相電機(jī),起動(dòng)電容壞了,用手起動(dòng),電機(jī)轉(zhuǎn)起來以后能否達(dá)到額定轉(zhuǎn)數(shù)呢?
    發(fā)表于 11-14 06:22

    為什么有些電機(jī)做完識(shí)別后,啟動(dòng)后沒給任何轉(zhuǎn)矩或轉(zhuǎn)速?

    問題如題所示 不是識(shí)別時(shí)會(huì)轉(zhuǎn)起來,我做的都是標(biāo)準(zhǔn)識(shí)別,靜態(tài)和動(dòng)態(tài)識(shí)別都會(huì)做,只是有些電機(jī)在現(xiàn)場(chǎng)啟動(dòng)后自己會(huì)轉(zhuǎn)起來,我懷疑是干擾問題,遇到這種問題的時(shí)候老是不知道咋辦,到處接地,重新做識(shí)別,有些能解
    發(fā)表于 11-13 07:15