Einen Dynamixel-Servomotor von einem PC aus über Bluetooth steuern

Dieser Beitrag wurde unter Robotik aktuell, Tutorials abgelegt und mit verschlagwortet am von .

Mit diesem Tutorial lernen Sie, wie Sie Ihre Robotis Dynamixel-Servomotoren dank einer Bluetooth-Verbindung einfach von Ihrem Computer aus steuern können. Mit dieser Vorgehensweise können Sie Ihre Tests einfach durchführen und ersparen sich gleichzeitig nervige Kabelverbindungen.

Notwendige Hardware

  • 12V/5A Stromversorgung.
  • BBT-410 Dongle-Modul.
  • BT-410 Slave-Modul.
  • Dynamixel-Servomotor (hier ein MX-28).
  • OpenCM9.04.
  • OpenCM485
  • 3 (oder 4) poliges Kabel für Dynamixel.
  • Mikro-USB-Kabel.

Notwendige Software

  • Arduino.IDE.

Installation

Verbindungen:

  • Schließen Sie den Servomotor über das 3 (oder 4) Pin Dynamixel-Kabel an den OpenCM485 EXP an.
  • Schließen Sie den BT-410-Slave an das OpenCM9.04-Board am UART-Port an.
  • Verbinden Sie das OpenCM9.04-Board über das Mikro-USB-Kabel mit dem PC.

Das OpenCM9.04-Board ist eingeschaltet und das BT-410-Modul blinkt blau.

Software:

  • Laden Sie die Arduino.IDE-Software herunter.
  • Starten Sie Arduino.IDE, gehen Sie zu Datei, dann Einstellungen.
  • Geben Sie in den Einstellungen den folgenden Link in das Feld Additional Board Manager URLs ein: https://raw.githubusercontent.com/ROBOTIS-GIT/OpenCM9.04/master/arduino/opencm_release/package_opencm9.04_index.json
  • Gehen Sie auf Tools, dann Board Type und klicken Sie auf Board Manager.
  • Suchen Sie nach dem Abschnitt OpenCM9.04 by ROBOTIS und klicken Sie auf den Installieren-Button.
  • Schließen Sie die Arduino.IDE-Software und starten Sie sie erneut.
  • Gehen Sie auf Tools und dann auf Board Type. Wählen Sie aus der Liste OpenCM9.04-Board aus.
  • Gehen Sie auf Tools und dann auf Port. Wählen Sie den Port aus, der dem OpenCM9.04-Board entspricht.

Vorgang

Setup

  • Starten Sie Arduino.IDE.
  • Gehen Sie zu Datei 🡪 Beispiele 🡪 OpenCM9.04 🡪 08_DynamixelWorkbench und klicken Sie dann auf h_Position.
  • Es öffnet sich ein neues Fenster mit dem Setup-Programm, das zur Steuerung des Servomotors notwendig ist.

Programm

  • Schreiben Sie das gewünschte Programm.
  • Laden Sie das Programm auf das OpenCM9.04 herunter.
  • Entfernen Sie das OpenCM9.04-Board vom PC
  • Versorgen Sie das OpenCM485 EXP-Board mit dem 12V/5A-Netzteil und drücken Sie den Schalter.
  • Schließen Sie das BT-410 Dongle-Modul an den PC an. Bringen Sie die beiden Module näher zusammen, um sie zu koppeln. Die Module sind synchronisiert, wenn das Blinken aufhört.
  • Gehen Sie in der Arduino.IDE-Software auf Tools, Port und wählen Sie den Port aus, der dem BT-410 Dongle-Modul entspricht.
  • Öffnen Sie den seriellen Monitor, um mit dem OpenCM9.04-Board zu kommunizieren. Der Monitor muss auf 57600 Baud eingestellt sein.

Beispiele für Programme

Servomotor steuern

Ermöglicht die Auswahl der Position des Servomotors zwischen Position 0 und Position 4095.

  • Geben Sie die Codezeile « int Position_du_servomoteur ; » unterhalb der Codezeile « DynamixelWorkbench dxl_wb; » ein.
  • Geben Sie in der Funktion void setup() die Codezeile « Serial2.begin(57600); » ein.
  • Geben Sie in der Funktion void loop() die folgenden Codezeilen ein:

Reihenfolge von Positionen

Erlaubt es, eine Reihe vorgegebener Positionen zu starten, wenn ein bestimmter Befehl gegeben wird (hier ist der Befehl “1”).

  • Geben Sie die Codezeile « int Lancement_du_programme ; » unterhalb der Codezeile « DynamixelWorkbench dxl_wb; » ein.
  • Geben Sie in der Funktion void setup() die Codezeile « Serial2.begin(57600); » ein.
  • Geben Sie in der Funktion void loop() die folgenden Codezeilen ein: