色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

解鎖 EtherCAT-CoE:小米電機驅動實戰

RT-Thread官方賬號 ? 2025-01-20 18:34 ? 次閱讀

電機控制演示


簡介

EtherCAT CoE(CAN over EtherCAT)是 EtherCAT 協議中的一種通信協議,它將 CANopen 應用層協議集成到 EtherCAT 網絡中,用于分布式系統中的設備控制和數據交換。它結合了 CANopen 的易用性和 EtherCAT 的高性能優勢,廣泛用于工業自動化、運動控制和傳感器網絡等領域。

以下是 CoE 的主要特點和功能:

基于CANopen:

CoE 的應用層直接采用了 CANopen 的設備協議,包括對象字典(Object Dictionary)的結構和服務。

通過對象字典定義設備參數、通信對象和控制數據,確保了設備間的互操作性。

支持標準服務:

SDO(Service Data Object):用于點對點的配置和診斷通信,允許主站與從站交換大容量數據(如參數配置)。

PDO(Process Data Object):用于實時通信,傳輸小數據量的周期性過程數據,支持快速響應。

Emergency(EMCY)消息:用于報告設備異常情況。

NMT(Network Management):提供網絡管理功能,如啟動、停止和復位設備。

高效傳輸:

EtherCAT 的總線結構和高速幀處理能力,使 CoE 能以更低的延遲和更高的效率進行數據交換。

支持多種應用場景:

適用于工業設備配置、實時監控、參數診斷和系統集成等。

對象字典映射:

對象字典以層級結構組織設備的數據和功能。

EtherCAT 使用 CoE 協議訪問對象字典中的變量,以實現參數讀取、寫入和實時控制。

典型應用:

用于支持復雜控制邏輯的驅動器(如伺服驅動)。

用于監控、調試和配置設備的工程工具。

本節將演示如何使用Beckhoff TwinCAT3和EtherKit開發板實現EtherCAT COE主從站通信,該示例工程

已支持CSP及CSV兩種操作模式。

前期準備

軟件環境:

RT-Thread Studio

https://download-redirect.rt-thread.org/download/studio/RT-Thread Studio_2.2.8-setup-x86_64_202405200930.exe

RZN-FSP v2.0.0

https://github.com/renesas/rzn-fsp/releases/download/v2.0.0/setup_rznfsp_v2_0_0_rzsc_v2024-01.1.exe

Beckhoff Automation TwinCAT3

https://www.beckhoff.com/en-us/support/download-finder/search-result/?c-1=26782567

硬件環境:

EtherKit開發板

網線一根

Jlink調試器

CiA402伺服使用說明

首先來看下CiA402協議:CiA402協議(Communication Interface for Drive Systems)是由CiA (CAN in Automation) 組織定義的,用于工業自動化領域,特別是針對電機控制系統的標準化協議。CiA402是驅動器和運動控制器CANopen設置子協議,定義變頻器、伺服控制器以及步進的接口,它是國際標準IEC 61800-7系列的組成部分。CiA402協議基于CANopen通信協議,并在此基礎上擴展和優化了用于運動控制系統的功能。它主要用于伺服電機、步進電機以及其他類型的電動驅動系統的控制。

接下來看下FSA(有限狀態自動機)顯示驅動器的不同狀態以及如何執行它們之間的轉換。

17f95bd8-d71a-11ef-9434-92fbcf53809c.png

下面是對應上圖各個狀態的詳細說明:

1825f846-d71a-11ef-9434-92fbcf53809c.png

對于控制器來說,在通信的每個周期內,都需要主站向從站發送控制字(control word),并且接收從站的狀態字進行確認,比如說本工程中通過CiA402_StateMachine()實現CiA402的狀態切換:

1836b7bc-d71a-11ef-9434-92fbcf53809c.png

與此同時,主站通過讀取從站的狀態字(status word, 0x6041)來了解從站當前正在運行的狀態,通過 status word可以了解關于從機當前狀態和可能發生的故障或警告的詳細信息

18574644-d71a-11ef-9434-92fbcf53809c.png

而主站通過控制字(control word, 0x6040)向從站發送控制命令,以此來改變其操作狀態或觸發指定的動作:

18618fd2-d71a-11ef-9434-92fbcf53809c.png18618fd2-d71a-11ef-9434-92fbcf53809c.png

CiA402對象字典定義

下面是有關CiA402對象字典在EtherKit CoE工程中支持的列表,其中已經支持了位置模式及速度模式,可通過主站去設置控制字來與從站的過程數據進行交互,基于CoE協議完成對控制器的讀寫:

