<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 手機與無線通信 > 設計應用 > 基于nRF24E1的無線點菜系統(tǒng)架構

          基于nRF24E1的無線點菜系統(tǒng)架構

          作者: 時間:2008-03-17 來源:網絡 收藏
          摘要 隨著人們對餐飲業(yè)要求的不斷提升,應運而生。它有效地利用了計算機應用、無線通信、網絡數據庫等先進的現代化技術,是一套全新概念的,集先進性、實用性、易用性、嚴密性、穩(wěn)定性于一身的,具有完整的經營理念和管理方法的應用。本文結合無線片上芯片,構架一種針對中小型餐飲企業(yè)的系統(tǒng)。
          關鍵詞 nRF24El 無線片上系統(tǒng) 系統(tǒng) IEEE802.11b


          隨著社會生產力的蓬勃發(fā)展和人民生活水平的日益提高,餐飲業(yè)的發(fā)展和競爭也只趨白熱化,其范圍已經從原先的經營規(guī)模、商品價格等硬件因素漸漸擴大到經營策略、服務質量、管理效率等軟什因素上來。
          無線點菜系統(tǒng)作為整個餐飲管理系統(tǒng)的重要組成部分,對企業(yè)的管理水平和服務質量起著決定性的作用。目前無線點菜已經成為衡最餐飲業(yè)檔次的重要標志之一,因此越來越多的餐飲企業(yè)都陸續(xù)地使用了先進的無線點菜系統(tǒng)。


          1 無線片上系統(tǒng)
          無線片上系統(tǒng)對高頻電路與外圍電路進行了大量集成。它將全部的高頻部分電路和許多外圍元件集成到了電路內部,僅需要很少的外圍電路就能建立一個無線通信系統(tǒng);使微處理器和高頻線路間實現完美的配合,將數字電路對高額通信的影響減到最??;將高頻通信的處理,簡化為對寄存器的簡單操作處理。所以,采用無線片上系統(tǒng),是開發(fā)低成本、低功耗無線通信應用系統(tǒng)的理想方案之一;而正是一種主流的、優(yōu)秀的無線片上系統(tǒng)。
          nRF24El是一種工作頻率可達2.4GHz的無線射頻收發(fā)芯片。內部嵌有與8051兼容的微控制器和10位9輸入的A/D轉換器,可以在1.9~3.6 V的電壓下穩(wěn)定工作;內部還有電壓調整器和VDD電壓監(jiān)視,通道開關時間小于200μs,數據速率為1Mbps,無需外接SAW濾波器。
          nRF24E1足日前世界首推的全球2.4 GHz通用的、完整的低成本射頻系統(tǒng)級芯片。無線收發(fā)部分有與nRF2401同樣的功能。該功能由外部并行口和外部SPI啟動,每一個待發(fā)信號對于處理器來講都可以作為中斷來編程,或者通過GPIO端口實現。nRF24E1是一個可以在世界公用的頻段范圍(2.4~2.5GHz)內實現無線通信的芯片。收發(fā)機包含1個完全集成的分頻器、放大器、調節(jié)器和2個收發(fā)單元。輸出能量、頻段和其他射頻參數,可通過射頻寄存器方便地編程調節(jié)。在發(fā)送模式下,電流消耗只有10.5 mA;在接收模式下,只有18 mA,所以功耗相當低。
          從圖l可以看到,nRF24E1由1個8051微控制器內核和1個nRF2401無線收發(fā)芯片等組成。芯片包括:增強型8051內核、無線收發(fā)器nRF2401、9路100 ksps的10位A/D轉換器、UART異步串口、SPI接口、PWM輸出、RC振蕩器、看門狗和喚醒定時器以及內置的專門穩(wěn)壓電路等。

          在nRF24E1的內部存儲空間中。512字節(jié)ROM用于存儲引導程序。上電后,它可將EEPROM中存儲的程序下載到4KB RAM的程序運行空間,另外的256字節(jié)RAM為數據存儲器。無線收發(fā)器nRF2401可以通過軟件編程來設定接收地址、收發(fā)頻率,發(fā)射功率、無線傳輸速率、無線收發(fā)模式,以及CRC校驗和的長度和有效數據的長度等無線通信參數。
          圖2為nRF24E1的典型應用電路。從圖中看到,采用Nordic nRF24El無線單片機芯片設計的線路非常簡單,外圍零件很少,也非常容易進行沒計開發(fā)。
          nRF24E1體積小、功耗低,非常適用于對體積和功耗要求較高的應用場合;可廣泛應用于計算機外設、無線耳機、玩具、游戲手柄、汽車電子、醫(yī)療器械、遙控和工業(yè)傳感器等方面。


          2 無線點菜系統(tǒng)的具體
          2.1 系統(tǒng)功能
          由于本無線點菜系統(tǒng)是針對中小型餐飲企業(yè)設計開發(fā)的,因此該系統(tǒng)設計主要突出了操作設備成本低廉,安裝簡易,數據傳輸快捷,用戶操作方便,客戶查詢界面清晰,最終消費過程明了等應用特點,為餐飲企業(yè)解決勞動力密集、管理過程繁雜、易出現跑冒滴漏等問題,并杜絕由此引起的不良后果;同時,針對餐飲企業(yè)的規(guī)模和開放式點菜特點,要求該系統(tǒng)在容量、穩(wěn)定性、嚴密性等方面有良好的表現。
          該系統(tǒng)采用了目前較先進的8051無線片上系統(tǒng)(SoC)和無線局域網(WLAN)技術;同時,通過無線網卡實現點榮系統(tǒng)后臺服務器與計算機收銀管理系統(tǒng)進行無線數據交換,實現從點菜、出菜、加菜、撤菜等到菜品進廚房、到結賬的全過程自動化。
          (1)餐廳內就餐
          ①迎賓及點菜:餐廳服務員引導顧客到餐臺就座,服務員根據顧客要求通過無線發(fā)送/接收終端完成點菜或由顧客自己完成點菜,點菜后通過終端顯示設備為顧客顯示菜單確認。
          ②數據傳輸:通過無線發(fā)送/接收終端將點菜數據無線發(fā)送上傳給服務器。
          ③打印菜單:服務器經過后臺處理,分別在冷菜、熱菜、面點、灑水等制作問通過廚房打印機打印出廚房單(可打印條碼),在傳菜部打印出傳菜單。
          ④配菜并出菜:廚房根據菜單完成配制菜肴,出菜時傳菜部自動掃描劃單后為顧客上菜。
          ⑤結賬:最后由收款員在收銀臺打出結賬單為顧客結賬。
          ⑥后臺數據庫管理:定時統(tǒng)計并清理當天營業(yè)數據。
          (2)餐廳外點外賣
          由于點外賣的很多不確定因素,本外賣點菜子系統(tǒng)采用會員制管理。具體操作過程如下:
          ①注冊。顧客到餐飲企業(yè)指定部門辦卡,包括填寫會員信息、設置密碼、卡內充值等,并領取無線點菜終端使用說明書一份。
          ②登錄。想要點外賣的顧客可以在該餐飲企業(yè)所設的任意點菜終端輸入用戶號及密碼(刷卡)登錄系統(tǒng)。
          ③終端點菜。顧客通過無線發(fā)送/接收終端實現點菜,點菜后確認完成。
          ④數據傳輸。通過無線發(fā)送/接收終端將點菜數據無線發(fā)送上傳給服務器。
          ⑤打印菜單。服務器經過后臺處理,分別在冷菜、熱菜、面點、灑水等制作間通過廚房打印機打印出廚房單(可打印條碼),在傳菜部打印出傳菜單。
          ⑥配菜并外送。廚房根據菜單完成配制菜肴,出菜時傳菜部自動掃描劃單后由指定服務員送榮。
          ⑦結賬。點菜確認5min后,自動實現卡內扣款。
          ⑧后臺數據庫管理。定時統(tǒng)計并清理當天已完成交付業(yè)務的數據。
          2.2 業(yè)務流程
          該無線點菜系統(tǒng)的業(yè)務流程如圖3所示。餐廳內的就餐點和餐廳外的外賣點都可以通過無線發(fā)送/接收終端輔助完成點菜,并通過無線傳輸將點菜數據傳送至后臺服務器,再由服務器進行分單打印和數據無線傳輸至收銀用機、傳萊用機;根據所得數據,收銀機結賬并打印賬單,傳菜機打印、傳菜、劃單,最后由服務員完成送菜、上菜。

          2.3 系統(tǒng)設計
          無線點菜系統(tǒng)中點菜模塊外觀及總體設計如圖4所示。其中發(fā)送、接收端通過nRF24El芯片實現無線數據傳輸。

          無線點菜系統(tǒng)中點菜模塊流程如圖5所示。

          首先由用戶在點菜終端輸入用戶號和密碼(刷卡)登錄,餐廳內的就餐點由服務員輸入信息進入系統(tǒng),餐廳外的外賣點只有注冊會員能夠輸入信息進入系統(tǒng)。
          當驗證用戶臺法后,用戶可以進行點菜操作。點菜時直接通過菜肴的編碼和加減運算符組合輸入即可實現點菜,方便快捷。具體編碼可參考無線點菜終端使用說明書。例如,要點的菜肴分別是:糖醋排骨(編碼為3016),番茄炒蛋(編碼為3125),清蒸鯽魚(編碼為3226),鹽水白蝦(編碼為3265),米飯(編碼為5001)。其中米飯要兩份。通過無線點菜終端輸入“3016+3125+3226+3265+5001+5001”,然后按“確認”鍵即可。
          用戶點菜輸入并確認后.無線點菜終端將用戶已點菜肴信息顯示輸出;用戶核對無誤,再次“確認”點菜,如需加菜、減菜,可按“取消”鍵回到上一步;同樣通過菜肴的編碼和加減運算符組合輸入來實現加/減菜。例如,要加的菜肴是芋艿排骨煲(編碼為3028),紅燒帶魚(編碼為3212);要減的菜肴是糖醋排(骨編碼為3016),清蒸鯽魚(編碼為3226),則通過無線點菜終端輸入“+3028+3212-3016-3226”,然后按“確認”鍵即可。
          用戶完成點菜后,無線點菜終端會將點菜數據傳輸給遠程服務器,并給出“您已成功點菜!”的顯示信息,用戶此時可以退出系統(tǒng)。對于餐廳外的外賣點,5min內用戶不再進入系統(tǒng)修改或取消點菜信息則自動從用戶卡中扣款完成結賬,并在指定時間內為用戶烹制好所點菜肴送到指定位置。
          2.4 數據流程
          無線點菜系統(tǒng)中數據流程框圖如圖6所示。

          整個點菜系統(tǒng)的數據來源主要是餐廳外外賣點或餐廳內就餐點的顧客用餐點菜數據。其中數據的傳輸方式是按照IEEE802.11b協(xié)議,以無線傳輸方式發(fā)送至后臺服務器接收端,再由服務器處理后發(fā)送給收銀工作站和傳菜工作站等。
          顧客點菜完成后.點菜數據首先通過無線點菜終端發(fā)送,接收端將該數據接收到后臺服務器處理,服務器再將處理好的點菜數據實時傳輸給收銀上作站、傳菜工作站和廚房的各遠程打印機。收銀工作站可以根據所收到的點菜數據進行賬務管理;傳菜工作站可以根據所收到的點菜數據進行傳菜管理;廚房的各打印機響應到后臺數據庫的遠程打印命令會自動打印出對應菜單,廚房各部門根據所打印菜單配制菜肴。
          例如,在餐廳內顧客的點菜數據為“3016+3125+3226+3265+5001+500100l 003”(“001”表示1號餐座,“003”表示3號服務員)。當后臺服務器接收到該數據后,通過訪問點菜數據庫和用戶數據庫,得到對應菜肴編碼信息和用戶信息,形成新的點菜菜單,即3016糖醋排骨¥18,3125番茄炒蛋¥8.3226清蒸鯽魚¥16,3265鹽水白蝦¥25,5001米飯¥1*2(米飯是2份),l號餐桌,3號服務員。用戶點菜確認完成后,無線點菜終端會自動在點菜信息之后加上“空格”、“終端號”和“空格”、“用戶號”,然后,服務器將這份新的點菜菜單傳輸給收銀工作站、傳菜工作站和廚房的各遠程打印機。
          如果是餐廳外就餐點,“終端號”只表示該終端的編號和位置,“用戶號”則為顧客的注冊會員號,對應該用戶的相關信息,包括用戶姓名及外賣送菜地點等。例如,顧客的外賣點菜數據為“3028+3125+3212+3265+5001+500l 102 223”。當后臺服務器接收到該數據后,通過訪問點菜數據庫和用戶數據庫,得到對應菜肴編碼信息和用戶信息,形成新的點菜菜單,即3028芋艿排骨煲¥20,3125番茄炒蛋¥8,3212紅燒帶魚¥18,3265鹽水白蝦¥25,5001米飯¥1*2(米飯是2份),102號終端(新世紀3#5),223號用戶(新世紀3#504趙先生)。之后,賬務管理、傳菜管理和廚房配制菜所看到的菜單就都是這張由后臺服務器處理過的新的菜單,最后反饋給用戶的賬單也是收銀工作站在這張新菜單基礎上核算形成的。


          結語
          nRF24El作為一種豐流的、典型的無線片上系統(tǒng),已經被廣泛應用于日常生活中各個方面的無線通信和無線網絡的設計開發(fā)中。本無線點菜系統(tǒng)就是利用nRF24E1無線收發(fā)芯片實現的,降低了成本,簡化了系統(tǒng)的硬件和軟件設計,減小了設備體積,增強了系統(tǒng)的可靠性。結合文中的基礎理論知識和具體的系統(tǒng)方法,可以進行深入的研究和探討,在切實了解nRF24E1的原理和特點的基礎上,進一步促進其在無線研發(fā)方面的更大發(fā)展。



          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();