Arduinoベースの衝突検出警告システム
コンポーネントと消耗品
> ![]() |
| × | 1 | |||
| × | 1 | ||||
![]() |
| × | 2 | |||
![]() |
| × | 1 | |||
![]() |
| × | 2 |
このプロジェクトについて
これは、Arduinoベースの衝突検出警告システムです。この種のシステムは、自動車産業で最も急速に成長している安全機能です。このようなシステムにより、車両は衝突の可能性を識別し、ドライバーに視覚的および音声的な警告を与えることができるため、ドライバーは衝突を回避するために必要な措置を講じることができます。このプロジェクトのアイデアはArduinoコントローラーに基づいており、プロジェクト全体でこのシステムがどのように機能するかを非常によく理解できます。このシステムを作成できるように、段階的な方法を説明します。ハードウェア接続、ピン情報、Arduinoプログラムが明確に説明されています。
ステップ1:次のアイテムを集めてください
- コンピューター:これは、コントローラーにプログラムとフラッシュプログラムを書き込むために必要です。また、ArduinoWebサイトのダウンロードセクションから無料で入手できるArduinoIDEをインストールする必要があります。
- コントローラー:Arduinoマイクロコントローラーを使用しました。これは、Amazonなどのオンライン販売者から入手できます。
- センサー:HRSC-04超音波センサーを使用しました。
- ピエゾブザー:ピエゾブザーを使用して音声警告を発しました。
- LED:私が使用したLEDには、赤と青の2色があります。
- ワイヤー:ハードウェア接続にはジャンパー線が必要です。男性-男性、女性-女性、女性-男性など、あらゆる種類のジャンパー線を使用する必要があります。

ステップ2:すべてのハードウェアを接続する
最初のステップで収集したハードウェアは、ワイヤーを介してすべてをコントローラーに接続します。
センサーからコントローラーへのピン情報
センサーには、VCC、Trig、Echo、およびGNDの4つのピンがあります。接続:
- コントローラーの5VへのVCCピン
- コントローラのGNDピンからGNDへ
- コントローラーのピンをピン7にトリガーします
- コントローラーのピンをピン4にエコーします
ピエゾブザーからコントローラーのピン情報
ピエゾブザーには2つのピンがあります:
- 1つのピンをコントローラーのピン10に接続します
- 別のピンをコントローラーのGNDに接続します
コントローラーのピン情報への赤色LED
赤いLEDには2つのピンがあります:
- 1つのピンをコントローラーのピン2に接続します
- 別のピンをコントローラーのGNDに接続します
コントローラーのピン情報への青色LED
青色LEDには2つのピンがあります:
- コントローラーのピン13に1つのピンを接続します
- 別のピンをコントローラーのGNDに接続します
コントローラーからコンピューターへの接続情報
Arduinoを購入すると入手できるUSBデータケーブルがあります。このデータケーブルを使用して、コンピューターをArduinoボードに接続します。次に、ArduinoIDEを起動します。コンピュータを接続した後、メニューからボードとポートを選択する必要があります。ヘルプについては、添付のスクリーンショットを参照してください。
<図>
<図>

ステップ3:プログラムを書く
前のステップでは、ハードウェアのピン情報を定義しました。ここで、その情報を使用してプログラム命令を記述します。 Arduino IDEを起動し、自分でプログラムを書いてみてください。それ以外の場合は、私のプログラムを直接使用するか、添付の.ino形式のファイルをダウンロードできます。
このコードをコピーするときは、特定のメディアに書き込むときにプログラムで使用される一部の文字を貼り付けることができないため、注意する必要があります。 .ino形式のファイルをダウンロードすることをお勧めします。
////衝突警告システム//////// 2017年//////// Vijendra Kumar //// const int trigPin =7; const int echoPin =4; int buzz =10; long duration; int distance; //リセットを押すか、ボードに電源を入れると、セットアップ関数が1回実行されますvoid setup(){//デジタルピン13をoutput.pinMode(trigPin、OUTPUT); pinMode(echoPin、 INPUT); pinMode(13、OUTPUT); pinMode(2、OUTPUT); Serial.begin(9600);} //ループ関数は何度も何度も実行されますforevervoidloop(){// trigPindigitalWrite(trigPin、LOW)をクリアします; delayMicroseconds(2); // trigPinをHIGH状態に10マイクロ秒設定しますdigitalWrite(trigPin、HIGH); delayMicroseconds(10); digitalWrite(trigPin、LOW); // echoPinを読み取り、音波の移動時間をマイクロ秒単位で返します=pulseIn(echoPin、HIGH); //距離の計算distance =duration * 0.034 / 2; //シリアルモニターに距離を出力if(distance <=50 &&distance> =20){digitalWrite(13、HIGH); // digitalWrite(13、LOW); // LEDをオンにします(HIGHは電圧lです) evel)} else {digitalWrite(13、LOW); //電圧をLOWにしてLEDをオフにします// 1秒待ちます} if(distance <=20){digitalWrite(2、HIGH); tone(buzz、2000); delay(100); noTone(buzz); delay(100); tone(buzz、2000); delay(100); noTone(buzz); delay(100); tone(buzz、2000); delay(100); noTone(buzz); tone(buzz、2000); delay(100); noTone(buzz); delay(100);} else {digitalWrite(2、LOW); //電圧をLOWにしてLEDをオフにします// 1秒待ちます}}
<図> 
ステップ4:Arduinoボードをフラッシュする
すべての接続が完了したら、プログラムをArduinoボードにアップロードする準備が整いました。添付の画像を参考にしてください。
<図>
ステップ5:このシステムの仕組み
このシステムがどのように機能するかを説明しましょう。 3つの異なるゾーンを定義しました:
- ゾーン1:警告なし
- ゾーン2:視覚的な警告のみ(このゾーンでは、ドライバーは注意を払う必要があります)
- ゾーン3:視覚と音声の両方の警告(ドライバーは衝突を避けるために必要な措置を講じる必要があります)

<図>

<図>

<図>

<図>

ステップ6:セットアップをテストする
これで、システム全体をテストする準備が整いました。システムが機能していることを確認する方法については、上のビデオをご覧ください。
コード
- Arduinoベースの衝突検出警告システム
Arduinoベースの衝突検出警告システム Arduino
このコードはこのシステムに使用できます////衝突警告システム//////// 2017年//////// Vijendra Kumar //// const int trigPin =7; const int echoPin =4; int buzz =10; long duration; int distance; //リセットを押すか、ボードに電源を入れると、セットアップ関数が1回実行されますvoid setup(){//デジタルピン13を出力として初期化します。 pinMode(trigPin、OUTPUT); pinMode(echoPin、INPUT); pinMode(13、OUTPUT); pinMode(2、OUTPUT); Serial.begin(9600);} //ループ関数は何度も何度も実行されますforevervoidloop(){// trigPindigitalWrite(trigPin、LOW); delayMicroseconds(2); // trigPinをHIGH状態に10マイクロ設定しますsecondsdigitalWrite(trigPin、HIGH); delayMicroseconds(10); digitalWrite(trigPin、LOW); // echoPinを読み取り、音波の移動時間をマイクロ秒単位で返します。duration=pulseIn(echoPin、HIGH); //距離の計算=duration * 0.034 / 2; //シリアルモニターに距離を出力しますif(distance <=50 &&distance> =20){digitalWrite(13、HIGH); // digitalWrite(13、LOW); // LEDをオンにします(HIGHは電圧レベルです)} else {digitalWrite(13、LOW); //電圧をLOWにしてLEDをオフにします// 1秒待ちます} if(distance <=20){digitalWrite(2、HIGH);トーン(バズ、2000); delay(100); noTone(バズ); delay(100);トーン(バズ、2000); delay(100); noTone(バズ); delay(100);トーン(バズ、2000); delay(100); noTone(バズ);トーン(バズ、2000); delay(100); noTone(バズ); delay(100);} else {digitalWrite(2、LOW); //電圧をLOWにしてLEDをオフにします// 1秒待ちます}}
カスタムパーツとエンクロージャー
このピン情報を使用してください。ピン番号は自分で変更できますが、その場合はコードも変更する必要があります。 
回路図
この回路図に従って、ハードウェアをボード番号とピン番号に接続してください。 
製造プロセス