目錄
1、功能實現2、系統設計方案3、系統硬件設計4、系統軟件設計5、APP設計和測試6、結論
1
功能實現
本設計是一款基于STM32的智能魚缸系統,使用傳感器獲取魚缸的關鍵信息,對信息進行處理和上傳手機端,借助于智能化產品的強大功能將觀賞魚飼養的門檻降低,能夠讓系統用戶在飼養觀賞魚的同時體會到從傳統魚缸飼養中得不到的樂趣。
2
系統設計方案
此款智能魚缸設計有如下功能:按鍵控制、溫度測量、Wi-Fi控制、模擬喂食、濁度檢測、光強檢測、屏幕顯示。
系統的整體連接圖如圖1所示。按鍵控制是通過按鍵操作實現魚缸進行喂食、開關燈、換水、增氧。Wi-Fi控制是通過ESP8266-01S模塊和機智云平臺搭配使用,在手機端控制魚缸和進行信息查詢。
系統硬件設計
3
系統的硬件設計原理圖如圖2所示。采用的主控芯片型號為STM32F103C8T6,該芯片是意法半導體公司(ST)推出的基于Cortex-M3內核的32位微控制器,其封裝型號采用LQFP48。
該芯片RAM容量為20kB,ROM其容量為64kB,擁有的主要硬件資源為37個GPIO、2個ADC、4個定時器/計數器、2個I2C和3個USART。
04
系統軟件設計
系統上電后,程序從主函數運行,對所需模塊進行功能封裝。在主函數調用各個模塊運行時需要相關函數實現對模塊的調用和相關數據的獲取。主函數流程圖如圖3所示。
主函數之外的其他軟件模塊包括:按鍵控制、光強獲取、OLED屏幕顯示和電機控制,具體如下:
01
按鍵控制
按鍵控制功能主要分兩部分,一是通過按鍵實現魚缸的控制,二是通過按鍵進行魚缸的配網。由于STM32具有大量的中斷資源,故采用中斷法實現按鍵的控制,以獲得更高的程序執行效率。
02
光強獲取
光強獲取模塊功能主要是獲取光強數據。它將光敏傳感器模塊輸出的數據傳到STM32,經STM32內部ADC對數據進行處理,將數據在屏幕顯示并上傳至手機端,最后根據光強控制LED的亮滅。
03
OLED屏幕顯示
摘錄:OLED屏幕通過IIC協議與STM32通信。首選初始化IIC總線,之后初始化OLED,通過IIC總線向OLED發送指令和數據以初始化OLED顯示屏。初始化包括設置OLED顯示模式、對比度、亮度等參數。STM32獲取相應數據并完成處理后,向OLED發送顯示數據,驅動OLED液晶顯示屏在對應位置顯示相關信息。
5
機智云平臺設計
機智云平臺設計實現的功能是將各傳感器數據上傳到手機端顯示,便可在手機上通過Wi-Fi下發指令控制智能魚缸。機智云平臺為開發者提供了自助式智能硬件開發工具與開放的云端服務,將智能硬件產品開發周期縮短,快速實現智能化。
5.1創建數據點
使用機智云平臺進行開發時,首先要創建數據點,并需要定義數據點的類型。設計通過機智云創建的數據點如表1所示。
表1機智云平臺創建的數據點
5.2 機智云代碼移植流程
用機智云平臺創建好項目后,進入到相關的界面,按照界面的提示進行操作,它即可自動幫助用戶生成Wi-Fi控制的相關代碼。在代碼包生成以后,需要對其中代碼進行移植。只有將代碼移植到工程文件里面后,才能實現預期的功能。機智云代碼的移植流程如圖4所示。
5.3 手機APP設計
手機APP是通過機智云平臺生成的。使用機智云平臺進行APP生成的方法非常簡單,不需要按照安卓APP開發那樣操作,對于不懂安卓應用的開發者來說是非常友好的。其配置流程如下:點擊創建移動應用;點擊右上方進行APP界面設置,將創建的項目進行關聯,最后保存退出;進入控制頁面選擇配網方式等,保存退出;點擊構建應用,等待應用構建完成,最終在手機端掃碼下載APP。各步驟操作及界面如圖5所示。
結束語
系統基于STM32F103C8T6,實現了智能魚缸所需的溫度測量、Wi-Fi控制、喂食等功能。通過使用性價比較高的Wi-Fi模塊配合機智云平臺實現了手機端控制。
-
傳感器
+關注
關注
2548文章
50664瀏覽量
751943 -
STM32
+關注
關注
2266文章
10871瀏覽量
354789 -
檢測
+關注
關注
5文章
4436瀏覽量
91368
發布評論請先 登錄
相關推薦
評論