TI中文支持网
TI专业的中文技术问题搜集分享网站

基于AM335X平台的Ethercat实现

Other Parts Discussed in Thread:SYSBIOS, AM3359, SYSCONFIG

附件是335X平台ETHERCAT的介绍和主从实现的DEMO,欢迎大家讨论.

leo chen:

写的非常详细,有空的时候试验一下

,

Andy Chen5:

我有一張am335x ICE Demo Board

關於PRU Firmware能燒錄在SD Card裡面嗎?

AM335x SYSBIOS Industrial SDK 01.01.00.06 User Guide.pdf 第11頁

by default , PRU Firmware from SPI Flash …. 

可以改成從SD Card嗎?

,

Henry Chou1:

這張帖真是精華中的精華,

因為我只有實踐EtharCAT slave從站的產品,

但是這張帖已經說明了怎麼去做EtherCAT master真是寫得好。

,

chen guang:

要是出个powerlink的就好了

,

user4209284:

您好,我现在在用ICE3359这块开发板,EtherCAT从站的功能Demo和Full都可以用了。但是我现在想在Full模式下使用AM3359自带的ADC功能,想请教下添加该功能模块的方法?

假如在Full的工程里面直接按照starterware里的ADC例程代码去配置,并加入到工程里(如在Void common_main()函数中的BIOS_start()前配置并使能ADC功能),这样可以吗?

修改好的工程还按照User guide说明的app方式加载,还是需要用其他方法把程序写到板子上?

,

Yaoming Qin:

Wei Li12 说:

您好,我现在在用ICE3359这块开发板,EtherCAT从站的功能Demo和Full都可以用了。但是我现在想在Full模式下使用AM3359自带的ADC功能,想请教下添加该功能模块的方法?

假如在Full的工程里面直接按照starterware里的ADC例程代码去配置,并加入到工程里(如在Void common_main()函数中的BIOS_start()前配置并使能ADC功能),这样可以吗?

修改好的工程还按照User guide说明的app方式加载,还是需要用其他方法把程序写到板子上?

,

jiew:

1.請問 AM335X ICE板 的Ethercat slave 是否支持SDO傳輸

2.IGH EtherCAT Master 是否有SDO傳輸控制例子??

,

hui wen:

你好,是不是EtherCAT从站都要在spi flash 中烧写EtherCAT从站固件?谢谢!!!!

,

jiew:

照著圖文可以編譯成功

但是放入AM335X 執行都會有錯誤,有人知道為什麼嗎??

ethercat startStarting EtherCAT master 1.5.1 FATAL: Module ec_master not found. failed

若不透過/etc/init.d/ethercat script

直接insmod ec_master.ko 與 ec_generic.ko

執行ethercat pdos 又會出現下列錯誤

Failed to obtain number of masters: Failed to open master device /dev/EtherCAT0: No such file or directory

,

Yaoming Qin:

jiew 说:

照著圖文可以編譯成功

但是放入AM335X 執行都會有錯誤,有人知道為什麼嗎??

ethercat startStarting EtherCAT master 1.5.1 FATAL: Module ec_master not found. failed

若不透過/etc/init.d/ethercat script

直接insmod ec_master.ko 與 ec_generic.ko

執行ethercat pdos 又會出現下列錯誤

Failed to obtain number of masters: Failed to open master device /dev/EtherCAT0: No such file or directory

请问您这个是EtherCAT主还是从,是跑在Linux上么?

,

jiew:

我是EtherCAT 主站,跑在AM335X 的Linux上 (sdk6.0)

/etc/init.d/ethercat start 執行都會錯誤  

查詢/etc/init.d/ethercat script  主要都是 modprobe 會錯誤!! 

,

jiew:

請問是否有文章中提到的範例 ethercat_test.c 可以提供??

BusCouplerPos,與TI_AM3359ICE 是代表什麼意思???

,

jiew:

已經可以將IgH EtherCAT Master 移植至自行開發的AM335X Board執行

並可控制其他EtherCAT Slave 裝置

謝謝幫忙!!

,

woniu xiao:

jiew 于 2015-7-6 18:23 发表了以下帖子 :

