哈哈哈哈哈操欧洲电影,久草网在线,亚洲久久熟女熟妇视频,麻豆精品色,久久福利在线视频,日韩中文字幕的,淫乱毛视频一区,亚洲成人一二三,中文人妻日韩精品电影

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

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

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

【睿擎派】EtherCAT總線之IO模塊讀寫

RT-Thread官方賬號 ? 2025-12-31 19:07 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群



上一篇文章《【睿擎派】CANOpen總線之IO模塊讀寫(DS401協(xié)議)》我寫了關于睿擎派上CANOpen的IO模塊通信,為什么先寫CANOpen?說來也有挺意思,是因為在睿擎派上對接EtherCAT的IO模塊,花費了很久時間,也沒有多少進展,所以轉頭去研究了基于CANOpen對接IO模塊,因為二者是有非常大的淵源的。


一、EtherCAT和CANOpen的異同



1980年代CAN總線誕生,1996年CANOpen協(xié)議發(fā)布,2003年EtherCAT技術發(fā)布。EtherCAT 和 CANopen 的核心關系是:CANopen 是協(xié)議規(guī)范(側重應用層),EtherCAT 是總線技術(側重物理層 / 傳輸層)—— 兩者均源于 CAN 總線生態(tài),EtherCAT 復用了 CANopen 的核心應用層規(guī)范,同時在底層傳輸上實現(xiàn)了質的突破,最終形成 “上層兼容、底層獨立” 的技術互補格局。


EtherCAT完全復用 CANopen 的對象字典結構(索引范圍、尋址方式),僅在 0x1C00~0x1C3F 等區(qū)間擴展了 Sync Manager、DC 同步等專屬索引。完全保留 PDO/SDO 的功能定義,僅改變了底層傳輸方式。


CANopen 的 PDO 通過 COB-ID 映射到 CAN 幀,EtherCAT 的 PDO 通過 Sync Manager(同步管理器)綁定到以太網(wǎng)幀;CANopen 的 SDO 通過 CAN 幀分片傳輸,EtherCAT 的 SDO 通過郵箱通道(SM0/SM1)實現(xiàn)低延遲傳輸;


CANopen通過 EDS(Electronic Data Sheet)文件描述設備的對象字典、PDO 映射等配置,主站通過 EDS 識別設備;


EtherCAT通過 ESI(EtherCAT Slave Information)文件擴展 EDS 規(guī)范,新增了 Sync Manager、DC 同步、FMMU 等 EtherCAT 專屬配置,同時兼容 EDS 的核心內(nèi)容;


此外比較關鍵的差異就是CAN總線最大速率1Mbps,ms級抖動,而EtherCAT最大可以1Gbps速率,us級抖動。這其中的原因除了速率上的差異外,傳輸機制上有很大的差別,CANOpen是幀逐節(jié)點轉發(fā),需等待節(jié)點處理后再傳遞,而幀 “并行處理”,所有節(jié)點同時讀取幀中自身數(shù)據(jù)(如下面的動圖比較形象的展現(xiàn)了EtherCAT的傳輸原理)。


df4faed4-e638-11f0-8ce9-92fbcf53809c.gif

CANOpen主要運用在低速設備(傳感器、執(zhí)行器)、低成本場景,而EtherCAT多用在高速 IO、多軸伺服、實時控制場景,比如機器臂,具身智能等設備上。


二、睿擎派對接雷賽EM32DX-E4-V30模塊



我從RC-Pi-3506的SDK1.5.0版本開始進行IO模塊對接,經(jīng)過SDK1.7.0版本,最后在SDK1.7.2版本上在RTT郭老師的協(xié)助下調(diào)試成功,SDK1.7.2和SDK1.7.0關于EtherCAT的接口調(diào)用差異還是蠻大的,所以本篇內(nèi)容以SDK1.7.2版本為準。


在真正對接之前,除了硬件模塊外,還需要硬件手冊和ESI文件(文后附相關文件下載鏈接)。

df621f2e-e638-11f0-8ce9-92fbcf53809c.jpg


我們以BSP 1.7.2版本的示例工程06_bus_ethercat_master_2motor_1io為基礎進行開發(fā)調(diào)試。

df722d74-e638-11f0-8ce9-92fbcf53809c.png


本代碼的官方說明的鏈接如下:

https://www.rt-thread.com/ruiching/document/site/rc3506/q7dq3ksb/#%E7%A4%BA%E4%BE%8B%E8%BF%90%E8%A1%8C


原示例支持2個伺服器+1個IO模塊,為了簡化,我們睿擎派只連接一個IO模塊(如下圖)。

df7d6220-e638-11f0-8ce9-92fbcf53809c.png

所以ethercat_2motor_1io.c文件的第16行代碼我們把電機的數(shù)量調(diào)整為0。

define MOTOR_NUM 0 //2


(1)配置PDO



最關鍵的部分是修改IO模塊的PDO定義,由于官方示例中所用的IO模塊(SG-ELC)和我們的型號規(guī)格不同,所以需要修改這部分配置。


查閱《EM32DX-E4 模塊用戶手冊 V3.1》 第20頁 5.2.1小結(如下圖)

df8cc864-e638-11f0-8ce9-92fbcf53809c.png

對應IO模塊16路開關量輸入,所以對應的pdo定義的代碼如下:


static ec_pdo_entry_info_t eio_input_pdo_entries[] =

{

{ 0x6000, 0x01, 16 },

};

0x6000是索引地址

0x01 是子索引地址

16表示16bit

同樣,我們查閱第22頁5.2.3小結(如下圖)

df9ac57c-e638-11f0-8ce9-92fbcf53809c.png

對應IO模塊的16路開關量輸出,所以對應的pdo定義代碼如下:

staticec_pdo_entry_info_teio_output_pdo_entries[] ={{0x7000,0x01,16},};

0x7000是索引地址

0x01 是子索引地址

16表示16bit

ec_pdo_entry_info_t是定義單個PDO條目的核心屬性類型,其結構體的定義如下:

typedefstruct{uint16_tindex; / PDO entry index. */uint8_tsubindex; / PDO entry subindex. /uint8_tbit_length;/** Size of the PDO entry in bit. /} ec_pdo_entry_info_t;

index – DO主索引 (對象字典對應條目主索引地址)

subindex- DO子索引

bit_length – 對應的位數(shù)

我們再看5.2.1和5.2.3的說明,TxPDO0的索引地址為0x1A00,RxPDO0的索引地址為0x1600。

我們需要配置eio_pdos 對象數(shù)組,其結構體定義為ec_pdo_info_t ,原型如下:

typedefstruct{uint16_tindex;uint32_tn_entries;ec_pdo_entry_info_tconstentries;}ec_pdo_info_t;

index – PDO索引,本身也是對象字典的一部分,TxPDO是 從站à主站(數(shù)據(jù)上傳),RxPDO是主站à從站(指令下發(fā))。

n_entries – 對應條目的數(shù)量

entries 條目數(shù)組指針。

所以eio_pdos 對象數(shù)組的定義代碼如下:

ec_pdo_info_teio_pdos[] = {{0x1600,1, eio_output_pdo_entries },{0x1a00,1, eio_input_pdo_entries },};

接下來我們定義同步管理器相關內(nèi)容。我們先看ec_sync_info_t 結構體定義。

typedefstruct{uint8_tindex;/** Sync manager index. /ec_direction_t dir / Sync manager direction. */uint32_tn_pdos; / Number of PDOs in a pdos. /ec_pdo_info_tconstpdos; /< Array with PDOs to assign. Thismust contain at least \a n_pdos PDOs. */ec_watchdog_mode_t?watchdog_mode; / Watchdog mode. */}?ec_sync_info_t;

index – 同步管理器的硬件索引 0 – 15,常見的是SM0-SM3

對應SDO非實時操作

SM0(索引 0)- 主站→IO 模塊(系統(tǒng)配置入),發(fā)送SDO報文,配置對象字典,接受CoE管理指令、

SM1(索引 1)- IO 模塊→主站(系統(tǒng)響應出),SDO響應報文,回傳診斷信息,發(fā)送從站狀態(tài)切換碼。

對應PDO實時操作:

SM2(索引 2)- 主站→IO 模塊(輸出)

SM3(索引 3)- IO 模塊→主站(輸入)

dir – SM的傳輸方向 EC_DIR_OUTPUT:主站輸出→從站輸入(RxPDO,如 DO 控制),EC_DIR_INPUT:從站輸出→主站輸入(TxPDO,如 DI 采集)。

