Arduino

NewPingライブラリを使って超音波センサで距離測定

2018年11月29日

こんばんは!
今回はNewPingというArduino用のライブラリーを使って超音波センサで距離を測っていこうと思います。

前に

Arduinoを用いて超音波センサで距離計を作る

という記事を書いたときはこのライブラリを知らなかったので使わないでコードを書いたのですが、このライブラリを使うと超音波センサのトリガーピンとエコーピンを1つのポートで使うことができます。Arduinoはポートの数が多くないので多数のポートが必要な時には便利だと思います。

NewPingライブラリのダウンロード

  1. こちらのサイトの「DOWNLOAD NEWPING」というボタンを押してダウンロードをする
  2. 解凍ソフトを使ってzipファイルを解凍する
  3. 解凍したファイルをArduinoフォルダの中の「libraries」フォルダに移動
  4. Arduino IDEを開いて「スケッチ」→「ライブラリのインクルード」→「NewPing」を選択

やり方は写真付きでダウンロードのサイトにも載っているのでもしわからなければそちらを参考にするといいと思います。

使用するもの

・Arduinoメインボード(https://amzn.to/2vkPIUH)
・USBケーブル(https://amzn.to/2UHhntl)
・ブレッドボード(https://amzn.to/38eNi8u)
・ジャンパワイヤ (https://amzn.to/39uBU8T)
・超音波センサHC-SR04(https://amzn.to/3an15MJ)

手順

まず、下の図のように超音波センサとArduinoを接続します。

次にArduino IDEを開いて次のコードを書き込んでいきます。

コードの説明をします。まず、
#include <NewPing.h>
でNewPingライブラリをインクルードしています。

次に
NewPing sonar(PIN,PIN, MAX_DISTANCE);
でトリガーピン、エコーピン、最大距離の初期設定をしています。

loop内では
Serial.print(sonar.ping_cm())
によってセンチメートル単位の距離をシリアルモニタに記述しています。

sonar.ping_cm()以外にもメソッドが色々あるので興味がある方はこちらのページを見てください。
https://playground.arduino.cc/Code/NewPing

これをマイコンボードに書き込んでシリアルモニタを見ると

きちんと読み取れていると思います。

まとめ

今回はNewPingというライブラリを使って超音波センサを使用しました。
超音波センサを複数搭載するときやポートが不足しそうなときに役立ちますし、コードも短くなるので、使うといいと思います。

今回はこれで終わります。
ではまた!

-Arduino

Copyright© 物を作る者 , 2024 All Rights Reserved.