Controlliamo la posizione di un servomotore TOWER PRO SG90 con Arduino e un potenziometro.
Componenti richiesti:
Scheda Arduino o Genuino
Servomotore SG90 o simili
Potenziometro da 10k ohm
cavetti
Il circuito
I servomotori hanno tre fili: alimentazione, massa e segnale. Il cavo di alimentazione è in genere rosso e deve essere collegato al pin 5V sulla scheda Arduino o Genuino. Il filo di terra è in genere nero o marrone e deve essere collegato a un pin di messa a terra sulla scheda. Il pin del segnale è in genere giallo o arancione e deve essere collegato al pin 9 sulla scheda.
Il potenziometro deve essere collegato in modo che i suoi due pin esterni siano collegati all'alimentazione (+ 5 V) e alla messa a terra, e il relativo pin centrale sia collegato all'ingresso analogico A0 sulla scheda.
Copia oppure puoi caricare il codice qui.
/*Pilotare servomotore con un potenzimetro con Arduino*/
#include <Servo.h> //includiamo la libreria
Servo myservo; //diamo un nome al servo
int potenziometro=A0; //diamo il nome potenziometro al pin A0 int val=0; //inizializziamo il valore di potenziometro int pos = 0; //inizializziamo il valore di pos
void setup() { myservo.attach(9); //indichiamo il pin dov'è collegato il servo pinMode(potenziometro, INPUT); //dichiariamo il potenziometro come INPUT }
void loop() { val=analogRead(potenziometro); //inseriamo il valore letto del potenziometro in val pos=map(val, 0, 1023, 0, 180); //prop. val. del potenziometro con gradi del servo myservo.write(pos); //indichiamo come deve muoversi il servo delay(10); }
Codice versione Ardublock: