瀏覽月:

7 月 2020

簡單使用AsyncElegantOTA 幫ESP做OTA

最近開發ESP8266時,線路都已經接好,如果要燒錄又要把線拔開,非常麻煩。

於是在Github上找尋有沒有能透過WiFi簡單OTA的library。

發現了一個好物 AsyncElegantOTA

主要功能就是透過AsyncTCP 與 AsyncWebServer , 做出非阻斷式的OTA更新功能。

完完全全符合我的需求阿,分享給大家

範例程式碼也相當簡單。

ESP8266的範例程式碼

ESP32的範例程式碼

 

只須include 相關library , 開啟WiFi後,再呼叫AsyncElegantOTA.begin(&server),最後在loop定期更新。

這樣即可完成OTA功能

連接 http://192.168.4.1/update 即可看到要你上傳bin file的頁面。

即可上傳bin file做OTA更新!

如何判讀ORP數據?

【如何判讀ORP數據?】

很多養殖戶都不太清楚ORP這個數字該如何判讀,
池中亞硝破表,卻不清楚該如何防治嗎?

ORP(氧化還原電位) – 養殖水體的環境健康指標

在聊ORP前,我們先聊聊養殖水體的水質污染主要成份,
其實就是飼料 – 蛋白質與碳水化合物

#當我們丟飼料到水裡,發生什麼變化?

飼料一部分被我們的魚蝦轉換成肉,長在自己身上,
其他的殘餌,與魚蝦排泄的糞便,一併沈澱到水池底部成為 #底泥

未提供相片說明。

底泥無氧,經過厭氧菌分解後,
就成為養殖戶人人害怕的 #氨氮與硫化氫

氨氮 再經過亞硝化菌的分解,就會成為 #亞硝酸(有毒)

亞硝酸經過硝化菌分解,成為 #硝酸(安全)

未提供相片說明。

亞硝為什麼會破表

氨氮(NH4) → 亞硝酸(HNO2) + 硝酸(HNO3)
其實就是一段氧化的過程。
我喜歡把這一段氧化的過程比喻成我們燃燒煤炭的過程。
燃燒其實就是一種氧化過程。

燃燒不完全時
C → CO(多)+CO2(少)

燃燒不完全時,因為氧氣不足,一氧化碳就比較多,就對我們有危害。

燃燒完全時
C → CO(少) + CO2(多)

燃燒完全時,產生出的氣體大部分都是二氧化碳,就對我們無害了。

把同樣的道理轉換成我們脫硝的過程

未提供相片說明。

氧化強度低

氨氮(NH4) → 亞硝酸(HNO2)(多) + 硝酸(HNO3)(少)

氧化強度高

氨氮(NH4) → 亞硝酸(HNO2)(少) + 硝酸(HNO3)(多)

很明顯的可以看出,其實亞硝破表的因數,就是因為氧化不完全。

我們該如何知道現在水體的氧化強度

透過ORP這個數字,可以很簡單的判讀出水體的氧化程度

未提供相片說明。

ORP > +150mv ,水體氧化程度足夠,水體健康,大部份的氨氮都轉換為硝酸。

+50mv < ORP < +150mv ,水體氧化能力欠佳,需要注意,亞硝比例會變多。

ORP < +50mv,水體氧化能力差,要趕緊處理,亞硝兩三天後就會拉高,且有弧菌爆發的危險。

未提供相片說明。