Cos'è un diodo? Come funziona, tipi, polarità e applicazioni
Cos'è un diodo e come funziona: anodo, catodo e fascia, tensione di soglia di 0,7 V, 1N4007, 1N4148, 1N5819, diodo di ricircolo, ponte raddrizzatore e Zener.
Cos'è un diodo? In breve, un diodo è un componente a semiconduttore con due terminali che lascia passare la corrente elettrica in un solo verso. Pensalo come una valvola di non ritorno in un tubo dell'acqua: la corrente scorre liberamente dall'anodo al catodo ed è bloccata quasi del tutto nel verso opposto. Grazie a questa semplice proprietà, il diodo trasforma la corrente alternata della presa in corrente continua, protegge il tuo circuito da una batteria collegata al contrario, assorbe i pericolosi picchi di tensione prodotti da relè e motori e limita una tensione a un valore preciso.
Incontri diodi ogni giorno senza accorgertene: dentro il caricabatterie del telefono, sul connettore di alimentazione dell'Arduino Uno, sui moduli relè e in ogni LED sulla tua scrivania. Sì, anche un LED è un diodo che emette luce. In questo articolo imparerai cosa succede dentro un diodo, come distinguere l'anodo dal catodo, da dove arrivano gli 0,7 V di tensione di soglia e in cosa si differenziano 1N4007, 1N4148 e 1N5819; vedrai anche la protezione dall'inversione di polarità, il diodo di ricircolo, il ponte raddrizzatore, il diodo Zener e come provare un diodo con il multimetro. Alla fine costruirai con Arduino un piccolo tester che capisce da solo il verso e il tipo di un diodo.

Cos'è un diodo e come funziona?
Dentro un diodo si incontrano due strati di semiconduttore diversi: silicio di tipo N, con elettroni in eccesso, e silicio di tipo P, con elettroni mancanti (lacune in eccesso). Nel punto di unione si forma una sottile regione di svuotamento in cui i portatori di carica si neutralizzano, e questa regione si comporta come un muro contro la corrente. Quando applichi il positivo all'anodo (lato P) e il negativo al catodo (lato N), cioè quando polarizzi direttamente il diodo, il muro si assottiglia; appena la tensione supera circa 0,6–0,7 V nel silicio, la corrente comincia a salire rapidamente. In polarizzazione inversa il muro si allarga e passa solo una minuscola corrente di dispersione dell'ordine dei microampere o dei nanoampere. Se la tensione inversa supera il limite del diodo avviene la rottura (breakdown): i diodi normali si danneggiano, mentre i diodi Zener sono costruiti proprio per lavorare in questa zona. La tabella riassume i valori principali del datasheet da controllare quando scegli un diodo.
| Parametro | Significato | Esempio: 1N4007 |
|---|---|---|
| VF (tensione diretta) | Tensione che cade sul diodo mentre conduce | Max. 1,1 V (a 1 A) |
| IF(AV) (corrente diretta media) | Corrente media che può portare in modo continuo | 1 A |
| VRRM (tensione inversa di picco ripetitiva) | Massima tensione inversa ripetitiva sopportata; oltre si ha la rottura | 1000 V |
| IFSM (corrente impulsiva) | Sopporta un singolo breve impulso di corrente | 30 A (singolo impulso da 8,3 ms) |
| IR (corrente inversa di dispersione) | Piccola corrente che scorre in polarizzazione inversa | Max. 5 µA (25 °C) |
| trr (tempo di recupero inverso) | Tempo necessario perché la corrente si estingua passando dalla conduzione all'interdizione | Lento, nell'ordine dei microsecondi |
Anodo, catodo e fascia: come capire il verso di un diodo
Un diodo ha due terminali: l'anodo (A) e il catodo (K). Negli schemi si disegna come un triangolo con una barra verticale davanti: il triangolo indica come una freccia il verso in cui passa la corrente, dall'anodo al catodo, e la barra è il catodo. Sul diodo vero questa barra è stampata sul corpo: una fascia grigia o bianca sull'1N4007 nero e una fascia nera sull'1N4148 in vetro indicano l'estremità del catodo. Un promemoria facile: la barra del simbolo e la fascia sul corpo sono la stessa estremità. Se in un circuito l'estremità con la fascia è alla tensione più positiva, il diodo è in interdizione; se è più positiva l'estremità senza fascia, conduce.
- Diodi a terminali assiali (1N4007, 1N5819): l'unica fascia sul corpo è il catodo; puoi anche leggere la sigla stampata per confermare il modello.
- Piccoli diodi in vetro (1N4148, Zener): la fascia nera è il catodo; la sigla è minuscola, quindi leggila con una lente o misura con il multimetro.
- Diodi SMD: una linea su un lato del contenitore indica il catodo; il diodo siglato M7 sulle schede Arduino è l'equivalente SMD dell'1N4007.
- LED: il terminale lungo è l'anodo, quello corto il catodo; anche il lato piatto sul bordo del LED indica il catodo.
- Ponti raddrizzatori: i quattro terminali sono marcati ~ (ingressi in alternata), + e −.
- Se il segno si è cancellato: la prova diodi del multimetro ti mostra il verso in pochi secondi; la spieghiamo passo per passo più avanti.
Tensione di soglia: 0,7 V nel silicio, 0,3 V nello Schottky
Quando un diodo conduce, ai suoi capi cade una tensione piccola e quasi costante: è la tensione diretta (VF), chiamata spesso tensione di soglia. Per i diodi al silicio tutti ricordano 0,7 V, ma non è un numero fisso: un 1N4007 fa cadere circa 0,55 V con pochi milliampere e 0,9–1,0 V a 1 A. All'aumentare della temperatura la tensione diretta diminuisce di circa 2 mV per °C; più avanti useremo questa proprietà per trasformare un diodo in un sensore di temperatura. Tensione diretta significa calore: la potenza dissipata da un diodo è P = VF × I. Un 1N4007 attraversato da 1 A produce circa 1 W di calore e diventa troppo caldo da toccare; alla stessa corrente uno Schottky 1N5819 fa cadere al massimo 0,6 V, quindi il calore quasi si dimezza.
Tipi di diodi
| Tipo | Tensione diretta | Cosa fa | Esempio | Dove si usa |
|---|---|---|---|---|
| Diodo raddrizzatore | 0,6–1,1 V | Sopporta tensioni inverse elevate e 1 A o più; lento | 1N4007, 1N5408 (3 A) | Alimentatori, raddrizzamento, protezione dall'inversione di polarità |
| Diodo di segnale (commutazione) | 0,6–1,0 V | Commuta molto velocemente, corrente bassa | 1N4148 | Segnali, circuiti logici, tastierini, piccoli relè |
| Diodo Schottky | 0,15–0,6 V | Tensione diretta bassa e molto veloce; corrente di dispersione più alta | 1N5819, SS34, BAT54 | Circuiti a batteria, selezione dell'alimentazione, motori in PWM |
| Diodo Zener | Vz in inversa (~0,7 V in diretta) | Conduce in inversa a una tensione precisa (Vz) | 1N4733A (5,1 V), 1N4728A (3,3 V) | Limitazione di tensione e riferimento |
| LED | 1,8–3,4 V (secondo il colore) | Emette luce quando conduce | LED da 5 mm, i LED dentro un WS2812B | Spie, illuminazione, display |
| Fotodiodo | — | Produce corrente quando riceve luce | BPW34, ricevitori IR | Rilevamento di luce e infrarossi |
| Diodo TVS | Tensione di rottura in inversa | Assorbe molto rapidamente i picchi di tensione | Serie SMBJ e P6KE | Protezione da ESD e sovratensioni |
| Diodo al germanio | 0,2–0,3 V | Tensione diretta bassa, tecnologia datata | 1N34A | Vecchie radio, rivelazione di segnale |
Anche il LED è un diodo
Come dice il nome, un LED (Light Emitting Diode, diodo a emissione luminosa) è un diodo che emette luce. Come un diodo normale, fa passare la corrente solo dall'anodo al catodo; la differenza è che l'energia liberata quando elettroni e lacune si ricombinano nella giunzione P-N esce come luce invece che come calore. Il materiale semiconduttore determina il colore, e più il colore si avvicina al blu, più alta è la tensione diretta: un LED rosso richiede circa 2 V, quelli blu e bianchi circa 3 V. Trovi i valori per ogni colore nello strumento Tensioni dei LED.

