注釈
こんにちは、SunFounderのRaspberry Pi & Arduino & ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。
参加する理由は?
エキスパートサポート:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。
学び&共有:ヒントやチュートリアルを交換してスキルを向上させましょう。
独占的なプレビュー:新製品の発表や先行プレビューに早期アクセスしましょう。
特別割引:最新製品の独占割引をお楽しみください。
祭りのプロモーションとギフト:ギフトや祝日のプロモーションに参加しましょう。
👉 私たちと一緒に探索し、創造する準備はできていますか?[ここ]をクリックして今すぐ参加しましょう!
飛行時間(ToF)マイクロLiDAR距離センサ(VL53L0X)
概要
VL53L0Xモジュールは、レーザー技術を用いて最大2メートルまでの距離を精度よく測定できる飛行時間(ToF)測距センサです。このモジュールは、統合されたレーザー発生器、検出器、マイクロコントローラを搭載した多機能センサモジュールです。プルアップ抵抗やコンデンサなど、必要なコンポーネントがすべて搭載されています。対応可能な測定距離は約50〜1200mmです。
原理
VL53L0Xモジュールは、飛行時間(ToF)原理に基づいて動作します。レーザーパルスを送出し、反射して戻ってくるまでの時間を測定します。この時間は、センサと物体との距離に比例します。モジュールは単一光子雪崩ダイオード(SPAD)アレイを用いて、物体から反射された光を検出します。SPADアレイは、一つの光子さえも検出する能力があります。さらに、このモジュールにはデータ処理を行う統合マイクロコントローラが搭載されています。
使い方
使用する電子部品
Arduino Uno R4またはR3ボード * 1
飛行時間マイクロLiDAR距離センサ * 1
ジャンパーワイヤー
回路組み立て
コード
注釈
ライブラリのインストールには、Arduinoライブラリマネージャで 「Adafruit_VL53L0X」 を検索してインストールします。
コードの説明
必要なライブラリを含むとセンサオブジェクトを初期化。最初に、VL53L0Xセンサ用のライブラリを含み、Adafruit_VL53L0Xクラスのインスタンスを作成します。
注釈
ライブラリのインストールには、Arduinoライブラリマネージャで 「Adafruit_VL53L0X」 を検索してインストールします。
#include <Adafruit_VL53L0X.h> Adafruit_VL53L0X lox = Adafruit_VL53L0X();
setup()関数での初期化。ここでは、シリアル通信を設定し、距離センサを初期化します。センサの初期化ができない場合、プログラムは停止します。void setup() { Serial.begin(115200); while (!Serial) { delay(1); } Serial.println("Adafruit VL53L0X test"); if (!lox.begin()) { Serial.println(F("Failed to boot VL53L0X")); while (1) ; } Serial.println(F("VL53L0X API Simple Ranging example\n\n")); }
loop()関数での測定値の取得と表示。Arduinoは、rangingTest()メソッドを使用して、距離の測定を継続的に行います。測定が有効な場合、その値がシリアルモニタに表示されます。void loop() { VL53L0X_RangingMeasurementData_t measure; Serial.print("Reading a measurement... "); lox.rangingTest(&measure, false); if (measure.RangeStatus != 4) { Serial.print("Distance (mm): "); Serial.println(measure.RangeMilliMeter); } else { Serial.println(" out of range "); } delay(100); }
追加のアイディア
センサをディスプレイ(例:OLED)と連携させて、距離測定値を表示する。
物体が特定の範囲内に入ったときに、他のコンポーネント(LEDやブザーなど)を作動させる。