白春雨 吳紅海 趙懷冬 陳麗妮 韓丹
摘 要:隨著人們生活水平的提高,養(yǎng)魚已經(jīng)成為大多數(shù)人的愛好。針對目前市面上魚缸種類繁多,且多為手動控制的情況,本系統(tǒng)以STM32F103ZET6嵌入式微處理器為核心,并通過相應(yīng)的軟硬件設(shè)計,實現(xiàn)了對魚缸的智能控制,完成了對魚缸的溫度檢測、PH值檢測、水位檢測和自動喂食等功能,并可以將檢測到的數(shù)據(jù)通過GSM模塊發(fā)送到用戶的手機上,提供實時信息,大大提高了魚的存活率。
關(guān)鍵詞:智能魚缸;智能控制;STM32
隨著社會的發(fā)展,越來越多的人們開始著力尋求自己的業(yè)余生活以此來提高自己的生活質(zhì)量。因此養(yǎng)魚成為了大多數(shù)人的選擇,然而各種名貴的魚類對其生態(tài)環(huán)境具有很高的要求,可往往如此在一個很小的魚缸中是很難達到這類魚所需的所有生態(tài)環(huán)境之需,比如說魚缸中的水溫,換水時間,含氧量,食物量,PH值等,這些在一個魚缸中是很難達到一個自然平衡的狀態(tài),所以經(jīng)常導(dǎo)致養(yǎng)的一些名貴魚死亡而帶來一些不必要的損失。
由于在這種剛性需求的條件下,智能魚缸由此產(chǎn)生,它結(jié)合了多種魚類對不同生態(tài)環(huán)境的需求,如調(diào)控后還不滿足所需環(huán)境,主機就會繼續(xù)下達命令,然后繼續(xù)對生態(tài)環(huán)境進行調(diào)控,以達到一個允許的偏差范圍內(nèi)。在此生態(tài)系統(tǒng)的調(diào)控下可以大大的提高養(yǎng)魚存活率。
1 系統(tǒng)總體設(shè)計
本次設(shè)計基于STM32單片機,其屬于中低端的32位ARM微控制器,該系列芯片是意法半導(dǎo)體(ST)公司出品,其內(nèi)核是Cortex-M3。主要模塊有傳感器模塊、自動喂食模塊、主控模塊、電源模塊和顯示模塊及GSM模塊。系統(tǒng)總體框圖如下所示:
1.1 主控模塊
本課題的主控是STM32F103ZET6,屬中低端的32位ARM微控制器。Cortex-M3內(nèi)核采用ARM V7構(gòu)架,支持Thumb-2指令集。模塊主板集成了FSMC、TIMER SPI、I2C、 SDIO、ADC、DAC、RTC、DMA等眾多外設(shè)及功能。智能魚缸的控制系統(tǒng)最重要的是實時、精確,而STM32F103ZET6具有優(yōu)異的實時性能,84個中斷,16級可編程優(yōu)先級,足以滿足系統(tǒng)需求。
1.2 電源模塊
本模塊采用AS1117-3.3芯片,實現(xiàn)電壓由5V轉(zhuǎn)化為3.3V。AS1117-3.3是低壓差的線性穩(wěn)壓器,可以輸出穩(wěn)定的低壓。
1.3 顯示及GSM模塊
本模塊通過溫度傳感器、PH檢測器和水位檢測器測得的數(shù)據(jù),用GSM模塊的發(fā)送到用戶的手機上,以便實時掌握家中魚缸的情況。顯示模塊采用2.8寸的16位真彩觸摸顯示屏TFTLCD,并以STM32的FSMC接口控制TFTLCD的顯示。讀取短信需要將GSM模塊返回的 UNICODE 編碼字符串轉(zhuǎn)換為 GBK/ASCII 碼來顯示。
1.3.1顯示控制
在16位模式下,ILI9341采用RGB565格式存儲顏色數(shù)據(jù),這樣STM32的16位數(shù)據(jù),最低5位代表藍色,中間6位為綠色,最高5位為紅色。
在設(shè)置x坐標的時候,只需要帶2個參數(shù)即可,也就是設(shè)置SC即可,因為如果EC沒有變化,這里只需要設(shè)置一次即可(在初始化 ILI9341 的時候設(shè)置),從而提高速度。
選用FSMC的同步突發(fā)訪問方式,此時需要的設(shè)置的時間參數(shù)有 2 個:1)HCLK 與 FSMC_CLK 的分頻系數(shù)(CLKDIV),可以為 2~16 分頻;2)同步突發(fā)訪問中獲得第 1 個數(shù)據(jù)所需要的等待延遲(DATLAT)。
FSMC 綜合了 SRAM/ROM、PSRAM 和 NOR Flash 產(chǎn)品的信號特點,有 4 種不同的異步時序模型,這里使用異步模式 A(ModeA)方式來控制 TFTLCD,模式 A 的寫操作時序如圖2所示:
1.3.2 GSM短信的發(fā)送
當GSM模塊做完初始化工作后,首先要發(fā)出AT看是否連接到了GSM網(wǎng)絡(luò),得到OK答復(fù)后設(shè)置短消息發(fā)送模式,然后就要通過AT+CMGF來設(shè)置短消息的模式:AT+CMGF=0表示設(shè)置為PDU模式,AT+CMGF=1表示設(shè)置為TEXT文本模式,本文選擇的是TEXT文本模式,回復(fù)響應(yīng)為OK說明短消息格式設(shè)置成功。AT+CMGS為發(fā)送短消息的命令,AT+CMGS=“13755657812”表示短消息是發(fā)送給手機號碼為“13755657812”的手機用戶的。輸入16進制0x1A(ASCII碼)后回復(fù)響應(yīng)為OK就說明短信內(nèi)容為HELLO HELLO”的短消息已經(jīng)發(fā)送到手機號碼為“13755657812”的手機用戶成功。這樣GSM模塊就可以發(fā)送短消息了。
1.4 檢測模塊
1.4.1溫度檢測
溫度檢測采用T探頭采用DS18B20溫度傳感器芯片,芯片每個引腳均用熱縮管隔開,防止短路,內(nèi)部封膠,防水防潮,防生銹,不銹鋼頭引線1米,鋼管6*50,每個探頭經(jīng)過嚴格測試,3.0~5.0V供電,9~12位可調(diào)分辨率,側(cè)量精度:正負0.5度,感溫范圍寬-55~125攝氏度,無需外部元件,獨特的單總線接口,保證了溫度傳感器的高靈敏性,極小的溫度延遲?,F(xiàn)場溫度直接以“一線總線”的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性,適應(yīng)于惡劣環(huán)境現(xiàn)場溫度測試當溫度變化時,R21 的阻值隨之發(fā)生變 化,電橋平衡被破壞,電橋兩端的壓差經(jīng)過放大后輸出一個電壓。客戶可根據(jù)此電壓值反推出電橋之間壓差,計算出 R21 的阻值,在對照阻值不溫度的對應(yīng)表,得出溫度。
1.4.2 PH值檢測
PH傳感器模塊是一款價格低廉,使用方便,可進行二次開發(fā)的 PH 值計檢測傳感器模塊.該模塊可 以不多種類型的單片機ADC口連接。具有連線簡單、方便實用等特點。模塊具有電源指示燈、BNC接口,使用時,將 PH 傳感器連接到板載的 BNC 接口,傳感器的電極采用玻璃電極不參比電極組合在一起的塑殼丌可填充式復(fù)合電極,是 PH 計測量元件,用來測量水溶液中的氫離子活度,即PH值。
1.4.3水位檢測
液位傳感器是利用紅外光學原理,將檢測的液位,液面信號通過光學傳遞,轉(zhuǎn)換為電信號輸出,通過傳感器采集的電壓信號進行判斷液位情況。該傳感器設(shè)計緊湊,體積小巧,防水,圓柱外形方便鉆孔安裝;可以上置,下置,側(cè)向。斜向安裝。傳感器頭部光順,清洗容易,而且精度更優(yōu)越于浮子式液位開關(guān),可控精度在正負0.5mm之內(nèi),而現(xiàn)有常用的浮子式液位開關(guān)精度為正3.0mm。
液位安裝如下圖所示:
1.4.4自動喂食
本模塊主要實現(xiàn)主人不在家時自動投食的功能。該模塊有良好的用戶交互界面,可手動設(shè)定喂食的時間、次數(shù)、數(shù)量等,計時精確,工作穩(wěn)定。工作原理:模塊內(nèi)置精確的控制芯片,可根據(jù)設(shè)定的時間定時驅(qū)動微型減速電機,電機轉(zhuǎn)動時飼料掉落到魚缸,控制電機的轉(zhuǎn)動時間即可控制每次投食量。
模塊系統(tǒng)框圖如下:
2 結(jié)語
本系統(tǒng)采用紅外發(fā)射器和一系列傳感器,根據(jù)主控器stm32設(shè)定的程序指令控制魚缸中的生態(tài)系統(tǒng)平衡,讓魚缸中養(yǎng)的各種魚的成活率達到最高化。本文詳細介紹了該魚缸的結(jié)構(gòu)設(shè)置以及其工作方式,它具有成本低,可靠性高的特點,能最大化的保證魚缸中的生態(tài)平衡。
參考文獻:
[1] 支元,王登科.基于嵌入式系統(tǒng)智能魚缸的設(shè)計與實現(xiàn).電腦知識與技術(shù),2015,11(29).
[2] 郭朝暉,謝錦彪,林偉明.基于GSM的智能家居遠程防盜報警系統(tǒng).傳感器世界,2012,18(12).
注:河南科技大學大學生研究訓(xùn)練計劃(SRTP)經(jīng)費資助