當(dāng)前位置:首頁 > 嵌入式 > 嵌入式教程
[導(dǎo)讀]基于嵌入式Linux的自助點(diǎn)菜終端設(shè)計(jì)

0 引言
    隨著人民生活水平的提高和生活方式的轉(zhuǎn)變,餐飲業(yè)的市場(chǎng)急劇擴(kuò)大,利潤飛速增長,被稱為中國的黃金產(chǎn)業(yè)。而電子點(diǎn)菜系統(tǒng)的應(yīng)用,提高了餐館檔次和營業(yè)效率、優(yōu)化了業(yè)務(wù)流程,為餐飲行業(yè)帶來嶄新的管理理念與服務(wù)手段。目前較為流行的點(diǎn)菜終端主要分為2種模式。第一種采用單片機(jī)和無線模塊實(shí)現(xiàn),該模式成本低,但是功能和界面較為簡單,通信距離也較短,使用者一般是服務(wù)員;另外一種采用商業(yè)PDA和無線網(wǎng)卡實(shí)現(xiàn),功能強(qiáng)大,界面華麗,操作方面,但成本較高,不利于大范圍推廣與應(yīng)用。此外,友好的自助點(diǎn)菜終端要給客戶提供諸如每道菜肴的名稱、插圖、介紹和價(jià)格等各種相關(guān)信息,這些信息需要隨著菜單的變化實(shí)時(shí)更新。由于嵌入式系統(tǒng)的存儲(chǔ)空間有限,大量的圖片等信息存儲(chǔ)和實(shí)時(shí)更新成為現(xiàn)有點(diǎn)菜終端設(shè)計(jì)的一個(gè)難題。
    本文提出了一種新型電子點(diǎn)菜系統(tǒng)模式,該系統(tǒng)由自助點(diǎn)菜終端和網(wǎng)站服務(wù)器組成,自助點(diǎn)菜終端為全觸摸屏操作,無需點(diǎn)菜員參與,可完全由顧客自己完成點(diǎn)菜;且采用了開放源代碼的自由軟件開發(fā)方式,降低了系統(tǒng)成本。對(duì)于大量數(shù)據(jù)的存儲(chǔ)與更新問題,本文提出構(gòu)建一個(gè)服務(wù)器網(wǎng)站,由此解決大容量數(shù)據(jù)的存儲(chǔ)與更新問題,提高餐飲服務(wù)批量生產(chǎn)與業(yè)務(wù)升級(jí)效率。顧客可通過自助點(diǎn)菜終端訪問服務(wù)器網(wǎng)站自主完成菜譜查詢、點(diǎn)菜、結(jié)賬、多媒體娛樂等操作。點(diǎn)菜終端與服務(wù)器之間的通信基于WiFi無線網(wǎng)絡(luò)。

1 系統(tǒng)概述
   
本文所介紹的點(diǎn)菜系統(tǒng),分前臺(tái)系統(tǒng)和后臺(tái)系統(tǒng)2部分,采用B/S架構(gòu),前臺(tái)和后臺(tái)之間采用WiFi無線通信,集無線網(wǎng)絡(luò)通信技術(shù)與手持移動(dòng)終端技術(shù)于一身。
    前臺(tái)手持自助點(diǎn)菜終端設(shè)備,無需點(diǎn)菜員參與,完全由顧客自己完成點(diǎn)菜。前臺(tái)開發(fā)環(huán)境為嵌入式Linux,Qt/Embedded Linux。后臺(tái)系統(tǒng)平臺(tái)為PC,也可以稱為整個(gè)系統(tǒng)的服務(wù)器,它的主要用戶為餐館的管理人員,管理員可以通過后臺(tái)服務(wù)器向系統(tǒng)添加餐館的新菜、修改菜價(jià)、查詢歷史記錄等。服務(wù)器負(fù)責(zé)協(xié)調(diào)各設(shè)備的工作,對(duì)各種數(shù)據(jù)做必要的處理,及時(shí)為工作人員、管理人員提供真實(shí)、可靠的數(shù)據(jù)。后臺(tái)開發(fā)環(huán)境為Windows XP,MyEclipse,SQL Server。電子點(diǎn)菜系統(tǒng)的結(jié)構(gòu)如圖1所示。



2 自助點(diǎn)菜終端硬件設(shè)計(jì)
   
自助點(diǎn)菜終端的核心處理器采用ARM920T核的S3C2440芯片,其主頻可達(dá)到400 MHz,外接64 MBSDRAM和64 MB FLASH。終端的硬件結(jié)構(gòu)圖如圖2所示。其中,顯示接口采用8寸TFT液晶屏,像素640×480,為用戶提供友好的操作體驗(yàn)。用戶通過觸摸屏訪問服務(wù)器網(wǎng)站自主完成菜譜查詢、點(diǎn)菜、結(jié)賬、多媒體娛樂等操作。該系統(tǒng)以無線寬帶路由器作為無線AP(AccessPoint)接入點(diǎn),點(diǎn)菜終端內(nèi)置無線網(wǎng)卡,在內(nèi)核支持、驅(qū)動(dòng)程序的配合下,客戶終端便能夠接入無線網(wǎng)絡(luò),連接到遠(yuǎn)端服務(wù)器,訪問網(wǎng)站。



3 自助點(diǎn)菜終端軟件設(shè)計(jì)
   
