李金武 宋新愛(ài)
摘要:本文針對(duì)普通魚(yú)缸的操作繁瑣、設(shè)備費(fèi)用高的問(wèn)題,以增加智能魚(yú)缸的效率為目標(biāo),通過(guò)對(duì)現(xiàn)有魚(yú)缸的研究設(shè)計(jì)了一款智能魚(yú)缸自動(dòng)控制系統(tǒng),達(dá)到魚(yú)缸自動(dòng)控制以減少用戶操作的目的。智能魚(yú)缸自動(dòng)控制系統(tǒng)使用PWM、DS18B20、定時(shí)器、看門狗等技術(shù)主要實(shí)現(xiàn)了以下功能:LED燈色控制、亮燈時(shí)間控制、水位監(jiān)測(cè)、定時(shí)殺菌、自動(dòng)供氧、水質(zhì)監(jiān)測(cè)、水溫監(jiān)測(cè)、水循環(huán)。該智能魚(yú)缸控制系統(tǒng)可在一定程度上節(jié)約成本、提高效率。多功能一體化的智能控制管理大大增加了產(chǎn)品的可靠性和可操作性,為觀賞者提供了極大的便利。
關(guān)鍵詞: 智能魚(yú)缸; 傳感器; 自動(dòng)化控制; 定時(shí)器
【Abstract】 Aiming at the problems of tedious operation and high equipment cost of common fish tank, ?and in order to increase the efficiency of intelligent fish tank, this paper designs an automatic control system of intelligent fish tank through the research of existing fish tank, so as to achieve the purpose of automatic control of fish tank to reduce the user's operation.
The intelligent fish tank automatic control system uses PWM, DS18B20, timer, watchdog and other technologies to realize the following functions: LED light color control, light on time control, water level monitoring, timed sterilization, automatic oxygen supply, water quality monitoring, water temperature monitoring, water cycle. The intelligent fish tank control system can save cost and improve efficiency to a certain extent. The multi-functional integrated intelligent control management greatly increases the reliability and operability of the product, and provides great convenience for viewers.
【Key words】 ?intelligent fish tank; sensor; automatic control; timer
0 引 言
當(dāng)下人們的生活節(jié)奏日趨加快,欣賞魚(yú)缸滿足用戶精神需求的同時(shí),手動(dòng)控制魚(yú)缸的清潔、喂食、水位控制、水溫控制等操作過(guò)于繁瑣[1]。針對(duì)水族生活環(huán)境的凈化和改善的設(shè)備有很多,目前市場(chǎng)上常用的魚(yú)缸控制系統(tǒng)有:過(guò)濾器、加熱器、加氧泵等,這些單獨(dú)工作的器件大多是非智能化改善水質(zhì)的設(shè)備,對(duì)于清潔魚(yú)缸內(nèi)污垢、喂食等操作大多需要人工處理,費(fèi)時(shí)費(fèi)力。同時(shí),如果僅僅把多個(gè)單獨(dú)的設(shè)備組裝成一套多功能的魚(yú)缸控制系統(tǒng),需要投入的費(fèi)用較大[2]。因此,設(shè)計(jì)開(kāi)發(fā)一款成本較低使用便利的智能魚(yú)缸自動(dòng)控制系統(tǒng),有很大的必要性。
本作品是利用溫度傳感器、水位檢測(cè)等技術(shù)設(shè)計(jì)一款基于Cortex-M3單片機(jī)的智能魚(yú)缸自動(dòng)控制系統(tǒng),本系統(tǒng)一般放置在家庭玻璃魚(yú)缸中,根據(jù)需求將系統(tǒng)分為燈色、燈光開(kāi)啟時(shí)間、溫度、殺菌燈、看門狗等多個(gè)自動(dòng)控制部分。文中設(shè)計(jì)本著節(jié)省能源、節(jié)省空間、提高效率、全面智能控制的目的,多個(gè)需求使用一個(gè)系統(tǒng)實(shí)現(xiàn),大大增加產(chǎn)品的實(shí)用性和可操作性。
1 相關(guān)研究
自1984年美國(guó)聯(lián)合科技公司提出智能家居概念以來(lái),全世界陸續(xù)開(kāi)啟了制造智能化家居系統(tǒng)的研究進(jìn)程[3]。國(guó)外的一個(gè)研究團(tuán)隊(duì)在2016年3月推出了一款名為FishBit的智能水族生態(tài)監(jiān)控系統(tǒng), 該系統(tǒng)由一個(gè)監(jiān)控器、一個(gè)插座控制器以及配套的手機(jī)端App組成。監(jiān)控器主要是對(duì)魚(yú)缸中的水溫等進(jìn)行實(shí)時(shí)監(jiān)測(cè),控制器的作用則類似于一個(gè)智能插座,通過(guò)手機(jī)端App來(lái)控制插在插座上對(duì)應(yīng)的加熱、供氧設(shè)備的開(kāi)關(guān)[4]。該系統(tǒng)并沒(méi)有把控制系統(tǒng)與相應(yīng)的控制設(shè)備集成起來(lái),導(dǎo)致用戶在使用前需要二次配置,包括外部鏈接各種控制設(shè)備以及App端的各個(gè)對(duì)應(yīng)控制端口的設(shè)置,過(guò)程繁瑣且容易出現(xiàn)配置錯(cuò)誤。此外,整套FishBit的售價(jià)過(guò)高,不易進(jìn)行推廣。國(guó)內(nèi)目前只有一家水族器材生產(chǎn)研發(fā)企業(yè)推出量款智能魚(yú)缸控制系統(tǒng)相關(guān)產(chǎn)品,是利用類似智能插座的控制器,需要用戶額外購(gòu)置加熱棒、供氧泵等設(shè)備插在控制器插座上,并由一臺(tái)手機(jī)大小的遙控器來(lái)進(jìn)行控制,控制范圍較小。國(guó)內(nèi)市場(chǎng)上僅有的幾款智能魚(yú)缸控制系統(tǒng)產(chǎn)品也都有各自的缺陷與不足[5]。
2 系統(tǒng)原理與設(shè)計(jì)
根據(jù)對(duì)魚(yú)缸功能的需求分析可知,基于Cortex-M3單片機(jī),共8個(gè)功能,智能魚(yú)缸原理如圖1所示。
本項(xiàng)智能魚(yú)缸自動(dòng)控制系統(tǒng)主要是在日常家庭中使用,一般放置在家庭玻璃魚(yú)缸中,根據(jù)需求將系統(tǒng)分為燈色、燈光開(kāi)啟時(shí)間、溫度、殺菌燈等多個(gè)自動(dòng)控制部分。外設(shè)LED燈,通過(guò)調(diào)節(jié)RGB數(shù)值顯現(xiàn)不同燈色制造最佳視覺(jué)效果;溫度的控制是通過(guò)設(shè)定Cortex-M3單片機(jī)中的定時(shí)器來(lái)設(shè)置LED的開(kāi)啟時(shí)間,主要根據(jù)觀賞者作息時(shí)間以及工作時(shí)間開(kāi)啟、關(guān)閉LED,實(shí)現(xiàn)在固定周期需要觀賞時(shí)開(kāi)燈,其余時(shí)間關(guān)燈,減少能量消耗,提高觀賞效率;不同品種的魚(yú)對(duì)溫度的需求也有所不同,利用Cortex-M3單片機(jī)提供的DS18B20溫度傳感器來(lái)控制魚(yú)缸內(nèi)的水溫,當(dāng)溫度到達(dá)設(shè)定上限時(shí)停止加熱,出現(xiàn)異常情況開(kāi)啟報(bào)警系統(tǒng),以此保證魚(yú)的長(zhǎng)久生存;為了給魚(yú)營(yíng)造健康、舒適的生存環(huán)境,系統(tǒng)外加殺菌燈,可依據(jù)魚(yú)的種類設(shè)定殺菌燈的開(kāi)啟、關(guān)閉時(shí)間,考慮到殺菌燈對(duì)人身體的危害性,設(shè)定工作時(shí)間在人的休息或者上班階段;此系統(tǒng)還設(shè)計(jì)了魚(yú)缸水位監(jiān)測(cè)的功能,魚(yú)缸水位過(guò)高或過(guò)低都會(huì)對(duì)魚(yú)的飼養(yǎng)產(chǎn)生影響,因此設(shè)置了水位報(bào)警器,超過(guò)警戒水位魚(yú)缸都會(huì)自動(dòng)報(bào)警,這也減少了觀賞者的工作量;此外,由于供氧的氣泡會(huì)對(duì)觀賞性大打折扣,因此對(duì)供氧時(shí)間也會(huì)依據(jù)觀賞者的作息進(jìn)行定時(shí)控制,在不需要觀賞的時(shí)間供氧,其余時(shí)間停止供氧。
3 功能設(shè)計(jì)與實(shí)現(xiàn)
3.1 魚(yú)缸水位監(jiān)測(cè)與報(bào)警
將2個(gè)同樣帶有10 K電阻的線路并聯(lián)在3.3 V電源線上,再分別將這2個(gè)線路接入Cortex-M3開(kāi)發(fā)板。其中,第一根線接高電平接最低點(diǎn),置于魚(yú)缸內(nèi)水中,設(shè)定最低水位,測(cè)最低警戒水位;第二根線接低電平接最高點(diǎn),置于魚(yú)缸內(nèi)水面上方,測(cè)最高警戒水位,魚(yú)缸水位低于最低點(diǎn)或超過(guò)最高點(diǎn)都會(huì)報(bào)警,提醒觀賞者該進(jìn)行抽水或蓄水;第三根線接地,在Keil5程序中添加中斷,監(jiān)測(cè)水位同時(shí)不影響其他程序的進(jìn)程 。水位監(jiān)測(cè)不添加時(shí)限周期,處于長(zhǎng)時(shí)間工作狀態(tài),為了避免水位過(guò)低影響魚(yú)類生存,過(guò)高會(huì)溢出魚(yú)缸,利用水位檢測(cè)器對(duì)魚(yú)缸水位高低進(jìn)行檢測(cè),以達(dá)到對(duì)水位進(jìn)行監(jiān)測(cè)的目的。
3.2 魚(yú)缸水質(zhì)渾濁度監(jiān)測(cè)
飼養(yǎng)者需要及時(shí)了解魚(yú)缸內(nèi)水質(zhì)變化,在本模塊中采用光敏元件將光信號(hào)轉(zhuǎn)化為電信號(hào)的傳感器,其敏感波長(zhǎng)在可見(jiàn)光波長(zhǎng)附近,包括紅外線波長(zhǎng)和紫外線波長(zhǎng)。研究中在此利用 ADC3 的通道 6(PF8)來(lái)讀取光敏二極管電壓的變化,得到環(huán)境光線的變化,并將得到的光線強(qiáng)度,顯示在 TFTLCD 上面。
系統(tǒng)水質(zhì)渾濁度監(jiān)測(cè)電路圖如圖2所示。
光信號(hào)的強(qiáng)弱可以反映水中渾濁度的變化,若光信號(hào)強(qiáng)表明水中透光性強(qiáng),即水的渾濁度較小;相反,若水不夠清澈,渾濁度較大影響透光性,光信號(hào)會(huì)比較弱。以此通過(guò)對(duì)魚(yú)缸內(nèi)水質(zhì)采用光敏傳感器進(jìn)行監(jiān)測(cè),一旦水質(zhì)參數(shù)超過(guò)正常范圍,進(jìn)行報(bào)警,提醒觀賞者要進(jìn)行換水,以達(dá)到監(jiān)控魚(yú)類的生長(zhǎng)環(huán)境的目的。
3.3 LED燈色與亮度控制
燈色控制是利用脈沖寬度調(diào)制(簡(jiǎn)稱脈寬調(diào)制,PWM)技術(shù)對(duì)燈色進(jìn)行控制,是微處理器的數(shù)字輸出來(lái)對(duì)模擬電路進(jìn)行控制的一種非常有效的技術(shù)。概括來(lái)說(shuō),就是對(duì)脈沖寬度的控制[6],PWM原理如圖3所示。
研究假定定時(shí)器工作在向上計(jì)數(shù) PWM模式,且當(dāng)CNT
燈光時(shí)間的控制是通過(guò)設(shè)定Cortex-M3單片機(jī)中的定時(shí)器來(lái)設(shè)置LED的開(kāi)啟時(shí)間,主要根據(jù)觀賞者作息時(shí)間以及工作時(shí)間開(kāi)啟、關(guān)閉LED,實(shí)現(xiàn)在固定周期需要觀賞時(shí)開(kāi)燈,其余時(shí)間關(guān)燈,以此減少過(guò)多能量消耗,提高觀賞效率。
3.4 間歇啟停殺菌燈控制
編寫定時(shí)器中斷服務(wù)函數(shù),通過(guò)該函數(shù)來(lái)處理定時(shí)器產(chǎn)生的相關(guān)中斷。這里使用的是更新(溢出)中斷,所以在狀態(tài)寄存器 SR 的最低位。在處理了中斷后應(yīng)該向 TIM3_SR 的最低位寫 0,來(lái)清除該中斷標(biāo)志[7]。
為了給魚(yú)營(yíng)造健康、舒適的生存環(huán)境,系統(tǒng)外加殺菌燈,可依據(jù)魚(yú)的種類設(shè)定殺菌燈的開(kāi)啟、關(guān)閉時(shí)間,考慮到殺菌燈對(duì)人身體的危害性,設(shè)定工作時(shí)間在人的休息或者上班階段。
使用魚(yú)缸殺菌燈,將水打入殺菌燈管中,越慢越好,確保每滴流出的水都經(jīng)過(guò)較長(zhǎng)時(shí)間殺菌燈的照射,如此才有良好的效果。殺菌燈使用壽命短,通常半年后效率就大不如前,使用定時(shí)器,一天使用個(gè)幾小時(shí)即可。
3.5 間歇供斷氧控制
由于供氧的氣泡會(huì)對(duì)觀賞性大打折扣,因此對(duì)供氧時(shí)間也會(huì)依據(jù)觀賞者的作息進(jìn)行定時(shí)控制,在不需要觀賞的時(shí)間供氧,其余時(shí)間停止供氧。
供氧模塊主要是由供氧開(kāi)關(guān)、自動(dòng)供氧開(kāi)關(guān)以及自動(dòng)供氧間隔時(shí)間這4個(gè)數(shù)據(jù)點(diǎn)來(lái)進(jìn)行控制。不同的是,供氧設(shè)備通電工作時(shí)需要供氧繼電器保持持續(xù)的通電。因此,在程序中設(shè)置供氧繼電器通電后維持5 min的通電狀態(tài),以保證供氧設(shè)備有足夠的工作時(shí)間。此外,在程序中設(shè)置自動(dòng)供氧的時(shí)間間隔為3 h。
4 系統(tǒng)測(cè)試與結(jié)果分析
4.1 系統(tǒng)測(cè)試
系統(tǒng)的硬件測(cè)試主要監(jiān)測(cè)電路板上的電路和各個(gè)元器件的連接是否正確,包括DS18B20測(cè)溫模塊的測(cè)試、LED燈周期開(kāi)關(guān)的測(cè)試、殺菌燈、供氧定時(shí)開(kāi)關(guān)燈的模塊測(cè)試等。對(duì)此擬做研究闡釋如下。
(1)DS18B20測(cè)溫模塊的測(cè)試。將加熱棒的溫度調(diào)至非正常溫度,DS18B20溫度傳感器的監(jiān)測(cè)溫度設(shè)置為30 ℃,等待魚(yú)缸中水溫升高,傳感器監(jiān)測(cè)到水溫過(guò)高,蜂鳴器會(huì)持續(xù)報(bào)警,直到向魚(yú)缸中添水為魚(yú)缸降溫至正常,可驗(yàn)證測(cè)溫模塊工作正常。
(2)LED燈周期開(kāi)關(guān)模塊的測(cè)試。設(shè)定LED燈的開(kāi)啟時(shí)間為19:00,關(guān)閉時(shí)間為19:10,等待時(shí)間到達(dá)時(shí)LED燈自動(dòng)關(guān)閉,可驗(yàn)證LED燈周期開(kāi)關(guān)正常。
(3)殺菌燈自動(dòng)控制模塊的測(cè)試。設(shè)定殺菌燈的開(kāi)啟時(shí)間為19:10,關(guān)閉時(shí)間為19:20,等待時(shí)間到達(dá)時(shí)殺菌燈自動(dòng)關(guān)閉,可驗(yàn)證殺菌燈的自動(dòng)控制正常。
(4)燈色和亮度控制模塊的測(cè)試。魚(yú)缸中選定紅色的魚(yú),為產(chǎn)生“魚(yú)紅水不紅”的效果,對(duì)PWM進(jìn)行調(diào)節(jié),燈色改變,顯現(xiàn)出極佳的視覺(jué)效果,可驗(yàn)證燈色控制模塊正常工作。
(5)自動(dòng)供氧模塊的測(cè)試。設(shè)定LED燈的開(kāi)啟時(shí)間為19:10,關(guān)閉時(shí)間為19:20,等待時(shí)間到達(dá)時(shí)供氧停止,可驗(yàn)證供氧的自動(dòng)控制正常。
(6)水位監(jiān)測(cè)模塊的測(cè)試。給魚(yú)缸水位進(jìn)行設(shè)定,警戒水位的信號(hào)區(qū)間為小于10 cm,降低魚(yú)缸的水面高度,開(kāi)發(fā)板接收到水面高度出現(xiàn)異常,蜂鳴器進(jìn)行報(bào)警,需要向魚(yú)缸中加水增高水位,可驗(yàn)證水位檢測(cè)模塊可正常工作。
(7)看門狗模塊監(jiān)測(cè)。系統(tǒng)內(nèi)設(shè)看門狗,測(cè)試開(kāi)發(fā)板死機(jī)可以自動(dòng)重啟,程序周期性重啟,避免系統(tǒng)死機(jī)對(duì)魚(yú)缸的安全有影響。