新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于Windows CE的超市預(yù)收款系統(tǒng)的設(shè)計

基于Windows CE的超市預(yù)收款系統(tǒng)的設(shè)計

作者: 時間:2010-06-13 來源:網(wǎng)絡(luò) 收藏

  1 概 述

  為了緩解銷售旺季收款臺的壓力,節(jié)省顧客的時間,以吸引更多顧客,本文設(shè)計一種系統(tǒng)。當顧客排隊交款時,在一定位置由兩到三人組成臨時收款臺,掃描商品并裝袋,裝袋完畢后掃描包裝條碼并將包裝條碼貼到袋子上放進特制的紅色袋子中。若顧客還有商品則繼續(xù)掃描并放入新袋子中,直至全部商品掃描完畢。確認后顧客提著帶有防盜碼的紅色袋子到收款臺交款。收款臺解除防盜碼后,掃描包裝條碼進行結(jié)賬。

   屬于嵌入式操作系統(tǒng),可以定制為很多設(shè)備的操作系統(tǒng),所以很適合于工業(yè)控制。隨著微軟對 的不斷升級,產(chǎn)生了Pocket PC以及當前非常流行的Mobile 5.0。如今 5.0也已成熟,更令人驚喜的是使用微軟的Visual Studio.NET可以輕松地開發(fā)智能設(shè)備應(yīng)用程序,而且它還集成了Pocket PC、Windows CE模擬開發(fā)環(huán)境。.NET Compact Framework是.NET Framework的子集,設(shè)計為運行在智能設(shè)備上,對受管代碼和XML 服務(wù)提供支持。這為開發(fā)者開發(fā)智能設(shè)備應(yīng)用帶來很大方便。

   是微軟提出的基于互聯(lián)網(wǎng)的開發(fā)模型。所謂的 是指由企業(yè)發(fā)布的實現(xiàn)其特別商務(wù)需求的在線應(yīng)用服務(wù),其他公司或應(yīng)用軟件能夠通過Internet來訪問并使用這項在線服務(wù)。

  2 系統(tǒng)架構(gòu)及工作原理

  2.1 系統(tǒng)架構(gòu)

  系統(tǒng)主要涉及的硬件設(shè)備有:Symbol手持終端、AP(Access Point)、交換機、數(shù)據(jù)庫、收款臺、Novell文件服務(wù)器以及程序服務(wù)器等。涉及的軟件主要有:Visual Studio.NET、運行在手持終端上的前臺程序、WebSphere開發(fā)的數(shù)據(jù)庫應(yīng)用、收款臺程序等。系統(tǒng)架構(gòu)如圖1所示。

系統(tǒng)架構(gòu)

  2.2 工作原理

  工作人員掃描顧客商品并裝入購入袋中,每確認一筆商品明細數(shù)據(jù)通過Web 方式提交給后臺數(shù)據(jù)庫。數(shù)據(jù)依次經(jīng)過的設(shè)備為:手持終端→AP→交換機→路由器→交換機→數(shù)據(jù)庫。

  當購物袋裝滿時需掃描事先打印好的條碼,并將條碼貼在購物袋上并提交數(shù)據(jù),此時程序服務(wù)器從數(shù)據(jù)庫中讀取數(shù)據(jù)并發(fā)送到。Novell文件服務(wù)器上。當顧客進行完預(yù)收款到達收款臺后,收銀員只需掃描購物袋上面的條碼就可讀出相應(yīng)購物袋所有商品明細以及總金額,直接結(jié)賬即可。在此架構(gòu)中程序服務(wù)器和收款機都要先映射網(wǎng)絡(luò)驅(qū)動器,以建立與Novell文件服務(wù)器的連接。

  3 預(yù)收款系統(tǒng)的實現(xiàn)

  本系統(tǒng)前臺通過Visual Studio.NET來開發(fā)智能設(shè)備應(yīng)用,通過Web Service連接WebSphere開發(fā)的后臺處理應(yīng)用,所有數(shù)據(jù)庫操作在后臺進行。

  3.1 應(yīng)用環(huán)境的搭建

  具有高可用性、負載分發(fā)等特點,是保證系統(tǒng)性能和可靠性的主要手段之一。通過組建WebSphere應(yīng)用服務(wù)器,能夠有效地提升應(yīng)用系統(tǒng)的可用性。由于預(yù)收款系統(tǒng)對系統(tǒng)即時性、可用性的要求都很高,搭建也就成為了必然。集群使預(yù)收款系統(tǒng)具有可擴展性(服務(wù)更多客戶,提高吞吐量),負載均衡(平衡負載資源,使資源得以有效利用),高可用性(提供故障恢復(fù)和補償機制,在關(guān)鍵性業(yè)務(wù)中提供容錯功能)等優(yōu)點。

  WAS(WebSphere Application Service)集群由一組應(yīng)用服務(wù)器組成,每個服務(wù)器上部署了同樣的應(yīng)用程序。WAS ND提供水平集群和垂直集群兩種形式。垂直集群是指同一機器上部署多個服務(wù)器,充分利用硬件資源;而水平集群則是利用多臺機器資源,每臺機器部署相同的應(yīng)用。本例采用水平集群。

  本案例采用WebSphere Application Server NetWorkDeployment 6.0.0.1版進行集群的搭建,同時安裝IBMHTTP Server來提供Web服務(wù)。基于Apache的IBMHTTP Server是基于Apache Group開發(fā)的Apache Web服務(wù)器的Web服務(wù)器。IBM HTTP Server包括一些Apache Web服務(wù)器沒有的功能,可運行在多種操作系統(tǒng)(如Linux、Windows、AIX等)上。IBM HTTP Server擴展了Apache的功能,使其能夠使用IBM快速響應(yīng)高速緩存加速器。拓撲結(jié)構(gòu)如圖2所示。

