版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p> 摘要:本文提出的糧倉溫、濕度測(cè)控系統(tǒng)采用AT89S52單片機(jī)為測(cè)控核心,以“一線式”數(shù)字溫度傳感器DS18B20和電容式濕敏傳感器HS1100/HS1101為溫、濕度數(shù)據(jù)采集部件,通過PC機(jī)作為人機(jī)接口,實(shí)現(xiàn)了遠(yuǎn)程數(shù)據(jù)采集與測(cè)控指令參數(shù)的設(shè)置。具有界面友好、控制靈活、硬件系統(tǒng)集成度高、電路簡單、功能強(qiáng)、性能可靠、成本低等特點(diǎn)。本系統(tǒng)解決了傳統(tǒng)溫、濕度測(cè)試器材及人工去濕、降溫的諸多弊端。并可實(shí)現(xiàn)多點(diǎn)溫、濕度參數(shù)的測(cè)量
2、與控制。</p><p> 關(guān)鍵詞:AT89S52;DS18B20;HS1100/HS1101;PC機(jī);人機(jī)接口</p><p> Abstract: The paper develops a temperature and humidity controlling system for grain depot .The system is based on a chip micro
3、processor AT89S52,uses one-line type digitaltemperature sensor DS18B20 and the capacitance humidity sensor HS1100/HS1101 to collect humiture data,realizes the collecting of remote data as well as the setting of measuring
4、 and controlling order parameter.The system has the following advantages:its interface is friendly,it is controlled easily,its hardware system is integr</p><p> function is strong,it has good performance,th
5、e cost is lower and so on.The system settles many defects of traditional humiture testing equipments as well as manual dewetting and cooling.Meanwhile,the system realizes the measuring and controlling of multiple-point h
6、umiture parameters.</p><p> Keywords: AT89S52;DS18B20;HS1100/HS1101;PC;</p><p> personal digital assistant(PDA) </p><p><b> 目錄</b></p><p> 1.系統(tǒng)功能說明1<
7、;/p><p> 2.系統(tǒng)總體設(shè)計(jì)1</p><p> 2.1.系統(tǒng)硬件結(jié)構(gòu)設(shè)計(jì)1</p><p> 2.2.通信方案選擇1</p><p> 3.系統(tǒng)硬件設(shè)計(jì)2</p><p> 3.1.數(shù)據(jù)采集電路設(shè)計(jì)2</p><p> 3.1.1.溫度采集接口電路2</p>
8、;<p> 3.1.1.1.DS18B20介紹:2</p><p> 3.1.1.2.接口電路4</p><p> 3.1.2.濕度采集電路5</p><p> 3.1.2.1.HS1100/HS1101濕度傳感器介紹:5</p><p> 3.1.2.3.多路濕度檢測(cè)信號(hào)的實(shí)現(xiàn)5</p>&l
9、t;p> 3.1.3.多路開關(guān)介紹6</p><p> 3.2.單片機(jī)系統(tǒng)設(shè)計(jì)7</p><p> 3.3.其它外圍接口電路設(shè)計(jì)8</p><p> 3.3.1.RS-485串口電路8</p><p> 3.3.2.控制參數(shù)存儲(chǔ)器8</p><p> 3.3.3.鍵盤及顯示電路8</
10、p><p> 3.3.3.1.鍵盤電路8</p><p> 3.3.3.2.顯示電路8</p><p> 3.3.4.控制設(shè)備驅(qū)動(dòng)電路10</p><p> 3.3.4.1.風(fēng)機(jī)、空調(diào)機(jī)、加濕機(jī)驅(qū)動(dòng)電路10</p><p> 3.3.4.2.報(bào)警接口電路11</p><p>
11、3.4.RS485-RS232電平轉(zhuǎn)換電路11</p><p> 4.系統(tǒng)軟件設(shè)計(jì)12</p><p> 4.1.糧倉溫、濕度測(cè)控系統(tǒng)軟件12</p><p> 4.1.1.濕度檢測(cè)子程序12</p><p> 4.1.2.溫度檢測(cè)子程序13</p><p> 4.2.上位PC機(jī)接口軟件13<
12、;/p><p><b> 5.結(jié)束語14</b></p><p><b> 1.系統(tǒng)功能說明</b></p><p> 本設(shè)計(jì)以糧倉室內(nèi)外溫、濕度測(cè)控電路為核心,以上位PC機(jī)為系統(tǒng)人機(jī)接口,測(cè)控電路與上位PC機(jī)通過串行通信方式實(shí)現(xiàn)數(shù)據(jù)交互。測(cè)控電路通過數(shù)據(jù)采集裝置定時(shí)采集糧倉溫濕度數(shù)據(jù),并根據(jù)控制參數(shù)做出控制決策,驅(qū)動(dòng)
13、設(shè)備運(yùn)行(自動(dòng)啟動(dòng)或關(guān)閉空調(diào)設(shè)備或風(fēng)機(jī)系統(tǒng)),并隨時(shí)準(zhǔn)備接受上位PC機(jī)的指令,當(dāng)受到詢問時(shí),將糧倉的各項(xiàng)數(shù)據(jù)編碼通過串行通信方式傳輸?shù)缴衔籔C機(jī)。</p><p> 上位PC機(jī)可根據(jù)用戶要求定時(shí)向測(cè)控電路查詢糧倉溫、濕度數(shù)值和設(shè)備運(yùn)行狀態(tài)。并可以對(duì)從機(jī)進(jìn)行參數(shù)設(shè)置(包括:空調(diào)起、停參數(shù);風(fēng)機(jī)起、停參數(shù);加濕機(jī)起、停參數(shù);溫、濕度報(bào)警門限等)及控制(強(qiáng)制打開空調(diào)風(fēng)機(jī)與加濕機(jī)),從機(jī)也可以獨(dú)立工作。</p&g
14、t;<p> 上位PC機(jī)通過串口電路接收到數(shù)據(jù)后,進(jìn)行數(shù)據(jù)處理,在監(jiān)控界面上顯示當(dāng)前的狀態(tài)信息,并將此信息實(shí)時(shí)地存儲(chǔ)到數(shù)據(jù)庫中,為用戶維護(hù)和管理準(zhǔn)備數(shù)據(jù)。也可以將一段時(shí)期的數(shù)據(jù)信息匯集成報(bào)表,還可以將一段時(shí)間的數(shù)據(jù)繪制成圖形、曲線,實(shí)現(xiàn)對(duì)數(shù)據(jù)的分析與管理。</p><p><b> 2.系統(tǒng)總體設(shè)計(jì)</b></p><p> 2.1.系統(tǒng)硬件結(jié)構(gòu)設(shè)
15、計(jì)</p><p> 根據(jù)系統(tǒng)功能要求,本硬件系統(tǒng)包括四個(gè)功能模塊:</p><p> 1、上位PC機(jī)。完成參數(shù)設(shè)置及控制、數(shù)據(jù)存儲(chǔ)、處理及管理功能。</p><p> 2、串行通信模塊。應(yīng)用RS-485通信方式完成測(cè)控電路與上位PC機(jī)的數(shù)據(jù)交換。</p><p> 3、測(cè)控電路模塊。主要由AT89S52組成主控電路,實(shí)現(xiàn)數(shù)據(jù)收集與控
16、制功能,并能在主機(jī)關(guān)機(jī)的情況下獨(dú)立實(shí)現(xiàn)所有的控制功能。</p><p> 4、數(shù)據(jù)采集模塊。實(shí)現(xiàn)溫、濕度實(shí)時(shí)數(shù)據(jù)采集與數(shù)據(jù)轉(zhuǎn)換。</p><p><b> 系統(tǒng)結(jié)構(gòu)框圖如下:</b></p><p><b> 圖1:系統(tǒng)結(jié)構(gòu)框圖</b></p><p> 2.2.通信方案選擇</p&g
17、t;<p> RS-485以遠(yuǎn)距離、多節(jié)點(diǎn)(128個(gè))以及傳輸線成本低的特性成為工業(yè)應(yīng)用中數(shù)據(jù)傳輸?shù)氖走x標(biāo)準(zhǔn)??紤]到本系統(tǒng)傳輸距離及多糧倉控制的擴(kuò)展方向等因素,本系統(tǒng)選用RS-485通信方式,RS-485通信的特點(diǎn)如下:</p><p> ?。?)RS-485的邏輯“1”以兩線間的電壓差為+2~+6 V表示;邏輯“0”以兩線間的電壓差為-2~-6 V表示,該電平與TTL電平兼容,可方便與TTL電路
18、連接;</p><p> ?。?)RS-485接口的最大傳輸距離標(biāo)可達(dá)3000米, RS-485接口在總線上是允許連接最多達(dá)128個(gè)收發(fā)器,可以利用單一的RS-485接口建立起單元用戶設(shè)備網(wǎng)絡(luò)系統(tǒng)。</p><p> 本設(shè)計(jì)采用RS-485總線半雙工通信方式。標(biāo)準(zhǔn)RS-485接口的輸入阻抗為≥12KΩ,相應(yīng)的標(biāo)準(zhǔn)驅(qū)動(dòng)節(jié)點(diǎn)數(shù)為32個(gè)。MAX1487芯片的輸入阻抗設(shè)計(jì)成1/4負(fù)載(≥48KΩ
19、),相應(yīng)的節(jié)點(diǎn)數(shù)可增加到128個(gè)。MAX1487是半雙工通信芯片,且具有抗靜電及抗雷擊的功能,因此本設(shè)計(jì)選用了MAX1487芯片。</p><p><b> 3.系統(tǒng)硬件設(shè)計(jì)</b></p><p> 本系統(tǒng)硬件包括:溫度檢測(cè)、濕度檢測(cè)、A/D轉(zhuǎn)換、單片機(jī)及附屬電路、控制接口(空調(diào)、風(fēng)機(jī))、鍵盤及顯示、報(bào)警電路、通信串口、PC機(jī)等部分的設(shè)計(jì)。系統(tǒng)整體電路框圖如圖2
20、所示。 圖2:系統(tǒng)整體電路框圖</p><p> 3.1.數(shù)據(jù)采集電路設(shè)計(jì)</p><p> 3.1.1.溫度采集接口電路</p><p> 3.1.1.1.DS18B20介紹:</p><p> DALLAS最新單線數(shù)字溫度傳感器DS18B20“一線總線器件”體積小、適用電壓寬、經(jīng)濟(jì)?,F(xiàn)場(chǎng)溫度直接
21、以“一線總線”的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性,適合于惡劣環(huán)境的現(xiàn)場(chǎng)溫度測(cè)控,支持3—5.5V的電壓范圍。</p><p> DS18B20具有如下特點(diǎn):</p><p> ?。?)獨(dú)特的單線接口只需1個(gè)接口引腳即可通信。</p><p> ?。?)在DS18B20中的每一個(gè)器件上都有獨(dú)一無二的序列號(hào)可實(shí)現(xiàn)多點(diǎn)測(cè)量。</p><p>
22、; ?。?)不需要外部元件即可實(shí)現(xiàn)測(cè)溫。</p><p> ?。?)由數(shù)據(jù)線供電,不需外接電源。</p><p> (5)測(cè)量范圍從-55至+125℃,在-10—+85℃范圍內(nèi)保證0.5℃的精度。</p><p> ?。?)用戶可以從9位到12位選擇數(shù)字溫度計(jì)的分辨率。</p><p> ?。?)內(nèi)部有溫度上、下限告警設(shè)置。</p&g
23、t;<p> ?。?)用戶可定義的非易失性的溫度告警設(shè)置</p><p> 圖3:是TO-92封裝和SSOP封裝的DS18B20的外部結(jié)構(gòu)圖。</p><p> 圖3:DS18B20外觀</p><p> DS18B20引腳功能描述如下:</p><p> DQ:數(shù)據(jù)輸入/輸出引腳。開漏單總線引腳。當(dāng)被用在寄生電源下,可
24、向器件供電。</p><p> VDD:電源引腳,可選擇使用。當(dāng)工作于寄生電源時(shí),此引腳必須接地。</p><p><b> NC:空引腳。</b></p><p> DS18B20內(nèi)部結(jié)構(gòu)主要由六部分組成:電源電路、64位光刻ROM及1—wire接口、溫度傳感器、非易失的溫度報(bào)警觸發(fā)器TH和TL、配置寄存器和CRC校驗(yàn)碼產(chǎn)生器。<
25、/p><p> 64位光刻ROM的排列是:開始8位(28H)是產(chǎn)品類型標(biāo)號(hào),接著的48位是該DS18B20自身的序列號(hào),最后8位是前面56位的循環(huán)冗余校驗(yàn)碼(CRC=X8+X5+X4+1)。DS18B20高速存儲(chǔ)器包含了9個(gè)連續(xù)字節(jié),前兩個(gè)字節(jié)是測(cè)得的溫度信息,第一個(gè)字節(jié)的內(nèi)容是溫度的低八位,第二個(gè)字節(jié)是溫度的高八位。第三個(gè)和第四個(gè)字節(jié)是TH、TL的易失性拷貝,第五個(gè)字節(jié)是配置寄存器的易失性拷貝,這三個(gè)字節(jié)的內(nèi)容在
26、每一次上電復(fù)位時(shí)被刷新。第六、七、八個(gè)字節(jié)用于內(nèi)部計(jì)算。第九個(gè)字節(jié)是冗余校驗(yàn)字節(jié)。其中,配置寄存器的內(nèi)容如下:“TM R1 R0 1 1 1 1 1”低5位一直都是1,TM是測(cè)試模式位,用于設(shè)置DS18B20在工作模式還是在測(cè)試模式。在DS18B20出廠時(shí)該位被設(shè)置為0,用戶不要去改動(dòng)。R1和R0用來設(shè)置分辨率,如下表1所示:(DS18B20出廠時(shí)被設(shè)置為12位)</p><p><b> 表1分辨率
27、設(shè)置表</b></p><p> DS18B20中的溫度傳感器可完成對(duì)溫度的測(cè)量,以12位轉(zhuǎn)化為例:用16位符號(hào)擴(kuò)展的二進(jìn)制補(bǔ)碼讀數(shù)形式提供,以0.0625℃/LSB形式表達(dá),S為符號(hào)位。如下表2所示。</p><p> 表2 12位的溫度轉(zhuǎn)化形式表</p><p> 這是12位轉(zhuǎn)化后得到的12位數(shù)據(jù),存儲(chǔ)在18B20的兩個(gè)8比特的RAM中,二進(jìn)制
28、中的前面5位是符號(hào)位,如果測(cè)得的溫度大于0,這5位為0,只要將測(cè)到的數(shù)值乘于0.0625即可得到實(shí)際溫度;如果溫度小于0,這5位為1,測(cè)到的數(shù)值需要取反加1再乘于0.0625即可得到實(shí)際溫度。</p><p> DS18B20依靠一個(gè)單線接口通信。在單線接口情況下,必須先建立ROM操作協(xié)議,才能使用存貯器和控制操作。因此,控制器必須首先提供五種ROM操作命令之一:(1)ReadROM(讀ROM);(2)Matc
29、h ROM(匹配ROM);(3)Search ROM(搜索ROM);(4)Skip ROM(跳過ROM);(5)Alarm Search(告警搜索)。這些命令對(duì)每一器件的64位光刻ROM部分進(jìn)行操作。如果在單線上有許多器件,那么可以挑選出一個(gè)特定的器件并給總線上的主機(jī)指示存在多少器件及其類型。在成功地執(zhí)行了ROM操作序列之后可,使用存貯器和控制操作,然后控制器可以提供六種存貯器和控制操作命令之一。</p><p>
30、; DS18B20依靠一個(gè)單線接口通信。單線總線的空閑狀態(tài)是高電平。</p><p> 3.1.1.2.接口電路</p><p> AT89S52與DS18B20的接口電路如圖4所示。</p><p> 圖4:AT89S52與DS18B20的接口電路</p><p> 圖中,DS18B20的I/O端口DQ通過一個(gè)4.7K的外部上拉電
31、阻與單片機(jī)連接。多片DS18B20共用一條總線,通過光刻序列號(hào)的區(qū)分實(shí)現(xiàn)多點(diǎn)測(cè)溫。本設(shè)計(jì)中DS18B20采用寄生電源方式,故GND與VDD端均接地。</p><p> 3.1.2.濕度采集電路</p><p> 3.1.2.1.HS1100/HS1101濕度傳感器介紹:</p><p> HS1100/HS1101濕度傳感器特點(diǎn):高可靠性和長期穩(wěn)定性,快速響應(yīng)
32、時(shí)間,適用于線性電壓輸出和頻率輸出兩種電路,其相對(duì)濕度在1%--100%RH范圍內(nèi);電容量由16pF變到200pF,其誤差不大于±2%RH;響應(yīng)時(shí)間小于5S;溫度系數(shù)為0.04 pF/℃,精度較高。</p><p> 3.1.2.2.濕度測(cè)量電路設(shè)計(jì):</p><p> HS1100/HS1101電容傳感器,其容量隨著所測(cè)空氣濕度的增大而增大。將電容的變化量準(zhǔn)確地轉(zhuǎn)為計(jì)算機(jī)易
33、于接受的信號(hào),常有兩種方法:一是將該濕敏電容置于運(yùn)放與阻容組成的橋式振蕩電路中,產(chǎn)生的正弦波電壓信號(hào)經(jīng)整流、直流放大、再A/D轉(zhuǎn)換為數(shù)字信號(hào);另一種是將該濕敏電容置于555振蕩電路中,將電容值的變化轉(zhuǎn)為與之成反比的電壓頻率信號(hào),可直接被計(jì)算機(jī)所采集。</p><p> 集成定時(shí)器555芯片外接電阻R1、R3與濕敏電容C,構(gòu)成了對(duì)C的充電回路。7端通過芯片內(nèi)部的晶體管對(duì)地短路又構(gòu)成了對(duì)C的放電回路,并將引腳2、6
34、端相連引入到片內(nèi)比較器,便成為一個(gè)典型的多諧振蕩器,即方波發(fā)生器。另外,R21是防止輸出短路的保護(hù)電阻。 </p><p> 該振蕩電路兩個(gè)暫穩(wěn)態(tài)的交替過程如下:首先電源v㏄通過R1、R3向HS1100充電,經(jīng)t充電時(shí)間后,Uc達(dá)到芯片內(nèi)比較器的高觸發(fā)電平,約0.67V㏄,此時(shí)輸出引腳3端由高電平突降為低電平,然后通過R3放電,經(jīng)t放電時(shí)間后,Uc下
35、降到比較器的低觸發(fā)電平,約0.33V㏄此時(shí)輸出,此時(shí)輸出引腳3端又由低電平突降為高電平,如此翻來覆去,形成方波輸出。其中,充放電時(shí)間為t充電=C(R1+R3)Ln2,t放電=CR3 Ln2因而,輸出的方波頻率為:f=1/(t放電+t充電)=1/[C(R1+2R3)Ln2]可見,空氣濕度通過555測(cè)量電路就轉(zhuǎn)變?yōu)榕c之呈反比的頻率信號(hào),表3給出了其中的一組典型測(cè)試值。</p><p> 表3:空氣濕度與電壓頻率的典
36、型值</p><p> 3.1.2.3.多路濕度檢測(cè)信號(hào)的實(shí)現(xiàn)</p><p> 為了能夠?qū)崿F(xiàn)濕度信號(hào)的多點(diǎn)測(cè)量,本設(shè)計(jì)采用2片8選1模擬開關(guān)CD4051組成矩陣測(cè)量網(wǎng)絡(luò),可實(shí)現(xiàn)64路濕度信號(hào)的采集。矩陣測(cè)量網(wǎng)絡(luò)由濕度—頻率變換電路及2片CD4051組成,其硬件電路如圖5所示。圖中,每片CD4051有3條地址碼控制線,通過單片機(jī)的控制每片CD4051可實(shí)現(xiàn)8選1功能,2片CD4051組
37、合使用就可實(shí)現(xiàn)64路濕度信號(hào)的采集。U2的INH端直接接地,U1的INH端通過單片機(jī)端口控制,在進(jìn)行濕度信號(hào)采集的時(shí)候該端口置為低電平,允許多路開關(guān)選通。U1的X端子與單片機(jī)P3.4端口相連,實(shí)現(xiàn)濕度信號(hào)的采集。</p><p> 圖5:濕度矩陣測(cè)量網(wǎng)絡(luò) </p><p> 3.1.3.多路開關(guān)介紹</p><p> 多路開關(guān),又稱“多路模擬轉(zhuǎn)換器”。多
38、路開關(guān)通常有n個(gè)模擬量輸入通道和一個(gè)公共的模擬輸入端,并通過地址線上不同的地址信號(hào)把n個(gè)通道中任一通道輸入的模擬信號(hào)輸出,實(shí)現(xiàn)有n線到一線的接通功能。反之,當(dāng)模擬信號(hào)有公共輸出端輸入時(shí),作為信號(hào)分離器,實(shí)現(xiàn)了1線到n線的分離功能。。在本設(shè)計(jì)中,選用的是8選1多路開關(guān)CD4051,它是一種單片、COMS、8通道開關(guān)。該芯片由DTL/TTL-COMS電平轉(zhuǎn)換器,帶有禁止端的8選1譯碼器輸入,分別加上控制的8個(gè)COMS模擬開關(guān)TG組成。<
39、;/p><p> 圖6:CD4051的內(nèi)部原理框圖 </p><p> 圖中功能如下:通道線IN/OUT(4、2、5、1、12、15、14、13):該組引腳作為輸入時(shí),可實(shí)現(xiàn)8選1功能。作為輸出時(shí),可實(shí)現(xiàn)1分8功能。XCOM(3):該引腳作為輸出時(shí),則為公共輸出端;作為輸入時(shí),則為輸入端。</p><p> A、B、C(11、10、9):地址控制引腳。<
40、;/p><p> INH(6):禁止輸入引腳。若INH為高電平,則為禁止各通道和輸出端OUT/IN接至;若INH為低電平,則允許各通道按表3-2關(guān)系和輸出段OUT/IN接通。</p><p> VDD(16)和VSS(8):VDD為正電源輸入端,極限值為17V;VSS為負(fù)電源輸入端,極限值為-17V。VGG(7);電平轉(zhuǎn)換器電源,通常接+5V或-5V。</p><p&g
41、t; CD4051作為8選1功能時(shí),若A、B、C均為邏輯“0”(INH=0),則地址碼00013經(jīng)譯碼后使輸出端OUT/IN和通道0接通。</p><p> 3.2.單片機(jī)系統(tǒng)設(shè)計(jì)</p><p> 本系統(tǒng)中,我們采用美國ATMEL(愛特梅爾)公司生產(chǎn)的AT89S52單片機(jī)作為主控芯片。AT89S52單片機(jī)是一種低功耗、高性能CMOS 8位微控制器,具有8K在系統(tǒng)可編程Flash存儲(chǔ)
42、器。使用Atmel公司高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80C51產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于常規(guī)編程器。</p><p> AT89S52具有以下標(biāo)準(zhǔn)功能:8k字節(jié)Flash,256字節(jié)RAM,32位I/O口線,看門狗定時(shí)器,2個(gè)數(shù)據(jù)指針,三個(gè)16位定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷結(jié)構(gòu),全雙工串行口,片內(nèi)晶振及時(shí)鐘電路。</p><p>
43、 圖7:AT89S52最小系統(tǒng)</p><p> 另外,AT89S52可降至0Hz靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。圖7所示為AT89S52單片機(jī)最小系統(tǒng)原理圖。</p><p> 3.3.其它外圍接口電
44、路設(shè)計(jì)</p><p> 3.3.1.RS-485串口電路</p><p> 本系統(tǒng)中,P3.0、P3.1、P3.2、P3.3分別與RS-485串口芯片MAX1487的DI、RO、RE、DE相連,然后通過MAX1487的A、B端實(shí)現(xiàn)與遠(yuǎn)端上位管理端的連接。RS-485串口電路見圖8。</p><p> 圖8:RS-485串口電路</p><
45、p> 3.3.2.控制參數(shù)存儲(chǔ)器</p><p> 本系統(tǒng)測(cè)控端,溫、濕度調(diào)控參數(shù)存儲(chǔ)在串行EPROM AT24C04中。單片機(jī)的P1.0、P1.1、分別與IC總線接口EPROM芯片AT24C04的SCL、SDA相連,AT24C02的器件地址線A1、A2接地,A0懸空,單片機(jī)對(duì)AT24C02數(shù)據(jù)的訪問必須遵循IC總線通信協(xié)議,由軟件模擬實(shí)現(xiàn)。硬件接口電路見圖9。</p><p>
46、 圖9:串行EPROM電路</p><p> 3.3.3.鍵盤及顯示電路</p><p> 3.3.3.1.鍵盤電路</p><p> 在單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)中,通過按鍵實(shí)現(xiàn)控制功能和數(shù)據(jù)輸入是非常普遍的。由于本系統(tǒng)所需按鍵數(shù)量不多,故采用5個(gè)獨(dú)立式按鍵。它們分別用來進(jìn)行功能選擇、參數(shù)輸入和強(qiáng)行控制等功能(一般情況下可采用上位PC機(jī)進(jìn)行操作)。硬件電路見糧倉溫
47、、濕度測(cè)控整體原理圖(附錄一)。</p><p> 3.3.3.2.顯示電路</p><p> 本系統(tǒng)用八位數(shù)碼管分別顯示當(dāng)前溫度(四位)和濕度(四位)數(shù)值。其驅(qū)動(dòng)電路采用一片串行輸入輸出共陰顯示驅(qū)動(dòng)芯片MAX7219來完成。</p><p> MAX7219是一種集成化的串行輸入/輸出共陰極顯示驅(qū)動(dòng)器,它連接微處理器與8位數(shù)字的7段數(shù)字LED顯示,也可以連接
48、條線圖顯示器或者64個(gè)獨(dú)立的LED。其上包括一個(gè)片上的B型BCD編碼器、多路掃描回路,段字驅(qū)動(dòng)器,而且還有一個(gè)8*8的靜態(tài)RAM用來存儲(chǔ)每一個(gè)數(shù)據(jù)。只有一個(gè)外部寄存器用來設(shè)置各個(gè)LED的段電流。MAX7221與SPI(TM)、QSPI(TM)以及MICROWIRE(TM)相兼容,同時(shí)它有限制回轉(zhuǎn)電流的段驅(qū)動(dòng)來減少EMI(電磁干擾)。一個(gè)方便的四線串行接口可以聯(lián)接所有通用的微處理器。每個(gè)數(shù)據(jù)可以尋址在更新時(shí)不需要改寫所有的顯示。MAX72
49、19同樣允許用戶對(duì)每一個(gè)數(shù)據(jù)選擇編碼或者不編碼。</p><p> 整個(gè)設(shè)備包含一個(gè)150μA的低功耗關(guān)閉模式,模擬和數(shù)字亮度控制,一個(gè)掃描限制寄存器允許用戶顯示1-8位數(shù)據(jù),還有一個(gè)讓所有LED發(fā)光的檢測(cè)模式。</p><p> MAX7219功能特點(diǎn)如下:10MHz連續(xù)串行口;獨(dú)立的LED段控制;數(shù)字的譯碼與非譯碼選擇;150μA的低功耗關(guān)閉模式;亮度的數(shù)字和模擬控制;高電壓中斷顯
50、示;共陰極LED顯示驅(qū)動(dòng);24腳的DIP和SO封裝。</p><p> MAX7219管腳配置如下圖10所示:</p><p> 圖10:MAX7219管腳配置</p><p> MAX7219管腳功能描述如下表4:</p><p><b> 表4管腳功能描述</b></p><p>
51、MAX7219與AT89S52單片機(jī)接口電路如圖11所示:</p><p> 圖11:MAX7219與AT89S52接口電路 </p><p> 3.3.4.控制設(shè)備驅(qū)動(dòng)電路</p><p> 3.3.4.1.風(fēng)機(jī)、空調(diào)機(jī)、加濕機(jī)驅(qū)動(dòng)電路</p><p> 糧倉溫、濕度的控制是通過空調(diào)器與風(fēng)機(jī)實(shí)現(xiàn)的。打開進(jìn)出口的風(fēng)機(jī),在糧倉內(nèi)形
52、成通風(fēng)氣流;如果風(fēng)機(jī)調(diào)節(jié)達(dá)不到控制要求,則使用空調(diào)進(jìn)行降溫與排濕。濕度的調(diào)整還可配合加加濕機(jī)進(jìn)行調(diào)節(jié)。風(fēng)機(jī)、空調(diào)機(jī)、加濕機(jī)的控制是由單片機(jī)和光電耦合器驅(qū)動(dòng)雙向晶閘管完成的。其驅(qū)動(dòng)電路如圖12所示。圖中,發(fā)光二極管是用來指示設(shè)備運(yùn)轉(zhuǎn)情況的。當(dāng)單片機(jī)輸出端口為低電平時(shí),LED1亮,光耦通,雙向晶閘管導(dǎo)通,應(yīng)用晶閘管驅(qū)動(dòng)設(shè)備避免了機(jī)械觸點(diǎn)式繼電器驅(qū)動(dòng)的一些缺點(diǎn)。其中,單片機(jī)的P1.2、P1.3、P1.4端口分別接空調(diào)機(jī)、風(fēng)機(jī)、加濕機(jī)的驅(qū)動(dòng)電路
53、。</p><p> 圖12:風(fēng)機(jī)、空調(diào)機(jī)、加濕機(jī)驅(qū)動(dòng)電路</p><p> 3.3.4.2.報(bào)警接口電路</p><p> 本設(shè)計(jì)采用峰鳴音報(bào)警電路。峰鳴音報(bào)警接口電路的設(shè)計(jì)只需購買市售的壓電式蜂鳴器,然后通過MCS-51的1根口線經(jīng)驅(qū)動(dòng)器驅(qū)動(dòng)蜂鳴音發(fā)聲。壓電式蜂鳴器約需10mA的驅(qū)動(dòng)電流,可以用一個(gè)晶體三極管驅(qū)動(dòng),如圖13所示。在圖中,P2.3接晶體管基極
54、輸入端。當(dāng)P2.3輸出高電平“1”時(shí),晶體管導(dǎo)通,壓電蜂鳴器兩端獲得約+5V電壓而鳴叫;當(dāng)P3.2輸出低電平“0”時(shí),三極管截止,蜂鳴器停止發(fā)聲。</p><p> 圖13:三極管驅(qū)動(dòng)的峰鳴音報(bào)警電路 </p><p> 3.4.RS485-RS232電平轉(zhuǎn)換電路</p><p> 上位PC機(jī)串行接口采用標(biāo)準(zhǔn)RS232接口,而溫、濕度測(cè)控電路的通信方式為R
55、S485串行通信方式(為了提高通信距離和實(shí)現(xiàn)多糧倉測(cè)控)。二者不能直接連接,需要進(jìn)行電平轉(zhuǎn)換方可將測(cè)控電路與PC機(jī)相連。圖14所示為RS485-RS232電平轉(zhuǎn)換電路。分別采用一片MAX232與MAX1487來完成。轉(zhuǎn)換電路供電部分由PC機(jī)RS232端口的4、7腳通過V1、V2、V3、R4和電容C6來實(shí)現(xiàn)的。整個(gè)電路可做在RS232接頭盒內(nèi)。</p><p> 圖14:RS485-RS232電平轉(zhuǎn)換電路 &l
56、t;/p><p><b> 4.系統(tǒng)軟件設(shè)計(jì)</b></p><p> 本設(shè)計(jì)軟件系統(tǒng)主要包括:糧倉溫、濕度測(cè)控系統(tǒng)軟件、上位PC機(jī)數(shù)據(jù)通信及人機(jī)交互接口軟件二部分。</p><p> 4.1.糧倉溫、濕度測(cè)控系統(tǒng)軟件</p><p> 糧倉溫、濕度測(cè)控系統(tǒng)軟件設(shè)計(jì)主要由初始化、溫濕度數(shù)據(jù)采集、信號(hào)顯示、設(shè)備驅(qū)動(dòng)信號(hào)
57、處理、鍵盤處理、數(shù)據(jù)通信等幾部分組成。程序流程如圖15所示。</p><p> 圖15:溫、濕度測(cè)控系統(tǒng)程序流程圖</p><p> 其中,初始化主要完成對(duì)單片機(jī)各功能部件初始狀態(tài)的配置以及開戶軟件看門狗功能;數(shù)據(jù)采集完成對(duì)環(huán)境溫、濕度的實(shí)時(shí)數(shù)據(jù)采集及相關(guān)處理;信號(hào)顯示部分通過單片機(jī)控制實(shí)現(xiàn)了對(duì)溫、濕度參數(shù)的實(shí)時(shí)顯示;設(shè)備驅(qū)動(dòng)信號(hào)處理則通過對(duì)溫、濕度實(shí)時(shí)參數(shù)與存儲(chǔ)在EEPROM中的控制
58、參數(shù)進(jìn)行比較,并適時(shí)輸出相應(yīng)的設(shè)備驅(qū)動(dòng)信號(hào);鍵盤處理模塊用于現(xiàn)場(chǎng)控制信號(hào)的設(shè)定以及特殊情況下強(qiáng)制執(zhí)行信號(hào)的操作;數(shù)據(jù)通信完成溫、濕度測(cè)控系統(tǒng)與上位PC機(jī)之間的協(xié)議化通信,按照通訊規(guī)約的要求來實(shí)現(xiàn)與上位PC機(jī)的可靠通訊,同時(shí)可以接受上位PC機(jī)設(shè)定的控制參數(shù)并將其存儲(chǔ)于電路EEPROM中。</p><p> 4.1.1.濕度檢測(cè)子程序</p><p> 相對(duì)濕度的檢測(cè)采用相對(duì)濕度傳感器HS
59、1101,該傳感器的測(cè)量精度為±3%RH,將單片機(jī)定時(shí)到1s,用T0計(jì)數(shù)器記錄“濕度—頻率轉(zhuǎn)換電路”中的輸出方波數(shù),定時(shí)時(shí)間到時(shí),停止T0計(jì)數(shù),此時(shí)T0所計(jì)的方波數(shù)即為“濕度—頻率轉(zhuǎn)換電路”的頻率,對(duì)照表3-1-1(空氣濕度與電壓頻率的典型值),判斷該頻率所屬區(qū)域,將每個(gè)區(qū)域等分為100份,即相當(dāng)于0.1%RH的精度,如在0%RH~10%RH之間均分100份,對(duì)應(yīng)的頻率分為100份,即用相對(duì)濕度為0%RH時(shí)對(duì)應(yīng)頻率(7351H
60、z)減去相對(duì)濕度為10%RH時(shí)的對(duì)應(yīng)頻率(7224Hz),用該差值除以100,公式如下:為了方便計(jì)算和保證計(jì)算精度,將增量擴(kuò)大100倍,進(jìn)行計(jì)算。在計(jì)算前將每段的增量計(jì)算好,存入表中,在實(shí)際計(jì)算中,分段進(jìn)行查找,計(jì)算只涉及到加減,計(jì)算時(shí)間短,精度高。濕度檢測(cè)的流程如圖16所示。</p><p> 4.1.2.溫度檢測(cè)子程序</p><p> 溫度檢測(cè)子程序主要完成的是初始化DS18B2
61、0,從DS18B20中讀出一個(gè)字節(jié)的數(shù)據(jù),向DS18B20中寫入一個(gè)字節(jié)的數(shù)據(jù),配置DS18B20溫度轉(zhuǎn)換的精度等,讀出SCRACHPAD存儲(chǔ)器中的九個(gè)字節(jié)的數(shù)據(jù),讀出ROM中的64位CODE值,對(duì)讀出的SCRACHPAD數(shù)據(jù)進(jìn)行CRC校驗(yàn),然后根據(jù)讀出的數(shù)據(jù)得到測(cè)量出的十進(jìn)制溫度值。從DS18B20中讀出九個(gè)字節(jié)數(shù)據(jù)的流程圖如圖17所示。</p><p> 圖17:DS18B20溫度采集流程圖 </p&
62、gt;<p> 圖16:濕度檢測(cè)子程序流程圖 </p><p> 4.2.上位PC機(jī)接口軟件</p><p> 上位管理PC機(jī)利用Visual Basic 6.0的通信控件MSComm實(shí)現(xiàn)數(shù)據(jù)通信。本設(shè)計(jì)中的數(shù)據(jù)幀包括8位數(shù)據(jù)位,1位停止位,無奇偶校驗(yàn)。</p><p> 下面是MSComm控件的初始化程序:</p><p
63、> MScomm1.ComPort=1;設(shè)置串行端口(com1)</p><p> MScomm1.Settings=2400,N,8,1;設(shè)置波特率及數(shù)據(jù)幀格式</p><p> MScomm1.InputMOde=1;數(shù)據(jù)接受按字節(jié)(binary)方式</p><p> MScomm1.InbufferSize=4000;數(shù)據(jù)接受緩沖區(qū)大小為400
64、0字節(jié)</p><p> MScomm1.InputLen=0;INPUT讀取緩沖區(qū)的所有內(nèi)容</p><p> Mscomm1.PortOpen=True;打開COM1</p><p><b> ……。</b></p><p><b> 數(shù)據(jù)發(fā)送程序:</b></p><
65、;p> Private Sub Command1_Click()</p><p> Dim outbuf(1 To 6)As Byte</p><p> Dim lstr1 As String</p><p> Dim hstr2 As String</p><p> Dim len1 As IntegerCommand1.E
66、nabled=False</p><p> len1=Len(Hex(Val(Text2.Text)))</p><p><b> ………</b></p><p><b> End Sub</b></p><p><b> 數(shù)據(jù)接受程序:</b></p>
67、<p> Private Sub MScomm1_OnComm()</p><p> Select Case MScomm1.CommEvent</p><p> Case comEvReceive</p><p> Dim inbuf()As Byte,i%,buf$</p><p><b> buf=&quo
68、t;"</b></p><p> inbuf=MScomm1.Input</p><p> Rev_num=UBound(inbuf)</p><p> ReDim lnum(0 To Rev_num)As Integer</p><p> For i=0 To Rev_num</p><p&
69、gt; lnum(i)=inbuf(i)</p><p> buf=buf+Str(inbuf(i))+""</p><p><b> Next i</b></p><p> Case comEvSend</p><p> End Select </p><p>&l
70、t;b> End Sub</b></p><p><b> 5.結(jié)束語</b></p><p> 本設(shè)計(jì)在焊接好電路硬件的基礎(chǔ)上,通過ISP下載線將軟件代碼下載至AT89S52單片機(jī)中完成系統(tǒng)集成。由于采用了AT89S52單片機(jī),性能可靠、電路簡單,系統(tǒng)中還可充分利用AT89S52中先進(jìn)的軟件硬件資源,便于軟件系統(tǒng)的升級(jí)。</p>
71、<p><b> 參考文獻(xiàn):</b></p><p> [1] 李萍主編,《AT89S51單片機(jī)原理、開發(fā)與應(yīng)用實(shí)例》,中國電力出版社,2008年7月:67-76</p><p> [2] 陳京培.2007.基于AT89S52高性能單片機(jī)串行通信電路的設(shè)計(jì)[J].科技信息(學(xué)術(shù)研究).113-119</p><p> [3]
72、 徐建軍編著,《MCS-51系列單片機(jī)應(yīng)用及接口技術(shù)》,人民郵電出版社,2003:117-131</p><p> [4] 鄭學(xué)堅(jiān)編,《微型計(jì)算機(jī)原理及應(yīng)用》,清華大學(xué)大學(xué)出版社,1998:66-112</p><p> [5] 白雪冰,張延林,等.單片機(jī)原理及應(yīng)用[M].哈爾濱:東北林業(yè)大 學(xué)出版社,2006.</p><p> [6] 夏繼強(qiáng)編,《單片機(jī)
73、實(shí)驗(yàn)與實(shí)踐教程》,北京航空航天大學(xué)出版社,2001:32-33</p><p> [7] 余錫存編著,《單片機(jī)原理及接口技術(shù)》,西安電子科技大學(xué)出版社,2000:56-73</p><p> [8] 李剛等編著,《51系列單片機(jī)系統(tǒng)設(shè)計(jì)與應(yīng)用技巧》,北京航空航天大學(xué)出版社,2002</p><p> [9] 余永權(quán)著,《ATMEL89系列單片機(jī)應(yīng)用技術(shù)》,北京
74、航空航天大學(xué)出版社,2002.4:21-27</p><p> [10] 歐陽文編,《ATMEL89系列單片機(jī)的原理與開發(fā)實(shí)踐》,中國電力出版社,2007.6:203-237</p><p> [11] Changjun,liyan. Application of humidity sensor HS1101 in intelligent home controlsystem Elec
75、tronic Test.224-228.2008.</p><p> [12] Dong wen jun..DS1820 One-Wire Temperature Detecting Network Based On PC Serial Port.168-172.2007</p><p> [13] LIU Yi;ZHAO(Key Laboratory of Integrated Au
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于單片機(jī)的溫濕度控制系統(tǒng)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)_基于單片機(jī)的糧倉溫濕度監(jiān)控系統(tǒng)的設(shè)計(jì)
- 基于單片機(jī)的糧倉溫濕度控制
- 基于單片機(jī)的溫濕度控制系統(tǒng)設(shè)計(jì)
- 基于單片機(jī)的溫濕度控制系統(tǒng)設(shè)計(jì)
- 單片機(jī)溫濕度畢業(yè)設(shè)計(jì)
- 基于單片機(jī)的溫濕度自動(dòng)控制系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 基于單片機(jī)的溫濕度自動(dòng)控制系統(tǒng)設(shè)計(jì)-畢業(yè)設(shè)計(jì)
- 基于單片機(jī)的溫濕度控制系統(tǒng)的設(shè)計(jì).pdf
- 基于單片機(jī)的大棚溫濕度控制系統(tǒng)的設(shè)計(jì)
- 基于單片機(jī)的溫濕度檢測(cè)控制系統(tǒng)設(shè)計(jì)
- 畢業(yè)論文-基于單片機(jī)的溫濕度控制系統(tǒng)
- 基于單片機(jī)的溫濕度監(jiān)測(cè)與控制畢業(yè)設(shè)計(jì)
- 單片機(jī)無線溫濕度測(cè)量系統(tǒng)畢業(yè)設(shè)計(jì)
- 基于單片機(jī)的倉庫溫濕度檢測(cè)系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---基于單片機(jī)的倉庫溫濕度檢測(cè)系統(tǒng)
- 畢業(yè)設(shè)計(jì)_基于單片機(jī)的環(huán)境溫濕度檢測(cè)系統(tǒng)
- 畢業(yè)設(shè)計(jì)---單片機(jī)溫濕度控制的課程設(shè)計(jì)
- 基于51單片機(jī)溫濕度采集控制系統(tǒng)
- 基于單片機(jī)溫濕度監(jiān)測(cè)系統(tǒng)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論