ESP32で光センサーを使う

人感センサーあるいはモノの検出センサーとして光センサーを使いたいので、CdsセルとフォトトランジスタをESP32のアナログ入力に接続してみました。

部品

Cdsセルは極性がありませんが、フォトトランジスタは長い方がエミッタ(GND側)です。

接続

ESP32-DevKitC のに次の様に接続します。抵抗はとりあえず手元にあった10Kです。

  • 3.3V > フォトトランジスタ > IO4 > 10KΩ > GND
  • 3.3V > Cdsセル > IO0 > 10KΩ > GND

結果

手をかざすとどちらも数値が小さくなっています。抵抗値にもよるのでしょうが、試した条件ではフォトトランジスタの方が変化が大きいので物体の検出にはこちらの方がわかりやすいかな。

コードはこちら

void setup() {
  Serial.begin(115200);
}

void loop() {
  int val0, val1;
  val0 = analogRead(4); //A10 IO4 ADC2_CH0
  val1 = analogRead(0); //A11 IO0 ADC2_CH1
  Serial.print(val0);
  Serial.print(", ");
  Serial.print(val1);
  Serial.println(" ");
  delay(1000);
}

コメントを残す

メールアドレスが公開されることはありません。

14 − 6 =