Auto Tank: 傻瓜滴定機

samuel0318

🏅🔰🔰
註冊時間
2018/05/28
文章
232
按讚
219
經驗點數
356
位置
新北土城
金幣
932
魚缸大小
2 呎底部過濾缸
系統類別
柏林+厚砂
生物種類
魚, LPS
PH84_210807000429_eef40.jpg


PH84_210422180507_ade6c.png




我想要做一台滴定機,構思的過程中,腦袋裡時常浮現出小時候的廣告畫面,李立群那一句「它傻瓜,你聰明」這句經典台詞讓人懷念,嗯,那麼就用「傻瓜滴定機」來幫這台機器命名🙂

參考了目前市面上有的滴定機的功能,大概就是在特定時間或固定時間去指定,要去滴定多少毫升的液體。但要怎麼樣去決定滴多少液體呢?多半是根據以下步驟來執行:
  1. 測量Ca, Mg, KH 濃度,
  2. 一週後,再測量Ca, Mg, KH 濃度,可推算出一天的消耗量 (Ca, Mg 是 ppm /day, KH 是dKH/day)
  3. 根據「海缸小幫手」App 來計算出一天要添加的氯化鈣、氯化鎂和小蘇打的公克數
  4. 調配 Ca, Mg, KH 的滴定液
  5. 計算每天要滴定Ca, Mg, KH 滴定液的毫升數
  6. 將滴定量輸入滴定機,每日定時執行

用 Ca 來當個例子:
  1. 測量 Ca 濃度為 440 ppm
  2. 一週後,再測量Ca 濃度為 426 ppm ,可推算出一天的消耗量是 (440-426)/7 = 2 ppm/day
  3. 使用「海缸小幫手」App 來計算,150L 的魚缸水量,提升 2 ppm,一天要添加的無水氯化鈣是 0.834 g /day
  4. 調配 Ca 滴定液,100g 無水氯化鈣配 900g淡水 是 10% 的濃度
  5. 計算每天要滴定 Ca 滴定液的毫升數, 0.834 / 10% = 8.34 ml 的 Ca 滴定液
  6. 設定滴定機,8.34 ml 分兩次滴定,00:00 時滴定 4.2 ml, 12:00 時滴定 4.2 ml

而上述例子是維持穩定的滴定方式,要是很久沒有進行魚缸維護工作了,測得 Ca 濃度為 330 ppm,我想把濃度提高到 450 ppm, 我得先把 Ca 的濃度在一週內拉高到 450 ppm, 再轉換為維持穩定的滴定方式。或者是測得 Ca 濃度為 500 ppm,我得先暫停滴定,等到濃度降低到 450 ppm 再繼續滴定....真的是夠囉....我能不能把上述的計算過程,全部用程式自動計算就好了呢?


一、我想要的功能

二、系統架構

三、硬體設計

四、軟體設計

五、滴定計畫產生原理

六、滴定量換算原理

七、自動排程原理

八、PCB Layout!

九、滴定管排空校正

十、3D 列印機殼

十一、開源囉!

(未完待續)
 
最後編輯:
PH84_210422180507_ade6c.png




我想要做一台滴定機,構思的過程中,腦袋裡時常浮現出小時候的廣告畫面,李立群那一句「它傻瓜,你聰明」這句經典台詞讓人懷念,嗯,那麼就用「傻瓜滴定機」來幫這台機器命名🙂

參考了目前市面上有的滴定機的功能,大概就是在特定時間或固定時間去指定,要去滴定多少毫升的液體。但要怎麼樣去決定滴多少液體呢?多半是根據以下步驟來執行:
  1. 測量Ca, Mg, KH 濃度,
  2. 一週後,再測量Ca, Mg, KH 濃度,可推算出一天的消耗量 (Ca, Mg 是 ppm /day, KH 是dKH/day)
  3. 根據「海缸小幫手」App 來計算出一天要添加的氯化鈣、氯化鎂和小蘇打的公克數
  4. 調配 Ca, Mg, KH 的滴定液
  5. 計算每天要滴定Ca, Mg, KH 滴定液的毫升數
  6. 將滴定量輸入滴定機,每日定時執行

用 Ca 來當個例子:
  1. 測量 Ca 濃度為 440 ppm
  2. 一週後,再測量Ca 濃度為 426 ppm ,可推算出一天的消耗量是 (440-426)/7 = 2 ppm/day
  3. 使用「海缸小幫手」App 來計算,150L 的魚缸水量,提升 2 ppm,一天要添加的無水氯化鈣是 0.834 g /day
  4. 調配 Ca 滴定液,100g 無水氯化鈣配 900g淡水 是 10% 的濃度
  5. 計算每天要滴定 Ca 滴定液的毫升數, 0.834 / 10% = 8.34 ml 的 Ca 滴定液
  6. 設定滴定機,8.34 ml 分兩次滴定,00:00 時滴定 4.2 ml, 12:00 時滴定 4.2 ml

