前段时间接手了一个CANopen IO项目,刚开始时,自己算是一个对CANopen零基础的菜鸟,现在算是学习收获了很多,十分愿意把心得分享给大家。如果有出错的地方或者有兴趣技术交流的,都可以联系我。现在市场上虽然有很多开发CANopen IO的方案,但个人认为以下的方案算是最容易上手的,先回答几个问题:
1、是否需要CANopen相关知识?
答:这是肯定的,开发人员需要了解CANopen协议和IO设备子协议等相关知识。可以下载学习CANopen协议规范英文文档。
2、是否需要移植CANopen协议?
答:不需要,采用的型号为CO4011B的MCU,该MCU已经移植好了CANopen协议
3、是否需要开发人员写应用程序?
答:不需要,开发人员只需要设计供电电路,输入输出接口电路等硬件电路即可。
4、是否符合CANopen协议规范?
答:答案是肯定的,因为采用的处理器已经移植好了CANopen协议,所以最后的产品肯定可以通过一致性测试。
讲到这里,相信大家对该方案已经有所了解,我所说的方案正是基于CO4011B-FL 芯片设计的CANopen IO 。因为该芯片只需要很少的外围器件就可设计出一个最小系统,所以我最后设计出来的模块主要包括两部分:一个是最小系统板,另外一个是输出输入接口电路板。
对于最小系统板上,包括芯片的晶振电路,收发器电路,拨码开关电路,状态指示灯电路。
1、拨码开关电路:
1.1、设置节点ID
1.2、设置接口电路的输入输出模式
有模拟量输入,数字量输入输出等最多8种。
1.3、设置波特率,高达1MHz。
2、状态指示灯电路:
包括芯片状态指示灯,运行状态指示灯,错误状态指示灯,符合 Cia DS303-3 V1.2-Indicator Specification
对于输入输出接口电路板,主要包括电源电路,输入输出接口电路等
3、电源电路:
采用24V直流电输入,该电压首先作为数字量输出的供电电压。通过降压隔离后为处理器供电。
4、输入输出接口电路
采用TLP281-4光耦隔离作为数字量的输出电路
至于具体的电路原理图,会在下一次更新,最后附上CO4011B的资料。
用户1766950 2015-9-6 11:06
用户1702890 2015-9-6 10:57
用户1779329 2015-9-6 10:08