本記事の内容
Seeeduino xiao RP2040とTGS2450匂いセンサを用いて、空気中のにおい度合いを測定する方法をまとめました。
MicroPythonのコードは前回の記事(Raspberry Pi Pico)で紹介したものと同一ですが、配線をより分かりやすくシンプルにしたので、本記事で再掲します。
必要なもの
TGS2450においセンサは秋月電子にて購入しました。(秋月電子の購入サイト)
その他、抵抗とトランジスタ(TTA008B 80V2A)も必要になります。(秋月電子の購入サイト)
TGS2450においセンサの動作原理
秋月電子の購入サイトから取得したサンプル回路をベースに、TGS2450においセンサの動作原理をまとめました。

TGS2450においセンサは、以下のように5msのセンサ信号取得と8msの感ガス素子部の加熱を250ms間隔(4Hz)で繰り返すことで動作させます。
- 信号無し:237ms
PinHeater.value(0),PinSensor.value(0) - センサ信号の取得:5ms
PinHeater.value(0),PinSensor.value(1) - 感ガス素子部の加熱:8ms
PinHeater.value(1),PinSensor.value(0)
Seeeduino xiao RP2040では、PinSensorがP0、PinHeaterがP1となります。PinSensor.value(1)のときにP26のアナログ電圧値を取得することで、においの度合いを測定します。
センサ抵抗値は5.62kΩ~56.2kΩで臭い分子が多いほど抵抗値が小さくなるので、上記配線にて理論上は、GP26の分圧値はにおいに応じて以下のように変化します。
匂い | センサ抵抗値 | P26分圧値 |
臭い | 5.62kΩ | 1.18V |
臭くない | 56.2kΩ | 2.80V |
※測定誤差の影響を小さくするため、以下ではP0とP26の間に挟む抵抗を10kΩに代えて配線しました。
配線
Seeeduino xiao RP2040とTGS2450においセンサの配線は以下の通りです。Raspberry Pi Picoの時と比べて、Fritizingの配線も奇麗にまとまりました。

TGS2450においセンサは裏から見て、時計回りに1~4ピンとなります。(2ピンはオープンなので、曲げています。)

プログラムコード
Raspberry Pi Picoの時と同じくMicroPythonなので、プログラムコードに関しては大きな変更点はありません。
import machine
import utime
# ヒーター:P1 センサー:P0 に割り当て
PinHeater = machine.Pin(1, machine.Pin.OUT)
PinSensor = machine.Pin(0, machine.Pin.OUT)
# A/D 変換 初期化
PinOutput = machine.ADC(26)
conversionFactor = 3.3/65535
PinHeater.value(0) # Heater OFF
PinSensor.value(0) # Sencor Pullup OFF
# メインルーチン
while True:
utime.sleep(0.237)
PinSensor.value(1) # センサーへ給電
utime.sleep(0.003) # 250ms 中 3ms ON
# センサーの電圧値を取得
voltage = PinOutput.read_u16() * conversionFactor
utime.sleep(0.002) # 2ms ON (合計 5ms ON)
PinSensor.value(0) # センサー OFF
PinHeater.value(1) # 8ms ヒーター ON
utime.sleep(0.008)
PinHeater.value(0) # ヒーター OFF
print('voltage: ', voltage) # shell へ印字
TGS2450においセンサ初回使用時は、P26の分圧値が安定するまで10~20分ほどの時間を要します。徐々に上がっていきますので、上記配線では2V前後に落ち着いたら、準備完了です。
測定結果(まとめに代えて)
本TGS2450においセンサは2回目の使用でしたが、季節が冬ということもあってヒーターの暖まりが悪いのか、安定化まで10分ほどを要しました。P26の分圧値が2V以上になったら測定開始です。
マーカーペンを近づけると
TGS2450においセンサにおける、最も簡便なテスト方法です。油性インクの有機溶剤(ケトン、 アルコール、 酢酸エチル他)を測定しています。

アルコールウエットティッシュを近づけると
ウエットティッシュのエタノールを検知しているようです。マーカーペンのように点で近づけられないので、においの指向性が少々難点です。

納豆を近づけると
最後に日本の臭い代表格、納豆を近づけてみました。どのにおい分子を検知したのかは分かりませんが、確かに臭さは検知できています。

コメント