Sida 1 av 1

Arduino - Mäta resistans, men får inte till det

Postat: 13 november 2012, 18:36:00
av skorpion
Hej
Jag försöker lära mig arduino och tänkta testa med att läsa resistans som ett första projekt.

Jag driver arduinon från USBn och har kopplat som följer:

Kod: Markera allt

5v-----10Kohm-----#-----R1-----GND
                  #
                  |
                  A0
Koden:

Kod: Markera allt

int analogPin = 0;
int analogVal = 0;
int Vin = 5; //connected to 5v on Arduino
float Vout = 0;
float R1 = 10000; //10Kohm
float R2 = 0;

void setup()
{
  Serial.begin(9600);
  digitalWrite(13, HIGH);
}

void loop()
{
  analogVal = analogRead(analogPin);
  Vout = (Vin / 1023.0) * analogVal;
  R2 = R1 / ((Vin / Vout) - 1);
  Serial.print("Vout: ");
  Serial.println(Vout);
  Serial.print("R2: ");
  Serial.println(R2);
  delay(1000);
}
Jag har kollat mina 2 motstånd med min multimeter och den som är ansluten mot 5v är 9.92Kohm och den andra är på 82ohm
Det enda jag får till svar är:

Kod: Markera allt

Vout: 0.03
R2: 59.00
Kan inte se något fel, men nåt måste jag gjort fel, för R2 ska ju visa 82 (eller ngt närmare).

MVH Niclas

Re: Arduino - Mäta resistans, men får inte till det

Postat: 13 november 2012, 18:47:40
av Icecap
Första steg är att kolla råa värden från ADC-omvandlaren. Sedan räknar du ut (och mäter) vilka värden det ska vara samt vilka värde som rejält finns där. När du har dessa hårda fakta i handen kan du sedan börja med att kolla att de faktisk är korrekta.

Därifrån kan du köra med den formel du har och se om du får rätt svar.

Re: Arduino - Mäta resistans, men får inte till det

Postat: 13 november 2012, 18:54:24
av Wedge
Spänningen över 82-ohmaren blir 8,13 mV.
Upplösningen på A/D-omvandlaren är 5/1023 = 4,9 mV.
I runda slängar får du alltså ett kvantiseringsfel i samma storleksordning som ditt mätvärde. Om man ska mäta så vill man ha så stor insignal som möjligt för att minska inverkan av brus och kvantiseringsfel.

Re: Arduino - Mäta resistans, men får inte till det

Postat: 13 november 2012, 19:11:40
av jesse
Du borde kanske ha flera "referensmotstånd" med olika värden... t.ex. 100 ohm, 10k och 1M... då får du tre mätområden. 82 ohm kopplar du då in mot 100Ω motståndet för bästa resultat. Om du använder tre olika AD-ingångar så kan processorn automatisk avgöra vilken av de tre du använder.

Re: Arduino - Mäta resistans, men får inte till det

Postat: 13 november 2012, 20:23:35
av Wedge
Asch, jag glömde multiplicera med 5 (Volt), Det blir ca 41 mV över R1, men det blir i alla fall ett dåligt förhållande mellan mätvärde och ett eventuellt kvantiseringsfel +/- 4,9 mV.