Nota
Ciao, benvenuto nella Community di appassionati di SunFounder Raspberry Pi & Arduino & ESP32 su Facebook! Approfondisci Raspberry Pi, Arduino ed ESP32 insieme ad altri appassionati.
Perché unirti a noi?
Supporto esperto: Risolvi i problemi post-vendita e le sfide tecniche con l’aiuto della nostra comunità e del nostro team.
Impara e condividi: Scambia consigli e tutorial per migliorare le tue competenze.
Anteprime esclusive: Ottieni accesso anticipato agli annunci di nuovi prodotti e alle anteprime.
Sconti speciali: Approfitta di sconti esclusivi sui nostri prodotti più recenti.
Promozioni festive e omaggi: Partecipa a omaggi e promozioni festive.
👉 Pronto a esplorare e creare con noi? Clicca su [Qui] e unisciti oggi stesso!
1.3.3 Relè
Introduzione
In questo progetto impareremo a utilizzare un relè. È uno dei componenti comunemente usati nei sistemi di controllo automatico. Quando tensione, corrente, temperatura, pressione, ecc., raggiungono, superano o scendono al di sotto del valore predeterminato, il relè collega o interrompe il circuito, per controllare e proteggere l’apparecchiatura.
Componenti necessari
In questo progetto, abbiamo bisogno dei seguenti componenti.
È sicuramente conveniente acquistare un kit completo, ecco il link:
Nome |
COMPONENTI IN QUESTO KIT |
LINK |
|---|---|---|
Raphael Kit |
337 |
Puoi anche acquistarli separatamente dai link sottostanti.
INTRODUZIONE COMPONENTI |
LINK PER L’ACQUISTO |
|---|---|
Schema di Collegamento
Procedure Sperimentali
Passo 1: Costruisci il circuito.
Passo 2: Apri il file del codice.
cd ~/raphael-kit/c/1.3.3
Passo 3: Compila il codice.
gcc 1.3.3_Relay.c -lwiringPi
Passo 4: Esegui il file eseguibile.
sudo ./a.out
Dopo l’esecuzione del codice, il LED si accenderà. Inoltre, puoi sentire un ticchettio causato dall’apertura del contatto normalmente chiuso e dalla chiusura del contatto normalmente aperto.
Nota
Se non funziona dopo l’esecuzione o compare un messaggio di errore: "wiringPi.h: No such file or directory", consulta Installazione e verifica di WiringPi.
Codice
#include <wiringPi.h>
#include <stdio.h>
#define RelayPin 0
int main(void){
if(wiringPiSetup() == -1){ //se l'inizializzazione di wiring fallisce, stampa un messaggio a schermo
printf("setup wiringPi failed !");
return 1;
}
pinMode(RelayPin, OUTPUT); //imposta GPIO17(GPIO0) come uscita
while(1){
// Tick
printf("Relay Open......\n");
digitalWrite(RelayPin, LOW);
delay(1000);
// Tock
printf("......Relay Close\n");
digitalWrite(RelayPin, HIGH);
delay(1000);
}
return 0;
}
Spiegazione del Codice
digitalWrite(RelayPin, LOW);
Imposta la porta I/O a livello basso (0V), quindi il transistor non è alimentato e la bobina non è alimentata. Non c’è forza elettromagnetica, quindi il relè si apre, il LED non si accende.
digitalWrite(RelayPin, HIGH);
Imposta la porta I/O a livello alto (5V) per alimentare il transistor. La bobina del relè è alimentata e genera forza elettromagnetica, e il relè si chiude, il LED si accende.
Immagine del Fenomeno