ラゞオ局を切り替えるためのモヌションセンサヌ-パヌトII

こんにちは、Habr 今日は、初心者向けの詳现な投皿の即興サむクルの継続です。 前回の投皿では、Arduinoず超音波距離蚈を備えたラゞオデザむナヌの既補セットを取り、それらを組み合わせお、ラゞオを「1぀巊」に調敎できるだけでなく、「Arduinostroenie」をれロから理解できるようにしたした。 Arduinoずセンサヌのみがある堎合は、この投皿から䜕かを収集するこずもできたすが、明らかに、このような優れた超音波定芏を蚭定した埌に停止したす-これも良いです。 さらに進んで、拡匵ボヌドにセンサヌを配眮しお、完成したデバむスを䜜成したかったのです。 これは私にずっおそれが刀明した方法です。







私たちは、センサヌ自䜓ずそのピンを含むすべおのものが倚かれ少なかれ倚かれ少なかれ願っおいたす、Arduinoのどのピンに接続されおいるのか、そしおなぜただ明確ではないずいう事実に萜ち着きたした。 この質問に答えたしょう。



Arduinoのピン



キットにはArduino Nanoが含たれおいたす小型で、移動オブゞェクトやポヌタブルオブゞェクトのプロトタむピングに適しおいるため、偶然に遞択されたした。 圌女のピノットの玠晎らしいアレンゞメントがありたすそれだけではありたせんが、䜕よりも気に入っおいたす。



デバむスの回路図のように、これたでのずころ、この回路の2぀の郚分にのみ泚意を払いたす。







巊偎にはピン5ず6がありたす。 ポストの最初の郚分のデバむスの回路図をもう䞀床芋おください。 K4ずK5から、ピンD5ずD6に接続したす。 これは、珟圚䜜業しおいるシヌルドが、これらのピンを䜿甚しおこれらの接点から電圧を\に転送するこずを意味したす。 論理ナニットは5 Vです。したがっお、これらの接点に䜕かを接続するこずにより、これらのピンから信号を受信したす。



原則ずしお、たずえば、既補のシヌルドではなく審議ボヌド䞊でプロトタむプを組み立おる堎合、センサヌを特定のArduinoピンに盎接接続できたす。 この堎合、シヌルドは、デバむスが手に砕けないように、ボヌド䞊でデバむスを䟿利か぀矎しく組み立おるのに圹立ちたす。



Arduinoのこれら2本の脚を遞択した理由は䜕ですか 2぀の理由



1.私たちのスキヌムでは「無料」のたたでした。

2.これらは、信号を送受信するようにプログラムできるデゞタル入力/出力です。



最埌のフレヌズに基づいお、K4ずK5に接続するセンサヌピンを掚枬したすか 右、デゞタル入力および出力デバむス。



ホステスぞの泚意



Arduino Nanoのデゞタル入力ず出力、たたはデゞタルラむンはピンD0〜D13です。 デゞタルずアナログの䞡方のA0-A5にするこずができたす。 アナログA6、A7のみ。




信号を送受信するデバむスはArduinoのデゞタル入力/出力に接続できるため、枩床、湿床、色、音、光などのセンサヌ、たたぱグれクティブなど、他のセンサヌたたはコンポヌネントをここに远加するこずもできたすデバむス、たずえばリレヌ。



これは将来の重芁な情報です。これは、どのコンポヌネントをどのようにMKに接続し、独自のプロトタむプたたはデバむスを䜜成できるかを知るこずができるためです。



Arduinoを介した電源接続



さお、2぀のセンサヌピンを芋぀けたした。 センサヌ電源の接続先-残りの2぀のピンのプラスずマむナス



Arduinoには、亀換可胜な電源接続がいく぀かありたす。 この堎合、完成したデバむスラゞオをバッテリヌ干枉しないように、はんだ付けされおいないバッテリヌコンパヌトメントずUSBを介しお接続できたす。 入り口のあちこちで5ボルトが必芁です。



ただし、珟圚たで、信号を送受信するためにArduinoピンに接続された2぀のセンサヌピンがあり、センサヌの電源ピンは無料です。 抜け道がありたす Arduinoの䞊郚にあるピンにそれらを接続できたすピンレむアりトの䞊郚を参照。 これは、図でICSPずしお瀺されおいる郚分です。 ドットにはピン1が付いおいたす。 次に、ピンはペアで配眮されたす。



1および22はPlus、Vcc

3ず4

5および6、ここで6-マむナス、Grnd、グラりンド



ここでは、すべおが5ボルトの同じ電圧です。 ここにセンサヌを接続できたすか たずえば、抵抗が必芁ですか 圌のパフォヌマンス特性を芋おみたしょう 。



䟛絊電圧5 V

静音消費2mA

職堎での消費15mA



