基于DDE通讯的地磅计算机计量管理系统
介绍了以DDE通讯方式来获取仪表上传数据的地磅计算机计量管理系统的实现.由于采用 动态改变MSComm控件的Rthreshold属性值的技术,与同类型软件产品相比较,系统反应及时、稳定性 强、可适应各种仪表类型.
0.引言
某化工厂的地磅房地磅担负着全厂的物资进 出的计量任务,每年有上百种、数百万吨的产品和原 材料经地磅房地磅系统计量后,进出厂区,供货提 货的客户和单位有数百个之多,地磅房的工作质量 和效率对企业有着非常重要的意义.影响地磅房工 作质量和效率的的主要因素是计量数据的准确、快 速、可靠和计量数据的快速传递.过去该厂的地磅房地磅由手工操作,通过配备的称重显示仪,人工记 录车号,读取空车、重车重量并进行净重计算并填写 称重单据.这种称重仪器的缺点主要是存储容量小、 工作效率低,不能进行分类统计,数据不容易进入企 业管理数据库.计量数据的传递和处理由人工完成, 每天磅房操作人员将前一天的计量数据报送计量主 管部门,再由统计人员进一步归类统计,送到有关处 室.造成工作量大,且处理周期长,容易发生司称人 员与汽车司机串通作弊的事情,因此非常不适应现 代企业管理方式.
针对以上情况我们设计了地磅计算机计量管 理系统,其目的是利用先进的计算机技术来提高地磅计量系统可靠性、准确性以及自动化程度,最大 限度地防止作弊现象的发生,为企业的现代化管理 提供有力的帮助.
1.系统组成原理
地磅计算机计量管理系统的硬件结构框图如 图1所示.
压力传感器将称重平台的压力转换成电信号送往称 重仪表,由称重仪表的A/D转换电路转换成数字信 号,称重仪表具有计算、显示重量的功能.同时称重 仪表配有RS — 232接口,以连续发送方式将重量数 据直接发送到上位的管理计算机上,形成称重管理 系统.管理计算机通过称重管理软件接收RS — 232 串行口上传的称重数据,对数据进行显示、存储和管 理,打印过磅单及各种统计报表,可以实现对与称重 有关的数据进行查询、维护.管理计算机还可以与企 业内部网络相连,将称重过程中形成的各种数据方 便地传送到企业的管理数据库,以作为管理决策、财 务结算的基础数据.
2.计量管理软件系统的设计
根据企业管理上的要求,所设计的计量管理软 件获取称重数据必须快速准确;系统长时间工作必 须稳定可靠;操作简便,能有效地防止作弊行为;数 据保密性要强.
系统主要功能应包括:皮重和毛重的称量数据 通过RS — 232接口传输到计算机,计算机收到数据后,捡核车号,根据皮重、毛重计算各种货物的净重, 确定凭证代码、物资代码和名称、供方代码和名称、 需方代码和名称、物资流向、称重时间和司称人员等 信息,并打印过磅单据;以多种方式统计各种物资的 称重数据,生成由原始数据得到的日报表、月报表和 年报表,计算每种物资的日、月、年的累计重量;可对 运输车辆、物资、供方、需方、称重记录、司称人员等 信息进行维护、备份和查询并打印输出查询结果;对 系统的有关参数(如串行口参数、计量单位、仪表类 型)进行配置等.
针对以上的要求,我们采用模块化设计方法进 行地磅计算机计量管理软件的设计.将整个系统 按功能要求划分为若干个功能模块,各功能模块之 间既相互独立以便于调试和修改,为系统的维护和 修改提供了方便;同时各模块又通过数据库构成有 机的整体,相互协助,共同完成管理任务.系统软件 主要功能模块结构如图2所示,各主要功能模块又 由若干子模块组成.
(1)系统登录模块.为了保证数据的安全性,只 有被授权的有关人员才能够操作该管理软件.各操 作人员可以根据岗位需要被授予不同的权限,如系 统管理权、参数设置权、数据维护权、称重操作权、数 据查询权、统计报表权、司称员管理权等.系统管理 权是最高权限,往往由企业或单位指定一人负责,他 可以对所有的数据进行查看、更新或配置.进入系统 都要由登录模块来确认使用者的身份和密码,防止 非法人员的操作.
(2)称重处理模块.称重模块主要负责接收仪表 上传的称重数据,根据皮重和毛重数据计算出净重, 并将称重数据与车号、凭证代码、物资代码、供方代 码、需方代码、物资流向、发票号码、称重时间和司称 员代码等信息形成一条完整记录存入数据库.称重 数据的获取由DDE通讯程序完成.
为适应企业内部和外部汽车称重的不同需要, 称重处理设置了两种方式,一种是固定皮重方式,其 主要针对企业内部车辆和一部分经过企业相关负责 以缩短称重时间,提高称重效率;第二种是非固定皮 重方式,即进出车辆必须经过称皮、称毛两次称量以 获得物资净重数据,皮重数据仅用一次,下回称重时 须重新称皮重.
(3)数据查询模块.该模块用于查询称重记录、 物资、供方、需方、凭证、车辆和司称员等信息.可按 任意字段查询,数据表的每个字段都可以作为查询 条件,同时还提供二次查询功能,即在上次查询结果 的基础上做进一步细化查询.查询结果可打印输出.
(4)数据维护模块.主要是对称重数据、凭证信 息、供需方信息、车辆信息、司称员信息进行添加、删 除、修改等操作.对于不同的用户,其权限不同,所维 护的数据也不一样.如一般的司称员只能维护凭证 信息、物资信息、供需信息等数据,无权修改称重记 录、司称员信息,而系统管理员却可以对所有数据进 行维护.
(5)统计报表模块.进行年报表、月报表、日报表 的生成和打印,可进行日、月、年的各种物资的累计. 报表类型分为称重统计总表、分类分户统计、分户分 类统计、称重统计清单等统计形式,使企业的日常管 理更为方便快捷.
(6)参数设置模块.为计算机与仪表实现通讯, 以及数据转换进行一些基本设置,包括:串口参数配 置、计量单位配置、仪表类型配置.
用户设置模块.对使用该系统的司称员、管 理员的代码、姓名、密码和权限进行配置,可执行增、 删、改操作.
整个管理系统软件采用VB6.0开发,数据库采 用数据库.同时系统也可以根据需要很方便 地移植到网络环境下,实现多台地磅连网运行.
3.系统的主要技术特点
(1)采用DDE通讯方式获取称重数据以方便系 统适应各种称重仪表.
管理计算机获取称重仪表上传数据的任务由专 门开发的DDE通讯程序完成,该DDE通讯程序 (Server)作为数据的提供者将实时重量数据提供给 Windows环境下的称重处理程序(Client). DDE (动 态数据交换)是Windows平台上一个完整的通信协 议,它使应用程序能够彼此交换数据和发送指令.系 统数据流向图如下:
由于不同厂家的称重仪表,其与上位机接口的 通讯协议都不一样,如TOLEDO脚的称重仪表和耀华的称重仪表;即使是同一厂家的不同系列、不同 种类的称重仪表,它们各自的通讯协议也可能不一 样,如XK3190系列的D2表和A1表.采 用DDE通讯方式的最大好处就是,使系统管理软件 可以非常方便地适应各种称重仪表,例如,当更换了 一种管理软件原本并不支持的称重仪表时,只需对 DDE通讯程序进行更新,增加对新仪表通讯协议的 支持,而不必对整个管理软件进行修改和重新编译, 这就大大增强了系统的适应性.
(2)动态改变MSComm控件的Rthreshold属性 值,确保接收数据过程迅速、稳定可靠.
在DDE通讯程序中,使用了 MSComm控件来 实现对串口的编程.为了识别接收数据的格式,提取称重数据,通常的做法是:用MSComm控件的On- Comm事件接收上传的各字节数据,并将它们放入 一个应用程序设置的缓冲区,如一个数组,另外用一 个定时器Timer控件定时扫描缓冲区以提取实时称 重数据.通过实践我们发现这种方式在实际中间存 在一些问题,主要是反应不够及时、有时有丢失数据 的现象.因此我们采用只利用MSComm控件,不使 用Timer控件,通过在MSComm控件的OnComm 事件中动态改变MSComm控件的Rthreshold属性 值的方法,来实现对实时称重数据的提取.实践证 明,这种方法程序短小精干、反应及时、无数据丢失 现象,效果非常好.现介绍如下.
通过调查发现,目前大多数与上位计算机相连 的称重仪表都能以连续发送方式将实时称重数据发 送到上位机的,其每个数据包都为固定长度.以XK3190—A1表为例,串行口设置为:1位启始 位、1位停止位、8位数据位,无奇偶校验位.XK3190 一 A1称重仪表的上传实时称重数据的帧格式为:
每帧数据由12个字节组成,所有数据均为A SC II字符.小数点位数按从右到左取0 ~ 4的数值,异 或校验为每帧的第2个字节到第九个字节依次进行 异或运算的结果.异或校验结果占2个字节,高四位 放在第一个字节中,底四位放在第二个字节中.
动态改变MSComm控件的Rthreshold属性值 方法的思路是:由于Rthreshold属性值是说明在产 生OnComm事件之前要接收的字符数,故可以利用 动态改变Rthreshold属性的值的方式来控制触发 OnComm事件的时机,以保证在读取串口时能读到 一个完整的数据帧.而如果采用定时器方式,则有可 能由于没能读到完整的数据帧而产生丢数据的现 象,特别是在有干扰时尤其严重.其次采用定时器方 式,由于受定时间隔的限制,上位机数据刷新往往与 仪表显示有一个较明显的滞后,即反映不够及时.以 常用的1200波特率的连续方式为例,串口发送一帧 数据需要100ms,那么理论上定时器的定时间隔至 少需要200ms,才可能保证能读取到一帧完整的数 据,实际中一般至少要将定时器的定时间隔设为 300ms到400ms以上.这样一来上位机数据显示要 比仪表显示滞后0.3 ~ 0. 4s以上,这种滞后可以明 显地察觉出来,而采用在OnComm事件中动态改变Rthreshold属性值的方法,一般情况下其滞后时间 只有0. 1s,几乎察觉不出来,即使在受到干扰的情 况下,其滞后时间也要比定时器方式少得多,从而做 到反应及时.其OnComm事件处理程序流程图如下 所示:
4.结束语
我们开发的地磅计算机计量管理系统虽然是针对地磅称重管理的,略加修改也可以适用于其 它的称重管理中,如轨道衡、平台称系统.该软件己 应用在多个企业之中,从反馈的信息来看,系统反应 迅速,运行过程稳定可靠,无数据丢失现象,使用效 果非常好.同时,由于采用了 DDE通讯方式,在对各 种称重仪表的支持方面表现出了很大的灵活性.系 统还可以很方便地查询各种称重数据,可根据需要 进行多种形式的统计并打印统计报表,实现了数据 的标准化管理,减轻了工作人员的劳动强度,提高了 工作效率和经济效益,基本杜绝了人为作弊现象,符 合企业现代化管理的要求.