建設部要求城鎮新建公共建筑和居民建筑,凡使用集中供熱設施的,均需設計、安裝具有分戶計量及室溫調控功能的供暖系統。節能型供熱溫度控制器是利用自動控制技術,將節能措施與熱計量功能融為一體,從以人為本的角度提出的一種新型節能理念和方法,使集中供暖用戶既可通過控制器設定、調整并與配套設備共同完成對室內溫度的自動控制和遠程控制,又可隨時了解室內溫度、熱消耗量,達到節約能源的目的。
1 系統總體結構及方案設計
一個完整的大型公建節能型供熱溫度控制器由兩部分組成:溫度測控系統和通信模塊系統。系統總體結構如圖1所示。系統溫度測控的硬件包括:單片機、溫度傳感器、信號放大器、A/D轉換器及D/A轉換器、穩壓器、顯示驅動芯片和數碼管等。系統通信模塊的硬件包括CAN控制器和CAN收發器。
1.1 溫度控制的工作原理
在溫度測控系統中,穩壓器完成對單片機的供電,數碼管完成溫度的顯示。系統的被測參數是溫度,被測溫度首先由傳感器測量后得到mV信號,再經放大器放大后變為0~5 V電壓信號,送入A/D轉換器轉換后,將模擬信號變為數字信號供給單片機,在單片機內進行數據處理。一方面,與所設定的溫度值進行比較產生偏差信號,單片機根據預定的PID算法計算出相應的控制量,用控制量控制電氣閥的導通和關斷,實現溫度控制;另一方面,將實時測量得到的溫度送至數碼管顯示,同時用戶也可通過鍵盤來設定理想溫度。
1.2 CAN通信模塊的工作原理
當CAN總線上的一個節點發送數據時,其以報文形式廣播給網絡中所有節點。對每個節點而言,無論數據是否是發給自己的,均對其進行接收。每組報文開頭有11位字符作為標識符,其規定了報文的優先級,這種格式稱為面向內容的編址方案。在同一系統中標識符是唯一的,不可能有兩個站發送具有相同標識符的報文。當幾個站同時競爭總線讀取時,這種配置尤為重要。當一個站要向其他站發送數據時,該站的CPU要將發送的數據和自身的標識符傳送給本站的CAN控制器,并處于準備狀態;當收到總線分配時,轉為發送報文狀態。CAN控制器將數據根據協議組織成一定的報文格式發出,此時網上的其他站點處于接收狀態。每個處于接收狀態的站對接收到的報文進行檢測,判斷是否接收這些報文。通常每個CAN模塊都是南不同的功能單元構成。CAN控制器與物理總線間需要一個接口CAN接收發送器,CAN接收發送器將來自CAN控制器的邏輯電平信號轉換為總線上的物理電平。再將總線上的物理電平轉換為CAN控制器能接收的邏輯電平信號。CAN接收發送器的上一層是CAN控制器,該控制器執行完整的CAN協議,包括信息緩沖和接收濾波。
2 各部分模塊設計
2.1 主要芯片選擇
系統單片機采用8位AT89C51,因控制器所需的單片機,無需在語音、圖像進行大規模的數據處理,且對速度要求較低,無需高位單片機。溫度傳感器該產品采用美國Dallas公司生產的DS18B20數字式溫度傳感器。選用此類溫度傳感器可省去信號放大部分及A/D轉換器,使得該溫度控制器結構變得簡單、清晰。穩壓器采用三端LM7805供給單片機電源。LM7805為正穩壓電路,TO-220封裝,可提供多種固定的輸出電壓,應用范圍廣。D/A轉換器選擇DAC0832.其是8分辨率的D/A轉換集成芯片與微處理器完全兼容。顯示芯片采用PS7219,是一種新型的串行接口的8位數字靜態顯示芯片,可與任何單片機方便接口,并可同時驅動8位LED.
2.2 單片機溫度采集電路
溫控系統包括單片機最小系統和測溫傳感器。單片機最小系統中,復位電路采用12 MHz晶振,復位電路由復位按鈕控制,同時提供單片機AT89C51、CAN控制器SJA1000和顯示接口器件PS7219的復位信號。單片機溫度采集電路如圖2所示,從RST引出線,分別與各芯片的復位信號線相連采用上電復位模式。
2.3 數模轉換電路
對輸出信號進行數模轉換中,DAC0832采用單緩沖工作方式。DAC0832的兩級寄存器的寫信號WR1和WR2均由單片機的WR引腳控制。當單片機的地址線選擇DAC0832后,只要輸出WR控制信號,便可同時完成數字陽的輸入鎖存和D/A轉換輸出。由于DAC0832是電流輸出型,所以為了得到電壓信號,需在DAC0832的輸出端接入運算放大器。接入一級運算放大器可得到負的電壓信號,接入二級運算放大器,得到正的電壓信號。數模轉換電路如圖3所示。
2.4 CAN通信模塊電路
SJA1000作為CAN的控制部分,在與單片機連接時,其數據線AD0~AD7與單片機的輸入輸出管腳P0口連接,片選信號CS接地,低電壓允許訪問,RST、1NT、WR、WD、ALE管腳分別與單片機的相應管腳連接,控制器的收發端RX0、TX0分別接收發器CTM1050的收發端RXD、TXD引腳相連。系統通信模塊電路如圖4所示。
2.5 電源電路及溫度顯示、按鍵電路
當穩壓器LM7805對單片機進行供電時,220 V交流市電通過電源變壓器變換為交流低壓,再經橋式整流電路和濾波電容C1的整流和濾波,在固定式三端穩壓器LM7805的Vin和GND兩端形成一個并不穩定的直流電壓。此直流電壓經LM7805的穩壓和C3的濾波便在穩壓電源的輸出端產生了精度高、穩定度好的直流輸出電壓。
單片機AT89C51的P1.6作串行數據輸出,連接到PS7219的DIN腳,P1.7和P1.5通過程序分別模擬PS7219的時鐘脈沖CLK及數據加載LOAD信號。PS7219的SA~SG,SDP端連接到各LED數碼管對應的a~f及dp端,DIG1~DIG3分別接3位LED數碼管的共陰極,從而實現位選。PS7219應緊靠LED顯示器放置,且連線盡可能短,兩個GND引腳均必須連接到地線上。系統只設4個按鍵,分別是功能鍵、增加鍵、減小鍵和確定鍵。在按鍵的線路連接中,每個按鍵并聯一個0.1μF電容,目的是實現消抖。
3 程序設計
3.1 系統主程序設計
主程序模塊的主要工作是上電后對系統初始化和構建系統整體軟件框架,其中初始化包括對單片機的初始化、D/A芯片初始化和溫度傳感器初始化等。隨后等待溫度設定,若溫度設定后,判斷系統運行鍵是否按下,若系統運行,則依次調用各相關模塊,循環控制直到系統停止運行。圖5所示為主程序流程圖。
由于常規PID控制器控制效果不佳,溫度測量控制中存在非線性、時變、干擾和純滯后問題,而增量式PID算法具有計算誤差小、切換無沖擊和可靠性高的特點,所以本系統采用該算法。數字增量式PID的輸出為:
△u(k)=a0e(k)-a1e(k-1)+a2e(k-2) (1)
其中,Kp為比例系數;TI為積分時間常數;TD為微分時間常數
3.2 溫度傳感器測溫子程序
溫度傳感器DS18B20的操作協議:初始化DS1820(發復位脈沖)→發ROM功能命令→發存儲器操作命令→處理數據。其操作程序流程如圖6所示。其中任何一步失敗時自動重新初始化。
3.3 CAN通信模塊子程序
CAN通信的軟件設計主要包括3部分:CAN節點初始化、報文發送和報文接收。AT89C51通電或復位后,調用復位程序給SJA1000的復位端RST提供復位信號,使SJA1000進入復位模式,SJA1000的初始化只有在復位模式下才可進行。初始化程序主要包括以下寄存器的設計:(1)通過時鐘分頻寄存器定義:是使用BasIC CAN模式或Peli CAN模式;是否能使CLKOUT輸出時鐘頻率;是否旁路CAN輸入比較器;TX1輸出是否用專門的接收中斷輸出。(2)通過驗收碼寄存器和屏蔽寄存器定義接收報文的驗收碼與對報文之間進行比較的相關位定義驗收屏蔽碼。(3)通過總線定時寄存器定義總線的位速率、位周期內的采樣點和一個位周期內的采樣數量。(4)通過輸出寄存器定義CAN總線輸出管腳TX0、TX1的輸出模式、配置。最后,要清除SJA1000的復位請求標志進入工作模式,方可進行報文的發送和接收。
單片機將要發送的報文送到SAJ1000發送緩沖區,然后將SJA1000命令寄存器的發送請求標志位(TR)置位,發送過程南其獨立完成。在新報文寫入發送緩沖區前,必須先檢查狀態寄存器的發送緩沖器狀態標志(TBS),若為“1”,發送緩沖器被釋放,可將新的報文寫入發送緩沖器。否則,發送緩沖器被鎖定,新報文不能被寫入。
報文接收也由SJA1000獨立完成。收到的報文通過接收濾波器放在FIFO隊列中,第1條報文進入接收緩沖器,由狀態寄存器的接收緩沖器狀態標志位(RBS)和接收中斷標志位(RI)標出。單片機從接收緩沖器取走1條報文后,通過置位SAJ1000的命令寄存器來釋放接收緩沖器。
4 軟件調試
在硬件設計和軟件的編程后,將針對要實現的功能編寫程序在Keil C51中將編譯無誤的程序運行,對整個系統而言,首先要對鍵盤輸入和數碼顯示進行調試,就是整個硬件電路對照電路圖進行檢查,查找錯焊、虛焊、漏焊等錯誤。檢查無誤后,便開始運行電路,為保證穩定的電源供給,給PC機的USB接口提供5 V直流電源。將結果與要實現的理想狀態對照,再通過結果對硬件電路進行檢驗和修改,并將所編程序進行適當優化,如圖7所示。運行結果證明整個系統穩定、可靠,滿足了設計要求。
5 結束語
本方案采用了基于89C51單片機和CAN總線的設計方法,給出了供熱溫度控制器的總體設計方案,以及主要電路原理圖的引腳連接,并根據功能要求和實際電路設計了系統軟件,給出了主要程序的流程圖。最終對單片杌進行了軟硬件聯調,實現了相應功能。
-
單片機
+關注
關注
6032文章
44514瀏覽量
632956 -
溫度傳感器
+關注
關注
48文章
2912瀏覽量
155886 -
收發器
+關注
關注
10文章
3393瀏覽量
105860 -
控制器
+關注
關注
112文章
16197瀏覽量
177398 -
通信模塊
+關注
關注
2文章
141瀏覽量
33059
發布評論請先 登錄
相關推薦
評論