称重管理系统串口通讯设计与实现

类别:公司新闻 时间:2018-01-26 点击:178 次

文章结合称重管理系统,介绍计算机与显示仪表串口通讯的实现方法及汽车衡称重管理系统的具体实现。
在现代企业的生产销售过程中,电子汽车衡在称重环节中得到了广泛的应用。大多数厂家生产的汽车衡都有 配套的企业业务管理软件,但通常和企业的实际业务需求有较大出入,只能实现简单的重量显示和打印功能。采 用这种方式效率低下,无法充分发挥设备的功效,更不能满足现代企业管理信息化的需求。所以许多厂家通常需 要结合自身的业务特点对购买的汽车衡设备进行二次开发,本文以称重管理系统为例,介绍如何通过称重仪表与 计算机进行串口通讯从而实现了称重的自动化、票证管理的现代化以及票证信息的网络资源共享。
一、系统结构
根据称重管理系统,设计出如下的系统结构图:

当运输设备在汽车衡上停稳后,汽车衡的压力传感器将压力弹性形变转换成:T30V的电信号,并传送给称重 显示仪表,仪表对输入的电信号进行调理、放大、A/D转换等处理后,最后送到计算机串口,在计算机上对获取 到的数据流进行加工、处理后,形成称重数据,最终形成所需的磅单并进行票据打印。并将数据传到数据库服务 器上,从而在整个企业内部网内实现称重数据的传递与共享。
二、串口连接与串口通信的实现
(一)串口的基本连接方法
现在大多数的仪表本身带有两种通讯接口,一个是打印机并口,另一个是通用的标准RS-232串口。由于串 口和并口相比有许多优点,如:RS-232串口硬件电路简单,只要使用MAX232等芯片进行上位机RS-232电平下位机TTL电平的转接即可。其次,在RS-232协议规定的传输距离(50英尺)内,传输可靠性很高且不易受到干 扰。
目前较为常用的串口有9针串口(DB9)和25针串口(DB25),通信距离较近时,可以用电缆线直接连接标 准RS232端口(RS422,RS485较远),需附加调制解调器(MODEM)。最为简单且常用的是三线制接法,即地、接 收数据和发送数据三线对应相连,表1中给出三线制接法各引脚的连接法,本系统中采用的是计算机的9针串行 通讯口与称重仪表的25针串行通讯口相连。
(二)串口通信的实现
本系统采用Delphi作为开发工具,实际中无论采用何种编程语言,实现串行通信的方法主要有以下几种:
1.利用Windows API通信函数。
2.利用标准通信函数,如:inp( )、inpw( )、inpd( )、outp( )、outpw( )、outpd()等直接对串行口进 行操作。
3.使用Microsoft通信控件MSComn。
4.利用第三方编写的通信控件类,如SPComm、Cserial等。
5.自行开发通信控件。
在几类方法中,第一种使用面较广,但由于比较复杂,专业化程度高,使用较困难;第二种需要了解硬件电 路结构原理;第三种方法通用性较强,开发难度低;第四种使用也较多,但安装通信控件类比较复杂;第五种使 用面较窄,要根据自身的实际情况去编写。结合上述特性和Delphi开发环境的特点,本系统利用MSComm控件去 实现串口通讯。
 三、通讯程序的设计
(一)MSComm控件简介
 
