Forfatteren av Instructables under kallenavnet CreativeStuff forteller hvordan de skal implementeres på Arduino den enkleste ohmmeteren. For å gjøre dette tar han en brødbrett av brødtypetype:
Egentlig Arduino:
Vis på HD44780 (KB1013VG6):
Hoppere "dupont" eller hjemmelaget:
10 kΩ variabel motstand med loddet tynne harde kabler (for å justere bildekontrasten på displayet):
Ligner det noe? Det stemmer, alt nytt er godt glemt gammelt. Kjennere vil huske hva det er og hvor:
470 Ohm Permanent motstand:
Og alt dette kobles i henhold til denne ordningen:
Siden ordningene som er satt sammen i Fritzing-programmet ikke er veldig informative, kompilerer veiviseren dekrypteringen:
Display Pin 1 - Common Wire
Display Pin 2 - Plus Power
Display Pin 3 - Bevegelig kontakt med en variabel motstand
Vis 4-pinners - Arduino D12-pinne
Display Pin 5 - Common Wire
Skjermstift 6 - D11 Arduino-pinne
Displaypinner 7, 8, 9, 10 er ikke koblet til noe
Display Pin 11 - Arduino D5 Pin
Vis 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 - Common Wire
Når du gjentar designen, er det nødvendig å studere databladet på skjermen for å finne ut om basen er annerledes enn standarden.
Mesteren kobler en av de faste kontaktene til den variable motstanden til strømmen pluss, den andre til den vanlige ledningen. En spenningsdelere består av en eksemplarisk og testet motstand: den testede motstanden med en utgang til pluss strømforsyningen, og den eksemplariske med en utgang til fellestråden. De gjenværende ledige utgangene fra begge motstandene er koblet sammen og koblet til Arduino-stift A0. Fyll skissen:
#include
// LiquidCrystal (rs, sc, d4, d5, d6, d7)
Liquid Crystal lcd (12, 11, 5, 4, 3, 2);
const int analogPin = 0;
int-analog = 0;
int vin = 5;
float buff = 0;
float vout = 0;
flyte R1 = 0;
flyte R2 = 470;
ugyldig oppsett () {
lcd.begin (16, 2);
}
void loop () {
analogval = analogLes (analogPin);
if (analogval) {
buff = analog * vin;
vout = (buff) / 1024.0;
if (vout> 0,9) {
buff = (vin / vout) - 1;
R1 = R2 * buff;
lcd.set Markør (0, 0);
lcd.print ("-Resistance-");
lcd.set Markør (0, 1);
hvis ((R1)> 999) {
lcd.print ("");
lcd.print (R1 / 1000);
lcd.print ("K ohm");
}
ellers {
lcd.print ("");
lcd.print (rund (R1));
lcd.print ("ohm");
}
forsinkelse (1000);
lcd.clear ();
}
ellers {
lcd.set Markør (0, 0);
lcd.print ("Sett inn motstand");
lcd.set Markør (0, 1);
}
}
}
Motstanden til referansemotstanden, så vel som forsyningsspenningen, anbefales å måles mer nøyaktig (selvfølgelig, når måling av referansemotstanden skal fjernes midlertidig), og deretter angi måleresultatene i de riktige linjene på begynnelsen av skissen. Ta strømkilden med god stabilisering av utgangsspenningen. Programmet beregner motstanden i henhold til formelen:
R2 = Vout * R1 / (Vin - Vout),
avledet fra formelen:
Vout = Vin * R2 / (R1 + R2),
der R1 er modellmotstanden, R2 er den målte motstanden, Vin er forsyningsspenningen, Vout er spenningen midt på deleren.
Det gjenstår å fjerne brødbordet, lage alle tilkoblinger ved lodding og overføring hjemmelaget inn i saken. Men i denne formen er det upraktisk, siden det dupliserer ohmmeter-funksjonen som er tilgjengelig i multimeteret. Ved å renovere skissen og bruke en presisjonskraftkilde og en modellmotstand, kan du for eksempel bruke designet til å sortere motstandene etter nøyaktighet i deres produksjon. For øyeblikkelig å vise informasjon om hvilke av de fem gruppene komponenten tilhører når du kobler til en motstand: 1, 2, 5, 10 eller 20%.