燃运输煤皮带监控系统中选用1位起始位,8位数据位,1位结束位,0位奇偶校验位,波特率为9600bps。如组态王要获取ADAM-5000地址为01的5017(第1槽)的数据,在串口调试工具中发送#01S1(cr),自制智能仪表首先对串口调试工具发送的命令进行判断,如果接收的命令符合ADAM5000/485指令集(如为#01S1(cr)),则按照指令集的响应格式返回(如:>+1.4567,+1.4852,+1.6661,+1.6321,+1.6459,+2.989,+1.7768,+1.1623(cr) )[3][4]。
3.4 组态王的通信配置
组态王6.51是在上位机上建立工业控制对象人机接口的一种智能软件包,它以Windows NT4.0(sp6)/Windows 2000/Windows XP简体中文版操作系统作为其操作平台,充分利用了Windows图形功能完备,界面一致性好,易学易用的特点[5]。组态王把每一台与之通讯的设备看作是外部设备,目前能连接PLC、智能仪表、智能模块、板卡、变频器等几百种外部设备,为实现和外部设备的
通讯,组态王内置了大量设备的驱动作为组态王与外部设备的通讯接口。在运行期间,组态王就可通过驱动接口和外部设备交换数据,包括采集数据和发送数据指令。
本系统插接多串口卡使用了COM3和COM4口,其中COM3口挂接1#-7#仪表,COM4口挂接8#-15#仪表,共采集、传输、显示105个I/O参数。在组态王的工程浏览器中点击设备\COM3, 在右面窗口中双击新建,出现设备配置向导,设置智能模块\亚当5000系列\Adam5017\串行,一直点击下一步,逻辑设备命名为一号仪表AD模块5017,选择COM3口,配置设备地址为0011(组态王的设备地址设置格式为四位的整数,前三位为ADAM-5000的网络地址,第四位为I/O模块所在的槽号(范围为0-7),如:地址设置为0011,其中001是ADAM-5000的网络地址,1是第2个槽号),设置好通信参数,即完成了设备的通信配置,同理可完成其它14个设备的配置。COM3、COM4的通讯参数设置为9600/8/1/无校验。此外还要对各I/O变量进行各参数的设置,如图2所示。

图2 组态王I/O变量定义
3.5 通信软件设计
为了保证数据的可靠传输,仪表的通信部分采用了研华公司多通道A/D亚当模块ADAM-5017的协议,避免了开发上位机与仪表之间的驱动程序,大大缩短了系统开发的时间。一旦有字符发送或者接收MSP430单片机就产生中断,用中断方式完成通信。MSP430单片机读写程序流程如图3所示。

图3 通讯软件流程图
4 结束语
本文采用ADAM-5000模块协议,实现了组态王6.51与多MSP430单片机的串行通讯。特别在采集、显示参数较多的情况下,采用此方法数据传输可靠。目前,设计的九江石化燃运输煤皮带监控系统已投入使用,运行状况良好。
本文作者创新点:仪表的通信程序遵循研华公司多通道A/D亚当模块ADAM-5017的协议编写,避免了开发上位机与仪表之间的驱动程序,大大缩短了系统开发的时间。
参考文献:
[1] 蔚俊兰,丁振荣.组态王6.5与单片机的通信方法[J].工业控制计算机,2004,17(10),58-59.
[2] 张晞,王德银,张晨.MSP430系列单片机使用C语言程序设计[M].北京,人民邮电出版社,2005.
[3] ADAM-5000 Series RS-485 Based Data Acquisition and Control System User’s Manual.
[4] 吕鹏刚,何承波,刘开培等.基于亚当模块的火电厂自动加药系统[J].微计算机信息2001,17(11):19-20.
[5] 北京亚控科技发展有限公司. 组态王6.51使用手册.2005.