Pouvons-nous contrôler d'autres servos avec un code servo commun Arduino
J'essaye de contrôler MG996R en utilisant le code pour un servo typique (SG90)
J'ai utilisé une alimentation externe, 5V, 2A
J'ai connecté la ligne de signal servo à l'emplacement Arduino 7, servo positif à alimentation externe positive, masse servo à la masse d'alimentation externe, tout en laissant l'alimentation et la terre Arduino non connectées.
J'ai essayé le code ci-dessous.
cela fonctionne pour SG90, alors que MG996R ne bouge pas du tout.
#include <Servo.h>
Servo myservo;
void setup()
{
myservo.attach(7); //pin 7 is the one control servo
}
void loop()
{
for (int pos=0; pos<=60; pos++)
{
myservo.write(pos);
delay(15);
}
}
Est-ce parce que les différents servos ont besoin d'un code différent?
Réponses
Ils fonctionnent avec le même signal de contrôle, donc le même code devrait fonctionner pour les deux
Vous devez vous assurer que la masse du servo est à la fois connectée à la masse Arduino et à la masse d'alimentation (masse d'alimentation pour l'alimentation positive, masse Arduino pour la ligne de signal)
Je pense que SG90 a fonctionné même en ne connectant pas la masse Arduino, car la différence de conception.
Mais vous devez toujours connecter la masse Servo à la masse Arduino.