而上述例子是維持穩定的滴定方式,要是很久沒有進行魚缸維護工作了,測得 Ca 濃度為 330 ppm,我想把濃度提高到 450 ppm, 我得先把 Ca 的濃度在一週內拉高到 450 ppm, 再轉換為維持穩定的滴定方式。或者是測得 Ca 濃度為 500 ppm,我得先暫停滴定,等到濃度降低到 450 ppm 再繼續滴定....真的是夠囉....我能不能把上述的計算過程,全部用程式自動計算就好了呢?
(未完待續)
看到大大的數據,覺得我的缸是不是有問題
180升水量,軟體的量也沒很多
但每天鈣消耗10PPM
是不是不正常
因為大大的消耗量只有2PPM

我每天加無水氯化鈣5G(10PPM)
氯化镁20G(30PPM)

開始添加只有2星期
 
看到大大的數據,覺得我的缸是不是有問題
180升水量,軟體的量也沒很多
但每天鈣消耗10PPM
是不是不正常
因為大大的消耗量只有2PPM

我每天加無水氯化鈣5G(10PPM)
氯化镁20G(30PPM)

開始添加只有2星期
我的缸只有少少的兩根小硬骨,其餘的多數為 LPS
大概是長得不太好,所以鈣消耗量少
所以我覺得消耗得得多,搞不好是比較正常的
 
我的缸只有少少的兩根小硬骨,其餘的多數為 LPS
大概是長得不太好,所以鈣消耗量少
所以我覺得消耗得得多,搞不好是比較正常的
我的缸沒有硬骨,只有些軟體
也不知別人的數據
才會擔心
謝謝大大的回覆
 
看到大大的數據,覺得我的缸是不是有問題
180升水量,軟體的量也沒很多
但每天鈣消耗10PPM
是不是不正常
因為大大的消耗量只有2PPM

我每天加無水氯化鈣5G(10PPM)
氯化镁20G(30PPM)

開始添加只有2星期
個人感覺,你這消耗量偏多,骨缸才比較有可能消耗這麼多鈣。
很有可能是加進缸中後被沉澱掉了,KH消耗量也大嗎?
不過其實也不是什麼大問題,就是氯化鎂的藥劑錢會比較高而已。
 
一、我想要的功能

實作之前要先進行設計,設計之前要先想好需求,下面是我為傻瓜滴定機所定義的功能
  • 三頭滴定 - Ca, Mg, KH
  • 自動滴定:不定期輸入 Ca, Mg, KH 手動測量數據,系統會自動修正滴定量
  • 自動排程:Ca, Mg, KH 在一天內自動排程進行滴定
  • 提供實際測量數據 vs 預測數據圖,並且包含歷史數據
  • 異常通知
    • 滴定無回應通知
    • 滴定失敗通知
  • 維護提醒
    • 到達平衡通知
    • 滴定桶補充提醒
    • DC馬達校正提醒

其中我認為最關鍵的就是自動滴定功能,每一次的手動量測都會成為系統的參考依據,前期在尋找平衡時,可以五、六天測量一次,達到平衡期後就隨意,有時間再測量即可。管子說了呀:「君子使物,不為物使。」晚上下了班回家,看看魚缸,心情放輕鬆就好啊~

(未完待續)
 
個人感覺,你這消耗量偏多,骨缸才比較有可能消耗這麼多鈣。
很有可能是加進缸中後被沉澱掉了,KH消耗量也大嗎?
不過其實也不是什麼大問題,就是氯化鎂的藥劑錢會比較高而已。
KH我每天加0.3度
7天後
增加0.3度
由7.7到8.0
 
KH我每天加0.3度
7天後
增加0.3度
由7.7到8.0
我的算法會是這樣
如果不消耗 KH, 那麼 7.7 + 0.3*7 = 9.8 dKH 應該是七天後的度數
但實際上消耗了 9.8 - 8.0 = 1.8 dKH, 也就是 0.257dKH/day
這大不大?
我目前魚缸的消耗大概是 0.55 dKH/day 左右
 
如果滴定機能和海缸小幫手APP結合就好了
計算這東西還真越傻瓜越好XD
 
我的算法會是這樣
如果不消耗 KH, 那麼 7.7 + 0.3*7 = 9.8 dKH 應該是七天後的度數
但實際上消耗了 9.8 - 8.0 = 1.8 dKH, 也就是 0.257dKH/day
這大不大?
我目前魚缸的消耗大概是 0.55 dKH/day 左右
了解了,謝謝
 
KH我每天加0.3度
7天後
增加0.3度
由7.7到8.0
KH跟Ca的消耗不太匹配,但真的也不用在這件事上花太多腦筋,穩定就好
 
二、系統架構
我用中控 (Auto Tank) 來控制的傻瓜滴定機。Auto Tank 是一套開源軟體,由 Grafana, Influxdb, Node-RED 及 mosquitto 所組成的軟體架構,剛開始時我是作為 pH 和溫度傳感器的紀錄,並且架設在 AWS 的雲端上,後來又擴充為智慧排插的中控中心,最後基於網路安全以及費用的考量,我把 Auto Tank 運行在家中的 Raspberry Pi 4,系統架構圖如下所示:

PH84_210427220507_85f11.png


所有的量測數據、滴定設定、滴定計畫、滴定排程、滴定歷史紀錄都在 Auto Tank 進行。Auto Tank透過 MQTT 的協議,下達指令給傻瓜滴定盒執行滴定動作。

(未完待續)
 
返回
上方 下方