n_pdos – SM要綁定的PDO數(shù)量(pdos數(shù)組中的PDO個數(shù))

watchdog_mode — 看門狗模式(枚舉類型):

EC_WD_DISABLE:禁用看門狗

EC_WD_ON:啟用看門狗(主站心跳超時后,從站進入安全狀態(tài),如 DO 歸零)

綜上,所以eio_syncs的數(shù)組定義如下:

ec_sync_info_teio_syncs[] ={{2, EC_DIR_OUTPUT,1, &eio_pdos[0], EC_WD_DISABLE },{3, EC_DIR_INPUT,1, &eio_pdos[1], EC_WD_DISABLE },};

也就是官方代碼(右邊)被左邊的代碼代替。

dfa96ea6-e638-11f0-8ce9-92fbcf53809c.png

(2)配置DC

這部分相關的內(nèi)容需要查詢ESI文件,也就是因為DC配置有誤,設備總進入不到OP模式的主要原因。


EM32DX-E4.xml文件里,支持兩種產(chǎn)品型號,一種是EM32DX-E4-V30,一種是EM32DX-E4,


EM32DX-E4是支持DC同步的,配置如下圖所示:

dfb6d65e-e638-11f0-8ce9-92fbcf53809c.jpg


而EM32DX-E4-V30對應的ESI描述如下:

dfc60c3c-e638-11f0-8ce9-92fbcf53809c.jpg


通過讀取設備數(shù)據(jù)字典的信息,我們知道當前這款EM32DX-E4模塊其實是EM32DX-E4-V30。它是不支持DC的。

dfd4501c-e638-11f0-8ce9-92fbcf53809c.jpg

相關DC配置必須為0才可以。另外查手冊或者回讀數(shù)據(jù)字典,我們都可以知道廠商ID為0x00004321,這個地方需要替換一下。


此外進入OP模式后,電機操作的代碼注釋掉就可以了,這里不做詳述了。


三、運行調(diào)試


編譯代碼,然后部署。最后在遠程操作終端,我們輸入ect_csp_io,進行EtherCAT總線初始化及相關的配置。然后再輸入motor_run命令,就可以看到開關量輸出燈像走馬燈一樣運轉了。


dfe264e0-e638-11f0-8ce9-92fbcf53809c.jpg


dfed1124-e638-11f0-8ce9-92fbcf53809c.gif


附1:內(nèi)置調(diào)試命令

dfff0014-e638-11f0-8ce9-92fbcf53809c.jpg



附2:雷賽EM32DX-E4說明書和ESI文件


