X
首页
技术
模拟电子
单片机
半导体
电源管理
嵌入式
传感器
最能打国产芯
应用
汽车电子
工业控制
家用电子
手机便携
安防电子
医疗电子
网络通信
测试测量
物联网
最能打国产芯
大学堂
首页
直播
专题
TI 培训
论坛
汽车电子
国产芯片
电机驱动控制
电源技术
单片机
模拟电子
PCB设计
电子竞赛
DIY/开源
嵌入式系统
医疗电子
颁奖专区
【厂商专区】
【电子技术】
【创意与实践】
【行业应用】
【休息一下】
最能打国产芯
活动中心
直播
发现活动
颁奖区
电子头条
参考设计
下载中心
分类资源
文集
排行榜
电路图
Datasheet
最能打国产芯
国产芯片交流
[MCU] 基于全志T507-H的Igh EtherCAT主站案例分享
aleksib
2024-6-3 10:02
楼主
## 基于全志T507-H的Linux-RT + IgH EtherCAT主站演示 下文主要介绍基于全志T507-H(硬件平台:创龙科技TLT507-EVM评估板)案例,按照创龙科技提供的案例用户手册进行操作得出测试结果。 本次演示的开发环境: - Windows开发环境:Windows 7 64bit、Windows 10 64bit - Linux开发环境:Ubuntu18.04.4 64bit - 虚拟机:VMware16.2.5 - U-Boot:U-Boot 2018 - Kernel:Linux-RT-4.9.170 - LinuxSDK:LinuxSDK-[版本号].tar.gz(基于全志官方V2.0_20220618) - IgH EtherCAT:ethercat-stable-1.5-gcd0d17d-20210723 - 伺服驱动器:台达ASD-A2-0121-E - 伺服电机:台达ECMA-C10401GS - 硬件平台:TLT507-EVM评估板(基于全志T507-H) ## IgH EtherCAT简介 IgH EtherCAT为运行于Linux系统的免费开源EtherCAT主站程序,框架如下所示, ![在这里插入图片描述](https://file1.elecfans.com/web2/M00/C6/ED/wKgaomYEx6eAASEnAAF_F-drM0I421.png) IgH EtherCAT主站通过构建Linux字符设备,应用程序通过对字符设备的访问实现与EtherCAT主站模块的通信。 IgH EtherCAT开发包提供EtherCAT工具,该工具提供各种可在Linux用户层运行的命令,可直接实现对从站的访问和设置,如设置从站地址、显示总线配置、显示PDO数据、读写SDO参数等。 ## 案例说明 案例功能:EtherCAT通讯周期时间为1ms,控制伺服电机正转和反转,并通过串口循环打印EtherCAT通讯周期时间的最大值和最小值。 (1)正转:伺服电机目标速度从0加速到10000,当达到10000速度后,控制伺服电机减速至0,循环运行。 (2)反转:伺服电机目标速度从0加速到-10000,当达到-10000速度后,控制伺服电机减速至0,循环运行。 ![在这里插入图片描述](https://file1.elecfans.com/web2/M00/C6/05/wKgZomYEx7GAdft7AAA8ivsFnBQ441.png) 为便于测试,我司提供已验证的基于Linux-RT编译生成的内核镜像文件和内核模块,位于产品资料“4-软件资料\Linux\Kernel\image\linux-4.9.170-[版本号]-[Git系列号]\”目录下。 请将Linux-RT内核镜像boot-rt.fex和Linux-RT内核配套的内核模块modules-rt目录下4.9.170-[版本号]-[Git系列号].tar.gz压缩包的拷贝至评估板文件系统目录下。 执行如下命令,将boot-rt.fex重命名为boot.fex,同时将内核模块压缩包解压。 ```cpp Target#mv boot-rt.fex boot.fex Target#tar -zxf 4.9.170-rt129-g4c65c66.tar.gz ``` ![在这里插入图片描述](https://file1.elecfans.com/web2/M00/C6/05/wKgZomYEx-eAXeb4AAAIxyuhTeQ839.png) 执行如下命令替换内核镜像和内核模块,评估板重启生效。 备注:mmcblk1为Micro SD对应的设备节点,如需固化至eMMC,请将设备节点修改为mmcblk0。 ```cpp Target#dd if=boot.fex of=/dev/mmcblk1p3 conv=fsync Target#rm /lib/modules/* -rf Target#cp $(uname -r) /lib/modules/ -r Target#sync Target#reboot ``` ![在这里插入图片描述](https://file1.elecfans.com/web2/M00/C6/ED/wKgaomYEx_KATocCAAAQ8iyrFac773.png) ![在这里插入图片描述](https://file1.elecfans.com/web2/M00/C6/ED/wKgaomYEx_aAJVAXAAAQYnnU6Rs758.png) ## 案例测试 请按下图所示使用网线连接评估板ETH0 RGMII网口和伺服驱动器A的IN网口,将伺服驱动器A的OUT网口使用网线连接至伺服驱动器B的IN网口。 ![在这里插入图片描述](https://file1.elecfans.com/web2/M00/C6/05/wKgZomYEyAWAH1IHAAon4O00Jx4548.png) ![在这里插入图片描述](https://file1.elecfans.com/web2/M00/C6/05/wKgZomYEyBOAMZAQAAoLAAO3_rY877.png) 为便于测试,我司提供的经验证的IgH EtherCAT主站程序为案例"igh_ethercat\images\"目录下的ethercat-stable-1.5-gcd0d17d.tar.gz压缩包,将其拷贝至评估板文件系统任意目录下。 执行如下命令,解压ethercat-stable-1.5-gcd0d17d.tar.gz压缩包将会得到_install文件夹。 ```cpp Target#tar -zxf ethercat-stable-1.5-gcd0d17d.tar.gz ``` ![在这里插入图片描述](https://file1.elecfans.com/web2/M00/C6/05/wKgZomYEyO-Aal6YAAAKTh5dSQ8578.png) 执行如下命令,并查询评估板网卡物理地址。 ```cpp Target#ifconfig ``` ![在这里插入图片描述](https://file1.elecfans.com/web2/M00/C6/ED/wKgaomYEyPSAIA5zAAAvAMUq-aE583.png) 执行如下命令,加载驱动模块。 ```cpp Target#insmod -f /root/_install/modules/ec_master.ko main_devices=46:99:F6:AB:1F:19 ``` ![在这里插入图片描述](https://file1.elecfans.com/web2/M00/C6/05/wKgZomYEyPmAR4ClAAAXVHattc0228.png) 执行如下命令,拷贝EtherCAT主站相关文件至评估板文件系统。 ```cpp Target#mkdir /etc/sysconfig Target#cp /root/_install/etc/sysconfig/ethercat /etc/sysconfig Target#ls /lib/modules/$(uname -r)//查看是否已创建modules目录 Target#cp ./_install/modules/ec_master.ko /lib/modules/$(uname -r) Target#depmod -a //同步模块依赖关系,同步过程中打印警告请忽略 ``` ![在这里插入图片描述](https://file1.elecfans.com/web2/M00/C6/05/wKgZomYEyQGAC4YXAAA4npxZXyI946.png) 执行如下命令,启动EtherCAT主站。 ```cpp Target#/root/_install/etc/init.d/ethercat start ``` ![在这里插入图片描述](https://file1.elecfans.com/web2/M00/C6/05/wKgZomYEyQmAWlmzAAAIIXNKAPQ232.png) 执行如下命令,加载ec_generic.ko驱动文件。 ```cpp Target#insmod -f /root/_install/modules/ec_generic.ko ``` ![在这里插入图片描述](https://file1.elecfans.com/web2/M00/C6/ED/wKgaomYEyQ-AO8pCAAAo1xW418Y569.png) 执行如下命令,添加IgH动态链接库路径。 ```cpp Target#export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/root/_install/lib ``` ![在这里插入图片描述](https://file1.elecfans.com/web2/M00/C6/ED/wKgaomYEyR-AcdMrAAARqhvboBg198.png) 将案例bin目录下的igh_ethercat_dc_motor可执行文件拷贝至评估板文件系统,执行如下命令查看参数信息。 ```cpp Target#./igh_ethercat_dc_motor --help ``` ![在这里插入图片描述](https://file1.elecfans.com/web2/M00/C6/ED/wKgaomYEyR-AcdMrAAARqhvboBg198.png) 执行如下命令,控制两台伺服电机同时正转。 ```cpp Target#./igh_ethercat_dc_motor -d 0 ``` ![在这里插入图片描述](https://file1.elecfans.com/web2/M00/C6/05/wKgZomYEySWAe4wAAABb4rjZGqo823.png) ![在这里插入图片描述](https://file1.elecfans.com/web2/M00/C6/ED/wKgaomYEySqAc5raAAA3dK0P-lM084.png) 按下"Ctrl + C",停止运行程序。 ![在这里插入图片描述](https://file1.elecfans.com/web2/M00/C6/05/wKgZomYEyTKAR49TAAAlDhERli8180.png) 执行如下命令,控制两台伺服电机同时反转。 ```cpp Target#./igh_ethercat_dc_motor -d 1 ``` ![在这里插入图片描述](https://file1.elecfans.com/web2/M00/C6/ED/wKgaomYEyTiAVzJfAABYjlcPFEQ929.png) 按下"Ctrl + C",停止运行程序。 ![在这里插入图片描述](https://file1.elecfans.com/web2/M00/C6/ED/wKgaomYEyT2ACJt1AAA0UWH-59g565.png)
点赞
回复评论
暂无评论,赶紧抢沙发吧
最新活动
STM32N6终于要发布了,ST首款带有NPU的MCU到底怎么样,欢迎小伙们来STM32全球线上峰会寻找答案!
免费下载 | 安森美电动汽车充电白皮书,看碳化硅如何缓解“里程焦虑”!
30套RV1106 Linux开发板(带摄像头),邀您动手挑战边缘AI~
是德科技有奖直播 | 应对未来高速算力芯片的设计与测试挑战
免费申请 | 上百份MPS MIE模块,免费试用还有礼!
TI 有奖直播 | 使用基于 Arm 的 AM6xA 处理器设计智能化楼宇
随便看看
生物充电,你觉得这事靠谱吗?
电话机上拆下的显示屏如何改装电子表
我有一个液晶是HS192*64-6的,哪位有这个的详细资料,谢谢
TI这个表怎么这么难填啊
知名IC行业的美资EDA公司招聘!!
串行数据输出的ADC的时钟信号要怎么给?
6N137是什么芯片急急急!!
迅为i.MX6ULL终结者进程基础 exec函数族
PCB版的价格到底如何估算?之二:各种因素的报价
SMD三极管代码(号)大全
请教PLC设备控制电源设备
把0--5伏的直流信号放大到0--10伏怎么做
【福利】+卖一堆东西
proteus串口仿真问题
几个不同 lm3s 开发板 指导书(中文)
MSP432 Capacitive Touch
44b0中断调用的问题。(有点长,各位见谅)
CortexM0_LPC1100_CAN示例代码程序下载
LLAKG:Arduino 自动浇花系统(第1集:系统构想与功能简介)
体现专业素养的钥匙链
电子工程世界版权所有
京B2-20211791
京ICP备10001474号-1
京公网安备 11010802033920号
回复
写回复
收藏
回复