RaspberryPi Picoを使って赤外線センサ TOFで距離を測る(VL53L0X)

コンピュータ、組み込み

Raspberry Pi Pico で赤外線距離センサー TOFを使ってみます。

今回紹介するもの

TOF赤外線距離センサ (VL53L0X)

特徴

赤外線を出し、光が反射して戻ってくるまでの時間を計測します。
計算した距離で値を得ることができるため簡単に使用することができます。

電源電圧2.8~5V
通信I2C
I2Cアドレス29(h)
計測距離範囲2 ~ 2m
波長940nm

電源を与えると動作を開始します。
赤外線は不可視光なので目で見ることはできませんが、スマートフォンなどのカメラで射出口を映すと紫に発光している様子が見れます。

外観

距離を計測するモジュールに超音波距離センサーモジュール(HC-SR04)を紹介しました。
比べるとだいぶん小柄です。

測定できる距離と精度を確認しました。
距離はおおむね3cm~1.3m、誤差5%前後です。
詳しくは「動作」に各距離と誤差の結果を添付します。

使用感

Adafruitのライブラリを使用しました。
I2Cでの読み出しですが、距離情報を読み出すことができるので簡単に利用することができました。

対象物の素材や環境の反射にも影響されることがようで、正確な計測をするのに少しコツが必要です。
今回は軽めに精度を確認していましたが、超音波距離センサ(HC-SR04)と比べると精度のばらつきが大きいように感じます。

それでも小型軽量で簡単に距離を読み出すことができるので、音または光による計測は環境や対象物により選択の幅が広がったと思います。

超音波距離測定モジュール(HC-SR04)の記事

準備

使うもの

画像名称、型番用途
TOF赤外線距離センサ
VL53L0X
対象物への光の反射時間を計測します
Raspberry Pi PicoVL53L0Xから距離の読み取り
ブレッドボード配線します
ジャンパワイヤ数本配線します

ライブラリ

ライブラリマネージャから以下1件のライブラリをインストールします。

ライブラリ名検索確認時のバージョン
Adafruit_VL53L0X by AdafruitVL53L0X1.2.4

動作

説明

Adafruitライブラリを使用しています。
サンプルを使用することで距離の計測と読み取りをしました。

使用したサンプル
スケッチ例 > Adafruit_VL53L0X > vl53l0x

配線

Raspberry Pi Pico配線VL53L0X
3V3VIN
GNDGND
GPIO0SDA
GPIO1SCL

スケッチ

RaspberryPi PicoのSDAにGPIO0, SCLにGPIO1を使用する場合、Wireを使ってピンを変更します。
下図は、サンプルスケッチの8と9行目にI2Cピンを変更する処理を加えています。

結果

近接(<30mm)は、25~30mmの結果を読み取ります。
50mm以降は精度は<5%程度に収まるようになりました。

超音波距離モジュール(HC-SR04)で距離を計測した記事

コメント

タイトルとURLをコピーしました