Go Down

Topic: LDR analoge Werte in Lux umrechnen (Read 578 times) previous topic - next topic

freddy64

Hallo Leute,
ich habe einen Lichtsensor der mir analoge Werte von 10 - 1010 am Eingang A0 liefert.
10 ist volle Helligkeit (LED Taschenlampe davor) und 1010 ist absolute Dunkelheit (Fotowiderstand entfernt).
Gibt es vielleicht eine Pi x Daumen Formel mit deren Hilfe ich die analogen Werte in Lux umrechnen kann?

Gruß
Fred

HotSystems

#1
May 16, 2018, 04:46 pm Last Edit: May 16, 2018, 04:49 pm by HotSystems
Hallo Leute,
ich habe einen Lichtsensor der mir analoge Werte von 10 - 1010 am Eingang A0 liefert.
10 ist volle Helligkeit (LED Taschenlampe davor) und 1010 ist absolute Dunkelheit (Fotowiderstand entfernt).
Gibt es vielleicht eine Pi x Daumen Formel mit deren Hilfe ich die analogen Werte in Lux umrechnen kann?

Gruß
Fred
Wie soll das funktionieren ?

dafür gibt es zu viele Variablen: Fotowiderstand, Spannungsteiler, Bauteiltoleranzen usw.

Edit:
Wenn du unbedingt LUX-Werte haben möchtest, verwende den Sensor "BH1750FVI" dafür.
Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. 8)

Doc_Arduino

Hallo,

ne, kann es nicht geben. Gegenfrage, weist du ohne Tacho wie schnell du fährst?  ;)
Für dein Vorhaben benötigst du eine definierte Lichtquelle deren Helligkeit bekannt ist.
Für Pi mal Daumen kannste eine App (Sensors) für dein Smartphone installieren, was irgendwelche Werte anzeigt.
Genau ist das aber auch nicht. Darauf kannste zumindestens deine Werte/Formel abgleichen.
Denke dran, änderst den Vorwiderstand deiner Schaltung ist alles wieder hinfällig.
Tschau
Doc Arduino '\0'

Messschieber auslesen: http://forum.arduino.cc/index.php?topic=273445
EA-DOGM Display - Demos: http://forum.arduino.cc/index.php?topic=378279

freddy64

Der Sensor soll die Beschattung in einem Gewächshaus steuern.
Hab jetzt die Werte umgekehrt. 1010 ist jetzt hell und 10 dunkel. Das ist nicht so verwirrend wie vorher.
Im Menü des LCD Displays stelle ich jetzt nur die analogen Messwerte Werte für Rollo auf (600) und Rollo zu (1000) ein.
Hätte ja sein können, dass so etwas schon mal jemand gemacht hat.

Trotzdem Danke

HotSystems

.....
Hätte ja sein können, dass so etwas schon mal jemand gemacht hat.
Du verstehst es nicht.
Das geht nur, wenn du immer gleichbleibende Bauteile (wie beschrieben) hast.


In deinem Fall brauchst du aber keine Lux-Werte.
Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. 8)

Doc_Arduino

Hallo,

würde auch sagen das du dafür keine Lux Werte o.ä. benötigst. Du legst für dich selbst fest bei welchen analogen Wert der "Sonnenschutz" ausfährt und wann nicht. Tipp. Verwende dafür eine Hysterese. Die Schaltung selbst an ein schattiges Plätzchen. Die Feinabstimmung ist probieren.
Tschau
Doc Arduino '\0'

Messschieber auslesen: http://forum.arduino.cc/index.php?topic=273445
EA-DOGM Display - Demos: http://forum.arduino.cc/index.php?topic=378279

uwefed

Außerdem würd ich eine Verzögerung einbauen damit nicht jedes kleinste Wölkchen am Himmel sofort zu eine Aktion der Beschattung führt.
Grüße Uwe

Rentner

#7
May 16, 2018, 07:20 pm Last Edit: May 16, 2018, 08:36 pm by Rentner
Hallo,

sehe ich etwas anders,

man kann mit bekanntem Widerstand für den Spannungsteiler schon den Widerstand ausrechnen den der LDR hat. Mit der Kennlinie des LDR lässt sich dann schon ein Lux Wert näherungsweise berechnen.

ich würde aus der Kennlinie ( R=f(lux) 5-6 Werte ablesen und dann mittels einer Excell Tabelle eine Gleichung berechnen lassen die näherungsweise die Kennlinie wiedergibt und die dann im uP verwenden.

Google mal nach Kennlinie LDR da gibts schon was

Heinz

Nachtrag:  hab den Wiederstand zum Widerstand gemacht



HotSystems

sehe ich etwas anders,
.......
Klar kann man das anders sehen.

Aber lies dir mal genau die Frage durch. Da geht es nicht um die genaue Berechnung, die sicher möglich ist.
Es geht um eine "Pi x Daumen-Formel", die ohne feste Werte funktionieren soll.
Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. 8)

