在称重计量领域中,静态电子汽车衡、静态电子轨道衡的应用越来越普遍, 而采用计算机参与计量工作更显示出管理的快捷与高效。在众多专用计量软件的设计过 程中,用户对软件的科学管理功能提出了更高的要求,现将通过实例介绍这类软件的开 发与应用。
计算机在称重计量领域得到越来越广泛的应用,单纯的计量管理软件已不能满足日 益发展的计量耍求,冈此有些特殊行业的用户对计算机计斌软件科学管理方面提山更高 的要求,这使得软件工作者有必要对计量软件在科学管理方面的设计应用予以研究与探 讨,下面是几则软件设计应用的实例:
1.平台秤物料称重软件的设计应用
我们曾为收购物资的行业设计过数台平台秤,这种平台秤的秤台面均安装有白 动翻斗,该翻斗用于倾倒物资。该平台秤釆用计箅机管理,控制方式如图1所示。
有时计量人员不在现场,使用中常发现翻斗倾倒物资不彻底成并没有倾倒物资乂进 行第二次称量的情况,使收货单位蒙受了经济损火。鉴丁•此,我们开发了体现管理更趋 于科学性的软件产品,该软件设计中增加了相应的防范措施,设计思路如下:
(1)每次称重计量的前提是必须从“空秤”(货物彻底从平台秤上移走)开始,而 且仅能计量一次,重新计量或多次计童同一物料均视为无效。
(2)并设定“空秤”范围0-5kg、重荷范围It-2t,两个重最范围均可视情况而定。 (3)软件监控模块原理流程如图2所示:
关键部分代码编制(采用Borland C+H吾言)如下。
主控计量模块: void control(void)
(long weight, //定义采集的重li:数值变景。 zero一flag: //定义“空砰”标忐变量。
//当重量数值在0-5kg范围之间时,zero一flag=0;
//当重量数值在lt-2t范围之间时,zero—flag=l。 char *state; //计量衡器称重过程中动静荷状态标忐,当*static= ‘S’表示 //上衡物体稳定,为静荷。
weight=0; //初始化重量值变量。
//采集仪表重量值数据weight。本部分稈序编码略zero_flag=l; //初始化“空秤”标忐变量。H的是防止非空秤状态下的违章
//计量。
if (weight<=5) zero_flag=0;
//采集计量衡器称重过程中动静荷状态。本部分程序编码略。
if (*state==’ S’ &&zero_flag==0&&weight!=0)
{ /*净荷时才许计W:*/
//将称重数据weight的值存储到计算机称重数据痄中。本部分稈序编码略。
//由打印机输出有关计量单据。本部分稈序编码略。 zero_flag=l;
//计量软件弹出聱示窗口,报告操作者“本次称里完毕,访将物料卸空。本 //部分程序编码略。
{ else}
//若不满足上述条件,计童软件弹山警示窗n,报告操作者“条件不能满足, //称重受限。本部分程序编码略。
}
}
注:对本程序所略编码部分感兴趣的读者,可与本文作者联系。
此软件经用户单位验证,在使用中收到了良好的效果。后来该产品乂被其他行业采用, 并得到了推广。
2.计算机自动称量软件
笔者在衡器计量软件的开发过程中,控遇到一矿山行业的轻轨衡(小域程静态轨道 衡)用户,希望采用计算机管理后,能够达到无人操作、计算机a动称域的s的,即软 件实现智能化。分析用户要求,也就是要计算机能自动识别矿用称重并存储称重数据(计 量精度应适当放宽要求),这在一定程度上增加了软件设计的难度。然而,在软件开发中 可以紧紧把握两个环节:车辆上衡称重的特点是每节车辆上衡后静止时间约15秒:仪表 数据传输的实时性。
下面探讨一下软件的实现途径及相应的环货分析:
(1)仪表数据传输,其数据格式中包含:状态标志(静荷、动荷、超载、空秤等)、 重景数据。
(2)车辆上衡特点:车辆平稳上衡-在衡上保持静1h约15秒-车辆平稳卜衡。
以两辆车辆先后上衡为例,其称重曲线可描述如图3所示。
由此可见,车辆在衡上约15秒钟静1卜区的屯量A (第-辆车辆重)、B C笫二辆午辆
觅),基本反映了其实:际:EM。因1定A、B重量的动计M:逻辑流祝可编制如闯4所示。
在现场控制过程中遵循的原则是:计景时需从"空枰"开始,乍辆快速上衡后至少静 不动15秒,规定正常称重物须人于100公斤才予识别。• W车辆的成功计tt后,将驱 动发声系统给予提示,此时车辆快速下衡,进行下一竹车辆的称逛。
关键部分代码编制(采用Borland C++语言)如K。
土控计景模块:
void AutoControl(void)
(long weight, //定义采集的重量数值变tt。 datals[10], //定义十个重景数值变量。 add, //数据累加变貴。
gross; //毛重值变铽。 int order, //允许称量标志变tt。
//当不允许系统称量时,order=0;今允i午系统称;W;时,order=l。 success, //成功采集十组数据的标志。
//当采集数据不成功时,success=0;当采集数据成功时,success=l。
i ;
char *state; //计最衡器称重过程中动静荷状态标忐,半*static=’S’表示
//上衡物体稳定,为静荷。
//初始化重量值变量。
//初始化允许称讨标志变tt。
//初始化数据采集情况变tt。
//采集仪表重量值数据weight。本部分程序编码略
if (weight~0)
order=l; if (order==l&&weight>100) {for (i=0;i<10;i++)
{if (*static—' S') {datals[i]=weight; sleep⑴;}
i=10;} if (i==9)
//计莆时需从"空秤"开始。 //允许称重标忐。
//毛重人于100KG才检测。
//衡器处丁静止状态。
//存储一绀重tt值。
//延时。
//衡器不处丁•静止状态;
//没有完成整组数据地采集 //跳出本循环。
success=l; if (success~l) {for (i=0;i<10;i++) add+=datals[i]; gross=add/10;
//在一个时间段内完整地采集了十组数据。
//十组数据累加。
//计算平均值作为毛重值。
//取出皮重值,计算净重。本部分稈序编码略。 //计量信息存储,并输出打印计W;单据。
//本部分程序编码略。
//驱动卢音设备,提示本车辆己完成称重。
//本部分程序编码略。
order=0; success=0;
若循环运行本程序模块实时检测,即可对车辆的每节车辆进行迮续计量。
注:对本程序所略编码部分感兴趣的读者,可与本文作者联系。
实践证明,此软件具备称重的可行性。
3.计算机的智能打印
计算机的智能打印就是用计算机编制软件,驱动打印机实现诸如:纸张检测、自动 进纸、退纸、自动定位纸张、套打票据等功能。由于这部分软件开发比较界易,在此不 作详细介绍。
4.具备语音提示及报譬功能的多媒体软件
这类软件的运行需耍多媒体计算机支持,只需在软件设计中根据特定的条件加入相 应的语音、图象文件即可,从而实现更加友好的人机对话功能。
以上四类实例的程序编码从略,感兴趣的读者可与作者联系。
总之,随着人们对计景软件更深入的研究与开发,智能性软件必将服务于更广泛的 行业领域。