摘 要:在多輸入-輸出的應用系統中采用基于雙CPU的雙機系統,大大地簡化了應用系統的硬件和軟件設計。以電子存包柜為例,給出了設計方法及相關軟件流程。
關鍵詞:雙機系統;電子存包柜;復位
0 引言
在基于單片機的測控應用系統設計,常常采用單一CPU,配合相應的接口輔助電路完成測控目的。然而當需要較多的輸入輸出接口及這些接口距離主處理CPU較遠時,必然使得硬件系統復雜,給調試帶來不便。利用雙機系統,將相應功能模塊集成、分離,這樣一來就可
以降低硬件系統的復雜度,提高應用系統的可靠性,同時也使得軟件設計相對獨立、容易管理,且易于修改程序,適合很多應用系統。
1 雙機系統的組成
以應用于超市的某電子式存取包柜設備為例,如下:
[align=center]

圖1 主板硬件原理框圖

圖2 繼電器板硬件原理框圖[/align]
該系統具有32路開關量輸入,其中16路紅外線檢測輸入,16路紅外線發射控制驅動,
16 路繼電器控制輸出。LCD液晶顯示,8路按鍵輸入。語音提示,存儲、實時時鐘,打印輸出安裝在主控板上,其余32路輸入、16路輸出裝在繼電器控制板上。主板、繼電器板分別采用ATMEL公司的89C52和89C51,主板管理存包用戶的操作并記錄其歷史參數,繼電器板完成具體的開、關門操作,檢測箱內是否有物品已存放。兩板各行其職又相互配合,通過標準串口,信息交換十分方便。這樣設計后,兩板之間的連線只有三條。
1.1主機板的設計
主機板負責電子柜的開箱時間、開箱柜號以及密碼的歷史記錄,顯示電子柜內是否有物的狀態信息,打印,并語音提示箱號及密碼紙。當需要開箱時,按一定的通訊協議將開箱的相關命令通過串口傳輸到繼電器板,執行操作。
為了保證系統可靠,復位電路采用MAX813,同時作為看門狗監控主機板、繼電器板上的單片微處理器的運行。一個看門狗監控兩只單片微處理器,其中任意一只單片微處理器死機時均可以使整個系統自動復位。
1.1.1 主板控制軟件流
[align=center]

圖3 主板軟件流程圖[/align]
1.2 繼電器板的設計
繼電器板負責電子存包柜的開箱操作,利用紅外線檢測箱內是否有物,并將狀態信息上傳至主機板,作為下一次分配箱時的依據。繼電器接收主機板下達的開箱命令,根據主機指定的箱號,驅動相應的繼電器開門,同時檢測門限位開關的信號,確定門是否開啟。
1.2.1 繼電器板控制軟件流程
[align=center]

圖4 繼電器板軟件流程圖[/align]
1.3 顯示面板
為美觀起見,電子存包柜的面板顯示采用64*128點陣式液晶顯示模塊,主要顯示電子存包柜的空、滿箱狀態,存包柜的密碼狀態,時鐘等。
2 結論
雙機系統以較簡單的硬件電路,減少了之間的連線,獨立的程序實現了所要達到的目的,提高了系統的可靠性及工作效率。由于將應用系統以各自完成的功能為界面劃分為兩塊,使得軟件編程思路清晰、流暢,易于排錯,硬件上的復位設計又使得雙機連為一體,當任何一個部分出錯時,可以使應用系統復位,改變了原有的上位主機給下位機復位方式所帶來的弊端,避免了死機現象。從應用的效果看,該系統工作穩定、可靠,達到了預期的效果。雙機系統的優點是顯而易見的,它在測控領域的應用是十分廣泛的。
參考文獻:
1 何立民. MS-51系列單片機應用系統設計. 北京:北京航空航天大學出版社, 1999
2 陳汝金、劉運國、雷國君 單片機實用技術 北京:電子工業出版社 1992