国产福利在线高清导航大全-国产福利在线-国产福利影视-国产福利一区二区麻豆-成熟少妇大片免费看-成熟女人毛片WWW免费版在线

當前位置:首頁 > 觸控技術 > 觸摸屏論文
觸摸屏論文

觸摸屏自助點菜終端人機交互界面設計與實現

觸摸屏自助點菜終端的設計與實現
顏澤球,廖曉東,涂欽
(福建師范大學物理與光電信息科技學院福建福州350007)

摘要:設計并實現了一種自助點菜終端,采用8寸液晶觸摸屏作為人機交互界面,提供圖文并茂的電子菜單。針對嵌入式系統存儲空間的局限性,提出一種應用層軟件與底層軟件分離的存儲運行方式。解決了大容量數據的存儲與更新問題。采用開放源代碼的圖形用戶接口軟件Nano—X窗口系統,詳細探討了其配置與移植的方法。系統具有交互界面良好,易于生產維護的特點。

關鍵詞:點菜系統;分離式存儲;NaDO—X;GUI移植;嵌入式系統

中圈分類號:TP311.5 文獻標識碼:A 文章編號:1004—373X(2010)05—125—03

0 引言

    電子點菜系統,是隨著餐飲業的智能化、信息化發展而出現的新一代產品。相對于傳統的點菜服務方式,電子點菜具有高效、舒適的特點,有效地節省了人力資源,提高了服務的質量。一個典型的點菜系統由點菜終端、收銀臺管理系統和數據調度管理系統組成。根據應用場合的不同,目前較為流行的點菜終端主要分為兩種。第一種采用單片機和無線模塊實現,成本低,但是功能和界面較為簡單,通信距離也較短,使用者一般是服務員。另外一種采用商業PDA和無線網卡實現,功能強大,界面華麗,操作方面,但成本較高,一般作為消費者自助點菜的終端,應用于中高檔酒店。

    自助點菜終端給客戶提供每道菜肴的名稱、插圖、介紹和價格等各種相關信息,這些信息隨著菜單的變化實時更新。由于嵌入式系統的存儲空間有限,大量的圖片存儲和實時更新成了點菜終端設計的一個難題。本文給出了一種自助點菜終端的軟硬件實現方案,通過應用層與底層軟件的分離存儲設計,解決了大容量數據的存儲更新問題,提高了批量生產升級效率。同時,采用開放源代碼的自由軟件開發,降低了系統成本。

1 系統結構

    終端的核心處理器采用ARM920T核的$3C2440芯片,其主頻可達到400 MHz,外接64 MB SDRAM和64 MB FLASH。終端的硬件結構圖如圖1所示。其中,顯示接口采用8寸TFT液晶屏LQ080V3DG01,像素640X480,為用戶提供友好的電子菜單。用戶通過觸摸屏進行各種操作。系統首次啟動時進行觸摸屏的校準,管理員也可以通過長按校準按鍵進入校準模式。SD卡存放應用程序、相關的圖片和字體等資源,系統支持的最大的SD卡容量為32 GB,可以很好地滿足點菜終端的存儲容量要求。終端與服務器的各種交互數據通過無線網卡傳輸。

 

圖1硬件結構圖
圖1硬件結構圖
 

    系統采用c/s模式設計,點菜終端作為客戶端。數據調度管理中心為服務器。采用開放源代碼的各層軟件構成終端軟件平臺,節省了開發成本,軟件結構如圖2所示。Linux具有開放源代碼、協議棧較完善、運行穩定和易于移植的優勢,在嵌入式領域得到了廣泛的應用。終端以嵌入式Linux作為操作系統,管理系統軟硬件資源。Linux 2.6.29是2009年3月份發布的穩定的內核版本。根文件系統采用日志結構的文件系統JFFS2,用戶可以對文件進行讀寫操作,在意外掉電時仍然可以保持數據的完整性,而不會丟失數據。

 

圖2軟件結構圖
圖2軟件結構圖
 

