国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于嵌入式單片機的物聯(lián)網(wǎng)智能魚缸設計

2024-04-16 03:25:04姚光業(yè)黃永華廖志賢黃國現(xiàn)冼世豪
電子制作 2024年6期
關鍵詞:下位斷電魚缸

姚光業(yè),黃永華,廖志賢,黃國現(xiàn),冼世豪

(廣西師范大學,廣西桂林,541004)

0 引言

本著科技為人服務的理念,本系統(tǒng)設計了一套基于物聯(lián)網(wǎng)的生態(tài)魚缸系統(tǒng),用戶可以通過微信小程序?qū)崿F(xiàn)對魚缸內(nèi)水溫、水質(zhì)、光照等的監(jiān)測,同時可以通過微信小程序完成喂食、開關補光燈、加熱、制冷、補充氧氣、過濾水體等操作[2]。這套系統(tǒng)可以使人們外出的同時又能完成魚缸生態(tài)的養(yǎng)護,極大的便利了人們的生活,在智能家居領域具有重大研究意義。

1 系統(tǒng)的方案設計

本系統(tǒng)設計一套基于STM32 的物聯(lián)網(wǎng)智能魚缸系統(tǒng),系統(tǒng)由下位機STM32、上位機微信小程序以及通信中介 OneNet云平臺三部分構(gòu)成,作為一套智能家居設備,在擁有普通魚缸自動控制的基本功能之外,本系統(tǒng)設計著重還開發(fā)了遠程控制以及備用電源等功能。本設計由多個模塊組成一套完整的物聯(lián)網(wǎng)魚缸系統(tǒng),結(jié)構(gòu)圖如圖1 所示。

圖1 系統(tǒng)框圖

圖2 電源電路

圖3 主控IO 口分配

圖4 VBAT 供電電路

圖5 按鍵與LED 電路

圖6 繼電器端口及OLED 顯示

2 硬件設計

物聯(lián)網(wǎng)智能魚缸系統(tǒng)的硬件要求不同于其他產(chǎn)品,其部分傳感器要放置水中,比如 TDS 傳感器的探頭、DS18B20探頭,而光敏傳感器需要置于合適的采光位置,并且魚缸附近水汽潮濕,為保證電路板的安全,魚缸系統(tǒng)采用分布式傳感器布局。主要采樣模塊采用可插拔式連接,在單個模塊故障時,可直接替換,降低成本,使整套電路系統(tǒng)擁有更長的使用壽命。

■2.1 電源電路

物聯(lián)網(wǎng)智能魚缸系統(tǒng)所需的電壓為5V。本系統(tǒng)供電可通過兩路Type-C 供電,一路為家庭正常用電,通過大功率手機充電器供電,保證系統(tǒng)正常運行。另一路為備用電源供電,備用電源通過繼電器接入系統(tǒng)。在未斷電時,通過編程使繼電器吸合在常開端,在斷電時,繼電器自動吸合到常閉端,而常閉端接入備用電源,此時系統(tǒng)由備用電源供電,通過這種設計使系統(tǒng)在斷電時能自動切換至備用電源供電。

■2.2 主控電路

■2.3 RTC 時鐘供電電路

當系統(tǒng)意外斷電時,為保證時鐘的運行時間準確,在系統(tǒng)底板中配置了RTC 時鐘供電電路,其主要圍繞紐扣電池設計外圍電路。兩個二極管1N4148 保證電路的安全,104電容對紐扣電池進行濾波,保證供電平穩(wěn)[8]。

■2.4 控制與指示電路

物聯(lián)網(wǎng)智能魚缸的控制與提示功能電路由7 路LED 和4 路按鍵構(gòu)成,7 路LED 分別代表系統(tǒng)運行狀態(tài)、運行模式,以及喂食、恒溫、充氧、補光的狀態(tài)。4 路按鍵可以完成菜單的切換、加減、確認,可以保證在微信小程序無法(停電)連接下位機時也可以完成手動控制喂食、充氧等操作,以便于維持魚缸生態(tài)系統(tǒng)的運行。

■2.5 各子模塊及輔助電路

本系統(tǒng)的子模塊控制開關主要通過6 個光耦隔離的繼電器來控制。單片機輸出高電平時即打開子模塊,反之關閉子模塊。本系統(tǒng)還采用1.3 寸的OLED 屏幕來進行人機交流。還設置有串口打印端口,以便于程序運行中的數(shù)據(jù)傳至上位機,方便調(diào)試和分析。

3 軟件設計

■3.1 下位機程序結(jié)構(gòu)

物聯(lián)網(wǎng)智能魚缸的下位機以 STM32 為核心進行開發(fā),本作品的下位機開發(fā)為固件庫開發(fā),在程序設計中采用的是模塊化編程的思維,主要分為循環(huán)和中斷兩大部分,其余外部設備的編程均以模塊的形式進行調(diào)用,圖7 為下位機程序的總體結(jié)構(gòu)。在單片機啟動復位后,先對系統(tǒng)及其外部設備進行初始化,隨后進入循環(huán)部分,遇到中斷信號則優(yōu)先處理中斷事件。之所以分為中斷和循環(huán),是因為中斷具有優(yōu)先級,作品的部分功能需要優(yōu)先處理,并且中斷不占用CPU資源,可以極大提高程序的運行速度[6~9]。

