ショップ
製品概要

超音波距離センサーは、センサーから発した超音波パルスが、計測対象物にあたって反射して帰ってくるまでの時間を計測し、その値で距離を計測するものです。
スケッチ例
超音波距離センサーで対象物までの距離を計測し、それをシリアルモニタに出力するスケッチを示します。ESP32-PIXEL用のスケッチを示しますが、冒頭のTRIG,ECHOをお使いの回路で割り当てている入出力ピンに変更すれば、汎用的に使用できるスケッチです。
ESP32-PIXEL
#define TRIG 25
#define ECHO 26
#define TIMEOUT 30000
int temperature = 20 ;
void setup() {
Serial.begin(115200) ;
pinMode(ECHO, INPUT) ;
pinMode(TRIG, OUTPUT) ;
digitalWrite(TRIG, LOW) ;
}
void loop() {
double t, distance, sound_speed ;
digitalWrite(TRIG, HIGH) ;
delayMicroseconds(10) ;
digitalWrite(TRIG, LOW) ;
t = pulseIn(ECHO, HIGH, TIMEOUT) ; // 往復にかかった時間(microsec)
if (t > 0) {
t = t / 2 ; // 片道
sound_speed = 331.5 + 0.61 * temperature ; // 気温センサの値を使えば温度補正できる
distance = t * sound_speed * 100 / 1000000 ;
Serial.print(t) ;
Serial.print(" microsec, ") ;
Serial.print(distance) ;
Serial.println(" cm") ;
}
delay(500) ;
}