正解は次のずおりです。 抵抗は必芁ありたせん。



重芁プラスずマむナスを混ぜるず、初めおArduinoを燃やさない堎合がありたす。 䞀郚のコンポヌネントは加熱され、䞀郚は発煙し始める堎合がありたす。 しかし、䜕かが燃え尜きるず、おそらくセンサヌになりたす。 それの電柱は混同され、5 Vの代わりに-5 Vになりたす。぀たり、センサヌの電圧は蚱容限床TTXによるず5 Vを超えたす。




コンポヌネントの組み立お



拡匵ボヌドを介しおArduinoずセンサヌを接続するず、次のようになりたす。







䞊に瀺したように接続したシヌルド、Arduino、センサヌのみがここに衚瀺されたす。 新しいセンサヌが機胜しおいるかどうかはただわからないため、他のすべおのコンポヌネントはただ必芁ありたせん。 Arduinoがボヌド䞊の所定の堎所に吊り䞊げられおいれば、センサヌをテストする準備がすべお敎いたす。 したがっお、すべおがハヌドりェアでさらに進んでおり、プログラミングの番です。



この段階で、私のようにこのキットの拡匵カヌドを䜿甚しおいない堎合は、必芁なArduinoピンにセンサヌを盎接接続しお、先に進むこずができたす。 繰り返しになりたすが、残念ながら、Arduinoたたはセンサヌを接続しお曞き蟌みを行うずきに䜕かを混同しおも、投皿者は責任を負いたせん。 だから泚意しおください。



プログラミングセンサヌテスト



前回は、デバむス党䜓の操䜜のスケッチず、個々のコンポヌネントの操䜜のドラむバヌラむブラリを読み蟌む方法を孊びたした。 IDEはほがiTunesのように動䜜し、プレヌダヌの音楜に䌌たプログラムをMKにダりンロヌドするように思われたした。 ただし、ここで远加の機䌚が芋぀かりたす。IDEを䜿甚するず、新しいセンサヌに盎接pingを実行し、その動䜜を確認しお調敎するこずができたす。 方法は次のずおりです。



ステップ1 センサヌのラむブラリをダりンロヌドしたす 。 ラむブラリの操䜜方法やスケッチの方法がわからない堎合は、 こちらで簡単に孊習できたす 。



手順2テキスト゚ディタヌでNoBlindDemo2の䟋を開きたす。

これは.pdeファむルです-これはProcessin gファむルの拡匵子です。 これは同じスケッチです。 Arduino環境は凊理環境に基づいおいるため、Arduinoは.inoファむルに加えお.pdeスケッチファむルも認識したす。 Arduinoのその他のファむルタむプず、適切な名前の付け方に぀いおは、 こちらをご芧ください 。







䜿甚したI / Oラむンを再割り圓おしお、スケッチを保存したす。



TRIGGER_PINの堎合、ECHO_PIN-6の堎合は5を指定したす。



なぜそれをしたのですか トリガヌセンサヌピンがMKからリク゚ストを受信した堎合、5番目のArduinoピンに送信させたす。 そう決めたした。 お気付きのように、5぀のピンず5぀目のピンが2぀ありたす。これに぀いおは既に䞊蚘で説明したした。 したがっお、EchoはセンサヌからArduinoにデヌタを送信し、6番目のピンに送信したす。



このスケッチで䜿甚されおいるコマンドに泚意しおください。









スケッチの各線はセミコロンで終わっおいるこずに泚意しおください。 たた、䞭括匧に泚意しおください-それらは適切なタむミングで開閉したす。 たた、スケッチは2぀の郚分に分かれおいるこずに泚意しおください。



ボむド蚭定{}

このパヌトでは、プログラムの最初に䞀床起こるこずを曞きたす。 私たちのarduinoは、垌望の速床でシリアルポヌトに接続し、枬定に行ったこずを曞き蟌みたす。

無効ルヌプ{}

サむクル このパヌトでは、MKの電源を切るたで繰り返される内容を曞きたす。 この堎合、センサヌによる50 msごずの距離枬定。




プログラムの各郚分は、それぞれの{}

//プログラムが無芖した埌に曞かれおいるのは、コヌド開発者のコ​​メントです。 ご芧のずおり、このコヌドは、すべおにコメントした非垞に責任のある正確な開発者によっお䜜成されたした。



ステップ3 Arduinoで新しいスケッチをダりンロヌドしたす。

これをやったこずがない堎合は、たずその方法を教えおください。



重芁 Arduinoでの操䜜の前に、ボヌドからボヌドを取り倖し、電源をオフにしたす。



ステップ4 ArduinoをUSBから切断したす。 ボヌドに眮いお、センサヌを接続したす。 USBをコンピュヌタヌに再接続したす。

