“博创杯”全国大学生嵌入式设计大赛-基于ZigBee技术的无线点餐系统.doc

上传人:西安人 文档编号:5016527 上传时间:2020-01-28 格式:DOC 页数:36 大小:2.17MB
返回 下载 相关 举报
“博创杯”全国大学生嵌入式设计大赛-基于ZigBee技术的无线点餐系统.doc_第1页
第1页 / 共36页
“博创杯”全国大学生嵌入式设计大赛-基于ZigBee技术的无线点餐系统.doc_第2页
第2页 / 共36页
“博创杯”全国大学生嵌入式设计大赛-基于ZigBee技术的无线点餐系统.doc_第3页
第3页 / 共36页
“博创杯”全国大学生嵌入式设计大赛-基于ZigBee技术的无线点餐系统.doc_第4页
第4页 / 共36页
“博创杯”全国大学生嵌入式设计大赛-基于ZigBee技术的无线点餐系统.doc_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《“博创杯”全国大学生嵌入式设计大赛-基于ZigBee技术的无线点餐系统.doc》由会员分享,可在线阅读,更多相关《“博创杯”全国大学生嵌入式设计大赛-基于ZigBee技术的无线点餐系统.doc(36页珍藏版)》请在三一文库上搜索。

1、2008 第四届“博创杯”全国大学生嵌入式设计大赛 基于基于 ZigBeeZigBee 技术的无线点餐系统技术的无线点餐系统 Wireless Order System Based On ZigBee Technology 2008 年年 7 月月 14 日日 摘 要 随着无线通信技术的不断发展,近年来出现了面向低成本设备无线联网要求的 ZigBee 技术,它是一种近距离、低复杂度、低功耗、低数据速率、低成本的双向无线 通信技术,主要适合于自动控制、远程控制领域及家用设备联网,我们采用 ZigBee 技 2008 第四届“博创杯”全国大学生嵌入式设计大赛 术,可以为无线点餐系统提供很好的解决方

2、案。 关键词:无线点餐系统关键词:无线点餐系统 ZigBee 技术技术 蜂窝状通信网络蜂窝状通信网络 WinCEWinCE 270-S270-S 嵌入式系统嵌入式系统 微处理器微处理器 ATMEGA128ATMEGA128 射频收发芯片射频收发芯片 AT86RF230AT86RF230 Abstract As wireless communications technology developing ceaselessly, ZigBee technology that met the needs of low cost devices logging in the wireless lan

3、appeared in these years.Its a kind of close quarters, simpleness,low power,low 2008 第四届“博创杯”全国大学生嵌入式设计大赛 transmission speed and low cost bidirectional wireless communications technology.And its mostly propitious to the fields of automatic and long- distance control and the home devices network.We ad

4、opt ZigBee technology so that provide the more effective solutions to wireless order system. Keywords: wireless order system ZigBee technology alveolate communications network WinCE 270-S Applications for embedded systems microprocessor ATMEGA128ATMEGA128 radio transceiver chip AT86RF230 目 录 第第 1 章章

5、 绪论绪论6 第第 2 章章 系统方案系统方案7 2008 第四届“博创杯”全国大学生嵌入式设计大赛 2.1 基本功能7 2.2 基本组成7 2.3 系统结构7 2.4 工作流程8 第第 3 章章 功能与指标功能与指标9 3.1 ZIGBEE技术简介.9 3.2 ZIGBEE技术特点.9 3.3 ZIGBEE主要技术指标.10 第第 4 章章 实现原理实现原理11 4.1 系统硬件结构11 4.1.1 传感器节点11 4.2.2 系统电源11 4.2.3 RF 收发芯片11 4.2 AT86RF230 性能和内部结构.12 4.2.1 性能参数12 4.2.2 终端节点12 4.3 网络设备的

6、硬件电路构成.12 4.3.1 设计原理12 4.3.2 降低干扰13 4.3.3 键盘设计14 4.4 节点软件设计14 第第 5 章章 硬件框图硬件框图15 5.1 系统结构图15 5.2 节点设备外型图15 5.3 系统电路框图.16 5.3.1 IEEE802.15.4 网络设备基本构成16 5.3.2 AT86RF230 功能框图16 5.3.3 RF 芯片电路原理图17 5.3.4控制器电路.18 5.3.5天线馈线阻抗控制模型.19 5.3.6键盘显示电路.20 第第 6 章章 软件流程软件流程21 6.1 系统软件界面21 6.1.1 界面介绍21 6.1.2 桌号选择21 6

