amobbs.com 阿莫电子技术论坛

标题: canopen开源协议Canfestival求助 [打印本页]

作者: kiss2024    时间: 2020-4-16 14:37
标题: canopen开源协议Canfestival求助
最近有个伺服驱动器项目要上Canopen协议,时间很紧赶着送样,留给协议最多两周时间,我原来完全没有接触过can &canopen,自己弄透协议在写肯定行不通。网上了解了下打算用Canfestival开源的代码,下载源码初步看了下,要在伺服驱动器上跑的好还是要花点时间精力的。我看协议要求在定时中断和can接收中断跑 timeCanFestiwal()   canDispatch(&_Data,&m) 这两函数,估计在DSP 28034上60M主频上执行时间要超过100US,这个对伺服电机控制是不允许的,所以求助论坛大神们,能否指导下如何优化,可以有偿辅导,谢谢
作者: xld826    时间: 2020-4-16 22:17
本帖最后由 xld826 于 2020-4-16 22:25 编辑

Canfestival基于软件定时器,基因决定时间不会精准。
https://www.amobbs.com/thread-5641423-1-1.html

目前关于CANopen讨论最多的论坛http://www.dndev.com/cgi-bin/prtindex.cgi
作者: electricit    时间: 2020-4-17 08:23
用MicroCANopen吧,这个比较容易上手
作者: kiss2024    时间: 2020-4-17 08:30
xld826 发表于 2020-4-16 22:17
Canfestival基于软件定时器,基因决定时间不会精准。
https://www.amobbs.com/thread-5641423-1-1.html

好的 谢谢
作者: kiss2024    时间: 2020-4-17 09:40
electricit 发表于 2020-4-17 08:23
用MicroCANopen吧,这个比较容易上手

谢谢回复,MicroCANopen 这个我网上去找找,不知道资源多不多。
作者: xld826    时间: 2020-4-17 10:33
kiss2024 发表于 2020-4-17 08:30
好的 谢谢

你要做主机还是从机?
作者: electricit    时间: 2020-4-17 11:06
kiss2024 发表于 2020-4-17 09:40
谢谢回复,MicroCANopen 这个我网上去找找,不知道资源多不多。

MicroCANopen 直接下载到的源代码是keil的,可直接编译,不需要修改
改一下SDO字典,加点自己的PDO就可以用了
作者: kiss2024    时间: 2020-4-17 16:08
xld826 发表于 2020-4-17 10:33
你要做主机还是从机?

从机,Canfestival这个库 如何跟我的应用层打通好像还是没看懂
作者: kiss2024    时间: 2020-4-17 16:15
electricit 发表于 2020-4-17 11:06
MicroCANopen 直接下载到的源代码是keil的,可直接编译,不需要修改
改一下SDO字典,加点自己的PDO就可以 ...

谢谢,论坛上有这个源码吗,现在只能用百度搜,没找到论坛上的源码
作者: kiss2024    时间: 2020-4-17 17:02
electricit 发表于 2020-4-17 11:06
MicroCANopen 直接下载到的源代码是keil的,可直接编译,不需要修改
改一下SDO字典,加点自己的PDO就可以 ...

官网上下到了源码 谢谢
作者: electricit    时间: 2020-4-17 19:06
kiss2024 发表于 2020-4-17 16:08
从机,Canfestival这个库 如何跟我的应用层打通好像还是没看懂

CANOPEN主机与从机没有区别,不同的是主机的PDO多一些
作者: tim4146    时间: 2020-4-17 22:04
我们最近有个设备也准备搞呢,楼主多多分享经验啊
作者: liurangzhou    时间: 2020-4-21 09:31
mark                           
作者: niliuchudao    时间: 2020-4-22 09:56
你是用stm32做还是dsp,我手里有stm32的demo,834258654
作者: atonghua    时间: 2020-4-22 11:43
如果之前没接触过canopen  两周能搞定它 那真是神人!!!
作者: kiss2024    时间: 2020-4-30 10:00
唉,最后一天了,伺服电机+canopen的功能上都可以用了,但Canfestival还有个问题 异步TPOD只会发一次,不会按定时的发,代码看的不是很透,一直没找到问题。之前花了点精力在排查这个库跟DSP不兼容的地方(sizeof  跟 memcpy),不知道还有没有其他不兼容的地方,头疼,搞不好51还要加班,悲剧。
作者: atonghua    时间: 2020-4-30 10:30
kiss2024 发表于 2020-4-30 10:00
唉,最后一天了,伺服电机+canopen的功能上都可以用了,但Canfestival还有个问题 异步TPOD只会发一次,不会 ...

发送类型不能选OXFF 选这个表示PDO映射值变动才会发送  
作者: kiss2024    时间: 2020-4-30 10:54
0XFF可以的,问题找到了,DSP编译器问题,数组的初始化简写写法在ARM试可以的,在DSP是不行的,导致时钟只开了一个,DSP编译器跟其他的编译器的兼容性好多坑啊。
作者: zhenglingo    时间: 2020-5-3 14:55
DSP平台要注意字节对齐的问题,有个拷贝的地方要改
作者: chenweigang    时间: 2020-6-23 07:59
kiss2024 发表于 2020-4-17 17:02
官网上下到了源码 谢谢

楼主能发一下MicroCANopen源码吗,492459834@qq.com,谢谢

作者: chenweigang    时间: 2020-6-23 08:30
electricit 发表于 2020-4-17 11:06
MicroCANopen 直接下载到的源代码是keil的,可直接编译,不需要修改
改一下SDO字典,加点自己的PDO就可以 ...

MicroCANopen的源码能发一下吗,492459834@qq.com
作者: onerobo    时间: 2021-7-14 10:04
atonghua 发表于 2020-4-30 10:30
发送类型不能选OXFF 选这个表示PDO映射值变动才会发送

为什么我用STME32作主机,并且设置了TPDO1为FF,在main中改动了映射对象的内容,但是没有TPDO1发送出去呢
作者: imliyucai    时间: 2021-7-14 11:21
MicroCANopen。  标记一下,后面可能要用。
准备用 ti DSP 280xx 来做。
作者: dhw5qq    时间: 2021-11-28 19:58
       我已经把canopen调通了,STM32平台的,sdo和pdo和nmt都已经测试通过了
作者: whatcanitbe    时间: 2021-11-28 22:14
dhw5qq 发表于 2021-11-28 19:58
我已经把canopen调通了,STM32平台的,sdo和pdo和nmt都已经测试通过了

来,教教大家,让大家分享下你的喜悦
作者: Huang2022    时间: 2023-2-3 17:08
kiss2024 发表于 2020-4-17 16:08
从机,Canfestival这个库 如何跟我的应用层打通好像还是没看懂
(引用自8楼)

能分享一下你的思路吗?我最近也在研究,没看懂怎么去跟应用层接通,谢谢啦
作者: zhq_chd    时间: 2024-4-15 14:43
MicroCANopen




欢迎光临 amobbs.com 阿莫电子技术论坛 (https://www.amobbs.com/) Powered by Discuz! X3.4