钱 坤 (1983—) 男,安徽人,工学硕士,(中国农业大学 信息与电气工程学院, 北京 100083) ,主要从事嵌入式系统及总线方向的研究。
基金项目:国家自然科学基金项目(30374030)
摘要:介绍了一种虚拟现场总线的测控系统的设计。设计中,以CAN总线和无线模块相结合的方式,模拟对现场数据的采集和控制。对该测控系统的测试表明,虚拟现场总线能很好的完成现场总线的通信功能。
关键词:虚拟现场总线;现场总线;CAN总线
Abstract:The designing of virtual fieldbus control system is introduced in this paper. It combines CAN bus with wireless module in order to acquire and control the data of field. The testing of the system shows that virtual fieldbus control system can replace the corresponding function of the fieldbus.
Key words:Virtual field bus; Fieldbus; CAN bus
1 引言
现场总线是应用在生产最底层的一种总线型拓扑网络,它作为智能设备的联系纽带,把挂接在总线上作为网络节点的智能设备连接为网络系统,实现基本控制,补偿计算,参数修改,监控等综合自动化功能,且可靠性高,稳定性好,抗干扰能力强,通讯速率快,造价低,维护成本低。随着工业控制领域日新月异的发展,现场总线得到了越来越广泛的应用,在所有的各类型的总线中,Bosch公司的CAN局域网现场总线是一种比较典型的现场总线。由于CAN总线采用多种新技术和独特的设计,具有突出的可靠性、实时性和灵活性。
虚拟现场总线本质上就是完全透明的无限延长现场总线,用虚拟现场总线组网,可以和现场总线一样使用,但没有了节点数量的限制,也没有了距离的限制。本文以CAN总线和无线通信相结合,组成虚拟现场总线测控系统,对于各控制现场,可以通过CAN总线连接组网,使各个节点之间可互相通信,完成基本的控制和监测;同时,各个智能节点的信息又可通过无线的方式进行远程通信,利用远程的控制设备,对各节点进行控制和监测。是现场总线发展的必然趋势,有着广阔的应用前景
2 系统的构成
本文介绍的虚拟现场总线测控系统,由三个部分组成:远程的无线转串口模块,现场的无线转CAN总线模块和CAN总线组成的节点模块。三个部分相辅相成,共同构成整个测控系统。下面具体介绍各个模块。
2.1 远程的无线转串口模块
这部分主要完成的任务是:上位机通过串口和该模块通信,完成数据的发送和接收,然后再通过无线的方式与现场的CAN总线网络通信,也就是作为数据的存储和转换功能。
无线数传模块采用上海桑锐电子科技有限公司生产的SRWF-1型微功率无线数传模块,该模块采用Atmel公司的高性能单片机ATMega8L;单片射频的集成芯片CC1000,无线的载频频率为429-433MHz;内部还有看门狗,除了监控自行运行状况外,还监控射频芯片;提供了标准的RS232和RS485接口,波特率可变(1200bps,2400 bps,4800 bps,9600bps)。在视距情况下,天线高度>3m,可靠传输距离>300m。具体的设计如图1所示。

2.2 现场的无线转CAN总线模块
该模块用来实现无线通信协议和CAN总线协议的转换,通过和上面模块的通信,将无线接收的数据通过微处理器,转换成CAN总线可接收的数据。
这部分采用了SRWF-1加上串口转CAN总线的组合方式,间接的将无线协议转换成CAN总线协议。串口转CAN总线的部分采用Atmel公司生产的MCU89S52, AT89S52是一款低功耗、高性能、CMOS结构的8位微控制器,使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容,具有8K 在系统可编程Flash 存储器, 片上Flash允许程序存储器在系统可编程,亦适于常规编程器;采用CAN控制器SJA1000和CAN驱动器82C250,完成对CAN总线数据的收发,SJA1000是Philips公司生产的一款独立的CAN控制器,主要用于移动目标和一般工业环境中的区域网络控制,支持具有很多新特性的CAN2.0B协议。而82C250是与SJA1000相匹配的CAN驱动器,提供对总线的差动发送和接收功能,采用斜率控制,降低射频干扰,总线至少可连接110个节点,设计如图2所示。

2.3 CAN总线通信的节点模块
这个模块的主要作用是对现场各个节点进行控制和监测。各个节点之间可通过CAN总线进行数据交换,同时节点也可通过CAN总线与上面的模块进行数据交换。这里以DI,DO,AI,AO四个节点作为底层模块,可完成数字量的输入(DI),数字量的输出(DO),模拟量的输入(AI),模拟量的输出(AO)[1][2][3]。
节点由微处理器,CAN通信和具体应用三个部分组成。其中微处理器和上面的串口转CAN总线部分一样,采用AT89S52,CAN通信部分也采用SJA1000加82C250,具体应用则各不相同,设计如图3所示。

