您的位置:控制工程论坛网论坛 » 教程与手册 » 嵌入式工控机PC/104在CAN现场总线通信中应用

goodidea

goodidea   |   当前状态:在线

总积分:986  2025年可用积分:0

注册时间: 2006-06-23

最后登录时间: 2018-05-04

空间 发短消息加为好友

嵌入式工控机PC/104在CAN现场总线通信中应用

goodidea  发表于 2006/6/23 17:37:01      2638 查看 0 回复  [上一主题]  [下一主题]

手机阅读

概述

现场总线(FIELD BUS)是80年代末、90年代初在国际上发展起来的广泛用于过程自动化、楼宇自动化和汽车等领域的现场智能设备互连网络。现场总线技术将专用微处理器置入传统的测量控制仪表,采用比较普遍的传输介质?穴如同轴电缆、双绞线等?雪,把多个测量控制仪表连接成网络系统,并按照公开、规范的通信协议,在位于分散现场的测量控制仪表之间及现场仪表和远程监控计算机之间,实现数据传输和信息交换,而形成适应各种实际需要的自动控制系统。它是集智能传感和控制计算机于一体的综合技术,已经在世界范围内倍受关注。在分散目标的监控系统中,特别是在工业控制现场,要完成对现场信息的实时采集、处理和通信,并且提供过程动态监测和信息管理功能,需要解决现场装置的实时控制和现场信号的网络通信问题,利用工控机PC/104,并采取模块化设计是解决开放式系统的上层通信的最佳方案,上位机和通讯控制管理器PC/104都采取模块化设计,设计系统不同,需要改动的程序和硬件配置较小,下位机CAN节点是面向低层的控制的系统,控制方案和策略是随着控制对象的不同变化较大,但利用CAN的通信机制是一样的,根据实际情况加入具有新的功能CAN节点以适用不同的测控系统. 

CAN是控制局域网络(Controller Area Network)的简称,其总线标准已被ISO国际标准组织制定为国际标准。其模式结构分为三层,即只取物理层、数链层、应用层。其信号传输介质为双绞线,可挂接设备最多可达110个,CAN的信号传输采用短帧结构,每一帧的的有效字节数为8个。CAN总线上任意一个节点均可在任意时刻主动向网络上的其它节点发送信息,而不分主从,通信灵活。并且,各个节点可以分成不同的优先级,可以满足不同的实时要求。其突出的可靠性、准确性在多种现场总线中已经倍受青睐。

PC/104工控机作为嵌入式PC机,它完全与PC/AT机兼容,并且具有风险小,抗干扰、抗恶劣环境好,开发周期短等优点。它采用十分紧凑、自栈式、模块化结构,软件采用结构化语言如C、C++和面向对象的编程方法。整个嵌入式PC体系结构可以作为一个单独的插件,它上面具有所有主板功能、RAM和BIOS,无需关心PC-BIOS的修改。PC/104 CPU模块还具备“固态盘”,不必担心嵌入式程序代码的“固化”问题。并且利用与PC/104配套的PC/104-CAN接口板,完成对下位CAN节点的通信,使得系统设计更加简单。2 PC/104通过RS232C串行异步通信协议完成与上位机的通信

在RS232C标准定义的21根信号线中,不但可以部分使用,在某些特定场合中,还允许采用非标准连接方式,简化异步通信程序的设计。由于在本设计中的PC/104和上位机的通信距离较短,所以采用RS232C非标准连接中的零MODEM方式的简单接法:即TxD1连RxD2、TxD2连RxD1、GND1连GND2。

由于对数据传输的实时性要求较高,PC/104对于数据的接收采用中断串行异步通信。由于PC/104作为通信的桥梁,它从上位机接收到的数据应该马上发送到下位机去;下位机上传的数据,它要发送到上位机去。对于PC/104的数据发送,采用在其对这组数据接收时在中断程序中把数据重组后直接进行发送,这样即简化了程序,又确保了实时性。

利用CAN总线PC/104接口板完成对下位CAN节点的数据双向通信

CAN总线PC/104接口板采用航天工业总公司设计的HT—1302,其应用PHILIPS公司82C20CAN控制器和82C200收发器,具有两路CAN总线接口,可以在不同的CAN现场总线的网络中进行信息交换;以内存映像方式占用PC/104的4K存储器地址空间:C800H—EF00H,有40个基地址空间可选。软件设计采用在DOS操作系统下的C语言编程。由于C语言是面向用户的,同时它又像汇编语言一样可以进行I/O口操作,地址操作,并且程序生成的源代码占用的存储空间下,特别适用于PC/104嵌入式系统,在程序调试中也证明了这一点。在程序设计中设置接口板在PC/104中的中断号,可以利用中断方式对下位CAN节点发送上来的数据进行接收,并重组数据,向上位机进行发送。

PC/104作为CAN总线通信控制管理器的结构及软件设计

1结构体系:(如下图)同时利用HT-1302接口板的CAN1和CAN2,可以完成不同的CAN总线的网络通信。

软件设计:

2.1 PC/104的软件结构体系模型:(如下图)

2.2软件模块流程图略可向作者索取。

2.3 软件编制

在DOS操作系统下利用TurboC2.0开发平台编制。基于DOS的BIOS串行通信管理程序作为14号中断处理程序支持两个DTE间的空MODEM连接方式的通信。其功能是:串行口初始化,发送数据字符,接收数据字符和取串行口状态。可以利用TurboC2.0提供的int86? ?雪函数来调用BIOS串行口管理程序。现仅以下位机CAN节点发送数据,通过PC/104发送至上位机为例,介绍一下数据的中断接收、拆分重组和发送。

……

 包含必要的头文件

  canReset(PORT1);

  canExitHW();

(注:在TurbeC2.0开发环境中包含can841s.lib库函数_

程序中数据传送在工业控制领域应具有一定的规范、满足一定的格式。特定格式数据在控制系统中应代表特定的含义,数据到达接收方,接收方应根据数据格式判别传送方的信息,在此不再累述。

结束语

通过利用PC/104通信控制管理器在基于CAN总线的新风机控制系统中的试验调试,已经表明:数据能够实时可靠传输,通信正常。对它稍加改造(如增加出错处理),便可成为可驻留在内存的通信处理程序。以PC104为核心的现场总线通讯管理器可将底层的现场总线与生产管理层连接起来,进行现场总线的管理;生产过程的监控;有关协议的转换;以及通讯故障的处理,进一步加强网络管理的能力。CAN总线具有很强的实时性和很强的防止网络冲突的能力,非常适应用于工业测控领域。而PC104嵌入式工控机具有很强的抗干扰,适应恶劣环境工作的能力。将PC104嵌入式工控机应用于CAN总线通讯中,对进一步提升CAN总线的通讯能力,提高系统的可靠性和稳定性,扩展CAN总线的应用范围具有一定的意义。CAN现场总线正处在发展阶段,总的来讲,工业控制系统将朝着现场网络集成自动化系统结构体系方向发展,由于现场的巨大优势,它取代传统的DCS系统是必然趋势,所以说整个系统应用范围十分广泛。

参考文献

[]吕强等, C语言的DOS系统程序设计,清华出版社,1993

作者简介:马延,上海大学机械自动化学院在读硕士,主要从事现场总线和非集成化智能传感器的研制和开发。电话:021-56331796,Email:myslp@163.net

(200072  上海市延长路149号上海大学249信箱)

马延  王健

1楼 0 0 回复