尽管安全性和保障都得到了解决(通过CANopenSafety和CANcrypt),但目前还没有提供这两者的标准化解决方案。CiA用户组目前拥有多个工作组,负责审查CAN、CANFD和CANXL安全通信的各个方面。
1
CAN的实时能力
重要的是要记住,您的最大比特率还取决于布线的物理拓扑,并且根据您的应用,单个控制周期所需的总传输可能包括两条传输路径:一条用于将数据输入到控制单元,另一条用于从控制单元到输出。
单独观察CAN(以及FD和XL变体),很明显原本它不是确定性的。产生高优先级帧的单个设备可能会阻止所有其他设备的通信。为了使CAN具有确定性,我们需要确保受控帧被触发——何时可以使用哪个CANID。要激活CAN的实时功能,请考虑以下设计目标。虽然这些指南可能会根据应用程序的具体情况而有所不同,但它们可以作为可靠的起点:
2
确保没有单个节点可以生成连续消息的扩展流。一些驱动程序提供传输“节流阀”来限制最大传输速率。
3
传输延迟的大致数据
该领域是CAN与CANopen等高层协议协同发挥潜力的真正领域。CANopenPDO(过程数据对象)通信机制为用户提供了灵活的控制,简化了报文内容和触发的配置。这些PDO促进节点之间的实时数据交换,优化通信效率。
然而,仅仅使用RTOS并不能保证达到预期的结果。任务优先级和配置必须完全符合系统严格的时序要求。此外,对驱动程序功能、固件和堆栈结构的详细审查也至关重要。需要解决潜在的问题,例如优先级反转(队列中的低优先级消息可能会延迟高优先级消息)。高度优化的驱动程序可以解决优先级反转问题,但这可能会导致传输顺序发生变化。传输序列的变化对于某些高层协议可能会产生问题,需要仔细审查。
/小结/
Conclusion
长沙市望城经济技术开发区航空路6号手机智能终端产业园2号厂房3层(0731-88081133)