过去,许多石化企业的车辆过磅称重采用有人值守系统,即:通过现场人工计量的方式,多个地磅需要安排多个司磅员,司磅员手工记录车辆皮重和毛重,再根据计算得出的石油化工品的净重来结算业务。而传统的单机无人值守系统结构单一,未对外提供数据接口,无法实现与第三方系统的无缝对接,且操作流程复杂、耗时长、参与人员过多,易造成计量管理混乱、执行效率低下,各种作弊现象也时有发生[1-3]。因此,随着通信与网络技术的快速发展,越来越多的企业希望装卸车地衡本地业务处理采用无人值守型远程监控方式,包括自动识别车号、自动检测车位、自动引导、自动保存称重数据及生成各类报表等,从而增强工业园区装卸车的管理执行力,提高工作效率,高效地实现与MIS/ERP系统的数据共享与沟通,有效防止夹带作弊、车辆不完全上磅、遥控作弊等多种作弊行为,堵塞各种管理漏洞,实现管控一体化。
近几年来,无人值守称重系统在煤矿、冶金、化工等行业均有广泛应用[4-6]。该系统通常配合定量装车系统、SCADA(supervisory control and data acquisition,监控与数据采集)系统、排队叫号系统等有序地实现整个库区的储运管理,其安全性、可靠性、稳定性保证了企业物流安全和人力财产安全。在工程应用中,可利用研华科技亚当模块来控制现场道闸信号和红外信号,并和地衡信号一起通过Prolinx网关传送给上位机。该方法简单易行,在大型的多磅称重需求中相对能降低成本,但是所需实现的功能过于分散,对于称重信号的计算与处理必须通过上位机来完成,在项目管理中不利于分工合作,而且该模块的稳定性依赖于计算机,信号采样速度较低[7-9]。因此,本文根据某石化企业的项目需求,针对地衡数目较少的小型称重系统,利用Allen-Bradley Micro850控制器,通过网络互联,实现了地衡称重的无人值守管理。
1 地衡无人值守称重系统总体结构地衡无人值守称重系统主要由地衡、红外光栅、道闸、IC读卡器摄像头等构成,其网络结构如图 1所示。该系统将采集到的现场数据通过以太网传输与中央控制室的称重管理软件进行数据交换和管理,从而实现车辆过地衡时数据自动监测和远程管理的功能。
![]() |
图 1 地衡无人值守称重系统网络结构 Fig.1 Network structure of the weighbridge unattended weighing system |
地衡采用传感式电子汽车衡,用于车辆装卸称重;红外光栅利用多束红外光对射来判断车辆停放位置是否正确;道闸的开启与关闭均由地感线圈触发控制,用于限制车辆的通行,达到提示与安全保障的目的;基于RFID[10]技术的IC(integrated circuit,集成电路)卡通过无线电波与读卡器进行数据传输,自动识别业务信息,保证每笔业务的唯一性;摄像头一般有3个,为车前摄像、车后摄像和全景摄像,用于称重过程图像采集和视频动态录像;LED (light emitting diode, 发光二极管)显示屏通过Prolinx通讯网关将数据传输格式由Modbus RTU转换成Ethernet/IP格式,用于显示提示信息,引导司机完成整个称重过程[11-12]。
2 双向地衡无人值守称重系统的设计与实现 2.1 PLC选型根据无人值守系统的功能要求与特性,PLC(programmable logic controller,可编程逻辑控制器)采用Allen-Bradley Micro850控制器。该控制器价格低廉,但具有高灵活性、高I/O性能、低空间占用、高稳定性的特点。它内置24 V直流输出电源,配置48点的数字量I/O模块,且可至多扩展4个I/O模块,同时配备串行通信plug-in功能性插件及嵌入式10/100Base-T以太网端口,支持Modbus TCP,Ethernet/IP,Modbus RTU等协议,并采用可拆卸端子设计[13]。
2.2 I/O配置与地址映射地衡系统分为单向和双向两种类型。根据实际需求,本文研究双向地衡无人值守称重系统,如图 2所示,其中,地感线圈、红外光栅、IC读卡器、道闸各为2个。用到的数字量输入为地感线圈信号和红外信号,共计4个输入点;数字量输出为道闸信号,共计4个输出点。道闸的开启与关闭由不同的输出点控制,称重系统I/O配置如表 1所示。
![]() |
图 2 双向地衡无人值守称重系统 Fig.2 Bidirectional weighbridge unattended weighing system |
变量名 | 数据类型 | 描述 |
_IO_EM_DI_00 | Bool | 地感1线圈 |
_IO_EM_DI_01 | Bool | 红外光栅1 |
_IO_EM_DI_02 | Bool | 地感2线圈 |
_IO_EM_DI_03 | Bool | 红外光栅2 |
_IO_EM_DO_00 | Bool | 道闸1开启 |
_IO_EM_DO_01 | Bool | 道闸1关闭 |
_IO_EM_DO_02 | Bool | 道闸2开启 |
_IO_EM_DO_03 | Bool | 道闸2关闭 |
本系统用到的2080-serialisor plug-in串口模块共有2个,分别使用MSG_Modbus功能块和ARD(ASCⅡ read)功能块来读取IC读卡器和地衡数据。由于2种数据传输方式不同,需要分别对它们组态,将串行传输方式分别设定为Modbus RTU和Modbus ASCⅡ。同时,为了响应Modbus主站的读写命令,必须将变量映射到Modbus地址中。读/写保持寄存器初始地址为400001H,本系统共用到22个变量,部分变量标签的Modbus地址映射如表 2所示。
变量名 | 数据类型 | 首地址 | 所使用的地址 |
A_dw_out_cardNo1 | dword | 400001 | 400001-400002 |
A_dw_out_cardNo2 | dword | 400003 | 400003-400004 |
A_r_out_weightCurrent | real | 400005 | 400005-400006 |
A_r_out_weightResult | real | 400007 | 400007-400008 |
… | … | … | … |
A_w_out_infrared1 | word | 400021 | 400021 |
A_w_out_infrared2 | word | 400022 | 400022 |
根据实际工况,PLC控制模式设计为“自动控制”、“手动控制”和“维护”三种。一般情况下,称量过程按照正常程序和步骤,以“自动控制”方式进行。
司机在业务大厅根据ERP (enterprise resource planning,企业资源计划)系统生成的发货单开票制卡后,等待叫号,依次过磅称重。车辆驶向地磅时,地感线圈感应到车轮振荡,从而控制道闸开启,延时几秒后触发红外光栅。需要注意的是,本文设置的地磅被感应的最低限值为20 kg,防止因人为、天气或其它因素的干扰导致红外光栅被意外触发。司机将车停稳后进行刷卡,上位机查询数据库对卡内信息进行比对,以确定业务是否存在,如果连刷3次一直提示不存在,则道闸自动打开,提醒司机下磅重新开票办理业务。为了便于区分,本文规定以“1”开头的为正向行驶,以“2”开头的为反向行驶,当业务不存在时,定义为以“3”开头,两侧道闸同时打开,车辆可从任意一侧下磅。双向地衡自动控制流程如图 3所示。当出现意外或紧急情况时,可通过上位机将控制方式改为“手动控制”模式,PLC程序将被旁通,现场所有设备直接由上位机控制。出于安全考虑,当进行设备维修和养护时,可将控制方式改为“维护”模式,此时PLC程序和上位机被锁定,不允许执行任何操作。
![]() |
图 3 双向地衡无人值守称重系统的自动控制流程图 Fig.3 Automatic control flow chart of the bidirectional weighbridge unattended weighing system |
本系统基于CCW(connected components workbench)组态软件进行设计编程。IC卡号的读取是通过Modbus RTU串行传输模式,采用MSG_Modbus功能块,以非连续触发的方式,Modbus RTU主站读写从站保持寄存器的数据,并将数据存放于缓存区LocalAddr中。若MSG指令执行成功,则输出Q置为“True”。
地衡称重信号无法直接获得,必须通过二次表将数据提供给PLC。本文采用的二次表为Mettler Toledo T800称重仪表,它提供了2个串行口(COM1和COM2),通过COM1将数据输出到PLC,波特率设为9 600 b/s,8位无校验,输出方式为Toledo连续输出。二次表的数据是以18个字节的ASCⅡ码形式输出的,起始符为02H,第5~10位用于存储毛重,为6位不带小数点和符号的数字;第17位为回车符0DH,只有读到回车符,才被认为数据获取完整。因此,在PLC编程时,需要对第5~10位进行数据格式转换,然后由上位机来判断所获得的当前值是皮重还是毛重。首先通过软件内置的AWA功能块,将数据以十六进制ASCⅡ的格式存入缓存区Source中;接着利用ARD功能块读取ASCⅡ字符,并将它转换成Dint类型,然后需要分别判断第5~10位的字节是否为空格,即是否为“32”,若是,则将“0”赋值给该位,若不是,则减去“48”,将差值赋给该位;最后,将每一位数值乘以它的数量级再求和,得到实际质量为:
$ {\rm{A}}\_{\rm{real}} = \sum\limits_{i = 5}^{10} {\left( {{{10}^{10 - i}} \times {\rm{A}}\_{\rm{out}}\left[ i \right]} \right)} $ | (1) |
式中:A_real为实际称重有效值,A_out[i]表示第5~10位十进制字符,字符范围为0~9。
2.5 质量信号的滤波处理称重车辆载重一般是成吨计的,而地衡二次表的测量精度是20 kg, 车辆上磅停稳后,会因人为、天气等各种因素的干扰,导致称重值不断跳变,因此,在程序中加入了250 ms的定时器来不断更新称重值,LED显示屏、二次表和上位机信息管理系统中可显示实时质量变化。同时,为了获得较准确的皮重和毛重,必须将质量信号进行滤波处理,取一个稳定的有效值提供给业务站,以便开票出单。传统的滤波算法有平均值滤波、限幅滤波、中位值滤波、滑动平均值滤波等[14-15],本文采用的是对称重数据进行2次过滤的方法。
第1步,采用限幅平均滤波法来粗步筛选数值A_real,由于每隔250 ms刷新一次,取10个Buffer数据缓存区,将当前时刻获取的A_real替换前一时刻的值,依次存储到A_weight[1],A_weight[2],…,A_weight[10]中,通过式(2)求得平均称重值A_weightAverage,然后与第11次取得的当前值进行比较,根据其偏差是否小于等于阈值100 kg为标准来剔除无效的A_real,并将满足条件的当前值赋给A_weightCurrent。
$ {\rm{A\_weightAverage}} = \frac{1}{{10}}\sum\limits_{i = 1}^{10} {{\rm{A\_weight}}\left[ i \right]} $ | (2) |
第2步,通过上面的方法可每250 ms得到一个A_weightCurrent数值,然后定义一个1 s的延时器,每隔4个数据进行一次采样,即每隔1 s将采样值赋给变量A_weightBuffer,再次利用限幅滤波法进行细过滤。当然,为了进一步减小误差,只有当5 s内所取的20个数据全都满足偏差值小于等于20 kg,才能将当前时刻的A_weightCurrent作为真正稳定的称重值赋给A_weightFinal,最后,业务站根据A_weightFinal值统计车辆过磅信息和结算业务。
3 系统操作管理本系统基于Server SQL数据库进行后台业务处理,包括制卡、打印提货单和车装出库单等,并通过Visual Studio 2010开发环境将对数据库操作的具体方法发布为WebService服务,实现数据远程访问。同时,利用C#编程语言,开发了一套具备地衡称重及查询装车业务功能的地衡无人值守称重管理系统[16-19]。图 4为称重管理系统客户端界面,计量操作中心的操作员只需输入相应网址,就可通过浏览器登陆系统,查看地衡的过磅信息和业务信息、正在进行的装卸车业务、当前车辆最近30条历史数据等。图中的“实装量”由批量控制仪提供,批量控制仪在装车系统中通过控制传输管道阀门的开度来控制化工品的流量。受到诸如丙烯等化工品的气相回流、空气浮力、批量控制仪所采取的控制策略等因素的影响,检测到的实装量会存在一定误差,所以目前各石化企业的称装量仍以过磅信息为准。
![]() |
图 4 双向地衡无人值守称重管理系统界面 Fig.4 Management interface of bidirectional weighbridge unattended weighing system |
现分析某石化企业现场的地衡系统称重0#柴油的计量误差。选用Endress+Hauser公司的NXF581批量控制仪,通过连接Promass 83F质量流量计来控制调节阀的开度。现场通过不同的定量,将车辆过磅的净重与批量控制仪显示的实装量进行比较,如表 3,分析得出通过该滤波算法能够将计量误差控制在3‰以内,符合实际的工业要求。
定量/t | 实装量/t | 过磅净重/t | 误差/‰ |
10 | 9.987 | 9.980 | 0.70 |
15 | 14.941 | 14.960 | 1.27 |
18 | 17.975 | 17.960 | 0.84 |
22 | 21.991 | 22.000 | 0.41 |
30 | 29.966 | 29.900 | 2.20 |
本文利用Micro850设计了双向地衡无人值守称重系统,可实现现场无人值守、司机自助称重以及远程集中计量。整个系统采用了集中监控管理的设计模式和分布式监测数据的智能设备,并设计开发了良好的可视化用户管理界面,促进企业物流、管理等的一体化发展。该系统已正式投入企业的实际应用,并取得了良好的效果。
[1] |
袁刚.
地磅无人值守系统[J]. 仪器仪表用户, 2016, 23(12): 50–52.
YUAN Gang. Unattended weighbridge system[J]. Electronic Instrumentation Customer, 2016, 23(12): 50–52. DOI:10.3969/j.issn.1671-1041.2016.12.015 |
[2] |
孙志婷, 刘婷婷, 李顺云.
防作弊地磅称重系统的设计与实现[J]. 煤炭技术, 2011, 30(7): 189–191.
SUN Zhi-ting, LIU Ting-ting, LI Shun-yun. Design and implementation of anti-cheating loadometer weighing system[J]. Coal Technology, 2011, 30(7): 189–191. |
[3] |
李建奇, 何鹏, 王文虎, 等.
一种新型粮食企业智能称量系统的设计[J]. 自动化与仪表, 2012, 27(5): 50–53.
LI Jian-qi, HE Peng, WANG Wen-hu, et al. Design of grain weighing system for vehicle weight scale[J]. Automation and Instrumentation, 2012, 27(5): 50–53. |
[4] |
徐生林, 张勋芳, 邵根富.
无人值守称重系统的设计与实现[J]. 计算机应用与软件, 2010, 27(3): 188–190.
XU Sheng-lin, ZHANG Xun-fang, SHAO Gen-fu. Design and implementation of unattended weighing system[J]. Computer Applications and Software, 2010, 27(3): 188–190. |
[5] |
王昭. 汽车衡称重管理系统的研究与应用[D]. 北京: 华北电力大学控制与计算机工程学院, 2016: 1-2.
WANG Zhao. Research and application of vehicle weighing management system[D]. Beijing: North China Electric Power University, School of Control and Computer Engineering, 2016: 1-2. |
[6] |
朱炜淋, 杨青锋.
基于称重传感器在电子汽车衡中应用的探究[J]. 衡器, 2011, 40(4): 15–18.
ZHU Wei-lin, YANG Qing-feng. Research on the application of the weighing sensor in the automobile weigh[J]. Weighing Apparatus, 2011, 40(4): 15–18. |
[7] |
丁园园.
利用研华ADAM-4000系列模块搭建监控系统[J]. 科技风, 2011(8): 41–41.
DING Yuan-yuan. Using ADAM-4000 series modules to build a monitoring system[J]. Technology Wind, 2011(8): 41–41. |
[8] |
钟斌, 黎和昌, 敬新益, 等.
利用Visual C++和ADAM模块开发温度采集与控制系统[J]. 南昌工程学院学报, 2005, 24(3): 46–49.
ZHONG Bin, LI He-chang, JING Xin-yi, et al. Using visual C++ and ADAM modules to develop tempera-ture collection and control system[J]. Journal of Nanchang Institute of Technology, 2005, 24(3): 46–49. |
[9] |
张峰, 李志刚.
利用VB6.0与ADAM模块实现现场数据的采集[J]. 自动化与信息工程, 2001, 22(2): 36–38.
ZHANG Feng, LI Zhi-gang. The collection of field data collected by using VB6.0 and ADAM modules[J]. Automation & Information Engineering, 2001, 22(2): 36–38. |
[10] |
李国勇, 王燕霞, 熊黎丽, 等.
基于RFID的多磅自动称重系统设计[J]. 自动化与仪器仪表, 2016(9): 16–18.
LI Guo-yong, WANG Yan-xia, XIONG Li-li, et al. Design of multi-loadometer automatic weighing system based on RFID[J]. Automation and Instrumentation, 2016(9): 16–18. |
[11] |
张乐, 鲁仁全, 徐生林.
车辆衡自动称重系统的设计与实现[J]. 浙江大学学报(工学版), 2010, 44(7): 1414–1417.
ZHANG Le, LU Ren-quan, XU Sheng-lin. Design and implementation of automatic weighing system for vehicle weightscale[J]. Journal of Zhejiang University (Engineering Science), 2010, 44(7): 1414–1417. |
[12] |
奚向民, 范舜年.
污水处理厂地磅房自动称重系统[J]. 电气自动化, 2012, 34(4): 68–69.
XI Xiang-min, FAN Shun-nian. Automatic weighbridge system in the wastewater treatment plant[J]. Electrical Automation, 2012, 34(4): 68–69. |
[13] | APPITA Group. Micro PLCs from rockwell automation[J]. APPITA Journal, 2013, 66(2): 104–104. |
[14] |
文常保, 高丽红, 方吉善, 等.
基于改进型限幅平均滤波法的高精度称重系统研究[J]. 传感技术学报, 2014, 27(5): 649–653.
WEN Chang-bao, GAO Li-hong, FANG Ji-shan, et al. The high-precision weighing system based on the improved amplitude-limiting and average filtering algorithm[J]. Chinese Journal of Sensors and Actuators, 2014, 27(5): 649–653. |
[15] |
杨明, 狄卫国, 段淑凤.
数字滤波技术及其在电池检测系统中的应用[J]. 现代电子技术, 2003(5): 98–99.
YANG Ming, DI Wei-guo, DUAN Shu-feng. Digital filter algorithms used in detected system for battery[J]. Modern Electronics Technique, 2003(5): 98–99. |
[16] |
贺益盛. 基于主数据的信息系统集成与应用研究[D]. 广州: 华南理工大学软件学院, 2014: 21-23.
HE Yi-sheng. Research of information integration and application based on master data[D]. Guangzhou: South China University of Technology, School of Software Engineering, 2014: 21-23. |
[17] |
谢剑猛, 许飞.
基于ⅡS的Web网站的安全研究与设计[J]. 华东交通大学学报, 2003, 20(5): 62–65.
XIE Jian-meng, XU Fei. Security research and design of Web sites based on ⅡS[J]. Journal of East China Jiaotong University, 2003, 20(5): 62–65. |
[18] |
孙磊, 林峰.
Asp.Net在远程控制中的应用[J]. 工程设计学报, 2005, 12(1): 44–47.
SUN Lei, LIN Feng. Use of Asp.Net in remote control[J]. Chinese Journal of Engineering Design, 2005, 12(1): 44–47. |
[19] |
邬蓉蓉, 滕召胜, 谭旗, 等.
基于C#.NET的智能化汽车衡称重管理系统[J]. 仪表技术与传感器, 2010(7): 48–50.
WU Rong-rong, TENG Zhao-sheng, TAN Qi, et al. Management system of intelligent truck scale based on C#.NET[J]. Instrument Technique and Sensor, 2010(7): 48–50. |