拓撲結(jié)構(gòu)

  3.2 Web Service的開發(fā)

  Web Service:所使用的是Internet上統(tǒng)一、開放的標準(如HTTP、XML、SOAP、WSDL等),可以在任何支持這些標準的環(huán)境(如Windows、Linux)中使用。SOAP(Simple Object Access Protocol,簡單對象訪問協(xié)議)是一個用于分散和分布式環(huán)境下網(wǎng)絡(luò)信息交換的基于XML的通信協(xié)議。在此協(xié)議下,軟件組件或應(yīng)用程序能夠通過標準的HTTP協(xié)議進行通信。它的設(shè)計目標就是簡單性和擴展性,這有助于大量異構(gòu)程序和平臺之間的互操作性,從而使存在的應(yīng)用程序能夠被廣泛地訪問。用于開發(fā)Web Service的工具很多,諸如Visual Studi-o.NET、Delphi高版本、WebSphere等等。本系統(tǒng)采用WebSphere開發(fā),Java源代碼。

  3.3 手持終端智能設(shè)備的應(yīng)用開發(fā)

  Visual Studio 2005為開發(fā)可在基于Windows CE的智能設(shè)備(如Pocket PC和Smart Phone)上運行的軟件提供了豐富的集成支持。用戶可以使用Visual C#或Visu-al Basic來編寫在.NETCompact Framework上運行的托管應(yīng)用程序,使用Visual C++來編寫本機的應(yīng)用程序。無論選擇何種語言,用戶都將使用與開發(fā)PC程序時相同的代碼編輯器、設(shè)計器和調(diào)試器界面,可以直接從智能設(shè)備項目中選擇一個模板,然后開始編碼。手持終端與電腦連接時需要同步軟件——ActiveSyncsetupchs.exe,安裝該軟件后就可以和手持終端即時通信了。調(diào)試程序時可以選擇直接運行在智能設(shè)備上,此時程序會自動安裝在手持終端上,無需AP連接。開發(fā)的程序可以生成cab包,cab包可以直接安裝在手持終端上,并生成可執(zhí)行文件。默認情況下,手持終端如果沒有電,系統(tǒng)就會恢復(fù)出廠設(shè)置,許多程序需要重新安裝,給用戶帶來諸多不便。值得一提的是,Mobile公司推出了差異備份軟件,安裝軟件前對系統(tǒng)狀態(tài)進行掃描記錄,安裝應(yīng)用軟件后再次掃描,軟件將兩次掃描的差異記錄下來并保存成文件,把文件放在手持終端Application目錄下。每次冷啟動設(shè)備,應(yīng)用程序都會自動安裝。

  3.4 預(yù)收款系統(tǒng)的部署

  首先,安裝WAS。安裝完畢后選擇“概要表創(chuàng)建”向?qū)?,在“概要表類型選擇”對話框中選擇“創(chuàng)建DeploymentManager概要表”。在“節(jié)點、主機和單元名”對話框中,主機名要輸入IP地址,一直單擊“下一步”即可完成安裝。在程序菜單中啟動概要表。啟動界面消失后在瀏覽器中輸入地址http://ip9060/ibm/console即可進入管理控制臺。登錄管理控制臺后,點擊“服務(wù)器”,可以看到集群、集群拓撲等信息。

  其次,安裝各個節(jié)點。選擇“概要表創(chuàng)建”向?qū)?,在“概要表類型選擇”對話框中選擇“創(chuàng)建應(yīng)用程序服務(wù)器概要表”,一直單擊“下一步”即可完成安裝。在程序菜單中啟動概要表。以同種方式在其他節(jié)點上安裝應(yīng)用程序服務(wù)器概要表并啟動。

  最后,為了提高靜態(tài)頁處理效率,需要安裝IBM HT-TP Server以及WAS插件。安裝后修改并運行插件bin下的configurewebserverl.bat,Web服務(wù)器會添加到配置管理器中??蛇M入管理控制臺點擊“服務(wù)器”,打開Web服務(wù)器查看剛添加的服務(wù)。至此,安裝已結(jié)束。然后進行集群的搭建。進人管理控制臺,點擊“系統(tǒng)管理”進入節(jié)點;添加節(jié)點,選擇類型為受管制節(jié)點,輸入節(jié)點IP地址和JMX端口號即可。此時控制臺會與節(jié)點建立映射關(guān)系。用此方法添加其他各節(jié)點,添加完所有節(jié)點后,控制臺會把各節(jié)點的默認服務(wù)serverl自動添加到系統(tǒng)中,可以將其刪除。然后需要把剛添加的節(jié)點作為組管理起來,就是群的概念。點擊“服務(wù)器”,進入“集群配置”,單擊“添加”按鈕,輸人群的名稱,然后選擇剛添加過的節(jié)點,保存也可建立多個群。搭起集群環(huán)境后無需進入單個節(jié)點進行管理,在管理控制臺可以進行統(tǒng)一管理。例如要設(shè)置某個節(jié)點的環(huán)境變量,可以單擊“環(huán)境”,選擇WebSphere變量,選擇相應(yīng)的節(jié)點進行配置。在整個集群環(huán)境中,若要發(fā)布應(yīng)用程序,只需要在部署管理控制臺發(fā)布應(yīng)用。應(yīng)用可以選擇需要使用的集群,選擇完畢后集群內(nèi)所有成員節(jié)點都會有份應(yīng)用;同時,應(yīng)用也發(fā)布到IBM HTTP Server上,這樣該應(yīng)用所有動態(tài)頁面提交給負載最低的可用節(jié)點,靜態(tài)頁面或數(shù)據(jù)提交給IBM HTTP Server來處理。至此,一個簡單的基于容器的集群已搭建完成。本系統(tǒng)還需要操作數(shù)據(jù)庫,建立數(shù)據(jù)庫驅(qū)動、配置數(shù)據(jù)源都會在所有成員節(jié)點上同步完成。集群維護起來也很方便,隨時可以添加、刪除節(jié)點,靈活易擴展。添加節(jié)點后只需要把節(jié)點加入到相應(yīng)的群中,保存后該節(jié)點就會享有該群上的所有應(yīng)用,包括數(shù)據(jù)源信息。

  JSP(JaVa Server Pages)是一種動態(tài)網(wǎng)頁技術(shù)標準。Servlet是Java技術(shù)對CGI編程的回答。支持JSP/Serv-let的Web服務(wù)器有很多,選擇合適的Web服務(wù)器對于構(gòu)建JSP網(wǎng)站是非常重要的。常用的web服務(wù)器有:Al-laire JRun、Apache Tomcat、BEA Web logic ApplicationServer、IBM WebSphere Application Server、iPlanet WebServet、JavaServer Web Development Kit(JSWDK)以及Java Web Server等。

  4 預(yù)收款系統(tǒng)的使用

  輸入相應(yīng)的會員信息和密碼進入預(yù)收款界面。輸入時,按回車鍵光標會自動跳轉(zhuǎn)到下一個輸入框,身份驗證無誤后進入主界面,如圖3(a)所示。其中一位顧客一個流水,系統(tǒng)會自動生成。此時可以掃描商品,如圖3(b)所示。

操作界面

  掃描后會顯示商品詳細信息:名稱、單價/單位、數(shù)量、總金額。按Z鍵可以看到商品在列表框中,再次按Z鍵可以返回信息框。若顧客有不要的商品,可以選中相應(yīng)商品明細按X鍵刪除。最近掃描的商品總排在列表首行,按Z鍵時默認顯示最近一次掃描的商品信息。若要查看先前掃描過的商品信息,可以選中列表中相應(yīng)記錄按Z鍵。數(shù)量默認為1,若要輸入數(shù)量按A鍵。

  輸入完數(shù)量按回車鍵,此時掃描商品條碼。裝袋完成后點擊B。掃描包裝條碼后,繼續(xù)裝袋。顧客的所有商品裝袋結(jié)束后按C鍵(預(yù)結(jié)),當提示“提交成功”時該顧客的商品信息將發(fā)送到收款臺。此后可對下一名顧客中進行預(yù)收款。若在提交前想查看當前顧客所有的商品信息(前提是都已小結(jié)),可選擇操作菜單中的流水明細,最方便的是按快捷鍵E。按F1退出該窗口返回到主界面。若要查看某一包裝袋的商品明細,可選擇菜單中的小結(jié)明細。掃描包裝袋上的條碼就會出現(xiàn)該袋所盛商品的明細。按F1退出該窗口返回到主界面。若顧客有些商品(如大袋大米、衛(wèi)生紙等)不能包裝,則需到收款臺另行掃描收款。若顧客還有未包裝商品,但想知道所有商品(不論包裝還是未包裝)的明細,可選擇菜單中的總金額或按快捷鍵G。“包裝額”中顯示該顧客所有包裝商品應(yīng)收款,“其他”是不方便包裝商品應(yīng)收款,“總金額”為該顧客到款臺總付款。操作員掃描未包裝商品,結(jié)束后告知顧客該付多少錢。若操作員需修改密碼,可選擇操作菜單中的“修改密碼”。

  結(jié) 語

  本文詳細介紹了系統(tǒng)的架構(gòu)及設(shè)計,并闡明了該系統(tǒng)的使用方法。本系統(tǒng)可以靈活應(yīng)用于各超市以及大型賣場的促銷活動時期。對消費者來說,不僅擁有了更好的購物環(huán)境,還大大節(jié)省了寶貴的時間(這正是本系統(tǒng)的創(chuàng)新性所在);對商場來說,收款速度的提高意味著商品銷售量的增長,將會帶來更多的利潤。由此可見,無論是商場還是消費者,系統(tǒng)都能夠合理、有效地為之服務(wù),具有良好的應(yīng)用前景。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