Beaglebone Black中安装EtherCAT主站IGH方法

首先,BBB中emmc中自带的是Debian8.3的系统,内核版本为4.1.15,但是IGH要求内核版本需要是2.x或者3.x;因此需要考虑更换内核或者刷低版本的系统。

本人在狗东入了一张Class10 16G的TF卡,因为要用来做系统,所以速度一定要快。在BBB的官网(http://beagleboard.org/latest-images)下载了Debian 7.8 (BeagleBone, BeagleBone Black - 4GB SD) 2015-03-01,内核版本没有说明,因此直接用“win32diskimager”工具将下载的压缩包解压得到的镜像文件写入TF卡。

写入完成之后,插入BBB,按住“boot”按钮,也就是离SD卡槽很近的“S2”按钮,上电,待4个LED灯都亮了之后松开,等待一会儿就启动完成。

关于使用USB联机的方法请看本人另一篇博文《Beaglebone Black USB联机》,uname -a查看内核版本为3.18.12,满足IGH的环境要求。

 

接下来参照本人的另一博文《IGH EtherCAT Master Linux 编译教程》,在BBB上安装IGH。过程中可能会遇到一下问题:

在configure时会出现错误提示:configure: error: Failed to find Linux sources. Use --with-linux-dir!

也就是没有安装Linux 头文件,查看内核版本:

debian@beaglebone:~/Desktop/ethercat-1.5.2$ uname -a
Linux beaglebone 3.8.13-bone70 #1 SMP Fri Jan 23 02:15:42 UTC 2015 armv7l GNU/Linux

安装头文件:

debian@beaglebone:~/Desktop/ethercat-1.5.2$ apt-get install linux-headers-$(uname -r)
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?

提示非管理员账户,切换到管理员账户(因为是新装系统,没有设管理员账户密码,更改):

debian@beaglebone:~/Desktop/ethercat-1.5.2$ sudo passwd root
Enter new UNIX password: 
Retype new UNIX password: 
passwd: password updated successfully

再次安装头文件:

debian@beaglebone:~/Desktop/ethercat-1.5.2$ su root
Password: 
root@beaglebone:/home/debian/Desktop/ethercat-1.5.2# apt-get install linux-headers-$(uname -r)

错误提示:

E: Unable to locate package linux-headers-3.8.13-bone70
E: Couldn't find any package by regex 'linux-headers-3.8.13-bone70'

更新源之后就可以安装了:

root@beaglebone:/home/debian/Desktop/ethercat-1.5.2# sudo apt-get update
root@beaglebone:/home/debian/Desktop/ethercat-1.5.2# apt-get install linux-headers-$(uname -r)

 现在就可以继续编译IGH源文件了。

不得不说,BBB的配置还是蛮低的,单核的A8核心运算能力非常慢,整个过程还是挺漫长的。

在编辑ethercat文件这一步又遇到问题了,如下:

root@beaglebone:/opt/etherlab# usr/bin/vim etc/sysconfig/ethercat
bash: usr/bin/vim etc/sysconfig/ethercat: No such file or directory

这个问题很让我头疼,咨询了师兄让我尝试把这个文件复制到其他目录(譬如桌面)之后在用vim编辑试试,果然可以。我也不知道为什么,反正我就是这样做的。

然后mkdir、cp也遇到了这样的问题,不管干什么操作都这样提示,我索性关机回宿舍睡觉。第二天,问题依旧,实在没办法了重新做了下系统,看了一下vim是预装的,就没有运行安装vim的命令。接下来高歌猛进,顺利完成了IGH的安装。

成功运行EtherCAT。

 

如果在:/etc/init.d/ethercat start   时遇到“ethercat master Module ec_master not found.”错误,

不要慌,我也遇到了,是由于modprobe找不到,我之所以会出现这个问题,是因为打了xenomai的补丁,库里既包含了原先的Linux-3.8.13-bone80,又包含了linux-由3.8.13-bone80-r79,好像是叫这么一个名字,大概是这么个意思吧。

可以把ethercat- 1.5.2/devices/ec_genreic.ko和ethercat- 1.5.2/master/ec_master.ko复制到/lib/modules/yourkernelname/目录下,然后执行depmod,就可以modprobe到了。

 

所以本人没有Linux基础,所以遇到问题都要去问度娘啊谷狗啊,心累( ╯□╰ )!

 

转载于:https://www.cnblogs.com/zhouyh/p/7328002.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值