Ciao a tutti, sto cercando di inserire dei movimenti nelle statue del presepio tramite dei servo motori sg90. Nello specifico ho bisogno di ruotare lentamente il busto della Madonna da dx a sx come se dovesse cullare il Bimbo. Ho fatto una prova veloce con arduino collegandovi il servo al pin9 e alimentandolo con arduino stesso(5V). Fin qui tutto bene, il problema inizia quando posiziono il busto della Madonna sopra il perno rotante del servo il quale continua a oscillare ma facendo delle microvibrazioni durate il movimento.
Ho cercato suggerimenti da altri post con problemi simili ma le soluzioni non hanno risolto il mio. Per esempio alimentare separatamente il servo con 5V e 2 Ampere(minimo)...
Avete qualche suggerimento? La causa potrebbe essere nel codice?
Qui se riuscite c'è il video con il movimento
movimento ninna nanna
Di seguito il mio codice:
// movimento ninna-nanna
//
/*
...........
*/
#include <Servo.h> //include servo library
int servoPin = 9; //pin our servo is connected to
int servoIncrement = 1; //how much to move the servo horn each period
int servoPos = 90; //starting servo position
Servo servo; //create a servo object
unsigned long currentMillis = 0; //stores the current time
unsigned long servoPreviousMillis = 0; //stores the last time the servo horn moved
const unsigned long servoPeriod = 20; //interval to move the servo horn
void servoSweep() {
if (currentMillis - servoPreviousMillis >= servoPeriod) {
servoPreviousMillis = currentMillis;
servoPos += servoIncrement;
if ((servoPos > 110) || (servoPos < 70)) {
servoIncrement = -servoIncrement;
}
servo.write(servoPos);
}
}
void setup() {
servo.attach(servoPin); //attach the servo
}
void loop() {
currentMillis = millis();
servoSweep(); //run the servoSweep function
}