智能雨林缸,顧名思義,是指在魚缸內(nèi)養(yǎng)雨林植物,與傳統(tǒng)的水族缸不同的是智能雨林缸,具備的功能更多,能夠自動調(diào)節(jié)光照、溫濕度等環(huán)境因素,讓植物生長的更好。
本次通過ESP8266和機(jī)智云,進(jìn)行PCB設(shè)計,以最低成本自己開發(fā)智能控制器,實現(xiàn)智能雨林缸智能監(jiān)測溫濕度,通過手機(jī)App遠(yuǎn)程控制照明、噴水、噴霧、風(fēng)扇調(diào)節(jié),與此同時還設(shè)有手機(jī)控制功能、自動調(diào)節(jié)功能,以便更好的照顧雨林植物。
一、硬件部分
可以自己購買4路繼電器,及防水溫度傳感器DS18B20探頭,ESP12S小系統(tǒng)板。
繼電器:GPIO13(加熱管)GPIO12(循環(huán)電機(jī))GPIO16(噴淋電機(jī))GPIO5(燈光)配網(wǎng)按鍵:GPIO14(按下低電平)溫度傳感器:GPIO4(傳感器需要上拉電阻)
二、軟件部分
1、在機(jī)智云自助開發(fā)平臺創(chuàng)建“智能雨林缸”產(chǎn)品,登錄dev.gizwits.com,創(chuàng)建產(chǎn)品
2、創(chuàng)建數(shù)據(jù)功能點。為后MCU代碼移植、App控制提供基礎(chǔ)。
3、生成基于ESP8266 SOC方式的代碼包,以便后續(xù)代碼移植
三、APP開發(fā)
使用機(jī)智云進(jìn)行APP開發(fā)有多種方式,諸如使用機(jī)智云開源框架、機(jī)智云代碼自動生成工具,這兩種方式涉及到Java語言或Swift語言,我未選用。
而是采用了機(jī)智云賽博坦工具,無代碼,只需要進(jìn)行在線配置就能開發(fā)出一款個性化的App。具體而言需要進(jìn)行如下操作。
3.1 通過dev.gizwits.com 切換至機(jī)智云新版開發(fā)平臺,創(chuàng)建【移動應(yīng)用】
3.2 創(chuàng)建好移動應(yīng)用后,關(guān)聯(lián)設(shè)備到移動應(yīng)用里面。其他參數(shù)根據(jù)自己需求進(jìn)行更改
3.3 之后,回到機(jī)智云新版開發(fā)平臺主頁,選擇自己創(chuàng)建“智能雨林缸”,然后進(jìn)入如下頁面。將【產(chǎn)品開發(fā)-模組信息】:配置成樂鑫模組,注意只需要修改模組就行,熱點參數(shù)無需更改。
3.4 接下來,進(jìn)入【應(yīng)用頁面-控制頁面】:進(jìn)行App頁面修改,可以根據(jù)自己需求設(shè)置好控制模塊的大小以及圖標(biāo)。其余參數(shù)根據(jù)自己的需求修改。注意:每個頁面都需要保存。
3.5 App控制頁面定義完成后,接下來需要進(jìn)行參數(shù)配置,點擊【構(gòu)建應(yīng)用】,進(jìn)行應(yīng)用【應(yīng)用證書】配置,最后再進(jìn)行【應(yīng)用構(gòu)建】
當(dāng)應(yīng)用構(gòu)建“成功”后,可以下載此App安裝到手機(jī)上。這樣一個個性化的“智能雨林缸”App就開發(fā)完成了。
四、ESP8266接入機(jī)智云
這是進(jìn)行開發(fā)的最重要的步驟之一。為了讓“智能雨林缸”的控制器具有聯(lián)網(wǎng)功能,讓App能夠?qū)崿F(xiàn)遠(yuǎn)程控制,需要對基于ESP8266 SOC方案生成的代碼包進(jìn)行移植,最后要將移植后的代碼燒寫至ESP8266上。
由于涉及的代碼較多,我只進(jìn)行簡要說明,更具體的操作步驟、代碼請參考博客 https://club.gizwits.com/thread-166412-1-1.html
先將ESP8266 SOC代碼包進(jìn)行解壓縮,接下來進(jìn)行移植
1、采用IDE方式進(jìn)行開發(fā)編譯:解壓過后即可使用,路徑不能有中文。2、修改編譯參數(shù):打開根目錄下面的Makefile文件,然后修改23到27行的內(nèi)容。3、按鍵部分無需修改,因為自動生成的代碼就是gpio14按鍵長按短按進(jìn)行網(wǎng)絡(luò)配置。但繼電器引腳的初始化我們寫在按鍵函數(shù)的初始化里面, 初始化為輸出模式。4、在gizwits_product.c和gizwits_product.h增加全局變量。5、在gizwits_product.c的gizwitsEventProcess函數(shù)里面對開關(guān)狀態(tài)進(jìn)行緩存。6、處理斷電開機(jī)之后開關(guān)以及各項參數(shù)的初始化。主要是利用flash讀取獲取參數(shù)。數(shù)據(jù)狀態(tài)存放在flash,后續(xù)教程及程序會有存儲體現(xiàn)。初始化主要修改userInit函數(shù)。7、在gizwits_product.c新增DS18B20驅(qū)動函數(shù)、溫度傳感器的函數(shù)。 8、在gizwits_product.c的userHandle函數(shù)里面對GPIO輸出點,溫度采集,flash存儲以及邏輯控制進(jìn)行編寫。9、修改完代碼之后ctrl+B進(jìn)行編譯固件編譯。10、利用樂鑫燒錄軟件將生成的固件燒錄到ESP8266里面。
參數(shù)參考下圖,注意參數(shù)不能有錯。
下載硬件接線如下表下載模式。
記住通電瞬間就要保持這個狀態(tài)才是下載模式。
11、程序燒錄完成之后,通過按鍵長按觸發(fā)airlink配網(wǎng)(或短按觸發(fā)softap配網(wǎng)),在APP選擇對應(yīng)的配網(wǎng)進(jìn)行網(wǎng)絡(luò)配置及綁定設(shè)備。綁定后進(jìn)入設(shè)備即可進(jìn)行采集和控制。
五、實物展示展示
視頻演示:https://v.youku.com/v_show/id_XNTgzNTI0NzIzMg==.html
作為水族圈的一員,養(yǎng)過觀賞魚、玩過自然水景,現(xiàn)在自己動手做一個“智能雨林缸”特別有成就感,機(jī)智云和ESP8266的改造成本又低,真是太棒了。
原文標(biāo)題:開源教程:基于ESP8266和機(jī)智云的智能雨林缸,成本低、高智能
文章出處:【微信公眾號:機(jī)智云開發(fā)者】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
-
溫度傳感器
+關(guān)注
關(guān)注
48文章
2940瀏覽量
156081 -
控制器
+關(guān)注
關(guān)注
112文章
16367瀏覽量
178109 -
機(jī)智云
+關(guān)注
關(guān)注
2文章
590瀏覽量
26412
原文標(biāo)題:開源教程:基于ESP8266和機(jī)智云的智能雨林缸,成本低、高智能
文章出處:【微信號:IoTMaker,微信公眾號:機(jī)智云開發(fā)者】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論