新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于51單片機的多點測溫系統設計

        基于51單片機的多點測溫系統設計

        作者: 時間:2015-05-07 來源:網絡 收藏

          1.溫度傳感器介紹

        本文引用地址:http://www.104case.com/article/273787.htm

          DALLAS公司單線數字溫度傳感器是一種新的“一線器件”,它具有體積小、適用電壓寬等特點。一線總線獨特而且經濟的特點,使用戶可輕松地組建傳感器網絡,為測量系統的構建引入全新概念。支持“一線總線”接口,測量溫度范圍為-55℃~+125℃,在-10℃~+85℃范圍內,精度為±0.5℃;通過編程可實現9~12位的數字值讀數方式;可以分別在93.75ms和750ms內將溫度值轉化為9位和12位的數字量。每個DS18B20具有唯一的64位長序列號,存放于DS18B20內部ROM只讀存儲器中。

          DS18B20溫度傳感器的內部存儲器包括1個高速暫存RAM和1個非易失性的電可擦除E2RAM,后者存放高溫度和低溫度觸發器TH、TL和結構寄存器。暫存存儲器包含了8個連續字節,前2字節為測得的溫度信息,第1個字節為溫度的低8位,第2個字節為溫度的高8位。高8位中,前4位表示溫度的正(全“0”)與負(全“1”);第3個字節和第4個字節為TH、TL的易失性拷貝;第5個字節是結構寄存器的易失性拷貝,此三個字節內容在每次上電復位時被刷新;第6、7、8個字節用于內部計算;第9個字節為冗余檢驗字節。所以,讀取溫度信息字節中的內容,可以相應地轉化為對應的溫度值。表1列出了溫度與溫度字節間的對應關系。

          

        溫度與溫度字節間的對應關系

         

          溫度與溫度字節間的對應關系

          2.系統硬件結構

          系統分為現場溫度數據采集和上位監控PC兩部分。圖1為系統的結構圖。需要指出的是,下位機可以脫離上位PC機而獨立工作。增加上位機的目的在于能夠更方便地遠離現場實現監控、管理。現場溫度采集部分采用80作為中央處理器,在P1.0口掛接10個DS18B20傳感器,對10個點的溫度進行檢測。非易失性RAM用作系統溫度采集及運行參數等的緩沖區。上位PC機通過RS485通信接口與現場單片微處理器通信,對系統進行全面的管理和控制,可完成數據記錄,打印報表等工作。 系統各模塊分析如下:

          

        系統硬件結構圖

         

          2.1 DS18B20與單片機的接口電路

          DS18B20與80連接非常簡單,只需將DS18B20信號線與單片機一位I/O線相連,且一位I/O線可連接多個DS18B20,以實現單點或多點溫度測量。DS18B20可以通過2種方式供電:外加電源方式和寄生電源方式。前者需要外加電源,電源的正負極分別與DS18B20的VDD和GND相連接。后者采用寄生電源,將DS18B20的VDD與GND接在一起,當總線上出現高電平時,上拉電阻提供電源;當總線低電平時,內部電容供電。由于采用外加電源方式更能增強DS18B20的抗干擾性,故本設計采用這種方式。在實際應用中,傳感器與單片機的距離往往在幾十米到幾百米,傳輸線的寄生電容對DS18B20的操作也有一定的影響,所以往往在接口的地方稍加改動,以增加芯片的驅動能力和減少傳輸線電容效應帶來的影響,達到遠距離傳輸的目的。

          2.2鍵盤及顯示

          鍵盤通過編程設置可完成以下功能:對溫度值進行標定,定時顯示各路的溫度值,單獨顯示某路的溫度值,給每一路設定上下限報警值等。LED則可為用戶提供直觀的視覺信息。在工作現場,用戶可通過6位LED的顯示數據來確定系統的當前工作狀態以及采樣的溫度值信息等。

          2.3報警電路

          當被測溫度值超過預先設定的上下限時,報警電路作出響應,蜂鳴器發出響聲,告知用戶溫度的異常。具體哪一個傳感器溫度值超限,可由軟件查詢各DS18B20內部告警標志而確定,繼而調整該現場溫度,以達到對溫度波動的控制。

          3.軟件設計及流程

          3.1下位機軟件

          系統下位測溫部分軟件采用MCS51匯編語言編寫,主要完成對DS18B20的讀寫操作,實現實時數據的采集,并獲取最終溫度值送至單片機內存。但需要注意的是,由于DS18B20的單總線方式,數據的讀寫都占用同一根線,所以每一種操作都必須嚴格按照時序進行。圖2為測溫子系統流程圖。單片機首先發送復位脈沖,該脈沖使信號線上所有的DS18B20芯片都被復位,接著發送ROM操作命令,使得序列號編碼匹配的DS18B20被激活。被激活后的DS18B20進入接收內存訪問命令狀態,內存訪問命令完成溫度轉換、讀取等工作(單總線在ROM命令發送之前存儲命令和控制命令不起作用)。

          3.2上位機軟件

          系統上位機的軟件采用VC++6.0編寫。主要完成的功能包括:與下位單片微機的實時通信;模擬顯示各采集點溫度曲線;保存各測溫點溫度數據;統計各采集點平均溫度值;打印各點溫度統計報表等。

          

        程序流程圖

         

          程序流程圖

          4.結論

          本系統具有如下特點:

          結構簡單,成本低廉,維護方便。

          直接將溫度數據進行編碼,可以只使用單根電纜傳輸溫度數據,通信方便,傳輸距離遠且抗干擾性強。

          配置靈活、方便、易于擴展。可擴展多路下位溫度采集子系統,將它們通過RS485與上位PC機組網,形成多點溫度采集網絡。也可在各子系統中有選擇性地增減溫度傳感器。

          工作穩定,測溫精度高。實驗表明,在長達200m的一位總線上掛接24個DS18B20溫度傳感器,系統可正確地進行溫度采集,分辨率為0.5℃。

          適合于惡劣環境的現場溫度測量,如:環境控制、設備或過程控制、測溫類消費電子產品等。在大范圍溫度多點監控系統中具有十分誘人的應用前景。

        51單片機相關文章:51單片機教程


        單片機相關文章:單片機教程


        單片機相關文章:單片機視頻教程


        單片機相關文章:單片機工作原理


        蜂鳴器相關文章:蜂鳴器原理
        上拉電阻相關文章:上拉電阻原理


        關鍵詞: 51單片機 DS18B20

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 天峨县| 响水县| 深水埗区| 桦甸市| 治县。| 河北省| 乌兰浩特市| 湖北省| 荆州市| 桦甸市| 外汇| 申扎县| 蕲春县| 吉林省| 岑巩县| 余干县| 瑞安市| 白玉县| 固镇县| 丹凤县| 青田县| 犍为县| 博湖县| 广灵县| 罗源县| 武鸣县| 盐池县| 新竹市| 安国市| 乌拉特后旗| 江津市| 玉门市| 武功县| 元朗区| 铜川市| 申扎县| 镇平县| 修水县| 东宁县| 游戏| 五莲县|