Go Down

Topic: Modifica motorino servo da 180 ad infinito con controllo delle rotazioni (Read 928 times) previous topic - next topic

lollotek

Ciao a tutti volevo condividere con tutti una cosa che ho fatto, magari ho fatto una boiata, o magari ho fatto qualcosa che potrebbe servire.
Per un progetto ho dovuto modificare un servo con rotazione di 180° a rotazione infinita per poter avvolgere un filo [guida di riferimento http://www.sentex.net/~mec1995/gadgets/servos/servomod.html].
Oltre a questo però avevo la necessità di controllare la quantità di filo avvolto e quindi ho smontato un mini-mouse usb non funzionante, mi aspettavo di trovare la rotella che passa attraverso un sensore ottico, invece c'era una sorta di trimmer simile a questo:

il componente è un rotatory encoder [http://www.arduino.cc/playground/Main/RotaryEncoders]
Ho fatto una cosa spartana collegando solo il ground ed una sola uscita invece che 2, in questo modo non ho il controllo del verso della rotazione (valore positivo o negativo), ma siccome sono io che piloto il servo non ne avevo bisogno, e poi per il progetto su cui lavoravo ho dovuto lesinare sui cavi.
Ho quindi usato il seguente codice (praticamente lo stesso di esempio ma usando solo il pin 2):

Code: [Select]

#define encoderPinA 2

volatile unsigned int encoderPos = 0;

void setup() {
  pinMode(encoderPinA, INPUT);
  digitalWrite(encoderPinA, HIGH);
 
  attachInterrupt(0, doEncoder, CHANGE);
  Serial.begin(9600);
}

void loop () {
 
}

void doEncoder(){
  if (digitalRead(encoderPinA) == HIGH) {
      encoderPos = encoderPos +1;
  }

  Serial.println (encoderPos, DEC);


}


La cosa bella è che sono riuscito a mettere il tutto dentro il servo, quindi a parte il filo in più che esce è paro paro ad un servo normale!
A seguire alcune foto (penose purtroppo, ma è stata una cosa fatta di fretta, infatti non ho nemmeno io il servo):

Modifica a rotazione infinita: http://www.lorenzoboasso.it/arduino/sermod1.jpg
Adattatore encoder-servo: http://www.lorenzoboasso.it/arduino/sermod2.jpg
Modifica completata: http://www.lorenzoboasso.it/arduino/sermod3.jpg
Servo collegato al circuito: http://www.lorenzoboasso.it/arduino/sermod4.jpg

spero sia di aiuto per qualcuno!

Go Up
 


Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

Arduino
via Egeo 16
Torino, 10131
Italy