3 系统测试
为了验证以上方案的性能,设计了两个系统测试,以确保整个测控系统能很好的运行。第一个是基于有线的通信测试;第二个是基于无线的通信测试。
为了更好的对传输的CAN总线数据进行理解,先介绍一下CAN数据帧:CAN控制器SJA1000有BASICCAN和PELICCAN两种模式,这里用的是BASICCAN模式。CAN数据结构见表1。其中ID10-ID0是标识符,RTR是判断数据帧和远程帧的标志,DLC是要发送数据的长度。这里对于DI节点,发送的数据帧为:4101xx,其中4101对应标识符的两个字节,是根据已经规定好的协议方式进行组装;xx表示发送的数据,可通过开关进行调节具体的数值。同理,AI为4924xxxxxxxx。而DO接收的必须为DI类型的帧,也就是4101xx。如果上位机接收的是DI帧,则显示4101xx,如果接收的是AI帧,则显示4924xxxxxxxx,如果上位机想控制DO,则发送4101xx。
表1 CAN数据结构:
名称 |
位 |
标识符字节1 |
ID.10-ID3 |
标识符字节2 |
ID.2-ID0,RTR,DLC.3-DLC.0 |
收发数据1 |
收发字节1 |
收发数据2 |
收发字节2 |
收发数据3 |
收发字节3 |
收发数据4 |
收发字节4 |
收发数据5 |
收发字节5 |
收发数据6 |
收发字节6 |
收发数据7 |
收发字节7 |
收发数据8 |
收发字节8 | 3.1 基于有线的通信测试[4][5]
整个系统由以下部分组成:CAN总线通信的节点模块,一个CAN总线转串口模块和一台PC机,其中CAN总线转串口模块是由现场的无线转CAN总线模块改造完成,整个系统的连接如图4所示。

对系统的测试步骤如下:
(1)DI的开关打开及闭合,可控制DO发光二极管的亮与灭,证明节点之间的通信正常。
(2)DI的开关打开及闭合,通过PC的超级终端,可显示数据,该数据为4101xx,每拨动一次开关,显示一次;AI输入端接上湿度传感器,也就是模拟量,当湿度变化时,也可在超级终端上显示,显示数据为4924xxxxxxxx。证明CAN总线的数据可通过转换器发送到PC上。
(3)用PC机上的ADAM软件(可发送串口数据的软件),输入控制数据4101xx,可控制DO发光二极管的亮与灭,证明PC上的控制信息可通过转换器发送到节点上。
以上测试结果表明,CAN节点之间可通过CAN总线通信,节点与上位机可通过有线通信。
3.2 基于无线的通信测试
整个系统由以下部分组成:上面介绍的三个模块,和一台PC机。整个系统的连接如图5所示。

对系统的测试步骤如下:
(1)DI的开关打开及闭合,可控制DO发光二极管的亮与灭,证明节点之间的通信正常。
(2)DI的开关打开及闭合,通过PC的超级终端,可显示数据,该数据为4101xx,每拨动一次开关,显示一次;AI输入端接上湿度传感器,也就是模拟量,当湿度变化时,也可在超级终端上显示,显示数据为4924xxxxxxxx。证明CAN总线的数据可通过转换器发送到PC上。
(3)用PC机上的ADAM软件,输入控制数据4101xx,可控制DO发光二极管的亮与灭,证明PC上的控制信息可通过转换器发送到节点上。
以上测试结果表明,无线测试结果与有线相同,无线整体测试方案可行。
4 结束语
目前现场总线一般都以有线的方式进行通信,加入无线的方式可作为对现场总线很好的补充。有线的方式速度快,不会受气候等自然条件的影响;无线不需连线,使用方便灵活。本文采用有线和无线相结合的方式,组成虚拟现场总线测控系统,取得了满意的控制效果。
其它作者:
杜尚丰(1961—),男,北京人,教授,博士生导师。
参考文献:
[1]饶运涛等,现场总线CAN原理与应用技术[M],北京航空航天大学出版社,2004.
[2]史久根等,CAN现场总线系统设计技术[M],国防工业出版社,2004.
[3]杜尚丰,曹晓钟,徐津等,CAN总线测控技术及其应用[M],北京:电子工业出版社,2007.
[4]张迎新,单片微型计算机原理[M],应用及接口技术,2004.
[5]龚崇权,基于现场总线技术的虚拟仪器开发[J],传感器与仪器仪表,2006,(22):177-178.
|