您当前的位置:首页>>新闻中心>>行业动态

地磅销售报价系统的改进与实现

时间:2017-08-26 03:28:58   点击数:

本文的设计统以ATMEL89C52为核心采用PS7219LED动器实现,不仅克服了目前煤矿地磅销售系统的无法实时交易不足而且还实现了交易数据的实时显示以及语音提示功能。

1.引言

煤炭销售是煤矿企业中的一个重要环节,销售 系统的自动化程度将影响到整个煤矿的企业效率. 近几年,各大煤矿的地销煤系统中诸如煤的装载、过 秤、付款等过程大都实现了自动化。但在这些自动化 系统中,整个流程对客户来说都是不可见的,一切只 有等操作完成后,客户才在发票上看到自己的数据, 如果有差错或有其它修改,只能重打发票,这给销售人员和客户都带来了一些不必要的麻烦。

本文计对这些情况开发的系统不仅把交易数据 传送到前让客户能够参与现场销售,实时掌握 自己的交易情况而且还可以实现语音提示。

2.系统硬件总体设计

本系统以ATMEL89C52为核心采用 PS7219LED驱动器实现系统原理如图1所示

云网客1.jpg

2.1单片机选择

系统中使用的单片机是ATMEL89C52AT- MEL89系列单片机是由ATMEL公司生产,以8051为内核内含Flash程序存储器的MCS51兼容系列,8031/80C51的换代产品。89C52功能强、性价比 89C52功能强、性价比高,是ATMEL89系列单片机的标准型。

2.2显示驱动器选择

显示驱动器选用PS7219它是一个高性能,低 价格的多位LED显示驱动器。在性能上完全兼容 MAX7219并增添了位闪等功能^其接口采用流行 的同步串行外设接口SPI),可与任何一种单片机方 便联接,可同时驱动8LED(64只独立LED). PS7219内置一个可靠的pP监控电路,可为外部提 供一个脉宽大于140ms触发门限典型值为4. 63V 的高电平复位信号。

PS7219内部具有15X8RAM功能控制寄存器, 可方便寻址,对每位数字可单独控制、刷新,不襦重 写整个显示器显示亮度可由数字控制,每位都具有 闪烁使能控制位。引脚CON置高电平,可禁止所有 显示,达到降低功耗的效果,同时并不影响对控制寄 存器的修改。PS7219还有一个掉电模式,个允许 用户从1位数显示到8位数显示选择的扫描界限寄 存器和一个强迫所有LED接通的测试模式。N PS7219级联,可实现N*8LED的显示。

2.3硬件互连

系统共有六片PS7219驱动器,它们分别驱动一 个六位LED用以显示客户的煤车重量、车重、煤重、 应付款、实付款和找零,把客户的购买信息实时反馈 给客户。PS7219驱动器采用级联技术,把所有驱动 器的LOAD输入连接在一起,并把DOUT连接到相 PS7219DIN上,从而使单片机和驱动器之间的 连线大大减少的同时,还使数据传输更加可靠。六位 LED中,针对现场实际情况,小数点使用了定点连 线,虽降低了编程量,却不影响显示效果。PC机通过 串口和单片机进行通讯,它们的物理连接只须一个 MAX232电平转换电路。

3.系统软件实现

3.1通讯协议的设计

PC机向单片机一次发送20个字节数据包,数 据包第1个字节是开始字节标志,当单片机收到数 据后,首先判断是不是数据包的开始,然后才根据条 件做出是否接收的决定。从第2字节至19字节是数 据字节。最后一个字节是数据包的校验码,它是前面 18个数据字节的总和,这个总和首先在PC机中算 好,然后填充到数据包最后一个字节中发送到单片 机。单片机收到数据后,也把18个数据字节相加,然 后与最后一个字节值比较,如果相等,则表明接收数 据有效,否则接收数据无效。无论是在PC机还是在 单片机中,数据相加时,如果出现进位溢出,都舍掉 进位数据。这种方法有效地避免了数据传输时线路 的干扰问题,保证了整个系统的可靠性。

3.2单片机程序实现

单片机程序设计由串口、定时器、7219初始化 模块以及数据接收和发送模块组成。流程图如图2所示。

云网客2.jpg

云网客3.jpg

3. 2.1接收数据

3.3 PC机程序设计

PC机程序用Delphi开发,其核心为数据的打 包与发送模块和语音提示模块。数据包的发送功能 由串口通讯控件SPCOMM实现。语音提示功能则 借助于事先录制并加载成工程资源的语音库,通过 调用底层的Windows API函数实现具体的语音播 放。

3.3.1数据的打包与发送

根据数据通讯协议,数据发送前先对数据打包。 打包时用format函数把单个数据格式化成6位数 不足6位的前面补零,然后把所有数据组成一个字 符串。数据通讯使用免费串口通讯控件SPCOMM, 该控件使用比较简单,并且它具有丰富的与串口通 信密切相关的属性及事件,提供了对串口的各种操 作,而且还支持多线程。发送数据时先把打包后的数据以字节为单位送到SPCOMMsbuf[i]里面,然 后调用senddata函数把数据一次全发送出去。

3.3.2语音程序设计

语音程序设计的关键是设计语音库,把要在程 序中可能出现的语音字符分别录制成单个文件,然 后自定义成工程资源,供程序运行时调用。语音提示 时要把提示内容先统一转化成汉字字符串,再根据 判断使用API函数PlaySound调用语音库,从而实 现语音功能。

4.结束语

依据本文设计方案,以ATMEL89C52为核心, 采用PS7219LED驱动器,实现了地磅销售系统交易 数据的实时显示以及语音提示功能,有效地克眼了 地磅销售中用户不能实时参与交易的不足,同时提 高了交易数据的实时透明度,具有很大的现场应用 价值。