單片機(jī)溫度采集電路的設(shè)計(jì)與虛擬仿真
0 引言
在工業(yè)生產(chǎn)中,電流、電壓、溫度、壓力、流量、流速和開(kāi)關(guān)量都是常用的主要被控參數(shù)。其中,溫度控制也越來(lái)越重要。在工業(yè)生產(chǎn)的很多領(lǐng)域中,人們都需要對(duì)各類(lèi)加熱爐、熱處理爐、反應(yīng)爐和鍋爐中的溫度進(jìn)行檢測(cè)和控制。采用單片機(jī)對(duì)溫度進(jìn)行控制不僅具有控制方便、簡(jiǎn)單和靈活性大等優(yōu)點(diǎn),而且可以大幅度提高被控溫度的技術(shù)指標(biāo),從而大大提高產(chǎn)品的質(zhì)量和數(shù)量。因此,單片機(jī)對(duì)溫度的控制問(wèn)題是工業(yè)生產(chǎn)中經(jīng)常會(huì)遇到的控制問(wèn)題。
目前應(yīng)用的溫度檢測(cè)系統(tǒng)大多采用由模擬溫度傳感器、多路模擬開(kāi)關(guān)、A/D轉(zhuǎn)換器及單片機(jī)等組成的傳輸系統(tǒng)。這種溫度采集系統(tǒng)需要大量的測(cè)溫電纜,才能把現(xiàn)場(chǎng)傳感器的信號(hào)送到采集卡上.安裝和拆卸繁雜,成本也高。同時(shí)線路上傳送的是模擬信號(hào),易受干擾和損耗,測(cè)量誤差也比較大,不利于控制者根據(jù)溫度變化及時(shí)做出決定。針對(duì)這種情況,本文提出一種采用數(shù)字化單總線技術(shù)的溫度采集系統(tǒng),并利用Proteus和KeilμVision 3軟件對(duì)設(shè)計(jì)電路進(jìn)行綜合虛擬仿真,實(shí)現(xiàn)了溫度實(shí)時(shí)測(cè)量和顯示。
1 方案論證
1.1 DS18B20簡(jiǎn)介
DS18B20是美國(guó)DALLAS半導(dǎo)體公司最新推出的一種數(shù)字化單總線器件,屬于新一代適配微處理器的改進(jìn)型智能溫度傳感器。與傳統(tǒng)的熱敏電阻相比,它能夠直接讀出被測(cè)溫度,并且可根據(jù)實(shí)際要求通過(guò)簡(jiǎn)單的編程實(shí)現(xiàn)9~12位的數(shù)字值讀數(shù)方式??梢苑謩e在93.75 ms和750 ms內(nèi)完成9位和12位的數(shù)字量,并且從DS18B20讀出的信息或?qū)懭隓S18B20的信息僅需要一根口線(單線接口)讀寫(xiě),溫度變換功率來(lái)源于數(shù)據(jù)總線,總線本身也可以向所掛接的DS18B20供電,而無(wú)需額外電源。因而使用DS18B20可使系統(tǒng)結(jié)構(gòu)更趨簡(jiǎn)單,可靠性更高。同時(shí)其“一線總線”獨(dú)特而且經(jīng)濟(jì)的特點(diǎn),使用戶(hù)可輕松地組建傳感器網(wǎng)絡(luò),為測(cè)量系統(tǒng)的構(gòu)建引入了全新的概念。DS18B20“一線總線”數(shù)字化溫度傳感器支持“一線總線”接口,測(cè)量溫度范圍為-55℃~125℃,在-10~+85℃范圍內(nèi),精度為±0.5℃?,F(xiàn)場(chǎng)溫度直接以“一線總線”的數(shù)字方式傳輸,用符號(hào)擴(kuò)展的16位數(shù)字量方式串行輸出,大大提高了系統(tǒng)的抗干擾性。因此,數(shù)字化單總線器件DS18B20適合于惡劣環(huán)境的現(xiàn)場(chǎng)溫度測(cè)量,如:環(huán)境控制、設(shè)備或過(guò)程控制、測(cè)溫類(lèi)消費(fèi)電子產(chǎn)品等。它在測(cè)溫精度、轉(zhuǎn)換時(shí)間、傳輸距離、分辨率等方面都有了很大的改進(jìn),給用戶(hù)帶來(lái)了更方便和更令人滿(mǎn)意的效果??蓮V泛用于工業(yè)、民用、軍事等領(lǐng)域的溫度測(cè)量及控制儀器、測(cè)控系統(tǒng)和大型設(shè)備中。
1.2 Proteus和KeilμVision 3簡(jiǎn)介
Proteus是英國(guó)Labeenter electronics公司研發(fā)的EDA工具軟件。Proteus不僅是模擬電路、數(shù)字電路、模/數(shù)混合電路的設(shè)計(jì)與仿真平臺(tái),更是目前世界最先進(jìn)、最完整的多種型號(hào)微控制器系統(tǒng)的設(shè)計(jì)與仿真平臺(tái)。它真正實(shí)現(xiàn)了在計(jì)算機(jī)上完成從原理圖設(shè)計(jì)、電路分析與仿真、單片機(jī)代碼級(jí)調(diào)試與仿真、系統(tǒng)測(cè)試與功能驗(yàn)證到形成PCB的完整電子設(shè)計(jì)與研發(fā)過(guò)程。Proteus產(chǎn)品系列也包含了革命性的VSM技術(shù),可以對(duì)基于微控制器的設(shè)計(jì)連同所有的外圍電子器件一起仿真。
KeilμVision 2是Keil公司關(guān)于8051系列MCU的開(kāi)發(fā)工具,可以用來(lái)編譯C源碼、匯編源程序、連接和重定位目標(biāo)文件和庫(kù)文件、創(chuàng)建HEX文件、調(diào)試目標(biāo)程序等,是一種集成化的文件管理編譯環(huán)境。它集成了文件編輯處理、編譯連接、項(xiàng)目管理、窗口、工具引用和軟件仿真調(diào)試等多種功能,是相當(dāng)強(qiáng)大的開(kāi)發(fā)工具。
1.3 Proteus與Keil的連接設(shè)置
(1)檢測(cè)TCP/IP。
(2)復(fù)制Proteus安裝目錄下的MODELS文件夾里的vdm51.dll到keilc/C51/bin目錄。
(3)修改Keil安裝目錄下的tools.ini,添加TDRV4=BIN\VDM51.DLL。
(4)在Proteus中畫(huà)好原理圖,在“Debug”菜單中選擇“Use Remote Debug Monitor”。
(5)在Keil中打開(kāi)一個(gè)工程,右擊Target1,選擇Op-tions for Target‘Target 1’。在打開(kāi)的對(duì)話框中選擇“De-bug”選項(xiàng)卡,選擇使用Proteus VSM Emulator仿真(如圖1所示),單擊“Ok”完成Debug設(shè)置。
這樣Proteus和Keil就連接好了,仿真結(jié)果可以在Pro-teus或者Keil中看到。
2 電路仿真
該電路系統(tǒng)采用“一線總線”數(shù)字傳感器DS18B20實(shí)現(xiàn)溫度的采集,采用LM016L液晶顯示器進(jìn)行數(shù)據(jù)顯示。首先啟動(dòng)Proteus并從Proteus元件庫(kù)中選擇需要的元件繪制電路圖并設(shè)置相應(yīng)元件的參數(shù)值,接口電路原理圖如圖2所示。
電路繪制完成以后,打開(kāi)KeilμVision 2新建一個(gè)項(xiàng)目,命名為cewen.uv2。選擇Project菜單下的Select Device forTarget選擇AT89C51。然后單擊Project菜單下的Optionfor Target‘Target1’項(xiàng),選擇Debug,使用Proteus VSM Em-ulator仿真。然后新建一個(gè)源文件cewen.c,寫(xiě)入源程序(只給出讀取溫度函數(shù)):
最后將該源程序文件加入到當(dāng)前工程項(xiàng)目中進(jìn)行編譯,編譯通過(guò)后單擊Debug菜單下的Start/Stop Debug Ses-sion,這時(shí)切換至Proteus界面會(huì)發(fā)現(xiàn)電路已經(jīng)啟動(dòng)仿真,并可以看到仿真結(jié)果。圖3,圖4分別是對(duì)溫度傳感器進(jìn)行示波器顯示的接口電路和顯示結(jié)果。
3 結(jié)論
本文設(shè)計(jì)了一種新的溫度采集系統(tǒng),該系統(tǒng)能通過(guò)擴(kuò)展對(duì)多點(diǎn)溫度進(jìn)行實(shí)時(shí)巡檢,各個(gè)測(cè)試模塊能各自實(shí)現(xiàn)自己的功能。同時(shí)采用Proteus和Keil結(jié)合仿真的方法對(duì)設(shè)計(jì)的單片機(jī)測(cè)溫系統(tǒng)進(jìn)行了虛擬仿真和性能檢測(cè),得到了比較好的仿真結(jié)果和分析結(jié)果。結(jié)果證明采用Proteus和Keil結(jié)合仿真的可以大大簡(jiǎn)化硬件電路的設(shè)計(jì)過(guò)程,可以降低單片機(jī)系統(tǒng)的開(kāi)發(fā)成本、提高效率和開(kāi)發(fā)速度,具有很好的實(shí)際應(yīng)用和指導(dǎo)意義。