Solo-Drohne Servo-Steuerung mit Arduino: Firmata & pyMata Tutorial
Komponenten und Zubehör
| Arduino UNO | × | 1 |
| 3DR Solo Drohne | × | 1 |
| Servo Tower Pro MG996R | × | 1 |
| Solo Breakout Board (für Accessory-Port) | × | 1 |
Über dieses Projekt
Einführung
Die 3DR Solo bietet eine gute Entwicklungsumgebung, aber begrenzte I/O. Der Accessory-Port führt CAN, MAVLink-Seriell zum Pixhawk und USB zum SoloLink (i.MX6) heraus. Mit einem Arduino und StandardFirmata lassen sich benutzerdefinierte Sensoren, Servos, LEDs oder jede Arduino-Funktion anbinden.
Dieses Tutorial zeigt, wie man einen Servo per Arduino an der Solo steuert.
Software-Voraussetzungen
- Solo Firmware 1.2.0 oder höher
- Arduino IDE
- FileZilla (SFTP-Client)
- PuTTY oder anderer SSH-Client
Schritt 1: StandardFirmata auf Arduino flashen
- Arduino IDE:
Datei → Beispiele → Firmata → StandardFirmata - Board & Port wählen → Hochladen
Schritt 2: Hardware-Aufbau
Teile: Arduino, Servo, Solo Breakout Board (aktuell nicht kommerziell erhältlich – siehe GitHub).
Schritt 3: pyMata & Python-Skript herunterladen
pyMata (Python-Bibliothek für Firmata) + Skript SoloServoSweep.py.
Schritt 4: Dateien auf Solo übertragen
- Mit Solo-WLAN verbinden (SSID:
SoloLink_xxx) - Per FileZilla (SFTP, Host:
10.1.1.1, User:root, Passwort:root) Skript in/home/root/kopieren
Schritt 5: Per SSH auf Solo zugreifen
PuTTY: Host 10.1.1.1, Port 22, User root, Passwort root.
Schritt 6: pyMata installieren
pip install pymata
Schritt 7: Beispiel ausführen
python SoloServoSweep.py
Code
SoloServoSweep.py (Python)
from PyMata.pymata import PyMata
import time
import sys
SERVO_MOTOR = 9
END = 170
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()
Custom Parts / Gehäuse
Solo Breakout Board: Breakout für 3DR Solo Accessory Port – GitHub
Schaltpläne

Herstellungsprozess
- Bluetooth-gesteuerter Arduino-Spybot bauen – Überwachungsroboter mit IP-Kamera
- FlickMote: Gestensteuerung per Ultraschall & IR für Smart Home (Arduino 101)
- DIY Arduino TV-B-Gone: Universelle TV-Aus-Fernbedienung
- Einen eigenen LED-Master-Clock mit Alarm bauen – aus 12 Metern Entfernung ablesbar
- Servogesteuerter Hindernisvermeidungs-Roboter: Bauen mit Arduino & HC-SR04
- Find Me: Smarter Gegenstands-Finder mit Arduino und Bluetooth
- Optimierte Stromversorgungslösungen für Arduino-Projekte
- Arduino Tic Tac Toe mit MAX7219 LED-Matrix und Karton-Gehäuse
- Intelligenten Arduino-Vierbeiner-Roboter bauen: Schritt-für-Schritt-Anleitung
- Arduino & MPU6050: Präzise Servomotor-Steuerung mit SG90 & MG996R