照著圖文可以編譯成功

但是放入AM335X 執行都會有錯誤,有人知道為什麼嗎??

ethercat startStarting EtherCAT master 1.5.1 FATAL: Module ec_master not found.failed

我也遇到了这个问题,请问您是怎么解决的呢?

,

k x:

怎么解决的啊。。。。

我也有这问题

,

k x:

怎么解决的?????

,

chaolan xu:

请问你们问题解决了吗?我也遇到这个问题!!!

,

chaolan xu:

ethercat start
Starting EtherCAT master 1.5.1 FATAL: Module ec_master not found.
failed
您好,我在加载模块时遇到了这个问题,请问您知道是什么原因吗?

,

chaolan xu:

ethercat start
Starting EtherCAT master 1.5.1 FATAL: Module ec_master not found.
failed
您好,我根据你的教程,但是加载时候出现这个问题。我用的是1.5.2版本主站,内核3.8。

,

dongdong chen:

hi,你好,请问BusCouplerPos, TI_AM3359ICE这两个参数怎么确定的,我现在想用驱动器作为从站,但是一直进入不了OP,这个从站的配置是集成到了主站当中吗?还是需要XML文件进行配置?请大神指教

,

chaolan xu:

BusCouplerPos是指该总线耦合器在链路上的地址,是设置寻址时所用,如果单台的直接设置0,0就行,详细的说明可以参照ethercat-1.5.2.pdf的3.1节。TI_AM3359ICE是ICE板本身的参数,即它的vendor id与product_code,xml里边会有说明。

,

dongdong chen:

你好,其实那两个参数的意思我是明白怎么回事的,但是当将它们改成我的驱动器参数的时候,只能到“AL state:0x4”,而没有进入OP,我想应该是XML文件的问题,要怎么样我的XML文件才可以起作用呢?另外,我想问您是不是只要使用ethercat pdos命令参数之后,填充那几个结构体,就不要再用XML文件就可以自动生成网络描述文件了?那为啥我使用这个命令没有相应的信息输出?

,

chaolan xu:

ethercat pdos之后没有输出,我猜想会不是你的模块加载过程出现了问题,就是模块没有加载正确。因为如果这一步没有出来,主站是无法知道你邮箱跟过程数据通道的具体配置情况的。那么你也就没办法确定你过程数据对象进而进行通信了啊。我用的是ice,是可以通过pdos出来的情况写的测试源文件的,没什么大问题。你可以尝试用twincat跑一下,看看情况是否正常,然后它的配置是如何?有条件的话,也可以通过抓包看看数据包过程数据是否刷出去有被处理到。

,

dongdong chen:

谢谢回复,我应该说的具体些,我的所有设备用twincat都是可以的,我现在这里有个倍福的设备可以进入状态机,但是别的不行,比如三洋,我想可能例程中的很多参数都是针对倍福的吧。而且倍福设备用ethercat pdos输出没有问题,但是别的驱动器就不行,比如三洋的只有物理地址这一栏,而TxPDO 、PDO没有,再次说明一下,用twincat设备都是ok的,因为twincat会扫描以及配置相应的XML文件,但是例程中好像没有这个步骤

,

chaolan xu:

我前边用的是ICE做测试,也接过三洋,pdos是可以出来一样的sm通道配置情况,不过三洋具体的我还没跑过,所以状态机切换是否有问题还得试试。它的例程是针对倍福写的,但是ethercat pdos跟例程是不会有关系的,只是看你链路扫描的情况。

,

Yaoming Qin:

可以查看下http://www.ti.com/lit/ug/tiduaf8/tiduaf8.pdf 中的 Appendix B Acontis EC-Engineer Tool for Creating an .ENI File,不同的主站是要做配置的。

,

chaolan xu:

你好,你的问题搞定了没?你用倍福的驱动器是可以的吗?控制过电机还是,你的主站用的是pc还是嵌入式平台呢?

,

yong yuan1:

遇到同样的问题,请问如何解决的呢

,

yong yuan1:

请问当初是怎么解决的呢,求指导

,

yong yuan1:

