我是一名研二的学生,现在教研室要开发canopen,我已经看了几个月了,在网上找了canopen的开源代码CANfestival,现在想做移植,有几个问题想要请教:
1,开发主站,只买beckhoff的从站PLC够不,必须要CAN分析仪么?还需要其它什么开发工具不?
2,现在教研室已有的硬件平台,一个是arm9200,基can控制器是MCP2510,linux系统已经构建好了的;另一个是infineonXC164,自带的can控制器,已经有驱动程序了,请问开发主站,我选择哪个平台好点,各自的开难度有多大?
3,请问有关注过CANfestival么,可以用这个来移植不?
谢谢了,关注这个论坛很久,今天注册了,发了第一帖。

DND版权所有,转载请注明出处

 

  2010/03/03 11:53am IP:
已设置保密
   
 
 
 
 winshton 
 头衔: 论坛版主


信息:
威望: 0
来自: 保密 
总发贴数: 1040
注册日期: 2007/03/29

 
消息 查看 搜索 好友 邮件 主页 复制 引用 回复 

 
canfestival是个不错的协议栈
1.CAN分析仪只是用来分析CAN总线上的数据帧,调试用。主站可大可小,功能可以很丰富也可以很简单,如果是想开发通用主站,难度较大,工作量也不小,而且要求也比较高;如果只是想管理特定的从站比如网络中只有几个beckhoff的设备,还是比较容易的。
2.主站如果基于canfestival的话,协议栈这用哪个平台无所谓,canfestival从单片机到x86,从裸奔到OS都支持,你需要考虑的是主站的人机界面等上层应用在哪个平台下容易做。
3.同2,canfestival移植很方便,好多平台已经有移植工程,只是熟悉canfestival需要一段时间,文档不是很细致,这是开源项目的通病。

DND版权所有,转载请注明出处



我的技术blog: http://www.cnblogs.com/winshton/,欢迎交流指正!

 

  2010/03/04 00:15am IP:
已设置保密
   
 
 
 
 sjh4598 
   

信息:

威望: 0
来自: 保密 
总发贴数: 4
注册日期: 2010/03/03

 
消息 查看 搜索 好友 邮件 复制 引用 回复 

 
谢谢版主的回答,现在有信心了,程序已经移到infineon上了,只是驱动接口留出来了,现在想也移到arm9200上去,评估一下,只选择一个平台开发。我的疑问还有:
1.主站读从站的eds文件,这个功能要自己做吗?还有主站需要写eds文件么,dcf一定需要支持么?
2.我看以前的帖子说协议需要购买,我现在有ds301,开发基本功能的主站够不?还需要其它什么协议么?
2.我现在是不是主要工作是结合协议看懂canfestival?

DND版权所有,转载请注明出处

 

  2010/03/04 03:16am IP:
已设置保密
   
 
 
 
 winshton 
 头衔: 论坛版主


信息:
威望: 0
来自: 保密 
总发贴数: 1040
注册日期: 2007/03/29

 
消息 查看 搜索 好友 邮件 主页 复制 引用 回复 

 
1.要自己做的,canfestival提供一个python写的OD编辑工具,好像可以生成标准EDS,但是这个EDS的解析需要主站来做的,如果是非通用主站平台,可以忽略掉这部分;我没用过通用主站,所以有没有eds不好说;dcf不一定要支持,那个不是提供给主站用的吧。
2.开发基本的功能301
401
404够了,但是如果开发伺服什么的就需要购买相应的子协议了,看你的需要,随着你对canopen的深入,这些都会有了解。
3.是的,最好能一边调试一边结合协议分析代码,会比较快上手。

