創龍首頁 >關于創龍 > 新聞資訊 > 技術文章

聯系我們

Contact Us

公司總機:020-8998-6280

技術熱線:020-3893-9734

技術郵箱:support@tronlong.com

銷售郵箱:sales@tronlong.com

ZYNQ IgH EtherCAT主站方案來了?。?!

2021/10/28


前 言:創龍科技已基于IMX8、ZYNQ、AM5728、AM5708、AM437x、AM335x、T3/A40i等平臺提供了開源EtherCAT主站IgH案例。本文主要演示TLZ7x-EasyEVM-S評估板基于IgH EtherCAT控制伺服電機方法。如需其他平臺相關資料,請與我們聯系。


案例適用開發環境:

Windows開發環境:Windows 7 64bit、Windows 10 64bit

Linux開發環境:Ubuntu 14.04.3 64bit

虛擬機:VMware15.1.0

PetaLinux:2017.4

Kernel:linux-xlnx-xenomai-g7645980-v1.0

IgH EtherCAT:ethercat-stable-1.5-gcd0d17d-20210723

Xenomai:xenomai-v3.0.11-g4f49146

伺服驅動器:臺達ASD-A2-0121-E

伺服電機:臺達ECMA-C10401GS


硬件平臺:TLZ7x-EasyEVM-S評估板(Xilinx Zynq-7010/7020)


點擊圖片/圖注即可查看產品詳細介紹↓↓↓

圖 1 TLZ7x-EasyEVM評估板


圖 2 SOM-TLZ7x-S核心板


產品詳細資料請掃描下方二維碼或點擊下載鏈接:

http://site.tronlong.com/pfdownload

IgH EtherCAT簡介

IgH EtherCAT為運行于Linux系統的免費開源EtherCAT主站程序,框架如下所示,官方文檔:https://www.etherlab.org/download/ethercat/ethercat-1.5.2.pdf。

圖 3

IgH EtherCAT主站通過構建Linux字符設備,應用程序通過對字符設備的訪問實現與EtherCAT主站模塊的通信。

IgH EtherCAT開發包提供EtherCAT工具,該工具提供各種可在Linux用戶層運行的命令,可直接實現對從站的訪問和設置,如設置從站地址、顯示總線配置、顯示PDO數據、讀寫SDO參數等。

IgH EtherCAT官網:https://www.etherlab.org/en/ethercat。

案例說明

案例功能:控制伺服電機正轉和反轉。


  1. 正轉:伺服電機目標速度從0加速到10000,當達到10000速度后,控制伺服電機減速至0,循環運行。
  2. 反轉:伺服電機目標速度從0加速到-10000,當達到-10000速度后,控制伺服電機減速至0,循環運行。


圖 4

案例測試

請按下圖所示使用網線連接評估板RGMII ETH網口和伺服驅動器A的IN網口,將伺服驅動器A的OUT網口使用網線連接至伺服驅動器B的IN網口。

圖 5

圖 6

為便于測試,我司提供已驗證的基于Xenomai編譯生成的內核鏡像文件和設備樹鏡像文件,位于案例"igh_ethercat_dc_motor\kernel-xenomai\images\linux-xlnx-xenomai-g7645980-v1.0\"目錄下,請替換至Linux系統啟動卡rootfs分區boot目錄下。同時將linux-xlnx-xenomai-g7645980-v1.0目錄下的module驅動壓縮包4.9.0-xilinx-g7645980.tar.gz,解壓至Linux系統啟動卡rootfs分區"lib/modules/"目錄下。

備注:如需使用由內核源碼重新編譯生成的內核鏡像文件和設備樹文件,請參考Linux系統使用手冊將編譯的module驅動安裝至Linux系統啟動卡中,默認安裝后module驅動目錄為4.9.0-xilinx。


圖 7

將IgH EtherCAT主站程序文件夾整個拷貝至評估板文件系統,執行如下命令查詢評估板網卡物理地址。


圖 9

執行如下命令加載驅動模塊。

Target#i  nsmod /home/root/_install/modules/ec_master.ko main_devices=00:0a:35:00:01:22

圖 10

執行如下命令拷貝EtherCAT主站相關文件至評估板文件系統。

Target#  mkdir /etc/sysconfig

Target#  cp _install/etc/sysconfig/ethercat /etc/sysconfig

Target#  cp _install/modules/ec_master.ko /lib/modules/4.9.0-xilinx-g7645980/ //模塊驅動名稱可通過"uname -r"查看

Target#  depmod //同步模塊依賴關系

圖 11

執行如下命令啟動EtherCAT主站。

Target#  /home/root/_install/etc/init.d/ethercat start

圖 12

執行如下命令加載ec_generic.ko驅動文件。

Target#  insmod _install/modules/ec_generic.ko

圖 13

執行如下命令添加IgH動態鏈接庫路徑。

Target#  export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/root/_install/lib

圖 14

將案例igh_ethercat_dc_motor可執行文件拷貝至評估板文件系統,執行如下命令查看參數信息。

Target#  ./igh_ethercat_dc_motor --help

圖 15

執行如下命令控制兩臺伺服電機同時正轉。

Target#  ./igh_ethercat_dc_motor -d 0

圖 16

圖 17

按下"Ctrl+C"停止運行程序。

圖 18

執行如下命令控制兩臺伺服電機同時反轉。

Target#  ./igh_ethercat_dc_motor -d 1

圖 19

圖 20

圖 21

按下"Ctrl+C"停止運行程序。

圖 22

備注:案例設置EtherCAT周期為1ms,同時串口循環打印EtherCAT周期的最小值和最大值。

參數解析:


  1. latency:等待喚醒時間。
  2. period:EtherCAT通訊周期時間。
  3. exec:接收和發送EtherCAT數據時間。


案例的詳細說明可掃描掃描下方二維碼或點擊下載鏈接:

http://site.tronlong.com/pfdownload

創龍官方微信公眾號

Copyright © 2013~2025 廣州創龍電子科技有限公司 All Rights Reserved  | 粵ICP備15055271號