Una differenza importante tra diodo e LED è la tensione inversa sopportata: un 1N4007 regge 1000 V, mentre il datasheet di un LED tipico ammette solo circa 5 V in inversa. Per questo non devi usare un LED come raddrizzatore. La seconda regola è limitare sempre la corrente del LED con una resistenza in serie, perché appena superi la tensione diretta la corrente sale molto in fretta. Per un LED rosso alimentato a 5 V la resistenza vale (5 − 2) / 0,015 ≈ 200 Ω, cioè il valore standard di 220 Ω; puoi fare il calcolo con il calcolatore della resistenza per LED. Per saperne di più su come collegare i LED e scegliere i colori, leggi Cos'è un LED?.
1N4007, 1N4148 e 1N5819: quale usare e quando?
| Caratteristica | 1N4007 | 1N4148 | 1N5819 |
|---|---|---|---|
| Tipo | Raddrizzatore al silicio | Silicio di segnale | Schottky |
| Contenitore | DO-41, corpo nero | DO-35, corpo in vetro | DO-41, corpo nero |
| Tensione inversa max. (VRRM) | 1000 V | 100 V | 40 V |
| Corrente diretta media | 1 A | 150–200 mA (secondo il produttore) | 1 A |
| Tensione diretta (VF) | ≤ 1,1 V (a 1 A) | ≤ 1 V (a 10 mA) | ≤ 0,6 V (a 1 A), ~0,3 V a bassa corrente |
| Recupero inverso (trr) | Lento (microsecondi) | 4 ns | Praticamente nullo |
| Corrente di dispersione (25 °C) | ≤ 5 µA | ≤ 25 nA (a 20 V) | ≤ 0,5 mA (a 40 V) |
| Uso tipico | Raddrizzamento, inversione di polarità, ricircolo per relè | Segnali, logica, tastierini, ricircolo per piccoli relè | Alimentazione a batteria e USB, ricircolo per motori in PWM |
La famiglia dall'1N4001 all'1N4007 differisce solo per la tensione inversa sopportata (50 V l'1N4001, 1000 V l'1N4007); dato che costano quasi uguale, quasi tutti usano l'1N4007 per qualsiasi cosa. L'1N4148 è un diodo per piccole correnti ma molto veloce; non può portare centinaia di milliampere in modo continuo, ma nei circuiti di segnale e logici è imbattibile. L'1N5819, grazie alla bassa tensione diretta, risparmia volt preziosi nei circuiti alimentati a batteria o via USB; i suoi unici difetti sono la tensione inversa limitata a 40 V e una corrente di dispersione che cresce con la temperatura. Per correnti fino a 3 A passa all'1N5408 (silicio) o alla famiglia SS34 / 1N5822 (Schottky). Con i motori pilotati in PWM, un veloce UF4007 (75 ns) o uno Schottky scalda meno del lento 1N4007.
Protezione dall'inversione di polarità: salva il circuito da una batteria al contrario
Collegare al contrario i fili di un portabatterie o inserire l'alimentatore sbagliato è uno dei modi più comuni per bruciare un circuito. La soluzione più semplice è un diodo in serie sull'ingresso di alimentazione: se la polarità è giusta il diodo conduce, se è invertita non passa corrente e il circuito resta salvo. L'Arduino Uno R3 lo fa già: sul suo connettore di alimentazione (jack DC) c'è un diodo siglato M7, l'equivalente SMD dell'1N4007. Ecco perché sul pin VIN misuri circa 8,3 V quando alimenti la scheda con un alimentatore da 9 V. Il prezzo del diodo in serie è questa caduta di tensione: se fai passare i 5 V dell'USB in un 1N4007 restano circa 4,3 V; in un 1N5819, circa 4,7 V.
| Metodo | Caduta di tensione | Pro | Contro |
|---|---|---|---|
| Diodo al silicio in serie (1N4007) | 0,7–1 V | Economicissimo, regge 1000 V | Perdite e calore elevati |
| Diodo Schottky in serie (1N5819) | 0,3–0,6 V | Economico, meno perdite | Corrente di dispersione alta, limite di 40 V |
| MOSFET a canale P | Da pochi mV a qualche decina di mV | Quasi senza perdite, correnti elevate | Circuito un po' più complesso |
| Diodo in parallelo + fusibile | Nessuna | Nessuna perdita nel funzionamento normale | Se si inverte la polarità il fusibile salta e va sostituito |
I diodi servono anche a combinare due fonti di alimentazione; questa tecnica si chiama OR a diodi (diode-OR). Ogni fonte si collega allo stesso punto con il proprio diodo Schottky; quella con la tensione più alta alimenta il carico e le fonti non possono spingere corrente l'una nell'altra. Nel Raspberry Pi Pico, il VBUS dell'USB è già collegato alla linea VSYS tramite un diodo Schottky. Se vuoi alimentare un Pico sia via USB sia da una batteria, basta collegare la batteria a VSYS attraverso un secondo diodo Schottky (catodo verso VSYS); così la batteria non rimanda corrente nella porta USB. Anche l'Arduino Nano originale ha un diodo Schottky (MBR0520) sulla linea USB: per questo è normale misurare poco meno di 5 V sul pin 5V di un Nano alimentato via USB.
Diodo di ricircolo (flyback): proteggere relè e motori
I carichi induttivi come bobine dei relè, motori, solenoidi e ventole si oppongono all'interruzione improvvisa della corrente. Nell'istante in cui il transistor si spegne, l'energia magnetica immagazzinata nella bobina cerca una via d'uscita e, secondo V = L × di/dt, produce un picco di tensione inverso che può arrivare a centinaia di volt. Questo picco perfora il transistor, fa ripartire l'Arduino o danneggia i suoi pin. Il rimedio è un diodo di ricircolo (detto anche diodo flyback o di libera circolazione) collegato in parallelo alla bobina ma in senso inverso: nel funzionamento normale è polarizzato inversamente e non fa nulla; quando la corrente viene interrotta, offre alla corrente della bobina un percorso in cui circolare e limita il picco a circa 0,7 V sopra la tensione di alimentazione.