7、.1.3 菜品选择22 6.1.4 功能键说明22 6.2 系统软件数据流图22 2008 第四届“博创杯”全国大学生嵌入式设计大赛 6.3 系统功能基本代码23 6.3.1构造函数.23 6.3.2启动服务.23 6.3.3停止服务.23 6.3.4下发指令.24 第第 7 章系统测试方案章系统测试方案 27 第第 8 章测试设备章测试设备 .28 第第 9 章测试数据章测试数据 .29 第第 10 章结果分析章结果分析 .29 第第 11 章实现功能章实现功能 .30 11.1 结构功能.30 11.2 应用功能.30 第第 12 章特色章特色 .31 12.1 结构特色.31 12.2

8、功能特色.31 参考文献参考文献32 附录附录33 附录 A33 附录 B33 附录 C34 附录 D35 2008 第四届“博创杯”全国大学生嵌入式设计大赛 6 第 1 章 绪论 随着无线通信技术的不断发展,近年来出现了面向低成本设备无线联网要求的 ZigBee 技术,它是一种近距离、低复杂度、低功耗、低数据速率、低成本的双向无 线通信技术,主要适合于自动控制、远程控制领域及家用设备联网,我们采用 ZigBee 技术,可以为无线点餐系统提供很好的解决方案。 目前的点餐系统主要有两种:人工手工点单操作和无线点餐。人工手工点单操作 也就是传统的点餐方式,目前在市场上还是较为普遍,但是这种简单的点

9、餐方式存 在的弊端主要表现为:人工传递浪费时间,效率低下,直接影响了翻台率;经营大 规模菜系时单据多、信息量大,而分单、传菜等环节经过的人越多越容易出问题, 因而直接影响了服务质量,同时财务无法保证有效的监督管理机制。无线点餐技术 是基于 PDA 掌上电脑和 802.11b 无线局域网技术的全智能餐饮信息服务系统,它能 有效提高餐饮机构的服务质量和工作效率。但是这种无线点餐技术是半无线网络化 的组网技术,组网设备的种类比较多,各个节点需要通过电缆与以太网交换机相连, 综合布线比较麻烦,会给安装带来很大的不便。而且一旦布线出问题,会影响到餐 厅的整个无线点餐系统,使其不能正常工作。 基于 Zig

10、Bee 技术的无线点餐系统是点餐模式的重大革新。本文将对 ZigBee 技 术进行详细的阐述,然后实现基于 ZigBee 技术的无线点餐系统。 2008 第四届“博创杯”全国大学生嵌入式设计大赛 7 第 2 章 系统方案 2.1 基本功能基本功能 利用本套系统,服务员或顾客可以随时随地使用无线点餐终端进行点菜等工作, 并即时把数据传到后台数据服务器。在数据服务器端,安装有 ZigBee 无线数据中心 节点,可以在有效范围内与无线点餐终端进行随时随地的通讯,并能够准确快速地 完成点餐等工作。它节省了人工传递的时间,提高了工作效率,直接提升了翻台率; 对于经营单据多、信息量大的大规模菜系,更好地避

11、免了分单、传菜等环节人为的 问题,从而直接提高了服务质量,同时也保证了更加有效的财务监督管理机制。 2.2 基本组成基本组成 本系统由服务员手持的带 ZigBee 无线数据通讯功能的无线点餐终端、或安装在 餐桌上的具有 ZigBee 无线数据通讯功能的点餐终端,和连接在装有无线点餐服务器 软件的基于 WinCE 的 270EP 嵌入式系统服务器端的 ZigBee 无线数据中心组成。 2.3 系统结构系统结构 系统由手持无线点餐终端或桌上的无线点餐终端、无线通讯节点及安装了无线 点餐服务器软件的基于 WinCE 的 270-S 嵌入式系统组成。270-S 嵌入式系统无线通讯 节点与无线点餐终端配

12、合使用完成点菜系统的无线数据通讯功能。一台 ZigBee 无线 通讯中心节点能够以轮询的方式与多台无线点餐终端通讯。餐厅 ZigBee 无线节点网 络,通过在餐厅、吧台、厨房、收银台、处理中心部署的 ZigBee 节点设备构成了完 整的无线通讯网络,实现了信息处理的自动化。 无线通信系统的 ZigBee 中心节点、无线 ZigBee 路由和无线点餐终端,构成一 个蜂窝状的通信网络,任何一个节点以多调方式实现通信。 其中任何一个 ZigBee 路由器,负责与中心网络的连接和数据中继转发;所有的 ZigBee 路由器组成一个蜂 2008 第四届“博创杯”全国大学生嵌入式设计大赛 8 窝网状网络,再

13、与 ZigBee 中心节点连接,中心节点设置在总服务台,构建成一个完 整的 ZigBee 无线网络,是个通信非常可靠的网络结构。 2.4 工作流程工作流程 内置无线 ZigBee 通信模块的手持点餐终端,服务员通过手持的点餐终端处理顾 客的点单,用户订单通过终端和大厅内的 ZigBee 网络自动的上传到厨房和收银台, 从而完成整个点餐过程。 2008 第四届“博创杯”全国大学生嵌入式设计大赛 9 第 3 章 功能与指标 3.1 ZigBee 技术简介技术简介 ZigBee 是一种无线连接技术的商业化命名,该无线连接技术主要解决低成本、 低功耗、低复杂度、低传输速率、近距离的设备联网应用。 国际

14、上,IEEE802.15.4 工作组及 ZigBee 联盟共同致力于该无线连接技术的推广 工作,其中,IEEE802.15.4 工作组主要负责制定 ZigBee 物理层及 MAC 层的协议, 其余协议主要参照和采用现有标准,以便于今后不同厂商设备的互联互通; ZigBee 联盟则负责高层应用及市场推广工作。而于 2002 年成立的 ZigBee 联盟如今已经吸 引了上百家芯片公司、无线设备公司的加入。目前,Freescale、TI 等国际巨头都已 推出了比较成熟的 ZigBee 开发平台。 ZigBee 标准基于 802.15.4 协议栈而建立,具备了强大的设备联网功能,它支持 三种主要的自组

15、织无线网络类型,即星型结构、网状结构(Mesh)和簇状结构(Cluster tree),特别是网状结构,具有很强的网络健壮性和系统可靠性。 3.2 ZigBee 技术特点技术特点 1、设备省电 ZigBee 技术采用了多种节电的工作模式,可以确保两节五号电池支持长达 6 个月到 2 年左右 的使用时间; 2、通信可靠 ZigBee 采用了 CSMACA 的碰撞避免机制,同时为需要固定带宽的通信业务预留了专用时隙, 避免了发送数据时的竞争和冲突;MAC 层采用了完全确认的数据传输机制,每个发送的数据包 都必须等待接收方的确认信息; 3、网络的自组织、自愈能力强 ZigBee 的自组织功能:无需人

16、工干预,网络节点能够感知其他节点的存在,并确定连接关系, 2008 第四届“博创杯”全国大学生嵌入式设计大赛 10 组成结构化的网络; ZigBee 自愈功能:增加或者删除一个节点,节点位置发生变动,节点发生故障等等,网络都 能够自我修复,并对网络拓扑结构进行相应地调整,无需人工干预,保证整个系统仍然能正常工 作。 4、具备自组织、自愈能力的无线通信网络才是无线点餐系统最理想的通信方式。 5、成本低廉 设备的复杂程度低,且 ZigBee 协议是免专利费的,这些可以有效地降低设备成本; 6、ZigBee 的工作频段灵活,为免执照频段的 2.4GHz,就是没有使用费的无线通信。 7、网络容量大 一

17、个 ZigBee 网络可以容纳最多 254 个从设备和一个主设备,一个区域内可以同时存在 200 多 个 ZigBee 网络; 8、数据安全 ZigBee 提供了数据完整性检查和鉴权功能,加密算法采用 AES-128,同时各个应用可以灵活 确定其安全属性。 3.3 ZigBee 主要技术指标主要技术指标 参数名称 性能参数 频 段 2.4-2.483GHz 通讯协议标准 IEEE 802.15.4 zigbee 网络拓扑结构 网状网、星型 调制方式 DSSS (O-QPSK) 数据传输速率 最大 250KBps 寻址方式 64 位 IEEE 地址,8 位网络地址 数据加密 128-bit AE

