距離を正確に測る その3 レーザーVL53L1X
レーザーを使って距離を測るセンサVL53L0Xの測定できる距離を4mと伸ばしたのがVL53L1Xです。「その1 VL6180X」の記事を執筆した時点では、ST Microelectronicsの評価用ボードNUCLEO用が入手できました。Arduino UNO用のシールドにも使えるピン配置ですが、ライブラリはNUCLEO用しかありませんでした。
2018年4月に、SparkfunがDistance Sensor 4m (Qwiic) - VL53L1Xを発売し、ライブラリがGitHubにアップされました。執筆時点ではSparkfunの製品はまだ日本で流通していないので、ST MicroelectronicsのNUCLEO用ボードで動作させました。
●VL53L1Xのおもなスペック
- 距離;4m
- 測定頻度;50Hz
- 光;940nm
- VL53L0Xとピン互換
●ST MicroelectronicsのNUCLEO用ボードの特徴
ST Microelectronicsの評価用ボードのシリーズにNUCLEOがあります。大変低価格で、いろいろな開発ツールが利用できるようになっているのが特徴です。Arduino IDEを利用できるボードもありますが、筆者はI2Cがうまく動かせなかったので、最近使っていません。
プロトタイピングでmbedを利用し、見通しが立ったら、Keilなどの開発ツールで本格的に製品化を進めるという手順だと思います。
X-NUCLEO-53L1A1【X-NUCLEO-53L1A1】はマルツの通販で購入しました。2018年春ごろからDigi-Keyの代理店をしているので、送料を含めた合計の費用はDigi-Keyからよりも安くなる場合があります。
Arduinoシールド自体にVL53L1Xが1個、VL53L1Xが搭載されたサブボードが2枚付いた製品です。
●ライブラリのインストール
Arduino Web Editorを立ち上げます。
Zipファイルを読み込むためのImport画面が出ます。
GitHubからダウンロードしたZipファイルを探します。
二度目の作業だったのでライブラリをアップデートするか聞かれるので、OKします。
成功しました。
ExamplesからExample1_ReadDistabceを選びます。
●サンプル・スケッチの実行
X-NUCLEO-53L1A1ボードをArduino UNO上に挿しこみます。USBケーブルをつなぎ、Web Editorが認識したら、書き込みます。
Monitorを開くと、距離をmmとフィートで表示しています。
(※)VL53L1Xはマイコンを搭載して、とてもたくさんの公開/非公開のレジスタを設定して、ホストとはI2Cインターフェースで制御します。専用のAPIはメール・アドレスを入れればダウンロードできます。