基于CAN總線(xiàn)的分布式車(chē)間溫濕度檢測系統
摘要 闡述了一種基于CAN總線(xiàn)溫濕度檢測系統的方法,重點(diǎn)介紹了通信與溫濕度檢測部分的實(shí)現。該系統以PIC18F25K80單片機為主控器,選用集成溫度傳感器與濕度傳感器。高集成度的元器件使得項目開(kāi)發(fā)周期大大縮短,經(jīng)試運行證實(shí),該系統具有性能穩定、通信距離遠的優(yōu)勢。
關(guān)鍵詞 CAN總線(xiàn);PIC18225K80;溫濕度檢測
許多行業(yè)如紡織、卷煙、化工、食品加工等對生產(chǎn)車(chē)間的溫濕度都有一定的要求,其中有些企業(yè)往往需要一種能夠獨立于空調控制系統的車(chē)間溫濕度檢測系統。這種車(chē)間溫濕度檢測系統作為空調控制的一種冗余設計或者說(shuō)輔助手段,成本往往相對較低。
溫濕度檢測系統作為一種應用廣泛的非標準化檢測系統,不同的設計者、不同的應用需求,使得目前此類(lèi)檢測系統的設計方案呈現出種類(lèi)各異、五花八門(mén)的現象。文獻介紹了一種應用于蔬菜大棚的溫濕度測控系統的設計,以P87LPC76x單片機作為主控器,能利用PID算法,通過(guò)控制執行器加熱、加濕起到調節蔬菜大棚溫濕度的目的,該系統現已廣泛應用于吉林松原農村蔬菜大棚,運行良好。文獻介紹了一種能應用于多種工業(yè)場(chǎng)合的溫濕度檢測系統的設計,該系統基于A(yíng)T89C52單片機開(kāi)發(fā),能將傳感器采集到的溫濕度信號通過(guò)RS485網(wǎng)絡(luò )傳送至上位計算機,該系統簡(jiǎn)單實(shí)用,具有良好的性?xún)r(jià)比。文獻介紹了一種應用于檢測安裝有中央空調的建筑物的內部環(huán)境溫濕度的數據采集器的設計,該檢澍裝置獨立于中央空調而工作,為評價(jià)中央空調運行質(zhì)量、調試空調系統提供基礎數據。該系統基于16位單片機MSP430F開(kāi)發(fā),與PC機實(shí)時(shí)通信,能通過(guò)PC機設置數據采集器參數,并控制數據采集器工作。
1 系統設計
系統自主設計了兩種模塊電路:(1)檢測模塊。每一塊檢測模塊將被安裝于車(chē)間不同的地點(diǎn),用于檢測車(chē)間內不同位置的溫濕度,系統最多支持64個(gè)檢測模塊同時(shí)工作。(2)通信模塊。監視計算機與各檢測模塊之間的通信“橋梁”,一個(gè)通信模塊含有4路通信通道,每1路通信通道可連接至1個(gè)計算機COM口,實(shí)現監視計算機對檢測模塊的分組輪詢(xún)。
檢測模塊與通信模塊之間通過(guò)CAN總線(xiàn)通信。CAN(Controller Area Network)總線(xiàn)于1986年由德國B(niǎo)OSCH公司提出,是一種多主方式的串行通訊總線(xiàn),最早用于汽車(chē)電路中,經(jīng)過(guò)數十年的發(fā)展日趨完善,目前被廣泛應用于汽車(chē)、石油、化工、制造業(yè)等許多領(lǐng)域,被譽(yù)為“最有前途的總線(xiàn)技術(shù)之一”。選擇CAN總線(xiàn),是因為CAN總線(xiàn)相比傳統的RS485總線(xiàn)優(yōu)勢明顯,主要體現在以下3點(diǎn):(1)傳統的RS485總線(xiàn)僅有電氣協(xié)議,而CAN總線(xiàn)則具有完善的通信協(xié)議,易于開(kāi)發(fā)。(2)傳統的RS485總線(xiàn)通信距離不超過(guò)1.5 km,而CAN總線(xiàn)的通信距離在5 kbit·s-1速率時(shí)最遠可達10 km。(3)傳統的RS485總線(xiàn)當系統有錯誤出現多節點(diǎn)同時(shí)向總線(xiàn)發(fā)送數據時(shí),導致總線(xiàn)呈現短路從而損壞某些節點(diǎn),而CAN節點(diǎn)在錯誤嚴重的情況下具有自動(dòng)關(guān)閉輸出的功能,不會(huì )影響到整個(gè)CAN總線(xiàn)。
在本系統中,通信模塊與COM口的串行通信速率成為整個(gè)系統的通信瓶頸,但仍然考慮使用計算機COM口采集數據而非專(zhuān)業(yè)接口卡,主要是出于對成本的考慮。為緩解系統瓶頸的考慮,計算機安裝了PCI轉RS-232串口擴展卡(SYBA 9865-4S),將計算機串口擴充為4個(gè),同時(shí)通信模塊設計了4個(gè)通信通道,平均每個(gè)通信通道能與最多16個(gè)檢測模塊進(jìn)行分組通信,以加快數據更新速率。
由于通信模塊與計算機COM口采用RS232通信方式,理論上RS232通信距離為15 m,因此通信模塊與計算機之間必須保持在15 m以下,實(shí)際安裝1.5 m以?xún)?,通信速率可保證在38.4 kbit·s-1下穩定通信。
2 上位機監視計算機程序的設計
計算機監視程序采用C#2010開(kāi)發(fā)控制臺程序,Access2010開(kāi)發(fā)后臺數據庫。程序主要具有如下功能:(1)管理員與技術(shù)員二級用戶(hù)權限。(2)溫濕度警報上下限設定。(3)溫濕度歷史數據記錄。(4)溫濕度報表打印。
這里主要介紹監視程序通信部分的程序設計思路:
(1)監視程序可打開(kāi)4個(gè)計算機COM口,根據設定的每個(gè)COM口輪詢(xún)的檢測模塊編號范匿向連接的COM口發(fā)送數據串并激活通信模塊輪詢(xún)各個(gè)檢測模塊,發(fā)送的數據串長(cháng)度為5 Byte,如圖2所示,格式為:第1 Byte為“讀數據”命令字段,第2 Byte為與連接到COM口的通信通道所連接的第1個(gè)檢測模塊的站號,第3 Byte為與該通道所連接的最后1個(gè)檢測模塊的站號,第4個(gè)和第5 Byte為CRC校驗碼。
(2)通信模塊的每個(gè)通道主控器輪詢(xún)一遍所有與之相連接的檢測模塊之后,便主動(dòng)向計算機返回一次數據,刷新監視程序顯示的溫濕度數據,某通信通道返回的數據串長(cháng)度由連接到該通信通道的檢測模塊數目而決定,當檢測模塊數目為n時(shí),如圖3所示,格式為:第1 Byte為“讀數據”命令字段,監視計算機通過(guò)第1 Byte可辨識此數據串為下位機返回數據,第2個(gè)到第3n+1 Byte為與該通信通道連接的所有檢測模塊返回的溫濕度數據,連續3 Byte為一組,記錄了單個(gè)檢測模塊的返回數據,第3n+2個(gè)和第3n+3 Byte為CRC校驗碼。
pid控制相關(guān)文章:pid控制原理
土壤濕度傳感器相關(guān)文章:土壤濕度傳感器原理
評論