




已閱讀5頁,還剩10頁未讀, 繼續免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
混凝深度處理城市污水廠初步設計 一、設計目的 隨著人們生活水平的不斷提高 ,智能化控制無疑是人們追求的目標之一,它所給人帶來的方便也是不可否定的,其中數字溫度計就是一個典型的例子。 數字溫度計與傳統的溫度計相比,具有讀數方便,測溫范圍廣,測溫準確,其輸出溫度采用數字顯示,主要用于對測溫比較準確的場所,或科研實驗室使用,該設計使用控制器測溫傳感器 DS18B20,單片機 AT89E52,用 LED 數碼管實現溫度顯示 ,能準確達到以上要求。 低溫的測量常采用具有玻璃外殼的酒精溫度計和水銀溫度計,這類溫度計具有價格低廉、性能穩定、直觀性強的優點,但也具有易破碎且只能在現場觀察的缺點,水銀溫度計還易造成污染而有害健康。目前,應用最為廣泛的是溫度敏感元件和二次儀表的組合,既可用于遠程顯示,也可進行溫度報警,還可做到自動記錄。 二、設計要求 1、 測量精度 0.5 2、 范圍: -50 -110 3、 可測多點溫度,演示兩點以上 4、 LED 直讀顯示 5、 可任意設計溫度報警的上限與下限 6、 可上傳通信( RS232 口) ,也可以相互對通 (485 口 ) 單片機AT89E52 LED 顯示 掃描驅動 DS18B20 傳感器 報 警 三、數字溫度計的總體設計方案 硬件部分 1、 設計思路: 溫度只要在所設定的上下溫度界限內,就會在顯示設備中精確的顯示出來,如果溫度超過了所設定的溫度界限,就發出報警聲。能夠及時向溫度監控人員發出溫度超限信息。便于溫控人員及時的調整與控制。另外此溫度控制器操作簡單,體積小,靈敏度高,精度高。 2、總體設計方框圖 : 上圖所示為數字溫度控制器的單體設計方框圖。其工作原理為:當該電路上電工作以后,首先掃描驅動刷新 LED 顯示,然后,溫度傳感器采集溫度送單片機檢查溫度的高低是否觸發報警,由單片機送出信號經過驅動電路送往顯示電路或報警電路。電路圖見附錄 3、設計所用主要零件 ( 1) DS18B20 傳感器 概述: DS18B20 數字溫度傳感器接線方便,封裝成后可應用于多種場合,如管道式,螺紋式,磁鐵吸附式,不銹鋼封裝式,型號多種多樣。主要根據應用場合的不同而改變其外觀。封裝后的 DS18B20 可用于電纜溝測溫,高爐水循環測溫,鍋爐測溫,機房測溫,農業大棚測溫,潔凈室測溫,彈藥庫測溫等各種非極限溫度場合。耐磨耐碰,體積小,使用方便,封裝形式多樣,適用于各種狹小空間設備數字測溫和控制領域。 性能特點: 1、適應電壓范圍更寬,電壓范圍: 3.0 5.5V,在寄生電源方式下可由數據線供電。 2、獨特的單線接口方式, DS18B20 在與微處理器連接時僅需要一條口線即可實現微處理器與 DS18B20 的雙向通訊。 3、 DS18B20 支持多點組網功能,多個 DS18B20 可以并聯在唯一的三線上,實現組網多點測溫。 4、 DS18B20 在使用中不需要任何外圍元件,全部 傳感元件及轉換電路集成在形如一只三極管的集成電路內。 5、溫范圍 55 +125,在 -10 +85時精度為 0.5。 6、可編程 的分辨率為 9 12 位,對應的可分辨溫度分別為 0.5、 0.25、 0.125和 0.0625,可實現高精度測溫。 7、在 9位分辨率時最多在 93.75ms內把溫度轉換為數字, 12位分辨率時最多在 750ms內把溫度值轉換為數字,速度更快。 8、測量結果直接輸出數字溫度信號,以 ” 一線總線 ” 串行傳送給 CPU,同時可傳送CRC 校驗碼,具有極強的抗干擾糾錯能力。 9、負壓特性:電源極性接反時,芯片不會因發熱而燒毀, 但不能正常工作。 DS18B20與單片機的接口電路(引腳圖見右圖) DS18B20 可以采用電源供電方式,此時 DS18B20 的第 1 腳接地,第 2 腳作為信號線,第3 腳接電源。 ( 2) 單片機 AT89E52 具有低電壓供電和小體積等特點,兩個端口剛好滿足電路系統的設計需要,很適合便攜手持式產品的設計使用。 1、 VCC:電源電壓。 2、 GND:地 3、 P0 口: P0 口是一個 8 位雙向 I/O 口。口引腳 P1.2P1.7 提供內部上拉電阻, P1.0和 P1.1要求外部上拉電阻。 P1.0和 P1.1還分別作為片內精密模擬比較器的同相輸入 (ANI0)和反相輸入 (AIN1)。 P1 口輸出緩沖器可吸收 20mA 電流并能直接驅動 LED 顯示。當 P1 口引腳寫入“ 1”時,其可用作輸入端,當引腳 P1.2P1.7 用作輸入并被外部拉低時,它們將因內部的寫入“ 1”時,其可用作輸入端。當引腳 P1.2P1.7 用作輸入并被外部拉低時,它們將因內部的上拉電阻而流出電流。 4、 P3 口: P3 口的 P3.0P3.5、 P3.7 是帶有內部上拉電阻 的七個雙向 I/O 口引腳。P3.6 用于固定輸入片內比較器的輸出信號并且它作為一通用 I/O 引腳而不可訪問。 P3 口緩沖器可吸收 20mA 電流。當 P3 口寫入“ 1”時,它們被內部上拉電阻拉高并可用作輸入端。用作輸入時,被外部拉低的 P3 口腳將用上拉電阻而流出電流。 5、 RST:復位輸入。 RST 一旦變成高電平所有的 I/O 引腳就復位到“ 1”。當振蕩器正在運行時,持續給出 RST 引腳兩個機器周期的高電平便可完成復位。每一個機器周期需12 個振蕩器或時鐘周期。 6、 XTAL1:作為振蕩器反相器的輸入和內部時鐘 發生器的輸入。 7、 XTAL2:作為振蕩器反相放大器的輸出。 ( 3)顯示電路 顯示電路采用 4 位共陰極 LED 數碼管,從 P0 口輸出段碼,列掃描用 P2.4 P2.7 口來實現,列驅動用 s9013 三極管。 四 、數字溫度計的總體設計方案 軟件部分 1、設計思路 系統程序主要包括主程序、讀出溫度子程序、溫度轉換命令子程序、計算溫度子程序、顯示數據刷新子程序、按鍵輸入子程序和報警子程序等。 2、程序設計 ( 1)主程序 主程序的主要功能是負責溫度的實時顯示、讀出并處理 DS18B20 的測量溫度值,達到報警溫度時進行報警,并掃描按鍵輸入。主程序流程圖如圖 4.1 所示。 ( 2) 溫度轉換命令子程序 溫度轉換命令子程序主要是發溫度轉換開始命令。當采用 12 位分辨率時,轉換時間約為 750ms。在本程序設計中,采用 1s 顯示程序延時法等待轉換的完成。溫度轉換命令子程序流程圖如下圖所示 開始 DS18B20 的初始化 溫度顯示 初始化報警溫 度上、下限 讀取按鍵值進行功能轉換 RET 掃描按鍵 發跳過 ROM 命令 發 DS18B20 復位命令 發溫度轉換開始命令 ( 3) 讀出溫度子程序 讀出溫度子程序的主要功能是讀出 RAM 中的 9 字節。在讀出時須進行 CRC 校驗,校驗有錯時不進行溫度數據的改寫。得出溫度子程序流程圖如下圖所示。 五、系 統 調試 1、硬件調試 發溫度轉換開始命令 讀取操作, CRC 校驗 9 字節完? CRC 校驗正確? 移入溫度暫存器 發跳過 ROM 命令 發 DS18B20 復位命令 結 束 硬件調試比較簡單,首先檢查電感的焊接是否正確,然后可用萬用表測試 或通電檢測,觀察是否短路。焊接時需特別注意電容焊接的正負方位是否正確。 2、軟件調試 軟件調試可以先編寫顯示程序并進行硬件的正確性檢驗,然后分別進行主程序、讀出溫度子程序、溫度轉換命令子程序 等的編程及調試 由于 DS18B20 與單片機采用串行數據傳送,因此,對 DS18B20 進行讀 /寫編程時必須嚴格地保證讀 /寫時序;否則將無法讀取測量結果。本程序采用單片機匯編或 C 語言編寫用 Wave3.2 或 Keil C51 編譯器編程調試。 軟件調試到能顯示溫度值, 并且可以實時監測,設計就 基本完成。 精度性能衡量可以采用與標準溫度計進行測量對比 。由于 DS18B20 的精度很高,所以誤差指標可以限制在 0.5以內。 另外, -55 至 +125的測溫范圍使得該溫度計能夠勝任一般的溫度測量工作 ,其低電壓供電特性可做成用電池供電的手持溫度計。 DS18B20 溫度計還可以在高低溫報警、遠距離多點測溫控制等方面進行應用開發,但在實際設計中應注意以下問題; 1、 DS18B20 工作時電流高大 1.5mA,總線上掛接點數較多且同時進行轉換時要考慮增加總線驅動,可用單片機端口在溫度轉換時導通一個 MOSFET 供電。 2、連接 DS18B20 的總線電纜是有長度限制的,因此在用 DS18B20 進行長距離測溫系統設計時要充分考慮總線分布電容和阻抗匹配等問題。 3、在 DS18B20 測溫程序設計中,向 DS18B20 發出溫度轉換命令后,程序總要等待DS18B20 的返回信號。一旦某個 DS18B20 接觸不好或斷線,當程序讀 DS18B20 時,將沒有返回信號,程序進入死循環。這一點在進行 DS18B20 硬件連接和軟件設計時要給予一定的重視。 六、設計心得 通過本次設計學習,我們基本掌握了兩種重要元器件的使用方法 -測溫傳感器DS18B20 與 單片機 AT89E52, 并且通過溫度計的制作,我們課堂上學到的知識進行運用 ,并在實際操作中發現問題,解決問題,更加增加對知識的認識和理解。 在設計過程中,我們又重新溫習了電路圖的設計, PCB 的布局,電子元器件的焊接等一系列基礎知識,從而讓我們深深地體會到基本動手能力對學習和工作的重要性,有時候理論知識遇到理解瓶頸的時候,我們就需要從實際操縱上去理解與升華吧。這可能是工科學習的一種重要的途徑。 一個產品的誕生,絕不是某一個人的功勞。設計過程中所遇到的問題是不少的,比如液晶 led 的亂碼現象,報警設備無法正常報警等一些問題,在老師和同學們的指導和幫助下,我們成功的解決了這些問題。在此表示衷心感謝!同時也希望以后有更多這樣的機會向你們學習請教。 七 、 附錄 實驗程序代碼: #include #includeplatform.h #includeDS18B20.h #includeTemp.h extern unsigned short TempLowerBound,TempUpperBound; extern beep; void main(void) unsigned char num4 = 0,1,2,3; unsigned char key; unsigned short temp; Init_DS18B20(); TempLowerBound = 100; TempUpperBound = 300; beep = 1; while(1) key = key_scan(); if(key = KEY_SET_MIN) SetTempBoundary(SET_LOWER_BOUND); else if(key = KEY_SET_MAX) SetTempBoundary(SET_UPPER_BOUND); temp = ReadTemperature(); ShowTemp(temp); check_alarm(temp); *按鍵控制 * #include #includeplatform.h #define DATA_PORT P0 #define WEIXUAN_PORT P2 unsigned char code key_table= 0xf7,0xfb,0xfd,0xfe; unsigned char code weixuan_table= 0x10,0x20,0x40,0x80; unsigned char code shuma_table = 0x77,0x42,0x3b,0x6b, 0x4e,0x6d,0x7d,0x43, 0x7f,0x6f; void shuma_display(unsigned char channel, unsigned char num) if( num 15 ) return; WEIXUAN_PORT &= 0x0F; WEIXUAN_PORT |= weixuan_tablechannel; DATA_PORT = shuma_tablenum; void shuma_display_with_pot(unsigned char channel, unsigned char num) if( num 15 ) return; WEIXUAN_PORT &= 0x0F; WEIXUAN_PORT |= weixuan_tablechannel; DATA_PORT = shuma_tablenum|POT; void shuma_setdata(unsigned char channel, unsigned char dat) WEIXUAN_PORT &= 0x0F; WEIXUAN_PORT |= weixuan_tablechannel; DATA_PORT = dat; void delay(unsigned int z) unsigned int x,y; for(x=z;x0;x-) for(y=110;y0;y-); unsigned char key_scan(void) unsigned char temp,key_num = 0; temp = P2; temp &= 0x0F; switch(temp) case 0x0E: key_num = KEY_INC; break; case 0x0D: key_num = KEY_MOVE; break; case 0x0B: key_num = KEY_SET_MAX;break; case 0x07: key_num = KEY_SET_MIN;break; default: break; while(temp != 0x0F) temp = P2; temp &= 0x0F; return key_num; void clear_key(unsigned char *key) *key = 0xFF; * DS18B20 驅動 * #includeDS18B20.h int AlarmMax=500, AlarmMin=200 ; static void delay(unsigned int i); static unsigned char ReadOneChar(void); static void WriteOneChar(unsigned char dat); sbit DQ = P33; unsigned char Init_DS18B20(void) unsigned char x=0,i; DQ = 1; delay(8); DQ = 0; delay(500); DQ = 1; delay(40); for ( i = 16; i 1; i- ) x = DQ; if(!x) break; return ( x ); delay(200); unsigned short ReadTemperature(void) unsigned char a=0; unsigned char b=0; unsigned int T=0; Init_DS18B20(); WriteOneChar(0xCC); WriteOneChar(0x44); Init_DS18B20( ); WriteOneChar(0xCC); WriteOneChar(0xBE); a=ReadOneChar(); b=ReadOneChar(); T=a+b*256; if (T=0xffff) return 0xffff; if (T0x8000) T=-T; return (0x8000+T*5/8); else return (T*5/8); static unsigned char ReadOneChar(void) unsigned char i; unsigned char dat = 0; for (i=8;i0;i-) DQ = 0; dat=1; DQ = 1; if(DQ) dat|=0x80; delay(4); return(dat); static void WriteOneChar(unsigned char dat) unsigned char i=0; for (i=8; i0; i-) DQ = 0; DQ = dat&0x01; delay(5); DQ = 1; dat=1; static void delay(unsigned int i) while(-i); *溫度轉換、顯示以及報警 * #includeplatform.h #includeTemp.h #include sbit beep=P14; sbit baojin=P10; unsigned short TempLowerBound,TempUpperBound; void ShowTemp(unsigned short temp) unsigned char num4; num0 = temp%10; num1 = (temp/10)%10; num2 = (temp/100)%10; num3 = temp/1000; shuma_display(3,num3); delay(4); shuma_display(2,num2); delay(4); shuma_display_with_pot(1,num1); delay(4); shuma_display(0,num0); delay(4); static void show_temp_bit(unsigned char s,unsigned char num) if(s!=1) shuma_display(s,num); else shuma_display_with_pot(s,num); void setting_display(char index,unsigned char num) unsigned char i; static unsigned char
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 小區防水施工方案范本
- 內蒙古財經大學《建筑設計與構造(2)》2023-2024學年第二學期期末試卷
- 汕尾職業技術學院《電影攝影技巧》2023-2024學年第二學期期末試卷
- 中央音樂學院《與藥事管理法規》2023-2024學年第二學期期末試卷
- 商丘職業技術學院《搜索引擎營銷》2023-2024學年第一學期期末試卷
- 江蘇財經職業技術學院《高級英語視聽(一)》2023-2024學年第一學期期末試卷
- 拋石護坡工程施工方案
- 伊春職業學院《跨文化交際導論》2023-2024學年第一學期期末試卷
- 2025至2031年中國旋風式吸塵器行業投資前景及策略咨詢研究報告
- 《協作秘訣》課件
- 血液透析發生失衡綜合癥的原因及預防
- 鼻腔沖洗護理技術
- 《籃球:運球急停急起、體能大比拼》教案
- 瓦特改良蒸汽機課件
- 2023靜脈治療護理技術操作標準解讀
- 說課大賽作品財務會計-說課
- 工業提升門安裝及施工方案
- 小學心理健康課《人際交往教育教學課件》
- 呼吸內科利用品管圈PDCA循環提高患者對無創呼吸機的有效使用率
- 幼兒園中班語言《青蛙小弟睡午覺》微課件
- 道路豎曲線任意樁號高程自動計算表
評論
0/150
提交評論