Instructables-ohjelman kirjoittaja, lempinimellä CreativeStuff, kertoo, kuinka toteuttaa Työläs yksinkertaisin ohmmeter. Tätä varten hän ottaa leipälautatyyppisen leipälautanen:
Oikeastaan Arduino:
Näyttö HD44780: lla (KB1013VG6):
Puserot "dupont" tai kotitekoiset:
10 kΩ muuttuva vastus juotetuilla ohuilla kovilla johdoilla (kuvan kontrastin säätämiseksi näytössä):
Eikö se muistuta mitään? Aivan totta, kaikki uusi on hyvin unohdettu vanha. Ystävät muistavat, mikä se on ja missä:
Pysyvä vastus 470 ohmia:
Ja kaikki tämä yhdistyy tämän järjestelmän mukaan:
Koska Fritzing-ohjelmassa kootut järjestelmät eivät ole kovin informatiivisia, ohjattu toiminto purkaa salauksen:
Näyttötappi 1 - yhteinen johdin
Näytön nasta 2 - plus virta
Näyttötappi 3 - muuttuvan vastuksen liikkuva kosketin
Näyttö 4-nastainen - Arduino D12 -tappi
Näyttötappi 5 - yleinen johdin
Näyttötappi 6 - D11 Arduino -tappi
Näyttötappeja 7, 8, 9, 10 ei ole kytketty mihinkään
Näyttötappi 11 - Arduino D5 -tappi
Näyttö 12-nastainen - Arduino D4 -tappi
Näyttötappi 13 - Arduino D3 -tappi
Näyttötappi 14 - Arduino D2 -tappi
Näyttötappi 15 - Plus Power
Näyttötappi 16 - yhteinen johdin
Suunnitelmaa toistettaessa on tarpeen tutkia näytöllä oleva lomake selvittääksesi, eroaako sen pohja standardista.
Master liittää yhden muuttuvan vastuksen kiinteistä koskettimista teho plus, toinen yhteiseen johtoon. Jännitteenjakaja koostuu esimerkinomaisesta ja testatusta vastasta: testattu vastus, jonka yksi lähtö on virtalähteen plus, ja esimerkillinen, jolla on yksi lähtö yhteiseen johtoon. Molempien vastuksien jäljellä olevat käyttämättömät lähdöt on kytketty toisiinsa ja kytketty Arduino-nastaan A0. Täytä luonnos:
# sisällytä
// LiquidCrystal (rs, sc, d4, d5, d6, d7)
Nestekidenäyttö LCD (12, 11, 5, 4, 3, 2);
const int analogPin = 0;
int analogiarvo = 0;
int vin = 5;
kelluva buff = 0;
kelluva vout = 0;
kelluva R1 = 0;
kelluva R2 = 470;
tyhjä asennus () {
lcdbegin (16, 2);
}
tyhjä silmukka () {
analogval = analogRead (analogPin);
if (analoginen) {
buff = analoginen * vin;
vout = (buff) / 1024,0;
if (vout> 0,9) {
buff = (vin / vout) - 1;
R1 = R2 * buff;
lcd.setCursor (0, 0);
lcd.print ("-resistenssi-");
lcd.setCursor (0, 1);
jos ((R1)> 999) {
lcd.print ("");
lcd-painos (R1 / 1000);
lcd.print ("K ohm");
}
muuten {
lcd.print ("");
lcd.print (pyöreä (R1));
lcd.print ("ohm");
}
viive (1000);
lcd.selkeä ();
}
muuten {
lcd.setCursor (0, 0);
lcd.print ("insert vastus");
lcd.setCursor (0, 1);
}
}
}
Referenssivastuksen resistanssi sekä syöttöjännite suositellaan mitattavaksi tarkemmin (tietysti, kun referenssivastetta mitataan, se olisi väliaikaisesti poistettava), ja kirjoita sitten mittaustulokset vastaaviin riveihin luonnoksen alussa. Ota virtalähde niin, että lähtöjännite on hyvin vakiintunut. Ohjelma laskee resistanssin kaavan mukaan:
R2 = Vout * R1 / (Vin - Vout),
johdettu kaavasta:
Vout = Vin * R2 / (R1 + R2),
missä R1 on mallin vastus, R2 on mitattu vastus, Vin on syöttöjännite, Vout on jännite jakajan keskipisteessä.
Jäljellä on poistaa leipälauta, tehdä kaikki liitokset juottamalla ja siirtämällä kotitekoinen tapaukseen. Mutta tässä muodossa se on epäkäytännöllinen, koska se kopioi yleismittarilla käytettävissä olevaa ohmmeter-toimintoa. Uusimalla luonnos ja käyttämällä tarkkuusvirtalähdettä ja mallivastetta, voit käyttää mallia esimerkiksi lajittelemaan vastukset niiden tuotannon tarkkuuden mukaan. Jotta voidaan heti näyttää tiedot mihin viidestä ryhmästä komponentti kuuluu kytkettäessä vastus: 1, 2, 5, 10 tai 20%.