Doc_Arduino

Hallo,

eine Bitte. Widerstand.   :)

Tschau
Doc Arduino '\0'

Messschieber auslesen: http://forum.arduino.cc/index.php?topic=273445
EA-DOGM Display - Demos: http://forum.arduino.cc/index.php?topic=378279

Rentner

Hi,

Widerstand !!  das mach ich schon seit ewigen Zeite falsch, für mich wirkt der nicht gegen etwas (wider) sondern nein er  kommt in meinem Leben immer wieder vor .  8)

Sorry Heinz

freddy64

Der LDR ist ein fertiges China Modul mit einem analogen und einem digitalen Ausgang. Die Schaltschwelle des Digitalausgangs lässt sich mit einem Poti einstellen. Den Pin verwende ich aber nicht. Die Schaltschwelle stelle ich im Sketch ein.

@uwefed
hab schon eine Verzögerung drin.
Gemessen wird nur alle 5 Minuten und eine Aktion an der Beschattung wird nur ausgelöst, wenn sich die Beleuchtungsstärke im Vergleich zur vorhergehenden Messung um mindestens Analogwert 20 geändert hat.
Die richtige Differenz muss ich in der Praxis noch testen und den optimalen Wert einstellen, damit die Beschattung nicht ständig auf und zu geht.

Rentner

Hallo

na gut , dann wirst Du nicht herausbekommen was für ein Widerstand als Teiler verwendet wird.

Du kannst auch eine Hysterese verwenden zwischen auf und zu fahren. Wenn Du allerdings nur alle fünf Minuten misst kann es dir passieren das während der Zeit die Beschattung komplett auf oder zu gefahren wird, das willst du aber ja auch nicht.

ich würde ehr schneller messen , z.B  5% der gesamten Fahrzeit, eine Hysterese verwenden , und / oder eine Mindestfahrzeit. z.B 1-2% der gesamten Fahrzeit . das muss man dann ermitteln.

Beispiel gesamte Fahrzeit der Beschattung auf bis zu 100s

alle 10 s messen
mindestens 2 s fahren
Fenster, Hysterese 40 =4%

wenn Du in dem Fall die mindest Fahrzeit zu gross wählst kann es dir passieren das es schwingt , fährt ständig etwas auf und zu.


Heinz


 

gregorss

#13
May 17, 2018, 02:09 am Last Edit: May 17, 2018, 02:10 am by gregorss
Gibt es vielleicht eine Pi x Daumen Formel mit deren Hilfe ich die analogen Werte in Lux umrechnen kann?
Ich glaube nicht, dass es so eine Formel gibt.

Wenn Du halbwegs brauchbare Werte benötigst, solltest Du ein paar unterschiedliche Helligkeitswerte mit einem entsprechenden Messgerät feststellen und dann eine Wertetabelle anlegen oder eine eigene Umrechnungsregel ableiten.

Was die Hysterese angeht: Wenn Du so vorgehst, wie ich das verstanden habe, führt ein Wölkchen im falshcen Moment zu einer nicht angebrachten Aktion. IMO ist es besser, aus den letzten x Werten einen Durchschnitt zu errechnen und erst dann eine Aktion auslösen, wenn die Änderung länger andauert (d. h. erst dann eine Aktion auslösen, wenn sich der Durchschnitt um einen bestimmten Wert ändert).

Gruß

Gregor
Wenn man keine Probleme hat, kann man sich welche machen (Häuptling „Großes Lötauge" der M3-Hopi)
Nicht lange fackeln, lass' Backen wackeln! (Seeed)

uwefed

#14
May 17, 2018, 07:55 am Last Edit: May 17, 2018, 07:56 am by uwefed
Ich dachte nicht an eine Verzögerung der Messung sondern der Ansteuerung der Motore.

Wenn wolkenloser Himmel oder regenverhangene tiefe Wolken sind dann ist es kein Problem, da sind die Werte konstant. Schwieriger ist es wenn kleine Schäfchenwolken oder größere nicht zusammenhängende Wolken gibt. Da ist es notwendig diese so zu erkennen und dementsprechend eine Beschattung auszuwählen. Einfach Wolken - Auf; Sonne - Zu ist keine gute Strategie.
Grüße Uwe

 

Go Up