2、并行接口
并行通信由并行接口完成,它与1/O设备或被控对象进行数据交换,以同步方式传输。
从并行接口的电路结构来看,它有硬连线接口和可编程接口之分。
( 1 )硬连线接口的工作方式及功能用硬连线的不同方式来设定,不能用软件编程的方法加以改变,
(2 )可编程接口的工作方式及功能可以用软件编程的方法加以改变。
并行接口中包括状态信息、控制信息和数据信息 ,这些信息分别存放在状态寄存器、控制寄存器和数据缓冲寄存器中。1)状态寄存器:用来存放外设的信息,CPU通过访问这个寄存器来了解某个外设的状态。
2)控制寄存器: CPU对外设的操作命令都寄存在控制寄存器中。
3)数据缓冲寄存器:缓冲器是用来暂存数据的。这是因为外设与CPU交换数据时,CPU的速度远远高于外设的速度。
SDO 协议服务数据对象(SDO)可用来存取远端节点的对象字典,读取或设定其中的数据。提供对象字典的节点称为SDO server,存取对象字典的节点称为SDO client。SDO 通讯一定由SDO client 开始,并提供初始化相关的参数。在CANopen的术语中,上传是指由 SDO server 中读取数据,而xia载是指设定 SDO server 的数据。由于对象字典中的数据长度可能超过8个字节,无法只用一个CAN数据包传输,SDO也支援长数据包的分割和合并。这样的对象有二种:SDOxia载/上传(SDO download/upload)及SDO区块xia载/上传(SDO Block download/upload)。CANopen协议较新版本支援SDO区块传输,CANopen,可以允许传输大量的数据,且传输的overhead可以较低。负责处理SDO数据传输的COB ID可在对象字典中设置。在对象字典的索引0x1200至0x127F可设定SDO server的COB ID,zui多可设定到127个。而SDO client可以在对象字典的索引0x1280至0x12FF中设定。不过预定义连结定义在开机后(Pre-operational状态)可用来设定设备组态的SDO。接收用的COB ID为0x600 节点ID,而传送用的COB为0x580 节点ID。
设备模型
以下是所有 CANopen 设备都要具备的功能:通讯单元 处理和网络上其他模组通讯所需要的通讯协定。 设备的启动及重置由状态机(state machine)控制。状态机需包括以下的几个状态:Initialization, Pre-operational, Operational 及 Stopped。当接收到网络管理 (NMT) 通讯对象,状态机会转换到对应的状态。 对象字典 (Object Dictionary) 是一个有 16 位元索引 (Index) 的变量阵列。每个变量可以(但非必须)有 8 位元的子索引 (Subindex)。变量可用来调整设备的组态,也可以对应设备量测的资料或设备的输出。 当状态机设定为 operational 之后,设备的应用 (application) 部份就会实现设备预期的机能。此部份可以由对象字典中的变量调整其设定,而资料由通讯层传送或接收。
CANopen-奇河控制技术苏州公司(图)由奇河控制技术(苏州)有限公司提供。行路致远,砥砺前行。奇河控制技术(苏州)有限公司致力成为与您共赢、共生、共同前行的战略伙伴,更矢志成为电子、电工产品制造设备具有竞争力的企业,与您一起飞跃,共同成功!