關(guān)鍵詞:智能魚缸,機(jī)智云,STM32單片機(jī)
目錄
1、功能實(shí)現(xiàn)2、系統(tǒng)設(shè)計方案3、系統(tǒng)硬件設(shè)計4、系統(tǒng)軟件設(shè)計5、APP設(shè)計和測試6、結(jié)論
1
功能實(shí)現(xiàn)
本設(shè)計是一款基于STM32的智能魚缸系統(tǒng),使用傳感器獲取魚缸的關(guān)鍵信息,對信息進(jìn)行處理和上傳手機(jī)端,借助于智能化產(chǎn)品的強(qiáng)大功能將觀賞魚飼養(yǎng)的門檻降低,能夠讓系統(tǒng)用戶在飼養(yǎng)觀賞魚的同時體會到從傳統(tǒng)魚缸飼養(yǎng)中得不到的樂趣。
2
系統(tǒng)設(shè)計方案
此款智能魚缸設(shè)計有如下功能:按鍵控制、溫度測量、Wi-Fi控制、模擬喂食、濁度檢測、光強(qiáng)檢測、屏幕顯示。
系統(tǒng)的整體連接圖如圖1所示。按鍵控制是通過按鍵操作實(shí)現(xiàn)魚缸進(jìn)行喂食、開關(guān)燈、換水、增氧。Wi-Fi控制是通過ESP8266-01S模塊和機(jī)智云平臺搭配使用,在手機(jī)端控制魚缸和進(jìn)行信息查詢。

系統(tǒng)硬件設(shè)計
3
系統(tǒng)的硬件設(shè)計原理圖如圖2所示。采用的主控芯片型號為STM32F103C8T6,該芯片是意法半導(dǎo)體公司(ST)推出的基于Cortex-M3內(nèi)核的32位微控制器,其封裝型號采用LQFP48。
該芯片RAM容量為20kB,ROM其容量為64kB,擁有的主要硬件資源為37個GPIO、2個ADC、4個定時器/計數(shù)器、2個I2C和3個USART。

04
系統(tǒng)軟件設(shè)計
系統(tǒng)上電后,程序從主函數(shù)運(yùn)行,對所需模塊進(jìn)行功能封裝。在主函數(shù)調(diào)用各個模塊運(yùn)行時需要相關(guān)函數(shù)實(shí)現(xiàn)對模塊的調(diào)用和相關(guān)數(shù)據(jù)的獲取。主函數(shù)流程圖如圖3所示。

主函數(shù)之外的其他軟件模塊包括:按鍵控制、光強(qiáng)獲取、OLED屏幕顯示和電機(jī)控制,具體如下:
01
按鍵控制
按鍵控制功能主要分兩部分,一是通過按鍵實(shí)現(xiàn)魚缸的控制,二是通過按鍵進(jìn)行魚缸的配網(wǎng)。由于STM32具有大量的中斷資源,故采用中斷法實(shí)現(xiàn)按鍵的控制,以獲得更高的程序執(zhí)行效率。
02
光強(qiáng)獲取
光強(qiáng)獲取模塊功能主要是獲取光強(qiáng)數(shù)據(jù)。它將光敏傳感器模塊輸出的數(shù)據(jù)傳到STM32,經(jīng)STM32內(nèi)部ADC對數(shù)據(jù)進(jìn)行處理,將數(shù)據(jù)在屏幕顯示并上傳至手機(jī)端,最后根據(jù)光強(qiáng)控制LED的亮滅。
03
OLED屏幕顯示
摘錄:OLED屏幕通過IIC協(xié)議與STM32通信。首選初始化IIC總線,之后初始化OLED,通過IIC總線向OLED發(fā)送指令和數(shù)據(jù)以初始化OLED顯示屏。初始化包括設(shè)置OLED顯示模式、對比度、亮度等參數(shù)。STM32獲取相應(yīng)數(shù)據(jù)并完成處理后,向OLED發(fā)送顯示數(shù)據(jù),驅(qū)動OLED液晶顯示屏在對應(yīng)位置顯示相關(guān)信息。
5
機(jī)智云平臺設(shè)計
機(jī)智云平臺設(shè)計實(shí)現(xiàn)的功能是將各傳感器數(shù)據(jù)上傳到手機(jī)端顯示,便可在手機(jī)上通過Wi-Fi下發(fā)指令控制智能魚缸。機(jī)智云平臺為開發(fā)者提供了自助式智能硬件開發(fā)工具與開放的云端服務(wù),將智能硬件產(chǎn)品開發(fā)周期縮短,快速實(shí)現(xiàn)智能化。
5.1創(chuàng)建數(shù)據(jù)點(diǎn)
使用機(jī)智云平臺進(jìn)行開發(fā)時,首先要創(chuàng)建數(shù)據(jù)點(diǎn),并需要定義數(shù)據(jù)點(diǎn)的類型。設(shè)計通過機(jī)智云創(chuàng)建的數(shù)據(jù)點(diǎn)如表1所示。
表1機(jī)智云平臺創(chuàng)建的數(shù)據(jù)點(diǎn)