CANOPEN开发问题的更多相关文章

  1. CANopen笔记1

    CAN现场总线只定义了OSI网络模型的第一层(物理层) 和第二层(数据链路层) ,而这两层一般已被CAN硬件完全实现了.由于没有规定应用层,本身并不完整,需要一个高层协议来定义CAN报文中的11/29 ...

  2. JZ2440开发笔记(9)——位置无关代码设计【转】

    b MAIN 和 ldr pc,=MAIN 的区别(谈到代码位置无关性) 看bootloader的时候经常看到这两种写法,不太明白区别,网上查了查.其实看了之后还是一头雾水? 其中,2和3 似乎是一个 ...

  3. CANopen和DeviceNet有何异同

    >> 欢迎您,客人: 登录 | 注册 | 忘记密码 | 在线 | 搜索 | 帮助   DND开发论坛 ◇ DeviceNet技术讨论区 ◇ [返回] [讨论]CANopen和DeviceN ...

  4. CANopen个人之所见,所想

    一直想写一篇关于CANopen的文章,鉴于个人知识能力没有动笔,今天做了一番思想斗争,斗胆发表一下自己对CANOPEN的肤浅认识. 计划从销售人员,技术人员角度都分析一下CANopen的优势,文章可能 ...

  5. CANOpen学习指南

    对于初学者,相对于其他总线的资料来说,在国内CANOpen的资料并不多.而且并不是所有资料都适合初学者看的.这里给出一些建议,对CANOpen感兴趣的,可以参考一下学习的顺序. 前提:需要对CAN总线 ...

  6. CANopen 基础

    1. TPDO和RPDO都是针对从站来说的,协议上没有有讲任何一个关于主站的概念,协议就只是定义从站,没有定义主站任何东西.TPDO:从站->主站RPDO:主站->从站 2. PDO的CO ...

  7. CAN 和 CANopen的区别和联系

    1.CAN与CANopen的共同点与不同点:  CAN只定义了物理层与链路层,而没有定义用户层,用户可根据自己的需要定义一些网络上的通信约定:  CANopen是在CAN的基础上定义了用户层,即规定了 ...

  8. 避免重复造轮子的UI自动化测试框架开发

    一懒起来就好久没更新文章了,其实懒也还是因为忙,今年上半年的加班赶上了去年一年的加班,加班不息啊,好了吐槽完就写写一直打算继续的自动化开发 目前各种UI测试框架层出不穷,但是万变不离其宗,驱动PC浏览 ...

  9. App开发:模拟服务器数据接口 - MockApi

    为了方便app开发过程中,不受服务器接口的限制,便于客户端功能的快速测试,可以在客户端实现一个模拟服务器数据接口的MockApi模块.本篇文章就尝试为使用gradle的android项目设计实现Moc ...

随机推荐

  1. PS制作gif动图以及背景透明与消除残影

    摘要: 用Photoshop制作gif动画的要点:在窗口菜单中找到“时间轴”选中打开时间轴,单击一帧,设置该帧显示持续时间在图层里将该帧要显示的图层显示,并将不该显示的层隐藏,新建一帧,接下来就是重复 ...

  2. 多表批量导出txt及打压缩包下载

     在一些特殊的业务系统中,有些客户查看报表数据时不需要在浏览器上逐一查看,需要在页面端选择要查看的报表名称(可多选),选择条件,然后将所选中的报表批量导出到txt文件中并且要把批量导出的结果文件打 ...

  3. JS数组与对象的遍历方法大全

    本文简单解析各种数组和对象属性的遍历方法: 原生for循环.for-in及forEach ES6 for-of方法遍历类数组集合 Object.key()返回键名的集合 jQuery的$.each() ...

  4. Android横、竖屏幕动态切换(layout-land 和layout-port)

    下面是一个例子程序: 1.首先通过以下语句设置Activity为无标题和全屏模式: // 设置为无标题栏 requestWindowFeature(Window.FEATURE_NO_TITLE); ...

  5. wmware中网络设置技巧

    wmware中网络的三种方式: .............................................. (1)桥接模式: 将主机网卡与虚拟机虚拟的网卡利用虚拟网桥进行通信. 默认 ...

  6. 打开struts-config.xml 报错 解决方法Could not open the editor

    打开struts-config.xml 报错 解决办法Could not open the editor 错误信息:Could not open the editor: Project XXX is ...

  7. Vue2学习笔记:过渡效果css

    过渡效果 Vue 提供了 transition 的封装组件,在下列情形中,可以给任何元素和组件添加 entering/leaving 过渡 <!DOCTYPE html> <html ...

  8. 理解 Linux 的平均负载和性能监控

      在本文中,我们将解释 Linux 系统中最关键的管理任务之一——关于系统 / CPU 的负载load和平均负载Load average的性能监控. 首先来看所有的类 UNIX 系统中两个重要的表述 ...

  9. 工作总结 [all]

    2. 工作总结 3. 面试经验 4. 其他

  10. RabbitMQ学习---RabbitMQ的学习

    [更多参考]http://www.cnblogs.com/alex3714/articles/5248247.html