Actuator: Dynamixel AX-12A
Controller: Arduino Uno or Arduino Mega 2560 with Dynamixel Shield
I’m encountering issues with my Dynamixel AX-12A servo. Despite utilizing the Dynamixel shield and correctly connecting it to the TTL pins, the servo remains inactive. I’ve employed the provided example programming for the Dynamixel shield on my Arduino board. Power is being supplied externally, and I’ve attempted various troubleshooting methods found on Google and YouTube. However, none have succeeded in activating the servo, despite following tutorial guidelines.
Moreover, although the program can be uploaded to the board, the servo remains motionless and doesn’t transmit any serial data. Additionally, I’ve noticed that my board feels unusually warm, raising concerns.
Could anyone assist me in resolving these issues? Any guidance or suggestions would be greatly appreciated.
this my sketch
Do the invalid library warnings effect the sketch?
Is the servo cable in the correct servo port?
Is the servo cable in the correct shield port?
Can your servo be connected directly to the Arduino or must it use the shield? (with power supply for the servo, only the signal pin and ground from the Arduino)
I'm utilizing a Dynamixel shield alongside an Arduino Uno, but I'm encountering issues reading the servo. Interestingly, when I switch to Open RB, I can successfully read the servo using a Dynamixel scan program. However, despite using the Dynamixel2Arduino library for position programming, the servo remains unresponsive and doesn't move. Seeking guidance on how to resolve this issue and successfully control the servo's movements using the Dynamixel2Arduino library.
What does your sketch look like? NO PICTURES... example...
#include <Servo.h>
Servo myservo; // create servo object to control a servo
int pos = 0; // variable to store the servo position
void setup() {
myservo.attach(9); // attaches the servo on pin 9 to the servo object
}
void loop() {
for (pos = 0; pos <= 180; pos += 1) { // goes from 0 degrees to 180 degrees
// in steps of 1 degree
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(15); // waits 15ms for the servo to reach the position
}
for (pos = 180; pos >= 0; pos -= 1) { // goes from 180 degrees to 0 degrees
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(15); // waits 15ms for the servo to reach the position
}
}