Current position:Home > 產品中心1 > CANopen SDK

產品中心1

CANopen從站協議棧

CANopen从站协议栈


      emotas的CANopen Slave Stack是一个根据CANopen CiA301 V4.2 规范提供通信服务的软件库。

      该协议栈采用ANSI-C开发,符合MISRA。使用我们的CANopen软件协议栈可以快速轻松地开发或扩展符合CANopen的设备。

      除了标准的服务,还支持扩展额外的通讯行规,例如冗余通讯(CiA 302)、安全相关的通讯(CiA 304)以及设备行规实,如通用I/O模块(CiA 401)。灵活的用户接口提供功能用于评估接收的数据,并且可在网络中使用CANopen服务。

      为了确保CANopen从站协议栈能够兼容多个CAN控制器和CPU类型,使用了专门定义的驱动接口。使用该驱动接口,CANopen协议栈也可以简单地适用到新的CAN控制器或CPU类型中。还能够通过很少的工作就更换硬件平台。CANopen从站协议栈可以用于各种各样的实时操作系统,例如ThreadX、FreeRTOS、Keil RTX或TI-RTOS,并且也可用于Linux (SocketCAN, can4linux) 或QNX以及Windows平台下的实时扩展。

      除了功能API,也有Mailbox API方便用于多任务的应用结构。应用模块和CANopen协议栈之间的消息通过Mailbox发送,而不是通过函数调用。这确保了不阻塞通讯。这样确保了一个应用可能包含多个并行使用CANopen协议栈的任务。


      为了节省资源,CANopen从站协议栈具有广泛的可配置性和可扩展性。这些配置项的设置都由图形配置工具CANopen DeviceDesigner实现,该工具也允许使用内置数据库创建对象目录和EDS文件。 因此,功能变更可以快速而简单地实现。使用独特的CANopen DeviceDesigner节省宝贵的开发时间。

      提供多个可运行示例,以便尽可能容易地使用CANopen协议栈。此外,包含在供货范围内的手册中,一个描述了原理和使用案例的用户手册,一个详细描述了每个API函数的参考手册。


亮点

      - CANopen源代码协议栈兼容ANSI-C

      - 符合MISRA-C

      - 支持CiA 301的所有CANopen服务
      - 包含CiA305的层设置服务(LSS)
      - 可用于更多标准的扩展
      - 可用于更多CAN控制器和CPU类型
      - 易用的用户接口
      - 广泛的扩展性和可配置项

支持的行规

CANopen定义了大量的设备或应用规范,它们详细说明了特定设备的接口和行为。我们提供扩展来支持这些规范的功能,并且以一种预处理的方式为应用提供数据和事件。当前可提供针对如下行规的扩展:

      - CiA 401 – 针对IO模块的设备行规
      - CiA 402 – 针对驱动的设备行规
      - CiA 404 – 针对测量设备和闭环控制器的设备行规
      - CiA 406 – 针对编码器的设备行规
      - CiA 413 – 针对卡车网关的接口行规
      - CiA 418 – 针对电池的设备行规
      - CiA 419 – 针对充电器的设备行规
      - CiA 437 – 针对基于光伏组件电网的应用行规
      - CiA 443 – 针对离岸平台(SIIS Level-2)的设备行规
      - CiA 447 – 针对客车(出租车、警车等)附加装置的应用行规
      - CiA 454 – 针对能源管理系统例如LEVs (EnergyBus)的应用行规

此外,CANopen从站协议栈可用于开发任意CANopen应用,甚至是前面提到的行规也适用。


发货/授权内容

      - CANopen协议栈源代码(兼容Ansi-C)

      - 可运行的示例应用
      - 电子格式的用户手册和参考手册
      - 可提供地点许可证(适用于1个开发地点内的所有产品)
      - 可选择的维护协议
      - 可选择的集成支持
      - 包含一个CANopen DeviceDesigner授权