Benutzer-Werkzeuge

Webseiten-Werkzeuge


bauteile:dynamixel_servos

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

Nächste Überarbeitung
Vorhergehende Überarbeitung
bauteile:dynamixel_servos [2017/12/21 17:37]
d.golovko angelegt
bauteile:dynamixel_servos [2021/12/14 11:52] (aktuell)
luismeixner
Zeile 1: Zeile 1:
-Die Dynamixel-Servos sind eine Kette aus mehreren (im Labor: drei) veknüpften Servo-Motoren. Damit kann man z.B. Bewegungen realisieren,​ die dennen eines Armes ähneln. ​+=====Dynamixel-Servos===== 
 + 
 +Die Dynamixel-Servos sind eine Kette aus mehreren (im Labor: drei) veknüpften Servo-Motoren. Damit kann man z.B. Bewegungen realisieren,​ die dennen eines Armes ähneln. ​Die Servos brauchen einen Treiber; Im Labor gibt es dafür den AX-12 CDS 55xx-Controller.  
 + 
 +Eine Übersicht darüber, wie man die Servos anschließt,​ kann man aus [[abgeschlossene_projekte:​drinkbot|diesem Projekt]] bekommen. Mit der [[https://​sourceforge.net/​projects/​dynamixelforarduino/​files/?​source=navbar|DynamixelSoftSerial-Bibliothek]] kann man die Motoren von Arduino ansteuern. Mit Arduino Nano läuft es so, wie bei drinkbot beschrieben. Im Fall von Arduino Mega: Leider nutzt diese Bibliothek eine veraltete Version einer anderen Arduino-Bibliothek,​ [[https://​github.com/​arduino/​Arduino/​tree/​master/​hardware/​arduino/​avr/​libraries/​SoftwareSerial/​src  
 +|SoftwareSerial]]. Um dieses Problem zu beheben, müsst ihr:\\ 
 +* Den Code aus der SoftwareSerial-Bibliothek (die .h- und die .cpp-Datei) in den Ordner mit der DynamixelSoftSerial-Bibliothek kopieren\\ 
 +* Die Methoden ''​void setTX(uint8_t transmitPin)''​ und ''​void setRX(uint8_t receivePin)''​ in den Bereich "​public"​ verschieben\\ 
 +* Überall statt "​SoftwareSerial"​ den neuen Klassenname angeben, z.B. "​MySoftwareSerial"​ (sonst überschneiden sich die Namen mit der aktuell veralteten Version der Bibliothek)\\ 
 + 
 + 
 +Alternativ könnt ihr diese bereits modifizierte Version der DynamixelSoftSerial-Bibliothek hier herunterladen:​\\ 
 +{{:​bauteile:​dynamixelsoftserial.zip|}} 
 + 
 +Wenn ihr mit Arduino Mega arbeitet, müsst ihr drauf achten, dass nur bestimmte Pins für SoftwareSerial dort geeignet sind. Deswegen müsst ihr in der Datei ''''​ in der Zeile ''​extern MySoftwareSerial SoftSerial(2,​3);''​ die Pin-Nummer anpassen, z.B. auf ''​extern MySoftwareSerial SoftSerial(10,​11);''​. Die TX- und RX-Pins des Servo-Controllers sollen trotzdem mit den Pins 2 (RX) und 3 (TX) verbunden werden.  
 + 
 +Der Code kann dann z.B. so aussehen: 
 + 
 +<code cpp> 
 +#include <​DynamixelSoftSerial.h>​ 
 +#include <​MySoftwareSerial.h>​ 
 + 
 +void setup() { 
 +  Dynamixel.begin(19200,​ 2, 3, 4); 
 +
 + 
 +void loop() { 
 +  Dynamixel.moveSpeed(1,​ 500, 100);       // Move Servo 1 to position 500 
 +  Dynamixel.moveSpeed(2,​ 400, 100);       // Move Servo 2 to position 400 
 +  Dynamixel.moveSpeed(3,​ 950, 100);       // Move Servo 2 to position 950 
 +
 +</​code>​ 
 + 
 + 
 + 
  
-Eine Übersicht darüber, wie man die Servos anschließt,​ kann man aus [[abgeschlossene_projekte:​drinkbot|diesem Projekt]] bekommen. Mit der [[https://​sourceforge.net/​projects/​dynamixelforarduino/​files/?​source=navbar|DynamixelSoftSerial-Bibliothek]] kann man die Motoren von Arduino ansteuern. Leider nutzt diese Bibliothek eine veraltete Version einer anderen Arduino-Bibliothek,​ [[https://​github.com/​arduino/​Arduino/​tree/​master/​hardware/​arduino/​avr/​libraries/​SoftwareSerial/​src ​ 
-|SoftwareSerial]]. ​ 
bauteile/dynamixel_servos.1513874232.txt.gz · Zuletzt geändert: 2017/12/21 17:37 von d.golovko