ガレージパーキングアシスタント
コンポーネントと消耗品
> |
| × | 1 | |||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
必要なツールとマシン
> |
| |||
|
このプロジェクトについて
これは、アドレス指定可能なRGB LEDを使用するガレージパーキングセンサーで、車両のドライバーが停止(駐車)位置に近づき、最終的に到達したときにフィードバックを提供します。動作中のビデオを見る:
手持ちのアクリル製1/2 "径の半円形素材(長さ20-7 / 16"にカット)を中心にデザインし、アリ溝部分をまとめるレンズとして使用しました。これはインターネットで1フィートあたり約0.66ドルで簡単に購入できますが、透明なフィラメントを使用してセグメントに印刷できるレンズのモデルも含まれています。
ステップ1
LEDストリップを準備します(WS2812bLEDストリップは個別にアドレス指定可能なRGBSmart Pixel 30 LEDの1メートルの長さのストリップ)。ストリップを2つの15個のLEDセグメントにカットし、各ストリップの最初の各セグメントにリード線をはんだ付けします。リードが必要な場所からのストリップポイント「AWAY」の矢印。
ステップ2
ケースを中央にして、すべてのレールセクション(1つの外側レールと2つの内側レールセグメント)を組み立てます。
ステップ3
LEDストリップからのリード線を両側のケースに送り、バッキングテープで接着します。 LEDストリップは各外側レール端から約1/2 "停止することに注意してください
ステップ4
レンズを両端にスライドさせてケースに完全に挿入し、すべてのアリ溝を所定の位置にロックします。プリントレンズを使用する場合は、各面に4枚必要です。ダブテールエリアを橋渡しすることを目的としています。
ステップ5
エンドキャップ付きのアセンブリをバッカーボードに取り付けます(幅2 "、長さ45-1 / 8"にカットされた1/2 "mdfを使用しました)。小さななべ頭または平頭ネジを使用してアセンブリを取り付けます(注:丸頭は使用しないでください。使用しないと、パラメータの再プログラミングに必要な場合、USBケーブルが後でスロットに収まりません。)
ステップ6
電子機器を配線します。コンデンサの位置に注意してください。電圧スパイクの供給を防ぐためにコンデンサが必要です。 LEDの信号線(ピン7)には抵抗が使用され、Arduino(V +)にはダイオードが使用され、電源がオンになっていない状態でUSBが挿入された場合の電圧のバックフィードを防ぎます。ダイオードがないと、ArduinoはLEDに電圧を供給しようとし、調整されたオンボード電圧を介して過剰な電流を発生させます。ダイオードと抵抗器は配線に沿ってはんだ付けされ、熱収縮チューブで覆われています。ケースは、電源からワイヤーを供給するために、Arduinoの下の底近くの外側からドリルで穴を開ける必要があります。サイズは使用するワイヤーの種類によって異なるため、これをモデルに設計しませんでした。 18/2ワイヤーの使用をお勧めします。ドアベルワイヤーを使用して、ケースのすぐ外側にコネクタを配置しました。
<図>
ステップ7
2.5mmネジを使用してArduinoを押さえ、Arduinoへの配線接続を完了します。ホールドエンドはケースの四角い穴に突き出ています。インストールを簡単にするために、Arduino(未使用)の最も外側のピンを取り外しました。
<図>
ステップ8
2.5mmネジを使用して超音波検出器(HC-SR02)を取り付け、押さえて覆います。センサーへの完全なはんだ付け接続。注:組み立て時に側壁と干渉しないように、ワイヤーがセンサーの中心を向いていることを確認してください。
<図>
ステップ9
3mmネジでケースにカバーを取り付けます。
ステップ10
以下のコードを使用してArduinoをプログラムします。プログラムをコンパイルする前に、IDEライブラリを「FastLED」および「QuickStats」で更新してください。注:「startdistance」(センサーが最初に車両の接近を検出するポイント)と「stopdistance」(車両の最終的な駐車スポット)のパラメーターを調整します。センサーの範囲は3 cm〜400センチメートルであるため、開始パラメーターと停止パラメーターは範囲内である必要があります。これらの制限。
ステップ11
ガレージドアオープナーに、コンセントが組み込まれたランプソケットアダプターを取り付けます。5VDC電源をこのラインに接続し、ライトバーユニットに接続します。ライトバーは、ドアが開いてからドアのライトが消えるまでのみ点灯します。これにより、ライトバーが常にオンになるのを防ぎます。
コード
- Arduinoコード
Arduinoコード Arduino
/ **ガレージパーキングセンサー-BobTorrence発行* /#include#include QuickStats stats; //このクラスのインスタンスを初期化します//ピンを定義します#defineLED_PIN 7#define NUM_LEDS 15const int trigPin =9; const int echoPin =10; //変数を定義しますCRGBleds [NUM_LEDS]; float duration; float durationarray [15]; int distance; int stopdistance =115; //センサーからの駐車位置(CENTIMETERS)int startdistance =400; //車が引き込むときにセンサーからスキャンを開始する距離(CENTIMETERS)int incremental =((startdistance-stopdistance)/ 15); void setup(){pinMode(trigPin、OUTPUT); // trigPinをOutputpinMode(echoPin、INPUT);として設定します// echoPinをInputFastLED.addLeds (leds、NUM_LEDS); Serial.begin(9600);として設定します//シリアル通信を開始します} void loop(){for(int i =0; i <=14; i ++){// trigPindigitalWrite(trigPin、LOW); delayMicroseconds(2); //をクリアしますtrigPinをHIGHに設定します10マイクロ秒の状態digitalWrite(trigPin、HIGH); delayMicroseconds(10); digitalWrite(trigPin、LOW); // echoPinを読み取り、音波の移動時間をマイクロ秒単位で返しますdurationarray [i] =pulseIn(echoPin、HIGH); distance =durationarray [i] * 0.034 / 2; Serial.print(distance); Serial.print( ""); } duration =(stats.median(durationarray、15)); //距離の計算distance =duration * 0.034 / 2; //シリアルモニターに距離を出力Serial.print( "Distance:"); Serial.println(distance); if(distance =stopdistance + incremental * 14){for(int i =0; i <=14; i ++){leds [i] =CRGB(0、255,0); } FastLED.show(); delay(50);}}
カスタムパーツとエンクロージャー
回路図
-ダイオードの方向を修正するために4-21-19を更新 製造プロセス