L'autore di Instructables con il soprannome di CreativeStuff spiega come implementarlo Arduino il ohmmetro più semplice. Per fare questo, prende una breadboard tipo breadboard:
In realtà Arduino:
Visualizzazione su HD44780 (KB1013VG6):
Maglioni "dupont" o fatti in casa:
Resistenza variabile da 10 kΩ con cavi duri sottili saldati (per la regolazione del contrasto dell'immagine sul display):
Assomiglia a qualcosa? Esatto, tutto ciò che è nuovo è ben dimenticato. Gli intenditori ricorderanno di cosa si tratta e dove:
Resistenza permanente 470 Ohm:
E tutto ciò si connette secondo questo schema:
Poiché gli schemi compilati nel programma Fritzing non sono molto istruttivi, la procedura guidata compila la decrittazione:
Display Pin 1 - Cavo comune
Display Pin 2 - Plus Power
Display Pin 3 - Spostamento del contatto di un resistore variabile
Display 4 pin - Arduino D12 pin
Display Pin 5 - Cavo comune
Display pin 6 - D11 pin Arduino
I pin di visualizzazione 7, 8, 9, 10 non sono collegati a nulla
Display Pin 11 - Arduino D5 Pin
Display 12 pin - Arduino D4 pin
Display Pin 13 - Arduino D3 Pin
Display Pin 14 - Arduino D2 Pin
Display Pin 15 - Plus Power
Display Pin 16 - Cavo comune
Quando si ripete il disegno, è necessario studiare il foglio dati sul display per scoprire se la sua base è diversa dallo standard.
Il master collega uno dei contatti fissi della resistenza variabile al power plus, il secondo al filo comune. Un divisore di tensione è costituito da un resistore esemplificativo e testato: il resistore testato con un'uscita al plus dell'alimentatore e quello esemplare con un'uscita al filo comune. Le restanti uscite non occupate di entrambi i resistori sono collegate tra loro e collegate al pin A0 di Arduino. Riempi lo schizzo:
#include
// LiquidCrystal (rs, sc, d4, d5, d6, d7)
LCD a cristalli liquidi (12, 11, 5, 4, 3, 2);
const int analogPin = 0;
int analogval = 0;
int vin = 5;
float buff = 0;
float vout = 0;
float R1 = 0;
float R2 = 470;
void setup () {
lcd.begin (16, 2);
}
void loop () {
analogval = analogRead (analogPin);
if (analogval) {
buff = analogval * vin;
vout = (buff) / 1024.0;
if (vout> 0.9) {
buff = (vin / vout) - 1;
R1 = R2 * buff;
lcd.setCursor (0, 0);
lcd.print ("-Resistance-");
lcd.setCursor (0, 1);
if ((R1)> 999) {
lcd.print ("");
lcd.print (R1 / 1000);
lcd.print ("K ohm");
}
altro {
lcd.print ("");
lcd.print (rotondo (R1));
lcd.print ("ohm");
}
ritardo (1000);
lcd.clear ();
}
altro {
lcd.setCursor (0, 0);
lcd.print ("Inserisci resistenza");
lcd.setCursor (0, 1);
}
}
}
Si consiglia di misurare con maggiore precisione la resistenza del resistore di riferimento, nonché la tensione di alimentazione (ovviamente, quando si misura la resistenza di riferimento deve essere temporaneamente rimossa), quindi inserire i risultati della misurazione nelle linee corrispondenti all'inizio dello schizzo. Prendi la fonte di alimentazione con una buona stabilizzazione della tensione di uscita. Il programma calcola la resistenza secondo la formula:
R2 = Vout * R1 / (Vin - Vout),
derivato dalla formula:
Vout = Vin * R2 / (R1 + R2),
dove R1 è la resistenza del modello, R2 è la resistenza misurata, Vin è la tensione di alimentazione, Vout è la tensione nel punto medio del divisore.
Resta da rimuovere la breadboard, effettuare tutti i collegamenti mediante saldatura e trasferimento fatto in casa nel caso. Ma in questa forma non è pratico, poiché duplica la funzione ohmmetro disponibile nel multimetro. Rimodellando lo schizzo e utilizzando una fonte di alimentazione di precisione e un resistore modello, è possibile utilizzare il design, ad esempio, per ordinare i resistori in base alla precisione nella loro produzione. Per visualizzare immediatamente le informazioni a quale dei cinque gruppi appartiene il componente quando si collega un resistore: 1, 2, 5, 10 o 20%.