《電子技術(shù)應用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應用 > 基于EasyARM615的分布式排隊系統(tǒng)設(shè)計
基于EasyARM615的分布式排隊系統(tǒng)設(shè)計
電子發(fā)燒友
摘要: 本文設(shè)計了由主機EasyARM615,、從機AT89S52單片機及其外圍電路構(gòu)成的智能排隊管理系統(tǒng),。以高性能的32位EasyARM615開發(fā)套件為主機控制器,以價格低廉的單片機為從機搭建起來的智能排隊系統(tǒng),既能解決無序排隊問題,,又能提高服務質(zhì)量,,可以對多個窗口和隨機出現(xiàn)的客戶流進行自動排隊管理,,順序呼叫顧客到對應的窗口辦理業(yè)務,。
Abstract:
Key words :

1  系統(tǒng)方案分析

按照當前國內(nèi)外技術(shù)水平來分類,排隊管理系統(tǒng)可以分為有線系統(tǒng)和無線系統(tǒng),,它們所實現(xiàn)的功能是完全一樣的,。無線通信方式,最大的優(yōu)點是安裝方便快捷,。除主機外,,任何設(shè)備出現(xiàn)故障時,都可實時在線更換和維修,。但該方式容易受到頻率干擾和電磁波干擾,。

2  系統(tǒng)整體方案設(shè)計

各個窗口終端CPU通信的信息量不大,實現(xiàn)的功能較簡單,。主機采用32位EasyARM615[l]可以滿足要求,,充分利用主機自帶的RS485總線資源。從機采用8位的單片機即可實現(xiàn)所需功能,。雖然在穩(wěn)定性上可能稍有影響,,編程上略為復雜,但是大大地降低了生產(chǎn)成本,,而且對系統(tǒng)穩(wěn)定性方面的影響,可以通過軟件設(shè)計來盡量克服。

基于以上方案分析,,主機采用32位EasyARM615開發(fā)套件,,從機采用8位單片機作為控制芯片。搭建基于EasyARM615的分布式排隊系統(tǒng),,具體框架如圖1所示,。



排隊系統(tǒng)的基本服務流程是:當顧客進入服務大廳,選擇自己需要的服務類別,,從“號票打印機”抽取打印號票,,上面打印出該顧客的排隊代號。主機根據(jù)服務類別及緊急程度處理數(shù)據(jù),,形成隊列,。當工作人員服務完畢后只需按一下從機鍵盤上的呼叫按鈕,主機將先來的顧客代號通過窗口顯示屏和語音信息,,呼叫顧客前來辦理,。

3系統(tǒng)硬件電路設(shè)計

基于單元化思想設(shè)計,系統(tǒng)硬件由主機控制器,、從機控制器,、人機交互界面、鍵盤輸入系統(tǒng),、嵌入式打印機,、語音播放系統(tǒng)、自制電源模塊組成,。

3.1  主機控制器

EasyARM615主機是系統(tǒng)控制和管理的核心,,完成號票的打印和號碼的存儲、管理,、顯示,、發(fā)送及語音播放等功能。顧客來到后,,在主機上按“取號”鍵,,系統(tǒng)將排隊人數(shù)和排隊號碼加1,同時打印顧客的號碼并存儲,。當窗口工作人員按“下一位”鍵取號時,,主機將排在最前的號碼發(fā)往呼叫器、相應的窗口顯示屏和主顯示屏,,并通過語音模塊播放語音,,同時將系統(tǒng)的排隊人數(shù)減l;當窗口工作人員按“重呼”鍵或“暫停”鍵時,,從機向主機送出該窗口數(shù)據(jù),,主機收到后立即將該數(shù)據(jù)發(fā)往呼叫器,、相應的窗口顯示屏和主顯示屏,并通過語音模塊播放語音,。主機控制器電路如圖2所示,。



3.2  從機控制器

系統(tǒng)的從機控制器采用Atmel公司低功耗、高性能的CMOS 8位AT89S52單片機,。其內(nèi)置8 KB Flash片內(nèi)程序存儲器,,256 B的隨機存取數(shù)據(jù)存儲器(RAM),5個中斷優(yōu)先級,、2層中斷嵌套中斷,,2個16位可編程定時計數(shù)器,2個全雙工串行通信口,,看門狗(WDT)電路等資源,。

