Dorsai.it

  Sistemi

  RELAZIONI

  Presentazioni

  Antinfortunistica

  Sistemi 3 M A

  Fonderia e def. plastica

  Sistemi 3 M B

  Metrologia

  Cerca


  On-line

Abbiamo
2 ospiti e
0 utenti online

Sei un utente non registrato. Puoi fare il login qui o puoi registrarti cliccando qui.


  Login utente

Utente
Password
Ricordami

Non hai ancora un account? Puoi crearne uno qui.In quanto utente registrato hai alcuni vantaggi quali ad esempio un gestore di temi, la configurazione dei commenti e il loro invio col tuo nome, a seconda delle configurazioni e delle opzioni di questo sito.

Indice degli argomenti - Programmi - Programmi ARDUINO - Motore CC controllato da fotoresistenza
 26-Apr-2011   Stampa la pagina corrente   Mostra la posizione di questa pagina nella mappa

Motore CC controllato da fotoresistenza

Mario Angelino

 

 

 

/*
Controllo del numero di giri di un motore a cc (3V 300 mA) mediante fotoresistenza e
transistor amplificatori.
A cura di Mario Angelino
*/
int ingAnalogico; // definizione di due variabili contenenti rispettivamente
int ushAnalogica; // lo stato dell'ingresso e dell'uscita (PIN A0 e PIN 3)
void setup() {
pinMode(3, OUTPUT);
Serial.begin (9600); // consente l'invio da parte di Arduino di dati al PC
}
void loop() {
    ingAnalogico = analogRead(0); // legge l'ingresso A0
   ushAnalogica =map (ingAnalogico,188,580,0,255); // mappatura delle uscite in funzione del valore di
                                                    // ingrezzo rilevato sperimentalmente: taratura del
                                                    // sensore
                                                    // effettuata mediante l'utilizzo delle istruzioni
                                                    // rese possibili da Serial.begin
   ushAnalogica= 255 - ushAnalogica; // inversione del segnale: se la fotoresistenza viene oscurata
                                     // il motore gira più velocemente. Si consiglia di
                                     // provare il programma togliendo questa istruzione
{
    if (ushAnalogica < 74)    // la tensione sul motore viene mantenuta ad un livello minimo
{
  ushAnalogica = 74;        // in modo da consentire la rotazione quando è già vinta l'inerzia iniziale
  }
    if (ushAnalogica > 255) // controllo sull'uscita
{
  ushAnalogica = 255; 
  }
}
analogWrite(3, ushAnalogica); // segnale inviato sulla base dei transistor per ottenere sufficente
                              // corrente al motore

Serial.print (" ingresso = ");Serial.println (ingAnalogico); // scrive: INGRESSO = , poi il valore
                                                             // della variabile ingAnalogico e poi a capo
Serial.print (" uscita = ");Serial.println (ushAnalogica); // scrive: USCITA = , poi il valore
                                                             // della variabile ushAnalogica e poi a capo
Serial.print ("    "); Serial.print ("    "); // scrive due righe vuote andando sempre a capo
}

 

 
Indice degli argomenti - Programmi - Programmi ARDUINO - Motore CC controllato da fotoresistenza
Un altro progetto MAX s.o.s.
Crediti Powered by MDPro