https://download.csdn.net/download/yefanqiu/92462286

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

    關注

    59

    文章

    3091

    瀏覽量

    473318
  • 總線
    +關注

    關注

    10

    文章

    3052

    瀏覽量

    91841
  • ethercat
    +關注

    關注

    20

    文章

    1564

    瀏覽量

    45943
  • IO模塊
    +關注

    關注

    0

    文章

    177

    瀏覽量

    14537
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    基于輕松玩轉Modbus工業(yè)通信

    。今天,我們就帶來一篇實戰(zhàn)教程,教大家如何基于/工業(yè)平臺,分別作為ModbusRTU主機和ModbusTCP主機,讀取Modbus
    的頭像 發(fā)表于 07-23 17:05 ?3939次閱讀
    基于<b class='flag-5'>睿</b><b class='flag-5'>擎</b><b class='flag-5'>派</b>輕松玩轉Modbus工業(yè)通信

    文件系統(tǒng)指南:從開發(fā)到發(fā)布全流程實踐 | 技術解析

    在嵌入式系統(tǒng)開發(fā)中,文件系統(tǒng)扮演著至關重要的角色,它負責數(shù)據(jù)的持久化存儲、配置文件管理和資源訪問等核心功能。平臺提供了一套完整的文件系統(tǒng)解決方案,從開發(fā)階段的API調(diào)用到調(diào)試階段的文件操作,再到
    的頭像 發(fā)表于 11-05 18:13 ?8257次閱讀
    <b class='flag-5'>睿</b><b class='flag-5'>擎</b><b class='flag-5'>派</b>文件系統(tǒng)指南:從開發(fā)到發(fā)布全流程實踐 | 技術解析

    】CANOpen總線IO模塊讀寫(DS401協(xié)議)

    以瑞芯微RK3506為主控芯片,底層搭載RT-Thread操作系統(tǒng),基于專為工業(yè)場景打造的工業(yè)平臺進行開發(fā)。該平臺是全棧自主可控的
    的頭像 發(fā)表于 12-24 18:01 ?7510次閱讀
    【<b class='flag-5'>睿</b><b class='flag-5'>擎</b><b class='flag-5'>派</b>】CANOpen<b class='flag-5'>總線</b><b class='flag-5'>之</b><b class='flag-5'>IO</b><b class='flag-5'>模塊</b><b class='flag-5'>讀寫</b>(DS401協(xié)議)

    3562快速上手體驗

    1引言隨著物聯(lián)網(wǎng)和工業(yè)自動化的快速發(fā)展,嵌入式開發(fā)板的需求日益增長。3562作為一款基于瑞芯微RK3562處理器的高性能開發(fā)板,憑借其強大的處理能力和豐富的外設接口,成為了嵌入式開發(fā)者的新選擇
    的頭像 發(fā)表于 03-04 21:19 ?6837次閱讀
    <b class='flag-5'>睿</b><b class='flag-5'>擎</b><b class='flag-5'>派</b>3562快速上手體驗

    3562 EtherCAT主站實踐

    結構和低廉的成本優(yōu)勢,廣泛應用于工業(yè)機器人、CNC機床、自動化產(chǎn)線等場景。3562作為一款基于瑞芯微RK3562處理器的高性能開發(fā)板,內(nèi)置了EtherCAT
    的頭像 發(fā)表于 03-11 18:18 ?6411次閱讀
    <b class='flag-5'>睿</b><b class='flag-5'>擎</b>3562 <b class='flag-5'>EtherCAT</b>主站實踐

    實現(xiàn) LVGL 可視化 EtherCAT 電機控制,觸屏操控伺服電機就這么簡單|技術集結

    在工業(yè)自動化領域,運動控制系統(tǒng)往往面臨兩大痛點:實時性要求極高,同時又需要直觀的人機交互界面。傳統(tǒng)方案要么犧牲實時性換取界面體驗,要么用昂貴的專用HMI設備來彌補。今天分享一個基于RC3506
    的頭像 發(fā)表于 03-18 11:07 ?7404次閱讀
    用<b class='flag-5'>睿</b><b class='flag-5'>擎</b><b class='flag-5'>派</b>實現(xiàn) LVGL 可視化 <b class='flag-5'>EtherCAT</b> 電機控制,觸屏操控伺服電機就這么簡單|技術集結

    EtherCAT總線IO模塊功能及安裝介紹

    XD系列插片式遠程IO模塊,成套系統(tǒng)主要由耦合器、各種功能IO模塊、電源輔助模塊以及終端模塊組成
    的頭像 發(fā)表于 07-14 09:14 ?2646次閱讀
    <b class='flag-5'>EtherCAT</b><b class='flag-5'>總線</b><b class='flag-5'>IO</b><b class='flag-5'>模塊</b>功能及安裝介紹

    平臺極簡開發(fā)重要實踐—— PinMux 配置工具 | 試用名單公示

    RT-Thread工業(yè)開發(fā)平臺是為工業(yè)場景設計的軟硬件一體化開發(fā)方案,全棧自主可控,賦能用戶聚焦核心業(yè)務創(chuàng)新,大幅提升開發(fā)效率。平臺以極簡化設計理念來指導產(chǎn)品開發(fā)。為降低開發(fā)門
    的頭像 發(fā)表于 06-11 17:05 ?1620次閱讀
    <b class='flag-5'>睿</b><b class='flag-5'>擎</b>平臺極簡開發(fā)重要實踐—— PinMux 配置工具 | <b class='flag-5'>睿</b><b class='flag-5'>擎</b><b class='flag-5'>派</b>試用名單公示

    RK3506J開發(fā)板開箱記錄、初步調(diào)試

    基于RK3506J開發(fā),RK3506J是一款三核A7+M0的入門級工業(yè)MPU,由于其價位低,性能優(yōu)異,近期收到熱捧,各家都出了很多RK3506J的開發(fā)板,賽德也出了一款,不過是
    的頭像 發(fā)表于 06-20 20:43 ?2582次閱讀
    <b class='flag-5'>睿</b><b class='flag-5'>擎</b><b class='flag-5'>派</b>RK3506J開發(fā)板開箱記錄、初步調(diào)試

    【MCU體驗、MPU性能】 RC3506 套件今日10點淘寶獨家開售!首批200套,搶完即止!| 產(chǎn)品動態(tài)

    工業(yè)開發(fā)平臺-RC-Pi3506套件今日在淘寶「賽德科技」店鋪正式發(fā)售!原價299元
    的頭像 發(fā)表于 07-04 09:04 ?1289次閱讀
    【MCU體驗、MPU性能】<b class='flag-5'>睿</b><b class='flag-5'>擎</b><b class='flag-5'>派</b> RC3506 套件今日10點淘寶獨家開售!首批200套,搶完即止!| 產(chǎn)品動態(tài)

    基于輕松玩轉EtherCAT主站,實現(xiàn)電機精確控制

    總線技術。本次實戰(zhàn)教程將基于平臺,演示實現(xiàn):EtherCAT主站開發(fā)CSP模式伺服電機精準控制遠程
    的頭像 發(fā)表于 07-30 17:03 ?5404次閱讀
    基于<b class='flag-5'>睿</b><b class='flag-5'>擎</b><b class='flag-5'>派</b>輕松玩轉<b class='flag-5'>EtherCAT</b>主站,實現(xiàn)電機精確控制

    平臺v1.7.2版本正式發(fā)布|技術集結

    系統(tǒng)靈活性與性能●全面支持RuiChingStudio專業(yè)開發(fā)工具●預置豐富示例工程,加速開發(fā)進程RC3506EMMC版本硬件同步上架
    的頭像 發(fā)表于 12-17 18:10 ?700次閱讀
    <b class='flag-5'>睿</b><b class='flag-5'>擎</b>平臺v1.7.2版本正式發(fā)布|技術集結

    直播預告 | 3506 Ubuntu開發(fā)實戰(zhàn):從環(huán)境搭建到整包固件制作,一次講透

    想用Ubuntu系統(tǒng)在3506上做開發(fā),卻卡在環(huán)境配置?開發(fā)完應用程序,如何打包成完整的固件方便部署?SSH連不上、網(wǎng)絡配不好、固件燒了起不來——這些坑你都踩過幾個?3月18日(周三)晚8點
    的頭像 發(fā)表于 03-13 17:45 ?1656次閱讀
    直播預告 | <b class='flag-5'>睿</b><b class='flag-5'>擎</b><b class='flag-5'>派</b>3506 Ubuntu開發(fā)實戰(zhàn):從環(huán)境搭建到整包固件制作,一次講透

    直播預告 | 3562 NullClaw 系統(tǒng)開發(fā)實戰(zhàn):把 AI 助手塞進工業(yè)開發(fā)板

    ,在3562上完整部署NullClaw,讓工業(yè)開發(fā)板瞬間擁有AI對話與自動化任務能力。直播核心內(nèi)容本次直播以
    的頭像 發(fā)表于 03-30 18:23 ?153次閱讀
    直播預告 | <b class='flag-5'>睿</b><b class='flag-5'>擎</b><b class='flag-5'>派</b> 3562 NullClaw 系統(tǒng)開發(fā)實戰(zhàn):把 AI 助手塞進工業(yè)開發(fā)板

    3562 整包固件制作指南

    與重打包操作。本文以RC3562為例,詳細介紹整包固件從解包、修改分區(qū)內(nèi)容、重新打包到燒錄驗證的完整操作流程。一、準備工作1.1所需工具
    的頭像 發(fā)表于 04-01 18:08 ?834次閱讀
    <b class='flag-5'>睿</b><b class='flag-5'>擎</b><b class='flag-5'>派</b> 3562 整包固件制作指南
    平塘县| 白水县| 巫山县| 新兴县| 龙岩市| 安吉县| 富蕴县| 华蓥市| 开化县| 邯郸市| 儋州市| 五大连池市| 泾阳县| 连江县| 丘北县| 哈尔滨市| 岳普湖县| 湛江市| 馆陶县| 荥阳市| 湟源县| 仙居县| 临沧市| 闻喜县| 湘潭市| 墨脱县| 邳州市| 宜昌市| 三穗县| 河津市| 阳谷县| 彩票| 建湖县| 恩平市| 韩城市| 天津市| 普兰店市| 常宁市| 潼南县| 吴旗县| 河东区|