Analogno-digitalna (ADC) se uporablja v primeru, da iz okolice zbiramo podatke iz senzorjev, ki merijo analogno. To so običajno poceni in preprosti senzorji.
Analogni vhodi na razvojni plošči Arduino izmerijo napetost in jo pretvorijo v število od 0 do 1024. Tip števila je celoštevilski.
Merjenje temperature (uporabimo termistor ali drugačen elekment za katerega poznamo koliko se spremeni upornost glede na temperaturo zaporedno pa vežemo znani upor):
Merjenje jakosti svetlobe (v primerjavi uporabe optoupora, vežemo zaporedno znani upor, pri uporabi optodiode pa moramo paziti na pravilno polarizirano diodo (v zaporni smeri):
Program, ki bo predstavljen bo meril napetost na potenciometru in to napetost pretvoril v zasuk(kot) na servo motorju. V primerjavi z prejšnjim vodičem smo dodali potenciometer.
Kako povezati potenciometer:
Potenciometer ima tri priključke na dva priključimo napajalno napetosti in GND, tretjemu (običajno postavljenem na sredini) pa enega izmed analognih vhodov.
Program:
#include
Servo servo1; // ustvari objekt za krmiljenje serva
float napetost; // napetost v decimalni obliki za deljenje v nadaljevanju
float kot; //kot v decimalni obliki
void setup()
{
servo1.attach(3); // navedemo na katerem pinu se nahaja signali kabel za servo
}
void loop()
{
napetost=analogRead(5); //preberi napetost na potenciometru
kot= 180*napetost/1024; //ki pretvori vrednost od 0-1024 v vrednost od 0-180
servo1.write(int(kot)); // podamo kot kam naj se servo postavi int() pretvarja iz decimalne v celoštevilsko obliko
delay(15);
}
Merjenje ADC je zelo preprosto uporabimo analogRead() funkcijo, navedemo le na katerem analognem vhodu merimo. Vrednost pa zapišemo v spremenljivko, ki jo predhodno definiramo.
Dodatne zamisli:
Pri analognih meritvah moramo vedno upoštevati kakšno natančnost in razpon dobimo prek napetostnega delilnika, za prireditev razpona lahko uporabimo referenčno napetost, več na http://arduino.cc/en/Reference/AnalogReference.
Prek analognih meritev lahko obdelujemo številne fizikalne količine le poiskati je potrebno ustrezen senzor.
Za natančnejše in bolj specializirane meritve se uporabljajo čipi ali razširitveni »shield«-i, ki pa uporabljajo digitalno komunikacijo. Za povezavo je na spletu mnogo navodil in knjižnic, ki vam bodo pomagale, tudi na tem portalu bomo naredili vodiče nekaterih načinov digitalne komunikacije (I2C, serial).