工控网首页
>

应用设计

>

基于人机界面的CANOpen 模块接入模式分析

基于人机界面的CANOpen 模块接入模式分析

2010/11/17 16:40:00
1.系统概述
  在很多应用中,我们需要获取现场总线模块的数据,并参与控制,比如:温度信号、湿度信号、高度信号等等。我们现在可以采用组态软件利用现场总线传输,来采集现场的信号。为我们获取应用现场的信号提供了方便快捷的解决方案。

2.CANOpen设备分析
2.1.CANOpen设备
模型
  CANOpen 设备模型外部连接CANBus 系统合过程I/O,采集现场数据,通过CAN 总线系统,向高层传送。设备模型(图3)内部可以被分为3 部分:
  ● 通信接口(Communication)部分:
   提供在总线上收发通信对象的服务。不同CANOpen 设备间的通信都是
   通过交换通信对象完成的。
  ● 对象字典(Object Directory)部分:
   对象字典描述了设备的功能性。它以特定的方式描述了通信对象(应用数据和配置数据),从而实现了设备的功能性描述。这些对象通过一个16 位的索引和一个附加的8 位子索引来访问。对象字典位于CAN 总线
设备通信部分和应用部分之间,向应用程序提供接口,应用程序对对象字典进行操作就可以实现CANOpen 通信。
  ● 应用(Application)部分:
   应用部分由用户编写,包括功能部分和通信部分。通信部分通过对对象字典进行操作实现CANopen 通信,而功能部分由用户根据应用要求实现。比如CAN 控制器,应用程序部分则为过程控制或数据处理逻辑,
需要用户编写。

图3[1] CANOpen 设备模型

2.2.CANOpen设备应用分析
CANOpen 设备的应用可以有下面2 个层面:
 ●操作应用层面:现场操作人员、现场设备检查人员等关注;
 ●系统设置层面:系统集成技术人员、设备维护和改造人员等关注。
  从操作应用层面看,技术人员主要是通过已经形成的生产线,依靠CANOpen系统完成既定的生产工作,也就是通过采集的信号的内容展示和分析结果,关注的是通过设备完成的生产操作。也就是,操作人员关注通过正确的操作方法,顺利完成生产任务。这个层面的用户是人机界面系统的最终使用者。工业人机界面
系统的设计必须考虑这个层面应用的需求。
  从系统设置层面看,技术人员要对现场设备进行装配、设置,甚至编程。技术人员可以根据设备的说明文档,依据现场工程的需求,进行装配和设置。一般来说,每种设备都有测试或者配置软件,尤其逻辑控制设备,都配置编程软件,比如PLC,CANOpen 设备也是如此!首先,这些软件都已经非常成熟,然后,编程通讯往往有很多不开放的技术,所以,我们必须借助于设备厂商提供的软件。这个层面的技术人员工作,往往是针对确定的I/O 部分,依照明确的工艺需求,进行设备组态、系统集成等工作,关注系统集成部分,也就是根据操作应用层面的具体需求进行系统集成。
  对于人机界面的组态,我们主要是考虑操作应用层面的需求,也就是关注I/O状态、控制有关的参数设置、运行结果的记录等。这些为基于HMI 的现场总线控制平台的协议通讯模式的实现提供了依据。

  HMI 组态关注的对象

  NMT(Network ManagemenT)网络管理服务:提供网络管理(如初始化、启动和停止节点,侦测失效节点)服务。这种服务是采用主从通讯模式(所以只有一个NMT 主节点)来实现的。上位机HMI 系统通过NMT 对象,管理网络,启动或停止CANOpen 节点。
  过程数据对象用于在CANOpen 节点间传送过程数据,如I/O 模块的I/O 状态的读取和设定、模拟量采集和模拟量输出等等。
  Node 节点-->HMI 平台(TPDO:发送过程数据对象)
  Node 节点<--HMI 平台(RPDO:接收过程数据对象)

系统配置关注对象
  服务数据对象(SDO:Server Data Object)服务用于读写节点的对象字典(Object Dictionary)用来在设备之间传输大的低优先级数据,典型的是用来配置CANopen 网络上的设备。
  部分管理报文:
  预定义报文或者特殊功能对象,比如修改节点ID,重新设置通讯波特率等。

2.3.CANOpen标识符
  为了减小简单网络的组态工作量,CANopen 定义了强制性的缺省标识符(CAN-ID)分配表。这些标志符在预操作状态下可用,通过动态分配还可修改他们。CANopen 设备必须向它所支持的通讯对象的提供相应的标识符。
  缺省ID 分配表是基于11 位CAN-ID,包含一个4 位的功能码部分和一个7位的节点ID(Node-ID)部分。如图4 所示。


图4 PDO 数据格式[1]

  Node-ID:对应CANOpen 设备,由系统集成商定义,例如通过设备上的拨码开关设置。Node-ID 范围是1~127(0 不允许被使用)。
  Function Code:确定CAN 帧的类型,比如:PDO 和SDO:对应CANOpen设备的寄存器。在CANOpen 设备中,常用的PDO 为0x180+Node-ID。其中0x180就是指Functon Code。SDO 是用来在设备之间传输大的低优先级数据的服务数据对象,典型的功能是配置CANopen 网络上的设备。
  PDO 用来传输8 字节或更少数据,没有其它协议预设定(意味着数据内容已预先定义)。比如:某倾角传感器上传的为7 个字符,因此它有8 个PDO 数据需要传到现场总线上。标识符的格式为TPDO=0X180+NODE_ID,因此发送的PDO 可以表示为表3.1 的描述。

I/O 节点- 监控终端
COB-ID 0 字节 1 字节 2 字节 3 字节 4 字节 5 字节 6 字节
416(0x1A0)

 CANOpen 设备上传的I/O 数据

  23 0  FD FF 1D 88 32

COB-ID: 0x1A0=0X180+0X20

表3.1 CANOpen 设备的PDO

 

3.组态软件通讯分析
3.1.PC-based的CAN总线接入
  组态软件建立在数据库系统之上,实时数据库通过驱动接口采集总线系统中PLC、智能仪表和其他设备的信息,详细架构请见图1。


图1 现场总线数据采集架构图

  组态软件与硬件设备组成的CAN 总线系统,详细组成请见图2。

图2 CAN 总线系统

3.2.HMI和CANOpen系统中位置
  简单系统:HMI + CANOpen 从站模块
  复杂系统:HMI 系统+CANOpen 主站模块+CANOpen 从站模块+诊断和配置节点
  HMI 主要处于CANOpen 系统监视和存储、分析等

4.组态软件CAN驱动分析
4.1.组态软件CAN驱动特殊性分析
  用于人机交互部分:
  应用组态层保证数据发送成功。
  驱动层保证成功。
  用于监视部分:
  采集的实时性保障;
  采集的完整性保<

投诉建议

提交

查看更多评论
其他资讯

查看更多

“2014海外赤子北京行”参观HMITECH纵横科技

纵横科技坝上草原游记

纵横科技产品应用于第十届自动化年会签到系统

纵横科技 TPC105TD-CAN现场总线人机界面

纵横科技 TPC150TC-CAN(A8) 嵌入式人机界面