User manual

KY-018 Fotowiderstand Modul
Ausgabe: 29.04.2016 Copyright by Joy-IT - Published under CC BY-NC-SA 3.0 Seite 81 von 227
Codebeispiel Arduino
Das Programm misst den aktuellen Spannungswert am Sensor, berechnet aus diesen und dem bekannten
Serienwiderstand den aktuellen Widerstandswert des Sensors und gibt die Ergebnisse auf der serielle
Ausgabe aus.
int sensorPin = A5; // Hier wird der Eingangs-Pin deklariert
// Serielle Ausgabe in 9600 Baud
void setup()
{
Serial.begin(9600);
}
// Das Programm misst den aktuellen Spannungswert am Sensor,
// berechnet aus diesen und dem bekannten Serienwiderstand den aktuellen
// Widerstandswert des Sensors und gibt die Ergebnisse auf der serielle Ausgabe aus
void loop()
{
// Aktueller Spannungswert wird gemessen...
int rawValue = analogRead(sensorPin);
float voltage = rawValue * (5.0/1023) * 1000;
float resitance = 10000 * ( voltage / ( 5000.0 - voltage) );
// ... und hier auf die serielle Schnittstelle ausgegeben
Serial.print("Spannungswert:"); Serial.print(voltage); Serial.print("mV");
Serial.print(", Widerstandswert:"); Serial.print(resitance);Serial.println("Ohm");
Serial.println("---------------------------------------");
delay(500);
}
Anschlussbelegung Arduino:
Sensor GND = [Pin GND]
Sensor +V = [Pin 5V]
Sensor Signal = [Pin A5]
Beispielprogramm Download
Single_Analog_Sensor.zip
Codebeispiel Raspberry Pi
!! !! !! !!Achtung Analoger Sensor Achtung
Der Raspberry Pi besitzt im Gegensatz zum Arduino keine analogen Eingänge bzw. es ist kein ADC (analog
digital Converter) im Chip des Raspberry Pi's integriert. Dies schränkt den Raspberry Pi ein, wenn man
Sensoren einsetzen möchte, wo nicht digital Werte ausgegeben werden [Spannungswert überschritten ->
digital EIN | Spannungswert unterschritten -> digital AUS | Beispiel: Knopf gedrückt [ ] Knopf losgelassen [EIN
]], sondern es sich hier um einen kontinuierlichen veränderlichen Wert handeln sollte (Beispiel: AUS
Potentiometer -> Andere Position = Anderer Spannungswert)