我是一名研二的学生,现在教研室要开发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. Csv读写类

    <?php /** * CSV 文件读写类 * * 示例: $header = array('name' => '名字', 'age' =>'年龄', 'idcard' => ...

  2. Django基础八之cookie和session

    一 会话跟踪 我们需要先了解一下什么是会话!可以把会话理解为客户端与服务器之间的一次会晤,在一次会晤中可能会包含多次请求和响应.例如你给10086打个电话,你就是客户端,而10086服务人员就是服务器 ...

  3. 【MUI框架】学习笔记整理 Day 1

    MUI 框架之 [原生UI] (1)accordion(折叠面板) 由二级列表演化而来 <ul class="mui-table-view"> 2 <li cla ...

  4. 初学PS

    PS中的一些快捷键:新建:Ctrl+N 放大:Ctrl++ 缩小:Ctrl+- 首选项:Ctrl+K 标尺:Ctrl+R移动视图:空格键 绘制正圆:Shift 绘制鼠标落脚点为中心的正圆:Shift+ ...

  5. Python解析SWAN气象雷达数据--(解析、生成ASCII、Image、netCDF)

    解析   from datetime import * import time import calendar import json import numpy as np from struct i ...

  6. android之画板功能之橡皮擦 画笔大小和画笔颜色

    第一展示设置画笔颜色的功能,第二展示设置画笔大小的颜色,而第三则展示橡皮擦的功能,这节将图标颜色设置为了蓝色,并且,增加了最左边的按钮(其实,就是在gridview中多增加了一个item). 下面分别 ...

  7. maven jstl、jsp、servlet依赖

    jstl.jsp.servlet依赖 <dependency> <groupId>javax.servlet</groupId> <artifactId> ...

  8. zabbix使用问题

    1中文乱码 https://www.linuxidc.com/Linux/2017-08/146162.htm 软件 说明 备注 zabbix 3.4.7 操作系统 Centos7 问题描述:图表内容 ...

  9. Python 面向对象(一)

    面向过程编程 (Procedural Programming) Prodcedural programming uses a list of instructions to tell the comp ...

  10. Elasticsearch安装记录

    一 安装部分 1.新建用户 elasticsearch不能使用root身份执行 adduser esuser passwd esuser 2.赋予权限 切换到root chown -R esuser ...