1891e24a-d71a-11ef-9434-92fbcf53809c.png18bd4930-d71a-11ef-9434-92fbcf53809c.png

TwinCAT3配置

在啟動TwinCAT3之前,我們還需要做一些配置操作:

安裝ESI文件

啟動TwinCAT之前,將發布文件夾中包含的ESI文件復制到TwinCAT目標位置:..\TwinCAT\3.x\Config\IO\EtherCAT

注意:當前版本的 ESI 文件位于:..\board\ports\ESI_File\Renesas EtherCAT RZN2 CoE CDP.xml

18d78cdc-d71a-11ef-9434-92fbcf53809c.png

新建TwinCAT工程

打開TwinCAT軟件,點擊文件->新建->新建項目,選擇TwinCAT Projects,創建TwinCAT XAR Project(XML format)工程:

19056d78-d71a-11ef-9434-92fbcf53809c.png

從站啟動CoEApp

將EtherKit開發板上電后,需要使用網線連接ETH0網口, ethercat會默認運行。

191b133a-d71a-11ef-9434-92fbcf53809c.png

從站設備掃描

新建工程之后,在左側導航欄找到Devices,右鍵選擇掃描設備。正常來說如果掃描從站設備成功的話是會顯示:Device x[EtherCAT];而掃描失敗則顯示的是:Device x[EtherCAT Automation Protocol],此時就代表從站初始化失敗。

192dc584-d71a-11ef-9434-92fbcf53809c.png

點擊Ok后會彈出一個窗口:Scan for boxes,點擊確認后,會再次彈出窗口:Activate Free Run,由于我們首次使用CoE還需要更新EEPROM固件,所以暫時先不激活。

更新EEPROM固件

回到TwinCAT,在左側導航欄中,由于我們已經成功掃描到從站設備,因此可以看到主從站的配置界

面:

193bf44c-d71a-11ef-9434-92fbcf53809c.png

我們雙擊Box 1,在中間界面的上方導航欄中單擊EtherCAT,并點擊Advanced Settings …:

194f3520-d71a-11ef-9434-92fbcf53809c.png

這里按圖示點擊Download from List …:

195e9420-d71a-11ef-9434-92fbcf53809c.png

我們寫入ESI固件到EEPROM中,這里由于我們配置的是雙網口,所以選擇Renesas EtherCAT RZ/N2 COE 2port,如果你配置的是三網口的話則選擇3port后綴的ESI文件進行下載。

19785694-d71a-11ef-9434-92fbcf53809c.png

下載完成之后,我們右鍵Device x(EtherCAT)移除設備后重新掃描并添加設備,并完成激活工作(參考上文)。

19846d94-d71a-11ef-9434-92fbcf53809c.png

EtherCAT COE測試

首先我們需要確保程序已經正常下載至工程中,同時ESI文件已經成功燒錄,下面是開發板串口終端打印信息:

19a79f44-d71a-11ef-9434-92fbcf53809c.png

同時我們打開前面新建的ESC工程,并且掃描設備,此時會彈出EtherCATdrive(s) added,我們選擇NC

– configuration,點擊OK后并激活設備:

19c1cf36-d71a-11ef-9434-92fbcf53809c.png

成功激活后, EtherCAT狀態機會依次經歷Init->Pre-Op->Safe-Op,最后到Op(Operational,可操作狀態), EtherKit CoE工程默認開啟csp (周期同步位置模式),并且支持csv(同步周期速度模式)。

當系統上電后,驅動器自動完成初始化,然后進入STATE_SWITCH_ON_DISABLED狀態,此時可以對驅動器的工作狀態模式進行設置,比如說設置為csp或csv模式等等;同時對應在開發板端能看到當前軸1對 應的CiA402狀態機信息在不斷打印:

19dd5594-d71a-11ef-9434-92fbcf53809c.png

csp位置模式控制

先來看下csp模式下的控制器:在位置模式下,我們可以將規劃好的目標位置通過寫入控制字0x607A設置目標位置,并且對應狀態字0x6064可以得到實際反饋的位置信息。

而如果想要在csp或csv模式下操作,必須先將其狀態修改為STATE_OPERATION_ENABLED (可操作模式)。

展開左側導航欄,依次點擊Box1(RenesasEtherCATRZ/N2 CoE2port)->Module1(csp- axis)-

>Outputs->Control Word,首先需要將狀態切換為伺服無故障模式,主站通過向控制字0x6040寫入值0x0080(dec:128),將伺服控制器轉變為無障礙狀態:

19fbe176-d71a-11ef-9434-92fbcf53809c.png

