UECS Piで肥料管理機を作る② pHセンサーとECセンサー

 水耕栽培用の肥料管理機自作の続きです。今回は、pHセンサーとECセンサーについて書きます。

pHセンサーとECセンサー、接続用自作ボード

pHセンサー

pH(昔はドイツ語読みでペーハーと読んでいたが、最近はピーエッチと普通に読むらしい)は、水溶液中の水素イオン濃度を測るものです。下図のようにガラス電極と比較電極の電位差により水素イオン濃度つまりpHを測定します。ガラス薄膜でできたデリケートなもので、衝撃はもとより電極を乾かすと壊れます。中にKCL(塩化カリウム)溶液が入っていて、メインテナンスにも使用します。(電極を洗浄後、指定濃度のKCl溶液に長時間浸しておく。詳しくはメーカーの取扱説明を読んでください)

pH測定の仕組み

pHセンサーはネットで購入できます。Amazonでも何種類か販売されていますが、仕様が詳しく説明されていないものは不安です。私は、中国のDFROBOTサイトから購入しています。(下の写真を参照) サイトは英語ですが、使用方法などが詳しく説明されています。(QAも英語ならできます) SEN0161は秋月電子通商でも購入できます(なんとなく信頼度が上がる)。1つだけ購入するなら秋月から購入したほうが安いでしょう。
SEN0161とSEN0169の違いは、SEN0169の方が頑丈にできていること。衝撃を保護するカバーがついているのと、校正の頻度が少なくてもよいようです。(DFROBOTに質問するとSEN0161はLabo向けでSEN0169はIndustry向けと表現していた) 私はSEN0169を半年以上継続使用していますが、そんなに測定値に狂いはないようです。植物工場の液肥に使用しているので、センサー自体の汚れが少ない環境であるのも理由の1つと思います。 念のため月に1度ぐらいは校正チェックや必要に応じて洗浄することをお勧めします。
セムコーポレーションのpHセンサー電極は4万円ぐらいします。それに対してSEN0161は$29.50、SEN0169は$64.90なので、予備や交換を考えると自作派には節約になるのではないでしょうか。らくらく肥料管理機の取扱説明書ではpH電極は1週間から2週間で洗浄するように記載してます。メインテナンスの手間はSEN0169と大差ないかもしれません。1つ良いところはセムコーポレーションのpHセンサーは投げ込みできるところです。(センサー全部を水につけてもよい) SEN0161/SEN0169は測定部分だけしか水につけてはいけません。

(左)pHセンサーSEN0161 (中)pHセンサーSEN0169-V2 (右)ECセンサーDFR0300
DFROBOT https://www.dfrobot.com/ からカテゴリーGravityを選択するといろいろなセンサーが紹介されている。$表示されている価格に送料が10$以上かかるのでまとめ買いが有利。ただし、送料含む代金が1万6666円を超えると税金がかかる。決済はPayPalが便利。
最近はDFROBOT日本代理店がいくつかあってでも取り扱っているようです。在庫は多くないようなので注文するときに要確認。

SEN0161もSEN0169も測定値はアナログ出力ですが、SEN0161の付属している変換ボードは0-5Vです。(Arduino用だから) SEN0169-V2に付属する変換ボードは0-3Vとなってます。(V2というのが新設計の変換ボードのようで、電源も3.3-5Vになっている。Raspberry  Piにも気を使った?) SEN0169-V2を接続する場合は、接続図のR1は不要になります。
MCP3208との接続

ECセンサー

Raspberry PiやArduinoに接続できるEC(Electrical Conductivity)センサーは、なぜかネット通販での取り扱いが少ないようです。DFROBOTの日本代理店で製品を取り扱っている程度です。構造的にはpHセンサーより簡単と思いますが、需要が少ないのが原因でしょうか。
仕組みは電極に交流を流して測定する仕組みで、ネットでセンサー自体の自作記事も出ていますので興味がある方は参照してみてください。(「ECセンサー 自作」で検索すればいくつか表示されます)
EC(電気伝導率)測定の原理
https://www.m-system.co.jp/mstoday/plan/mame/b_sensor/0012/index.html
塩水に電気を通す図。直流では電気分解で電極(金属板)に結晶が付くのでECセンサーは交流で測定する。直流を交流に変換して、交流で測定するというのが変換モジュールの役割

