ジャンプする:
ESP32 チュートリアル 1/55 - SunFounder の ESP32 IoT 学習キットソフトウェアと Arduino IDE の紹介 ESP32 チュートリアル 2/55 - ESP32 とは、カメラ拡張ボード、SunFounder の ESP32 IoT キットの開封作業 ESP32 チュートリアル 3/55 - 抵抗、LED、ブレッドボードプロジェクト: こんにちは LED - ESP32 IoT 学習キット ESP32 チュートリアル 4/55 - データ型 変数の定義 Int, bool, char, シリアルモニター - ESP32 IoT キット ESP32 チュートリアル 5/55 - LED フェード、LED の明るさを制御 - ESP32 IoT 学習キット ESP32 チュートリアル 6/55 - RGB LED の使用 プロジェクト 2.3 - SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 7/55 - ESP32 Arduino プログラミングでの配列の使用 - SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 8/55 - ウォーキングライト 74HC595 シフトレジスタ - SunFounder の ESP32 IoT 学習キット ESP32チュートリアル 9/55 - プッシュボタンを使用してLEDをトグル、オンに押す、オフに押す - SunFounder ESP32 IoTキット ESP32 チュートリアル 10/55 - セブンセグメントディスプレイ 74HC595 を使用したデジタルカウンター - ESP32 IoT ラーニングキット ESP32 チュートリアル 11/55 - ESP32 と LCD1602 LCD2004 の使用 - SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 12/55 - SunFounder の ESP32 IoT 学習キットを使用した WS2812 RGB ストリップ 4 プロジェクト ESP32 チュートリアル 13/55 - アクティブブザーによる Arduino ビープ | SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 14/55 - SunFounder ESP32 IoT 学習キットを使用したカスタム音楽ノートの再生 ESP32 チュートリアル 15/55 - ESP32 L293D を用いた DC モーター速度制御 | SunFounder の ESP32 IoT 学習キット ESP32チュートリアル 16/55 - ESP32とL293Dを使用したミニ水ポンプ | SunFounderのESP32 IoT学習キット ESP32 チュートリアル 17/55 - ESP32 とポテンショメーターを使用したサーボモーターの制御 - ESP32 IoT 学習キット ESP32チュートリアル 18/55 - ESP32を使った傾き検出 | SunFounderのESP32 IoT学習キット ESP32 チュートリアル 19/55 - 赤外線センサーを使った障害物の検出 | SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 20/55 - ライントラッキングモジュール | SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 21/55 - PIR モーションセンサーを使用した人間の検出 | SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 22/55 - LED Arduino を使用して光を感じる | SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 23/55 - ESP32 を使用したポテンショメーターの電圧測定 | SunFounder の ESP32 IoT キット ESP32 チュートリアル 24/55 - 灌漑のための土壌湿度の測定 | SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 25/55 - NTC と LCD を使用した温度測定 | SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 26/55 - Arduino でのジョイスティックの使用 アクションを起こす | SunFounder の ESP32 IoT キット ESP32 チュートリアル 27/55 - 超音波センサーを使用した距離の測定 | SunFounderのESP32 IoT学習キット ESP32 チュートリアル 28/55 - DHT11 温度センサーと LCD | SunFounder の ESP32 IoT 学習キット ESP32のチュートリアル 29/55 - ESP32でIRリモコンのキー入力を読み取る | SunFounderのESP32 IoT学習キット ESP32 チュートリアル 30/55 - Adafruit IO サービスを使用した MQTT を通じてウェブ上でサーボを制御する | SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 31/55 - 障害物回避機能付き LED ストリッププロジェクト | SunFounderのESP32 IoT 学習キット ESP32チュートリアル 32/55 - LCDとブザーを使った車のバックレンジ警告 | SunFounderのIoT学習キット ESP32チュートリアル 33/55 - SunFounderのESP32 IoT学習キットを使用したデジタルサイコロ ESP32チュートリアル 34/55 - RGB LEDとノブを使ったカラ―グラデーション | SunFounderのESP32 IoT学習キット ESP32チュートリアル 35/55 - 植物モニター、土壌、温度と光 | SunFounderのESP32 IoT学習キット ESP32チュートリアル 36/55 - 数当てゲーム | SunFounderのESP32 IoT学習キット ESP32 チュートリアル 37/55 - ESP32 BLE を使用した Bluetooth アプリ | SunFounder の ESP32 IoT 学習キット ESP32チュートリアル 38/55 - モバイルフォンからRGB LEDを制御する | SunFounderのESP32 IoT学習キット ESP32 チュートリアル 39/55 - ESP32 を Bluetooth 音楽プレーヤーとして使用する | SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 40/55 - Micro SDカードへの読み書き | SunFounderのESP32 IoT学習キット ESP32 チュートリアル 41/55 - Micro SD カードを使用した MP3 プレーヤー | SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 42/55 - カメラで写真を撮影し、マイクロSDに保存 CAM-1 | SunFounder の ESP32 キット ESP32 チュートリアル 43/55 - IoT インターネット気象観測所 | SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 44/55 - ESP32 カメラウェブサーバービデオストリーム オーバー WiFi CAM-2 | SunFounder の ESP32 キット ESP32 チュートリアル 45/55 - LED コントロール付きカスタムストリーミングサーバー CAM-3 | SunFounder の ESP32 学習キット ESP32 チュートリアル 46/55 - HiveMQ MQTT を使用したリモート温度監視 | SunFounder の ESP32 キット ESP32 チュートリアル 47/55 - インターネット経由の MQTT を使用した WS2812 CheerLights | SunFounder の ESP32 IoT キット ESP32チュートリアル 48/55 - リモート温度監視とLED制御 MQTT | SunFounderのESP32 IoTキット ESP32チュートリアル 49/55 - Adafruit IoTを使用してインターネット経由でDCモーターを制御する | SunFounderのESP32キット ESP32 チュートリアル 50/55 - 世界中のどこからでも RGB LED を制御する | SunFounder の ESP32 キット ESP32 チュートリアル 51/55 - DHT を使用した WiFi 経由の温度と湿度 | SunFounder の ESP32 IoT 学習キット ESP32 チュートリアル 52/55 - WS2812 CheerLights MQTT グローバル同期 LCD 付き | SunFounder ESP32 IoT キット ESP32 チュートリアル 53/55 - LCD インターネットクロックの作成 | SunFounder の ESP32 IoT 学習キット ESP32チュートリアル 54/55 - Wifi経由でWS2812 LEDストリップの色を設定 | SunFounderのESP32 IoT学習キット ESP32 チュートリアル 55/55 - 12V、24V、または 100V の DC 電圧を測定する方法 | SunFounder の ESP32 IoT 学習キット
ESP32チュートリアル 18/55 - ESP32を使った傾き検出 | SunFounderのESP32 IoT学習キット
このチュートリアルでは、SunFounder ESP32マイコンを使用して、ティルトスイッチを使ったシンプルなプロジェクトを作成します。ティルトスイッチが作動するとLEDが消灯し、直立した位置にあるときはLEDが点灯します。このプロジェクトは、ティルトセンサーの操作を学ぶ素晴らしい導入だけでなく、さまざまなロボティクスアプリケーションの基礎としても機能します。詳細なビジュアルガイドについては、上記にリンクされた動画(00:00の動画)をチェックしてください。
傾斜スイッチ
ハードウェアの説明 このプロジェクトで使用される主なコンポーネントには、ESP32マイクロコントローラー、ティルトスイッチ、およびLEDがあります。ESP32は、Wi-FiとBluetoothが内蔵された強力なマイクロコントローラーであり、IoTアプリケーションに理想的です。ティルトスイッチは、中に金属球が入った簡単なデバイスです。傾くと球が動き、回路が切断されて傾きの状態を検出できるようになります。LEDは、スイッチの状態に基づいて傾きの状態を視覚的に示します。これらのコンポーネントに加えて、電流制限とプルダウン用に抵抗器も使用します。LEDに接続された220オームの抵抗器は、LEDが過剰な電流を引き込むことなく安全に動作することを保証します。10kオームの抵抗器はティルトスイッチのプルダウンとして機能し、スイッチが作動していないときに入力ピンが既知の状態を読み取ることを保証します。
データシートの詳細
製造業者
サンファウンダー
部品番号
ESP32
ロジック/入出力電圧
3.3 V
供給電圧
5 V
出力電流(チャンネルごと)
12 mA
ピーク電流(チャネルごと)
40 mA
PWM周波数ガイダンス
1 kHz
入力ロジック閾値
0.8 V (低), 2.0 V (高)
電圧降下 / RDS(on) /飽和度
0.2 V
熱的制限
85 °C
パッケージ
ESP32モジュール
ノート / バリアント
Wi-FiおよびBluetooth機能を含む
LEDの損傷を防ぐために、適切な抵抗値を確保してください。
配線を整然と保ち、ショート回路を避けてください。
傾斜スイッチからの安定した読み取りを確保するために、プルダウン抵抗を使用してください。
回路に電源を入れる前に接続をテストして、コンポーネントの故障を避けてください。
傾斜スイッチの向きを確認し、正確な機能を確保してください。
配線指示 ESP32-18_tile_wiring コンポーネントを配線するには、極性がないチルトスイッチから始めますので、どちらの方向にも接続できます。チルトスイッチの1つのピンを3.3Vの電源に接続し、もう1つのピンをESP32のピン14に接続します。スイッチがアクティブでないときにピン14が既知の状態を読み取るために、同じピンからグラウンドに10kオームの抵抗を接続します。次に、LEDを取り、長い脚(アノード)を220オームの抵抗に接続してブレッドボードに挿入します。抵抗のもう一方の端をESP32のピン26に接続します。LEDの短い脚(カソード)はグラウンドに接続してください。最後に、ESP32のグラウンドピンをブレッドボードのグラウンドレールに、3.3Vピンを電源レールに接続します。ショートや不正確な読み取りを防ぐために、すべての接続を再確認することを忘れないでください。これらの手順に従えば、プログラミングの準備が整った機能的なチルトセンサーの設定が完了するはずです。
コード例とウォークスルー コードは、傾斜スイッチとLEDのピン番号を定義することから始まります。傾斜スイッチはピン14に接続され、LEDはピン26に接続されています。傾斜スイッチの状態は変数に格納されます。tiltState.
// Set pin numbers
const int tiltPin = 14; // Tilt Switch
const int ledPin = 26; // LED
// Variable for storing the tilt status
int tiltState = 0;
この抜粋はピン割り当てと、傾き状態を追跡するための変数の宣言を示しています。tiltPinスイッチの状態を読み取るための入力として設定されています。そこでsetup()機能として、シリアル通信が初期化され、ティルトスイッチとLEDのピンモードが設定されます。これにより、ESP32はティルトスイッチからの入力を読み取り、LEDを適切に制御できるようになります。
void setup() {
Serial.begin(115200);
// Initialize the tilt pin as an input
pinMode(tiltPin, INPUT);
// Initialize the LED pin as an output
pinMode(ledPin, OUTPUT);
}
このセクションは重要であり、環境を設定し、ESP32が傾きスイッチの状態に基づいて効果的に通信し、出力を制御できるようにします。loop()関数は傾斜スイッチの状態を継続的にチェックします。スイッチが垂直のときはLEDが点灯し、傾いているときはLEDが消灯します。現在の状態はデバッグのためにシリアルモニターに出力されます。
void loop() {
// Read the state of the tilt switch
tiltState = digitalRead(tiltPin);
Serial.println(tiltState);
// If the switch is upright
if (tiltState == HIGH) {
// Turn LED on
digitalWrite(ledPin, HIGH);
} else {
// Turn LED off
digitalWrite(ledPin, LOW);
}
}
このループは継続的に実行され、ティルトスイッチの状態とそれに対応するLED制御のリアルタイム監視を可能にします。出力はシリアルモニタで確認できるため、機能を簡単に検証できます。
デモンストレーション / 期待すること すべてが正しく配線され、コードがアップロードされると、傾斜スイッチが直立しているときにLEDが点灯し、傾けると消灯します。この傾斜状態とLEDの応答との直接的な相関関係は、傾斜スイッチの機能を効果的に示しています。一般的な落とし穴には、配線が正しいことを確認し、ショート回路を避けるために抵抗が適切に配置されていることを検証することが含まれます(ビデオの12:00で)。
ビデオのタイムスタンプ
00:00 スタート
1:44 イントロダクション プロジェクト
2:49 ドキュメンテーション
6:43 Arduino配線の説明
10:39 Arduinoコードの説明
13:40 Arduino IDEでESP32ボードとCOMポートを選択しています。
15:22 プロジェクトティルトのデモンストレーション
画像
ESP32-18_tile_wiring
tilt_switch
ESP32-18_tile_schematic
コード
817-ESP32 Tutorial 18/55- Arduino code for tilt sensor
言語: C++
コードを読み込む