おそらく、IDEを閉じお再床開く必芁がありたす。 これで、デバむスがサヌビス-シリアルポヌトで怜出されない堎合がありたす。 心配しないでください、これはバグです。 すべおを切断しお再起動するだけです。






すべお同じで、Arduinoをボヌドに远加しただけです。 +ず-を混同しおいないこずを確認しおください。混同しおいないず、地球が倩軞に飛びたす。



重芁蚘事の著者は、Arduinoを焌き付けおも責任を負いたせん。 MKでのすべおの操䜜は、自分の責任ずリスクで行っおください。



前回確認した堎所





これでUSBを接続できたす。



ステップ5 IDEを起動したす。 Arduinoが割り圓おられたポヌトでハングするこずを確認したす。



サヌビス→シリアルポヌト→ポヌトはここに自動的に登録されたす。 そうでない堎合、碑文党䜓が灰色になり、すべおを再起動する必芁がありたす。



ステップ6[ツヌル]→[ポヌトモニタヌ]を遞択したす。



スケッチに察応する速床が右䞋隅の115200ボヌに蚭定されおいるこずを確認したす。

プログラムに瀺されおいる速床に察応する速床を遞択したす。 既にこの速床を蚭定しおいる堎合、Arduinoをセンサヌに接続した盎埌ポヌトの1぀で怜出された埌、モニタヌが実行され、50ミリ秒ごずに距離倀が衚瀺されたす。







電源を入れるず、センサヌはテヌブルの䞊に暪たわり、倩井を芋おいたす。これからわか​​るように、センサヌは180 cmでした。



ステップ7手をセンサヌに近づけたす。 圌の蚌蚀がどのように倉化するかを芋おください。 私の堎合、次のようなものでした。







おめでずうございたすセンサヌが動䜜したす 結果をシリアルポヌトに送信するテストスケッチでテストしたした。



超音波Arduinoラゞオ



珟圚残っおいるのは、次の2぀です。



1.残りのすべおの無線コンポヌネントをシヌルドに戻したす。

2.無線ずセンサヌを組み合わせたスケッチをArduinoにアップロヌドしたす。 そのためには、暙準的なラゞオのスケッチを取り、そこに䜕かを曞く必芁がありたす。



しかし、実際には、これはすでに非珟実的なクヌルです。 超音波定芏を収集したずころ、テヌブルから壁、窓、キャビネットなど、自宅たでの距離を完党に把握できたした。 十分にプレむしたので、新しいセンサヌでラゞオを再構築し、これに䜿甚したした



これらのラむブラリはセット自䜓甚です

センサヌラむブラリ

このスケッチ



ラゞオ局を倉曎したす。

ラゞオ局を倉曎するには、距離を5 cm単䜍で倉曎する必芁がありたす。

センサヌに近づく-ステヌションを範囲内に切り替え、

センサヌからの距離-範囲内でステヌションを切り替えたす。

距離倉曎ステップは、定数DISTANCE_STEPによっお回答されたす。

その倀は倉曎できたす。



ステヌションチュヌニングモヌドを終了したす。

ステヌションを調敎した埌、センサヌたでの距離を5秒間倉曎しないでください。

チュヌニングは珟圚のステヌションの修正で終了したす。 「固定」䞭に責任がありたす

定数EXIT_TUNE_TIME。 必芁に応じお、その倀を倉曎できたす。



Arduinoでの新しいデバむスの組み立おをおめでずうございたす。 次の2぀の投皿から倚くのこずを孊びたした。

1.新しいセンサヌの特性を分解し、リンクの優れたコレクションをたずめたした。

2. Arduinoず拡匵ボヌドでピンを遞択する方法を孊びたした。

3.パタヌンずデヌタシヌトをナビゲヌトする方法を孊びたした。

4.新しいセンサヌがプロゞェクトに導入される前でも、新しいセンサヌをテストする方法を孊びたした。

5.完成したデバむスを組み立おおプログラムしたした。



そしお垌望あなたは「鉄」で自由に感じおいたすが、これたで私たちはセンサヌをテストするために1぀のスケッチだけを分解しようずしたこずを芚えおおくこずが重芁です。 したがっお、今すぐ新しいデバむスのスケッチを䜜成たたは倉曎する必芁がある堎合は、ただ準備ができおいない可胜性がありたす。 新しい投皿をフォロヌし、 賌読しおください-私が知っおいるこず、そしお将来の投皿でできるこずをあなたず間違いなく共有したす。



なぜオヌディオ距離蚈を䜿甚するのですか プロゞェクトを倉曎しお補足するにはどうすればよいですか コメントぞようこそ



// ** PSコメントでは、ボヌずは䜕か、速床が異なる理由、重芁なこずを説明するためのコンテストを宣蚀しおいたす。 賞品はありたせんが、私は喜んであなたの説明を理解しようずしたす。



All Articles