余雪梟,劉彥忠,唐逍蔚,盧良瑋,卞影杰
?
智能生態(tài)魚缸系統(tǒng)設(shè)計與實現(xiàn)
余雪梟[1],劉彥忠,唐逍蔚,盧良瑋,卞影杰
(齊齊哈爾大學(xué) 計算機與控制工程學(xué)院,黑龍江 齊齊哈爾 161006)
根據(jù)人們對水族箱的需要,設(shè)計開發(fā)一種物美價廉的魚缸智能控制系統(tǒng).該系統(tǒng)是以AT89C52和AT89C2051單片機為控制核心,結(jié)合傳感器技術(shù),設(shè)計出的集多種功能于一體的智能控制系統(tǒng).運用PID算法調(diào)整控制設(shè)備,實現(xiàn)對魚缸相應(yīng)參數(shù)的實時控制.
智能控制系統(tǒng);傳感器;芯片
生態(tài)魚缸是一個需要配備多條件不間斷精密控制體系,已經(jīng)發(fā)展成為一個結(jié)構(gòu)完整、功能齊全的微型生態(tài)環(huán)境系統(tǒng)[1].目前市場上已經(jīng)有控制魚缸水溫、照明、排水及充氧的控制器.但由于種類繁多,功能不統(tǒng)一,投入費用高,安裝繁瑣,使用復(fù)雜無法提高整體性能,而且大多都是非智能化的控制系統(tǒng),因此無法滿足人們對自動控制魚缸的要求.針對魚缸的日常護理要求,本文設(shè)計一種以魚缸中水溫、水中溶氧量、水生植物的光合作用以及水質(zhì)的控制為研究對象,基于單片機的智能性自動控制系統(tǒng)[2].
1 生態(tài)魚缸總體設(shè)計思想
魚缸生態(tài)環(huán)境自動檢測及智能控制系統(tǒng)的任務(wù)是將被控制對象設(shè)定水溫度、水中氧氣含量、光照以及水質(zhì)參數(shù)值等,通過自動檢測方式自動調(diào)節(jié)相關(guān)參數(shù),使魚缸始終保持良好的生態(tài)環(huán)境[3].系統(tǒng)設(shè)計是以AT89C系列單片機[4-5]為控制核心,結(jié)合溫度傳感器技術(shù)和激光傳感器技術(shù)完成相應(yīng)功能.
1.1 硬件設(shè)計
系統(tǒng)從整體性能、抗干擾能力和穩(wěn)定性方面考慮,對系統(tǒng)進行設(shè)計實現(xiàn).系統(tǒng)采用2個核心處理器聯(lián)機控制,分別為主控制部分和數(shù)據(jù)輸入輸出部分.其中主控制部分采用單片機AT89C52,P0口8位用來進行數(shù)碼顯示輸出方式;P1口中P1.0和P1.1連接外部時鐘芯片,P1.2~P1.7連接控制按鍵,全部為輸入方式;P2口控制指示燈顯示狀態(tài)的變化,P3口承擔串行通信的任務(wù).輸入輸出控制部分采用單片機AT89C2051,P1口分別用來讀取溫度傳感器(DS18B20)、水位傳感器和光敏電阻等相應(yīng)的數(shù)值,P3口用來連接控制繼電器和串行通訊.
1.2 軟件設(shè)計
針對兩大部分功能不同的特點,控制部分AT89C52內(nèi)部的存儲器主要用來存放中央控制模塊,人機交互按鍵控制模塊,時鐘控制模塊,數(shù)碼顯示模塊和數(shù)據(jù)存儲/看門狗/復(fù)位模塊.輸入輸出部分的AT89C2051內(nèi)部的存儲器主要用來存放系統(tǒng)檢測元件的輸入模塊,系統(tǒng)的控制輸出模塊以及通訊模塊.
2 生態(tài)魚缸硬件設(shè)計
本設(shè)計是以單片機為核心[6]259處理器,通過與其它電路連接構(gòu)成一個可以在魚缸外部獨立工作,并保持魚缸內(nèi)環(huán)境穩(wěn)定的控制系統(tǒng)[4]15.該控制系統(tǒng)的硬件設(shè)計可分為控制部分和輸入輸出部分(見圖1).
2.1 雙機通訊
為了減少電磁干擾,使系統(tǒng)能夠不間斷穩(wěn)定工作,控制強電采用繼電器來實現(xiàn).由于設(shè)備的數(shù)量比較多,很容易產(chǎn)生電磁干擾,除了采用必要的屏蔽手段以外,選擇恰當?shù)耐ㄓ嵎绞揭卜浅V匾?/p>
串行通訊具有抗干擾能力強,傳輸距離遠的優(yōu)點[6]260.再加上傳感器采集的數(shù)據(jù)量雖然不少,但是經(jīng)過CPU的差分比較算法,需要傳輸?shù)臄?shù)據(jù)卻不是很大.輸入輸出控制器AT89C2051采用定時采集,集中發(fā)送的方式,采用全雙工模式[7].波特率可以根據(jù)實際需要進行設(shè)置,默認為9 600 bps,所以效率很高,大大提高了控制的精度.對于主控部分發(fā)來的控制信號,采用中斷處理,最大程度地保證了處理的及時性.從根本上解決了外部設(shè)備帶來的干擾,同時也可以適應(yīng)比較復(fù)雜的外部環(huán)境,以確保系統(tǒng)穩(wěn)定運行.
2.2 輸出控制
系統(tǒng)的輸出控制和執(zhí)行器由繼電器控制,通過三極管電路完成控制[8].為了最大限度地減小對系統(tǒng)的干擾,控制信號要區(qū)分優(yōu)先級控制.根據(jù)控制的外部設(shè)備不同采用集中式仲裁原則,基于計數(shù)器定時查詢方式,初始化程序會根據(jù)繼電器驅(qū)動的外部設(shè)備給出初始優(yōu)先級.當查詢出控制信號后會根據(jù)優(yōu)先級進行延時處理,然后再依次執(zhí)行,全部執(zhí)行完畢后再恢復(fù)對傳感器的數(shù)據(jù)采集,確保整個電路不會遭受電涌影響.
3 生態(tài)魚缸軟件設(shè)計
主程序主要完成以下功能:(1)對系統(tǒng)進行初始化;(2)程序運算模塊;(3)采樣檢測模塊;(4)輸出控制程序;(5)主從機通訊以及數(shù)據(jù)處理;(6)看門狗控制;(7)參數(shù)顯示.
3.1 工作狀態(tài)程序
首先判斷控制狀態(tài),在手動控制狀態(tài)時根據(jù)意愿可任意選取工作狀態(tài).自動控制狀態(tài)時對水質(zhì)、水溫和光照3項進行檢測判斷是否需要處理,3項可以并行處理,以最短的時間保障生態(tài)環(huán)境的穩(wěn)定.
工作狀態(tài)自動控制算法:
檢測控制模式mode;
If mode=1 用戶自主設(shè)定各項參數(shù); //手動控制模式
Else //自動控制模式
{
If 水質(zhì) 超出標準范圍
If 水溫 超出標準范圍
If 光照 超出標準范圍
并行設(shè)置 水質(zhì),水溫,光照的取值為標準范圍的均值;
Else 設(shè)置 水質(zhì),水溫的取值為標準范圍的均值;
Else 設(shè)置 水質(zhì)的取值為標準范圍的均值;
}
3.2 看門狗模塊
對于保證系統(tǒng)的穩(wěn)定運行,看門狗電路十分重要.本設(shè)計選用芯片X5045進行監(jiān)控.設(shè)定監(jiān)控總時間長度和監(jiān)控檢測的時間間隔;每間隔一個時間間隔,定時讀取傳感器得數(shù)據(jù);調(diào)用自動控制程序?qū)︳~缸狀態(tài)進行調(diào)整一次;直到完成監(jiān)控總時間,報警提示用戶“完成本次監(jiān)控”,若用戶未響應(yīng),每間隔30 min報警一次,直至用戶重新設(shè)置.
4 實驗效果
設(shè)計魚缸生態(tài)控制系統(tǒng)見圖2,系統(tǒng)運行過程中測試數(shù)據(jù)與理想值進行對比見表1.
4.1 溫度檢測
DS18B20的檢測結(jié)果與理想溫度對比,顯示DS18B20的測試溫度比理想溫度的范圍小了1 ℃左右.因為加熱棒工作需要一個過程才能達到升溫效果,所以不能等到溫度低于最小值以后再加熱.而當溫度達到28.5 ℃時就要停止加熱,此時加熱棒還處于一個比較高的溫度,所以溫度不會隨著繼電器的斷開而降低,還要繼續(xù)升高一點,確保不會超過最大值而使生物環(huán)境惡化.
4.2 透明度的檢測
透明度是保證水族箱具有良好生態(tài)環(huán)境的關(guān)鍵.當透明度低于4.5 m的時候,水泵開始工作,把水通過凈化裝置再循環(huán)回來;當水質(zhì)的透明度達到5.5 m的時候停止循環(huán),不是水質(zhì)越清潔越好,水質(zhì)過于清潔會導(dǎo)致水里的植物缺少養(yǎng)料而使魚生長減緩,影響生態(tài)平衡
4.3 光照檢測
光照低于800 lm可以啟動輔助光源,但是沒有硬性要求.因為必要的光源可以促進植物的光合作用,以提高水中的溶氧濃度,但是溶氧濃度過高也有負面影響,容易使魚類體表受損影響觀賞性.因此,輔助光源除了促進光合作用以外,能夠提高觀賞效果即可,對光照度沒有硬性要求.
5 結(jié)語
本文設(shè)計的魚缸智能控制系統(tǒng),采用雙CPU結(jié)構(gòu),結(jié)合傳感器技術(shù),對水環(huán)境進行監(jiān)控.其智能化程度高,可實現(xiàn)對水族的日常養(yǎng)護,維持生態(tài)環(huán)境的基本穩(wěn)定性.具備水過濾,水充氧,恒定水溫,補充光照,無需添加魚餌等功能,降低了人力成本.該系統(tǒng)可以通過鍵盤設(shè)置來切換手動/自動雙重模式,豐富的人機界面增加了養(yǎng)魚過程中的趣味性,收到較好效果.
[1] 孔祥洪,王偉杰,宋連偉,等.觀賞魚缸智能控制器的仿真設(shè)計[J].實驗室研究與探索,2013,32(5):14
[2] 王顯峰.單片機系統(tǒng)中的硬件抗干擾措施研究[J].自動化技術(shù)與應(yīng)用,2015,34(3):110-111
[3] 王振宇.基于單片機的數(shù)據(jù)通信串口研究[J].電子技術(shù)與軟件工程,2015(7):256-257
[4] 趙立瓊.基于AT89C51和AT89C2051水位控制系統(tǒng)的設(shè)計[J].寧波職業(yè)技術(shù)學(xué)院學(xué)報,2010,14(2):14-15
[5] 凌志浩,張建正.AT89C52單片機原理與接口技術(shù)[M].北京:高等教育出版社,2011:24,277-278
[6] 郭軍團.MCS-51單片機課的教學(xué)探討分析[J].教育教學(xué)論壇,2013(36):259-260
[7] 王云飛.DS18B20溫度傳感器的應(yīng)用設(shè)計[J].電子世界,2014(12):355-358
[8] 蘇暢.單片機驅(qū)動X25045接口及匯編程序設(shè)計[J].黑龍江生態(tài)工程職業(yè)學(xué)院學(xué)報,2013,26(2):28-29
The design and implementation of intelligent ecological fish tank system
YU Xue-xiao,LIU Yan-zhong,TANG Xiao-wei,LU Liang-wei,BIAN Ying-jie
(School of Computer and Control Engineering,Qiqihar University,Qiqihar 161006,China)
According to people's needs,the design and development of a cheap fish tank intelligent control system. The intelligent control system is designed including many functions,combined with the sensor technology,and based on AT89C52 and AT89C2051 single chip microcomputer. The control device is controlled by the PID algorithm,and the real-time control of the corresponding parameters of the fish tank is realized.
intelligent control system;sensor;chip
TP302
A doi:10.3969/j.issn.1007-9831.2016.01.009
2015-10-28
齊齊哈爾大學(xué)大學(xué)生創(chuàng)新訓(xùn)練項目(201510221063);齊齊哈爾大學(xué)教學(xué)研究項目(2015036)
余雪梟(1997-),男,湖南臨湘人,在讀本科.E-mail:1923839702@qq.com
劉彥忠(1971-),男,黑龍江齊齊哈爾人,副教授,碩士,從事網(wǎng)絡(luò)通訊、圖像三維重建技術(shù)研究.E-mail:lyzself@sina.com.