自助點(diǎn)菜終端的軟件設(shè)計(jì)主要是開發(fā)基于嵌入式Linux系統(tǒng)的客戶端應(yīng)用程序,用以訪問服務(wù)器網(wǎng)站。終端軟件結(jié)構(gòu)如圖3所示。該系統(tǒng)開發(fā)主要有3個(gè)主要內(nèi)容:開發(fā)平臺(tái)的構(gòu)建、編譯Qt/Embedded庫和終端應(yīng)用程序的實(shí)現(xiàn)。

[!--empirenews.page--]


3.1 嵌入式Linux系統(tǒng)開發(fā)平臺(tái)的構(gòu)建
   
搭建交叉編譯環(huán)境是嵌入式開發(fā)的第一步,也是必備一步。由于一般嵌入式開發(fā)系統(tǒng)存儲(chǔ)大小有限,通常需要在功能強(qiáng)大的PC機(jī)上建立一個(gè)用于目標(biāo)機(jī)的交叉編譯環(huán)境。該系統(tǒng)主機(jī)開發(fā)平臺(tái)選擇Fedora 12系統(tǒng),安裝交叉編譯器ARM-linuX-gcc 4.3.2用來編譯Linux內(nèi)核,安裝ARM 920t-eabi用來編譯Qt/Embedded庫,用來支持瀏覽程序的開發(fā)。終端以嵌入式Linux作為操作系統(tǒng),管理系統(tǒng)軟硬件資源。該終端采用Linux 2.6.29內(nèi)核版本,首先移植了系統(tǒng)引導(dǎo)程序U-boot,然后編譯裁剪的Linux內(nèi)核,加載無線網(wǎng)卡等驅(qū)動(dòng),制作根文件系統(tǒng)。
3.2 編譯Qt/embedded庫和Tslib觸摸屏庫
   
Qt/Embedded是一個(gè)多平臺(tái)的C++圖形用戶界面應(yīng)用程序框架,其對(duì)象容易擴(kuò)展,可移植性好,支持多個(gè)GUI平臺(tái)的交互開發(fā)。Qt/Emb-edded被廣泛地應(yīng)用于各種嵌入式產(chǎn)品和設(shè)備中。因此本文選擇Qt/Embedded為本系統(tǒng)的GUI。
    Qt/embedded Linux是為嵌入式Linux優(yōu)化過的Qt版本。為了盡可能減少內(nèi)存占用量,Qt/embeddedLinux可以被重新編譯以去掉那些不用的特性。
    首先編譯安裝tslib,添加觸摸屏支持:下載,tslibl.4.tar.gz,解壓后執(zhí)行配置、編譯和安裝命令。
    然后通過./configure開始配置Qt embedded庫,將不需要的應(yīng)用去除以減小庫的大小。配置完畢后,用make命令編譯,用makeinstall命令安裝Qt/embedded Linux到指定的目錄。
3.3 設(shè)計(jì)點(diǎn)菜終端應(yīng)用程序
   
對(duì)于自助點(diǎn)菜終端應(yīng)用程序的設(shè)計(jì)使用Qt Creator規(guī)劃點(diǎn)菜終端程序的大致界面,然后遵循Qt/Embedded編程一般規(guī)則編寫代碼,主要分為瀏覽器核心類和主窗口類的實(shí)現(xiàn),最后編譯并通過NFS進(jìn)行板上測(cè)試。
    瀏覽器核心類使用Qt提供的QWebView類。該類提供了常用的功能,如加載特定的URL、設(shè)置、歷史記錄和網(wǎng)頁對(duì)象。它還提供包括后退、向前和重新加載在內(nèi)的基本瀏覽功能。
    例如,以下代碼實(shí)例化用于顯示網(wǎng)頁并與其互動(dòng)的QWebView類,指示QWebView加載URL并顯示,這樣就得到可與網(wǎng)站互動(dòng)的基本窗口。
   

4 服務(wù)器網(wǎng)站開發(fā)
   
該系統(tǒng)利用普通的PC機(jī)和Windows XP作為網(wǎng)站服務(wù)器,數(shù)據(jù)庫使用SQL Server 2005,Web服務(wù)器使用Tomcat 6.0。在MyEclipse環(huán)境下開發(fā)完成了JSP網(wǎng)站,網(wǎng)站實(shí)現(xiàn)了如圖4所示功能。



5 結(jié)語
    本文設(shè)計(jì)的自助點(diǎn)菜終端,具有價(jià)格低廉,操作簡單,界面友好等特點(diǎn),采用開放源代碼軟件設(shè)計(jì),使系統(tǒng)的成本降低,更具有市場(chǎng)競(jìng)爭力;點(diǎn)菜終端通過WLAN以B/S模式與服務(wù)器交互,降低了客戶端的設(shè)計(jì)難度,解決了大容量數(shù)據(jù)的存儲(chǔ)與更新問題。經(jīng)實(shí)驗(yàn)測(cè)試驗(yàn)證,該系統(tǒng)所有功能模塊都能正常運(yùn)行,達(dá)到了預(yù)期效果,能夠滿足一般餐飲企業(yè)的實(shí)際要求。自助點(diǎn)菜系統(tǒng)使餐飲企業(yè)改善了餐館的經(jīng)營策略、管理效率和服務(wù)質(zhì)量。隨著信息化的發(fā)展,將得到更為廣泛的應(yīng)用,有著廣闊的前景。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