此時可以看到從站串口終端會停止State Transition2、State Transition7的打印,接著我們再次向控制字0x6040寫入值0x000F(dec:15):

1a1ca29e-d71a-11ef-9434-92fbcf53809c.png

此時伺服控制器由等待打開伺服使能切換到伺服運行的狀態,同時在從站串口中斷打印

StateTransition2、State Transition3、State Transition4,在經過狀態傳輸2 3 4后, CiA402狀態機進入STATE_OPERATION_ENABLED ,此時就可以對控制器進行控制了。

比如說當前是位置模式,通過向Index:0x607A寫入位置數值,我們寫入100000:

1a2b12de-d71a-11ef-9434-92fbcf53809c.png

此時依次點擊Box 1(Renesas EtherCAT RZ/N2 CoE 2port)->Module 1(csp - axis)->Inputs->Actual Position,查看實際反饋的位置,會發現Index 0x6064對應的value會不斷自增,直到100000停止:

1a3eb4ba-d71a-11ef-9434-92fbcf53809c.png

csv速度模式控制

首先需要將控制器模式由默認的csp切換為csv模式,點擊左側導航欄中的Box1(RenesasEtherCAT

RZ/N2 CoE 2port),接著在中間的頁面中找到上方的Slots選擇Axis 0,在右邊預設支持的module修改為 csv ,并點擊‘<’標志:

1a48f268-d71a-11ef-9434-92fbcf53809c.png

同時我們也可以觀察左側對應的模塊信息是否更新,并切換為csv模式:

1a63f22a-d71a-11ef-9434-92fbcf53809c.png

切換好模式后,我們需要重新加載設備,點擊TwinCAT3上方導航欄的TwinCAT->Reload Devices:

1a7b84f8-d71a-11ef-9434-92fbcf53809c.png

然后需要使控制器進入STATE_OPERATION_ENABLED (可操作模式,參考上文),同樣是對控制字依次寫入0x0080(轉變為無障礙狀態)、 0x000F (由等待打開伺服使能切換到伺服運行狀態)。

此時我們查看輸入的狀態字0x6041,如果對應的value值為0x1237,那么就代表當前處于可操作模式(STATE_OPERATION_ENABLED);如果顯示的值為0x1208,那么代表當前status處于Fault,重新設置 control word為0x0080( dec:128),并且在重復上述操作即可。

此時我們便可對Target Velocity值進行寫入實際想要控制的速度值:

1a8725ce-d71a-11ef-9434-92fbcf53809c.png

同時可在輸入中查看實際設置的速度信息是否一致:

1a9c1a1a-d71a-11ef-9434-92fbcf53809c.png

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 通信協議
    +關注

    關注

    28

    文章

    911

    瀏覽量

    40425
  • 電機驅動
    +關注

    關注

    60

    文章

    1227

    瀏覽量

    86913
  • ethercat
    +關注

    關注

    18

    文章

    732

    瀏覽量

    38859
