基于AVR单片机设计的手机自动售货机

发布者:岭南布衣最新更新时间:2013-11-06 来源: eefocus关键字:Atmel  ATmega128  手机自动售货机 手机看文章 扫描二维码
随时随地手机看文章

  引 言

  移动增值业务产品的核心特点是移动性、即时性和个人性。移动增值服务是在通信技术、计算机技术和互联网技术不断发展融合的基础上,在人们以信息为基础的各种应用需求快速增长的激励下,在社会信息化水平日益提高的前提下,迅速发展的一种全新的服务方式。由于移动通信自身所具有的可移动性、无时空限制性、专属性、安全性和时尚性的特点,加上基于这些特点之上的短信息、游戏、支付、定位、办公等丰富多彩的应用服务,使得我国的移动增值业务在短短数年里从无到有,迅速发展为欣欣向荣的产业。本系统采用的是以ATmegal28单片机为核心的自动售货机,通过BENQ的13SM/GPRS M22模块与服务器通信来实现以手机支付形式的移动增值服务系统。在实际设计过程中,考虑了自动售货机硬件平台在低温下运行的情况。

  1 自动售货机网络结构

  图1概述了移动自动售货机系统在实际运行过程中的网络结构框图。

  2 硬件设计

  自动售货机是用户直接面对的终端界面,主要实现功能为:

  ①货物存储和出货。自动售货机将销售商品存储其中,以一台饮料机为例,其中存储的饮料可以高达3OO台,并且自动售货机装备有恒温控制系统和密闭的储存空间,在各种复杂的气候条件下,均可有效的保证货物的储存周期。

  ②无线数据交换。自动售货机具备无线通信功能,可以和现有的(3SM/CDMA网络进行对接,接受网络侧发起的各种无线通信连接,也可以主动向GSM/CDMA网络发起连接。通过无线数据交换可以实现对售货机的无线远程控制,并可以实时获取售货机当前系统状态和销售情况,从而实现整个业务的交易流程可控。自动售货机支持的无线通信方式包括:SMS、USSD、GPRS和CDMA lX。

  2.1 单片机部分

  Atmel公司生产的ATmegal28单片机内部集成了较大容量的存储器和丰富强大的硬件接口:定时器/计数器、实时时钟、PWM通道、A/D转换器、12C的串行接口、可编程的串行USART接口、SPI串行接口、带片内晶振的可编程看门狗定时器和片内的模拟比较器等。它在省电性能、稳定性、抗干扰性能和灵活性方面极具特色。单片机系统采用5 V电源供电,外接电源为24 V,经LM2576s芯片开关电源转为5 V,为系统主电源。[page]

  2.2 LCD部分

  金鹏科技有限公司的OCMJ中文模块系列液晶显示器内含GB 2312 16×16点阵国标一级简体汉字和ASCII8×8(半高)及8×16(全高)点阵英文字库,使系统不用扩展外部存储空间。用户输入区位码或ASCII码即可实现文本显示。本系列模块具有上/下/左/右移动当前显示屏幕及清除屏幕的命令。OCMJ中文模块的所有初始化设置工作在上电时自动完成,实现了“即插即用”。同时保留了一条专用的复位线,可强制复位。规划整齐的10个用户接口命令代码,非常容易记忆。硬件接口采用REQ/BUSY握手协议,简单可靠。OCMJ5XlO模块的背光源正极引脚所需较大电流才能保证LCD的亮度,所以加9012三极管放大,三极管基极电阻的选择上一定要考虑低温下三极管的特性,以保证可正常驱动LCD。

  2.3 GSM/GPRS模块

  GSM/GPRS模块采用BENQ的M22模块,如图2所示。

  该模块采用的是标准的AT指令集,正常工作电压为3.3~4.3 V,5 V的VCC经过IN5401降压到4.3 V左右为模块使用,如图3所示。由于GSM/GPRS模块有瞬间脉动电流,在电路设计过程中加了1个2200 μF的电解电容可以满足模块的瞬间大电流需求。

  2.4 电机的驱动部分和电机的5×10控制阵列

  自动售货机吐出饮料的过程实际为电机动作推饮料下来。由于电机都是感性的,在停转的时候会有反向电流,所以需要用PC847光电隔离器把控制和驱动信号隔离开来,然后用L293D驱动电机。电机驱动需24 V电压.控制信号经过L293D后变为24 V左右的电源信号才可驱动电机。电机有三根线:电源、地线和反馈信号(电机转一圈送出一个低电平)。由于要控制50个电机,占用单片机15个I/O口,其中5个为行线低有效,10个为列线高有效,形成5×10阵列。当行为低、列为高的一个交叉点的电机动作推货物出来。在机械制作中使电机转一圈刚好推出一瓶饮料,电机转一圈同时产生一反馈信号,此信号使电机停止转动。另外一种情况是红外检测到有货物落下则电机停止转动。

  2.5 ISP下载接口

  JTAG的仿真器比较贵,用ISP下载加上串口调试达到节约成本的目的。ATmegal 28的PDI、PDO、SCK和RESET加上VCC和GND就构成了ISP接口。用广州双龙电子提供的下载线和相关软件送行熔丝配置。由表1可知:设CKSEL3..1为111,则配置为外置晶振8 MHz,用ISP下载线下载即可。用ATmega]28的串口LJSARTl与PC机通信,由超级终端来显示调试信息。

  3 自动售货机软件部分

  内置的主控模块控制自动售货机内部各部分流程进行实际的管理,包括:吐货流程、交易流程数据上报、LCD用户界面显示和故障上报。

  3.1 USSD无线通信方式

  USSD(Unstructured Supplementary Service Data)定义为移动台和网络应用之间经过归属位置寄存器(HLR)传递信息和指令的一种机制,它为移动通信用户提供基于文本的界面,用于管理用户的业务。USSD在通话状态下使用独立专用控制信道SDCCH(Stand-aIon(DedicatedControl ChanneD,数据传输速率大约为600 bps;而非通话状态时,USSD)使用快速辅助控制信道FACCH(FastAssociated Control Channel),数据传输速率约为1 kbps,比SMS传输速率高。[page]

  USSD在会话过程中一直保持通信连接,提供透明通道,不进行存储转发。由于USSD与GPRS类似,在交互中保持一个会话过程,每次数据发送不需要重新建立信道,所以USSD系统对用户的呼叫请求是即时响应,使响应时间大大加快,主要的响应时延已转移为应用服务器一端,响应时间比短消息快。USSD适合较少量的数据传输,USSD在交互式会话中可以提供直观的菜单操作,方便用户使用。在一次信息服务中,只需要拨打服务号码,以后就可以按菜单提示进行下一步操作,建立wAP的门户网站来提供电信增值服务。

  USSD的接口协议与短消息类似,采用SMPP或CMPP。SMPP是国际通用的协议,CMPP是中国移动根据我国情况在SMPP基础上自己制定的协议,二者体系结构大体相同,应用范围也相同,但数据包的格式及内容有一定的差异。CMPP现在已升到了3.O。本系统中采用CMPP,消息分为消息头和消息体,其中消息头长度是固定的。主要信息为消息总长度、命令类型和消息流水号。命令类型用来说明消息的类型是连接,还是由USSD中心到业务提供者SP(Service Provider)的消息或由SP到USSD中心的消息等。消息流水号顺序累加,步长为l,循环使用,一对请求和应答消息流水号必须相同。有一个请求消息回应是否成功的状态信息。消息体则根据消息的类型和内容来决定长度和数据,但其所携带的自定义信息长度不超过160个字节。自定义信息即平时通过手机输入或接收的短消息内容或工业通信中自定义的通信规约部分。相对于SMPP而言,CMPP增加了许多信息,尤其是计费和号码的信息。

  3.2 自动售货机程序设计

  自动售货机控制板的程序用C语言编写,开发环境用Atmel公司提供的ICCAVR。控制板程序框图如图4所示。

  3.3 自动售货机交易流程图

  自动售货机交易流程如图5所示,鉴于小灵通无法采用USSD和GPRS等实时数据传输方式,所以采取IVR(互动式语音应答业务)方式。

  ①用户通过IVR/短信方式发出购物请求,IVR/短信平台将用户请求转发给应用服务器。

  ②应用服务器解析用户指令,根据用户输入的售货机编号和货道号,在数据库中查明货物类型、价格等信息后,向BOSS系统进行用户身份验证和扣费/扣积分操作。

  ③BOSS系统通知应用服务器扣费/扣积分成功。

  ④应用服务器通过GPRS方式向售货机发出控制指令,要求售货机对用户指定商品进行吐货。

  ⑤售货机吐货,用户成功获得商品。

  ⑥售货机通过GPRS通知应用服务器交易成功。

  ⑦应用服务器向用户发送短信,告知用户交易明细。

  4 服务器简介

  应用服务器主要实现整个业务的后台管理。

  (1)交易流程管理

  从用户发出购物请求到实现商品吐货整个流程的有序管理和各种交易失败补救流程的实施。

  (2)物流管理

  对服务器管理的所有售货机商品的销存情况进行管理,并可以实现物流人员的实时自动调配、通知等。

  ①统计分析。对业务情况按天、周、月(或者指定要求)进行统计,包括销售情况、故障情况、扣费/扣积分情况、对帐情况、物流人员工作量等情况进行详尽的统计分析,以供管理人员参考。

  ②计费和对帐。实现和移动BOSS系统的对接,实现话费支付和积分支付两种功能,并能自动按天对帐务进行核对,当双方帐务超出预期误差,自动对每条交易进行比对,并发出短信报警。

  结 语

  本系统已实际生产并在实用中取得了良好的效果。手机自动售货机的移动增值服务是一种新的商业模式和新的市场渠道,并拥有众多的客户群体。由于移动电子商务的移动性、便捷性和安全性,必将吸引众多商家和客户利用其进行经营和消费活动。这将导致移动价值链的形成,成功绑定用户,使其融人社会的各行各业,使社会的各行各业都离不开移动,最终形成“多赢”的局面。银行通过移动电子商务平台延伸其影响范围,形成口袋中的理财助理,用户可以随时随地使用银行的服务。用户将会深信不疑的理解为:手机就是银行发放的电子信用卡。

关键字:Atmel  ATmega128  手机自动售货机 引用地址:基于AVR单片机设计的手机自动售货机

上一篇:ARC功率因数自动补偿控制仪的原理及其应用
下一篇:AVR IP核复用的FSPLC微处理器SOC设计

推荐阅读最新更新时间:2024-03-16 13:30

Atmel Studio 7.0 快速上手指南(基于ASF)
就在最近,Atmel终于推出了新版本IDE——Atmel Studio 7.0,该版本采用了微软最新的 Visual Studio 2015 平台,在速度、性能和代码视觉风格上都体现的淋淋尽致,用起来非常顺手,下面将结合实例,介绍AtmelStudio 7.0 的使用方法。 第1步:打开Atmel Studio 7.0 第2步:新建工程项目 第3步:选择芯片型号 第4步:添加ASF驱动库 第5步:查看ASF驱动使用说明 第6步:编写代码 源码: #include asf.h //包含Atmel MCU软件库头文件 #define LED PIN_PC27 //
[单片机]
<font color='red'>Atmel</font> Studio 7.0 快速上手指南(基于ASF)
基于单片机和μC/OS-II的在线钠离子分析仪的设计
   1 引言   水和蒸汽是热力系统中的锅炉、汽轮机、过热器等设备的重要工作介质。当火力发电厂正常运行时,热力设备中都有水或蒸汽在流动。水、汽的品质都有规定的指标,一旦水、汽品质的指标超标,就会加速热力设备的腐蚀、结垢和积盐。当水汽中携带一些含钠的杂质时,将会导致汽轮机金属材料的点蚀、应力腐蚀或腐蚀疲劳,这些腐蚀通常会造成重大的经济损失。严重时甚至造成重大事故。钠离子含量是发电厂水汽品质的重要指标之一。因此,为防止结垢、结盐,减缓系统中金属部件的腐蚀。保证系统的安全经济运行,必须对电厂水汽系统中钠离子含量进行严格监测和控制。    2 测量原理   钠离子的测量是基于电化学中的电位分析法,由测量电极和参比电极及待测溶
[嵌入式]
ATmega128 time1溢出中断。定时器1在该模式下用法和51的一样
#include iom128v.h #define uchar unsigned char #define uint unsigned int #pragma interrupt_handler timer1:15/*定时器溢出中断向量标号*/ uchar t=0; void timer1() { TCNT1H=(65536-50000)/256; TCNT1L=(65536-50000)%256; t++; if(t==20) { t=0; PORTA=~PORTA; PORTA|=0xfe; } } void IO_init() { DDRA=
[单片机]
Atmel 的picoPower 技术延长电池寿命
Atmel(R) 的 picoPower(TM) 技术能使“节能”的电耗降低到仅有650nA,即使是在 32 kHz 时钟和高级欠压探测 (Brown-out-detection) 的运行情况下也是如此。这是业界同类产品的最低工作电流。 Atmel AVR 营销经理 Asmund Saetre 表示:“对于众多应用产品来说,长达几年的电池寿命将是一个必须的要求。人们并不真的喜欢更换他们汽车钥匙或者家里 HVAC 系统中的电池。电池使用寿命非常重要,甚至已经成为 ZigBee 规范的一部分。ZigBee 终端产品的电池寿命至少必须达到2年,否则就不会通过认证。” Saetre 总结说:“我们为之开发 picoPower 的系统有
[应用]
爱特梅尔发布业界首个开放源码AES-128防盗器协议堆栈
爱特梅尔公司(Atmel® Corporation) 宣布采用开放源码许可方式发布基于AES-128加密标准的完整的防盗器(immobilizer)协议堆栈 。该公司是业界首家提供开放源码防盗器协议堆栈的厂商,这一举措彰显其致力于推动全球汽车电子市场发展,帮助工程师缩短其设计的上市时间。 由于防盗器是现今几乎所有遥控车门开关(RKE)/被动无匙门禁(PEG)系统的部件,不同IC供应商器件之间的互用性,以及器件安全强度的真正的同等评议能力(peer-reviewing)变得极为重要。爱特梅尔已经决定以开放源码许可的方式推出防盗器协议堆栈,允许业界所有参与企业在规定的法律体制内进行评审并提供建议。 爱特梅尔公司汽
[单片机]
Atmel推出32位AVR® 32微控制器AT32UC3L
爱特梅尔公司 (Atmel® Corporation) 宣布推出采用其picoPower™ 低功耗技术和嵌入式电容性触摸控制器外设的32位AVR® 32微控制器,型号为AT32UC3L。该器件是业界功耗最低的32位微控制器,在处理实时应用时的工作模式下,功耗低至0.48mW/MHz。AT32UC3L还是首个具有内置电容性触摸界面的微控制器产品,适用于广泛的嵌入式应用。AT32UC3L 的推出扩展了爱特梅尔包括ARM 及AVR32 产品的 32位MCU系列。 picoPower 技术设定全新的 32位微控制器功耗标准:AT32UC3L 采用爱特梅尔的picoPower 技术,在32 KHz 实时时钟工作模式下的耗
[单片机]
<font color='red'>Atmel</font>推出32位AVR® 32微控制器AT32UC3L
Atmel电视机直接背光LED驱动器特性及应用电路
Atmel公司MSL4163/MSL4164是电视机直接背光LED驱动器。MSL4164具有20MHz SPI总线,每串LED的电流为100mA,电流精度和匹配度优于3%,可驱动16x10个白光LED,16个器件级联可驱动高达2560个白光LED。MSL4163提供1MHz I2C串口,器件包括先进的PWM引擎以及片上EEPROM等。主要用在电视和台式电脑监视器、医疗、工业仪表和汽车音/视频显示器。本文介绍了MSL4163/MSL4164主要特性、方框图和典型应用电路、级联连接电路。 MSL4163则提供1MHz I2C串行接口,这种接口都能够为16个级联器件实现视频逐帧LED串强度控制,从而实现了有效区域调光。该器件采用了先
[嵌入式]
ATmega128 空闲模式
当SM2..0 为000 时, SLEEP 指令将使MCU 进入空闲模式。在此模式下,CPU 停止运 行,而SPI、USART、模拟比较器、ADC、两线接口、定时器/ 计数器、看门狗和中断 系统继续工作。这个睡眠模式只停止了clkCPU 和clkFLASH,其他时钟则继续工作。 内外部中断都可以唤醒MCU。如果不需要从模拟比较器中断唤醒MCU,为了减少功耗, 可以切断比较器的电源。方法是置位模拟比较器控制和状态寄存器ACSR 的位ACD。如 果ADC 使能,进入此模式后将自动启动一次转换。
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved