Ich habe nun ein Material für mein Projekt mit der Lagebestimmung über den elektrischen Widerstand einer leitenden Bahn gefunden.
Versuche nun das Ganze über Arduino zu messen, habe mir zu diesem Zweck einen der üblichen Sketches zur Widerstandsmessung über Referenzwiderstände kopiert.
Hier der Code:
Der Refernzwiderstand ist 1MegaOhm, da 1K zu schnell zu heiß werden, irgendwie.Code:const int sensorPin = A0; // Analog input pin that senses Vout int sensorValue = 0; // sensorPin default value float Vin = 5; // Input voltage float Vout = 0; // Vout default value float Rref = 1000; // Reference resistor's value in ohms (you can give this value in kiloohms or megaohms - the resistance of the tested resistor will be given in the same units) float R = 0; // Tested resistors default value void setup () { Serial.begin(9600); // Initialize serial communications at 9600 bps } void loop () { sensorValue = analogRead(sensorPin); // Read Vout on analog input pin A0 (Arduino can sense from 0-1023, 1023 is 5V) Vout = (Vin * sensorValue) / 1023; // Convert Vout to volts R = Rref * (1 / ((Vin / Vout) - 1)); // Formula to calculate tested resistor's value Serial.print("R: "); Serial.println(R); // Give calculated resistance in Serial Monitor delay(100); // Delay in milliseconds between reeds }
Nun schließe ich das Ganze an und fahre die Bahn ab, bleibe dabei auf einem Punkt stehen und sehe auf dem Seriellen Monitor dass kurz zwei Werte zu sehen sind welche dann wieder verschwinden, das passiert einige Male. Ich öffne dann den Seriellen Plotter und sehe dass sich dies in gleichen Zeitabständen wiederholt, die Werte ändern sich dabei nicht.
Wieso kann ich nicht durchgehend den Widerstand auslesen?
Was habe ich hier übersehen?







Zitieren


Lesezeichen