色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

聚豐項目 > 基于FreeRTOS嵌入式系統的智能盆栽系統設計

基于FreeRTOS嵌入式系統的智能盆栽系統設計

本設計以基于FreeRTOS嵌入式操作系統的智能盆栽系統為對象,擬設計以stm32單片機為控制核心,采用IDT FS2012流量傳感器,通過使用FreeRTOS系統的創建任務、消息隊列、二值信號量、軟件定時器、低功耗模式等API函數實現智能盆栽系統的功能設定。主要實現的功能有:定時檢測土壤濕度值和供電電池電量值,并具有低壓報警功能,智能進入低功耗模式,可實現較為精確的定時或定量澆灌,并在OLED 屏幕上顯示系統的各狀態信息。

墨麟x 墨麟x

分享
1 喜歡這個項目
團隊介紹

墨麟x 墨麟x

團隊成員

王曉 學生

分享
項目簡介
本設計以基于FreeRTOS嵌入式操作系統的智能盆栽系統為對象,擬設計以stm32單片機為控制核心,采用IDT FS2012流量傳感器,通過使用FreeRTOS系統的創建任務、消息隊列、二值信號量、軟件定時器、低功耗模式等API函數實現智能盆栽系統的功能設定。主要實現的功能有:定時檢測土壤濕度值和供電電池電量值,并具有低壓報警功能,智能進入低功耗模式,可實現較為精確的定時或定量澆灌,并在OLED 屏幕上顯示系統的各狀態信息。
硬件說明

本設計共分為五個模塊,分別為電源供電模塊,土壤濕度和電池電量采集模塊,澆灌模塊,數據處理與顯示模塊,低壓報警模塊。

1、電源供電模塊:將3.7v鋰電池的供電電壓采用先升壓后降壓的策略為整個系統供電,因為鋰電池的輸出電壓電流總是不穩定的,所以使用DM13升壓模塊將電壓升到5v,然后使用DM07降壓模塊將5v降壓到3.3v。其中5v是給FS2012流量傳感器供電,3.3v給其余的模塊供電。


2、土壤濕度和電池電量采集模塊:使用電容式或電阻式的土壤濕度傳感器,輸出電壓模擬信號供單片機獲得土壤濕度信息,使用兩個100k的電阻串聯將鋰電池電壓分壓到stm32單片機ADC能采集的范圍內,然后使用算法計算鋰電池的電量值。給系統提供智能澆灌和低壓報警的前提條件。


3、智能澆灌模塊:此部分分別由電機驅動、供水水泵、FS2012流量傳感器組成,單片機通過輸出PWM使電機驅動模塊控制水泵的轉速進而控制水流速度,使用FS2012獲得水流的流速信息,處理傳感器的流速信息即可實現定量澆灌的作用,也就解決了市面上常見自動澆花器澆灌不可定量的問題。在低功耗模式時,使用stm32單片機控制MOS管斷開電機驅動和FS2012傳感器的供電,進而達到節能的目的。


4、數據處理與顯示模塊由stm32單片機最小系統和OLED屏幕組成,使用stm32單片機處理數據控制整個系統的運行并在OLED 屏幕上顯示系統狀態信息。


5、低壓報警模塊是采用有源蜂鳴器和發光led組成,當電池電壓過低時,系統發出聲光警報。


軟件說明

本設計使用keil5軟件為整個系統編寫程序代碼,共分為四個部分。分別是裸機底層驅動部分,中斷處理函數部分及FreeRTOS任務部分和邏輯處理部分。


1、首先編寫各底層驅動代碼,如采集土壤濕度和電池電量原始值的ADC底層驅動代碼,存儲用戶首次使用設定數據時的flash驅動代碼,記錄用戶選擇定時模式時記錄時間的定時器時基代碼,和定時喚醒系統進行監測使用的RTC鬧鐘事件驅動代碼,控制OLED 屏幕顯示的SPI驅動代碼和采集FS2012流量傳感器數據的軟件I2C通信代碼,控制電機驅動的PWM底層驅動代碼等。


2、將FreeRTOS嵌入式操作系統移植到本設計中,創建四個任務,分別為土壤濕度和電池電量檢測任務、系統信息顯示任務、智能澆灌任務、報警任務。 土壤濕度檢測任務在獲取由WK_UP按鍵中斷、RTC定時器鬧鐘事件發送的二值信號量后,由阻塞態變成運行態(因為檢測任務的優先級最高,所以在獲得信號量之后直接進入運行態)獲取土壤濕度值和電池電量值,然后進行解析通過消息隊列的方式發送給顯示任務。系統信息顯示任務在獲取由檢測任務發送的消息隊列后,將發送來的信息進行判斷和解析,若濕度值達到設定的閾值,則釋放智能澆灌任務的二值信號量,若電池電壓值低于閾值,則發送報警任務的二值信號量。若兩者都處于較安全的狀態,則OLED 屏幕顯示3秒后關閉,并進入睡眠模式。智能澆灌任務在接收到澆灌任務的二值信號量若發生了任務切換,則從阻塞態變為運行態,根據用戶設定的數據,進行定時或定量的澆灌,并于OLED 屏幕上顯示水流流速,澆灌完畢30秒后再釋放一次檢測任務的信號量查看土壤濕度是否處于合適的范圍。報警任務在獲取到系統信息顯示任務釋放的警報二值信號量之后,通過蜂鳴器和發光LED實現聲光報警,提示用戶更換電池或進行充電。


