首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >创龙 瑞芯微 RK3588 国产2.4GHz八核 工业开发板—IgH EtherCAT主站开发案例(下)

创龙 瑞芯微 RK3588 国产2.4GHz八核 工业开发板—IgH EtherCAT主站开发案例(下)

原创
作者头像
创龙科技Tronlong
发布2025-10-15 15:47:48
发布2025-10-15 15:47:48
1910
举报

案例编译

IgH EtherCAT主站程序编译

IgH EtherCAT主站程序的编译需依赖于基于Linux内核源码,请先参考《Debian系统使用手册》编译Linux-RT内核,再编译IgH EtherCAT主站程序。

请将案例"igh_ethercat\src\"目录下的IgH EtherCAT主站程序开发包ethercat-stable-[版本号]-[Git序列号].tar.gz拷贝至Ubuntu工作目录,执行如下命令进行解压。

Host# mkdir EtherCAT

Host# tar -xvf ethercat-stable-1.5-gcd0d17d-20210723.tar.gz -C EtherCAT/

图 31
图 31
图 32
图 32

执行如下命令,安装编译所需的软件。

Host# sudo apt-get install autoconf

Host# sudo apt-get install libtool

图 33
图 33

执行如下命令,配置交叉编译工具链。

Host# sudo vim /etc/profile

图 34
图 34

在文件末尾添加如下内容:

export PATH=/home/tronlong/RK3588/rk3588_linux_release_v1.2.1/extra-tools/gcc-linaro-10.2.1-2021.01-x86_64_aarch64-linux-gnu/bin:$PATH

图 35
图 35

执行如下命令,加载环境变量。

Host# source /etc/profile

图 36
图 36

进入解压目录,执行如下命令修改configure.ac和Makefile.am文件屏蔽pkg-config相关配置,以免影响正常编译。

Host# cd EtherCAT/

Host# vim configure.ac

Host# vim lib/Makefile.am

图 37
图 37

configure.ac文件修改内容如下:

#PKG_PROG_PKG_CONFIG //添加注释

#PKG_INSTALLDIR() //添加注释

图 38 configure.ac
图 38 configure.ac

Makefile.am文件修改内容如下:

#pkgconfig_DATA = libethercat.pc //添加注释

图 39 Makefile.am
图 39 Makefile.am

执行如下命令生成configure文件。

Host# ./bootstrap

图 40
图 40

执行如下命令,进行环境配置。

Host# mkdir _install //创建_install文件夹用于存放生成的文件

Host# ./configure --prefix=/home/tronlong/EtherCAT/_install --with-linux-dir=/home/tronlong/RK3588/rk3588_linux_release_v1.2.1/kernel --enable-8139too=no --enable-generic=yes CC=aarch64-linux-gnu-gcc --host=aarch64-linux-gnu

备注:

(1)编译需要依赖交叉编译工具链,请确保已配置交叉编译工具链。

(2)--prefix选择创建的_install目录,--with-linux-dir选择Linux-RT内核目录,Linux-RT内核需先进行编译。

图 41
图 41
图 42
图 42

执行如下命令,进行编译。

Host# make

图 43
图 43
图 44
图 44

执行如下命令,编译驱动。

Host# export PATH=/home/tronlong/RK3588/rk3588_linux_release_v1.2.1/extra-tools/gcc-linaro-10.2.1-2021.01-x86_64_aarch64-linux-gnu/bin:$PATH //配置交叉编译工具链环境变量

Host# make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- modules

图 45
图 45
图 46
图 46

执行如下命令,编译生成IgH EtherCAT主站程序。

Host# make install

图 47
图 47
图 48
图 48

执行如下命令,将驱动文件拷贝至"_install/modules/"目录下。

Host# mkdir -p _install/modules

Host# cp ./master/ec_master.ko ./_install/modules/

Host# cp ./devices/ec_generic.ko ./_install/modules/

图 49
图 49

igh_ethercat_dc_motor案例编译

igh_ethercat_dc_motor案例的编译需基于IgH EtherCAT主站程序,请先编译IgH EtherCAT主站程序。

请将案例src源码目录拷贝至Ubuntu工作目录下,进入src目录执行如下命令修改Makefile相关内容为IgH EtherCAT主站程序对应目录,如下图所示。

Host# vim Makefile

图 50
图 50

修改的内容如下:

INCLUDE += -I /home/tronlong/EtherCAT/_install/include

LDFLAGS := -L /home/tronlong/EtherCAT/_install/lib

图 51
图 51

执行如下命令,进行编译。编译完成后,将在当前目录下生成可执行文件。

Host# export PATH=/home/tronlong/RK3588/rk3588_linux_release_v1.2.1/extra-tools/gcc-linaro-10.2.1-2021.01-x86_64_aarch64-linux-gnu/bin:$PATH //配置交叉编译工具链环境变量

Host# make CC=aarch64-linux-gnu-gcc

图 52
图 52

关键代码

(1)创建EtherCAT Master。

图 53
图 53

(2)创建域。

图 54
图 54

(3)配置PDO。

图 55
图 55

(4)为域注册PDO条目。

图 56
图 56

(5)激活Master。

图 57
图 57

(6)修改当前进程优先级。

图 58
图 58

(7)进入循环周期任务。

图 59
图 59

(8)在周期任务中设置驱动器操作模式、加速度和减速度,分别发送0x6、0x7、0xF使驱动器处于ON状态。

图 60
图 60

(9)发送目标速度,转动电机。

图 61
图 61

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 案例编译
    • IgH EtherCAT主站程序编译
    • igh_ethercat_dc_motor案例编译
  • 关键代码
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档