18、S 错误校验 CRC-16/32 信道接入方式 CSMA-CA 和时隙化的 CSMA-CA 信道数 16 2008 第四届“博创杯”全国大学生嵌入式设计大赛 11 通信时延 15ms(激活或信道接入) ,30ms(设备搜索) 第 4 章 实现原理 4.1 系统硬件结构系统硬件结构 4.1.1 传感器节点 传感器节点一般由数据采集单元、数据处理单元和数据传输单元以及电源管理 单元等模块组成。在我们系统中,微处理器 ATMEGA128 通过 SPI 总线与射频收发芯 片 AT86RF230 进行通信。数据采集单元主要对外界的信息进行感知和采集,包括光、 温度、湿度、加速度 、光电、液位、热释电、磁

19、感应、压力等传感器。为适应多种 应用,设计了通用接口,通用接口中有适配电路,以适应不同电参数部件直接接入 系统。通常节点的输出控制器即通过该通用接口接入。数据处理单元采用 ATMEL 公 司的 8 位低功耗微处理器 ATMEGA128L 作为控制核心。 4.2.2 系统电源 系统的电源通常由电池提供,也可以由稳压模块供给。 2008 第四届“博创杯”全国大学生嵌入式设计大赛 12 4.2.3 RF 收发芯片 RF 收发芯片负责射频信号的产生和接收解调,其基准时钟由外部高精度的晶体 振荡器提供;同时要实现一些物理层和 MAC 层的基本功能,例如编解码、信道选择、 功率控制、接收机能量检测(RSS

20、I)、链路质量指示(LQI)、空闲信道评估(CCA)和硬 件 CRC 校验等。在实现这些基本功能的前提下,RF 芯片应该尽量做到低功耗、高灵 敏度和较小封装。微控制器要有丰富的资源来完成对 RF 芯片的控制,以及对传感器、 各类应用接口和用户接口的实时响应。通常协议栈需要占用 32 KB 左右的存储空间。 4.2 AT86RF230 性能和内部结构性能和内部结构 4.2.1 性能参数 在我们系统中,射频收发芯片采用的是 Atmel 公司的 AT86RF230,AT86RF230 是 与 ZigBeeIEEE802154 兼容的无线射频收发芯片。它工作在 2.4 GHz ISM 频段, 拥有 1

21、04dB 链路预算,-101 dB 的接收灵敏度和 3 dB 的传输功率,从而减少网络中 所需节点设备的总数,大大降低了 IEEE 802.15.4 系统的组网成本。所有 RF 关键器 件(除了天线、晶振、去耦电容外)都集成在一块芯片中,封装形式采用 32 引脚、5 mm5mm09mm 大小的 QFN 封装。由该芯片所构成的设备仅需 6 个外部组件。 4.2.2 终端节点 终端节点通常是电池供电,发射模式下电流消耗为 17 mA,接收模式下为 15 mA,睡眠模式下仅为 O7A;工作电压可达 1836V,内部有集成的 18V LDO。AT86RF230 内部有 35 个可以通过 SPI 控制时

22、序访问的 8 位寄存器,工作时有 8 个基本状态(可以根据需要扩展为 14 个)。片内发送数据和接收数据的缓冲分别为 2008 第四届“博创杯”全国大学生嵌入式设计大赛 13 129 字节和 130 字节,正好可以满足 IEEE802154 协议规定的最大帧长度 127 字 节的要求。发送时需要加 2 字节的 CRCl6 校验码,接收时还要多加 1 字节的链路质 量指示。 4.3 网络设备的硬件电路构成网络设备的硬件电路构成 4.3.1 设计原理 模块的数字接口为 ATmega128l 与 AT86RF230 之间的 SPI 接口以及其他 4 条控 制线。AT-megal28l 是 Atmel

23、 公司的 8 位高性能的 AVR 单片机。其基本特征有:采 用 RISC 构架,具有 135 条指令,工作在 16MHz 时吞吐率可达 16MIPS;片内具有 128 KB Flash、4 KB 片内 E2PROM 和 8 KB SRAM,可以通过 ISP 或 JTAG 下载程序; 工作频率最高可达 16 MHz,工作电压为 l.855V,掉电模式下只有 O.1A 的工 作电流。在本设计中 ATmegal281 工作于内部为 8 MHz 的振荡频率下。如果要采用 与 AT86RF230 同步的外部时钟信号,那么 CLKM 引脚应接到 ATmegal281 的 XTAL1 脚 上,并且熔丝位要设

24、置为外部时钟。AT86RF230 的各种工作状态中断信号由 IRQ 脚 控制,这里接到 ATmegal28l 的 ICPl 脚产生捕获中断,因为捕获中断可通过设置噪 声消除方式来减少外界的干扰,从而提高中断的可靠性。有关 AT86RF230 寄存器 SPI 读 写时序、状态转换图及各种中断控制的具体方法可以参阅参考文献。还需 注意,AT86RF230 所接外部晶振 X1 的长期工作频率稳定度要小于等于 40 ppm,并 根据晶振和芯片的驱动能力选择合适的负载电容。 4.3.2 降低干扰 对于模拟部分设计,为了降低其他部分的干扰,提高 RF 性能,需要采取抗 干扰措施。例如,模拟电源输入端增加磁

25、珠或电感;AT86RF230 模拟地和数字地 2008 第四届“博创杯”全国大学生嵌入式设计大赛 14 要分开布线,并在一点接地;为了减小分布参数的影响,铺地要尽可能大,并且 要适当打上过孔;滤波用的电容也要尽量靠近芯片。另外,要注意阻抗匹配, AT86RF230 天线端口为 2 路 100 的差分输出,可直接接差分馈电的天线,但缺 点是阻抗匹配和测试都比较困难,一般可以用巴伦把 2 路 100 的差分输出变换 成一路 50 输出,然后接各类单端馈电的天线。在控制 RF 信号输出脚 PCB 导线 的阻抗时,可以采用下图所示的模型: 天线馈线阻抗控制模型 4.3.3 键盘设计 键盘显示通过如下电

26、路实现,通过 ZLG7290 键盘显示控制芯片扩展按键部分, 与控制处理器通过 I2C 总线实现按键数值的读写。为降低功耗,设备采用字段式液 晶屏,通过 4 位总线与控制器相连,实现数据的显示。 4.4 节点软件设计节点软件设计 软件设计主要包括射频驱动、外围电路控制和 ZigBee 协议栈设计 3 个部分。软件开发环 2008 第四届“博创杯”全国大学生嵌入式设计大赛 15 境为免费的 AVRSTUDIO+AVRGCC,也采用的 Atmel 免费提供的无线通信协议栈实现。 基本过程为:网络协调器首先初始化 WPAN 信息数据库,建立 ZigBee 网络,分配网络 ID 号和 16 位网络地址

27、,初始化邻居设备表,然后等待其他节点连接;网络节点上电后,初始化 内部资源、网络节点的 WPAN 信息数据库,发送扫描信号请求连接,连接成功后,记录下网络 ID 和分配好的 16 位网络地址,按功能设定向协调器发送信息。因为网络节点一般为电池供电, 所以在空闲时要进入休眠节能状态。外围电路控制主要是针对传感器、开关等器件的控制,可 根据不同需求对软件进行相应的修改。 第 5 章 硬件框图 5.1 系统结构图系统结构图 无线点餐系统总体结构图 上图描述了无线点餐系统的总体结构,直观的反应了基于 ZigBee 技术的系统框架,从 图中我们可以发现该系统的 ZigBee 节点中继等特点。 5.2 节

28、点设备外型图节点设备外型图 节点设备外型图如下所示: 2008 第四届“博创杯”全国大学生嵌入式设计大赛 16 系统外型图系统内部结构图 5.3 系统电路框图系统电路框图 5.3.1 IEEE802.15.4 网络设备基本构成 IEEE802.15.4 网络设备基本构成 2008 第四届“博创杯”全国大学生嵌入式设计大赛 17 5.3.2 AT86RF230 功能框图 AT86RF230 功能框图 2008 第四届“博创杯”全国大学生嵌入式设计大赛 18 5.3.3 RF 芯片电路原理图 RF 芯片电路原理图 2008 第四届“博创杯”全国大学生嵌入式设计大赛 19 5.3.4 控制器电路 控

29、制器电路 2008 第四届“博创杯”全国大学生嵌入式设计大赛 20 5.3.5 天线馈线阻抗控制模型 天线馈线阻抗控制模型 2008 第四届“博创杯”全国大学生嵌入式设计大赛 21 5.3.6 键盘显示电路 键盘显示电路 2008 第四届“博创杯”全国大学生嵌入式设计大赛 22 第 6 章 软件流程 6.1 系统软件界面系统软件界面 6.1.1 界面介绍 基于 WinCE 的系统服务器基本界面 上图是一个简单的无线点餐系统的服务器界面,能够进行点菜启动、接收多个 手持客户端的点菜信息并显示等基本功能。 6.1.2 桌号选择 顾客或服务员可以通过选择软件界面左上角的桌号下拉列表,选择并确定桌号。

