工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

ArduinoでSoloドローンのサーボ制御をマスター:簡単セットアップ&スイープチュートリアル

部品と材料

Arduino UNO×1
3DR Solo×1
サーボ (Tower Pro MG996R)×1
Soloブレークアウト基板×1

このプロジェクトについて

イントロ

Soloには優れた開発環境がありますが、I/Oが不足しています。現在、アクセサリーポートからはCAN、PixhawkへのMavlinkシリアル、SoloLink(imx6)へのUSBが出ています。ArduinoとFirmataを使えば、カスタムセンサー追加、サーボ制御、LED点滅、その他Arduinoのあらゆる機能を追加できます。

このチュートリアルでは、ArduinoとSoloを連携させてサーボを制御する手順を解説します。

ソフトウェア前提条件:

ステップ1:Arduino UnoにFirmataホストをアップロード

ArduinoでSoloドローンのサーボ制御をマスター:簡単セットアップ&スイープチュートリアル
ArduinoでSoloドローンのサーボ制御をマスター:簡単セットアップ&スイープチュートリアル

例題から StandardFirmata を開く。ボードとポートを選択。アップロード!

ステップ2:ハードウェアセットアップ

パーツ

ArduinoでSoloドローンのサーボ制御をマスター:簡単セットアップ&スイープチュートリアル
ArduinoでSoloドローンのサーボ制御をマスター:簡単セットアップ&スイープチュートリアル
ArduinoでSoloドローンのサーボ制御をマスター:簡単セットアップ&スイープチュートリアル
ArduinoでSoloドローンのサーボ制御をマスター:簡単セットアップ&スイープチュートリアル

※ ブレークアウト基板は現時点では販売されていません。詳細はこちらを参照。

組み立て

ArduinoでSoloドローンのサーボ制御をマスター:簡単セットアップ&スイープチュートリアル
ArduinoでSoloドローンのサーボ制御をマスター:簡単セットアップ&スイープチュートリアル
ArduinoでSoloドローンのサーボ制御をマスター:簡単セットアップ&スイープチュートリアル
ArduinoでSoloドローンのサーボ制御をマスター:簡単セットアップ&スイープチュートリアル
ArduinoでSoloドローンのサーボ制御をマスター:簡単セットアップ&スイープチュートリアル

電源投入

ArduinoでSoloドローンのサーボ制御をマスター:簡単セットアップ&スイープチュートリアル

ステップ2:pyMataとコードのダウンロード

pyMata

SoloServoSweep.py

ステップ3:Soloへファイル転送

ArduinoでSoloドローンのサーボ制御をマスター:簡単セットアップ&スイープチュートリアル
ArduinoでSoloドローンのサーボ制御をマスター:簡単セットアップ&スイープチュートリアル

ステップ4:SoloにSSH接続

OSのSSHクライアントでSoloにSSH接続。Windowsの場合はPuTTYを使用。

ArduinoでSoloドローンのサーボ制御をマスター:簡単セットアップ&スイープチュートリアル
ArduinoでSoloドローンのサーボ制御をマスター:簡単セットアップ&スイープチュートリアル
ArduinoでSoloドローンのサーボ制御をマスター:簡単セットアップ&スイープチュートリアル

SoloのWi-Fiに接続したままにしてください!

写真のキャプションも参照してください

ステップ5:pyMataのインストール

SSHセッションで以下のコマンドを実行:

期待される結果:

ArduinoでSoloドローンのサーボ制御をマスター:簡単セットアップ&スイープチュートリアル

ステップ7:例の実行

SSHセッションを開いたまま以下を実行:

ArduinoでSoloドローンのサーボ制御をマスター:簡単セットアップ&スイープチュートリアル

コード

SoloServoSweep.py Python

SoloからPythonでサーボを駆動

from PyMata.pymata import PyMata
import time
import sys

SERVO_MOTOR = 9  # サーボ接続ピン
END = 170        # サーボ最大移動角度

# PyMataインスタンス作成
board = PyMata("/dev/ttyACM0")

# ピンをサーボとして設定
board.servo_config(SERVO_MOTOR)

try:
    while True:
        for i in range(0, END):      # スイープアップ
            board.analog_write(SERVO_MOTOR, i)
            time.sleep(.015)
        for i in range(END, 0, -1):  # スイープダウン
            board.analog_write(SERVO_MOTOR, i)
            time.sleep(.015)
except KeyboardInterrupt:
    board.close()
    sys.exit()

カスタムパーツとエンクロージャ

Soloブレークアウト基板

3DR Soloアクセサリーポート用ブレークアウト基板
https://github.com/3drobotics/Pixhawk_OS_Hardware/tree/master/Accessory_Breakout_X1

回路図

ArduinoでSoloドローンのサーボ制御をマスター:簡単セットアップ&スイープチュートリアル

製造プロセス

  1. Bluetooth操作のArduinoスパイボットを自作する
  2. FlickMote:ジェスチャー操作のIRリモコンでスマートホームを制御
  3. 自作Arduino TV-B-Gone:全テレビ対応の万能リモコン
  4. 12メートル先から見える大型LEDマスタークロック(アラーム機能付き)を自作しよう
  5. ArduinoとHC-SR04で作るサーボ駆動障害物回避ロボット
  6. ArduinoとBluetoothで作るスマート紛失防止タグ「Find Me」
  7. Arduinoプロジェクトのための最適化電源ソリューション
  8. Arduino三目並べ:MAX7219 LEDマトリクスと段ボールケースで自作
  9. スマートArduino四足歩行ロボットの製作:ステップバイステップガイド
  10. Arduino & MPU6050:SG90 & MG996Rサーボの精密制御
  11. ゲーム用カスタムArduinoジョイスティックハンドルの製作