王厚英
(北海職業(yè)學(xué)院,廣西 北海 536000)
智能訂單是一種全新的無(wú)線(xiàn)手持終端,不僅集成了無(wú)線(xiàn)網(wǎng)絡(luò)技術(shù)和嵌入式技術(shù),還集成了當(dāng)前流行的人工智能等技術(shù),主要功能是訂購(gòu)食物、預(yù)約、結(jié)算、反饋和傳遞信息,適用于所有主要餐飲業(yè)務(wù)[1]。它不同于服務(wù)員的手動(dòng)點(diǎn)餐,客戶(hù)自助點(diǎn)餐的方式可以通過(guò)點(diǎn)餐訂購(gòu)后,訂購(gòu)信息立即通過(guò)無(wú)線(xiàn)網(wǎng)絡(luò)發(fā)送到主服務(wù)器,有效地避免手動(dòng)點(diǎn)餐效率低和餐廳人力不足的問(wèn)題。
智能點(diǎn)餐系統(tǒng)既可以節(jié)省勞動(dòng)力成本,而又不會(huì)失去餐廳必須具備的基本條件,餐飲業(yè)已逐漸達(dá)成共識(shí),未來(lái)從傳統(tǒng)餐廳向智能餐廳的轉(zhuǎn)變是不可逆轉(zhuǎn)的趨勢(shì)。營(yíng)銷(xiāo)模式的多元化,成為未來(lái)智能餐廳的重要標(biāo)準(zhǔn),智能點(diǎn)單機(jī)作為智能餐廳的重要代表,未來(lái)將成為餐飲業(yè)的寵兒。因此,根據(jù)市場(chǎng)需求情況,設(shè)計(jì)的點(diǎn)單機(jī)系統(tǒng)具備客戶(hù)簡(jiǎn)易操作下單、下單信息無(wú)線(xiàn)傳輸、服務(wù)平臺(tái)自動(dòng)接單和打印等功能,滿(mǎn)足餐飲進(jìn)行過(guò)程客戶(hù)的需求及提供更周到的現(xiàn)代化服務(wù),促使該行業(yè)的智能發(fā)展,同時(shí)也為相似服務(wù)行業(yè)提供了參考性系統(tǒng)服務(wù)理念。
本設(shè)計(jì)采用單片機(jī)作為主控芯片,根據(jù)芯片端口信號(hào)電平的高低變化調(diào)用和執(zhí)行相關(guān)程序,利用矩陣鍵盤(pán)模擬觸屏點(diǎn)控,ESP8266WiFi 模塊傳輸[2]客戶(hù)所點(diǎn)菜品,經(jīng)過(guò)C 程序執(zhí)行信息傳輸,C sharp 進(jìn)行菜品總價(jià)結(jié)算和打印等一系列操作。
在本設(shè)計(jì)中,單片機(jī)最小系統(tǒng)是核心控制器,人機(jī)交互實(shí)現(xiàn)點(diǎn)餐結(jié)算[3-4]。系統(tǒng)框圖如圖1 所示。

圖1 系統(tǒng)框圖
本設(shè)計(jì)的硬件系統(tǒng)主要包括單片機(jī)控制系統(tǒng)、矩陣鍵盤(pán)、LCD12864 液晶顯示器、ESP8266Wi-Fi 模塊無(wú)線(xiàn)傳輸模塊等,且C sharp 為底層開(kāi)發(fā)語(yǔ)言,Visual Studio2012 為上位機(jī)開(kāi)發(fā)工具。由復(fù)位電路、晶振電路、電源部分及芯片STC89C52 單片機(jī)構(gòu)成的小系統(tǒng)作為整個(gè)點(diǎn)單系統(tǒng)的主控,接發(fā)及處理人機(jī)操作的點(diǎn)單信息、控制液晶顯示屏工作及與Wi-Fi 模塊的通信;液晶顯示模塊設(shè)計(jì)主要便于呈現(xiàn)菜譜信息(菜品、價(jià)格、銷(xiāo)售情況等)、下單信息等;矩陣鍵盤(pán)用于功能切換——人機(jī)交互操作界面,客戶(hù)通過(guò)鍵盤(pán)上下鍵及確定、取消等鍵,落實(shí)點(diǎn)單需求;Wi-Fi 傳輸在此運(yùn)用ESP8266 串口模塊,通過(guò)串口通信與單片機(jī)進(jìn)行信息交互,同時(shí)使用通信TCP/IP 協(xié)議與上位機(jī)Windows Form 桌面應(yīng)用程序進(jìn)行通信,通過(guò)網(wǎng)絡(luò)數(shù)據(jù)流的方式進(jìn)行數(shù)據(jù)交互;上位機(jī)主要執(zhí)行數(shù)據(jù)接收并控制打印機(jī)自動(dòng)打印客戶(hù)選購(gòu)的菜單信息。
系統(tǒng)主要由STC89C52 單片機(jī)主控,拓展液晶屏幕模塊和Wi-Fi 模塊的設(shè)計(jì)對(duì)單片機(jī)數(shù)據(jù)處理和液晶屏幕顯示、Wi-Fi 模塊數(shù)據(jù)的傳輸以及按鍵的人機(jī)交互邏輯等功能的實(shí)現(xiàn)。系統(tǒng)硬件樣圖如2 所示,系統(tǒng)工作程序流程如圖3 所示。

