CANopen协议软件
开发CANopen从设备或简单的CANopen主设备的软件包
亮点
符合CANopen® CiA® 301规范的完整的功能
支持基于CiA 303-3的状态显示
支持基于CiA 305的层设置服务
快速轻松地开发CANopen设备(从站或主站)
可配置的模块化软件架构,可裁剪
高效率,低资源需求
结构清晰,简单的应用编程接口
容易移植到不同的微控制器
多通道支持
功能概述
CANopen协议软件包含根据CANopen CiA 301规范实现简单的CANopen主站或从站设备的所有功能。
可扩展性和硬件适应性: 为了确保高度的扩展性和适应性,该软件包是通过集中文件进行配置。 通过一个配置文件,实现协议栈提供的CANopen功能到特定应用的最佳匹配,从而更有效地利用可用的资源。最大程度的节约资源。 CANopen软件的核心功能实现独立于CAN控制器。 CAN驱动程序本身完全封装在一个单独的软件模块中。 适用于使用的微控制器类型的配置(如中断,定时器)集中在一个单独的头文件中。
多通道支持: 根据需求,IXXAT的CANopen协议软件提供了多通道版本。 该版本允许用户在一个现场设备实现多个独立的CANopen设备。 可以对具有独立的对象字典的每个通道单独配置其NMT主站或从站功能, 也支持对每个通道上不同的CAN控制器的并行操作。
对象字典和编程接口: 对象字典是应用程序和通信服务之间的接口。 每个应用数据变量可以直接分配一个对象字典条目入口。 PDO和SDO可以直接访问这些应用变量。 因此,无需更改已有的应用程序以集成CANopen协议栈。 用户自定义的回调函数可以连接到每个应用对象,当访问这些对象时,通过事件发信号通知应用程序。 这种机制允许对总线上应用数据导致的变化作出直接的、应用程序特定的响应。 此外,也支持保存和恢复配置的数据。
过程数据对象(PDO)和服务数据对象(SDO): CANopen协议软件支持异步(有或无事件定时器),同步(循环和非循环)和请求(RTR)PDO传输类型。 根据可用的资源和所需的响应时间,可以采用动态或静态PDO映射。 此外,该协议软件支持多路PDO传输包括扫描仪和调度列表。 也支持虚设映射以及变量抑制时间。 对象可以同时映射到多个PDO。 对SDO,支持加速,非加速(分段)和块传输模式。 SDO响应可以被应用程序级的读写访问延迟。在修改目标变量前,应用程序可以检查SDO写入数据的一致性。 必要时,可以中止SDO传输。
网络管理: CANopen的软件支持的CiA 301定义启动过程及所有的网络服务,包括有无活动的节点监控(主站监控),及生产者(通常是从站设备)监控的心跳机制。
标识符分配: 默认情况下,标识符将根据预定义的I / O连接集分配,但也可以通过修改相关的对象字典入口分配。
主站功能: 小型的CANopen系统通常只需要一个简单的主站设备而不是一个完整的CANopen管理器来启动系统。 因此, CANopen软件包实现了一个简单的带有独立对象字典CANopen主站。 在此基础上实现的CANopen设备,可以在配置工具的帮助下,配置对象字典,使其工作在主站方式或从站方式。该软件提供了所有必需的服务,使用户可以实现一个优化的网络管理控制功能。
软件包“CANopen管理器软件”是实现完整的或更复杂的CANopen管理设备的基础,也是开发可编程控制设备(PLC)的基础。
可选功能: 在CANopen标准软件上,可根据需求补充以下辅助功能:
- 符合CiA 302临时主机,启动功能设备或NMT主机设备。
- 符合CiA 302 的SDO管理器(SDM),SDO请求设备(SRD)
实施: CANopen协议软件提供硬件无关的C源代码,并通过CiA最新的CANopen一致性测试软件进行测试。 软件附带的文档和示例程序能够帮助您快速学会使用CANopen软件。 例程提供的项目文件,可以直接集成到编译器相应的开发环境。 所有的例程可以直接在参考平台(CPU制造商提供的评估板或IXXAT接口板)上运行。 将软件移植到目标硬件通常可以在几天内完成。 例程可以帮助用户实现应用。
CANopen软件的可用版本
CANopen协议软件有两种不同的版本,实现不同的功能:Slave和Master/Slave协议。 Master/Slave软件包中支持完整的功能,用于开发从站设备和简单的主站设备。每个包的功能范围如下表中所述:
C=Consumer(接收方); P=Producer(传输方); S=Slave(从站); M=Master(主站)
支持的处理器和CAN控制器
在CANopen协议软件是独立于硬件的,可以应用于各种微控制器和CAN控制器。 对于以下制造商处理器,IXXAT提供了参考实现,包括可以直接在相应的开发平台上运行的基于开发环境的工程文件:
Atmel
Freescale
Fujitsu
Infineon
Microchip
NXP
NEC
Renesas
STMicroelectronics
Texas Instruments
x86 Architecture