5.2 機(jī)智云代碼移植流程
用機(jī)智云平臺創(chuàng)建好項目后,進(jìn)入到相關(guān)的界面,按照界面的提示進(jìn)行操作,它即可自動幫助用戶生成Wi-Fi控制的相關(guān)代碼。在代碼包生成以后,需要對其中代碼進(jìn)行移植。只有將代碼移植到工程文件里面后,才能實(shí)現(xiàn)預(yù)期的功能。機(jī)智云代碼的移植流程如圖4所示。

5.3 手機(jī)APP設(shè)計
手機(jī)APP是通過機(jī)智云平臺生成的。使用機(jī)智云平臺進(jìn)行APP生成的方法非常簡單,不需要按照安卓APP開發(fā)那樣操作,對于不懂安卓應(yīng)用的開發(fā)者來說是非常友好的。其配置流程如下:點(diǎn)擊創(chuàng)建移動應(yīng)用;點(diǎn)擊右上方進(jìn)行APP界面設(shè)置,將創(chuàng)建的項目進(jìn)行關(guān)聯(lián),最后保存退出;進(jìn)入控制頁面選擇配網(wǎng)方式等,保存退出;點(diǎn)擊構(gòu)建應(yīng)用,等待應(yīng)用構(gòu)建完成,最終在手機(jī)端掃碼下載APP。各步驟操作及界面如圖5所示。


結(jié)束語
系統(tǒng)基于STM32F103C8T6,實(shí)現(xiàn)了智能魚缸所需的溫度測量、Wi-Fi控制、喂食等功能。通過使用性價比較高的Wi-Fi模塊配合機(jī)智云平臺實(shí)現(xiàn)了手機(jī)端控制。
-
傳感器
+關(guān)注
關(guān)注
2573文章
54338瀏覽量
785575 -
STM32
+關(guān)注
關(guān)注
2305文章
11119瀏覽量
370990 -
檢測
+關(guān)注
關(guān)注
5文章
4783瀏覽量
93756
發(fā)布評論請先 登錄
向集成式轉(zhuǎn)變的智能魚缸
【深聯(lián)華杯】基于SLH89F5162的智能魚缸
智能魚缸
智能魚缸DIY制作教程
智能魚缸全開源方案
智能魚缸控制系統(tǒng)
智能魚缸解決方案
基于STM32智能魚缸監(jiān)控系統(tǒng)的設(shè)計_向鎳鋅
基于STM32的智能魚缸遠(yuǎn)程控制系統(tǒng)設(shè)計
基于STM32單片機(jī)的智能魚缸設(shè)計與研究
如何去實(shí)現(xiàn)一種基于STM32F103ZET6主控芯片的物聯(lián)網(wǎng)智能魚缸設(shè)計呢
開源教程 | 智能生態(tài)魚缸的設(shè)計
基于STM32設(shè)計的智能魚缸
STM32項目分享:智能魚缸/水族箱/水產(chǎn)養(yǎng)殖系統(tǒng)

基于STM32的智能魚缸設(shè)計
評論