私は前項の写真のDFR0300を利用しています。これも植物工場で半年以上使用実績があります。汚れの少ない環境であれば継続使用できるようです。
これもアナログ出力で0-3.2Vなので、MCP3208にR1なしで接続できます。電源は3.0-5Vです。私は同じボードにSEN0161を接続することも考慮して5Vで給電しています。Raspberry Piの5Vピンからではなく、ACDCアダプターから給電しています。消費電力の記載がないのですが、ECセンサーはプローブに電気を流して測定しているのでRaspberry Pi自体の全体の給電能力を少し懸念したからです。(ほかにもつなげたいセンサーがあるので)
自作したpHセンサー、ECセンサーを接続するボード

校正

MCP3208に接続出来たら、UECS Piに接続して校正をします。最初はA/D変換設定で「変換式」の欄を「なし」に設定して、A/D変換器が測定した電圧が表示されるようにしておきます。
UECS Pi A/D変換設定例
(下記の「pH AD変換テスト」の結果とは連携していません)

pH校正液にセンサーを浸したときの電圧を測定します。校正液は少なくとも2種類必要です。測定結果は下記のように測定した電圧と校正液のpH値を表にして、一次式で回帰分析します。EXCELのlinest関数を使えば係数(a)と常数(b)が計算できます。
求めた係数をUECS Piの変換式に設定します。

校正の例(EXCEL)
3点で測定。校正液のpHが4.01,6.86,9.18であるため。

校正液は高価で、ネット販売で1本(500ml)1000円~1500円ぐらいします。精製水に溶かす手間はかかりますが、下記のような粉末のものは安価に販売されているので利用してみてもよいかと思います。多くの植物の生育環境(弱酸性から中性)を考えるとpH4.01と6.86で校正するのがよいでしょう。
pH緩衝剤 測定校正粉末の例
Amazonなどで安価で販売しているが、納期が長いので注意

ECセンサーも同様に構成します。ECの校正液も1本1000円から2000円ぐらいします。1413μS/cmのものが一般的で肥料の濃度に近いものです。もう1点高いECの校正液(10670や12880μS/cm)を使うとよいでしょう。DFR0300には、校正液の小瓶が付属してますので最初の校正はこれを使えばできます。

あれ?pHがおかしい!

校正も終わり、いよいよ水耕栽培の液肥の水槽で試し測定をしてみました。ここで思わぬ事態が発生。pH値が9程度まで上がるのです。校正はちゃんと行ったはずで、水槽からpHセンサーを取り出し、校正液で測定しなおしても正しい値になります。水槽で測定した時だけpH値が異常に上がります。水槽内の漏電対策もしましたが改善しません。ところがECセンサーを水槽から取り出すと正常なpH値を示すのです。原因はECセンサーです。ECセンサーは前項のように測定のために電流を流します。pHセンサーはガラス膜両側の水溶液の起電力で測定する微妙なもので、ECセンサーから漏れる電流の影響を受けていると思われます。これではECとpHを同時に測定できないことになります。

苦肉の対策

こうなったらpH測定とEC測定のタイミングを分けるしかありません。そこで写真のような基盤を作成しました。
肥料管理基盤とECセンサー接続基板(自作)

肥料管理基盤は、pHセンサーとECセンサーの接続用ADC(MCP3208)を載せるとともにpHとECの測定タイミング制御をGPIOから行います。フォトリレーにTLP222A(A接点 電流が小さいのでTLP222Gでも可)とTLP4227G(B接点)を使います。B接点はGPIOからの信号がオフの時に電流が流れます。A接点とB接点のフォトリレーでタイミングを逆転させます。これでpHとECの測定タイミングを分けることができます。
さらに実験すると、ECセンサーモジュールの電源を切っただけではまだ電流の漏れがあるようです。そこでECセンサーモジュールとECセンサープローブ間の接続を開閉するリレーを載せたEC接続基板を作りました。
複雑な構成になりましたが、これでpHとECを同じ水槽で測定できるようになりました。

やっとpHとECを計れるようになったので、次回は肥料追加制御の話をします。

*「UECS Pi」はアルスプラウト株式会社が提供する汎用DIY環境制御ソフトウェアです。https://www.arsprout.co.jp/products/others/uecs-pi/

*「UECS」は農業用のセンサー機器や制御機器用の通信・動作の共通仕様です。UECS研究会が公開しています。https://www.uecs.jp/outline/outline-index

関連リンク:EzITコンサルティング www.ezitc.dev


コメント

このブログの人気の投稿

Arsprout Piを使ってみた③ ーファームウエアのカストマイズ UECS Piとの相違点ー

Arsprout Piを使ってみた② ー構成定義を中心にUECS Piとの違いを考えるー

Arsprout Piを使ってみた① ーUECS Piからの変更点を中心にー