2 應用層與底層軟件分離的存儲管理策略

    每個終端設備都有自己的配置信息(設備ID號,IP地址,終端設備對應的餐桌的位置信息等),在系統正常工作前必須手動配置這些信息。一種解決的方案是,在終端安裝完首次運行時,通過觸摸屏手動配置這些信息。然而,在批量安裝、升級或者重新規劃終端設備的布局時,這種解決方式將大大降低工作效率。

    本文將應用程序以及相關的配置信息、圖片及字體資源都存放于SD卡中,實現應用層軟件與其底層軟件的離存儲。終端設備的系統目錄結構如圖3所示,/mnt/sdcard為SD卡的掛載點,terminal為交叉編譯產生的應用程序文件。ipconfig為配置終端設備IP地址的Shell腳本,在系統啟動時調用執行。devinfo文件存儲設備的相關信息(餐館的名稱,包廂號,餐桌號等),由應用程序運行時讀取。log.ini文件記錄終端軟件運行時的各種信息(啟動、關閉的時間,異常狀態的記錄等)。終端的固件差異僅在于SD卡中ipconfig文件和devinfo文件,而這兩個文件可以通過上位機軟件批量生成。

圖3文件系統目錄結構
圖3文件系統目錄結構
 


    Linux啟動時會加載啟動配置文件/ete/init.d/rcS,可以通過修改該文件使系統啟動時設置系統IP并加載應用程序。根據點菜終端的目錄結構設置,在reS文件后添加如下兩行:

/mnt/sdcard/ipconfig #配置終端IP
/mnt/sdcard/terminal& #啟動應用程序

3 Nano—X的定制與移植

3.1 Nano~X介紹

    Nano—X是一個著名的開放源碼的圖形用戶接(GUI)軟件,原名microwindows,由于和微軟的win—dows注冊商標存在沖突,從2005年1月起改名為Nano—X Window System,其目的是把圖形視窗環境引入到嵌入式平臺和小型設備上。Nano—X采用C語言設計,有很好的可移植性,根據用戶配置,其占用的內存資源在100~600 KB左右。Nano—X能在宿主機上仿真目標機,用戶可以在普通個人電腦上開發和調試應用程序,大大提高了開發效率u州。

3.2 Nano~X的定制

    Nano—X的定制主要通過修改其源代碼根目錄下的config文件來實現。主要包括處理器平臺、輸入輸出平臺、圖片支持和字體支持等選項。

    (1)處理器平臺選項。Nano—X窗口系統支持X86,ARM,MIPS,PowerPC等多種處理器平,通過配置“ARCH—LINUX—ARM”和“ARMTOOLSPRE—FIX=arm—linux一”選擇ARM處理器平臺及其所使用的編譯器。

    (2)輸入輸出驅動配置選項,包括顯示驅動平臺,屏幕大小和觸摸屏支持,具體如下:Nano—X支持多種觸摸屏設備,點菜終端的觸摸屏設備為“/dev/h3600tsraw”,對應的Nano—X驅動接口類型為IPAQ—MOUSE。修改config文件的相關配置如下:

SCREEN—WIDTH -----640 #屏幕大小為640×480
SCREEN HElGHT 一480
FRAMEBUFFER=Y
#使用Linux的framebuffer作為圖形引擎
IPAQMOUSE=Y #觸摸屏驅動類型為Compaq iPAQ

    (3)圖像支持選項。可支持bmp,gif,xpm,jPg,png和tiff格式的圖片解碼。如果要使用后三種格式的圖片,需要額外添加相應的解碼庫。本系統的界面和菜肴的插圖均采用24位bmp格式的圖片,圖像支持選項配置為“HAVE BMP SUPPORT=Y”。

    (4)字體支持選項。Nano—X自身支持12×12和16×16的中文點陣字體,但不包含對truetype矢量字體的解碼支持,所以如果要使用其他樣式的字體,或者使用可伸縮矢量字體,需要移植freetype解碼庫程序。

    修改config文件的相關配置如下:

HAVE—FREETYPE一2一SUPPoRT—Y
#使用Freetype2解碼Truetype字體
INCFT2LIB=lib/libfreetype/include
#freetype頭文件路徑
LIBFT2LIB=Iib/libfreetype/Iib/libfreetype.a
#編譯freetype生成的靜態庫文件
HAVE—HZK—SUPPORT=Y #支持HZK點陣漢字
HZK—FONT—DIR=’7fonts/chinese"
#字體文件的存放路徑

    (5)應用程序的編譯和運行方式。Nano—X是基于設備無關的圖形引擎,使用Client/Server模式,客戶端程序和服務器端程序時同一個設備上的兩個不同進程,既可以分別編譯成各自的應用程序文件,也可以通過修改配置選項“LINK APP INTO SERVER—Y”將客戶端程序與服務器端程序直接鏈接成一個單獨的應用程序。本文采用后者的編譯和運行方式。

