功能介绍及软件结构
CANopen实时软件可用于开发CANopen从站的全部必要功能,并可开发简单的CANopen主站。CANopen实时软件根据 DS301-Version4.0.2规范开发。
在CANopenRT软件包中,所谓的CANopen任务将用来提供相应的功能及服务。该任务将只在需要提供服务时才启动,这样,软件执行将不会浪费不必要的时间。
CANopen任务将与应用程序任务定位在同一段内存区域中。
程序接口及对象字典
CANopen实时接口(CRT)是应用程序的任务与CANopen协议栈之间的编程接口。应用程序传递给CANopen协议栈的命令以及CANopen协议栈返回给应用程序的命令执行结果、事件以及紧急状态报文都将通过CRT传递。CRT的核心是基于邮箱实现的。应用程序可以包含多个任务,每个任务可以独立适用CRT接口。
进程数据对象和服务数据对象
根据不同的配置,PDO支持非同步传输模式(带有事件时钟选项),同步传输模式(循环或非循环)以及响应模式(RTR-Only).PDO映射可以根据不同的响应时间要求或资源要求,采用静态或动态方式实现。在缺省方式下PDO采用字节传送,也可以采用位进行传送。传送PDO可以支持虚拟映射及时间约束。对象可以同时被同时写进多个PDO。SDO传输模式可支持加速,非加速(分段)和按块传输。PDO和SDO的数目只受资源的限制。
网络管理
CANopen软件支持DS301规范中定义的通过引导程序支持所有网络服务的功能。在网络管理方面扩展了一些功能,用于两种节点监视机制:由主机完成的节点保护以及采用生产者保护的heartbeat机制。
ID分配
ID分配是按照预定义输入输出连接集完成的,但也可以通过修改相应的对象字典入口来完成。
可选辅助功能
在CANopen标准软件之上,还可选取以下辅助软件:
*SDO Requesting Device(SRD) according to DS302
*LSS-Functions as Master/Slave according to DSP305
实现效果
CANopenRT软件包以C源代码的形式提供,并经过最新的CiA CANopen兼容性测试软件的测试。
大量的文档和示例程序可以帮助您迅速学会使用CANopenRT软件。所有例程都可以立即在参考平台上运行(CPU制造商提供的评估板或IXXAT接口板)。针对不同的操作系统会提供不同的CANopenRT软件。
可取得的版本
根据不同的功能,CANopenRT软件分为两个不同版本(Master/Slave, Slave).Master/Slave包含产生CANopen从站或简单主站设备所需的全部代码。各个不同的软件包功能描述如下表。
Function
|
Slave
|
Master
|
Max. number server SDOs
|
128
|
128
|
Max. number client SDOs
|
-
|
128
|
Max. number PDOs (Tx/Rx)
|
512
|
512
|
Dynamic PDO Mapping
|
yes
|
yes
|
SYNC object
|
C
|
P/C
|
EMERGENCY object
|
P
|
P/C
|
TIME STAMP object
|
C
|
P/C
|
NMT-Functions
|
S
|
M/S
|
Node Guarding/Heartbeat
|
Yes
|
Yes
|
ID configuration according to pre-defined 连接ion set
|
Yes
|
Yes
|
ID configuration via SDOs
|
Yes
|
Yes
|
C=Consumer(接收方);P=Producer(传输方);S=Slave(从站);M=Master(主站)
支持的操作系统
目前,CANopenRT软件可以提供支持下列操作系统的版本:
EUROS和VxWorks
Order numbers (includes both single and multi-channel versions)
1.02.0212.xxxxx |
CANopenRT Slave Software |
1.02.0214.xxxxx |
CANopenRT Master/Slave Software |