基于CAN總線(xiàn)的倉庫溫濕度監控系統的設計
在倉庫的貨物的管理中,需要對溫度、濕度等環(huán)境參數進(jìn)行監控,以保證倉庫的安全。隨著(zhù)庫區的面積逐漸擴大,需要傳輸能力強和通信距離遠的監控系統來(lái)有效地對倉庫貨物進(jìn)行監管。
本文引用地址:http://dyxdggzs.com/article/163626.htmCAN(ControllerAreaNetwork,控制器局域網(wǎng))總線(xiàn)技術(shù)具有先進(jìn)的多主網(wǎng)絡(luò )結構、通訊距離遠、價(jià)位低、可靠性高、系統容量大、安裝方便、維護費用低、性?xún)r(jià)比高等優(yōu)點(diǎn)。特別對庫區較大、倉庫分布較分散的大型倉庫的監控非常適用。
2系統硬件設計
本系統采用分布式監控網(wǎng)絡(luò ),主要分為上位機和下位機兩部分,而上位機硬件包括CAN通訊適配器和上位監控管理機組成;下位機則由CAN節點(diǎn)和現場(chǎng)傳感器組和溫度濕度參數控制器組成,如圖1所示。

其工作原理是下位機節點(diǎn)通過(guò)一定時(shí)間間隔把含有地址、溫度、濕度等數據量的報文向CAN總線(xiàn)發(fā)送,總線(xiàn)通過(guò)自身仲裁確定先把優(yōu)先級最高的數據放到總線(xiàn)上,然后自動(dòng)仲裁依次發(fā)送優(yōu)先級相對較低的報文到CAN總線(xiàn)。由于CAN總線(xiàn)的信息存取利用了廣播式的存取工作方式,報文可以在任何時(shí)候由任何節點(diǎn)發(fā)送到空閑的總線(xiàn)上,每個(gè)CAN總線(xiàn)節點(diǎn)都接收到了總線(xiàn)上出現的報文信息,通過(guò)每個(gè)節點(diǎn)的報文濾波和地址設置,上位機CAN節點(diǎn)能實(shí)現上傳報文的接收。上位機接收到報文信息后通過(guò)組態(tài)王軟件實(shí)現倉庫溫度等參數實(shí)時(shí)監視和記錄。同時(shí)上位機通過(guò)倉庫人機界面可隨時(shí)發(fā)送控制信息到CAN總線(xiàn)上,地址匹配的CAN總線(xiàn)節點(diǎn)能收到信息。通過(guò)這種方式即可實(shí)現倉庫的溫度等參數的反饋控制。
2.1上位機系統的硬件設計
CAN通訊適配器承擔上位計算機和CAN節點(diǎn)之間的數據轉發(fā)任務(wù),實(shí)現上位機與下位機的通訊。利用EPP并行口實(shí)現PC機與SJA1000的通信,關(guān)鍵在于實(shí)現SJA1000的讀寫(xiě)時(shí)序,實(shí)現的方法有兩種:軟件產(chǎn)生讀寫(xiě)時(shí)序電路和硬件產(chǎn)生讀寫(xiě)時(shí)序電路。該系統用硬件產(chǎn)生讀寫(xiě)時(shí)序電路,通過(guò)邏輯門(mén)的時(shí)間延遲來(lái)產(chǎn)生SJA1000握手等信號。設計電路如圖2所示。

2.2下位機系統的硬件設計
下位機包括CAN節點(diǎn)、現場(chǎng)傳感器組和溫度濕度參數控制器。CAN節點(diǎn)主要是完成CAN總線(xiàn)信號和CAN網(wǎng)絡(luò )通訊的配置?,F場(chǎng)傳感器組和參數控制器部分主要是和CAN節點(diǎn)完成實(shí)時(shí)監測倉庫內各個(gè)測試點(diǎn)的溫度、濕度情況,還要負責接收上位管理機的命令,根據上位管理機的要求傳輸數據和反饋控制。下位機結構組成如圖3所示。

2.2.1CAN節點(diǎn)
CAN節點(diǎn)器件主要包括:微處理器AT89S52單片機、CAN控制器SJA1000和CAN總線(xiàn)收發(fā)器PCA82C250。
?。?)CAN控制器SJA1000
SJA1000的工作模式通過(guò)其內部的時(shí)鐘分頻寄存器CDR中的CAN模式位來(lái)選擇。硬件復位時(shí)默認模式是BasicCAN工作模式。SJA1000相對于微控制器相當于是一存儲映象I/O設備,他的地址域由控制段和信息緩沖區段組成,在向下加載初始化期間,控制器可被編程以設定通信參數,CAN總線(xiàn)上的通信可通過(guò)此段由微控制器控制。
SJA1000內部寄存器有的是只能寫(xiě)的,有的是既可讀又可寫(xiě)的。系統正常工作之前,微控制器要對某些寄存器進(jìn)行初始化,以保證系統的各部分之間能進(jìn)行正確的數據交換。CAN控制器的內容都是通過(guò)微控制器寫(xiě)入的,其讀寫(xiě)時(shí)序如圖4所示。

從讀/寫(xiě)時(shí)序圖來(lái)看,微控制器對SJA1000進(jìn)行操作,由于SJA1000內可存儲數據的地址信息?,F場(chǎng)數據采集與控制層負責從現場(chǎng)采集數據以CAN協(xié)議的格式發(fā)送到總線(xiàn)上,根據需要對現場(chǎng)設備進(jìn)行實(shí)時(shí)控制和監視。系統上電后微處理器先對自身和SJA1000進(jìn)行初始化,以SJA1000傳送到CAN總線(xiàn)上或直接現場(chǎng)顯示、控制;對從CAN總線(xiàn)上來(lái)的信息則采用中斷方式,系統每接收到一幀信息,便產(chǎn)生一次中斷,引發(fā)微處理機進(jìn)入中斷,在中斷服務(wù)程序中讀取該幀信息并傳送到現場(chǎng)。
?。?)CAN收發(fā)器PCA82C250
PCA82C250為CAN收發(fā)器,是CAN控制器和物理總線(xiàn)間的接口,提供對總線(xiàn)的驅動(dòng)發(fā)送能力,CAN控制器的差動(dòng)發(fā)送能力和CAN控制器的差動(dòng)接收能力。他有很強的抗瞬間干擾和保護總線(xiàn)的能力,具有3種不同的工作模式即高速、斜率控制和待機??偩€(xiàn)上的某節點(diǎn)掉電不會(huì )影響總線(xiàn),在40m內實(shí)現高速應用可達1Mb/s,最多可掛110個(gè)節點(diǎn)。管腳8(RS)允許PCA82C250選擇3種不同的工作模式,如表1所示。

評論