圖2 點(diǎn)單機(jī)系統(tǒng)樣圖

圖3 系統(tǒng)程序流程圖
本系統(tǒng)中運(yùn)用TCP/IP 協(xié)議通信于Wi-Fi 模塊和上位機(jī)Windows Form 桌面應(yīng)用程序之間,通過(guò)網(wǎng)絡(luò)數(shù)據(jù)流的方式進(jìn)行數(shù)據(jù)交互[5,6],主要體現(xiàn)在上位機(jī)工作中。Windows Form 界面主要包括兩個(gè)textBox、兩個(gè)label 和兩個(gè)Button 控件,兩個(gè)textBox 用于接收Wi-Fi 模塊發(fā)送的數(shù)據(jù)和測(cè)試,兩個(gè)label 用于標(biāo)簽說(shuō)明,Button 控件用于個(gè)人測(cè)試時(shí)的數(shù)據(jù)發(fā)送的觸發(fā)事件和單據(jù)的打印。打印功能的實(shí)現(xiàn)主要基于軟件提供的打印組件printd-Dcument、printPreviewDialog。第一個(gè)組件的主要功能是為打印功能定義一個(gè)實(shí)例對(duì)象,將輸出的數(shù)據(jù)發(fā)送到打印機(jī),第二個(gè)組件的功能是顯示一個(gè)對(duì)話(huà)框,在打印關(guān)聯(lián)文檔時(shí)為用戶(hù)提供預(yù)覽效果[6,7]。若程序編寫(xiě)無(wú)語(yǔ)法錯(cuò)誤,程序則自動(dòng)調(diào)出可選擇打印機(jī)的窗體[6,7]。
本系統(tǒng)設(shè)計(jì)使用4 個(gè)按鍵,主要執(zhí)行客戶(hù)對(duì)菜單界面的一系列操作,例如菜單欄中光標(biāo)上下的移動(dòng),對(duì)其中某一項(xiàng)菜品的選擇或者取消以及選擇完畢后將選中的菜品通過(guò)Wi-Fi 模塊發(fā)送到上位機(jī)的服務(wù)器。
實(shí)驗(yàn)?zāi)M系統(tǒng)功能的測(cè)試,測(cè)試整個(gè)設(shè)計(jì)的完整性。
首先,液晶顯示器顯示菜品信息是整個(gè)設(shè)計(jì)的基本功能,矩陣鍵盤(pán)的點(diǎn)擊執(zhí)行功能也是在其有顯示信息的基礎(chǔ)上進(jìn)行的,菜品名稱(chēng)以及菜品單價(jià)顯示如圖4 所示。
圖4 中所顯示的菜品信息為首頁(yè),當(dāng)點(diǎn)擊下移按鍵后,首先顯示特殊指示符號(hào)“→”充當(dāng)光標(biāo)進(jìn)行移動(dòng)指示,在點(diǎn)擊次數(shù)大于4 次后,顯示器調(diào)用第二頁(yè)菜品信息,指示光標(biāo)同時(shí)顯示在第一行,當(dāng)然也可以切換從第二頁(yè)翻頁(yè)顯示至第一頁(yè),下移按鍵的點(diǎn)擊次數(shù)大于4 次即可實(shí)現(xiàn),如圖5 所示。

