關永莉 歐陽斌林 錢科威
東北農(nóng)業(yè)大學工程學院, 哈爾濱 150030
基于MSP430和CC2420的無線點菜系統(tǒng)的設計
關永莉 歐陽斌林 錢科威
東北農(nóng)業(yè)大學工程學院, 哈爾濱 150030
本文緊緊圍繞低成本低功耗的要求,研究了時下熱門的無線射頻技術Zigbee,并以射頻芯片CC2420為核心,設計了一套基于CC2420與MSP430單片機的無線點菜系統(tǒng)。該系統(tǒng)可以方便服務員和顧客隨時隨地使用無線點菜機進行點菜、加菜、結算等工作,以提高酒店員工的服務效率,降低人力成本,幫助酒店走向信息化。
Zigbee;MSP430;CC2420;點菜系統(tǒng)
短距離無線通信技術的應用給酒店服務業(yè)帶來了全新的發(fā)展,其技術日臻成熟。WiFi技術最早在一些西方的大型酒店中得到了應用,由于得到大企業(yè)的支持,技術較成熟,但其成本高,適用于大規(guī)模的場合。國內也有部分中小企業(yè)使用了Zigbee技術,但其系統(tǒng)本身成本依舊偏高。ZigBee是基于IEEE802.15.4規(guī)范的無線技術,工作于免授權的2.4GHz頻段,是一種近距離、低復雜度、低功耗、低成本和低數(shù)據(jù)傳輸率的雙向無線通信技術,具有省電、可靠性高、成本低、時延短、安全、網(wǎng)絡容量大和易于組網(wǎng)等優(yōu)點,支持星型結構、網(wǎng)狀結構和簇狀結構三種主要的自組織網(wǎng)絡類型[1]。Zigbee采用了具有避免沖突的載波偵聽多路接入的CSMACA碰撞避免機制,同時為需要固定帶寬的通訊業(yè)務預留了專用間隙,避免了數(shù)據(jù)傳輸?shù)母偁幒蛽矶?。由于Zigbee聯(lián)盟的推動和各大IC巨頭的支持,Zigbee技術得到了快速的發(fā)展。本文采用了ZigBee技術,針對中小酒店業(yè)的需要,提出了一種低成本,小規(guī)模應用系統(tǒng)設計。
本系統(tǒng)由若干手持的帶ZigBee無線數(shù)據(jù)通訊功能的手持終端機和支持ZigBee無線通訊的控制中心組成。控制中心是無線網(wǎng)絡的協(xié)調器(主節(jié)點),與多個手持終端組成星型網(wǎng)絡,完成數(shù)據(jù)傳輸。其中,手持終端是由MSP430單片機和支持ZigBee無線協(xié)議的cc2420芯片組成,而控制中心由Zigebee收發(fā)器和PC組成,核心是PC的系統(tǒng)管理軟件。利用該系統(tǒng),服務員或顧客可以隨時隨地使用手持終端機進行點菜、加菜、結算等工作,并即時把數(shù)據(jù)傳到控制中心服務器。控制中心是Zigbee無線局域網(wǎng)的中心節(jié)點,可以在有效范圍內與手持終端機進行隨時隨地地通訊,并負責后臺的數(shù)據(jù)維護管理。本系統(tǒng)中,手持終端是電池供電,控制中心的Zigbee收發(fā)裝置由PC機的USB口供電。
硬件選用MSP430F149作為MCU,以CC2420為核心設計符合Zigbee標準的低功耗高性能無線通信模塊。點菜信息通過手持終端的觸摸屏輸入,并通過Zigbee無線協(xié)議發(fā)射出去,控制中心接收到數(shù)據(jù)后通過串口傳輸給上位機,最后由上位機管理軟件綜合處理各類信息。其中觸摸屏為四線制電阻式觸摸屏,觸摸屏驅動器TSC2046獲取觸點坐標信息后通過SPI串口發(fā)送給MSP430單片機,MSP430與CC2420通過SPI串口通信。硬件結構框圖如圖1:
圖1 系統(tǒng)硬件框圖
MSP430F149單片機是TI公司生產(chǎn)的一種16位超低功耗的混合信號處理器。它針對實際應用需求,把許多模擬電路、數(shù)字電路和微處理器集成在一個芯片上,以提供“單片”解決方案,其突出優(yōu)點是低電源電壓、超低功耗,可采用電池工作,有很長的使用時間[2,3]。MSP430F149內含的60K閃存可以存儲系統(tǒng)程序和菜品信息,2個USART可以配置成SPI或者UART,從而提高了系統(tǒng)的集成度和可擴充性。
CC2420是Chipcon As公司推出的符合2.4 GHz IEEE802.15.4標準的射頻收發(fā)器。該器件是一款適用于ZigBee產(chǎn)品的RF器件,性能穩(wěn)定且功耗極低。CC2420的選擇性和敏感性指數(shù)超過了IEEE802.15.4標準的要求,可確保短距離通信的有效性和可靠性[4]。利用此芯片開發(fā)的無線通信設備支持數(shù)據(jù)傳輸率高達250 kb/s可以實現(xiàn)多點對多點的快速組網(wǎng)。
本設計中,CC2420與MSP430通過SPI連接,MSP430處于主模式,CC2420處于從模式。MSP430還有4個I/O與CC2420相連,主要起查詢CC2420狀態(tài)的作用。CC2420使用SFD、FIFO、FIFOP、和CCA這4個引腳表示收發(fā)數(shù)據(jù)的狀態(tài)。SPI接口由CSn、SI、SO和SCLK引腳組成。處理器通過SPI接口訪問CC2420內部寄存器和存儲器從而實現(xiàn)數(shù)據(jù)交換和命令發(fā)送。CC2420與MSP430的接口電路如圖2所示。
圖2 CC2420與MSP430接口電路
當CC2420收到物理幀的SFD字段后,會在SFD引腳輸出高電平,直到接收完該幀。如果啟動了地址辨識,在地址辨識失敗后,SFD引腳立即轉為輸出低電平。FIFO和FIFOP引腳表示接收FIFO的緩存區(qū)狀態(tài)。如果接收FIFO緩存區(qū)有數(shù)據(jù),F(xiàn)IFO引腳輸出高電平;如果接收FIFO緩存區(qū)為空,F(xiàn)IFO引腳輸出低電平。當FIFOP引腳在接收FIFO緩存區(qū)的數(shù)據(jù)超過某個臨界值時,或者在CC2420接收到一個完整的幀以后輸出高電平。臨界值可以通過CC2420的寄存器設置。CCA引腳在信道有信號時輸出高電平,它只在接收狀態(tài)下有效。
在CC2420進入接收狀態(tài)至少8個符號(symbol)周期后,才會在CCA引腳上輸出有效的信道狀態(tài)信息。SPI接口接收或者發(fā)送數(shù)據(jù)時,都與時鐘下降沿對齊。
觸摸屏分為電阻、電容、表面聲波、紅外線掃描和矢量壓力傳感等類型,其中使用最多的是四線或五線電阻觸摸屏[6]。四線電阻觸摸屏是由兩個透明電阻膜構成的,在它的水平和垂直電阻網(wǎng)上施加電壓,就可通過A/D轉換面板在觸摸點測量出電壓而對應出坐標值。MSP430F149有6組共48個通用IO管腳,USART又可以配置成SPI模式。因此MSP430通過IO控制觸摸屏顯示,同時通過SPI接口與觸摸驅動芯片通訊。圖3是安富萊3.0英寸的TFT觸摸屏的CPU接口。
圖3 觸摸屏控制軟件流程圖和觸摸屏接口電路圖
ZigBee無線網(wǎng)絡可采用多種類型的網(wǎng)絡配置。本設計使用星型網(wǎng)絡實現(xiàn)通信。星型網(wǎng)絡配置由一個協(xié)調器節(jié)點(主設備)和一個或多個終端設備(從設備)組成。在星型網(wǎng)絡中,所有的終端設備都只與協(xié)調器通信。根據(jù)系統(tǒng)需求,協(xié)調器會在非易失性存儲器中存儲所有網(wǎng)絡關聯(lián),稱為鄰接表。為了連接到網(wǎng)絡,終端設備可能執(zhí)行孤立通知過程來查找先前與之關聯(lián)的網(wǎng)絡或者執(zhí)行關聯(lián)過程來加入一個新網(wǎng)絡。在執(zhí)行孤立通知過程的情況下,協(xié)調器將通過查找其鄰接表來識別先前與之關聯(lián)的終端設備。
本系統(tǒng)軟件分為控制中心主節(jié)點軟件,終端節(jié)點軟件和上位機點菜系統(tǒng)應用軟件。主節(jié)點軟件主要功能是組織和管理Zigbee無線網(wǎng)絡;終端節(jié)點軟件完成Zigbee無線信息發(fā)送和人機界面控制;上位機軟件主要起管理點菜系統(tǒng)數(shù)據(jù)庫并綜合分析處理各項數(shù)據(jù)的功能。
主節(jié)點即協(xié)調器,是分布式處理中心,屬于全功能設備,負責建立和管理網(wǎng)絡。主節(jié)點將掃描指定通道,選擇一個最小能量的通道來建立網(wǎng)絡,并建立網(wǎng)絡從節(jié)點的標識ID。網(wǎng)絡成功建立后,主節(jié)點進入允許綁定模式,才可以對終端節(jié)點輸出的數(shù)據(jù)作出響應。主節(jié)點通過串口與計算機相連,主要功能是建立無線網(wǎng)絡、管理終端節(jié)點,接收終端上傳到點菜信息,并通過串口發(fā)送給計算機。
終端設備通過掃描指定參數(shù)的通道,發(fā)現(xiàn)指定參數(shù)的網(wǎng)絡。啟動ZDO_StartDevice函數(shù)發(fā)現(xiàn)和加入網(wǎng)絡,與協(xié)調器建立綁定關系后,發(fā)送點菜數(shù)據(jù)。
應用層主要負責人機接口和菜單的管理,出于降低功耗的需要,終端節(jié)點在空閑狀態(tài)時CPU處于休眠狀態(tài),只有在發(fā)生外部鍵盤中斷時喚醒休眠。點菜操作可以采用以下三種方式:一是編號輸入法,即根據(jù)菜品編號點菜;二是簡拼輸入法,即根據(jù)菜品的每個字的首字母索引點菜。完成輸入后,系統(tǒng)將輸入信息編碼發(fā)送給主節(jié)點,具體編碼格式如圖4:
圖4 點菜數(shù)據(jù)編碼格式
在收到主節(jié)點的確認信息之后,終端屏幕會顯示發(fā)送成功字樣。若一段時間內沒有輸入,如設60秒,終端將重新進入休眠模式。終端的軟件流程圖如圖5:
圖5 終端軟件流程圖
本系統(tǒng)采用VC和SQL設計該數(shù)據(jù)庫,功能見圖6。使用mscomm控件設置串口通信,選擇波特率115200,以實現(xiàn)PC機和ZigBee收發(fā)端的通信。
圖6 數(shù)據(jù)庫功能模塊圖
本文介紹的點菜系統(tǒng)的突出特點是低成本低功耗、操作簡單方便,可廣泛應用于各中小型酒店。提高了酒店信息化管理,簡便了點菜流程,減少了點菜過程的錯誤,大大促進了酒店管理的效率。因此,本系統(tǒng)有一定的實際應用價值和前景。
[1]黃麗芬.ZigBee無線通信技術及其應用.2007(04):40-41
[2]秦龍.MSP430單片機應用系統(tǒng)開發(fā)典型實例.中國電力出版社.2005:11-14
[3]MSP430F149技術手冊
[4]黃智偉.無線發(fā)射與接收電路設計.北北京航空航天大學出版社.2007:617-619
[5]王寅.基于Zigbee的無線點菜系統(tǒng).技術應用.2010:62-64
[6]朱品偉.新一代TSC2046觸摸屏控制器.新器件新技術.2005:51-53
The Design of Wireless Order System Based on MSP430 and CC2420
According to low cost and low power requirements,a CC2420 and MSP430 microcontroller-based wireless order system is designed after doing research on Zigbee which is nowadays popular wireless RF technology. It’s convenient for attendants and customers to order, accounts settlement with this wireless order system. Thus,it helps the hotel to improve staff service efficiency,to low labor costs, and to make hotel towards informationization.
Zigbee;MSP430;CC2420;Order System
10.3969/j.issn.1001-8972.2011.08.068
關永莉 碩士研究生,研究方向:信息處理與智能測控。