圖7 下位機程序結(jié)構(gòu)

■3.2 模塊執(zhí)行流程

(1)按鍵控制流程

本作品采用 4 路按鍵對下位機進行控制,4 路按鍵對應的職能分別為:KEY0 菜單鍵、KEY1 加鍵、KEY2 確認鍵、KEY3 減鍵。菜單鍵功能為切換菜單值;加減鍵功能為在對應的頁面加減閾值和模式標志位;確認鍵為手動開啟對應外部設備以及切換手動自動等操作模式。4 路按鍵為外部中斷觸發(fā),各按鍵的控制流程如圖8 所示。

圖8 按鍵控制流程

(2)光照檢測模塊

立項與可行性研究報告的申報及批復是項目實施的前提,如果沒有上級主管的批復,意味著項目沒有“正名”,接下來的資金、政策、人力等支持都是不可能的,也是“不合規(guī)不合法的”。因此,在農(nóng)業(yè)基建項目管理中,甲方單位必須特別重視前期立項及可行性研究報告編制,確保報告文本的科學性、項目實施的可行性、立項的成功率。一旦立項及可行性研究報告得到上級部門批復,項目就可以依此獲得相應的資金支持。同時,甲方還可以此批復去與地方行業(yè)管理部門溝通,取得項目實施所必須的合法證件,而這在農(nóng)業(yè)基礎項目建設中是必不可少的環(huán)節(jié)。

本系統(tǒng)采用靈敏性光敏電阻傳感器,使用的是AO 模擬量輸出模式,通過單片機采集模擬量ADC,通過AD 轉(zhuǎn)換即可得到準確的光照強度數(shù)值。ADC 轉(zhuǎn)換公式如下所示:

(3)水質(zhì)檢測模塊

本系統(tǒng)采用TDS 水質(zhì)檢測模塊,將采集到的數(shù)值作為參考可以直接判斷水質(zhì)情況。水質(zhì)檢測時易受到溫度等其他因素的影響,因此在算法中應做溫度補償[1~3],如式(2),Ta為校正系數(shù),T為溶液溫度,除此之外,TDS 探頭的個體差異也會對數(shù)值造成影響,因此在算法中必須做校正,校正公式如式(3)和式(4),其中Va是測試時ADC 口經(jīng)過均值濾波后的輸出電壓,Vb時校正后的電壓。再通過ADC 轉(zhuǎn)換,即可得出水質(zhì)系數(shù)。

(4)水溫檢測模塊

本系統(tǒng)采用的是DSB18B20 模塊,通過1-wire 通信,讀取兩個字節(jié)就可以得到準確的溫度值[1~4]。

(5)WiFi 模塊并網(wǎng)流程

本系統(tǒng)采用的是ESP8266 的STA 模式并網(wǎng)[2],已家庭路由器為中介,實現(xiàn)上位機與下位機的通信。數(shù)據(jù)的收發(fā)則使用透傳模式,即上下位機通過串口完成通信。ESP8266的并網(wǎng)流程如圖9 所示。在下位機系統(tǒng)上電時,ESP8266進行初始化時會按照圖9 的順序進行一次AT 指令連接。在家庭用電斷電后,利用單片機的定時器進行定時,每10s進行一次AT 指令連接和OneNet 云平臺連接,在家庭電力和WiFi 恢復,ESP8266 重新連接成功后,標志位置 0,則定時器停止計時,完成重新聯(lián)網(wǎng)的功能。

圖9 WiFi 模塊并網(wǎng)流程

4 云平臺設計

OneNet 云平臺作為上下位機的中介平臺[5]。本系統(tǒng)采用EDP 通信協(xié)議,在EDP 協(xié)議下創(chuàng)建產(chǎn)品,獲取產(chǎn)品ID與接口API 后,在上下位機操作ID 與API 即可與云平臺實現(xiàn)通信。云平臺的數(shù)據(jù)接收是被動的,在上下位機配置好數(shù)據(jù)流,云平臺接收到后會顯示對應的數(shù)據(jù)流,傳輸?shù)臄?shù)據(jù)分別為光照強度、水體溫度、水質(zhì)系數(shù)、今日喂食次數(shù)、水溫閾值以及過濾閾值。

5 微信小程序設計

微信小程序的結(jié)構(gòu)設計由HTML 編程完成,在微信開發(fā)者工具中該編程語言為WXML,通過WXML 編程可以完成小程序的模塊布局以及部分事件的綁定,構(gòu)成小程序的函數(shù)均可以在微信開發(fā)者社區(qū)平臺獲取。本作品采用是flex 布局,flex 布局是flexibleBox的縮寫,意思是彈性布局[4~7]。該布局的模塊分布為等距離順序往下,本作品在設計優(yōu)先展示用戶狀態(tài)和魚缸環(huán)境信息,最后才是命令下發(fā)模塊。小程序的結(jié)構(gòu)布局和樣式如圖10 所示。