30、 6.1.3 菜品选择 顾客或服务员可以通过选择软件界面中间部分菜品清单,以确定顾客所点的菜肴。 2008 第四届“博创杯”全国大学生嵌入式设计大赛 23 6.1.4 功能键说明 在软件界面下方有三个功能键: 1启动服务器:在顾客点餐之前,应先点击此按钮,启动数据服务器,从而用 以接受顾客的点餐信息。 2开始点菜:在顾客点餐之前,先点击此按钮,启动客户端点菜功能,从而用 以录入顾客的点餐信息到客户端,发送至服务器。 3结束点菜:当顾客点餐结束后,点击此按钮,完成确认点餐。 6.2 系统软件数据流图系统软件数据流图 开始 服务器软件启动服 务器成功? 连接好硬件设备 服务器发送开始点 菜指令 手

31、持设备2开始点 菜 服务器软件接收点 菜信息 解析各个设备点菜 信息并显示 Yes No 手持设备n开始点 菜 手持设备1开始点 菜 . 手持设备3开始点 菜 结束点菜 6.3 系统功能基本代码系统功能基本代码 本系统采用 C#编程,系统中与无线基站的通信已经封装到动态链接库 SmeshCompactListener.dll 中,服务器程序只需要调用该链接库的几个接口即可很方 便的进行设备初始化、操作设备和接收数据这些功能。 首先介绍一下 SmeshCompactListener.dll,该组件是用于 Compact Framework 2.0 应用程序和无线传感器节点进行数据通讯的中间件组件

32、,该组件对外提供的对象名 为 SmeshServer,完整命名空间为 SmeshLister. SmeshServer,该对象提供的主要 方法有: 6.3.1 构造函数 public SmeshServer(string datasource,string commIdOrremoteIp,int baudRateOrremotePort) datasource:数据来源,当前必须为“SMB510”,表示数据接收的基站类型; commIdOrremoteIp:不同的数据来源代表不同的含义,表示串口号或远程服务器地 址,当前只能是串口号,如“COM1”; 2008 第四届“博创杯”全国大学生嵌入

33、式设计大赛 24 baudRateOrremotePort: 不同的数据来源代表不同的含义,波特率或服务器端口, 但前只表示波特率,一般是 9600。 6.3.2 启动服务 public void StartServer() 开始数据接收。 6.3.3 停止服务 public void Dispose() 停止数据接收并销毁该对象。 6.3.4 下发指令 public bool SendDownStream(ushort nodeId,InteractiveType interactivetype, InputStyle inputstyle, EnableDec enabledec, Ful

34、lScore fullscore, string objectcode) 用于向无线节点发送数据 Nodeid:结点编号,如果为 65535 则表示向所有节点发送数据 interactivetype:交互类型,类型为SmeshLister.InteractiveType inputstyle:输入类型,类型为SmeshLister. InputStyle enabledec:是否允许小数,类型为SmeshLister. EnableDec fullscore:满分类型,类型为SmeshLister. FullScore objectcode:下发的字符串,要么全是数字,要么全是 a-f 的字母

35、,长度不能超过 6 如果下发成功,返回 true,否则,返回 false。 该对象的事件是: OnPackageRecieved(UserInteractive userInteractive) 2008 第四届“博创杯”全国大学生嵌入式设计大赛 25 在接收到一个完整的数据包后触发,其中的 userInteractive 为接收到的有效数据, UserInteractive 的 定义如下: public string InteractiveAction;交互数据 public float InteractiveScore;交互分数 public byte InteractiveType;交互

36、类型 public ushort NodeId;节点编号 public float Voltage;节点电压 下面将对服务器软件的各个实现的代码进行简单的叙述。 设备连接好之后,首先要启动服务器,服务器启动代码实现如下: /* * 函数名:btnStart_Click_1 * 函数介绍:事件函数,相应按钮btnStart的点击事件,初始化无线基站 * 调用启动接收数据指令,调用启动服务器命令 * 入口参数:object sender, EventArgs e * 出口参数:(无) * 返回值:(无) */ private void btnStart_Click_1(object sender,

37、 EventArgs e) smeshServer = new SmeshServer(“SMB510“, “COM1“, 57600);/初始化无线通信 模式和接口 smeshServer.OnPackageRecieved += new SmeshServer.PackageRecievedHandler(smeshServer_OnPackageRecieved);/启动接收数据函数 smeshServer.StartServer();/启动服务器 this.txtDataOut.Text = “; this.txtDataOut.Text += “点菜系统启动!“; SetCheckD