虚拟机运行时出现下面错误

Starting EtherCAT master 1.5.2 FATAL: Module ec_master not found.failed

开发板出现下面错误

[root@EVB335X /]# /etc/init.d/ethercat start Starting EtherCAT master 1.5.2 [ 295.269775] EtherCAT: Master driver 1.5.2 2eff7c993a63[ 295.275268] EtherCAT ERROR: MAC address may not be empty.kernel taint MAC add modprobe: can't load module ec_master (ethercat/master/ec_master.ko): Invalid argumentfailed

请问该如何解决啊,完全没有头绪

,

k x:

 EtherCAT ERROR: MAC address may not be empty.kernel taint MAC 

配置文件中,修改MAC地址

,

martini zh:

jiew 说:

已經可以將IgH EtherCAT Master 移植至自行開發的AM335X Board執行

並可控制其他EtherCAT Slave 裝置

謝謝幫忙!!

,

Denny%20Yang99373:

make install 会在当前目目生成 output 文件夹,里面有编译生成的各种用户空间的文件。可以把 此目目下的各文件目目复制到 AM335X 的文件系统根目目下,同时内核模块 ethercat- 1.5.1/devices/ec_generic.ko 和 ethercat-1.5.1/master/ec_master.ko 也需摘手动复制到 AM335X 文件系统任意目目中。

你先手动insmod ec_master.ko试试

,

Denny%20Yang99373:

对于这种错误

[root@EVB335X /]# /etc/init.d/ethercat start Starting EtherCAT master 1.5.2 [ 295.269775] EtherCAT: Master driver 1.5.2 2eff7c993a63[ 295.275268] EtherCAT ERROR: MAC address may not be empty.kernel taint MAC add modprobe: can't load module ec_master (ethercat/master/ec_master.ko): Invalid argumentfailed

是由于modprobe找不到

可以把ec_genreic.ko和ec_master.ko复制到/lib/modules/yourkernelname/目录下,然后执行depmod

就可以modprobe到了

执行/etc/init.d/ethercat start 有的会报参数错误,需要修改 /etc/sysconfig/ethercat里面的MAC地址和网卡类型

,

bin lu:

Hi Denny,有一个关于AM335x从站和IGH主站的问题想请教下你,谢谢。

从站是用AM3359 ICE BOARD的板子+m335x_sysbios_ind_sdk_1.1.0.8里的full 从站实现的。用twincat主站测试过,没有问题。

但用Igh1.52主站时,能连接上从站,但是在从站的状态切换时候出现问题,本来在safeop下,Watchdog Process Data是应该使能的,但是用igh主站时,watchdog Process Data 没有使能,Watchdog Status Process data寄存器为0;也不知道是哪里出了问题。

想请教你这可能是哪出了问题。非常感谢。

,

tao zhang16:

您好,能否分享下您的开发思路和整体过程,和资料,我现在刚走入这个领域,特别想向您学习和咨询

,

Denny%20Yang99373:

你好,

我没有遇到过这种问题,建议抓包对比分析一下IGH主站和其他主站的数据包.

,

qinghan yu:

你好,我现在需要移植IgH EtherCAT Master ,请问下你是怎么进行移植的,在Linux下还是Windows下呢,还需要哪些软件或工具吗,谢谢!

,

Denny%20Yang99373:

文档里就有,LINUX下的

,

qinghan yu:

bin lu 说:

Hi Denny,有一个关于AM335x从站和IGH主站的问题想请教下你,谢谢。

从站是用AM3359 ICE BOARD的板子+m335x_sysbios_ind_sdk_1.1.0.8里的full 从站实现的。用twincat主站测试过,没有问题。

但用Igh1.52主站时,能连接上从站,但是在从站的状态切换时候出现问题,本来在safeop下,Watchdog Process Data是应该使能的,但是用igh主站时,watchdog Process Data 没有使能,Watchdog Status Process data寄存器为0;也不知道是哪里出了问题。

想请教你这可能是哪出了问题。非常感谢。

,

hai wang2:

