Seguimi su Youtubue
Iscriviti
Se desideri, puoi effettuare un'iscrizione gratuita al forum per entrare nella nostra community.
Ricerca Avanzata
Pubblicità Google AdSense
Answers
Se necessiti di aiuto, clicca il pulsante "Cerco Aiuto" (disponibile anche per i non iscritti).
I postatori più attivi del mese
Poderak
 
papat
 
Mrskizzo
 
Charade
 

Come pilotare un servomotore con un potenziometro con Arduino

Vedere l'argomento precedente Vedere l'argomento seguente Andare in basso

Come pilotare un servomotore con un potenziometro con Arduino

Messaggio Da Poderak il Ven Apr 22, 2016 7:20 pm


Una guida molto semplice per pilotare un servomotore con un potenziometro. Quello di cui avremo bisogno sarà:

  • Arduino Uno.
  • Breadboard e cavi.
  • Servomotore (nel mio caso SG90).
  • Potenziometro (10kΩ).

Codice:


Per capire al meglio il funzionamento del progetto vi consiglio di vedere prima queste guide:
- [url=http://www.wikiinfo.net/t2711-codice-tutorial-arduino-base-17-la-funzione-map]La funzione map[/url].
- [url=http://www.wikiinfo.net/t2643-codice-tutorial-arduino-base-12-il-potenziometro]Come funziona il potenziometro con Arduino[/url].
- [url=http://www.wikiinfo.net/t2700-codice-tutorial-arduino-base-15-il-servomotore]Come funziona il servomotore (SG90)[/url].

[b]Come funziona?[/b] In pratica girando la rotella del potenziometro avremo modo di muovere in tempo reale la posizione del nostro servomotore, come mostrato nel video. Il codice del software, commentato, è il seguente:

/*Pilotare servomotore con un potenzimetro con Arduino*/
/*Realizzato da Poderak: https://youtu.be/86HAMHlFC44*/
#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
    
}

Buon lavoro Ciao!

Poderak
♔ Amministratore

Messaggi Messaggi : 4131
Crediti Crediti : 11619
Reputazione Reputazione : 185
Data d'iscrizione Data d'iscrizione : 08.03.11
Età Età : 18
Località Località : Brescia

Vedere il profilo dell'utente http://www.wikiinfo.net

Tornare in alto Andare in basso

Vedere l'argomento precedente Vedere l'argomento seguente Tornare in alto


 
Permesso di questo forum:
Non puoi rispondere agli argomenti in questo forum