圖10 微信小程序界面

6 備用電源切換與網(wǎng)絡重連

本系統(tǒng)的初衷便是保證魚缸生態(tài)的平衡,因此必須考慮到在家庭斷電的情況下如何保持生態(tài)魚缸正常工作的問題。本系統(tǒng)給出了合理的解決方案。通過一個繼電器便可解決這一問題,在前面供電系統(tǒng)中,已經(jīng)談到繼電器的常閉斷連接系統(tǒng),在系統(tǒng)斷電后,繼電器會自然吸合至常閉端,此時備用電源接入下位機系統(tǒng),系統(tǒng)重新運作,并在下位機程序中因停電判定為停電狀態(tài),通過程序使繼電器不吸合至常開端,完成了備用電源的切換。備用電源切換過程中并不會導致用戶設置的閾值丟失,系統(tǒng)會自動讀取FLASH 里存儲的閾值設置。

由備用電源供電后,系統(tǒng)仍然會在初始化時運行聯(lián)網(wǎng)程序。若聯(lián)網(wǎng)失敗,則系統(tǒng)的聯(lián)網(wǎng)和斷電標志位分別為1,保證備用電源的供電。在斷網(wǎng)后,通過程序的定時器計時,每10s 進行一次AT 指令和云平臺連接操作,直至家庭供電恢復和聯(lián)網(wǎng)成功。這時聯(lián)網(wǎng)和斷電的標志位為0,繼電器將會吸合置常開端,斷開備用電源,系統(tǒng)由市電供電。斷電斷網(wǎng)處理流程如下圖11 所示。

圖11 斷電斷網(wǎng)處理流程

7 系統(tǒng)主要功能測試

本系統(tǒng)主要測試三端平臺的通信速度。通過不斷提高外部光照強度,對比同一時間內(nèi)三端平臺接受的光照數(shù)值來測試通信速度的快慢[2]。數(shù)據(jù)如表1 所示,測試發(fā)現(xiàn)三端平臺的數(shù)據(jù)通信會存在500ms 左右的延時,此延時符合作品延時的預期范圍,不會給作品的實際使用數(shù)據(jù)采集帶來影響,測試結(jié)果證明系統(tǒng)具有良好的數(shù)據(jù)傳輸能力。同一時間內(nèi)同一條件下三端平臺的接收到的數(shù)據(jù)如圖12 所示。

表1 微信小程序控制響應率

圖12 三端平臺通信測試

8 總結(jié)與展望

本作品是一套基于STM323 的物聯(lián)網(wǎng)智能魚缸系統(tǒng),其可以通過微信小程序或云平臺實現(xiàn)魚缸的環(huán)境監(jiān)測和遠程控制,并且在斷電時可以切換備用電源供電,具有一定的實用性,有一定的市場潛力。若想將本作品投入市場,可以考慮一下發(fā)展方向:

(1)搭建產(chǎn)品專屬的服務器;

(2)采用大尺寸觸摸屏代替按鍵控制;

(3)增加下位機語音交互功能,提高作品的智能化程度。

以上為本作品進一步發(fā)展的思考,希望隨著物聯(lián)網(wǎng)的進一步發(fā)展,智能魚缸系統(tǒng)能逐漸完善,然后步入市場,走進千萬家,給每一位用戶帶來更便利的生活。完整作品圖如圖13 所示。

圖13 智能魚缸

猜你喜歡
下位斷電魚缸
魚缸里的殺手
小讀者(2020年2期)2020-11-26 09:34:07
魚缸水
幽默大師(2020年11期)2020-11-26 06:12:08
高壓感應電動機斷電重啟時的瞬態(tài)仿真
防爆電機(2020年3期)2020-11-06 09:07:36
家里的小魚缸
發(fā)射機房監(jiān)控系統(tǒng)之下位機
景洪電廠監(jiān)控系統(tǒng)下位機數(shù)據(jù)傳輸網(wǎng)絡改造
圍觀黨“下位”,吐槽帝“登基”
北京紀事(2016年5期)2016-05-07 13:17:02
冰立方魚缸
一種STS新的斷電快速檢測方法
電源技術(2015年12期)2015-08-21 08:58:52
CAN總線并發(fā)通信時下位機應用軟件設計
烟台市| 通道| 依安县| 台北市| 会东县| 奉新县| 兰溪市| 鸡泽县| 杭锦后旗| 乌兰浩特市| 洮南市| 蒙山县| 中牟县| 四子王旗| 永定县| 曲周县| 板桥市| 康乐县| 工布江达县| 松原市| 吴江市| 阿拉善盟| 青海省| 安泽县| 河间市| 冕宁县| 绥棱县| 新闻| 襄樊市| 和平区| 中牟县| 建水县| 松原市| 长宁区| 平武县| 静乐县| 武宁县| 星子县| 晋中市| 沙湾县| 巴中市|