圖4 菜品信息顯示

圖5 光標(biāo)與翻頁(yè)顯示
客戶(hù)通過(guò)上下移動(dòng)按鍵自行瀏覽菜品信息,根據(jù)自身需求可通過(guò)確定/ 取消按鍵實(shí)現(xiàn)對(duì)當(dāng)前菜品的選擇與取消,點(diǎn)擊按鍵后液晶顯示器通過(guò)特殊字符“●”指示已選中的菜品,并將選中的菜品信息發(fā)送至Wi-Fi 模塊寄存器暫存。顯示方式如圖6 所示。

圖6 已選中顯示
經(jīng)過(guò)以上步驟后,菜品信息已經(jīng)被保存在數(shù)組中,通過(guò)點(diǎn)擊發(fā)送按鍵即可將信息發(fā)送至Wi-Fi 模塊寄存器暫存。利用串口調(diào)試助手檢測(cè)單片機(jī)所發(fā)送的數(shù)據(jù)是否已經(jīng)通過(guò)串口發(fā)送成功,助手波特率設(shè)置為9600。接受顯示如圖7 所示。

圖7 串口調(diào)試助手?jǐn)?shù)據(jù)接收
利用網(wǎng)絡(luò)調(diào)試助手,設(shè)置網(wǎng)絡(luò)協(xié)議類(lèi)型為T(mén)CP Client,遠(yuǎn)程主機(jī)地址由助手工具自行獲取,遠(yuǎn)程主機(jī)端口的設(shè)置與上位機(jī)服務(wù)器端口一致,其余設(shè)置保持默認(rèn)即可,之后點(diǎn)擊助手連接按鍵,打開(kāi)上位機(jī)的服務(wù)器即可于助手取得連接。上位機(jī)接受數(shù)據(jù)顯示如圖8 所示。

圖8 網(wǎng)絡(luò)調(diào)試助手?jǐn)?shù)據(jù)接收
待上位機(jī)數(shù)據(jù)接收完畢后,若安裝有打印機(jī)即可打印單據(jù),點(diǎn)擊上位機(jī)服務(wù)器的打印單據(jù)按鍵即可,單據(jù)打印完成,至此仿真測(cè)試結(jié)束。菜品信息打印預(yù)覽如圖9 所示。

圖9 打印預(yù)覽
本設(shè)計(jì)是基于單片機(jī)的智能點(diǎn)單機(jī)系統(tǒng),較完整地模擬了智能點(diǎn)單設(shè)備的常規(guī)功能。點(diǎn)單系統(tǒng)實(shí)現(xiàn)了具有可操作性的矩陣按鍵的人機(jī)交互,能夠執(zhí)行相應(yīng)操作;實(shí)現(xiàn)了能夠通過(guò)液晶顯示器較完整的顯示常用中文漢字的菜單和價(jià)格,以供客戶(hù)選擇參考;Wi-Fi 模塊實(shí)現(xiàn)了客戶(hù)與終端服務(wù)器之間的交流,即通過(guò)對(duì)菜單選中后通過(guò)按鍵的方式利用串口通信技術(shù)將菜品名稱(chēng)和價(jià)格字符發(fā)送至Wi-Fi 模塊暫時(shí)存儲(chǔ),而Wi-Fi 模塊作為一個(gè)數(shù)據(jù)存儲(chǔ)的中繼設(shè)備,進(jìn)而由Wi-Fi 模塊將菜品名稱(chēng)和價(jià)格信息發(fā)送至服務(wù)器的應(yīng)用界面并在界面上加以顯示;實(shí)現(xiàn)了智能點(diǎn)單設(shè)備應(yīng)該具有的打印功能,服務(wù)器接收到客戶(hù)選擇的菜品和價(jià)格后,由服務(wù)器通過(guò)串口驅(qū)動(dòng)打印設(shè)備以結(jié)算小票的形式將其打印出來(lái)。智能點(diǎn)單機(jī)的下單、傳輸、接單和打印等功能都已模擬實(shí)現(xiàn),但是智能點(diǎn)單系統(tǒng)在Wi-Fi 模塊的數(shù)據(jù)接收和發(fā)送上依舊存在較大的問(wèn)題,亟待改機(jī)和完善。