




已阅读5页,还剩37页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要无线点菜系统是餐饮服务管理系统的一个重要组成部分。本文分析了国内市场现有的各种点菜系统的优缺点,提出了一种低成本的无线点菜终端的解决方案。本文分别从无线网络、终端操作系统、终端图形显示系统以及数据库服务器四个方面对整个系统做了详细的介绍与分析。通过对几种无线传输方式的比较,本文采用了具有方便组网、通信可靠、成本低、灵活性高、可移动性强和吞吐量大的无线局域网方式进行数据传输。在服务器端设计中,本文利用Red Hat Enterprise Linux 4作为开发平台,能有效处理多个客户端传输过来的信息和数据,并提供无线驱动的接口,通过wifi与客户端进行数据传输。MySQL作为全球应用最广泛的数据库,不仅具有其体积小、速度快和开放源码等特点,而且其总体拥有成本低,能降低无线点菜系统的成本。整个点菜系统采用C/S的网络通信模式,能进行服务器端和客户端的同步数据交换。最后,本文对无线点菜系统服务器端作出进一步的分析和总结,肯定了嵌入式系统以及无线局域网技术广阔的应用前景。关键字:无线点菜;Linux;MySQL;无线局域网;嵌入式注:本设计(论文)题目来源于教师的国家级(或部级、省级、厅级、市级、校级、企业)项目,项目编号为:_.AbstractWireless-Ordering-System is an important component of the restaurant service management system. This paper analyzes the existing domestic marketamongthe advantages and disadvantages of various Ordering-System,provided a low-cost solution for wireless ordering terminal. This paper provided a detailed description and analysis in four areas including the wireless network, terminal operating system, terminal server graphics display system and database of the entire system. Compared with the comparison of several wireless transmission, we chose to use wireless LAN data transmission mode that communication is convenient, reliable, low cost, high flexibility, mobility and other characteristics of strong and throughput. The design of the server side, we use Red Hat Enterprise Linux 4 as a development platform that can effectively deal with multiple clients over the information and data transmission, and wireless-driven interface with the client through the wifi data transmission. As the worlds most widely used MySQL database, not only its small size, speed and open source and other characteristics, and its low total cost of ownership can reduce the cost of wireless ordering system. The ordering system uses C/S network communication model, capable of server-side and client-side synchronous data exchange. Finally, the server of Wireless-Ordering-System make further analysis and summary of certain embedded systems and wireless local area network technology broad application prospects.Key words: Wireless-Order-System , MySQL , WLAN , Embedded目录1 绪论11.1引言11.2国内发展概况21.3论文的主要工作32无线点菜系统的环境搭建52.1系统的整体结构52.2点菜服务端的安装52.2.1Linux的起源和发展52.2.2点菜系统服务器的安装62.2.3MySQL安装82.3点菜服务端的嵌入式环境搭建92.3.1交叉编译工具链92.3.2建立tftp服务器112.3.3配置NFS服务器123无线点菜系统的服务端与客户端的网络设计143.1无线网络设计143.1.1无线局域网143.1.2IEEE 802.1lb体系结构143.2点菜客户终端无线硬件设备153.3点菜服务端和客户终端的调试连接方式184无线点菜系统服务端软件设计194.1点菜软件系统的总体设计194.2服务端数据库需求分析204.2.1数据流图204.2.2数据字典224.2.3“转换”的说明245点菜系统服务端功能实现255.1技术架构255.2服务端的设计255.2.1数据库设计255.2.2模块设计26结论30参考文献31致谢32附录A331 绪论1.1 引言目前大多数酒店由于规模的限制,忽略了点菜系统的重要性,而本系统专为具有一定规模和经济条件的大型酒店设计。以降低人力成本,提高人员工作效率,加快各部分人为环节的数据流通速度为前提,降低经营成本,提高利润。通过集成从顾客订桌、点菜、上菜到结账等一系列功能,为每个环节明确分工,并通过可视化的软件支持,有效减小了人为错误的概率,是酒店管理更加规范化。当前,数码点菜已十分普及。因为引进现代化的管理模式与技术可以提升酒店形象,同时提高工作效率、管理水平以及顾客的满意程度。此外,在实现无纸化操作,节约成本方面,与传统的点菜模式相比数码点菜机也有它独特的优势。正是出于这些目的,本文给出了一种基于Linux+ARM的嵌入式点菜系统设计方法1。无线点菜系统,或称无线点餐系统,就是利用现代电子技术、无线技术、计算机技术以及网络技术,取代传统的纸和笔,进行电子点菜操作的系统。是餐饮企业实现信息化改造、提升管理水平、提高运作效率的重要手段。 无线点菜系统由硬件和软件构成。系统硬件主要包括手持无线终端、无线基站(或无线收发器)、主控计算机以及打印机等部件;系统软件主要是餐饮管理软件。无线点菜系统的信息流动主要跨越三个区域:用餐区、款台区和厨房区。系统的核心是位于吧台的主控计算机。手持终端通过无线的方式与主控计算机进行通信,从事开台、换台、并台、点菜、退菜、申请结账等系列操作,以及实现下载菜单信息、桌台信息、发送工号等辅助功能。安装于厨房区的厨房终端通过无线方式接收主控计算机发送过来的菜品信息,并进行打印,供厨师烹饪和传菜员传菜。主控计算机上的餐饮管理软件不仅起到控制作用,对各终端发送过来的信号进行分析、加工、处理和回馈,也实现统计、管理等一系列功能。 1.2 国内发展概况20世纪70年代以前,餐饮业一直沿用传统的人工服务方式,随着20世纪下半叶新科技的发展,尤其是与计算机相关的信息技术的迅猛发展,越来越多的企业开始意识到进行餐饮业信息化的重要性,一些餐饮服务系统、餐饮管理系统也相继开发研制成功并投入使用,给餐饮业带来了新的生机。国外在20世纪70年代,国内在80年代末开始出现餐饮服务管理系统的雏形,即在总服务台设置PC机及与之相连的打印机等外围设备,实现基本的结帐、核算、打印收据等简单功能。这个时期餐饮服务管理系统的概念实际上只是企业内部财务管理的电算化,还算不上真正意义上的餐饮服务管理系统,但是它打开了新科技进入服务行业的大门。80年代末至90年代中期随着局域网技术的迅猛发展,出现了以触摸屏为交互终端,使用C/S(Client/Server)和B/S(Browser/Server)体系结构的餐饮服务管理系统。这时都以有线的方式进行系统连接。20世纪90年代至今Internet在技术方面有了重大突破,宽带技术、动态网页技术和数据库技术的使用和完善,使得Internet的信息传递和交互更加便利,网络逐渐成为人们生活不可缺少的一部分。Internet也进一步扩展了餐饮服务管理系统的概念,人们可以远程定餐、叫餐、网上支付。无线网络技术使我们随时随地进行网络通讯,此时出现了应用红外技术、蓝牙技术、802.11系列技术的餐饮服务管理系统。如2000年,北京食苑星技术有限公司将蓝牙技术应用于点菜服务;北京辰森伟业软件开发有限公司开发了一卡通管理系统并成功运行在天津家和巨无霸海鲜城;2002年上海科升科技信息有限公司采用无线通讯技术,利用智能掌上电脑实现了从预订、开台、点菜,加菜、退菜、催菜、厨房出菜监控管理到顾客结帐全过程一体化的管理等等。当今我国整体的餐饮服务管理技术水平与国际先进水平还有一段距离,尤其是在信息管理、数据挖掘方面差距较大,中餐是个性化很强的行业,国外产品不能够很好的满足我国实际需要,因此在服务信息化方面我国有着较大的发展潜力2。根据实际需要,以台号作为顾客识别标志,顾客可随时随地点菜,既有有线局域网丰富的资源,又不受位置和网线的限制。无线局域网最高可达11Mbit/s的速度,确保可立即得到反馈结果,极大的提高了工作效率和服务质量。它使用通用PDA加无线网卡或使用集成通讯模块的专用PDA:一般采用802.11b无线局域网技术组建无线局域网,要求无线接入点一般具有交换或路由功能,有效通讯距离可达100米,最高可达300米,能够真正实现移动点菜,达到近乎完美的效果,但设备投资较大,现阶段推广难度比较大。由此可见,餐饮管理系统一般由具有无线通讯功能的终端,和无线通讯主模块相连的作为管理中心的服务器,作为连接集线器的HUB,各厨房出单打印机,经理、财务、仓库等查询管理终端构成。应用此系统,顾客通过无线终端可在移动过程中完成点菜,查询菜的原料组成,禁忌等信息;点菜结束后,通过无线方式实现与计算机收银管理系统进行无线数据交换,信息直接传送到服务台的服务器上,相关信息存入数据库,同时数据被分类处理送到相应的部门,如厨房根据它制作顾客所点的菜,酒水部根据它送酒水等等。实现从点菜、出菜、加菜、撤菜等全过程自动化,饭后顾客凭台号结帐,整个流程极大的提高了点菜与结账的效率。并且管理系统通过分级管理权限的设置,经理、财务等管理部门可调出相应的统计数据,计算机将给出分析图和走势图,并可打印各种报表,根据这些信息制定企业的发展规划。仓库可经由网络获取相关数据进行监督分析,实时补充菜品等。系统对各个操作环节进行全面的计算机管理,取消手工操作,为企业的生产、经营、管理提供便利。可以看出无线餐饮管理系统在餐饮行业的使用,具有以下一些明显的优点3:(1)无线方案不仅可以实现高速上网,其网络连接速度可达到10M以上,充分满足用户所需带宽。(2)安装施工迅速,不受时间限制,不会影响客人和饭店的正常业务。(3)不会破坏已装修好的客房,不会对各种设施造成损坏。(4)便于网络的管理。维护非常方便,大大优于有线网络。(5)对饭店以后的网络再升级,方便且迅速。不像有线网络那样较难拆除。1.3 论文的主要工作由前面的分析可以得出,无线点菜终端是现代化餐饮管理大系统中的一个有机组成部分,点菜系统的差别关键在于无线点菜终端实现方式的不同,目前市场上出现的产品,低档产品信息量有限,参考传统菜单,只能进行简单的无线数据传送功能:而高档产品,功能过于复杂,拥有太多不必要的功能的,背离了点菜的本意。所以市场急需一种价格适当,功能恰到好处适合广大餐饮企业的中档产品,因此我们决定开发一款中档产品来满足市场的需要。针对无线点菜终端这种非常具体的应用场合,既要求成本低廉,集成度尽量高,尽量减少外围器件,又要有丰富的软硬件资源,具有文字处理,彩色图片显示,无线通讯等处理能力,综合考虑各个方面的因素,采用嵌入式Linux+ARM系统是最适合的解决方案,本文研究基于嵌入式的无线点菜终端4。由于本论文只负责无线点菜系统服务器端的设计,研究的主要内容按如下章节组织:第一,绪论,介绍无线点菜系统的概念、国内点菜系统的发展和本论文所要做的主要工作;第二,无线点菜系统所使用的服务器操作系统的介绍和其优势,以及搭建嵌入式开发环境平台包括Linux和MySQL的安装;第三,无线点菜系统服务器与客户端无线局域网的设计与调试,无线网络协议和服务器、客户端无线模块的设计与调试;第四,无线点菜系统服务器端软件的设计,需求分析、数据库表的建立和信息的相互转换;第五,无线点菜系统服务器端的总体模块和功能实现,包括了服务器端技术构架、环境配置和模块设计等。2 无线点菜系统的环境搭建2.1 系统的整体结构本文实现的无线点菜系统主要由客户端、计算机网络和服务器三部分组成,点菜终端与服务器通过无线网络相连接。整体结构图如图2.1所示。图2.1无线点菜系统总体网络布局2.2 点菜服务端的安装2.2.1 Linux的起源和发展Linux是一个诞生于网络、成长于网络且成熟于网络的奇特的操作系统。1991年,芬兰大学生Linus Torvalds萌发了开发一个自由的UNIX操作系统的想法,当年,Linux就诞生了,为了不让这个羽毛未丰的操作系统矢折,Linus将自已的作品Linux通过Internet发布。从此一大批知名的、不知名的电脑黑客、编程人员加入到开发过程中来,Linux逐渐成长起来5。 Linux一开始是要求所有的源码必须公开,并且任何人均不得从Linux交易中获利。然而这种纯粹的自由软件的理想对于Linux的普及和发展是不利的,于是Linux开始转向GPL,成为GNU阵营中的主要一员。 现在,Linux凭借优秀的设计,不凡的性能,加上IBM、INTEL、CA、CORE、ORACLE等国际知名企业的大力支持,市场份额逐步扩大,逐渐成为主流操作系统之一。计算机在应用中可以分为桌面应用(工作站/客户机)和服务器应用,桌面应用直接面向客户,实现一些个性化的工作;服务器应用则是一些后台处理系统,实现一些共性的服务工作。对于桌面应用来说,易用性十分重要,而对于服务器而言,性能可靠、稳定才是更重要的。Linux操作系统是一种类UNIX操作系统,其设计上对稳定性的考虑比易用性考虑要多得多,它不是一种桌面系统,它也不是为了取代桌面系统而出现的。所以作为服务器,Linux优于Windows,但低于Unix。由于Unix的使用费用过高,Linux具有开源、低廉和实用的优点,Linux成为本论文所选用的操作系统。综合分析而言,Linux具有以下几点优点6:1) 提供了先进的网络支持:内置TCP/IP协议; 2) 真正意义上的多任务、多用户操作系统; 3) 与UNIX系统在源代码级兼容,符合IEEE POSIX标准; 4) 核心能仿真FPU; 5) 支持数十种文件系统格式; 6) 完全运行于保护模式,充分利用了CPU性能; 7) 开放源代码,用户可以自己对系统进行改进; 8) 采用先进的内存管理机制,更加有效地利用物理内存;2.2.2 点菜系统服务端的安装Red Hat Linux是最成熟的一种Linux发行版,其无论在销售还是装机量上都是市场上的老大。在中国老一辈Linux爱好者中几乎都是RedHat的使用者。2004年4月30日,Red Hat公司正式停止对Red Hat 9.0版本的支持,标志着Red Hat Linux的免费时代正式结束。从此Red Hat公司不再开发桌面版的Linux发行包,而将全部力量集中在服务器版的开发上,也就是Red Hat Enterprise Linux版。 2005年10月RHEL4发布。RedHat Linux朴实、简洁、稳定,是作为商业应用、钻研Linux的好平台。故本论文服务器所使用的操作系统也是Linux家族中的一员Red Hat Enterprise Linux 4(简称“RHEL4”)。本论文是使用RHEL4光盘(共4张)进行,简单描述RHEL4的安装方法:1. 插入RHEL 4的光盘,从光驱启动。2.看到 boot: 提示后按回车,直接安装 RHEL 43.选择安装要使用的语系。4.选择键盘的类型。5.分区的划分。最好手动,注意自己的资料别搞丢掉。swap是虚拟记忆体一样,一般是自己内存的2倍。至少还要建立一个“ / ”,然后输入分区大小。也可以划分“boot”,大小不用太大。最好再加个“root”。6.设定开机管理程序,可以使用“GRUB”,然后选择这个程序可以管理哪些作业系统,如果没有XP,2003等系统,只能看到RHEL的项目。7.网络的设定,根据需求,是用DHCP还是手动配置IP。然后设定主机名称。再来就是网关,DNS等信息。8.防火墙的设定,默认是启用的。下面是设定开启哪些服务 PORT。也可以停用防火墙。9.选择要安装的语系。可以选择个或者多个,最好把English(US)装上,然后再选择自己要用的,记得上面选择一个默认的。10.选择自己的时区。11.设定root(根用户)的密码。12.设定要安装的套件,可以默认安装,也可自己定制。定制里自己可以选择需要的组件。最好是定制,要不然会少很多组件。有一些组件选择时,每一个组件里还有很多详细的小组件。自己看去。13.点下一步,让系统自己安装,中间会要换光盘。14.重启后进入授权界面,日期时间,显示设定,前面是要同意的,时间日期还有显示设定,自己根据情况选择。15. Red Hat注册。16.添加用户,可以在这里加用户,可以加也可以不加。17.配置Linux环境和装别的组件。18.在XWINDOW窗口登入,用户就可以进入Linux桌面。2.2.3 MySQL安装在Linux/UNIX操作系统中,使用数据库,一般会用到mysql。本文是在RHEL4中安装MySQL,其过程如下:1.下载mysql到RHEL4系统中,也可以用共享的方法或FTP从其他计算机复制(我使用的是mysql-4.0.18.tar.gz)2.把mysql解压到/usr/local# tar zxvf mysql-4.0.18.tar.gz C /usr/local 3.进入解压目录# cd /usr/local/mysql-4.0.184.进行编译前的配置,指定安装位置为/usr/local/mysql#./configure -prefix=/usr/local/mysql5.编译成二进制安装文件(这步大约20分钟左右才能完成,机器的配置不同,时间也会不同)#make6.测试(这步可以不做,这个步骤所用时间也比较长)#make test7.安装编译好的二进制文件#make install8.初始化数据库(这步会创建mysql数据库,相当于在SQLServer中创建系统数据库和用户数据库)# /usr/local/mysql/bin/mysql_install_db9.创建mysql所需的用户和组# groupadd mysql# adduser g mysql mysql10把/usr/local/mysql及其子目录的拥有者改为root,拥有组改为mysql,把/usr/local/mysql/var的拥有者改为mysql(使用mysql用户启动mysql时,mysql必须对mysql中的数据库有读取权限)# chown -R root /usr/local/mysql# chgrp -R mysql /usr/local/mysql# chown -R mysql /usr/local/mysql/var11启动mysql数据库服务,并指定后台运行# /usr/local/mysql/bin/mysqld_safe -user=mysql &22更改数据库管理员密码,默认管理员为root,密码为空,我设置的密码为123# /usr/local/mysql/bin/mysqladmin -u root password 12323使用客户端工具,以管理员身份登录mysql服务器,看是否成功# /usr/local/mysql/bin/mysql -u root -pmysqlexit#2.3 点菜服务端的嵌入式环境搭建前面一章描述了本系统的总体结构,为了更好的满足应用需求,需要对这些资源进行改造,以得到合乎要求,性能更好的系统。2.3.1 交叉编译工具链交叉编译工具链的目的是为了在一个平台体系结构下(如X86PC机)能编译、链接、处理和调试另一个平台体系结构下(如ARM)的程序,使得编译生成的程序熊够在另一平台下运行。Linux使用的是的GNU工具链,包括:binutils,gcc,glibc等。binutils是二进制文件的处理工具集,主要是一些辅助开发的工具,例如objdump是反汇编工具,它可以产生反汇编代码;nm列出程序的符号表;strip将不必要的代码去掉以减小可执行文件或者库文件的大小;readelf显示elf文件信息及段信息。这些工具在调试过程中对开发者的帮助是非常大的,例如可以从am列出的符号信息得到该符号的地址,从丽在该符号处设置断点。gcc是编译器,用来编译内核和应用程序。它既可以编译汇编语言也可以编译C语言。gcc有对应多个平台的版本,例如有ARM的,有MIPS的等等,对痰生成多种平台的代码。本文所焉到是ARM平台的gcc,叫做arm-linux-gcc,生成ARM代码。glibc是GNU发布的libc库,也即C运行库。它是linux中最底层的api,几乎其他任何的运行库都会依赖于glibc。glibc除了为封装linux操作系统所提供的系统服务强,还提供了许多其他必要的功能服务,如字符串处理、信号处理、动态内存的分配与管理以及一些其它基本功能。glibc是进行linux应用开发的基础。建立一个交叉编译工具链是一个非常复杂豹过程,而且,稍有出错会为随后的开发带来很大的麻烦。幸运的是,网上有一些已经编译好并经过了验证的交叉编译工具链,铡如ARM官方霜站.uk就有多个版本的交叉编译工具链。为了保证开发进度,本系统采用TQ2440开发板自带的交叉编译器是cross 2.95.3 tar.bz27。我们对它进行安装:.1、在/usr/local目录下新建arm目录。#mkdir /usr/local/arm2、进入arm目录,将工具链cross_2.95.3.tar.bz2复制到该目录下,进入该目录,并执行解压命令。#tar jxvf cross_2.95.3.tar.bz2执行完毕,在当前目录下将会多出文件夹2.95.3,这就是交叉编译器所在目录。3、虽然安装了交叉编译器,但系统不一定能找得到,所以我们要根据自己的安装目录为系统增加编译器路径。增加编译器路径可通过两种方法实现:(1)使用export命令增加环境变量。#export PATH=$PATH:/usr/local/arm/2.95.3/bin或者export PATH=/usr/loca/arm/2.95.3/bin:$PATH(2)修改/etc/profile文件。在Path manipulation处增加“pathmunge/usr/local/arm/2.9/bin”,即把编译器的路径添加到PATH中。修改/etc/profile文件:#vi /etc/profile增加路径设置:pathmunge /usr/local/arm/2.95.3/bin在编译过程中,经常接触的工具除了交叉编译工具链外,还有一个就是GNU make程序,make完成开发项目中自动编译的工作。它可以从源代码生成目标可执行程序,还可以有效地避免重复操作,如果仅修改了某几个源文件,则只重新编译这几个源文件,或者某个头文件被修改了,则重新编译所有包含该头文件的源文件。利用make可大大化简开发工作,避免不必要的重新编译。make主要是通过Makefile来完成工作的。Makefile主要描述了目标文件是从哪些依赖文件中产生的,是用什么命令来进行这个产生过程的。有了这些信息,make会检查磁盘的文件,如果目标文件的日期至少比它的一个依赖文件日期早的话,make就会执行相应的命令,以更新目标文件。2.3.2 建立tftp服务器客户终端(以TQ2440嵌入式开发板作为模拟终端)上使用ZLG/BOOT作为bootloader,但处于学习的考虑,本文把实验箱自带ZLG/BOOT替换成U-boot,这个bootloader使用tftp协议从宿主机上下载文件到开发板上。为了使用tftp在宿主机和开发板之间传输文件,在宿主机上需要安装配置tftp服务器。本文的点菜服务器端安装的是RHEL 4,已经安装有tftp服务器程序,仅进行适当的配置即可。在Linux的shell命令提示符下输入setup,选择System Services,将其中的tftp一项选中,并去掉ipchains和iptables两项服务,然后把防火墙关掉,退出setup。查看一下系统中有没有/tftpboot/目录,如果没有就在根目录手工创建一个,利用tftp传送的所有文件必须放到该目录中。最后,还需要重启一下网络守护程序:service xinetd restart,tftp服务器就配置完成了。本课题对此tftp服务器进行了测试:复制一个文件something至/tftpboot/目录下,然后执行8:tftp 得到以下结果:Received 741512 bytes in 0.01 secends此信息表明tftp服务器已经配置成功,可以正常使用。本系统的内核文件和根文件系统都是通过tftp下载到目标平台的。2.3.3 配置NFS服务器网络文件系统NFS极大地化简了开发与调试过程。在没有NFS的情况下,一般的开发调试过程都是:编译生成目标平台的可执行文件-制作ramdisk-下载ramdisk到开发板上-启动开发板的系统-运行程序10。这个过程将一直重复,直到程序的运行结果正确为止。有了NFS,开发板上的系统可以把宿主机的某个目录当作本机上的目录甚至是根目录。这样,把宿主机上交叉编译好的可执行文件复制到NFS目录中,在开发板上就可以运行该可执行文件。开发调试过程变为:编译生成目标平台的可执行文件-复制文件到nfs目录-运行程序,省去了制作ramdisk、下载ramdisk和重启开发板几个步骤,而这几个步骤又是占整个过程绝大部分时间的,因此也节省了大量的宝贵时间9。RHEL4完全安装版有NFS服务器程序,需要做一些配置才能使其可用。(1)设置服务器网卡,包括IP地址、掩码地址等,可参考Linux教材。(2)关闭防火墙从Main Menu,选择System Settings-Security Level,进入安全级别设置界面,将其安全级别设置为No Firewall。(3)去掉iptables服务从Main Menu,选择System Settings-Server Settings-Services,在弹出的界面中,将iptables、ip6tables和ipchains前面的”去掉。(4)启动NFS服务从Linux的Main Menu,选择System Settings-Server Settings-NFSServer,添加NFS路径。本课题对NFS服务进行了测试,将主机上的共享目录mount到自己另外一个目录下:#mount :/root/mnt然后查看/mnt目录,能够看到共享目录下的文件,证明NFS服务启动成功。为了方便应用,本文在/etc/rc.local文件末尾添加下边所示的命令,让每次开机即启动NFS服务。service portmap restartservice nfs restart3 无线点菜系统的服务端与客户端的网络设计3.1 无线网络设计本论文的无线点菜系统主要由客户端、计算机网络和服务器三部分组成,而且服务器端与客户端的通讯主要是通过无线网络wifi进行数据传输,为了实现点菜终端与服务器通过无线网络相连接。整体结构图如图2.1所示。3.1.1 无线局域网20世纪90年代,无线通信技术与计算机网络相结合产生了无线局域网(Wireless Local Area Network,WLAN)技术。WLAN是指采用无线介质传输的计算机局域网,采用的标准是IEEE 802.11系列。WLAN可以为移动或半移动的用户提供高效、优质、低成本的宽带接入服务。无线局域网(WLAN)是相当方便的数据传输系统,是取代双绞线的无线局域网络,WLAN的传输方式包括WLAN采用的传输媒介、选择的频段及调制方式。无线局域网具有通信可靠、成本低、灵活性、可移动性和高吞吐量等特点。WLAN的应用非常广泛,它是有线网络的备份,利用计算机无线网络作为有线网络的备份,可以大幅度提高网络系统的可靠性,当有线系统出现故障时,系统可自动切换到无线网络,应用可照常进行。同时无线网络相对于有线网络具有很大的灵活性和机动性。无线网络的站点可以按照需要在一定的区域内移动,从而实现移动通信10。3.1.2 IEEE 802.1lb体系结构IEEE(电子电机工程师防会,The Institute of Electrical and Engineer)在1997年时提出了一个无线网络的通信标准,称为IEEE802.11,这个规格是为了各个厂商的无线网络设备在这个标准下达到兼容并且稳定的无线传播环境。早在1990年,IEEE802标准化委员会就成立了IEEE802.11 WLAN标准工作组,其主要任务是研究工作在工业、科技、医疗(Industry,Science and Medicine,ISM)2.4 GHz频段、传输速率为1 Mbit/s和2 Mbit/s的无线设备和网络发展的标准,并于1997年7月公布了该标准。1999年,IEEE通过了802.11a和802.11b标准。802.11a定义了采用正交频分复用(Orthogonal Frequency Division Multiplexing,OFDM)调制技术在5GHz频段实现54 Mbit/s传输速率的无线传输。802.11b定义了使用直接序列扩频(Direct Sequence Spread Spectrum,DSSS)调制技术在2.4GHz频带实现11 Mbit/s速率的无线传输。由于DSSS技术的实现比OFDM容易,802.11b标准的发展比802.11a快很多,在1999年末首先出现了支持802.1lb标准的产品,随后得到广泛应用,并通过互通性测试。因此802.11b,成为当今WLAN的主流标准。目前,市场上有许多802.1lb的产品问世,如用户可以将PCMCIA接口的IEEE802.1lb无线网络片插在具有PCMCIA扩充槽的笔记本电脑或者是个人数字助理上,就可以在152.4米范围内与无线桥接器(Wireless Access Points)连上,进行网络的传输工作、收发Email或者是浏览网页等。IEEE8021lb具有基本的加密机制Wired Equivalent privacy Mechanism,可以确保数据传输的安全性问题,用以防止一般数据被他人截获,并且保护数据传输的完整性。802.11b的最大特点是可以根据无线信道状况的变化,在11Mbit/s,5.5Mbit/s,2 Mbit/s,1Mbit/s之间进行速率的动态调整。802.11无线网络只要在原有的网络架构上安装一部AP(Access Point,俗称的“无线网络接入点”)后,就可以提供无线网络的服务。本文设计的无线点菜系统还须在嵌入式Linux设备上安装无线网卡,这样就可以通过AP存取网络上的资源了。3.2 点菜客户终端无线硬件设备本课题实现的点菜终端硬件平台使用的是TQ2440开发板平台,TQ2440是一款可使用Linux和WinCE操作系统、支持QT、GUI图形系统,集众多功能于一身的ARM9教学实验开发平台。采用Samsung公司的ARM920T内核的S3C2440微处理器,扩展有充足的存储资源和众多典型的嵌入式系统接口,是优秀的嵌入式系统创新平台。本点菜终端的处理器采用三星S3C2440芯片,为系统运行提供了速度上的保障:存储部分采用了两块Flash存储器,一块是用来存放bootloader的SST公司的SST39VFl601 2MB Nor Flash,另一块是用来存储文件系统的Samsung公司K9F1208 64MB NAND Flash,为操作系统提供了充足的空间;内存方面用的使Hynix公司的HY57V657620的64MB内存,PC100/133兼容。另外,在处理器外围还扩展了LCD、PCMCIA、键盘、无线通信模块11。其总体结构如图3.2所示:图3.1 TQ2440总体结构图无线管理系统和运作所需要的功能核心都集中在PC上,显然,上位机程序的运行离不开PC机的绝大部分硬件、软件资源,因而,对于PC上的处理器、存储器、文件系统等等的利用此处不加论述,而仅以PC串口为中心进行PC上的硬件利用的介绍。串口通信,即PC串口和终端的链接问题,故而将所有有关串口的问题作为一个整体进行介绍。进一步基站串口及其连接、使用,必然需要先了解终端的核心微控制器,在此先介绍终端的核心处理芯片开始。S3C2440是Samsung公司推出的16/32位RISC处理器(ARM920T内核),适用于手持设备、POS机、数字多媒体播放设备等等,具有低价格、底功耗、高性能等特点。S3C2440提供了以下丰富的内部设备:16KB的指令Cache和16KB数据Cache,MMU虚拟存储器管理,LCD控制器(支持STN&TFT),支持NAND Flash系统引导,系统管理器(片选逻辑和SDRAM控制器),3通道UART,4通道DMA,4通道PWM定时器,I/O端口,RTC,8通道10位ADC和触摸屏接口,IIC总线接口,IIS总线接口,USB主机接口,USB设备接口,SD卡&MMC卡接口,2个SPI总线接口以及内部PLL时钟倍频器。S3C2440采用了ARM920T内核,0.18um工艺的CMOS标准宏单元和存储器单元。它的低功耗、精简和出色的全静态设计特别适用于对成本和功耗敏感的应用。同样他还采用了Advanced Microcontroller Bus Architecture(AMBA)新型总线结构。S3C2440提供了一系列完整的系统外围设备,消除了对系统配置额外器件的需要,大大减少了整个系统的成本。S3C2440主要的特征如下:203Mhz的ARM920T内核,支持JTAG仿真调试;16KB的I-Cache和16KB的D-Cache;具有MMU,支持WinCE、EPOC32、Linux等操作系统;外部存储器控制器(SDRAM控制和片选逻辑),共分8个Bank,每个Bank可访问128MB空间;片选4KB SRAM,可用作NAND Flash系统引导得缓冲区;LCD控制器(最大支持4K色STN和256色TFT),1通道LCD专用DMA;4通道DMA,有外部请求引脚;3个UART(IrDAl.0,16字节TxFIFO,16字节RxFIFO);2个SPI总线接口;1个多主IIC总线接口;1个IIS总线接口;兼容SD主接口协议1.0版和MMC卡协议2.11兼容版;NAND Flash/SM卡接口,支持NAND Flash系统引导;2个USB主机接口,1个USB设备接口(V1.1);4个PWM定时器和一个内部定时器;看门狗定时器;117个通用I/O口;24个外部中断;8个通道10位ADC和触摸屏接口;具有日历和时钟功能得RTC;1.8V内核供电,3.3V存储供电,3.3V外部I/O供电;功耗控制模式:普通,慢速,空闲和掉电模式;具有片内PLL时钟发生器;S3C2440的编程模型及指令集除了扩展一些设备控制器外与ARM920T都是相同。3.3 点菜服务端和客户终端的调试连接方式在服务器端无线传输是通过wifi的无线接入点,进行数据的发送和接受。而在TQ2440平台(模拟客户终端)上,CF无线网卡(见图3.2)通过CF转PCMCIA接口卡与系统相连。CF卡全称是“Compact Flash”(CF:压缩闪存)是目前世界上最小的大容量存储设备之一,1994年由SanDisk最先推出。CF卡具有PCMCIA-ATA功能,并与之兼容。CF卡50针,但能够很容易地插入68针II型适配器卡(槽)(完全满足PCMCIA机电界面技术要求)中使用。CF卡使用的连接器与PCMCIA的相似。PCMCIA/CF卡拥有两个存储空间:属性内存(attribute memory)和公共内存(common memory)。属性内存类似于CIS(Card Information Structure),用来保存配置注册和描述符信息。Linux卡服务核心与主机控制器设备驱动程序、卡设备驱动程序及用户模式cardmgr后台进程交互。我们使用的是华硕WL-110无线网卡,该网卡符合802.11b协议,使用CF接口。配置网卡之前,必须先禁用有线网络连接设备eth0,否则产生冲突,无法连接网络。在平台插入无线网卡后,先运行cardmgr命令,对无线网络进行配置检测,然后可以使用cardctl命令查看状态网络状态,若检测到就可以配置IP地址通过无线接入点AP上网了,ping网关可以看到网络连通的信息,同时,执行ifconfig可以看到ethl设备,即配置成功。如果配置好了无线网卡后仍然不能通过无线网络上网,这是因为手持终端的有线网络没有屏蔽掉。用命令:ifconfigethodown来屏蔽掉有线网络。然后就可以利用无线网络来上网。本系统启动无线网络的命令为12:#cardmgr#ifconfig ethl #ifconfig eth0 downcardmgr命令来激活无线网卡,ifconfig命令来设置无线IP,最后一个命令就是用来屏蔽有线网络。4 无线点菜系统服务端软件设计4.1 点菜软件系统的总体设计在系统软件方面,我们为系统移植了bootloader-uboot;操作系统内核采用的是linux2.6.30,并对内核重新进行了配置,去掉一些与本系统无关的选项,使内核最小化;根文件系统采用了ramdisk格式,并在其中加入了Qt/Embedded的库文件以及MySQL客户端可执行文件【13】;我们在服务器端的Linux系统上运行了MySQL数据库,用来存储数据。下图为本系统的软件结构图。图4.1软件结构图本设计综合运用嵌入式数据库、网络通信及嵌入式图形界面。系统采用C/S结构,实现简单的基于以太网的点菜系统。PC机将作为服务器置于厨房,存储菜品并显示点菜情况;嵌入式开发板TQ2440作为客户端,显示菜品信息和房间占有信息,服务员根据顾客的需求在客户端上选择房间并为顾客点菜,顾客用完餐后服务员在客户端更新房间占用情况。系统结构如图4.2所示。图4.2无线点菜系统图根据以上分析,我们可以设计服务端功能模块层次结构如图4.3:主控模块(图形界面)服务器端收发数据更新房间状态查询数据显示房间及其菜单图4.3服务端功能模块层次结构图4.2 服务端数据库需求分析4.2.1 数据流图1)“电子点菜系统”顶级(0级)数据流图图4.4顶级数据流图服务员和厨师的交流,是通过无线点菜系统的数据处理,再进行转化为相关信息。2)“电子点菜系统”1级数据流图图4.5 “电子点菜系统”1级数据流图这是前台餐厅中,服务员掌握了客户选房/退房、点菜和就餐情况等信息,通过无线点菜系统的客户端,发送信息到服务器端。服务器接受客户
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 跨组别沟通课件
- 医院新员工培训
- 儿童计数能力培养课件
- 2025版海洋环境保护技术研发科研技术服务合同
- 时代光华课件智能制造
- 二零二五年度离婚不离家财产分割与子女抚养权共享协议
- 二零二五年度进出港快件短驳运输与跨境电商物流服务协议
- 二零二五年度环保设备售后服务协议范本正规范本
- 二零二五版绿化工程园林植物保护劳务合同范本
- 二零二五年商业街承包招商合同模板
- 保安员资格考试复习题库及答案(800题)
- 乡村公路沥青铺设施工方案
- 普外科常见病种
- 智慧校园系统项目招标评标方法评分标准
- 2024年四川省公务员录用考试《行测》真题及答案解析
- DB1402T36-2024农村居家养老服务规范
- 中国发电企业碳中和数字转型白皮书-埃森哲
- 水稻植保无人机服务协议
- Unit 6 Work quietly!(教学设计)2023-2024学年人教PEP版英语五年级下册
- 读后续写体育竞技个人成长课件高三英语二轮复习
- 高考英语考纲词汇3500词(珍藏版)
评论
0/150
提交评论