我是一名研二的学生,现在教研室要开发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. C#基础 继承和实例化

    有代码如下,问输出的是多少: class Program { static void Main(string[] args) { B b = new B(); Console.ReadKey(); } ...

  2. JSON学习笔记-4

    JSON 数组 1.访问数组 1.一次访问一个嵌套内容值var myObj, x; myObj = { "name":"网站", , "sites&q ...

  3. this and super

    this 和 super 的区别:this, 先从本类找属性和方法,本类找不到再从父类找.super, 从父类找. this 和 super 都可以调用构造方法,所以this() 和 super() ...

  4. Pig的使用场景

    数据转换加载(ETL)数据流:读取原始数据(比如用户日志),进行数据清洗,进行简单的预计算后导入到数据仓库,比如join连接数据库里的用户信息.

  5. python利用unittest进行测试用例执行的几种方式

      利用python进行测试时,测试用例的加载方式有2种:  一种是通过unittest.main()来启动所需测试的测试模块:  一种是添加到testsuite集合中再加载所有的被测试对象,而tes ...

  6. map合并,相同键对应的值相加

    最近在做统计钱的计算时遇到的一个需求,需要将一个大类别下的每一种钱进行特定的运算然后获得六年的钱,最后将这些钱按照年份进行汇总,获得总得大类型的六年的钱,在这个过程中采用了这种方法,每次算得钱放在ma ...

  7. Eigen学习之简单线性方程与矩阵分解

    Eigen提供了解线性方程的计算方法,包括LU分解法,QR分解法,SVD(奇异值分解).特征值分解等.对于一般形式如下的线性系统: 解决上述方程的方式一般是将矩阵A进行分解,当然最基本的方法是高斯消元 ...

  8. 6.servlet和jsp的区别

    servlet和jsp的区别 jsp作为Servlet技术的扩展,经常会有人将jsp和Servlet搞混.本文,将为大家带来servlet和jsp的区别,希望对大家有所帮助. servlet和jsp的 ...

  9. 使用 Azure CLI 创建和管理 Linux VM

    Azure 虚拟机提供完全可配置的灵活计算环境. 本教程介绍 Azure 虚拟机的基本部署项目,例如选择 VM 大小.选择 VM 映像和部署 VM. 你将学习如何执行以下操作: 创建并连接到 VM 选 ...

  10. MACOS root密码忘了怎么办?

    MAC中ROOT用户很少用到,有时又手贱,给设了密码,过一阵忘了密码,很尴尬