プロジェクト12:超音波障害物回避タンク
(1)説明:
前のプロジェクトでは、超音波音声追従スマートカーを作りました。実際には、同じコンポーネントと同じ配線方法を使用し、テストコードを変更するだけで、超音波障害物回避スマートカーに変えることができます。このスマートカーは人の手の動きに合わせて動くことができます。
超音波センサーを使用して、スマートカーと前方の障害物との距離を検出し、このデータに基づいて2つのモーターの回転を制御することで、スマートカーの動きを制御します。
検出 |
|
|---|---|
前方の障害物との距離(超音波センサーで計測) |
a (cm) |
右側の障害物との距離(超音波センサーで計測) |
a2 (cm) |
左側の障害物との距離(超音波センサーで計測) |
a1 (cm) |
設定:サーボの開始角度を90°に設定
条件1 |
条件2 |
条件3 |
動作 |
|---|---|---|---|
a<20 |
500ms停止;サーボの角度を180°に設定し、a1を読み取り、100msの遅延;サーボの角度を0°に設定し、a2を読み取り、0.1sの遅延。 |
||
a1<50 |
a1とa2を比較 |
||
a1>a2 |
サーボの角度を90°に設定し、700ms左回転(PWMを255に設定)し、前進(PWMを200に設定)。 |
||
a1<a2 |
サーボの角度を90°に設定し、700ms右回転(PWMを255に設定)し、前進(PWMを200に設定)。 |
||
a1≥50 |
ランダム |
サーボの角度を90°に設定し、500ms左回転(PWMを255に設定)し、前進(PWMを200に設定)。 |
|
a≥20 |
前進(PWMを100に設定) |
(2)フローチャート:

(3)接続図:

(注意: サーボの茶色、赤色、オレンジ色のワイヤーはそれぞれ拡張ボードのG (GND)、V(5V)、D10に接続されます;超音波センサーについては、VCCピンを5v (V)に、Trigピンをデジタル12 (S)に、EchoピンをD13 (S)に、GndピンをGnd (G)に接続します;前のプロジェクトと同様です。)
(4)テストコード:
以下のようにブロックをドラッグしてコードを編集することもできます。
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
(11)
完全なテストコード
(注意: コードをアップロードする前にBluetoothモジュールを接続しないでください。コードのアップロードにもシリアル通信を使用しており、Bluetoothシリアル通信と競合が生じ、アップロードが失敗する可能性があります。)

(5)テスト結果:
テストコードのアップロードが成功したら、配線し、DIPスイッチをON側に切り替えて電源を入れます。スマートカーは前進し、自動的に障害物を回避します。
