UARTインターフェースを使ったセンサ(MH-Z14B)

1. 概要

UARTインターフェースは、シリアル通信の一つです。Universal Asynchronous Receiver/Transmitterの略で、同じくシリアル通信であるI2CやSPIとは異なり、非同期のシリアル通信です。TX: TransmitterとRX: Recieverの2本の信号線を使って非同期通信を行います。
いちご栽培などのビニールハウスを使った農業では、ビニールハウス内の二酸化炭素濃度の管理が栽培物の生育に大きく影響を与えるため非常に重要です。
ここでは、市販の二酸化炭素センサMH-Z14Bを外部センサとして用います。MH-Z14BとR-MSMをUART通信で接続しデータの取得を行います。

2. 二酸化炭素センサMH-Z14BとR-MSMの接続

2-1. 二酸化炭素センサMH-Z14Bの仕様

二酸化炭素センサMH-Z14Bの写真を次に載せます。
MH-Z14Bは、非分散型赤外線吸収法(non dispersive infrared principle)と呼ばれる、赤外(IR)放射吸収の原理に基づいた方式により二酸化炭素の濃度を検出するセンサです。

概略仕様を以下に示します。電源電圧5.0Vで、出力方式は、UART とPWM の二方式があります。ここでは、UART を使ってR-MSMと接続します。
詳細な仕様書はこちら(User’s Manual V1.1)をご覧ください。

MH-Z14B概略仕様

次に、R-MSM とのインターフェースを確認します。
MH-Z14Bのインターフェース端子一覧と端子配置図を以下に示します。Pin22~Pin25 の4本を使用します。

MH-Z14Bのインターフェース端子一覧

MH-Z14Bのインターフェース端子配置図

2-2. R-MSM のUART インターフェース対応

R-MSMは、外付けセンサのためのUARTに対応した端子を備えています。コネクタUART2の端子3:RXD2と端子4:TXD2です。このUART2 を使用してもR-MSMと接続できます(UART0は、USBとシリアル変換に使用しています)。ただし、ビニールハウスなどの農業用途を考えるとLPWA(Low Power Wide Area)通信の仕様が必須となります。UART2はLPWA 用に使用すると考えると、UARTのインターフェースがもう一つ必要になります。

そこで、R-MSMでは、2つ目のUARTインターフェースとして、母体マイコンであるESP32のソフトウェアシリアルであるUART1を使用しています。
RX1端子は、コネクタA-ADC1(J10)の端子1:A-ADC0(ESP32-GPIO32)です。TX2端子は、コネクタA-ADC1(J10)の端子2:A-ADC1(ESP32-GPIO33)です。この端子は、Mode-D (デジタルセンサモード)の時のみUARTインターフェース対応端子として使用可能です。
センサモジュールのピン配置ならびにMode-AとMode-Dに関しては、こちらをご覧ください:センサモジュールの仕様


電源は、コネクタ+5V Output(J13)の端子1:+5VOUTを使用します。GNDは、コネクタ+5V Output(J13) の端子2:GNDとコネクタA-ADC1(J10)の端子4:GNDを 使用します。

2-3.二酸化炭素センサMH-Z14BとR-MSMの接続

以下に、R-MSMとMH-Z14Bとの接続を示します。MH-Z14Bには、6ピンのケーブルが付属しています。それとR-MSMのケーブルを繋いで接続してください。

3. 二酸化酸素センサMH-Z14Bの動作許可設定

R-MSMにおいて、UART1インターフェースおよびMHZ14Bの読取りは、デフォルトで許可されていません。そのため、MHZ14Bを使用するためには、その動作を許可する必要があります。動作を許可する方法を説明します。

MH-Z14Bの動作をR-MSMで許可するためにPDH(Physical Data Hub)にインストールされているNode-REDのダッシュボードを使用します。そのためR-MSMとPDHをBluetoothもしくはUSBで接続します(USBの接続方法に関しては、こちらをご覧ください★IPアドレス追加必要)。

⓪ Node-REDのダッシュボードを開きます。

① 左上の三本線をクリックしてポップアップメニューを表示します。
② 出てきたメニューから「Sensor Device Control」をクリックします。

③ センサ選択画面が出てきます。現状の設定を知るために「RELOAD」ボタンを押します。

・現状、動作が許可されているBMX160とBME688とADS1015のチェックボタンがONになります。
・動作周期は、すべてのセンサの数値が読み出されます。

④ MH-Z14Bは動作が遅いので、早く動作する必要があるセンサはオフします。ここでは、BMX160をオフにします。BMX160のチェックボタンをOFF側に倒します。
⑤ MH-Z14BのチェックボタンをON側に倒します。

 

以上、MH-Z14Bの動作が許可されました。

3. MH-Z14Bのデータ出力確認

MH-Z14BのデータがR-MSM経由でPDHに送られてくることを確認します。