从地磅微机称重系统建立的必要性,针对现有地磅装置进行改造,利用VB6和Sql server2000开发实用地磅微机称重系统。一方面发挥VB中的MSCOMM和TIMER控件的作用, 配合RS—422实现远距离通讯工作,完成称重数据的采集;另一方面利用摄像机和视频采集卡进 行视频图像抓拍,并引入两个第三方控件BSGraphic和Ezvidcap对图像进行处理保存到数据库中, 同时获得车辆的有关信息和送料的外观品质,便于当前监控和将来的监管工作。所开发的地磅系 统运行良好,满足了企业的实际需要.
地磅计量是企业物资计量的主要手段之一,但 在实际工作中由于管理手段和方法的不够健全,尤 其技术手段的落伍,助长了种种人为作弊现象;例如 送料车驾驶室乘车人数的变动,所送材料的品质区 分,称重数据的人为因素,事后的进一步跟踪和追 查,传统的地磅系统无从考证,加之人工操作不仅工 作量大、易出错,尤其有关部门和上层管理者,面对 数量庞大的手工票据无法进行有效的监管,也易引 起矛盾,严重地影响了企业的管理和效益。而称重 数据的自动采集处理和视频图像抓拍部分是完善地磅监控的重要一环,为此引入微机称重系统势在必 行。
1.系统硬件设计
地磅微机系统主要由完成地磅工作的计算机和 企业的网络数据库服务器组成,在地磅微机系统硬 件设计中,主要包括实现称重数据采集的传感器、模 拟信号处理为数字信号的仪表(模块)和实现视频图 像抓拍的摄像机和视频采集卡。
1.1称重数据采集设备
本系统是在充分利用企业现有的地磅计量 系统的称重传感器和金元SCS — 80(XK3122)称重 仪的基础上,力求高性价比,进行科学合理的改造, 即使网络或计算机故障,称重仪可按传统的工作方 式完成称重任务,确保系统工作的可靠性。 232和RS — 422输出端口,为了实现与计算机的远 距离通讯,完成称重数据的采集和处理,便于把地磅和调度工作合二为一,为便于配有不同标准串行接 口的计算机、外部设备或智能仪器之间进行远程数 据通信,必须进行标准串行接口的相互转换,需要购 置两块RS-232/RS-422 485FD接口转换器。
1.2视频采集设备
视频监控可采用传统的录像机及电视监控、计 算机硬盘录像,但由于这两种方案一方面价格较高, 尤其不便于视频图像的处理和整个地磅系统的开发 和管理,导致整个企业网络数据共享存在视频图像 不到位的现象,有效的监管不能进一步落实。为此 采用摄像机加视频采集卡实现视频监控不失为一种 切合实际而较理想的方案。
视频源是图像质量的关健所在,为此选用分辨 高,图像不抖动,在环境照度极底的情况下依然能够 拍摄高清晰画面,在恶劣环境下仍然适用的摄像机。 依据摄像机的性能指标和实际试用情况,选用FN -4700C彩色枪式摄像机能满呈需要。
视频采集将视频转换成计算机可使用的数字格 式。图象采集卡是将视频信号经经数字解码装置、模/ 数转换器、比例缩放、裁剪、色空变换等处理,经过 PCI总线传到VGA卡实时显示或传到计算机内存 存储。在采集过程中,由于采集卡传送数据采用 PCI Master Buist方式,图象传送速度高达几十MB/S,可实现摄像机图像到计算机内存的可靠实时传送,数据的传送过程是由图像卡控制的,并且几 乎不占用CPU时间,留给CPU更多的时间去做图 像的运算与处理。依性能指标和监控点的实际情 况,选用两块SDK2000能满足需要。
2.系统的软件设计
在 WIN2000 ADVANCE SERVER 操作系统强 大的功能和安全性的支持下,利用SQLSERVER2000在服务器上建立网络数据库,在客户端采用 Office中的Access数据库管理软件建立数据库文 件,以网络工作方式为主,网络故障时,本地工作方 式发挥作用,确保地磅管理系统的运行。利用vb6. 0开发的管理应用软件操作简单易行、通用性强,具 有很强的生命力和实用价值。
根据系统基本功能需要,规划好系统的工作界 面,协调好各个程序模块的分工,把它们相应地分配 到工具条按钮和菜单项事件中。设计开发源程序应 充分注意VB是面向对象的事件驱动的工作方式。 2.1系统功能规划
根据地磅微机管理系统的实际功能需要,规划 好功能模块,以此设计和开发各个模块所对应的软 件代码。功能模块如下:系统管理模块:完成用户的 注册和密码的设置及系统的退出功能;
车辆管理模块:完成车辆基本信息的录入、查询 和修改;
采集管理模块:完成称重空车和重车数据的采 集和处理,以及车前和车顶视频图像的抓拍和保存 工作;
查询浏览模块:完成各种地磅信息的查询和浏 览功能;
统计打印模块:实现以单位、个人、日期、材料类 型、月报和年报等所需数据的统计和打印工作。
2.3数据库建立
数据库需求分析、概念结构设计、逻辑结构设计 和实现,按照一般规律和要求处理即可。在地磅中 核心的表是存放来料的Et-material表(运输混凝土 的罐车表结构与其基本类似)其结构为:编号、供货 单位/人、车号、材料名称、材料规格、总重、皮重、扣 方量、操作员、满车称重时间、满车车前图片、满车车 顶图片、空车称重时间、空车车前图片、空车车顶图 片、状态标志和备注。为了理解方便把字段内涵进 行了汉化解释,此表为地衡工作的有效监控提供了充分的数据保障。
3.软件技术核心
3. 1SCS — 80串口 RS — 232通讯协议
由于SCS — 80(XK3122)称重仪的通讯格 式得不到相关资料,只有利用VB6中的MSCOMM 控件开发所需的串口通讯测试工具程序,揭示 SCS-80串口 RS — 232通讯协议的格式。例如60 公斤的重物在监测时的一段数值为:B7 B1 B8 30 8D 11 82 AA 00 00 30 30 30 30 36 30 30 B2 B7 B1 B8 30 8D 11 82 AA 00 00 30 30 30 30 36 30 30 B2, B7 B1 B8 30 8D 11 82 AA 00 00 30 30 30 30 36 30 30 B2。它一直向外发送数据,不需握手协议,特别 注意要多次对金元SCS — 80的通讯波特率和进位 机制的改变,找出通讯协议的真正关健标志,经过反 复的测试和校验工作,明确SCS — 80串口 RS 一232通讯协议的格式,为称重数据采集程序的编 制工作奠定必要的基础。
3. 2系统通讯程序
与通讯密切相关的是MSC0MM控件和定时 器有关属性的设置工作;以及定时器事件中子过程 完成把称重仪表的值送到计算机,处理获得所需数 据,它是微机地磅管理系统的最核心和最基础的工 作之一。下面就是定时器事件中子过程的具体代 码,其间实现变量定义、所收到字节数的判断、从接 受缓冲区中读数,循环1取出关健标识8D,并为取 有效数值定位,循环2获取具体数据,最后把称重仪 表的读数在计算机的工作界面上显示,并为后续工 作开展奠定基础。
Private Sub Timer1-Timer() ’ 属于单工通讯。 On Erior Go To errdisplay : Dim i %, St %, W $ : Dim NetW As Long
Dim inbyte () As Byte : W = ” ”
If Me. MSComm1. InBufferCount < 36 Then ‘上位计算机RS一232串口要收到足够的字节
Me. LabWeightValue. Caption = ”仪表出错”: Exit Sub End If
Me. MSComm 1. InputLen = 36 : inbyte = M e .M S Comm1 .In pu t
For i = LBound(inbyte) To UBound(inbyte)
If Hex (inby te (i) ) = ” 8D” T hen
St = i + 7 : Exit For End If
系统根据资源性能价格比和用户需求调度最合适的 资源。
编程工具:网格应提供多种工具、应用、 API、Fori = St To St + 4 W = Trim $(W ) & Trim $ (Right $ (Hex (in- byte(i)),1))
Next i
NetW = Val(W) : Me. LabWeightValue. Cap-tion =CStr(NetW)
Me. LabWeightValue. Refresh : Me. Refresh ’
为让仪表及时显示所采集的结果 Exi t Sub errdisplay:
M e. LabWeightValue. Caption = ”仪表错”
End Sub
3.3系统视频抓拍程序
在购置视频卡时,随卡的光盘上不仅有卡的驱 动程序,还提供了二次开发所需的开发包,但其开发 包中的动态连接库及其函数非常繁琐,而且还需要 Win32的API,而且只能存为占据较大硬盘空间的
BMP格式文件这对存放图片的Et-material表极为不利,为此在视频监控软件设计部分引入两个第三 方控件解决这些问题。与视频抓拍密切相关的是所 引入的两个第三方控件BSGraphic和EZVidcap有 关属性的设置工作;BSGraphic控件完成把屏幕上 的动态监视画面按需抓拍一幅保存为BMP位图文 件;EZVidcap控件实现把BM P位图文件转换(高压 缩为)JPG文件,利用这两个控件为视频抓拍程序的 编制工作奠定了必要的基础。设计时,视频抓拍代 码放在保存子过程中,它是微机地磅管理系统中视 频监控的最核心和最基础的工作之一,其有关视频 监控部分的具体代码略。