Preempt-RT实时系统下IgH主站安装

1. 安装环境

  • ubuntu18.04
  • 内核版本:4.19.72-rt25

2. 确定网卡类型

  • 查看网卡驱动
lspci -v

在这里插入图片描述
可以看到我的网卡驱动主要有e1000e和igb两种类型,其中e1000e对应的规格是I219-V,igb对应的规格是I211,我选择igb作为ethercat的专用网卡驱动。

  • 查看网卡类型
ifconfg

在这里插入图片描述

sudo apt-get install ethtool
ethtool -i eno1
ethtoo -i enp1s0

在这里插入图片描述
eno1:板载网卡,驱动为e1000e
enp1s0:PCI-E独立网卡,驱动为igb

3. 下载IgH安装包

在eterlab官网上下载IgH安装包,master主分支:

cd  Downloads/
git clone http://gitlab.com/etherlab.org/ethercat.git

下载安装包后,依次进入devices-igb文件夹,查看是否有标有4.19的文件,如果有则证明这个安装包可以支持当前内核版本,即IgH安装包决定实时内核版本。博主一开始安装的实时内核版本为4.16.18-rt12,但是IgH安装包里没有4.16的文件,所以没法匹配。
然后,打开igb_main-4.19-ethercat.c文件,ctrl+F查找是否有“I211”关键字,如果有则证明该安装包可以支持我的网卡设备。
满足上述要求后,依次执行以下指令:

4. 配置安装

  • 配置
cd ethercat/
./bootstrap 
./configure --enable-e1000e --enable-igb --enable-8139too=no

如果你要使用专用网卡必须要加上--enable-e1000e或者--enable-igb,否则编译时无法生成相应的模块

  • 编译
sudo make
sudo make modules
sudo make install
sudo make modules_install
  • 配置网卡
  1. 通用网卡
sudo depmod
sudo ln -fs /usr/local/etc/init.d/ethercat /etc/init.d/         #链接启动脚本
sudo mkdir /etc/sysconfig
sudo ln -fs /usr/local/etc/sysconfig/ethercat /etc/sysconfig/   #链接配置文件
sudo -i
echo KERNEL==\"EtherCAT[0-9]*\", MODE=\"0664\" > /etc/udev/rules.d/99-EtherCAT.rules

最新版本已将安装目录/opt/etherlab改为/usr/local

ifconfig     #查询有线网卡的MAC地址
sudo gedit /etc/sysconfig/ethercat
MASTER0_DEVICE=”c4:00:ad:da:2e:9b”            #注:此为ifconfig命令显示的网卡地址,替换为自己的
DEVICE_MODULES=”generic”                      #注:设置网卡为默认generic

建议先配通用网卡,通用网卡测试成功后再修改配置即可

  1. 专用网卡
    在IgH下载包的根目录下执行
sudo cp devices/igb/ec_igb.ko /lib/modules/$(uname -r)/ethercat/devices   #拷贝专用网卡模块,这个.ko模块就是你编译生成的 
sudo gedit /etc/sysconfig/ethercat
MASTER0_DEVICE=”c4:00:ad:da:2e:9c”              #注:此为ifconfig命令显示的专用网卡地址,替换为自己的
DEVICE_MODULES=”igb”                            #注:设置网卡为igb驱动
sudo depmod

5. 启动测试

ethercat   #显示信息
sudo /etc/init.d/ethercat start     #启动
ethercat master  #显示主站状态
sudo /etc/init.d/ethercat stop      #关闭

6. 扫描从站

sudo ethercat slave

7. 设置环境变量

sudo gedit ~/.bashrc
PATH=$PATH:/usr/local/bin

然后执行

source ~/.bashrc

这样就可以在终端使用 EtherCAT 提供的命令行工具了。

  • 2
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值