收藏 人收藏

    評論

    相關推薦

    TMC8670 – 集成EtherCAT通訊和FOC伺服運動控制芯片適用2/3相永磁同步電機

    - 傳感器接口(數字或模擬霍爾;數字或模擬編碼器)- 支持3相永磁同步電機和2相步進電機- PWM引擎包括SVPWM-EtherCAT 通訊接口 COE協議,CiA 402
    發表于 08-06 22:47

    labview通過Ethercat控制伺服電機

    現在伺服電機很多都支持Ethercat總線了,這個總線速度很牛。有玩過labview通過Ethercat控制伺服電機的大神請指教:
    發表于 10-16 19:15

    基于TMC8462和TMCC160的EtherCAT直流伺服快速開發指導

    與高效的最先進的FOC算法. 在TMCC160-LC CoE芯片中集成了CoE協議以及用于3相BLDC/PMSM可達24V 1A的預驅. TMC8462是一款完全兼容實時的EtherCAT從站通訊協議
    發表于 02-12 15:10

    如何快速更改.coe文件?

    假設我的.coe文件最初是memory_initialization_radix = 2; memory_initialization_vector = 10,11,00;我將第三個元素更改為11并進行了運行模擬 - >運行行為模擬,但它仍然是00。如何快速更改.coe
    發表于 04-02 06:52

    labview如何使用ethercat協議

    現在想使用ethercat板卡控制電機,不知道labview如何使用ethercat協議,是要安裝什么驅動嗎還是怎么樣,請教一下各位大神,
    發表于 06-23 14:08

    請問EtherCAT總線伺服電機如何恢復為出廠參數?

    EtherCAT總線伺服電機/一體化伺服電機如何恢復為出廠參數?
    發表于 06-28 06:13

    資料下載:在CODESYS中通過EtherCAT總線驅動單個電機

    在CODESYS中同通過EtherCAT總線驅動單個電機本文講述了手上有個支持EtherCAT總線的驅動器和步進
    發表于 07-02 06:30

    在CODESYS中怎樣通過EtherCAT總線去驅動單個電機

    在CODESYS中怎樣通過EtherCAT總線去驅動單個電機呢?如何通過CODESYS添加EtherCAT的主站從站控制電機轉動?
    發表于 09-18 08:43

    開源!ZYNQ IgH EtherCAT主站方案分享

    ethercat-stable-1.5-gcd0d17d-20210723Xenomai:xenomai-v3.0.11-g4f49146伺服驅動器:臺達ASD-A2-0121-E伺服電機:臺達
    發表于 10-29 11:17

    labview下的ethercat模塊如何與驅動器通訊

    有沒有做ethercat方面的兄弟,labview下的ethercat模塊如何利用ethercat通訊協議與驅動器進行通訊,兩者怎樣建立聯系?有沒有相互程序或者資料
    發表于 12-09 15:06

    EtherCAT網絡支持CiA402規格所有的CoE模式?

    本系列伺服驅動器滿足標準EtherCAT協議。支持CiA402規格所有的CoE模式及EtherCAT的各項命令模式,支持周期性同步運行模式如周期性同步位置CSP模式,周期性同步速度模式
    發表于 08-17 16:25 ?6936次閱讀

    如何生成ROM的coe文件?

    ? 在生成ROM時需要提供coe文件,如下圖所示。這個coe文件本質上就是Memory的初始化文件,Xilinx對其有具體的格式要求。 ? coe文件格式 coe文件格式要求如下圖所示
    的頭像 發表于 02-11 11:43 ?8624次閱讀
    如何生成ROM的<b class='flag-5'>coe</b>文件?

    基于最新5.4電機庫的STM32電機控制應用實戰分享

    基于最新5.4電機庫的STM32電機控制應用實戰分享MC_SDK_5_4Training_201911
    發表于 07-27 15:23 ?66次下載

    STM32電機控制應用實戰分享

    電子發燒友網站提供《STM32電機控制應用實戰分享.pdf》資料免費下載
    發表于 07-31 15:04 ?20次下載
    STM32<b class='flag-5'>電機</b>控制應用<b class='flag-5'>實戰</b>分享

    如何同步運行?--基于EtherCAT的柔性電機驅動系統

    在自動化生產線中,EtherCAT網絡輕松實現了過去難以同步控制的成百上千個電機,如流水線等。本文將探討如何通過柔性電機驅動系統,在EtherCAT
    的頭像 發表于 05-16 08:24 ?674次閱讀
    如何同步運行?--基于<b class='flag-5'>EtherCAT</b>的柔性<b class='flag-5'>電機</b><b class='flag-5'>驅動</b>系統
    主站蜘蛛池模板: 久久青草影院 | 暖暖 免费 高清 日本 在线 | 国产免费不卡 | 久久精品国产只有精品 | 免费看www视频| 亚洲日本一区二区三区在线不卡 | lesbabes性欧美| 久久天天躁狠狠躁夜夜躁 | 粗好大用力好深快点漫画 | 亚洲AV久久无码高潮喷水 | 欧美视频 亚洲视频 | 99久久爱re热6在线播放 | 亚洲男女羞羞无遮挡久久丫 | 偷拍亚洲色自拍 | 第一会所欧美无码原创 | 香蕉久久夜色精品国产小优 | 国产一级特黄aa毛片 | 在线观看永久免费网址 | 欧美同志高清vivoeso | 亚洲精品一区三区三区在线观看 | 九九精彩视频在线观看视频 | adc网址在线观看 | 达达兔欧美午夜国产亚洲 | 中文在线无码高潮潮喷在线 | 亚洲精品国产第一区第二区 | 青青草色青伊人 | 俄罗斯大肥BBXX | 添加一点爱与你电视剧免费观看 | 午夜十八岁禁 | 男女性杂交内射妇女BBWXZ | 日本调教网站 | 国产午夜精品理论片久久影视 | 免费国产综合视频在线看 | 中国农民真实bbwbbw | 综合激情区视频一区视频二区 | 动漫H片在线观看播放免费 动漫H片在线播放免费高清 | 欧美色图一区二区三区 | 欧美性appstin孕妇 | 国产盗摄一区二区三区 | 黄色三级图片 | 国产精品人妻在线观看 |