畢業(yè)論文定稿-家庭健康供水裝置自動控制系統(tǒng)開發(fā)設(shè)計(jì)
《畢業(yè)論文定稿-家庭健康供水裝置自動控制系統(tǒng)開發(fā)設(shè)計(jì)》由會員分享,可在線閱讀,更多相關(guān)《畢業(yè)論文定稿-家庭健康供水裝置自動控制系統(tǒng)開發(fā)設(shè)計(jì)(30頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
原版文檔,無刪減,可編輯,歡迎下載詳細(xì)圖紙可扣扣咨詢 414951605 或 1304139763摘 要本文介紹了一種新型家庭健康供水裝置自動控制系統(tǒng),并給出了系統(tǒng)的工作原理、硬件結(jié)構(gòu)及軟件流程。本系統(tǒng)采用 ATMEL 公司單片機(jī)系列中的 AT89C51 為 CPU,采用外部開關(guān)元件作為供水裝置的外部檢測裝置,輸出單元采用固態(tài)繼電器。固態(tài)繼電器控制水泵、進(jìn)水電磁閥、出水電磁閥、臭氧發(fā)生器和凈水電磁閥,完成對水位的控制和消毒。實(shí)際使用證明該系統(tǒng)具有良好的控制效果。關(guān)鍵詞: 健康供水裝置,單片機(jī) AT89C51,固態(tài)繼電器原版文檔,無刪減,可編輯,歡迎下載詳細(xì)圖紙可扣扣咨詢 414951605 或 1304139763AbstractThis paper introduces a new type of family health device for water supply automatic control system, and gives the system working principle, hardware structure and software flow. The system used ATMEL microcontroller series AT89C51 CPU, using the external switch element as a water supply device for external detecting device, output unit by using solid state relay. Solid state relay control water pump, a water inlet electromagnetic valve, a water outlet electromagnetic valve, the ozone generator and the water solenoid valve, completion of the water level control and disinfection. The practice shows that the system has good control effectiveness.Key words: Healthy water supply device, single-chip AT89C51, solid state relay原版文檔,無刪減,可編輯,歡迎下載目 錄摘 要 .IAbstract.II1 緒論 11.1 課題的研究意義 11.2 課題的目的 12 家庭健康供水裝置自動控制系統(tǒng)總體方案設(shè)計(jì) .22.1 確定設(shè)計(jì)流程圖 22.2 系統(tǒng)方案論證 .22.2.1 單片機(jī)的選取 22.2.2 輸入輸出設(shè)備的選取 32.3 確定總體設(shè)計(jì)方案 33 家庭健康供水裝置自動控制系統(tǒng)硬件設(shè)計(jì) .43.1 AT89C51 單片機(jī)的特點(diǎn)及引腳說明 43.1.1 AT89C51 單片機(jī)的特點(diǎn) .43.1.2 AT89C51 單片機(jī)引腳功能說明 .53.2 各模塊電路圖 73.2.1 單片機(jī)最小應(yīng)用系統(tǒng)電路設(shè)計(jì) .73.2.2 輸入模塊電路設(shè)計(jì) .83.2.2 輸 出模塊電路設(shè)計(jì) .94 家庭健康供水裝置自動控制系統(tǒng)軟件設(shè)計(jì) .104.1 控制過程設(shè)計(jì) 104.2 繪制流程圖 104.3 Keil 軟件編程 11結(jié)論 16致 謝 17參考文獻(xiàn) .18附錄 1 系統(tǒng) C 語言程序清單 19附錄 2 系統(tǒng)電路圖 25附錄 3 PCB 板圖 .26XXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)11 緒論1.1 課題的研究意義家用健康供水裝置是一種運(yùn)用于家庭用水凈化和無化學(xué)殘留的食品消毒殺菌、洗滌清潔的全自動家庭水處理系統(tǒng),主要利用目前世界上廣泛運(yùn)用的臭氧技術(shù)并結(jié)合離子篩分離技術(shù)運(yùn)行殺菌消毒和水質(zhì)凈化。其控制系統(tǒng)要事先供水裝置的自動上水、自動完成水質(zhì)凈化、直飲水和消毒水自動協(xié)調(diào)供應(yīng)、并具備缺水和漏水等故障報(bào)警、處理保護(hù)功能。其控制系統(tǒng)是整個供水處理裝置的關(guān)鍵,選用何種方式控制尤其重要,目前的主要的幾種控制方式有純繼電器控制、PLC 控制和單片機(jī)控制。繼電器控制方式接線復(fù)雜,控制元件繁多,故不適合。PLC 控制成本比較高,也不適合家用供水裝置,故選用單片機(jī)控制整個系統(tǒng)。單片機(jī)作為自動控制中的一個核心器件在小型自動控制系統(tǒng)及信號采集方面已經(jīng)被廣泛應(yīng)用,技術(shù)也相對較成熟,它不僅有體積小,安裝方便,功能較齊全等優(yōu)點(diǎn),而且有很高的性價比,應(yīng)用前景廣。1.2 課題的目的通過本次設(shè)計(jì),我們對大學(xué)四年所學(xué)課程將做出一個總結(jié),對各門課程均將有更深入的了解,更加熟練的掌握設(shè)計(jì)方案的提出,設(shè)計(jì)流程的規(guī)劃以及各器件的硬件連和軟件編程,并且能夠更加熟練的操作 Protell99SE 軟件,真正培養(yǎng)出科學(xué)的思維方式和靈活解決問題的能力,為以后實(shí)際工作奠定良好的基礎(chǔ)。XXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)22 家庭健康供水裝置自動控制系統(tǒng)總體方案設(shè)計(jì)2.1 確定設(shè)計(jì)流程圖在熟悉課題,明確任務(wù)的基礎(chǔ)上,查閱相關(guān)資料,理清設(shè)計(jì)思路,綜合考慮總的設(shè)計(jì)時間和各部分設(shè)計(jì)所需時間,最終決定將本次設(shè)計(jì)分五大步進(jìn)行。(1)熟悉課題,明確任務(wù),查閱相關(guān)資料,確定總體設(shè)計(jì)方案;(2)根據(jù)各部分的功能劃分功能模塊,確定每一模塊的硬件組成,合理選取具有相應(yīng)功能的器件;(3)進(jìn)行硬件設(shè)計(jì),把各器件組成相應(yīng)功能的模塊,并把各功能模塊進(jìn)行電氣連接,形成總的功能系統(tǒng);(4)進(jìn)行軟件設(shè)計(jì),編寫程序,實(shí)現(xiàn)各模塊功能,使整個系統(tǒng)能夠良好的運(yùn)行;(5)進(jìn)行仿真調(diào)試,檢查各模塊功能能否完全實(shí)現(xiàn),綜合考慮系統(tǒng)的靈活性、穩(wěn)定性、誤差大小及測溫效率調(diào)整各器件的各項(xiàng)參數(shù)。使系統(tǒng)的處在最佳性能狀態(tài)。經(jīng)分析總結(jié),確定總的設(shè)計(jì)流程如圖 2.1 所示。開始總體設(shè)計(jì)方案功能模塊劃分系統(tǒng)設(shè)計(jì)軟件設(shè)計(jì) 硬件設(shè)計(jì)仿真調(diào)試圖 2.1 設(shè)計(jì)流程圖2.2 系統(tǒng)方案論證XXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)32.2.1 單片機(jī)的選取若采用 8031 芯片,其內(nèi)部沒有程序存儲器,需要進(jìn)行外部擴(kuò)展,這給電路增加了復(fù)雜度,且占用空間增大。但是如果采用 AT89C51 單片機(jī)為控制核心優(yōu)點(diǎn)凸顯,51 系列微處理器基于簡化的嵌入式控制系統(tǒng)結(jié)構(gòu),被廣泛應(yīng)用于從軍事到自動控制再到 PC 機(jī)上的鍵盤上的各種應(yīng)用系統(tǒng)上,僅次于 Motorola 68HC11 在 8 位微控制器市場上的銷量,很多制造商都可提供 51 系列單片機(jī),像 Intel Philips Siemens 等,這些制造商給51 系列單片機(jī)加入了大量的性能和外部功能,像 I2C 總線接口,模擬量到數(shù)字量的轉(zhuǎn)換,看門狗,PWM 輸出等,不少芯片的工作頻率達(dá)到 40M,工作電壓下降到1.5V?;谝粋€內(nèi)核的這些功能使得 51 系列單片機(jī)很適合作為廠家產(chǎn)品的基本構(gòu)架,它能夠運(yùn)行各種程序而且開發(fā)者只需要學(xué)習(xí)這一個平臺 [1]。比較這兩種方案,綜合考慮單片機(jī)的各部分資源,因此此次設(shè)計(jì)選用第二種方案,選用 AT89C51 單片機(jī)為核心處理器。2.2.2 輸入輸出設(shè)備的選取輸入元件采用外部開關(guān)輸入,成本低控制簡單。輸出采用 SSR 固態(tài)繼電器輸出,固態(tài)繼電器有體積小,使用壽命高的優(yōu)點(diǎn)。2.3 確定總體設(shè)計(jì)方案通過對設(shè)計(jì)任務(wù)及相關(guān)芯片的深入了解,最終決定本設(shè)計(jì)采用 AT89C51 單片機(jī)作為控制器,外部開關(guān)量為控制輸入元件,固態(tài)繼電器為輸出元件,完成整個供水系統(tǒng)的控制系統(tǒng),其系統(tǒng)設(shè)計(jì)其總體結(jié)構(gòu)如圖 2.2 所示。單片機(jī)AT89C51外部輸入開關(guān) 外部輸出 SSRXXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)4圖 2.2 系統(tǒng)結(jié)構(gòu)圖3 家庭健康供水裝置自動控制系統(tǒng)硬件設(shè)計(jì)3.1 AT89C51 單片機(jī)的特點(diǎn)及引腳說明3.1.1 AT89C51 單片機(jī)的特點(diǎn)AT89C51 是美國 ATMEL 公司生產(chǎn)的低電壓、高性能 CMOS 8 位單片,內(nèi)含 4Kbytes 的可反復(fù)擦寫的只讀程序存儲器(EPROM)和 128 bytes 的隨機(jī)存取數(shù)據(jù)存儲器(RAM ) ,器件采用 ATMEL 公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn) MCS-51 指令系統(tǒng),片內(nèi)置通用 8 位中央處理器(CPU )和 Flash 存儲單元,功能強(qiáng)大的 AT89C51 單片機(jī)可提供許多高性價比的應(yīng)用場合,可靈活應(yīng)用于各種控制領(lǐng)域,該芯片外形結(jié)構(gòu)及引腳如圖 3.1 所示 [4]。XXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)5XTAL218XTAL119ALE30 EA31 PSEN29RST9P0.0/AD0 39P0.1/AD1 38P0.2/AD2 37P0.3/AD3 36P0.4/AD4 35P0.5/AD5 34P0.6/AD6 33P0.7/AD7 32P1.01 P1.12 P1.23P1.34 P1.45 P1.56P1.67 P1.78P3.0/RXD 10P3.1/TXD 11P3.2/INT0 12P3.3/INT1 13P3.4/T0 14P3.7/RD 17P3.6/WR 16P3.5/T115P2.7/A15 28P2.0/A8 21P2.1/A9 22P2.2/A10 23P2.3/A11 24P2.4/A12 25P2.5/A13 26P2.6/A14 27U1AT89C51圖 3.1 AT89C51 外形結(jié)構(gòu)及引腳AT89C51 單片機(jī)主要性能參數(shù)為:(1)與 MCS-51 產(chǎn)品指令系統(tǒng)完全兼容;( 2)4K 字節(jié)可重擦寫 Flash 閃速存儲器;(3)1000 次擦寫周期;(4)全靜態(tài)操作:0Hz—24H z;(5)三級加密程序存儲器;(6)128×8 字節(jié)內(nèi)部 RAM;( 7)32 個可編程 I/O 口線;(8)2 個 16 位定時/計(jì)數(shù)器;(9)6 個中斷源;(10 )可編程串行 UART 通道;(11)低功耗空閑和掉電模式 [8]。AT89C51 提供 4K 字節(jié) Flash 閃速存儲器,128 字節(jié)內(nèi)部 RAM,32 個 I/O口線,兩個 16 位定時/計(jì)數(shù)器,一個 5 向量兩級中斷結(jié)構(gòu),一個全雙工串行通信口,片內(nèi)振蕩器及時鐘電路。同時,AT89C51 可降至 0Hz 的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式??臻e方式停止 CPU 的工作,但允許 RAM,定時/ 計(jì)數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存 RAM 中的內(nèi)容,但振蕩器停止工作并禁止其他所有部件工作直到下一個硬件復(fù)位。3.1.2 AT89C51 單片機(jī)引腳功能說明(1)Vcc :電源電壓;(2)GND:地;(3)P0 口: P0 口是一組 8 位漏極開路型雙向 I/O 口,也即地址/ 數(shù)據(jù)總線復(fù)XXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)6用口。作為輸出口用時,每位能吸收電流的方式驅(qū)動 8 個 TTL 邏輯門電路,對端口寫“1”可作為高阻抗輸入端用。在訪問外部數(shù)據(jù)存儲器或程序存儲器時,這組口線分時轉(zhuǎn)換地址(低 8 位)和數(shù)據(jù)總線復(fù)用,在訪問期間激活內(nèi)部上拉電阻。在Flash 編程時,P0 口接收指令字節(jié),而在程序校驗(yàn)時,輸出指令字節(jié),校驗(yàn)時,要求外接上拉電阻。(4)P1 口: P1 口是一個帶內(nèi)部上拉電阻的 8 位雙向 I/O 口,P1 的輸出緩沖級可驅(qū)動(吸收或輸出電流)4 個 TTL 邏輯門電路。對端口寫“1” ,通過內(nèi)部的上拉電阻把端口拉倒高電平,此時可做輸入口。做輸入口輸入時,因?yàn)閮?nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流(I IL) 。Flash 編程和程序校驗(yàn)期間,P1 接收低 8 位地址。(5)P2 口: P2 是一個帶有內(nèi)部上拉電阻的 8 位雙向 I/O 口,P2 的輸出緩沖級可驅(qū)動(吸收或輸出電流)4 個 TTL 邏輯門電路,對端口寫“1” ,通過內(nèi)部的上拉電阻把端口拉倒高電平,此時可做輸入口,做輸入口使用時,因?yàn)閮?nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸入一個電流(I IL) 。在訪問外部程序存儲器或 16 位地址的外部數(shù)據(jù)存儲器(例如執(zhí)行 MOVX@DPTR 指令)時,P2 口送出高 8 位地址數(shù)據(jù)。在訪問 8 為地址的外部數(shù)據(jù)存儲器(如執(zhí)行 MOVX@R1 指令)時,P2 口線上的內(nèi)容(也即特殊功能寄存器 SFR 區(qū)中 R2 寄存器的內(nèi)容) ,在整個訪問期間不改變。Flash 編程或校驗(yàn)時,P2 亦接受高位地址和其它控制信號。(6)P3 口: P3 口是一個帶有內(nèi)部上拉電阻的 8 位雙向 I/O 口,P3 口的輸出緩沖級可驅(qū)動(吸收或輸出電流)4 個 TTL 邏輯門電路。對端口寫“1” 時,它們被內(nèi)部上拉電阻拉高并可作為輸入端。作輸入端時,被外部拉低的 P3 口將用上拉電阻輸出電流(I IL) 。P3 口除了作為一般的 I/O 口線外,更重要的用途是它的第二功能,如表 3.1 所示。表 3.1 P3 口第二功能端口引腳 第二功能P3.0 RXD(串行輸入口)P3.1 TXD(串行輸出口)P3.2 (外部中斷 0)P3.3 (外部中斷 1)P3.4 T0(定時/ 計(jì)數(shù)器 0)XXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)7P3.5 T1(定時/ 計(jì)數(shù)器 1)P3.6 (外部數(shù)據(jù)存儲器寫選通)P3.7 (外部數(shù)據(jù)存儲器讀選通)P3 口還接收一些用于 Flash 閃速存儲器編程和程序校驗(yàn)的控制信號(7)RST : 復(fù)位輸入。當(dāng)振蕩器工作時,RST 引腳出現(xiàn)兩個機(jī)器周期以上高電平將使單片機(jī)復(fù)位。(8)ALE/ :當(dāng)訪問外部程序存儲器或數(shù)據(jù)存儲器時,ALE(地址鎖存允許)輸出脈沖可用于鎖存地址的低八位字節(jié)。即使不訪問外部存儲器,ALE仍以時鐘振蕩頻率的 1/6 輸出固定的正脈沖信號,因此它可對外輸出時鐘或用于定時目的。要注意的是:每當(dāng)訪問外部數(shù)據(jù)存儲器時將跳過一個 ALE 脈沖。對 Flash存儲器編程期間,該引腳還用于輸入編程脈沖( ) 。如有必要,可通過對特殊功能寄存器(SFR)區(qū)中的 8EH 單元的 D0 位置位,可禁止 ALE 操作。該位置置位后,只有一條 MOVX 和 MOVC 指令 ALE 才會被激活。此外,該引腳會被微弱拉高,單片機(jī)執(zhí)行外部程序時,應(yīng)設(shè)置 ALE 無效 [8]。(9) :程序儲存允許( )輸出是外部程序存儲器的讀選通信號,當(dāng) AT89C51 由外部程序存儲器取指令(或數(shù)據(jù))時,每個機(jī)器周期兩次 有效,即輸出兩個脈沖。在此期間,當(dāng)訪問外部數(shù)據(jù)存儲器時,這兩次有效的 信號不出現(xiàn)。(10)EA/VPP:外部訪問允許。欲使 CPU 僅訪問外部數(shù)據(jù)存儲器(地址為0000H—FFFFH) ,EA 端必須保持低電平(接地) 。需注意的是:如果加密位LB1 被編成,復(fù)位時內(nèi)部會鎖存 EA 端狀態(tài)。如 EA 端為高電平(接 Vcc 端) ,CPU 則執(zhí)行內(nèi)部程序存儲器中的指令。Flash 存儲器編程時,該引腳加上 +12V 的編程允許電源 Vpp,當(dāng)然這必須是該器件使用 12V 編程電壓 Vpp。(10)XTAL1 :振蕩器反相放大器及內(nèi)部時鐘發(fā)生器的輸入端。(11)XTAL2 :振蕩器反相放大器的輸出端。3.2 各模塊電路圖3.2.1 單片機(jī)最小應(yīng)用系統(tǒng)電路設(shè)計(jì)單片機(jī)系統(tǒng)是整個硬件系統(tǒng)的核心,它即協(xié)調(diào)整機(jī)工作,又是數(shù)據(jù)處理器,XXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)8是軟硬件系統(tǒng)連接的橋梁,AT89C51 是一個低電壓,高性能 CMOS 8 位單片機(jī)帶有4K 字節(jié)的可反復(fù)擦寫的程序存儲器(PENROM)和 128 字節(jié)的存取數(shù)據(jù)存儲器(RAM) ,這種器件采用 ATMEL 公司的高密度、不容易丟失存儲技術(shù)生產(chǎn),并且能夠與 MCS-51 系列的單片機(jī)兼容。片內(nèi)含有 8 位中央處理器和閃爍存儲單元,有較強(qiáng)的功能的 AT89C51 單片機(jī)能夠被應(yīng)用到控制領(lǐng)域中。因此,我們選用AT89C51 單片機(jī)來滿足我們程序的要求。單片機(jī)最小應(yīng)用系統(tǒng)電路包括以下的兩個部分:時鐘電路和復(fù)位電路。如圖 3-1 所示。1、 時鐘電路 單片機(jī)的時鐘信號用來提供單片機(jī)片內(nèi)各種微操作的時間基準(zhǔn),時鐘信號通常用兩種電路形式得到:內(nèi)部振蕩和外部振蕩。MCS-51 單片機(jī)內(nèi)部有一個用于構(gòu)成振蕩器的高增益反向放大器,引腳 XTAL1 和 XTAL2 分別是此放大電器的輸入端和輸出端,由于采用內(nèi)部方式時,電路簡單,所得的時鐘信號比較穩(wěn)定,實(shí)際使用中常采用這種方式。2、 復(fù)位電路 為了初始化單片機(jī)內(nèi)部的某些特殊功能寄存器,必須采用復(fù)位的方式,復(fù)位后可使 CPU 及系統(tǒng)各部件處于確定的初始狀態(tài),并從初始狀態(tài)開始正常工作。單片機(jī)的復(fù)位是靠外電路來實(shí)現(xiàn)的,在正常運(yùn)行情況下,只要 RST 引腳上出現(xiàn)兩個機(jī)器周期時間以上的高電平,即可引起系統(tǒng)復(fù)位,但如果 RST 引腳上持續(xù)為高電平,單片機(jī)就處于循環(huán)復(fù)位狀態(tài)。復(fù)位后系統(tǒng)將輸入/輸出 (1/0)端口寄存器置為 FFH,堆棧指針 SP 置為 07H, SBUF 內(nèi)置為不定值,其余的寄存器全部清 0,內(nèi)部 RAM 的狀態(tài)不受復(fù)位的影響,在系統(tǒng)上電時 RAM 的內(nèi)容是不定的。復(fù)位操作有兩種情況,即上電復(fù)位和手動( 開關(guān)) 復(fù)位。本系統(tǒng)采用上電復(fù)位方式。XXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)9圖 3.2 最小應(yīng)用電路3.2.2 輸入模塊電路設(shè)計(jì)單片機(jī)上輸入點(diǎn)引腳的分配:P1.0——水箱上位開關(guān) K1;P1.1——水箱下位開關(guān) K2;P1.2— —出水按鈕 K3;P1.3——入水按鈕 K4。其電路圖如圖 3.3 所示XXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)10圖 3.3 輸入電路3.2.3 輸出模塊電路設(shè)計(jì)單片機(jī)上輸出點(diǎn)引腳的分配:P2.0——缺水指示燈 D;P2.1 ——凈水電磁閥P;P2.2 ——消毒電磁閥 C2;P2.3 ——進(jìn)水電磁閥 C1;P2.4 ——出水泵P;P2.5 ——臭氧發(fā)生器 F。其電路圖如圖 3.4 所示圖 3.4 輸出電路圖XXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)114 家庭健康供水裝置自動控制系統(tǒng)軟件設(shè)計(jì)4.1 控制過程設(shè)計(jì)本家庭自動供水裝置控制系統(tǒng)分無人操作和有人操作兩種模式:1)無人為操作下:1、如果下水位沒水(K2 斷開) ,加水(C1 和 F 打開)2、如果 10 秒過后,下水位還沒水,停止進(jìn)水(C1 和 F 關(guān)) ,報(bào)警3、如果 1 分鐘后,上水位沒水,停止進(jìn)水(C1 和 F 關(guān)) ,報(bào)警4、若上水位有水,停止進(jìn)水(C1 和 F 關(guān))2) 人為操作下:停止加水(C1 和 F 關(guān))A,出水1、出水按鈕(K3)第一次觸發(fā),若水箱有水(K2 閉合) ,停止消毒,打開出水閥 C3,啟動水泵 P2、出水按鈕(K3)再次觸發(fā),關(guān)閉出水閥 C3,停止水泵 P3、若水箱沒水,停止出水,關(guān)閉出水閥 C3,停止水泵 PB,消毒1、消毒按鈕(K4)第一次觸發(fā),若水箱有水(K2 閉合) , ,停止出水,打開消毒電磁閥 C2,臭氧發(fā)生器 F,水泵 P2、出水按鈕(K4)再次觸發(fā),關(guān)閉消毒閥 C2,停止水泵 P,關(guān)閉臭氧發(fā)生器3、若水箱沒水,關(guān)閉消毒閥 C2,停止水泵 P,關(guān)閉臭氧發(fā)生器4.2 繪制流程圖本系統(tǒng)在 Keil 中用 C 語言進(jìn)行編程,來控制單片機(jī)對數(shù)據(jù)進(jìn)行處理,根據(jù)上述控制過程繪制其總的程序流程圖如圖 4.1 所示。XXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)12復(fù)位管腳初始化定時器初始化消毒排水正常缺水消毒處理排水處理加水是否是是 否否定時器 0 中斷報(bào)警處理正常加水計(jì)數(shù)放水或消毒計(jì)數(shù)圖 4.1 總的系統(tǒng)程序流程圖4.3 Keil 軟件編程運(yùn)用 keil uvision2 進(jìn)行編程時,具體的步驟如下:1、新建一個工程打開 keil uvision2 軟件,在菜單欄上選擇 project 菜單下的 new project (新建一個工程) 選擇工程存儲存位置,我們新建一文件夾,然后把工程保存在這一文件夾里面,保存之前先輸入文件名如:how138,如圖 4.2。XXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)13圖 4.2 新建工程點(diǎn)擊保存之后會彈出選擇芯片對話框,我們要用的是 AT89C51 單片機(jī),所以選擇 ATMEL 公司的 AT89C51 單片機(jī)即可,然后單擊確定,如圖 4.3。圖 4.3 選擇單片機(jī)型號軟件會彈出提示框:問你是否添加默認(rèn)代碼,我們不需要所以選擇否,如圖XXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)144.4。這樣一個工程框加就建立好了。圖 4.4 確認(rèn)對話框2、新建源程序文件(本例使用匯編語言)選擇菜單 File 下面的 New (新建源程序文件)如圖 4.5。在代碼編輯框中輸入代碼如圖 4.6 所示,可以根據(jù)需要輸入自已的代碼。輸入完成之后點(diǎn)擊保存,并輸入文件名:Text1.a (注意:要輸入后綴名,因?yàn)槭菂R編所以使用 a 為后綴名),把文件保存在工程文件夾所在的目錄里。然后關(guān)才源程序編輯框,這一步完成。圖 4.5 新建源程序文本XXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)15圖 4.6 代碼輸入文本框3、 把源程序添加到工程中在文件列表里選擇 Source Group 1 然后單擊右鍵,在彈出的菜單里選擇 Add file to Group (添加源程序)如圖 4.7(a),彈出選擇源程序?qū)υ捒?,我們選擇擇文件類型為 *.s *.src *.a 這一項(xiàng)如圖 4.7(b) ,然后找到第二步建立的源程序 Text1.a ,選擇之后單擊 ADD 按鈕一次,最選擇擇關(guān)閉。此時源程序已經(jīng)添加到工程中在文件列表中可以看到XXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)16圖 4.7 添加源文件到工程4、 編譯并生成 Hex 文件接下來就是對源程序進(jìn)行編譯了,如果代碼輸入正確之后會提示編譯成功。XXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)17結(jié)論本設(shè)計(jì)介紹了基于單片機(jī)的家用健康供水裝置的應(yīng)用,采用單片機(jī) AT89C51 作為控制器,使系統(tǒng)既能滿足精度要求,又能兼顧顧客的價格需要。該系統(tǒng)主要實(shí)現(xiàn)了實(shí)現(xiàn)供水裝置的自動上水、自動完成水質(zhì)凈化、直飲水和消毒水自動協(xié)調(diào)供應(yīng)、并具備缺水和漏水等故障報(bào)警、處理保護(hù)功能。系統(tǒng)動作準(zhǔn)確,提高了資源的利用率,大有推廣應(yīng)用的價值。經(jīng)調(diào)試驗(yàn)證,本系統(tǒng)已基本完成任務(wù)要求,達(dá)到了預(yù)期目的,在以后的生產(chǎn)生活中有較好的應(yīng)用前景。XXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)18致 謝隨著畢業(yè)設(shè)計(jì)的結(jié)稿,我們精彩的大學(xué)生活也將畫上句號。在本次設(shè)計(jì)中,我們教研室各位老師都對我們進(jìn)行了精心的指導(dǎo),從下達(dá)任務(wù)書到開題,再到設(shè)計(jì),一直到最終的結(jié)稿都盡心盡責(zé),使我們對四年所學(xué)內(nèi)容有了更加深刻的理解,同時掌握了把理論運(yùn)用到實(shí)踐當(dāng)中的技巧。我在設(shè)計(jì)的過程中,董老師以嚴(yán)謹(jǐn)?shù)闹螌W(xué)作風(fēng)、扎實(shí)的理論基礎(chǔ)和淵博的專業(yè)知識使我受益匪淺,在這里,非常感謝董老師的精心指導(dǎo)!在長達(dá)半年的設(shè)計(jì)過程中,董老師一直耐心地對我們進(jìn)行指導(dǎo),大到課題提綱,小到細(xì)節(jié)連線都無微不至的關(guān)心著我們的設(shè)計(jì)。在設(shè)計(jì)過程中通過自己堅(jiān)持不懈地努力和小組成員的幫助下,整個設(shè)計(jì)按預(yù)期目標(biāo)已基本完成。其中很多問題是通過和小組其他人員討論才得到解決,在這里,感謝小組成員對我的大力支持,不僅在設(shè)計(jì)技術(shù)方面幫助了我,同時在精神上支持我。同時感謝本系我們提供了優(yōu)良的實(shí)驗(yàn)室,實(shí)驗(yàn)室內(nèi)器材豐富,設(shè)備先進(jìn),完全滿足了我們設(shè)計(jì)所需的基本要求,實(shí)驗(yàn)室老師也對我們進(jìn)行了實(shí)驗(yàn)指導(dǎo),使我們在實(shí)驗(yàn)過程中能更加?jì)故斓牟僮?,大大增快了我們的設(shè)計(jì)進(jìn)度,非常感謝系里領(lǐng)導(dǎo)和老師為我們提供的優(yōu)良環(huán)境和為我們提供的經(jīng)典指導(dǎo)。感謝我的父母及家人,沒有您們這么多年含辛茹苦的教導(dǎo),把我撫養(yǎng)長大,就沒有我今天豐富多彩的生活,我也不會順利的完成本次設(shè)計(jì),我將會更加努力的學(xué)習(xí)、工作報(bào)答您們的養(yǎng)育之恩。半年的畢業(yè)設(shè)計(jì)生活已接近尾聲,但老師和同學(xué)們的形象卻永遠(yuǎn)留在我們心中,人生中最閃亮的四年將影響我的一生,充實(shí)而多彩的畢業(yè)設(shè)計(jì)時光將在我的人生旅途中永放光芒!XXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)19參考文獻(xiàn)[1]張俊謨.單片機(jī)中級教程——原理與應(yīng)用[M].北京:北京航空航天大學(xué)出版社, 2008.[2]陳立周,陳宇.單片機(jī)原理及應(yīng)用[M].北京:機(jī)械工業(yè)出版社, 2008.[3]蔣輝平,周國雄.基于 Proteus 的單片機(jī)系統(tǒng)設(shè)計(jì)與仿真實(shí)例[M].北京:機(jī)械工業(yè)出版社,2009.[4]張克弄.?dāng)?shù)字電子技術(shù)基礎(chǔ)[M].北京:高等教育出版社, 2003.[5]梁賀青.增強(qiáng)核內(nèi)存 80C51 教程[M].北京:電子工業(yè)出版社,2003.[6]高峰.單片微機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)及應(yīng)用技術(shù)[M].北京:機(jī)械工業(yè)出版社, 2004.[7]張迎新.單片機(jī)原理及應(yīng)用[M].北京:電子工業(yè)出版社, 2004.[8]杜樹春.單片機(jī) C 語言編程 MCS-51 單片機(jī)原理與應(yīng)用 [M].北京:北京航空航天大學(xué)出版社,2006.[9]胡偉,季曉衡.單片機(jī) C 程序設(shè)計(jì)及應(yīng)用實(shí)例[M].北京:人民郵電出版社,2003.[10]張靖武.單片機(jī)系統(tǒng)的 PROTEUS 設(shè)計(jì)與仿真[M].北京:電子工業(yè)出版社,2007.[11]范風(fēng)強(qiáng),蘭嬋麗.單片機(jī)語言 C51 應(yīng)用實(shí)踐集錦[M].北京:電子工業(yè)出版社,2003.[12]林志琦,等.基于 Proteus 的單片機(jī)可視化軟硬件仿真[M].北京:北京航空航天大學(xué)出版社,2006.[13]石東海.單片機(jī)數(shù)據(jù)通信技術(shù)從入門到精通[M].西安:西安電子科技大學(xué)出版社,2002.[14]周潤景,張麗娜.基于 PROTUES 的電路及單片機(jī)系統(tǒng)設(shè)計(jì)與仿真[M].北京:北京航空航天大學(xué)出版社,2006.[15]求是科技.單片機(jī)通信技術(shù)與工程實(shí)踐[M].北京:人民郵電出版社, 2005.[16]秦曉梅,陳育斌.單片機(jī)原理綜合實(shí)驗(yàn)教程[M].大連:大連理工大學(xué)出版社, 2004.[17]嚴(yán)天峰.單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)與仿真調(diào)試[M].北京:北京航空航天大學(xué)出版社,2005.[18]張培仁.基于 C 語言編程 MCS-51 單片機(jī)原理與應(yīng)用 [M].北京:清華大學(xué)出版社,2002.[19]趙文博,劉文濤.單片機(jī)語言 C51 程序設(shè)計(jì)[M].北京:人民郵電出版社,2003.[20]Dallas Semiconductor Corporation.DS2430A 256-Bit 1-Wire EEPROM.Dallas XXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)20Semiconductor corporation.[21]李光飛,等.單片機(jī)課程設(shè)計(jì)實(shí)例指導(dǎo)[M].北京:北京航空航天大學(xué)出版社, 2004.[22]求實(shí)科技.單片機(jī)典型外圍器件及應(yīng)用實(shí)例[M].北京:人民郵電出版社, 2005.[23]沙占友,等.單片機(jī)外圍電路設(shè)計(jì)[M].北京:電子工業(yè)出版社,2006.附錄 1 系統(tǒng) C 語言程序清單#include/*P1.0 水箱上位開關(guān) K1P1.1 水箱下位開關(guān) K2P1.2 出水按鈕 K3P1.3 入水按鈕 K4P2.0 缺水指示燈 DP2.1 凈水電磁閥 PP2.2 消毒電磁閥 C2P2.3 進(jìn)水電磁閥 C1P2.4 出水泵 PP2.5 臭氧發(fā)生器 F工作流程:無人為操作下:1、如果下水位沒水(K2 斷開) ,加水(C1 和 F 打開)2、如果 10 秒過后,下水位還沒水,停止進(jìn)水(C1 和 F 關(guān)) ,報(bào)警3、如果 1 分鐘后,上水位沒水,停止進(jìn)水(C1 和 F 關(guān)) ,報(bào)警4、若上水位有水,停止進(jìn)水(C1 和 F 關(guān))人為操作下:停止加水(C1 和 F 關(guān))A,出水1、出水按鈕(K3)第一次觸發(fā),若水箱有水( K2 閉合) ,停止消毒,打開出水閥 C3,啟動水泵 P2、出水按鈕(K3)再次觸發(fā),關(guān)閉出水閥 C3,停止水泵 P3、若水箱沒水,停止出水,關(guān)閉出水閥 C3,停止水泵 PB,消毒1、消毒按鈕(K4)第一次觸發(fā),若水箱有水( K2 閉合) , ,停止出水,打開消毒電磁閥 C2,臭氧發(fā)生器 F,水泵 P2、出水按鈕(K4)再次觸發(fā),關(guān)閉消毒閥 C2,停止水泵 P,關(guān)閉臭氧發(fā)生器3、若水箱沒水,關(guān)閉消毒閥 C2,停止水泵 P,關(guān)閉臭氧發(fā)生器*/////////////////////////////////////#define F_ P2_5 //=1 臭氧發(fā)生器開, =0 臭氧發(fā)生器關(guān)#define C_1 P2_4 //=1 進(jìn)水電磁閥開, =0 進(jìn)水電磁閥關(guān)#define C_2 P2_3 //=1 消毒電磁閥開, =0 消毒電磁閥關(guān)#define C_3 P2_2 //=1 凈水電磁閥開, =0 凈水電磁閥關(guān)#define P_ P2_1 //=1 出水水泵開,=0 出水水泵關(guān)XXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)21#define D_ P2_0 //=1 缺水指示燈開, =0 缺水指示燈關(guān)////////////////////////////////////#define MS_50_H 0X9c#define MS_50_L 0X40#define S_2 50#define S_10 250#define S_60 1300///////////////////////////////////typedef struct{unsigned char key1;unsigned char key2;unsigned char key3;unsigned char K3_mark;unsigned char key4;unsigned char K4_mark;unsigned char K3_first;unsigned char K4_first;unsigned char C1_mark;unsigned char C2_mark;unsigned char C3_mark;unsigned char Alarm;}STRCUT_KEY;STRCUT_KEY KEY;/////////////////////////////////typedef struct{unsigned int count_k1;unsigned char count_k2;unsigned char count_led;}STRCUT_COUNT;STRCUT_COUNT Count;///////////////進(jìn)水開//////////////////#define KEY1_ON() {C_1 = 1;\F_ = 1;}//////////////進(jìn)水關(guān)//////////////#define KEY1_OFF() {C_1 = 0;\F_ = 0;}///////////////出水開///////////////////#define KEY3_ON() {C_3 = 1;\C_2 = 0;\P_ = 1;}///////////////出水關(guān)///////////////////#define KEY3_OFF() {C_3 = 0;\P_ = 0;}///////////////消毒開///////////////////#define KEY4_ON() {C_2 = 1;\F_ = 1;\C_3 = 0;\P_ = 1;}///////////////消毒關(guān)///////////////////#define KEY4_OFF() {C_2 = 0;\F_ = 0;\P_ = 0;}void Delay_ms(unsigned char n);void Key_check(void);XXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)22void Time0_Init(void);void Init(void);void Twinkle(void);void Key2(void);void Key3(void);void Key4(void);void Pattern(void);/*定時器 0 初始化 Time0_init()*/void Time0_Init(void){TMOD = 0X01; //設(shè)置 50ms 中斷IE = 0X82;TH0 = MS_50_H;TL0 = MS_50_L;TR0 = 1;}/*定時器 0 中斷*/void Time0_Int() interrupt 1{TH0 = 0XC3;TL0 = 0X50;if (KEY.C1_mark==1) //若 C1 打開,開始計(jì)時{Count.count_k1++;if(Count.count_k110000)Count.count_k1=2000;}else Count.count_k1=0;if(((KEY.C2_mark==1)||(KEY.C3_mark==1))Count.count_led++;}/*程序初始化 Init()*/void Init(void){P1 = 1;P2 = 0;EA = 0;}/*延時 ms 函?Delay_ms()*/void Delay_ms(unsigned char n){unsigned int i=0;while(n--)for (i=0;iS_10)Twinkle();KEY.Alarm = 1;}}else //按下消毒或排水鍵XXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)25{if (Count.count_k2S_2) //若 K2 閉合 2 秒鐘,斷開C2、C3、P、F{Count.count_k2 = 0;C_2 = 0;C_3 = 0;F_ = 0;P_ = 0;}}}void main(void){Delay_ms(100); //開機(jī)延時Init(); //初始化Time0_Init(); //定時器 0 初始化while(1){Key_check(); //檢測按鍵Key3(); //K3 處理Key4(); //K4 處理Pattern();}XXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)26附錄 2 系統(tǒng)電路圖XXXX 大學(xué)本科畢業(yè)設(shè)計(jì)(說明書)27附錄 3 PCB 板圖- 1.請仔細(xì)閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
50 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 畢業(yè)論文 定稿 家庭 健康 供水 裝置 自動控制系統(tǒng) 開發(fā) 設(shè)計(jì)
鏈接地址:http://www.hcyjhs8.com/p-548091.html