無線點菜系統服務端的設計.doc_第1頁
無線點菜系統服務端的設計.doc_第2頁
無線點菜系統服務端的設計.doc_第3頁
無線點菜系統服務端的設計.doc_第4頁
無線點菜系統服務端的設計.doc_第5頁
已閱讀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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論