![]() |
|
Con questa veloce guida vediamo come programmare un servomotore di qualsiasi formato con una board Gioblu Pico85 SMD.
SoftwareServo puo' funzionare con Pico85 SMD con un clock tra i 6 e i 16mhz. Le porte PWM su Pico85 sono la 0 e la 1, scegliete una delle due e collegatela al cavo bianco o giallo del servo. Dopodichè collegate il filo rosso del servo a una fonte di alimentazione tra gli 8 e 5v.
E' importante ricordarsi di non alimentare il servo tramite + 5v di Pico85 perchè il suo regolatore di tensione è studiato per mantenere acceso il microcontrollore e gestire impulsi logici (100ma max), per questo l'assorbimento del servo potrebbe distruggerlo. L'ultimo cavo da connettere è la massa, che va in comune con quella di Pico.
Come potete vedere il servomotore ruota correttamente in un senso e nell'altro senza jittering o imprecisione, il che dimostra che per applicazioni basilari il clock interno configurato a 16Mhz è piu' che accettabile. Vediamo il codice (ricordatevi di includere la libreria SoftwareServo.h):
|
SoftwareServo servo1;
int value = 0;
void setup(){
servo1.attach(0);
servo1.setMaximumPulse(2200);
}
void loop() {
while(value < 180) {
SoftwareServo::refresh();
servo1.write(value);
delay(10);
value++;
}
while(value > 0) {
SoftwareServo::refresh();
servo1.write(value);
delay(10);
value--;
}
}
|
