范鹏,张相田,王云龙
(南京理工大学 机械工程学院,江苏 南京 210094)
基于MCGS的升降机监控系统的研究
范鹏,张相田,王云龙
(南京理工大学 机械工程学院,江苏 南京 210094)
0引言
近20年,我国城市建设发展突飞猛进,带动了升降机产业的发展。升降机作为起重机的一种,主要用于高空作业,安全性能尤为重要。一套有效全面的安全措施则是必不可少的,内容涉及很多,比如电动机过载保护,断相错相保护,断绳保护,限速器保护,限位开关和极限开关控制、门联锁保护,超速保护等都是很重要的环节。因此需要一套完整的软硬件系统对温度、倾角、开关量等数据进行采集。
工业监控系统一般需要上位机监控系统的直观显示,传统PC机监控在施工场地不合时宜。MCGS软件灵活方便,可应用于多种监控系统,采用TPC7062KD触摸屏,配合MCGS软件通过RS485/232和下位机通讯。有了图形界面后,操作人员更易于把握现场环境的数据。
1系统硬件组成
如图1所示,因监测点分布在不同地方,数据传输有一定的距离,此处采用总线方式传递数据,各模块单独作为485设备,挂接在总线上,主控模块和各终端模块通过485总线进行数据交互。
图1 系统硬件框架图
本系统主控模块用的MCU是泓格的I-7188E模块,适用于高可靠性、PC兼容;紧凑而价格合理的嵌入式系统,在数据采集和控制领域经常使用。
I-7188系列控制器内核为AMD的80188内核,主频为40 MHz。含有256 kB/512 kB的RAM以及256 kB的Flash。提供4个串口。如图2,COM2为RS-485串口,直接采用COM2的485串口向总线传输数据。考虑到模块串口功能全且使用方便,程序下载及调试则通过COM4下载到ROM中运行。
图2 I-7188E工作原理图
终端模块包括触摸屏TPC7062KD、温度采集模块、角度采集模块、开关量检测集成板模块。如图3所示,各终端模块采集到数据经过处理后经RS232转485电路将数据传输到485总线上。
图3终端模块工作示意图
TPC7062KD,是一套以嵌入式低功耗CPU为核心(ARM9,主频400MHz)的高性能嵌入式一体化触摸屏。7寸lcd屏,分辨率为800×480,触摸屏有RS232串口,符合使用要求。操作系统为WindowsCE.NET.搭载MCGS软件。在本系统中作为上位机,用来监控现场数据。
温度采集模块所用传感器为DS18B20,其单总线的特点可以提高系统的抗干扰性,适用于在各种环境下进行温湿度测量。如图4所示,分别将传感器的VDD、DQ、GND接至5V电压,单片机的IO口、公共地。运行时,MCU通过GPIO从DS18B20的EEPROM中读取温度值。
图4 DS18B20接线图
本系统中,一共采用了6个温度传感器模块,分别采集电机1、2、3和减速器1、2、3的温度。
角度传感器用的是SSA0070H2-V-B模块,其量程为±70°,标准0.5~4.5 V电压输出,其工业级产品可工作温度为-40℃~85℃。模块中控制芯片采集到输出电压后,通过A/D芯片转换成角度值通过串口输送至总线。
开关量检测集成板,用来检测电压值、相序保护开关、热继电器保护开关、限速保护开关、过载保护开关、上下限位开关、启动按钮开关开闭和安全销的有无及制动工作距离是否超限。
2下位机模块数据处理
主控I-7188E模块通过485总线和其他设备进行通信,各子模块定时将倾角值,温度值,各开关状态的值发送给主控模块。收到信息后,主控模块向执行设备发出控制指令,同时将数据处理后发给TPC7062KD。数据处理如下:
发送倾角和温度采用的字符串格式为:识别符(1位)+“<”(1位)+数据值(6位),比如主控模块从电机1模块接受到的温度为56.4℃,电机1的识别符为a,则发送的字符串为a<+56.40。
发送开关量采用的字符串格式为:识别符(1位)+数据值1(1位)+数据值2(1位)+数据值3(1位),识别符为#。
系统开关量主要有三组,第一组:相序保护开关、热继电器保护开关、限速保护开关、过载保护开关、上下限位开关、启动按钮开关;第二组: 安全销有无;第三组:前次工作制动距离是否超限。
其中,第一组六个开关量前者断开,就会使顺序靠后的开关失效的,所以数据值1的值指的顺序靠前的先断开的开关,比如,当相序保护开关闭合、热继电器保护开关断开时,数据值1的值为2。第二组数据中,如有安全销时数据值2为1,否则为0。第三组数据中,前一组工作距离为超限时,数据值3为0,否则为1。
如相序保护开关未断开而热继电器保护开关断开,且有安全销,前次工作制动距离超限,则发送的字符串为#211。
3MCGS的软件功能实现
在本系统中,MCGS模块驱动中,没有支持本MCU模块的通讯协议,这里采用了自定义协议的方法实现了功能。485总线上接了多种模块,它们与MCU模块通过总线方式进行半双工通信。
根据运行策略的不同作用和功能,MCGS嵌入版把运行策略启动策略、退出策略、循环策略、用户策略、报警策略、事情策略及热键策略七种。每种策略都由一系列功能模块组成。而运行策略窗口中系统固有的只有启动策略、退出策略、循环策略三块。
启动策略在系统开始运行时自动被调用一次。对应的,退出策略在退出系统时自动被调用一次。循环策略在运行时按照设定的时间循环运行。
首先进入系统时,先打开串口,设置串口相关参数:
1、!SetSerialBaud(1,9600)打开串口1,设置波特率为9600
2、!SetSerialDataBit(1,8)设置串口1的数据位为8位
3、!SetSerialStopBit(1,0)设置串口1的设置位为0位
4、!SetSerialParityBit(1,0) 设置串口1的检验位为无校验。
项目中要求在启动画面停留3s再进入正常工作界面,这里计时采用了定时器的方式实现。
1、!TimerRun(1) 启动定时器开始工作
2、!TimerReset(1,1)设置定时器的初始值为1
3、!TimerWaitFor(1,4);定时器堵塞在这里,直到定时器达到4s时才往下运行
4、!SetWindow(升降机安全状态,1) 打开“升降机安全状态”窗口
5、!TimerStop(1)关闭定时器1在启动策略里通过上述几行打开定时器1,定时3 s后打开“升降机安全状态窗口”。如图5所示。
图5 升降机安全状态窗口
进入系统后,MCGS软件判断串口缓冲区中有无数据,如无数据则退出。
MCGS函数中!GetSerialReadBufferSize(参数1)可检查串口号为参数1的串口缓冲区中有几个字符,因此在循环策略:“数据循环监测”程序开始处加上:
IF !GetSerialReadBufferSize(1)<=0 THEN
EXIT
ENDIF
可以判断缓冲区中有无数据,如没有,则无需执行下面的字符串解析的程序。等待下一次循环时间到,再进行判断,这样可大大降低了CPU资源的占用和功耗。
当有数据发送到串口上时,系统解析字符串:
首先ReceiveStri=!ReadSerialStr (1)将串口1中读得的字符串放入数据库字符型变量ReceiveStri中。
下面是解析字符串:
IF !StrComp(!Mid(ReceiveStri,1,1),"a")=0 THEN
电机1温度 = !Mid(ReceiveStri,3,6)
ENDIF
判断字符串首字母是否为a,如是,则将字符串中的3到8位取出赋给数据库中字符串变量“电机1温度”。同理如图6所示,当为b、c、d、e、f、p、q、v,#时有各自对应的解析。
图6 字符串解析流程图
每个值都有其上下限,当其超过这个限值的时候,相应的指示灯变红报警,如需要判断电机1温度有没有超标,通过在循环策略里面加上代码判断“电机1温度”(数据库字符串变量之一)在上下限范围即可。如:
IF !lVal(电机1温度)>=电机1下限AND !lVal(电机1温度)<=电机1上限THEN
电机1指示=1
ELSE
电机1指示=0
升降机工作场合条件恶劣,会发生供电不稳定,断电等现象。断电时,很多重要的数据如倾角上下限,温度上下限,设置页面登陆密码等会恢复到系统初始化状态,这就需要做好数据保存工作。mcgs函数库中提供了!SaveSingleDataInit()和!FlushDataInitValueToDisk()。
!SaveSingleDataInit()把数据对象的当前值设置为初始值,!FlushDataInitValueToDisk()把!SaveSingleDataInit()设定的初始值写入磁盘去,可以防止断电而丢失数据。
在升降机项目中,建立了保存数据的循环策略:“数据保存”,用来实时保存一些重要的数据,循环时间设置为2s一次。一般情况即能保证要求。如:
!SaveSingleDataInit(登录密码)
!FlushDataInitValueToDisk()
可实现定时保存数据库变量“登录密码”的值。
4结语
升降机监控系统是个完整的项目工程,涉及内容很多,本文主要论述了升降机数据采集系统的硬件结构和MCGS触摸屏在系统中关键功能的实现。市场上MCU模块多种多样,MCGS支持的驱动模块有限,不可能全部涉及,通过自定义协议和RS232串口进行数据交互可作为一种比较灵活的解决办法。
参考文献:
[1] 马国华. 监控组态软件及其应用[M]. 北京:清华大学出版社,2001.
[2] 孙忠伟,姜永成,张成龙,等. 基于MCGS组态软件和PLC的粮食干燥控制系统[J]. 佳木斯大学学报,2011.
[3] 张小京,易志华. 基于GPRS的无线视频监控系统[J]. 国外电子元器件,2007.
摘要:介绍了升降机监控系统硬件结构以及MCGS触摸屏在系统中的应用。下位机主控模块用的是泓格I-7188E,通过485总线和各模块进行数据传递。MCGS驱动程序里没有I-7188E的驱动程序,文中采用了自定义协议的方式,让主控模块和MCGS通信。MCGS解析数据后,结合逻辑功能的设计,将相应信息直接反馈在触摸屏界面上。
关键词:MCGS;升降机;I-7188E模块
Research on Elevator Monitoring System Based on MCGS FAN Peng, ZHANG Xiang-tian, WANG Yun-long
(School of Mechanical Engineering, Nanjing University of Science and Technology, Nanjing 210094, China)
Abstract:This paper introduces the hardware structure of elevator monitoring system and the application of MCGS touch screen this system. The main control module of the lower computer is Hon I-7188E, which transfers data with other modules through 485 buses. In MCGS drivers diagram, there is no corresponding one to I-7188E, thus via the method of the custom protocol, the MCU module can be communicated with the MCGS touch screen. Accompanied by the design of logical function, when the data is parsed, useful information can be directly showed on the screen.
Keywords:MCGS; elevator; I-7188E module
中图分类号:TP277.2
文献标志码:B
文章编号:1671-5276(2015)02-0203-03
作者简介:范鹏(1986-),男,江苏兴化人,硕士研究生,研究方向为嵌入式系统的硬件与软件应用开发。