Tekstitykset
Sähkönjohtavuustesti
Johdanto
Oletko ajatellut koskaan, mitä sähkön liikkuminen materiaaleissa oikeastaan merkitsee? Miksi jotkin asiat johtavat sähköä ja toiset eivät? Tässä harjoituksessa pääset tutustumaan sähkön johtumiseen tarkemmin. Sähköä johtavillakin materiaaleilla voi olla erisuuruisia resistansseja eli kykyjä vastustaa sähkövirtaa.
Tehtävä on aika lyhyt mutta kätevä: saat käyttöösi anturin, jolla voi mittailla monenmoista mullan kosteudesta banaaneihin. Jos muistat mitä teit edellisessä tehtävässä (hämäräkytkin), pääset tosi helpolla: käytännössä kyseessä on sama kytkentä. Valovastus vain korvataan kahdella johdolla.
Ohjelmointivaiheessa näytetään myös, kuinka mitatut lukemat voi muuttaa ohmeiksi - tällä systeemillä voi mitata vaikka Mehackit Maker Kitin vastusten, veden tai perunan resistanssin.
Alla olevassa videossa poltetaan kuvioita puun pintaan johtamalla suurta sähkövirtaa puulankun läpi. Puulankun pinta on sivelty suolavedellä. Näin vaarallisen suurilla jännitteillä ei tällä kurssilla pelata, mutta sähkön johtuminen näkyy videossa hyvin konkreettisella tavalla!
doublereno: Lichtenberg Wood Burning Blue Epoxy White Oak
Tarvikkeet
Mehackit boardin (tai Arduinon), USB-johdon, koekytkentälevyn ja johtimien lisäksi tarvitset seuraavat komponentit.
Osa | Kuva | Kuvaus |
---|---|---|
LED | Pidempi jalka (kuvassa mutkallinen) eli anodi + -napaan eli Arduinon porttiin. Lyhyempi jalka eli katodi miinus-napaan eli maahan. | |
Vastus 330 Ω | Vastus vastustaa sähkövirran kulkua. Vastuksen arvo mitataan ohmeissa (Ω) ja ilmoitetaan komponentissa eri värisinä raitoina (tässä oranssi, oranssi, ruskea ja kulta). | |
Vastus 10 kΩ | . | Vastus vastustaa sähkövirran kulkua. Vastuksen arvo mitataan ohmeissa (Ω) ja ilmoitetaan komponentissa eri värisinä raitoina (tässä ruskea, musta, punainen ja kulta) |
Sähköä johtavia asioita (esim. hedelmä tai kupillinen vettä) | Tässä harjoituksessa testataan asioiden sähkönjohtavuutta. Voit kokeilla ympärilläsi olevien esineitä! |
Virtapiiri
- Banaanin tilalle voit laittaa mitä tahansa sähköä johtavaa ainetta - vaikka vettä, kunhan huolehdit että vain johtojen päät kastuvat!
- Kytkentä on sama kuin aiemmin valovastuksen kanssa, mutta valovastuksen jalat on nyt korvattu kahdella johdolla.
- Kytke toinen johto viiden voltin jännitteeseen ja toinen johto analogiseen porttiin 0 sekä 10 kilo-ohmin vastuksen kautta maahan.
Ohjelman tavoite
Harjoituksessa kokeillaan erilaisten asioiden sähkönjohtavuutta lukemalla arvoja analogisesta portista. Harjoituksen ohjelma on tuttu ja sisältää vain aiemmin käytettyjä komentoja.
Tuttuja komentoja
- pinMode(portti, asetus)
- digitalWrite(portti, arvo)
- delay(aika)
- Serial.begin(nopeus)
- Serial.println(tuloste)
- If/else
- int-muuttujan luominen
- analogRead(portti): Komennolla luetaan onkin analogiportin (A0-A5) arvo. Analogiportit ovat lähtökohtaisesti sisääntuloja, eli niihin on tarkoitus kiinnittää antureita. Luettu arvo on luku väliltä 0-1023, ja yleensä se tallennetaan muuttujaan esimerkiksi seuraavalla komennolla.
int sensor = analogRead(A0);
Ohjelmointi 1/2 - Sähkönjohtavuusanturi
Aluksi tarvittava ohjelma on hyvin samannäköinen kuin edellisessä tehtävässä.
int sensorValue;
int kirkkaus;
void setup() {
pinMode(5, OUTPUT);
Serial.begin(9600);
}
void loop() {
sensorValue = analogRead(A0);
Serial.println(sensorValue);
kirkkaus = map(sensorValue, 0, 1023, 0, 255);
analogWrite(5, kirkkaus);
}
Jos yhdistät virtapiirisi kaksi irtonaista johtoa sähköä johtavaan asiaan (esim. banaaniin tai itseesi) ja tarkkailet Serial monitoriin tulevia arvoja, niin mistä ne kertovat?
Sähkönjohtavuuden testailua
Esimerkkejä testattavista asioista:
- vesi - älä kastele muuta kuin johdon päät!
- vesi, johon lisätään hitaasti suolaa
- ihminen (purista johdonpäitä molemmissa käsissä peukalolla ja etusormella, testaa myös kuinka sormien kostuttaminen vaikuttaa)
- hedelmät
- metalli
- mikä vain mitä löydät käsiisi!
Ohjelmointi 2/2 - Resistanssimittari
Seuraavaksi tehtävä ohjelma ei varsinaisesti muuta Arduinon toimintaa, vaan muokkaa pelkästään Serial monitoriin tulostettavia arvoja. Näin voidaan tutkia, kuinka suuri resistanssi ohmeina irtojohtojen välisillä aineilla tai komponenteilla on.
int sensorValue;
int kirkkaus;
// muuttujat, joita tarvitaan resistanssin laskemiseen
int Vin = 5; // jännite, jonka Arduino syöttää virtapiiriin (5V)
float Vout; // jännite, jonka A0-portti mittaa piiristä
float R1 = 10000; // kiinteän vastuksen resistanssi (10 kilo-ohm)
float R2; // mitattavan aineen resistanssi
void setup() {
pinMode(5, OUTPUT);
Serial.begin(9600);
}
void loop() {
sensorValue = analogRead(A0);
Vout = sensorValue*Vin / 1024.0; // muunnetaan anturilukema jännitteeksi
R2 = R1 * ((Vin / Vout) - 1); // lasketaan mitattavan aineen resistanssi
// tunnettujen arvojen perusteella
Serial.print("Vout: ");
Serial.println(Vout);
Serial.print("R2: ");
Serial.println(R2);
delay(1000);
kirkkaus = map(sensorValue, 0, 1023, 0, 255);
analogWrite(5, kirkkaus);
}
Jos Arduinon virtapiiriin syöttämä jännite (Vin, 5V) tunnetaan, niin anturiportin A0 mittaama arvo (sensorValue, välillä 0-1023) on mahdollista muuntaa jännitteeksi (Vout).
Myös piirissä olevan kiinteän vastuksen arvo (R1, 10 000 ohmia) tunnetaan, joten sisääntulevaa jännitettä ja A0:sta saatua jännitettä hyödyntämällä voidaan laskea myös irtojohtojen välinen resistanssi (R2).
Mittari ei ole tarkka, jos mitattavat resistanssit ovat paljon pienempiä tai suurempia kuin piirin kiinteä vastus. Jos mitataan pieniä arvoja, myös kiinteän vastuksen pitäisi olla pieni, esimerkiksi 100 ohmia. Suuria resistansseja mitattaessa myös vastuksen täytyy olla suuri, jotta tarkkuus säilyy.
Mitä arvo R1 edustaa?