MSComm控件(即 Microsoft communications control)是 Microsoft 公司提供的简化 Windows 下串行通信 编程的ActiveX控件,这为应用程序提供了串行通讯功能,为应用程序提供了通过串行接口收发数据的简便方法。 它可以作为第三方控件安装到Delphi中。
MSComm控件有查询和事件驱动两种通信方式。
(二)MSConun控件的常用属性和方法
1.使用MSComm控件的第一步是建立与串行端口的连接。
2.Input、Output属性可以传输文本数据或二进制数据。
3.Setting。设置或返回串口通信参数,格式为字符串形式:“波特率,奇偶校验位,数据位,停止位”。例 如:MSComm1. Setting::' 9600,N,8, 1,
4.PortOpen。设置或返回通信端口的状态,以及打开或关闭串行端口,格式 为:MSComm1. PortOpen: = {True|False}
5.InBufferSize。设置或返回接收缓冲区的大小,缺省值为1024Bytes。
6.OutBufferSize。设置或返回发送缓冲区的大小,缺省值为512Bytes。
7.InBufferCount„返回接收缓冲区内等待读取的字节数,可通过设置该属性为0来清空接收缓冲区。
8.OutBufferCount„返回发送缓冲区内等待发送的字节数,可通过设置该属性为0来清空缓冲区。
9.InputLen。设置或返回接收缓冲区内用Input读入的字节数,设置该属性为0表示Input读取整个缓冲 区的内容。
10.Input。从接收缓冲区读取数据。类型为Variant。
11.OutPut„向发送缓冲区写数据。类型为Variant。
Input、Output属性可以传输文本数据或二进制数据。用Output属性传输文本数据,必须预先定义一个字 符串,并传递一个包含字节数组的Variant到Output属性。正常情况下,如果发送一个ANSI字符串到应用程序, 可以以文本数据的形式发送。如果发送包含嵌入控制字符、Null字符等的数据,要以二进制形式发送。用Input 属性接收数据时,必须要有接收缓冲区数据的字符串。如果在通信过程中发生错误或事件,就会触发OnComm事 件,并由ComnEvent属性代码反映错误类型,在通信程序的设计中可根据该属性值来执行不同的操作。
四、称重管理系统的具体实现过程
(一)系统功能模块的设计
1.称重功能模块:实现称重数据的采集,将仪表中的数据读入计算机,一次是毛重,一次是皮重,由系 统自动计算出净重,并将相应的信息以票据的形式打印出来,一份交售货人,另一份留底。
2.基本信息管理模块:主要包括售货人的基本信息、产品信息,司磅员信息,验收人信息以及系统管理的 不同权限的用户信息的管理,即信息的增、删、改。
3.财务结算模块:主要是根据售货人所持票据,在系统中调出相应的信息、并进行付款结算。
4.信息统计功能:对毛重、皮重、净重、总付款、已付款、未付款和售货人等信息进行按时间段进行灵活 的统计和多口径的查询。
5.系统配置模块:对磅单格式、货物单价、配置串行口及起它一些默认参数进行设置、更改。
6.权限管理模块:可根据实际需要,由管理员动态设置不同类型权限等级,并设置相对应权限的用户。
7.退出系统:可注销、重新登陆和退出系统。
(二)数据库管理系统
由于本系统在网络环境下进行动作,一般小型数据库不能满足需要,需要大型的网络数据库,鉴于本系统在 Windows平台上运行,故选用Microsoft公司开发的SQL Server数据库管理系统,它具有很多优点,故本系统 选用SQL Server 2000数据库管理系统,并安装在数据库服务器上。
(三)代码的编写
根据软件工程的思想,在系统开发前期设计工作完成后,接下来就是系统的具体实现,其中重要一步为代码 的实现,在代码实现过程中,要力求代码的简略、易懂,并保证较高的程序执行效率。
(四)系统的测试
程序设计完毕,就进入了系统的测试阶段,这一阶段至关重要,只有经过测试的系统,才能真正投入到实际 的生产管理中,我们根据用户在实际使用中发现的问题和要求,不断对系统进行改进,力求完善,让用户满意。
五、结束语
系统投入使用后,极大的提高了计量速度与生产管理效率,并且扩展性较好,随着生产规模的不断扩大,可 以增加多个磅房,达到并超过了原设计能力,具有良好的经济效益。整个系统具有较高的实用价值和推广的应用 价值。

中国领先的称重软件技术提供商

The Leading Provider of Geomatic Solutions in China

展开收起网站地图