Arduino: Controllo motore DC con un Potenziometro

29 Aprile 2015
Arduino: Controllo motore DC con un Potenziometro

Salve a tutti!

In questo articolo vi mostrerò un progetto che ci permette di regolare la velocità di un motore DC (max 5 volt) senza aver bisogno di Ponti H ma usando un potenziometro.

Per prima cosa abbiamo bisogno di:

– 1 motore DC

– Arduino UNO

– Un potenziometro

– Jumpers o fili di collegamento

– Breadboard (basetta)

Lo schema del circuito da seguire è il seguente:

Cattura di schermata (29)

Adesso passiamo al codice:

[c]

int PinMotore = 5; //PIN PWM
int PotPin = 0; //pin potenziometro
int lettura = 0; //variabile per la lettura
int velocita = 0; //variabile per la velocità
void setup()
{
pinMode(PinMotore, OUTPUT); //Imposto il pin in uscta
}
void loop()
{
lettura = analogRead(PotPin); //Leggo il valore del potenziometro
velocita = map(lettura, 0, 1023, 0, 255); //mappo i valori da 1024 a 255
azione(velocita); //richiamo la funzione passondogli la velocità
}
void azione(int velocita)
{
analogWrite(PinMotore, velocita); //faccio girare il motore in base alla lettura
}

[/c]

Nello sketch è presente la funzione MAP che permette di ampliare o ridurre un range di dati, nello sketch infatti i valori del potenziometro da 0 a 1023 sono stati cambiati in un range che va da 0 fino a 255.

Adesso caricate lo sketch sulla vostra scheda ed il gioco è fatto!

A seguire alcune foto del progetto:

AtQHdoKI3jng7mG3pCGNjW0KeLvEcrc094rlHxiRkKxa Aq-K6i1SbRYwEH2gEvYQj6RIJh_mDLD6IL9Ze_4fgygw AoNXR-TgjGctvEt1rDe7H-1Q79AFv7TmwvTI2p7gnTYi AibfGF3a8FpsU26xH7ikxVqgRmj1-itWf1fMWGAz3_cD

Ruotando il potenziometro varierete la velocità del motore grazie al PIN PWM in uscita.

[embedplusvideo height=”400″ width=”600″ editlink=”http://bit.ly/1P5EO2g” standard=”http://www.youtube.com/v/oQwU2cP12N8?fs=1&vq=hd720″ vars=”ytid=oQwU2cP12N8&width=600&height=400&start=&stop=&rs=w&hd=1&autoplay=0&react=1&chapters=&notes=” id=”ep4916″ /]

Posted in ArduinoTags:
Related Posts

Ciao a tutti, oggi andremo a vedere come creare un Rilevatore di Fiamma con Arduino. Tramite questo sensore, in grado di rilevare la presenza di fiamme attorno ad esso, potrai creare un sistema che ti avvisa in caso di fiamme, spendendo poco e con…

Ciao a tutti, oggi andremo a vedere come utilizzare il Sensore di Tocco, o Tap Sensor. Questo sensore permette di rilevare per esempio il battito di una mano su un tavolo o il bussare ad una porta e ci può tornare utile per alcuni…

Ciao a tutti, in questo nuovo articolo andremo a recensire un Kit Arduino per Principianti di Elegoo. Il packaging è ottimo, con una custodia in plastica, separatori per dividere i componenti tra di loro, in modo da tenere ordinato ed a portata di mano…

4 Comments
  • luca muzhaqi

    ciao molto utile, io ho un encoder con 5 pin come si potrebbe collegare?

    15:04 13 Dicembre 2017 Rispondi
    • Ciao, vuoi collegare un motore DC + Encoder?

      16:37 13 Dicembre 2017 Rispondi
      • luca muzhaqi

        si esatto, è fattibile? grazie della risposta

        16:45 13 Dicembre 2017 Rispondi
        • Credo di sì, sapresti dirmi che valori dà in uscita l’encoder?

          20:57 26 Dicembre 2017 Rispondi
Write a comment