ロボットは、建設、軍事、医療、製造などのすべての分野で自動化において重要な役割を果たしています。ラインフォロワーロボット、コンピューター制御ロボットなどのいくつかの基本的なロボットを作成した後、この加速度計ベースのジェスチャー制御ロボットを使用して開発しましたarduinouno。このプロジェクトでは、手の動きを使用してロボットを駆動しました。この目的のために、加速度に作用する加速度計を使用しました。
必要なコンポーネント
- Arduino UNO
- DCモーター
- 加速度計
- HT12D
- HT12E
- RFペア
- モータードライバーL293D
- 9ボルト電池
- バッテリーコネクター
- USBケーブル
- ロボットシャーシ
RFペア:
ジェスチャー制御ロボットはボタンやジョイスティックなどの任意の他の方法の代わりに手を使用して制御されます。ここでは、手を動かすだけでロボットを制御できます。手にはRF送信機と加速度計を備えた送信機が使われています。これにより、ロボットにコマンドが送信され、前進、後進、左折、右折、停止などの必要なタスクを実行できるようになります。これらのタスクはすべて、手のジェスチャーを使用して実行されます。
ここで最も重要なコンポーネントは加速度計です。加速度計は、+-3gの範囲の3軸加速度測定装置です。このデバイスは、ポリシリコン表面センサーと信号調整回路を使用して加速度を測定することによって作られています。このデバイスの出力は本質的にアナログであり、加速度に比例します。この装置は、傾けたときの静的重力加速度を測定します。そして、動きや振動の形で結果を出します。
シリコンウェーハの上に配置されたadxl335ポリシリコン表面マイクロマシニング構造のデータシートによると。ポリシリコンスプリングは、ウェーハの表面上に構造を吊り下げ、加速力に対する抵抗を提供します。構造のたわみは、独立した固定プレートと可動マスに取り付けられたプレートを組み込んだ差動コンデンサを使用して測定されます。固定プレートは、180°位相がずれた方形波によって駆動されます。加速度は移動質量を偏向させ、差動コンデンサのバランスを崩し、振幅が加速度に比例するセンサー出力をもたらします。次に、位相に敏感な復調技術を使用して、加速度の大きさと方向を決定します。
加速度計のピンの説明
- Vcc5ボルト電源はこのピンに接続する必要があります。
- X-OUTこのピンはx方向にアナログ出力を提供します
- Y-OUTこのピンはy方向にアナログ出力を提供します
- Z-OUTこのピンはz方向にアナログ出力を提供します
- GNDグラウンド
- STこのピンはセンサーの感度を設定するために使用されます
回路図と説明
ジェスチャー制御ロボットは、次の2つのセクションに分かれています。
- 送信機部分
- レシーバー部分
送信機部分では、加速度計とRF送信機ユニットが使用されます。加速度計がアナログ出力を提供することはすでに説明したので、ここではこのアナログデータをデジタルに変換する必要があります。この目的のために、ADCの代わりに4チャンネルのコンパレータ回路を使用しました。基準電圧を設定することにより、デジタル信号を取得し、この信号をHT12Eエンコーダーに適用してデータをエンコードするか、シリアル形式に変換してから、RF送信機を使用してこのデータを環境に送信します。
受信機側では、RF受信機を使用してデータを受信し、HT12Dデコーダーに適用しました。このデコーダICは、受信したシリアルデータをパラレルに変換し、arduinoを使用して読み取ります。受信したデータによると、前進、後進、左、右、停止の2つのDCモーターを使用してロボットを駆動します。
ワーキング
送信機を手に置くと、ジェスチャー制御ロボットが手の動きに合わせて動きます。手を前に傾けると、ロボットは前進を開始し、次のコマンドが与えられるまで前進を続けます。
手を後ろに傾けると、ロボットは状態を変え、他のコマンドが与えられるまで後ろ方向に動き始めます。
左側に傾けたら、次のコマンドまで左に曲がります。
右側で手を傾けると、ロボットが右に曲がります。
そして、ロボットを停止するために、私たちは手を安定させます。
送信機セクションの回路図
受信機セクションの回路図
このハンドジェスチャ制御ロボットの回路は非常に単純です。上記の回路図に示されているように、RFペアは通信に使用され、arduinoに接続されます。モータードライバーをarduinoに接続してロボットを動かします。モータードライバーの入力ピン2、7、10、および15は、それぞれarduinoデジタルピン番号6、5、4、および3に接続されています。ここでは、2つのDCモーターを使用してロボットを駆動し、1つのモーターをモータードライバー3と6の出力ピンに接続し、もう1つのモーターを11と14に接続しました。9ボルトのバッテリーは、モーターを駆動するモータードライバーに電力を供給するためにも使用されます。 。
プログラムの説明
プログラムでは、まずモーターの出力ピンを定義しました。
そして、セットアップでは、ピン留めするための指示を与えました。
この後、「ifステートメント」を使用して入力を読み取り、相対演算を実行します。
このジェスチャ制御ロボットには、以下に示す合計5つの条件があります。
手の動き |
ジェスチャーからのArduinoへの入力 |
||||
側 |
D3 |
D2 |
D1 |
D0 |
方向 |
安定 |
0 |
0 |
0 |
0 |
やめる |
右に傾ける |
0 |
0 |
0 |
1 |
右に曲がる |
左に傾ける |
0 |
0 |
1 |
0 |
左折してください |
後ろに傾ける |
1 |
0 |
0 |
0 |
後方 |
フロントを傾ける |
0 |
1 |
0 |
0 |
フォワード |
上記の表の条件に従って、完全なプログラムを作成しました。以下は完全なコードです。