3、編寫WK_UP按鍵和用戶按鍵對應的外部中斷處理函數的代碼。在中斷處理函數中分別設置喚醒系統、發送檢測任務的二值信號量、設置智能盆栽系統的澆灌模式(定時、定量)及確定每次定量澆灌的流量值。設置RTC定時器的鬧鐘事件,RTC鬧鐘處理函數中每5小時發送一次檢測任務的二值信號量。


4、邏輯處理部分配合上文編寫的各功能代碼,實現智能盆栽系統的功能設定,完成此系統的設計。


演示效果

圖片1.png

圖片2.png

啟動后,首先會出現歡迎語,待系統初始化之后默認進入檢測模式,如圖:

圖片3.png

圖片4.png

首次啟動,需要進行模式設置。


1、長按 WK_UP 按鍵設置為定量澆灌模式,K1 按鍵增加設定量,K2 按鍵減少設定量,精度為 10ml,設定完畢之后,再單擊 WK_UP 按鍵保存數據到 flash 中。即設置固定的水量使用水泵和 FS2012 流量傳感器計算澆灌的時間,然后使用 FreeRTOS 的軟件定時器進行監控澆灌,如圖:


圖片5.png

圖片6.png

2、雙擊 WK_UP 按鍵設置為定時澆灌模式,K1 按鍵開始計時,K2 按鍵停止計時,精度為 500ms,注意此模式會自動打開水泵進行澆水,即首次使用會進行記錄澆灌的時間,以適應對容量并不熟悉的用戶,澆灌完畢之后即可按 K2 止計時和澆灌。記錄完畢之后,再單擊 WK_UP 按鍵會將計時時間保存到flash 中,再次充上電時不需要再次計時。如圖:


圖片7.png

圖片8.png

圖片9.png

非首次啟動時,不需要重復設置模式,因為會自動的進入日常使用模式,自動檢測并顯示土壤濕度值和電池電量值,若不需要澆灌,屏幕顯示三秒之后會自動進 FreeRTOS 的低功耗模式,OLED 顯示屏會進入熄滅狀態,流量傳感器 FS2012會關閉,水泵與電機驅動也將關閉,整個系統進入低功耗模式,等待定時時間到或等待 WK_UP 按鍵被按下喚醒系統進行檢測。

圖片10.png

當系統被喚醒之后,會自動檢測土壤濕度值和電池電量值,然后判斷是否需要進行澆灌和電池低壓報警,若需要進行澆灌則讀取 flash 中的數據。打開水泵和流量傳感器按照用戶的設定值進行澆灌,并在顯示屏上顯示流速。若電池電量較低,則開啟電池低壓的聲光報警,提示用戶進行充電或更換電池。進入低功耗模式之后,只有用戶按下 WK_UP 按鍵或 RTC 定時器鬧鐘事件響應時,才會再次檢測土壤濕度及電池電量值,并在 oled 屏幕上顯示系統狀態。

11.png


因視頻文件過大,所以上傳到其他網站,并將鏈接放置于此:https://www.bilibili.com/video/av39282581

請配合“智能盆栽澆灌系統說明書”文檔一起觀看,效果會更好。

智能盆栽澆灌系統說明書.pdf


附件

(1.33 MB)下載

評論區(0 )
主站蜘蛛池模板: 2012中文字幕手机在线| 久久精品天天爽夜夜爽| yellow视频免费观看| 91福利国产在线观看网站| 伊在香蕉国产在线视频| 亚洲手机在线人成视频| 亚洲精品久久久久无码AV片软件 | 成人影院久久久久久影院| 97在线免费观看视频| 9277高清在线观看视频| 5g天天影院天天看天天爽| 91区国产福利在线观看午夜| 中文字幕亚洲第一页| 3d无遮挡h肉动漫在线播放| 真人美女精美小穴| 97精品视频在线观看| 99久久全国免费久久爱| qvod在线电影| 古代荡乳尤物H妓女调教| 国产成+人欧美+综合在线观看| 国产成人ae在线观看网站站 | 妖精视频一区二区免费| 一本道在线综合久久88| 在线播放国产视频| 99久久re6热精品首页| FREE性丰满HD毛多多| 春水福利app导航| 国产人妻人伦精品9| 狠狠干狠狠色| 门鱼电影完整版免费版| 边做边爱免费视频| 韩日午夜在线资源一区二区| 暖暖视频免费观看高清完整版| 小鸟酱喷水| 99国产精品偷窥熟女精品视频 | 国产超碰精久久久久久无码AV| 久久午夜伦理| 卫生间被教官做好爽HH视频| 中文字幕在线观看网址| 国产精品乱人无码伦AV在线A| 免费人妻AV无码专区五月|