- Individua quale terminale della bobina va al positivo dell'alimentazione e quale al collettore del transistor (o al drain del MOSFET).
- Salda l'estremità del catodo, quella con la fascia, al terminale della bobina collegato al positivo.
- Collega l'anodo al terminale della bobina che va al transistor; il diodo deve stare in parallelo alla bobina, ma rivolto al contrario.
- Scegli il diodo: per relè da 5 V e 12 V basta un 1N4007 o un 1N4148; per motori con velocità regolata in PWM usa uno Schottky veloce (1N5819) o un UF4007. La corrente nominale del diodo deve superare quella della bobina.
- Metti il diodo il più vicino possibile alla bobina; i fili lunghi lasciano che parte del picco si propaghi nel circuito.
- Controlla il verso ancora una volta prima di dare tensione: un diodo di ricircolo montato al contrario mette in cortocircuito l'alimentazione appena il transistor conduce.
Ponte raddrizzatore: trasformare l'alternata in continua
La tensione della rete e quella in uscita da un trasformatore è corrente alternata (AC): in Europa la sua frequenza è di 50 Hz, quindi compie 50 cicli completi al secondo e cambia verso 100 volte al secondo. Un Arduino invece ha bisogno di corrente continua (DC), che non cambia verso. Un solo diodo lascia passare soltanto la semionda positiva della sinusoide; è il raddrizzamento a singola semionda. Un ponte raddrizzatore (ponte di Graetz), con quattro diodi collegati a rombo, fa condurre due diodi in ogni semionda e rende positiva anche quella negativa; è il raddrizzamento a doppia semionda. Un grosso condensatore elettrolitico in uscita trasforma questa tensione pulsante in una continua livellata, vicina al valore di picco.
Il calcolo funziona così: il valore scritto sul trasformatore è il valore efficace (RMS), e quello di picco è √2 volte più grande. Un trasformatore da 9 V in alternata ha quindi un picco di 9 × 1,414 ≈ 12,7 V. Nel ponte la corrente passa sempre attraverso due diodi, quindi si perdono circa 1,6 V e il condensatore si carica intorno agli 11 V. Quando il carico assorbe corrente, il condensatore si scarica tra un picco e l'altro; questa ondulazione residua (ripple) vale circa Vr = I / (2 × f × C). Con un carico di 0,5 A e un condensatore da 2200 µF, Vr = 0,5 / (2 × 50 × 0,0022) ≈ 2,3 V: la tensione oscilla quindi tra circa 8,8 e 11 V. Un regolatore come il 7805 la trasforma in 5 V puliti. Trovi come funzionano i condensatori in Cos'è un condensatore? e il regolatore in Regolatore di tensione 7805.
| Raddrizzatore | Numero di diodi | Frequenza del ripple (rete a 50 Hz) | Nota |
|---|---|---|---|
| Singola semionda | 1 | 50 Hz | Il più semplice; con lo stesso condensatore il ripple è doppio |
| Doppia semionda con presa centrale | 2 | 100 Hz | Serve un trasformatore con presa centrale; conduce un diodo alla volta |
| Ponte (doppia semionda) | 4 o un ponte raddrizzatore integrato | 100 Hz | Il più diffuso; conducono due diodi alla volta, perdita ~1,4–2 V |
Diodo Zener: limitare la tensione
Un diodo Zener è costruito per iniziare a condurre in modo controllato quando la tensione inversa raggiunge un valore preciso. È la tensione Zener (Vz), disponibile in molti valori standard da 2,4 V a 200 V: 3,3 V, 5,1 V e 12 V sono i più usati. Lo Zener si collega in inversa: catodo al positivo, anodo a GND. Sotto Vz non passa quasi corrente; quando la tensione raggiunge Vz, il diodo devia la corrente in eccesso verso GND e mantiene la tensione a quel valore. In diretta si comporta come un diodo normale e fa cadere circa 0,7 V. Uno Zener non si usa mai da solo: una resistenza in serie che limiti la corrente è obbligatoria, altrimenti si brucia nel primo secondo.
La resistenza in serie si calcola con R = (Vin − Vz) / (Iz + Icarico). Supponiamo che tu voglia ottenere 5,1 V stabili da 12 V per un circuito che assorbe 5 mA, con 10 mA nello Zener: R = (12 − 5,1) / (0,010 + 0,005) = 460 Ω, quindi scegli il valore standard 470 Ω. Senza carico tutta la corrente passa nello Zener: 6,9 V / 470 Ω ≈ 14,7 mA, e lo Zener dissipa 5,1 × 0,0147 ≈ 75 mW, nessun problema per uno Zener da 0,5 W. La resistenza dissipa 6,9² / 470 ≈ 0,1 W, quindi basta una da 1/4 W. Puoi verificare i calcoli di tensione e resistenza con il calcolatore della legge di Ohm.
- Limite di potenza: la serie 1N47xx (per esempio l'1N4733A da 5,1 V) è da 1 W, le serie BZX55 e 1N52xx da 0,5 W. La potenza dello Zener è P = Vz × Iz ed è meglio restare sotto la metà del valore nominale.
- Protezione degli ingressi: per collegare un segnale a 12 V a un ingresso a 5 V di Arduino puoi usare una resistenza in serie da 10 kΩ e uno Zener da 5,1 V dal pin a GND; la tensione sul pin non potrà superare 5,1 V.
- Attenzione alla dispersione: gli Zener a bassa tensione lasciano passare corrente anche sotto Vz; secondo il datasheet, l'1N4728A (3,3 V) può disperdere fino a 100 µA già a 1 V. Nei circuiti di misura analogica ad alta impedenza questa dispersione falsa la lettura.
- Non è un regolatore: lo Zener serve per riferimenti e protezioni di qualche decina di milliampere. Per alimentare un Arduino o un motore usa un regolatore lineare come il 7805 o un modulo step-down come l'LM2596.
- Se ti serve un riferimento preciso: gli Zener intorno a 5,1 V e 5,6 V sono quelli che variano meno con la temperatura; per un riferimento più stabile si preferiscono i riferimenti di tensione regolabili come il TL431.
Provare un diodo con il multimetro
- Togli il diodo dal circuito o dissalda almeno un terminale; gli altri componenti del circuito possono falsare la misura.
- Ruota il selettore sulla posizione con il simbolo del diodo. In molti multimetri condivide la posizione con la prova di continuità (cicalino).
- Appoggia il puntale rosso sull'anodo e quello nero sul catodo con la fascia. Un diodo al silicio sano mostra un valore tra 0,5 e 0,7; è la tensione diretta con una corrente di prova di circa 1 mA (alcuni multimetri la mostrano in millivolt, per esempio 550).
- Inverti i puntali. Un diodo sano in questo verso non conduce e il display mostra OL oppure un solo 1 a sinistra.
- Se vedi un valore vicino a zero in entrambi i versi e senti il cicalino, il diodo è in cortocircuito; se vedi OL in entrambi i versi, il diodo è interrotto, cioè rotto all'interno. In tutti e due i casi va sostituito.
| Componente misurato | Verso diretto (puntale rosso sull'anodo) | Verso inverso |
|---|---|---|
| 1N4007 (raddrizzatore al silicio) | 0,50–0,60 V | OL |
| 1N4148 (di segnale) | 0,60–0,70 V | OL |
| 1N5819 (Schottky) | 0,15–0,30 V | OL (da caldo può comparire un valore molto alto) |
| Zener da 5,1 V (1N4733A) | 0,65–0,75 V | OL (la tensione di prova del multimetro non arriva a 5,1 V) |
| LED rosso | 1,6–1,9 V, il LED si accende debolmente | OL |
| LED blu / bianco | 2,5–3,0 V oppure OL (la tensione di prova può non bastare) | OL |
| Diodo in cortocircuito | 0,00–0,05 V e cicalino | 0,00–0,05 V e cicalino |
| Diodo interrotto | OL | OL |
Costruire un tester per diodi con Arduino
Se non hai un multimetro o vuoi fare un passo in più, puoi trasformare un Arduino Uno in un semplice tester per diodi. L'idea è la stessa del multimetro: si fa passare una piccola corrente nel componente prima in un verso e poi nell'altro, e si misura la tensione ai suoi capi. Due pin digitali alimentano le due estremità del componente attraverso resistenze da 1 kΩ e due pin analogici leggono la tensione a ciascuna estremità. Poiché la corrente è limitata a circa 2 mA, diodi, LED e perfino componenti inseriti al contrario non subiscono danni.
| Collegamento | Arduino Uno | Descrizione |
|---|---|---|
| Resistenza 1 (1 kΩ) | Tra D2 e A0 | Alimenta il lato A0 |
| Resistenza 2 (1 kΩ) | Tra D3 e A1 | Alimenta il lato A1 |
| Un terminale del componente in prova | A0 | Il verso non conta |
| L'altro terminale del componente in prova | A1 | Il codice capisce da solo da che parte è l'anodo |
1// Arduino ile diyot test cihazı / Diode tester with Arduino
2// D2 -> 1 kΩ -> A0 -> [test edilen parça / part under test] -> A1 -> 1 kΩ -> D3
3const int PIN_A = 2; // A0 tarafını besler / drives the A0 side
4const int PIN_B = 3; // A1 tarafını besler / drives the A1 side
5const float VREF = 5.0; // 5V pininde ölçtüğün değer / the value you measure on the 5V pin
6
7// highPin'i HIGH, lowPin'i LOW yapar ve parça üzerindeki gerilimi döndürür
8// Drives highPin HIGH, lowPin LOW and returns the voltage across the part
9float measure(int highPin, int lowPin, int highAdc, int lowAdc) {
10 digitalWrite(highPin, HIGH);
11 digitalWrite(lowPin, LOW);
12 delay(5);
13 long sum = 0;
14 for (int i = 0; i < 16; i++) {
15 sum += analogRead(highAdc) - analogRead(lowAdc);
16 }
17 digitalWrite(highPin, LOW); // ölçüm bitti, akımı kes / done, cut the current
18 return sum / 16.0 * VREF / 1023.0;
19}
20
21// İleri gerilime göre türü tahmin eder / Guesses the type from the forward voltage
22const char* identify(float vf) {
23 if (vf < 0.40) return "Schottky";
24 if (vf < 1.00) return "silisyum diyot / silicon diode";
25 return "LED";
26}
27
28void setup() {
29 pinMode(PIN_A, OUTPUT);
30 pinMode(PIN_B, OUTPUT);
31 digitalWrite(PIN_A, LOW);
32 digitalWrite(PIN_B, LOW);
33 Serial.begin(9600);
34}
35
36void loop() {
37 float vAB = measure(PIN_A, PIN_B, A0, A1); // A0 tarafı artı / A0 side positive
38 float vBA = measure(PIN_B, PIN_A, A1, A0); // A1 tarafı artı / A1 side positive
39 bool ab = vAB < 4.0; // A0 -> A1 yönünde iletim / conducts from A0 to A1
40 bool ba = vBA < 4.0; // A1 -> A0 yönünde iletim / conducts from A1 to A0
41
42 if (ab && ba) {
43 if (vAB < 0.1 && vBA < 0.1) {
44 Serial.println("Kısa devre / short circuit");
45 } else {
46 Serial.println("İki yönde iletim: direnç ya da düşük gerilimli zener / conducts both ways: resistor or low-voltage zener");
47 }
48 } else if (ab || ba) {
49 float vf = ab ? vAB : vBA;
50 Serial.print(ab ? "Anot A0 tarafında / anode on A0 side" : "Anot A1 tarafında / anode on A1 side");
51 Serial.print(" Vf = ");
52 Serial.print(vf, 3);
53 Serial.print(" V -> ");
54 Serial.println(identify(vf));
55 } else {
56 Serial.println("İletim yok: açık devre ya da parça yok / no conduction: open circuit or no part");
57 }
58 delay(2000);
59}Il codice porta prima D2 a HIGH e D3 a LOW e misura la differenza tra A0 e A1, poi ripete nel verso opposto. Se una tensione bassa compare in un solo verso, il componente è un diodo e quel verso indica dove si trova l'anodo; sotto 0,40 V viene classificato come Schottky, fino a 1 V come silicio e sopra come LED. Un valore vicino a zero in entrambi i versi significa cortocircuito, circa 5 V in entrambi i versi significa che non c'è conduzione. Vedrai i risultati nel monitor seriale a 9600 baud; per misure più precise, misura il pin 5V con il multimetro e aggiorna VREF. Con un 1N4148 vedrai un valore intorno a Vf = 0.640 V e il risultato «silicon diode».
ESP32: proteggere un ingresso analogico con diodi Schottky
I pin dell'ESP32 tollerano solo 3,3 V, con un limite assoluto di circa 3,6 V. Per misurare una batteria da 12 V, prima abbassi la tensione con un partitore di tensione: il positivo della batteria va a GPIO 34 attraverso 100 kΩ e GPIO 34 va a GND attraverso 22 kΩ. Con questo rapporto, 12,6 V diventano circa 2,27 V sul pin. E i picchi che compaiono mentre la batteria si carica o un motore è in funzione? Qui due piccoli diodi Schottky fanno da rete di sicurezza: uno va dal pin a 3V3 (catodo su 3V3), l'altro da GND al pin (catodo sul pin). Se la tensione del pin supera 3,3 V di più di circa 0,3 V o scende sotto zero, l'eccesso passa attraverso i diodi e la resistenza da 100 kΩ mantiene piccola questa corrente.
1// ESP32 ile 12 V akü gerilimi ölçme, diyot korumalı giriş / 12 V battery voltage with ESP32, diode-protected input
2// Akü + -> 100 kΩ -> GPIO 34 -> 22 kΩ -> GND / battery + -> 100 kΩ -> GPIO 34 -> 22 kΩ -> GND
3// Schottky 1: anot GPIO 34, katot 3V3 / anode GPIO 34, cathode 3V3
4// Schottky 2: anot GND, katot GPIO 34 / anode GND, cathode GPIO 34
5const int SENSE_PIN = 34; // yalnızca giriş, ADC1 / input only, ADC1
6const float RATIO = (100.0 + 22.0) / 22.0; // bölücü oranı yaklaşık 5,55 / divider ratio about 5.55
7
8void setup() {
9 Serial.begin(115200);
10}
11
12void loop() {
13 uint32_t sum = 0;
14 for (int i = 0; i < 32; i++) {
15 sum += analogReadMilliVolts(SENSE_PIN); // kalibre edilmiş mV / calibrated millivolts
16 delay(2);
17 }
18 float pinV = sum / 32.0 / 1000.0; // pindeki gerilim / voltage on the pin
19 float batteryV = pinV * RATIO; // akü gerilimi / battery voltage
20 Serial.printf("Pin: %.3f V Akü / battery: %.2f V\n", pinV, batteryV);
21 if (batteryV < 11.8) {
22 Serial.println("Akü zayıf / battery low");
23 }
24 delay(1000);
25}Raspberry Pi Pico: misurare la temperatura con un diodo (MicroPython)
Ti ricordi che la tensione diretta di un diodo scende di circa 2 mV per ogni °C? Il sensore di temperatura integrato del Raspberry Pi Pico funziona proprio su questo principio: secondo il datasheet dell'RP2040, il sensore sul chip misura la tensione di un diodo bipolare polarizzato; questa tensione è tipicamente 0,706 V a 27 °C e scende di 1,721 mV per grado. Puoi fare lo stesso con un 1N4148 esterno: collega il pin 3V3 a GP26 e all'anodo del diodo attraverso una resistenza da 10 kΩ, e il catodo a GND. Nel diodo scorrono circa 0,27 mA e la tensione su GP26 cambia con la temperatura.
1# Pico: diyotla sıcaklık ölçümü / Temperature measurement with a diode
2# 3V3 -> 10 kΩ -> GP26 + 1N4148 anodu / anode, katot / cathode -> GND
3from machine import ADC
4import time
5
6chip = ADC(4) # yonga içindeki sıcaklık diyodu / on-chip temperature diode
7diode = ADC(26) # GP26 (ADC0): harici 1N4148 / external 1N4148
8CONV = 3.3 / 65535 # read_u16 değerini volta çevirir / converts read_u16 to volts
9
10# Kalibrasyon: oda sıcaklığındaki değerlerini yaz / Calibration: enter your room-temperature values
11T0 = 22.0 # termometredeki sıcaklık (°C) / thermometer reading (°C)
12V0 = 0.600 # o sıcaklıkta diyot gerilimi (V) / diode voltage at that temperature (V)
13SLOPE = -0.002 # 1N4148 için yaklaşık -2 mV/°C / about -2 mV/°C for a 1N4148
14
15def average_voltage(adc, n=64):
16 total = 0
17 for _ in range(n):
18 total += adc.read_u16()
19 return total / n * CONV
20
21while True:
22 v_chip = average_voltage(chip)
23 t_chip = 27 - (v_chip - 0.706) / 0.001721 # RP2040 veri sayfası formülü / RP2040 datasheet formula
24 v_diode = average_voltage(diode)
25 t_diode = T0 + (v_diode - V0) / SLOPE
26 print("Yonga / chip: {:.1f} °C Diyot / diode: {:.3f} V -> {:.1f} °C".format(t_chip, v_diode, t_diode))
27 time.sleep(1)La prima volta che esegui il codice, leggi la temperatura ambiente su un termometro, poi scrivi in V0 la tensione del diodo che vedi a schermo e in T0 il valore del termometro. Dato che ogni diodo ha una tensione leggermente diversa, questa calibrazione a un punto è indispensabile. Poi stringi il diodo tra le dita: in pochi secondi vedrai la tensione scendere e la temperatura salire. Anche il sensore sul chip risente del calore della scheda stessa, quindi nessuno dei due è un termometro di precisione: sono esperimenti didattici che mostrano il principio. Per misure reali usa un sensore digitale come il DS18B20.
Idee di progetti con i diodi
- Tester per diodi con LCD: unisci il codice qui sopra a un display LCD I2C, così tipo e tensione diretta compaiono appena inserisci un componente.
- Alimentazione con batteria di riserva: unisci USB e un pacco batterie con due diodi Schottky, così l'Arduino continua a funzionare a batteria senza interruzioni quando scolleghi l'USB.
- Tastierino senza tasti fantasma: aggiungi un 1N4148 a ogni tasto di una matrice di pulsanti fatta in casa, così premendo più tasti insieme non viene letto un tasto sbagliato. La logica della scansione a matrice è spiegata in Usare un tastierino a matrice.
- LED in Charlieplexing: sfrutta il fatto che i LED conducono in un solo verso per controllare 6 LED con soli 3 pin, o 12 LED con 4 pin.
- Irrigazione automatica: comanda la pompa con un relè e proteggila con un diodo di ricircolo; per misurare l'umidità leggi Sensore di umidità del terreno.
- Ricarica solare: metti un diodo Schottky di blocco tra pannello e batteria, così di notte la batteria non si scarica nel pannello.
Errori comuni e soluzioni
| Sintomo | Causa probabile | Soluzione |
|---|---|---|
| Il circuito non funziona affatto | Il diodo di protezione in serie è montato al contrario | Giralo: catodo con la fascia verso il carico, anodo verso il positivo dell'alimentazione |
| L'Arduino si resetta ogni volta che un relè o un motore si spegne | Manca il diodo di ricircolo | Metti un 1N4007 o un 1N4148 in parallelo alla bobina, catodo al positivo |
| L'alimentazione crolla quando il transistor conduce e il diodo scalda | Il diodo di ricircolo è al contrario e cortocircuita l'alimentazione | Gira il diodo: catodo al positivo dell'alimentazione |
| Il modulo funziona in modo instabile dopo il diodo in serie | Perdita di 0,7–1 V dovuta alla tensione diretta | Usa uno Schottky (1N5819) o un MOSFET a canale P |
| Il diodo scalda molto | Corrente nominale superata o diodo lento con PWM ad alta frequenza | Scegli l'1N5408 da 3 A, oppure uno Schottky / UF4007 |
| Lo Zener si guasta presto | Resistenza in serie assente o troppo piccola | Calcola R = (Vin − Vz) / I e controlla la potenza dello Zener |
| La lettura analogica deriva dopo aver montato il diodo di protezione | Corrente di dispersione del diodo o dello Zener | Usa uno Schottky di segnale (BAT54) e riduci le resistenze del partitore |
Il diodo è uno dei componenti più semplici all'apparenza e più utili dell'elettronica: indirizza la corrente in un solo verso, protegge il circuito, trasforma l'alternata in continua e, come LED, fa luce. Quando avrai preso l'abitudine di leggere il verso dalla fascia, di tenere conto della caduta di tensione e di aggiungere un diodo di ricircolo ai carichi induttivi, brucerai molti meno componenti nei tuoi progetti. Nell'app BlueGrays trovi progetti con LED, relè, motori e irrigazione, con schemi passo per passo e codice pronto, per vedere con i tuoi occhi dove vanno i diodi nei circuiti reali.
Domande frequenti
A cosa serve un diodo?
Un diodo lascia passare la corrente in un solo verso, dall'anodo al catodo. Per questo si usa per trasformare l'alternata in continua (raddrizzamento), proteggere un circuito da una batteria collegata al contrario, sopprimere i picchi di tensione di relè e motori e, nel caso dello Zener, limitare una tensione a un valore fisso. Anche il LED è un diodo che emette luce.
Qual è il positivo di un diodo?
Il positivo è l'anodo e il negativo è il catodo. Il catodo è indicato da una fascia sul corpo, e nel simbolo dello schema la barra verticale rappresenta il catodo. Perché il diodo conduca, l'anodo deve essere circa 0,7 V più positivo del catodo; nei LED il terminale lungo è l'anodo.
Che differenza c'è tra diodo e LED?
Entrambi fanno passare la corrente in un solo verso; il LED è un diodo speciale che emette luce mentre conduce. La sua tensione diretta va da 1,8 a 3,4 V a seconda del colore e in inversa sopporta solo circa 5 V. Per questo un LED non si usa come raddrizzatore e va sempre collegato con una resistenza in serie.
Che differenza c'è tra diodo Zener e diodo normale?
Un diodo normale blocca la corrente in inversa e si rompe se si supera la sua tensione massima. Uno Zener conduce di proposito in inversa a una tensione precisa (per esempio 5,1 V) senza danneggiarsi, e così limita la tensione a quel valore. Si collega in inversa, con il catodo al positivo, e sempre con una resistenza in serie.
Come capire se un diodo è guasto?
Imposta il multimetro sulla prova diodi e appoggia il puntale rosso sull'anodo e quello nero sul catodo. Un diodo al silicio sano indica 0,5–0,7 V, e invertendo i puntali compare OL. Un valore vicino a zero in entrambi i versi indica un cortocircuito, OL in entrambi i versi un diodo interrotto.
Quanti ampere e quanti volt regge l'1N4007?
L'1N4007 è un diodo raddrizzatore al silicio che porta una corrente diretta media di 1 A e sopporta una tensione inversa ripetitiva di 1000 V. La sua tensione diretta è al massimo 1,1 V a 1 A e regge picchi singoli di 30 A. Per correnti maggiori si usa l'1N5408 da 3 A.
Progetti da realizzare dopo questo articolo
Vedi tutti i progetti
LED lampeggiante
Il primissimo ciao dell'elettronica: accendere e spegnere un solo LED. L'Arduino accende e spegne il LED a intervalli brevissimi, così la luce lampeggia veloce. Vedi nel modo più semplice come la sche

LED Lampeggiante con ESP32
Insegna l'uso di base delle uscite GPIO con l'ESP32. Otteniamo un effetto lampeggiante accendendo e spegnendo un LED dal pin digitale. Versione ESP32 del classico progetto blink su Arduino UNO; i comandi di base di blink nell'ambiente Arduino sono gli stessi, ma la disposizione dei pin e i livelli GPIO a 3,3 V dell'ESP32 sono diversi da quelli di Arduino UNO.

Accensione di un LED esterno con Raspberry Pi Pico (GP14 + breadboard)
Il passo successivo dopo il LED integrato di Pico: collegare un LED esterno alla breadboard e controllarlo tramite il pin GP14. Con questo progetto imparerai come utilizzare qualsiasi pin GPIO generico del Pico come uscita, la polarità del LED (stelo lungo = anodo/+, stelo corto = catodo/–) e perché è indispensabile un resistore di limitazione della corrente (220 Ω). Se non inserisci il resistore, l’LED riceverà una corrente eccessiva e potrebbe bruciarsi. Il circuito è molto semplice: Pico GP14

Lampadina 220V con pulsante (Push)
Finché tieni premuto il pulsante, una vera lampadina da 220 volt resta accesa, e si spegne appena lo lasci. Il piccolo segnale dell'Arduino non può accendere la lampadina direttamente, quindi in mezzo

Accendere una lampadina 220V con il telecomando
Accendi e spegni una vera lampadina di casa con un telecomando, senza alzarti dal divano. L'Arduino legge il segnale di luce invisibile del telecomando; il tasto di accensione fa scattare il relè e ac

Stazione di irrigazione intelligente
Un giardiniere che annaffia le tue piante da solo, così non si seccano mentre sei in vacanza. Un sensore di umidità misura quanto è bagnata la terra; quando diventa secca, l'Arduino accende la pompa d

Auto controllata via Bluetooth con L298N
Trasforma il telefono in un telecomando e guida la tua auto robot. L'Arduino riceve tramite un modulo Bluetooth i comandi di un'app di controllo remoto sul telefono e fa girare le ruote con un driver

Utilizzo del motore passo-passo
Un motore che gira passo dopo passo, esattamente quanto vuoi tu, come la lancetta di un orologio. Tramite una scheda driver, l'Arduino fa compiere a un piccolo motore passo-passo un giro completo in u
Altri articoli
App BlueGrays
Costruisci questo circuito passo passo sul telefono
Schema, codice ed elenco componenti in un’unica schermata. Oltre 160 progetti Arduino, ESP32 e Pico da realizzare.
Inquadra con il telefono
Punta la fotocamera sul codice: si apre lo store del tuo telefono.
oppure apri lo store

