Benutzer-Werkzeuge

Webseiten-Werkzeuge


bauteile:dynamixel_servos

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
bauteile:dynamixel_servos [2017/12/21 17:52]
d.golovko
bauteile:dynamixel_servos [2021/12/14 11:52] (aktuell)
luismeixner
Zeile 1: Zeile 1:
 =====Dynamixel-Servos===== =====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 CDSXX-Controller. ​+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. Leider nutzt diese Bibliothek eine veraltete Version einer anderen Arduino-Bibliothek,​ [[https://​github.com/​arduino/​Arduino/​tree/​master/​hardware/​arduino/​avr/​libraries/​SoftwareSerial/​src ​+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:\\ |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\\ * 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\\ * Die Methoden ''​void setTX(uint8_t transmitPin)''​ und ''​void setRX(uint8_t receivePin)''​ in den Bereich "​public"​ verschieben\\
-* Überall statt "​SoftwareSerial" ​eine neue Klassenname ​vergeben, z.B. "​MySoftwareSerial"​ (sonst überschneiden sich die Namen mit der aktuellen ​Bibliothek)\\+* Überall statt "​SoftwareSerial" ​den neuen Klassenname ​angeben, z.B. "​MySoftwareSerial"​ (sonst überschneiden sich die Namen mit der aktuell veralteten Version der Bibliothek)\\
  
  
Zeile 20: Zeile 20:
 #include <​DynamixelSoftSerial.h>​ #include <​DynamixelSoftSerial.h>​
 #include <​MySoftwareSerial.h>​ #include <​MySoftwareSerial.h>​
- 
  
 void setup() { void setup() {
   Dynamixel.begin(19200,​ 2, 3, 4);   Dynamixel.begin(19200,​ 2, 3, 4);
-  ​ 
 } }
  
Zeile 31: Zeile 29:
   Dynamixel.moveSpeed(2,​ 400, 100);       // Move Servo 2 to position 400   Dynamixel.moveSpeed(2,​ 400, 100);       // Move Servo 2 to position 400
   Dynamixel.moveSpeed(3,​ 950, 100);       // Move Servo 2 to position 950   Dynamixel.moveSpeed(3,​ 950, 100);       // Move Servo 2 to position 950
- 
 } }
 </​code>​ </​code>​
bauteile/dynamixel_servos.1513875122.txt.gz · Zuletzt geändert: 2017/12/21 17:52 von d.golovko