單片機(jī)控制大棚溫室監(jiān)測系統(tǒng)的設(shè)計與實(shí)現(xiàn).pdf
123 ELECTRONICS WORLD 技 術(shù) 交 流 隨著現(xiàn)代農(nóng)業(yè)的迅速發(fā)展 溫室大棚的 培育技術(shù)也越來越成熟 傳統(tǒng)的溫室參數(shù)控 制幾乎完全靠人工來來進(jìn)行控制 這種落后 的技術(shù)不僅浪費(fèi)了大量的人力物力 而且生 產(chǎn)效率低下 本設(shè)計將采用STC89C52單片機(jī) 作為主控芯片 與所選溫濕度傳感器連接 監(jiān)測并顯示溫室的溫濕度值 并通過WIFI技 術(shù) 實(shí)現(xiàn)手機(jī)APP遠(yuǎn)程監(jiān)測與控制大棚溫室 系統(tǒng)的工作情況 該技術(shù)的使用來使溫室大 棚監(jiān)測系統(tǒng)更加完善 1 引言 眾所周知 環(huán)境參數(shù)的影響不僅僅是在 工業(yè)生產(chǎn)上 而且在農(nóng)業(yè)的發(fā)展上都是非常 重要的 而環(huán)境參數(shù)的控制在其中所起到的 作用 不言而喻 是舉足輕重的 只有將農(nóng) 作物的生存環(huán)境調(diào)節(jié)到一個適宜的范圍 才 能達(dá)到溫室培育 增加產(chǎn)量與質(zhì)量的目的 本文結(jié)合了單片機(jī)技術(shù) 傳感器技術(shù) 自動控制技術(shù)以及無線WIFI技術(shù) 設(shè)計了 以 STC89C52為核心的溫室大棚智能監(jiān)測控 制系統(tǒng) 該系統(tǒng)主要用來采集溫室內(nèi)的各項(xiàng) 實(shí)時環(huán)境參數(shù) 并及時的反應(yīng)參數(shù)的變化 以便能夠?qū)ζ渥龀龊线m的調(diào)整 保證一個良 好的生長環(huán)境 將系統(tǒng)應(yīng)用到溫室中來控制 溫室內(nèi)的環(huán)境 無疑為溫室內(nèi)植被生長提供 了更加適宜的環(huán)境 因?yàn)橛行┲脖槐仨氃谀?些特定環(huán)境下才能夠生存乃至得到更好的生 長 在這樣的情況下安裝環(huán)境監(jiān)測裝置 對 環(huán)境參數(shù)進(jìn)行實(shí)時調(diào)控是非常有必要的 2 系統(tǒng)硬件電路設(shè)計 2 1 總體設(shè)計 系統(tǒng)主要由溫濕度檢測模塊 WIFI無線 傳輸模塊 LCD12864顯示驅(qū)動模塊 降溫風(fēng) 扇器和報警蜂鳴器等接口電路 APP終端顯 示 單片機(jī)主控模塊作為系統(tǒng)的核心 是用來 分析和控制各個模塊 并通過無線傳輸網(wǎng)絡(luò)進(jìn) 行遠(yuǎn)程APP控制 系統(tǒng)框架圖如圖1所示 2 2 系統(tǒng)原理 在本次設(shè)計的系統(tǒng)中 通過STC89C52單 片機(jī)來對溫室大棚內(nèi)溫濕度傳感器所得的監(jiān)測 信息進(jìn)行查詢 然后 相應(yīng)地處理輸入信號 然后LCD1286液晶顯示模塊能夠進(jìn)行現(xiàn)場顯 示 并且將傳感器收集的溫度和濕度得到的 數(shù)據(jù)信息與預(yù)先由鍵盤輸入設(shè)置的溫度和濕 度范圍進(jìn)行比較 如果測量的參數(shù)值超過設(shè) 定的上限和下限 報警電路將報警 并啟動冷 卻風(fēng)扇和加濕或除濕指令 與此同時 手機(jī)終 端的APP也會有所提示 王江紅 朱麗君 孫 學(xué)用 基于DS18B20恒溫監(jiān)控系統(tǒng)的設(shè)計與實(shí) 現(xiàn) 湖北農(nóng)業(yè)科學(xué) 2013 3 系統(tǒng)軟件電路設(shè)計 3 1 軟件結(jié)構(gòu) 本系統(tǒng)的軟件部分包括MCU 主程序 LCD 顯示驅(qū) 動子程序 鍵盤處理子程序 A D數(shù)模轉(zhuǎn)換程序 無線 WIFI傳輸子程序 蜂鳴器報警子程序 溫度報警范圍設(shè) 定子程序以及有關(guān)傳感器的子程序等 3 2 主程序整體設(shè)計 在本設(shè)計的主程序中 其主要思想是 首先 應(yīng)該先 定義MCU 的一些主要的端口 與此同時 還應(yīng)當(dāng)根據(jù)所需 要的功能 啟動中斷 并且設(shè)置相應(yīng)的中斷優(yōu)先級以便于 MCU每次都能在初試狀態(tài)下開始執(zhí)行程序 不再受上次執(zhí) 行程序結(jié)果的干擾 這是微控制器能夠正確成功執(zhí)行程序 的最基本并且是最重要的條件 在初始化完成之后 調(diào)用 各子程序來實(shí)現(xiàn)傳感器初始化 讀寫數(shù)據(jù) 溫度轉(zhuǎn)換 濕 度轉(zhuǎn)換 讀取A D轉(zhuǎn)換器 溫濕度顯示 判斷是否報警 設(shè)置鍵盤 傳輸數(shù)據(jù)等功能 主程序循環(huán)執(zhí)行每個模塊 鍵盤設(shè)置的溫度和濕度范圍模塊 通過中斷切換 在 服務(wù)程序的中斷過程期間 連續(xù)掃描掃描按鍵 如果有一 個鍵觸發(fā)器 將開始調(diào)用鍵盤來處理程序 王江紅 朱麗 君 孫學(xué)用 基于DS18B20恒溫監(jiān)控系統(tǒng)的設(shè)計與實(shí)現(xiàn) 湖北農(nóng)業(yè)科學(xué) 2013 溫度和濕度測量程序暫停 鍵盤 處理程序完成后 重新進(jìn)入溫濕度測量主程序 主程序流程如圖2所示 主程序如下 MAIN MOV IE 84H 開CPU中斷和外部中斷1 MOV IP 00H MOV TCON 00H 令外部中斷1為電平觸發(fā) MOV SP 70H 設(shè)棧頂指針 LCALL TEMPERATURE 讀溫度子程序 LCALL TRANSFORM 溫度轉(zhuǎn)換子程序 LCALL 12864LCD 調(diào)用12864lcd讀濕度 LCALL TRANS 濕度值轉(zhuǎn)換 SETB P3 0 復(fù)位濕度蜂鳴器 SETB P3 4 復(fù)位溫度蜂鳴器 MOV P1 0FFH 復(fù)位溫度正常指示燈 單片機(jī)控制大棚溫室監(jiān)測系統(tǒng)的設(shè)計與實(shí)現(xiàn) 海口經(jīng)濟(jì)學(xué)院 胡晶滔 圖1 系統(tǒng)框架圖 124 ELECTRONICS WORLD 技 術(shù) 交 流 p1 0 溫度異常指示燈p1 7 傳感器存在標(biāo)志位p1 1 溫度設(shè)定上下值 切換 標(biāo)志位p1 6 LCALL DISPLAY LCD顯示屏顯示子程序 JMP WARNING 蜂鳴器報警子程序 圖2 主程序流程框圖 3 3 安卓APP終端設(shè)計 APP用戶終端設(shè)計軟件運(yùn)行流程圖如圖3所示 在這個設(shè)計中 我使用的開發(fā)環(huán)境是Eclipse 該開發(fā)軟件是一 個開源開發(fā)項(xiàng)目軟件 其主要用于高度集成的工具開發(fā) 可以提供 功能齊全 商業(yè)化的工業(yè)平臺 該軟件的主要組件包括三個 Eclipse 項(xiàng)目 Eclipse工具項(xiàng)目以及Eclipse技術(shù)項(xiàng)目 它具體包括四個組件 EclipsePlatform JDT Java Development Tools CDT和 PDE 它的四 個成分有不同的效果 JDT的作用主要是支持Java開發(fā) 是其中的全功能 的 J AVA集成開發(fā)環(huán)境插件 CDT用于支持C 語言的開發(fā) PDE用于支持 插件的開發(fā) Eclipse Platform 提供了一個通用的開發(fā)平臺 又是一個 開放且可擴(kuò)展的IDE 鮑蕾蕾 基于Android終端的物聯(lián)網(wǎng)數(shù)據(jù)管理系統(tǒng) 研究 北方工業(yè)大學(xué) 2013 提供有建造塊以及構(gòu)造并運(yùn)行集成軟件 開發(fā)工具的基礎(chǔ) 刁文廣 LINGER協(xié)議的分析和實(shí)現(xiàn) 西安建筑科技大 學(xué) 2010 其具有二次開發(fā)的特性 方便用戶進(jìn)行修改測試 在我所設(shè)計的APP界面中 所顯示界面布局比較簡單 只需要在 eclipse中的layout中設(shè)置相關(guān)按鈕button 設(shè)置為 連接 斷開兩個按鈕 并賦予其跳轉(zhuǎn)之后的參數(shù) 設(shè)置成功后 在斷開連接時 即未工作狀態(tài) 時 如圖4所示 4 系統(tǒng)調(diào)試分析 4 1 系統(tǒng)的硬件調(diào)試 本設(shè)計使用Proteus仿真軟件對所使用的STC89C52單片機(jī)系統(tǒng)進(jìn)行仿 真 當(dāng)我們使用Proteus繪制好電路原理圖后 再調(diào)入已經(jīng)編譯好的目標(biāo)代碼 文件 格式為 HEX 即可以在Proteus的電路原理圖中看到模擬的實(shí)物運(yùn) 行狀態(tài)和過程 張德寧 袁洪波 李麗華 基于STC89C52和 TSL2561的雞 舍光照測控系統(tǒng) 農(nóng)機(jī)化研究 2011 硬件系統(tǒng)設(shè)計調(diào)試包括單片機(jī)與各外圍電路的接線 各子模塊接線 包括單片機(jī)時鐘電路模塊 復(fù)位電路模塊 溫濕度傳感器模塊 LCD 液晶屏顯示顯示 設(shè)置鍵盤模塊 WIFI傳輸電路模塊 控制電路模塊和 蜂鳴器報警電路模塊等 4 2 系統(tǒng)的軟件調(diào)試 在該設(shè)計中 我們使用了KEIL軟件這種匯編軟件來對源程序進(jìn)行編 寫 編譯調(diào)試 再將源程序生成格式為 HEX的目標(biāo)文件 使用KEIL軟件來對系統(tǒng)軟件進(jìn)行開發(fā)和調(diào)試的大致步驟 如下 l 首先啟動Vision4 進(jìn)入KEIL軟件的集成開發(fā)環(huán)境 2 點(diǎn)擊edit 進(jìn)入KEIL內(nèi)置的文本編輯器中 就可以在 編輯器中進(jìn)行相應(yīng)的程序源文件的編輯 王海寧 基于單片 機(jī)的溫度控制系統(tǒng)的研究 合肥工業(yè)大學(xué) 2008 3 下一步進(jìn)行工程的建立 指定我們所使用的MCU進(jìn) 行開發(fā) 然后對工程進(jìn)行相關(guān)設(shè)置 圖3 APP用戶終端軟件運(yùn)行流程圖 圖4 未連接時界面布局 下轉(zhuǎn)第127頁 127 ELECTRONICS WORLD 技 術(shù) 交 流 開 LED指示燈滅 外接水泵停止運(yùn)行 4 軟件設(shè)計 軟件設(shè)計部分采用C 語言編程 遵循模塊化編程思想 系統(tǒng)主要由主 程序 按鍵掃描子程序 水位控制子程序和顯示子程序等模塊組成 主程序流程圖如圖5 所示 首先系統(tǒng)初始化 設(shè)置外部中斷INT1 為下降沿觸發(fā)方式 設(shè)置定時器T0為 16位計數(shù)器模式 T0計數(shù)初值 為 0 并完成 LCD的初始化設(shè)置 接著使用while 1 語句實(shí)現(xiàn)如下無限 循環(huán) 首先由單片機(jī)I O 端口P3 2引腳置位HC SR04超聲波模塊Trig引 腳 10us觸發(fā)測距 P3 3端口等待與其相連接的Echo引腳變高電平 便 啟動定時器開始計時 并打開外部中斷INT1 然后執(zhí)行掃描按鍵子程 序 檢測是否有按鍵輸入 接著對EX1的值進(jìn)行判斷 若EX1 1 返 回繼續(xù)按鍵掃描 若EX1 0 關(guān)定時器T0 計算待測水位值 根據(jù)所 測水位值調(diào)用水位控制子程序?qū)λ贿M(jìn)行調(diào)節(jié) 驅(qū)動給水水泵或排水 水泵控制水的注入或流出 使系統(tǒng)水位維持在合理范圍 同時對不同 的水位狀態(tài)進(jìn)行聲光報警 隋美蓉 等 基于單片機(jī)的超聲測距安全系 統(tǒng)實(shí)驗(yàn)設(shè)計與實(shí)現(xiàn) 實(shí)驗(yàn)技術(shù)與管理 2017 最后 調(diào)用顯示子程 序 實(shí)時顯示當(dāng)前水位值 顯示單位為厘米 超聲波模塊Echo引腳由高電平變低電平時 觸發(fā)外部中斷 表 明成功接收回波信號 此時定時器T0的計數(shù)值即為超聲波的渡越時 間 在外中斷處理程序中關(guān)閉外中斷并讀取定時器T0的值 系統(tǒng)通 過 time TH0 8 TL0 s time 3 4 200 語句即可計算出水面與 超聲波模塊之間的距離 圖5 主程序流程圖 5 結(jié)語 本文設(shè)計了一款以單片機(jī)AT89C51為核心器件的超聲波水位控制 系統(tǒng) 該系統(tǒng)硬件電路簡單 可靠性高 具有良好的人機(jī)交互界面 能實(shí)時顯示水位 水位參數(shù)調(diào)整靈活方便 黃怡 等 雙向通信控制 系統(tǒng)的實(shí)驗(yàn)教學(xué)設(shè)計與實(shí)踐 實(shí)驗(yàn)技術(shù)與管理 2018 作為一種 非接觸式測距 該系統(tǒng)不僅可用于各種工況條件下的水位監(jiān)控 還 可用于其他物位的監(jiān)測 具有良好的開放性及應(yīng)用推廣價值 作者簡介 劉光平 1978 男 江西撫州人 碩士 講 師 研究方向 計算機(jī)控制 上接第124頁 圖5 APP調(diào)試圖 4 接著將工程設(shè)置好后 就可以對其進(jìn)行編譯 調(diào)試 當(dāng)確認(rèn)對工程所進(jìn)行的編譯沒有出現(xiàn)error之后 就可以在file 中點(diǎn)擊生成格式為 HEX的文件了 在Proteus電路仿真圖中雙 擊圖中STC89C52單片機(jī) 就會出現(xiàn)一個添加文件程序的對話框 最后將 所生成的格式為 HEX目標(biāo)代碼文件添加進(jìn)去 4 3 安卓APP終端調(diào)試 1 接通硬件電路電源并打開手機(jī)APP界面 2 連接硬件所設(shè)置的WIFI并且核定鏈接IP以及端口編號 我所設(shè) 定的WIFI名稱為AI THINKER 516E76 3 在連接所設(shè)定的WIFI之后 點(diǎn)擊連接按鈕 手機(jī)APP將跳轉(zhuǎn) 并且 自動更新所監(jiān)測的數(shù)據(jù)信息 APP連接成功調(diào)試圖如圖5 所示 5 結(jié)語 本設(shè)計主要利用環(huán)境數(shù)據(jù)的遠(yuǎn)程監(jiān)測以及自動調(diào)控的功能 來實(shí)現(xiàn)自 我調(diào)節(jié)適合溫室大棚中農(nóng)作物生長所需的適宜環(huán)境條件 利用溫濕度傳感器 來監(jiān)測溫濕度的高低 當(dāng)所監(jiān)測環(huán)境參數(shù)達(dá)到設(shè)定值時 蜂鳴器起到報警功 能 并驅(qū)動控制電路進(jìn)行溫濕度的控制 經(jīng)測試 實(shí)時監(jiān)測效果良好 數(shù)據(jù) 準(zhǔn)確 并且可以通過WIFI無線傳輸模塊將現(xiàn)場數(shù)據(jù)傳輸?shù)绞謾C(jī)終端APP 實(shí) 現(xiàn)了現(xiàn)場數(shù)據(jù)的遠(yuǎn)程監(jiān)控 項(xiàng)目名稱 ??诮?jīng)濟(jì)學(xué)院2018年度大學(xué)生創(chuàng)新創(chuàng)業(yè)計劃訓(xùn)練項(xiàng)目 項(xiàng)目編號 201812308023 作者簡介 胡晶滔 1997 現(xiàn)就讀于??诮?jīng)濟(jì)學(xué)院電子信息工 程專業(yè)