0 引言
在基于單片機的測控應(yīng)用系統(tǒng)設(shè)計,常常采用單一CPU,配合相應(yīng)的接口輔助電路完成測控目的。然而當(dāng)需要較多的輸入輸出接口及這些接口距離主處理CPU較遠(yuǎn)時,必然使得硬件系統(tǒng)復(fù)雜,給調(diào)試帶來不便。利用雙機系統(tǒng),將相應(yīng)功能模塊集成、分離,這樣一來就可
以降低硬件系統(tǒng)的復(fù)雜度,提高應(yīng)用系統(tǒng)的可靠性,同時也使得軟件設(shè)計相對獨立、容易管理,且易于修改程序,適合很多應(yīng)用系統(tǒng)。
1 雙機系統(tǒng)的組成
以應(yīng)用于超市的某電子式存取包柜設(shè)備為例,如下:
圖1 主板硬件原理框圖
圖2 繼電器板硬件原理框圖
該系統(tǒng)具有32路開關(guān)量輸入,其中16路紅外線檢測輸入,16路紅外線發(fā)射控制驅(qū)動,
16 路繼電器控制輸出。LCD液晶顯示,8路按鍵輸入。語音提示,存儲、實時時鐘,打印輸出安裝在主控板上,其余32路輸入、16路輸出裝在繼電器控制板上。主板、繼電器板分別采用ATMEL公司的89C52和89C51,主板管理存包用戶的操作并記錄其歷史參數(shù),繼電器板完成具體的開、關(guān)門操作,檢測箱內(nèi)是否有物品已存放。兩板各行其職又相互配合,通過標(biāo)準(zhǔn)串口,信息交換十分方便。這樣設(shè)計后,兩板之間的連線只有三條。
1.1主機板的設(shè)計
主機板負(fù)責(zé)電子柜的開箱時間、開箱柜號以及密碼的歷史記錄,顯示電子柜內(nèi)是否有物的狀態(tài)信息,打印,并語音提示箱號及密碼紙。當(dāng)需要開箱時,按一定的通訊協(xié)議將開箱的相關(guān)命令通過串口傳輸?shù)嚼^電器板,執(zhí)行操作。
為了保證系統(tǒng)可靠,復(fù)位電路采用MAX813,同時作為看門狗監(jiān)控主機板、繼電器板上的單片微處理器的運行。一個看門狗監(jiān)控兩只單片微處理器,其中任意一只單片微處理器死機時均可以使整個系統(tǒng)自動復(fù)位。
1.1.1 主板控制軟件流
圖3 主板軟件流程圖
1.2 繼電器板的設(shè)計
繼電器板負(fù)責(zé)電子存包柜的開箱操作,利用紅外線檢測箱內(nèi)是否有物,并將狀態(tài)信息上傳至主機板,作為下一次分配箱時的依據(jù)。繼電器接收主機板下達的開箱命令,根據(jù)主機指定的箱號,驅(qū)動相應(yīng)的繼電器開門,同時檢測門限位開關(guān)的信號,確定門是否開啟。
1.2.1 繼電器板控制軟件流程
圖4 繼電器板軟件流程圖
1.3 顯示面板
為美觀起見,電子存包柜的面板顯示采用64*128點陣式液晶顯示模塊,主要顯示電子存包柜的空、滿箱狀態(tài),存包柜的密碼狀態(tài),時鐘等。
2 結(jié)論
雙機系統(tǒng)以較簡單的硬件電路,減少了之間的連線,獨立的程序?qū)崿F(xiàn)了所要達到的目的,提高了系統(tǒng)的可靠性及工作效率。由于將應(yīng)用系統(tǒng)以各自完成的功能為界面劃分為兩塊,使得軟件編程思路清晰、流暢,易于排錯,硬件上的復(fù)位設(shè)計又使得雙機連為一體,當(dāng)任何一個部分出錯時,可以使應(yīng)用系統(tǒng)復(fù)位,改變了原有的上位主機給下位機復(fù)位方式所帶來的弊端,避免了死機現(xiàn)象。從應(yīng)用的效果看,該系統(tǒng)工作穩(wěn)定、可靠,達到了預(yù)期的效果。雙機系統(tǒng)的優(yōu)點是顯而易見的,它在測控領(lǐng)域的應(yīng)用是十分廣泛的。