38、ish(false);/将所有菜系复选框初始化为未选中 SetCheckState(false);/初始化手持设备对应的菜系是否选中的变量 上面的代码可以看见关键代码就是首先要定义无线模块的对象,并且设置好串口和串口波特 2008 第四届“博创杯”全国大学生嵌入式设计大赛 26 率。 启动服务器后,软件服务器将要对各个客户设备端发送开始点菜指令,开始点菜代码实现如 下: /* * 函数名:btnSend_Click * 函数介绍:事件函数,相应按钮btnSend的点击事件,调用开始命令,控制客户端 * 入口参数:object sender, EventArgs e * 出口参数:(无) * 返

39、回值:(无) */ private void btnSend_Click(object sender, EventArgs e) SetCheckDish(false);/将所有菜系复选框初始化为未选中 SetCheckState(false);/初始化手持设备对应的菜系是否选中的变量 this.txtDataOut.Text = “; this.txtDataOut.Text += “开始点菜!“; /接口类的开始命令 smeshServer.SendDownStream(0xffff, InteractiveType.itSelect, InputStyle.isDigital, Enab

40、leDec.edEnable, FullScore.fs10, “ABCDEF“); smeshServer.SendDownStream 就是实现点菜功能的关键函数,里面的参数按照上述参数设 置即可。 服务器软件给客户端发送点菜指令后,将启动接收客户端的点菜信息的函数,服务器软件接 收到客户端发送的数据后就会进入函数 smeshServer_OnPackageRecieved(),并在该函数中解 析数据处理数据。服务器软件接收手持客户端点菜信息代码实现如下: /* * 函数名:smeshServer_OnPackageRecieved * 函数介绍:通过串口接收到数据后,解析数据并且在界面上

41、进行显示 * 入口参数:UserInteractive userInteractive 描述了数据的具体信息,具体查看 该结构体的定义 * 出口参数:(无) * 返回值:(无) */ void smeshServer_OnPackageRecieved(UserInteractive userInteractive) DisplayData(userInteractive.NodeId.ToString() + userInteractive.InteractiveAction.ToString();/接收到数据后,解析数据并且在界面上进 行显示 2008 第四届“博创杯”全国大学生嵌入式设计

42、大赛 27 点菜结束后,必须执行结束服务器命令,否者服务器退出时将要出错。结束点菜代码实现如 下: /* * 函数名:btnEnd_Click_1 * 函数介绍:事件函数,相应按钮btnEnd的点击事件,执行结束服务器命令 * 入口参数:object sender, EventArgs e * 出口参数:(无) * 返回值:(无) */ private void btnEnd_Click_1(object sender, EventArgs e) smeshServer.Dispose();/执行结束服务器命令,执行后将不再接收数据 this.txtDataOut.Text = “; this

43、.txtDataOut.Text += “结束点菜!“ ; SetCheckDish(false);/将所有菜系复选框初始化为未选中 SetCheckState(false);/初始化手持设备对应的菜系是否选中的变量 第 7 章 系统测试方案 多个客户端可同时进行: 1通过服务器端的“启动服务器”按钮,启动服务器; 2通过服务器端的“开始点菜”按钮,启动客户端点菜功能; 3通过手持客户端进行点菜; 4点菜信息在服务器端显示; 5检验客户端与服务器端是否可以进行信息交换。 6验证点餐信息是否与输入一致; 7通过服务器端的“结束点菜”按钮,结束点菜功能。 2008 第四届“博创杯”全国大学生嵌入式

44、设计大赛 28 第 8 章 测试设备 测试设备:基于 ZigBee 技术的无线点餐系统 客户端: 系统外型图系统内部结构图 服务器端: 基于 WinCE 的系统服务器基本界面 2008 第四届“博创杯”全国大学生嵌入式设计大赛 29 第 9 章 测试数据 客户端输入: 客户端 1(1 号桌):宫爆鸡丁、鱼香肉丝 客户端 2(2 号桌):北京烤鸭 第 10 章 结果分析 服务器端输出: 客户端 1(1 号桌):宫爆鸡丁、鱼香肉丝 客户端 2(2 号桌):北京烤鸭 由系统测试,说明客户端与服务器端之间信息交换情况良好,结果输出正确。 2008 第四届“博创杯”全国大学生嵌入式设计大赛 30 第 1

45、1 章 实现功能 11.1 结构功能结构功能 270-S 嵌入式系统无线通讯节点与无线点餐终端配合使用完成点菜系统的无线数 据通讯功能。一台 ZigBee 无线通讯中心节点能够以轮询的方式与多台无线点餐终端 通讯。餐厅 ZigBee 无线节点网络,通过在餐厅、吧台、厨房、收银台、处理中心部 署的 ZigBee 节点设备构成了完整的无线通讯网络,实现了信息处理的自动化。 无线通信系统的 ZigBee 中心节点、无线 ZigBee 路由和无线点餐终端,构成一 个蜂窝状的通信网络,任何一个节点以多调方式实现通信。 其中任何一个 ZigBee 路由器,负责与中心网络的连接和数据中继转发;所有的 Zig

46、Bee 路由器组成一个蜂 窝网状网络,再与 ZigBee 中心节点连接,中心节点设置在总服务台,构建成一个完 整的 ZigBee 无线网络,是个通信非常可靠的网络结构。 11.2 应用功能应用功能 利用本套系统,服务员或顾客可以随时随地使用无线点餐终端进行点菜等工作, 并即时把数据传到后台数据服务器。在数据服务器端,安装有 ZigBee 无线数据中心 节点,可以在有效范围内与无线点餐终端进行随时随地的通讯,并能够准确快速地 完成点餐等工作。 2008 第四届“博创杯”全国大学生嵌入式设计大赛 31 第 12 章 特色 12.1 结构特色结构特色 270-S 嵌入式系统无线通讯节点与无线点餐终端

47、配合使用完成点菜系统的无线数 据通讯功能。一台 ZigBee 无线通讯中心节点能够以轮询的方式与多台无线点餐终端 通讯。餐厅 ZigBee 无线节点网络,通过在餐厅、吧台、厨房、收银台、处理中心部 署的 ZigBee 节点设备构成了完整的无线通讯网络,实现了信息处理的自动化。 无线通信系统的 ZigBee 中心节点、无线 ZigBee 路由和无线点餐终端,构成一 个蜂窝状的通信网络,任何一个节点以多调方式实现通信。 其中任何一个 ZigBee 路由器,负责与中心网络的连接和数据中继转发;所有的 ZigBee 路由器组成一个蜂 窝网状网络,再与 ZigBee 中心节点连接,中心节点设置在总服务台

48、,构建成一个完 整的 ZigBee 无线网络,是个通信非常可靠的网络结构。 12.2 功能特色功能特色 利用本套系统,服务员或顾客可以随时随地使用无线点餐终端进行点菜等工作, 并即时把数据传到后台数据服务器。在数据服务器端,安装有 ZigBee 无线数据中心 节点,可以在有效范围内与无线点餐终端进行随时随地的通讯,并能够准确快速地 完成点餐等工作。它节省了人工传递的时间,提高了工作效率,直接提升了翻台率; 对于经营单据多、信息量大的大规模菜系,更好地避免了分单、传菜等环节人为的 问题,从而直接提高了服务质量,同时也保证了更加有效的财务监督管理机制。监 督管理机制。 2008 第四届“博创杯”全

49、国大学生嵌入式设计大赛 32 参考文献参考文献 1 短距离无线数据通信入门与实战 李文仲 段朝玉 等编著 2 紫蜂技术及其应用 蒋挺 赵成林 编著 3 C#程序设计(大学教程) 罗兵 刘艺 孟武生 等编著 4 UP-TECHPXA270-S快速开始手册_v1.0 5 PXA270-S_WinCE快速开始手册_v1.0 6 ZigBee设备与博创实验箱联调操作说明 7 Jennic ZigBee中文开发指南2007-6-7 8 9 10 11 2008 第四届“博创杯”全国大学生嵌入式设计大赛 33 附录 附录 A IEEE802.15.4 网络设备基本构成 附录 B AT86RF230 功能框图 2008 第四届“博创杯”全国大学生嵌入式设计大赛 34 附录 C 开始 服务器软件启动服 务器成功? 连接好硬件设备 服务器发送开始点 菜指令 手持设备2开始点 菜 服务器软件接收点 菜信息 解析各个设备点菜 信息并显示 Yes No 手持设备n开始点 菜 手持设备1开始点 菜 . 手持设备3开始点 菜 结束点菜

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 研究报告 > 商业贸易


经营许可证编号:宁ICP备18001539号-1