微波EDA网,见证研发工程师的成长!
首页 > 通信和网络 > 通信网络技术文库 > 基于ARM7和ZigBee的无线点菜系统设计

基于ARM7和ZigBee的无线点菜系统设计

时间:04-07 来源:互联网 点击:
引言

短距离通信技术业已在酒店业得到较好的应用,其技术日臻成熟。一些西方的大型酒店业采用了WiFi技术,其适用于高成本、大规模的应用,由于得到大企、IP的支持,技术较成熟;国内也有部分中小企业使用了ZigBee技术.其其系统本身成本依旧偏高。本文采用了ZigBee技术,结合32位ARM微控制器的高性价比、低功耗、执行速度快、性能高等优点,针对中小酒店业的需要,提出了一种低成本,小规模虚用系统设计。ZigBee是基于IEEE802.15.4规范的无线技术,工作于免授权的2.4GHz频段.是一种近距离、低复杂度、低功耗、低数据传输率、低成本的双向无线通信技术,具有省电、可靠性高、成本低、时延短、安全、网络容量大和易于组网等优点,支持多种网络拓扑结构,如星型网、互连的星型嘲和煳站网等。

1 功能介绍

本系统由服务员手持的带ZigBee无线数据通讯功能的手持终端机,安装有ZigBee无线数据中心组的控制中心,负责结帐、咨询的柜台收银机和通往厨房的厨房云台组成。其中,控制中心、柜台收银机和厨房云台均由PC机构成.并组成局域网。利用该系统,服务员或顾客可以随时随地使用手持终端机进行点菜、加菜、结算等工作,并即时把数据传到控制中心服务器。在控制中心端,安装有ZigBee无线数据中心节点,可以在有效范围内与手持终端机进行随时随地的通讯,并负责后台的数据维护管理。柜台收银机主要完成结帐、咨询等工作。厨房云台通过LAN接收来自控制中心的菜单信息,并反馈厨房的信息,及时由服务员通知客户该菜单信息,如某菜式缺乏原材料无法完成等。


图1无线点菜系统结构示意图

2 系统硬件设计

选用的MCU有LPC2210和MC9S08GT60,采用了freescale公司的MC13192[2]射频芯片,外围扩展了2MB的NOR FLASH(用于存放BootLoader)平ll 16MB的NAND FLASH,8MB的RAM,TFT4267液品屏,4x4矩阵式键盘ZLG7290。


图2系统核心硬件设备

2.1 ZigBee网络配置

ZigBee尤线网络可采用多种类型的网络配置。本设计使用星型网络实现通信。星型网络配置由一个协调器节点(主设备)和一个或多个终端设备(从设备)组成。在星型网络中,所有的终端设备都只与协测器通信。

根据系统需求,协调器会在非易失性存储器中存储所有网络关联,称为邻接表。为了连接到网络,终端设备可能执行孤立通知过程来查找先前与之关联的网络或者执行关联过程来加入一个新网络。在执行孤立通知过程的情况下,协调器将通过查找其邻接表来识别先前与之关联的终端设备。

2.2 MCU和MC13192的连线

除了接SPI口的4根线,MC13192的IRQ引脚接MCU的外部中断,ATTN、RXTXEN、RST引脚则分别接MCU的一个GPIO引脚,CLKO脚接MC9S08GT60的EXTAL 引脚,已经有外部晶振的MCU是可不接此引脚,以为MCU提供时钟输出。

3 系统软件设计

在手持机端,本人将bootload代码固化到NOR flash中,uCLinx镜像文件固化到外部的NAND flash当中,当处理器上电复位时,自动加载bootload代码并且运行,此后bootload程序将uCLinux镜像加载到RAM运行。

3.1 手持终端数据收发

主要对MCU的寄存器的初始化,链接MC13192引脚的初始化,存储器重映射等;对MC13192的初始化主要包括,对寄存器的赋值及清零,状态设定:Idle(默认,00)、CCA(energy detetion,01)、Packet Mode RX(10)、Packet Mode TX(11)。


图3手持终端MC13192数据包发送与接收流程网

连接控制中心的ZigBee收发端可参考freescale公司的S08MCU,这里不作累叙。

3.2 SPI口是一个全双工的同步串行接口

主要完成对MC13192寄存器的读写操作,一帧为24bit,在高8位中,读操作最高位设为1(写操作为0),次高位为0,低6位为对象寄存器的地址,低16位为对象寄存器的现有值(写操作为对象寄存器的赋值),通过MISO引脚读取对象寄存器的现有值(通过MOSI引脚发送帧命令)。向MC13192传输准备发送的数据,先向MC13192的TX_Pkt_Ctl寄存器的低7位写入数据的长度,然后向TX_Pkt_RAM寄存器发送起始8位命令(00000011),并依次写入准备发送的数据。接收MC13192已经收到的数据,先向MC13192的RX_Starus寄存器的低7位读取接收到的数据长度,然后向RX_Pkt_RAM寄存器依次读取接收到的数据。其中,MC13192的寄存器为16位,而SPI口的操作一次只传输一个字节。

3.3 MiniGUl的移植开发

首先要使用宿丰机(即PC机)对MiniGUl的源代码进行交叉编译,生成MiniGUl静态链接库文件,然后,在宿主机上对MiniGUI应用程序也进行编译,并且于MiniGUI静态链接库生成目标板可运行的FLAT格式文件,最后,在目标板的uCLinux操作系统上搭建MiniGUl运行环境,即安装MiniGUI的资源文件和运行时配置文件,再将MiniGUI应用程序(FLAT格式文件)下载和运行。

3.4 控制中心数据库搭建和串口通信

本系统采用Vb和sql设计该数据库,功能见图4。适用mscom控件设置串口通信,选择波特率115200,以实现PC机和ZigBee收发的通信。


图4 数据库功能模块图

3.5局域网的构建

由于LAN具有传输率高,误码率低,有一定地理范围,易于管理以及投资等特点,PC-LAN目前已成为PC组网的主流。设置控制中心的PC机为服务器,柜银机和厨房云台可通过路由器和控制中心组成小型的局域网,需要时,还可接入更多PC机。

本文创新点:1、利用嵌入式微处理器ARM7作为手持终端机的MCU,能高效利用外同扩展设备,性价比高;2、利用ZigBee射频模块,尤需使用许可证,成本低,易于组网,低功耗的特点,适合酒J占业短距离通信的需要;3、使用MiniGUI设计手持终端机系统界面,使显示内容更丰富,易于非专业人士操作;4、本系统是为中小酒店企业而设计,注重控制成本。同时也保留了升级的审问,可以通过后续升级从而为高级酒店企业提供服务。

作者:卢小勇,郑胜林,潘保昌,温川雪,谭伟健
来源:《微计算机信息》(嵌入式与SOC)2009年第4-2期

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top