自动售货机系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
摘要:本设计利用通讯领域的前沿技术GPRS网络,采用能够实现远程测控的GPRS模块,以实现自动售货机的远程管理。
关键词:自动售货机;MDB;GPRS;SIM300C
引言:
自动售货是20世纪70年代在日本、欧美发展起来的一种全新的消费方式,自动售货机又被称为24小时营业的微型自助超市,它的售货领域非常广泛,是发达国家商品零售的一种主要方式。近几年,自动售货机在国内迅速普及,逐渐被越来越多的消费者所接受。但由于售货机分布零散、范围广阔的特点,自动售货机在为消费者带来方便的同时,也为经营者在监控、管理、维护等方面带来很大的不便。目前售货机运行的各种情况都需要由人工判断,包括缺货、缺零钱、币箱已满、售货机机械故障等,经营者普遍采用人工定时巡回视察的管理办法,既费时费力,又无法及时准确获取自动售货机状态报告,给经营者增加了管理成本和难度,也有可能给消费者的正常消费造成不便。
本系统的设计和实现可以使自动售货机的经营者可以根据网络统计的销售状况进行商品销售状况分析,预测商品的销售走势,确定合理的采购和配送策略,以期获得最高的投资回报率。同时售货机的一些故障信息和警报信息可以实时的传送到相应运营人员,从而可以在第一时间内发现并解决问题。
1 GPRS通信
1.1 GPRS通讯技术优势
在自动售货机无线管理系统实现的前期,大部分都是采用GSM(Global System for Mobile Communications)通信技术来实现的,GSM是一种电路交换系统,通常使用短信形式传送数据:用户发出的短消息首先被发送到短信息中心的服务器中,然后短信中心的服务器对所收到的短消息进行排队处理,按顺序再发送给相应的接收用户终端,很容易发生短消息拥塞,造成短消息丢失,同时短消息在短消息中心服务器中保留的时间也有一定的期限,无法做到“实时在线”、“按量计费”,另外每一条短消息只能传送140个字节,大大限制了使用的灵活性和应用范围,增加了通信成本。
GPRS是通用分组无线业务(General Packet Radio Service)的简称,是在GSM系统基础上发展起来的分组数据承载和传输业务。GPRS与GSM系统最根本的区别是,GSM是一种电路交换系统,而GPRS是一种分组交换系统,具有"高速"和"永远在线"的优点。与GSM比较,GPRS在数据业务的承载和支持上具有非常明显的优势,更有效的利用无线网络信道资源,特别适用于间歇、非周期数据传输、少量的数据传输,较大容量数据不频繁传输等。GPRS的技术优势资源利用率高,接入时间短,支持IP协议和X.25协议,收费合理等。
GPRS网络是在现有GSM网络中增加GGSN和SGSN 来实现的,使得用户能够在端到端分组方式下发送和接收数据。其系统结构如图1所示。
1.2 GPRS通信模块的TCP/IP协议及AT指令
目前市场上的主流通信模块大都内嵌TCP/IP协议,只要通过几条AT指令就可连接到INTERNET,实现数据发送,如果使用APN网还可以维持终端的IP地址和端口,实现实时的双向通信,现将笔者采用的SIMCOM公司的SIM300模块中常用的AT指令列表如下:
如果数据中心有数据发送到通信模块,数据将自动的接收,通过串口发送到单片机系统,如果需要还可以通过上述的A T+CIPHEAD指令来设置数据的祯头信息。
2自动售货机接口
售货机是通过MDB协议协调主控制器(VMC)与多个外设之间通信,本系统也是通过MDB协议同售货机通信的,以下介绍一下MDB协议。
2.1 MDB协议的实现
MDB接口实际上是工作于9600波特率的主从型串行总线接口,所外围设备(例如硬币机、读钞机、读卡器等)均为主控制器(传统上称售货机控制器——VMC)的从机。所有外围设备与VMC之间的通信方式都一致。
MDB协议的串行位格式为:1个起始位,8个数据位,1个方式位与1个停止位,共11位。位传递的顺序如图2所示。其中方式位根据传递的方式不同置0或置1。在MDB总线上,VMC通过广播方式向外发送命令。第一字节为地址字节(实际上只有高5位寻址信息,低3位为对外设的指令),该字节被所有的外设读取,但只有符合地址字节所指定的外设才处理其后的数据字节,并做出反应。在VMC到外设的数据中,地址字节的方式位被置1,数据字节的方式位被置0,外设通过检验接收到的方式位确认是地址命令还是数据。当数据从外设发送到主机时,最后送出的字节方式位被置1,标志着数据发送完毕。
VMC向外设传送的指令由一个地址字节、一些可选的数据字节与一个校验和(CHK)字节构成。发送指令后,外设应答VMC的通信块可以由一个数据块和一个CHK字节组成,或者一个应答字节(ACK),或者一个无应答字节(NAK)。如果外设应答数据块的话,VMC 将通过一个应答字节(ACK)、无应答字节(NAK)或得发字节(RET)应答外设传回的数据。
图3至图6为几个典型的会话例子,其中“*”表示传送时方式位置1,“ADD”表示地址字节,“CHK”表示传送数据的校验和。
2.2主要功能的实现
●管理员设置模式检测:当维护员进行维护时,要先将主板上的拨码开关拨至维护模式;维护完成后再拨回销售模式。否则主板会检测到模式错误并及时通知控制中心。
●故障信息和检测:若售货机终端的主要机械部分出现故障而不能及时发送特定的信号给控制中心,就说明该部分设备处于不工作或不正常的工作状态。如当纸币机、硬币机出现故障时,主板CPU会接收到相应的错误信息,并对错误信息解析后发给控制中心。
●缺货、缺币报警:当售货机料道的某种商品临近缺货或硬币机内的硬币数量少于一定值时,系统会及时发送报警信号通知控制中心,以便得到及时的补充。
●售卖信息:当有售卖操作发生时,中空板将相应的信息按照MDB协议数据。
3 系统组成和实现方式
3.1 硬件部分
(1)硬件组成
自动售货机接口系统部分的硬件主要由单片机部分、GPRS模块部分、数据存储部分、电源部分以及时钟部分。
●单片机部分:选用美国Cygnal公司的C8051F023,该芯片内集成了构成一个单片机数据采集或控制系统所需要的几乎所有模拟和数字外设及其他功能部件,为设计小体积、低功耗、高可靠性、高性能的单片机应用系统提供了方便。
●GPRS模块部分:选用SIMCOM公司的SIM300C,且操作非常简单,价格便宜,内嵌TCP.IP协议,大大降低了开发时间。
●数据存储部分:选用美国ATMEL公司的AT24C256,该芯片可以进行100,000次擦写,断电后可保存数据100年,可以有效保存通信参数,售卖信息,故障等相关信息。
●电源部分:为了系统的稳定性,系统给SIM300C单独供电,SIM300C采用NS公司的LM1085-ADJ,3.6V供电,单片机等其他部分用LM1085-3.3供电。
●时钟部分:选用DALLAS公司的DS12C887,可以利用其周期性中断和多频率输出的方波来控制数据的定时发送。
3.2 软件部分
该软件采用C语言完成,主要有初始化模块,中断服务模块,数据处理模块,数据发送,接受数据处理五个部分组成:
●初始化模块:设置通信参数(IP,端口,APN),有无未发送的售货机信息等,设置通信模块的初始参数,定时器、串口、中断、时钟芯片等的初始化工作。
●中断模块:定时器中断,串口数据发送接收中断,时钟芯片中断等。
●数据处理:售货机售卖信息,货物状态信息,料道故障信息,纸币器、硬币器故障,以及售货机和本系统之间的数据处理。
●数据发送:将售货机相关信息发送到数据中心,如果采用公网作为通信载体,还需要发送维持网络连接的脉冲信息等。为了保证数据发送的可靠性,数据发送部分还包括在未收到数据中心的应答信息所采用的重发机制。
●数据接收:接受来自数据中心的数据,并根据协议解析、处理。
在数据传输可靠性方面,我们对数据采取先存储后转发的机制,并且在数据传输时采用握手协议,控制中心在收到上行数据帧后,应在约定的时间内发送回应信息给接口模块,如果模块在约定的时间内未收到回应信息,则应该继续发送该帧数据,直到收到为止。
4控制中心部分部分设计
4.1 系统运行环境
OS: Windows 2000 server
数据库:SQL SERVER
硬件要求:CPU:PIII 800M以上