你好,我想问一下,我想将ethercat-1.5.2移植到3.2.0内核的开发板上,可是我编译额时候出现arm-eabi-gcc not found请问这是我的交叉编译工具链有问题吗?

,

JIALIANG LEE:

您好,我想请问一下,我用的是BeagleBone Green的板子,但是执行到

./configure –prefix=/home/denny/ethercat/ethercat-1.5.1/output  –with-linux-

dir=/home/denny/ti-sdk-am335x-evm-05.07.00.00/board-support/linux-3.2.0-psp04.06.00.10 

–enable-8139too=no  –enable-generic=yes  CC=arm-none-linux-gnueabi-gcc –host=arm-

none-linux-gnueabi 这部时,发现执行不下去,我的linux内核版本是Linux-4.4.49,已经改过了,还是不行。

,

qinghan yu:

JIALIANG LEE 说:

您好,我想请问一下,我用的是BeagleBone Green的板子,但是执行到

./configure –prefix=/home/denny/ethercat/ethercat-1.5.1/output  –with-linux-

dir=/home/denny/ti-sdk-am335x-evm-05.07.00.00/board-support/linux-3.2.0-psp04.06.00.10 

–enable-8139too=no  –enable-generic=yes  CC=arm-none-linux-gnueabi-gcc –host=arm-

none-linux-gnueabi 这部时,发现执行不下去,我的linux内核版本是Linux-4.4.49,已经改过了,还是不行。

,

JIALIANG LEE:

root@beaglebone:~# ./configure –prefix=/home/denny/ethercat/ethercat-1.5.1/output –with-linux-dir=/home/denny/ti-sdk-am335x-evm-05.07.00.00/board-support/linux-4.4.9-psp04.06.00.10 –enable-8139too=no –enable-generic=yes CC=arm-none-linux-gnueabi-gcc –host=arm-none-linux-gnueabi -bash: ./configure: No such file or directory你好,我出现了这种情况,前面我说错linux内核了,那这是因为我没有编译内核源码吗?我拿到板子的时候里面已经有内置linux系统了。

root@beaglebone:~# uname -aLinux beaglebone 4.4.9-ti-r25 #1 SMP Thu May 5 23:08:13 UTC 2016 armv7l GNU/Linux这个代表已经编译过了吗?

,

qinghan yu:

JIALIANG LEE 说:

root@beaglebone:~# ./configure –prefix=/home/denny/ethercat/ethercat-1.5.1/output –with-linux-dir=/home/denny/ti-sdk-am335x-evm-05.07.00.00/board-support/linux-4.4.9-psp04.06.00.10 –enable-8139too=no –enable-generic=yes CC=arm-none-linux-gnueabi-gcc –host=arm-none-linux-gnueabi -bash: ./configure: No such file or directory你好,我出现了这种情况,前面我说错linux内核了,那这是因为我没有编译内核源码吗?我拿到板子的时候里面已经有内置linux系统了。

root@beaglebone:~# uname -aLinux beaglebone 4.4.9-ti-r25 #1 SMP Thu May 5 23:08:13 UTC 2016 armv7l GNU/Linux这个代表已经编译过了吗?

,

JIALIANG LEE:

是的,我是通过Xshell5与板子进行连接来执行命令,你的意思我懂了,我先重新编译linux内核试一下。非常感谢,请问您可以提供你的联系方式吗,往后想请教一下你。

,

qinghan yu:

JIALIANG LEE 说:

是的,我是通过Xshell5与板子进行连接来执行命令,你的意思我懂了,我先重新编译linux内核试一下。非常感谢,请问您可以提供你的联系方式吗,往后想请教一下你。

,

JIALIANG LEE:

好的,你移植的时候除了在ubuntu下进行还需要什么编译环境吗?

,

qinghan yu:

JIALIANG LEE 说:

好的,你移植的时候除了在ubuntu下进行还需要什么编译环境吗?

,

JIALIANG LEE:

前辈,我是刚入门Linux这块的。请问你是如何进行在Ubuntu虚拟平台下与目标开发板进行连接通信?

赞(0)
未经允许不得转载:TI中文支持网 » 基于AM335X平台的Ethercat实现
分享到: 更多 (0)