4通信協議

    點菜終端與服務器之間的通信過程如圖4所示。

 

圖4 系統通信流程
圖4 系統通信流程
 

    終端首先向服務器發起會話連接請求,待服務器回應后建立連接。數據交互過程中,服務器回應終端每個數據包的接收處理狀態。兩者的通信在TCP/IP協議的基
礎上,采用自定義傳輸層和應用層通信協議進行數據交互。應用層把各種業務數據組成消息包,把一個或者多個消息包組成應用包,并把應用包發送給傳輸層發送,或從傳輸層接收應用包,把應用包拆分成消息包,并處理各消息包數據。本系統采用一個消息包對應一個應用包,不對消息包進行組包。

    傳輸層的幀格式如圖5所示。幀標識符包含會話建立請求標志,會話結束請求標志和應用包結束標志。

 

圖5傳榆幀格式
圖5傳榆幀格式
 

    終端對接收區數據的解釋分為服務器應答用戶消息包,服務器應答心跳消息包和終端軟件升級命令消息包。系統每隔一段時間檢測網絡的連接情況,文中稱該段時間為心跳間隔時間。當終端發送心跳給服務器,服務器會回應心跳,當終端在一定時間內未收到任何命令(包括心跳回應),終端可認為斷線,主動斷開連接,并根據自身的參數設置來決定是否重連。發送區由命令編碼、菜肴的類別號、索引號和數量組成,描述用戶的各種操作信息。

5 應用程序流程

    應用程序流程如圖6所示。

 

圖6軟件流程圖

圖6軟件流程圖

6  結語

    電子點菜系統可以改善餐館的經營策略、管理效率和服務質量,隨著信息化的發展,將得到更為廣泛的應用,有著廣闊的前景。本文設計的自助點菜終端,具有通信速度快、可操作性強和便于維護特點,采用開放源代碼軟件設計,使系統的成本降低,更具有市場競爭力。

參考文獻

[1]李劍.基于Linux的嵌入式點菜系統終端l-D].杭州:浙江大學,2006.
[2]王琳,余震虹,李鑫,等.基于ARM的嵌入式電子點菜系統的設計[J].微計算機信息,2009,25(5):105—107.
[3]孫建梅,曹新.基于Qt4的嵌入式點菜系統的設計與實現[J].微計算機信息,2009,25(11):101—108.
[4]郭元穎,梁清華,郭爽.基于無線局域網餐飲服務點菜系統的研究[J].遼寧工業大學學報:自然科學版。2009,29(1):21—23,29.
[5]李忠成,高惠燕.基于nRF24E1的無線點菜系統架構EJ].單片機與嵌入式系統應用,2007(4):61—63.
[6]王景景.無線點菜系統的設計與實現EJ].海南大學學報:自然科學版。2009,27(1):65—68,72.
[7]李振坤,藍芳華.基于PDA的無線餐飲點菜應用系統的設計與實現[J].計算機應用研究,2006(2):189—190,
[8]吳升艷,岳春生,胡冰.嵌入式Linux系統下Microwindows的應用[J].單片機與嵌入式系統應用,2003(6):68—71.
[9]吳明暉.基于ARM的嵌入式系統開發與應用[M].北京:人民郵電出版社,2004.


相關文章
精彩評論:
0  相關評論
主站蜘蛛池模板: 法库县| 汝城县| 灵丘县| 蓬溪县| 正蓝旗| 周至县| 洛阳市| 公主岭市| 东方市| 庆城县| 景德镇市| 麟游县| 曲麻莱县| 淮滨县| 资源县| 宜兰市| 镇雄县| 水城县| 仁寿县| 湛江市| 朔州市| 青神县| 宜丰县| 伊川县| 涿州市| 溆浦县| 长泰县| 虎林市| 雅安市| 社会| 阿坝县| 甘孜| 从化市| 海原县| 衡山县| 宝坻区| 瑞金市| 广安市| 瑞安市| 揭西县| 湖口县|