Pilotaggio di un relay attraverso uno stadio driver a BJT, in configurazione ad "Emettitore Comune" opportunamente polarizzato.
Un cicalino, escludibile, segnala l'avvenuta attuazione.
Per il dimensionamento dello stadio a transistore BJT, del tipo NPN, vedere la pagina a questo link.
Immettendo i dati indicati in rosso si ottengono i valori dei componenti. Non modificate gli altri campi!
Il transistore NPN può essere un comune BJT per usi generali (BC108, BC109, 2n1711, 2N1613, 2N2222); consigliato il 2N2369 che è ottimo per l'uso in commutazione.
Per carichi notevoli serve un BJT di potenza da utilizzare come stadio finale.
Nota:
Il buzzer NON è un altoparlante ma un cicalino (ronzatore)! L'altoparlante manderebbe in corto-circuito l'alimentazione di Arduino!
/* ------------------------ Inizio Programma -----------------------
* Pilotaggio intermittente di un Relay con Arduino
* Segnalazione acustica tramite Buzzer
* Uso delle routines per le operazioni elementari ripetitive.
*/ ---------------------------------------------------------------------
// --------------- I/O ------------------------------
#define R 13 // Uscita comando relay
#define B 12 // Uscita comando buzzer
// --------------------------------------------------
const int T1=100, // ritardo
T2=1000,
T3=3000; // ritardo
void setup()
{
pinMode(R, OUTPUT); // viene settato il pin R come uscita
pinMode(B, OUTPUT); // viene settato il pin B come uscita
}
void accendi(int r, int b)
{
digitalWrite(r, HIGH); // mette R a livello alto facendo andare il BJT in saturazione
digitalWrite(b, HIGH); // mette B a livello alto facendo suonare il buzzer
delay(T1); // attende T1 millisecondi
}
void spegni(int r, int b)
{
digitalWrite(r, LOW); // spegne il bjt, spegne il relè e il buzzer
digitalWrite(b, LOW);
delay(T1); // ritardo
}
void loop()
{
accendi(R,B); delay(100);
// digitalWrite(B, LOW); // per segnalazione impulsiva.
delay(T2);
spegni(R,B); delay(T3); // ritardo, poi il ciclo si ripete
}
// --------------------- Fine programma -----------------------------
> Arduino N° 34
Simulazione:
Pilotaggio relay con Arduino e driver a BJT;
Argomenti correlati:
dimensionamento dello stadio a transistore;
> Arduino N° 34
Nessun commento:
Posta un commento