3.3  其他模塊設(shè)計

主顯示屏采用帶中文字庫的液晶模塊LCDl2864,用于向在休息區(qū)等待的顧客提示被呼叫的號碼和相應的窗口號,。窗口顯示屏采用字符型液晶顯示模塊LCDl602,,用于顯示窗口的受理顧客號,引導顧客到該窗口來辦理業(yè)務,。

語音播報系統(tǒng)采用廣州唯創(chuàng)科技有限公司的可編輯語音芯片WT588D系列語音單片機,。

嵌入式打印模塊采用WH-A6熱敏嵌入式微型打印機,串行接口控制,。

4  軟件設(shè)計

系統(tǒng)的設(shè)計理念是基于數(shù)據(jù)隊列原理,,遵循先來先辦的原則。智能排隊系統(tǒng)的“智能”體現(xiàn)在系統(tǒng)對“排隊”的處理是根據(jù)運籌學中的排隊論來設(shè)計的,,管理中心查詢各個服務臺空閑情況,,根據(jù)服務臺總數(shù)目進行輪詢算法,以確認下一個取得客戶的服務臺號,。

4.1  通信方式

系統(tǒng)采用RS485總線,,工作于半雙工方式。RS485為差分平衡數(shù)字通信接口,,系統(tǒng)采用主從式通信方式,,主機采用查詢工作方式,從機采用中斷工作方式,。通信總是由主機開始,,循環(huán)地給從機發(fā)送查詢命令,從機返回相應的應答信息,。除非主機呼叫從機,,從機在其他情況下不能主動向通信總線上送出信息。

4.2  窗口優(yōu)先級和平衡分配算法設(shè)計

在多隊列多窗口,、業(yè)務優(yōu)先級辦理的情況下,,需要將客戶按照“先來先辦,,平均分配”的原則分配到各個窗口。為了解決各業(yè)務的多窗口平均分配,,系統(tǒng)在優(yōu)先級排隊系統(tǒng)輸入隊列調(diào)度算法的基礎(chǔ)上,,改進并設(shè)計了一種窗口優(yōu)先級和平衡分配算法[2]來解決該問題,,基本步驟如下:

①獲得當前窗口可辦理的業(yè)務列表,。

②判斷最高優(yōu)先級的一個或多個業(yè)務的隊列中是否有排隊號。

③若存在排隊號,,判斷當前窗口是否是同類窗口中最早請求的,;若不是,則跳轉(zhuǎn)到⑤,。

④若是,,從最高業(yè)務級別的隊列中取得排隊時間最早的排隊號。

⑤繼續(xù)查找次優(yōu)先級隊列,,直到取得排隊號或查找所有隊列完畢,;若無排隊號,返回,。

4.3  程序設(shè)計

主程序流程如圖3所示,。主機初始化后,從01號從機(即呼叫器,,地址=02H)開始查詢,,如有應答命令請求,根據(jù)命令作相應處理,。



(1)請求發(fā)送

主機將最靠前的顧客號碼發(fā)送到該機,,并置發(fā)送標志F=1。

(2)請求接收

當呼叫器重呼或暫停時,,向主機發(fā)送數(shù)據(jù),。此時,主機接收該從機數(shù)據(jù),,接收完成后,,立即查詢從機并發(fā)送數(shù)據(jù),置F=l,。若從機不應答,,表示該機無請求服務或沒有該設(shè)備,則清F=0,。

主機通信完成后將顯示更新的數(shù)據(jù)于LCD屏,,根據(jù)發(fā)送標志決定是否將數(shù)據(jù)送到該從機對應的窗口顯示屏、主顯示屏及播放語音,,然后地址+2并判斷是否開始新的查詢,。

結(jié)  語

本文設(shè)計了由主機EasyARM615,、從機AT89S52單片機及其外圍電路構(gòu)成的智能排隊管理系統(tǒng)。以高性能的32位EasyARM615開發(fā)套件為主機控制器,,以價格低廉的單片機為從機搭建起來的智能排隊系統(tǒng),,既能解決無序排隊問題,又能提高服務質(zhì)量,,可以對多個窗口和隨機出現(xiàn)的客戶流進行自動排隊管理,,順序呼叫顧客到對應的窗口辦理業(yè)務。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。