- 3D-Druck Einstieg und Tipps         
Seite 3 von 4 ErsteErste 1234 LetzteLetzte
Ergebnis 21 bis 30 von 38

Thema: Abhängigkeit von Reflexion und Abstand an einer optischen Messeinrichtung?

  1. #21
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Anzeige

    Powerstation Test
    Zur Messung wird man vermutlich ein paar mehr Leermessungen gebrauchen können. Also eher schon abwechselnd ein Leermessung ein Messung mit LED - vielleicht noch 2 Messungen mit LED und dann wieder eine Leermessung. Ein Problem ist ja, das sich das Hintergrundlicht im Zeitbereich von Sekunden bis Minuten ändern kann. Mit den Sensoren mit Frequenzausgang kann man leider nicht gut schnell modulieren, weil die Frequenzmessung immer eine gewisse Zeit braucht. Die Frequenzmessung kann man aber vermutlich noch deutlich verbessern, indem man nicht klassisch zählt, sondern die Periodenlänge misst. Das geht mit dem µC mit der ICP-Funktion recht gut und gibt deutlich mehr Auflösung und ggf. eine schnellere Messung (z.B. 0,1 s). Höheren Frequenzen misst man dann über die Zeit für mehr als eine Periode oder wenn man einen genügend schnellen µC hat, auch über alle Zeiten der Flanken und macht dann eine lineare Interpolation. Durch ein kürzere Zeit für die Einzelmessung kann man mehr Werte Mitteln und so den Einfluss von Schwankungen der Hintergrundhelligkeit reduzieren. Mehr LEDs sind auch nicht ohne Problem. Mit anderen Sensoren (normale Fotodiode) könnte man ggf. schneller modulieren und dann die LEDs ggf. mit eher kleinem Tastverhältnis (z.B. 10%) und mehr Strom nutzen. Sonst ist ggf. ein Sonnenschirm keine schlechte Idee.

    Nachtrag:
    So schlecht sind Fotodioden nicht. Die Sättigung der Fotodiode erreicht man in aller Regel nicht - da braucht man mehr als direktes Sonnenlicht zu. Den Verstärker kann man auch so auslegen das man eigentlich kein Problem mit der Sättigung hat. Die Trennung von Hintergrund und Signal kann man halb analog und halb digital machen: Analog trennt auch ein grober Filter (z.B 500 Hz - 3 kHz) schon den Untergrund und das meiste Rauschen ab. Danach reicht dann auch der eher einfache AD Wandler im µC und ein kleiner µC zur Verarbeitung (abwechselnd addieren und abziehen). Vom Rauschen die Die Fotodioden auch nicht schlecher als die Licht Frequenzwandler. Man hat bei der Größe sogar mehr Auswahl und kann eher besser werden.
    Geändert von Besserwessi (27.12.2011 um 17:10 Uhr) Grund: Nachtrag

  2. #22
    Erfahrener Benutzer Robotik Einstein Avatar von wkrug
    Registriert seit
    17.08.2006
    Ort
    Dietfurt
    Beiträge
    2.187
    Also eher schon abwechselnd ein Leermessung ein Messung mit LED
    Das ist eine gute Idee, das werd ich mal ausprobieren. Gespeichert werden dann nur die Differenzen der beiden Messungen, woduch sie kürzer aufeinander folgen und sich somit die Fortbewegung nicht so stark auswirkt.
    Allerdings dauert dadurch der komplette Messzyklus fast doppelt so lange.
    Mal gucken, was die besseren Ergebnisse bringt.

    Für die LED's hab ich integrierte LED Treiber benutzt ( CAT4201 ). Die lassen sich leider nicht beliebig schnell schalten.
    Zudem muss die Leuchtkraft der LED's ( = Strom ) ja auch einstellbar sein, damit ich einen vernünftigen Weissabgleich hinkrieg.
    Das hab ich über den Strom Einstellwiderstand 10k und einen 20k Spindeltrimmer für den CAT4201 realisiert.

    Von der Periodendauermessung halte ich nicht so viel, weil die Frequenz des Licht Frequenz Wandler bis auf 500kHz hoch gehen kann und dann ist eine Periodendauermessung mit einem AVR Controller nicht mehr sinnvoll bzw. die Frequenzmessung wesentlich genauer.
    Zudem sind Frequenzen unter 2kHz im Normalbetrieb nicht zu erwarten.
    Mit Assembler Routinen ( anderes Projekt ) hab ich schon Messungen bis zu 13kHz über Periodendauerbestimmung hingekriegt. Genauer gehts aber bei Frequenzen über 500Hz mit der Frequenzzählung mit Torzeit. Ist natürlich alles auch von den verwendeten Parametern abhängig.

    Die Fotodioden auch nicht schlecher als die Licht Frequenzwandler
    Im Prinzip wirst Du recht haben, allerdings sind bei mir auch ein paar Schaltnetzteile verbaut ( LED Treiber ), die auch noch ständig Aus- und Eingeschaltet werden.
    Alles Sachen, die für eine rein analoge Messung pures Gift sind.
    Zudem hab ich einen Licht Frequenz Wandler mit Filtern für verschiedene Wellenlängen. Auch das findet man bei den analogen Typen eher selten.

    Die Idee mit dem Sonnenschirm hatte ich auch schon. Ich dachte da aber eher an eine Metallplatte. Da das Ganze an einem Fahrzeug montiert werden soll dürfte das dann aber wieder problematisch werden. Zudem müsste auch seitliches eintreffendes fremd Licht abgeschattet werden. Und dann brauchst Du schon einen Großen Regenschirm .

  3. #23
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Die Frequenzmessung über die Periodendauer geht schon auch bei höherer Frequenz, sowahl mit einem 8 bit AVR als auch eine PIC. Wenn es sein muss, könnte es beim AVR (20 MHz) auch gerade so noch bis 500 kHz gehen. Bei meinem Frequenzzähler nutze ich es bis etwa 300 kHz ohne Probleme und die Auflösung / Genauigkeit ist immer besser als beim klassischen Zählen: nach 0,05 s Messzeit hab ich knapp 6 Stellen Auflösung und mit der Nutzung mehrerer Flanken auch noch mehr. Der Gewinn bei der Nutzung von mehr Flanken betrifft dabei nicht nur die Auflösung, sondern auch die Rauschunterdrückung, denn auch die Licht-Frequenzwandler haben rauschen. Für höhere Frequenzen kann man eine Teiler davor schalten (der PIC kann das sogar intern, der könnte aber ggf. nicht ausreichen) - hier sollte ein fester Teiler (z.B. :16) reichen. Bei viel Helligkeit hat man vermutlich eher höhere Frequenzen im 10-100 kHz Bereich - da wird die Begrenzte Auflösung (z.B. 1 Hz) bei der Zähllösung nicht so schlimm sein, aber das Problem das an sich nur 2 Flanken (die 1. und letzte) genutzt werden bleibt. Mit der Auswertung aller Flanken kann man da schon mit weniger (z.B. 1/10) Störungen rechnen.

    So empfindlich ist auch die klassiche Schaltung mit Fotodiode und Transimpedanzverstärker nicht gegen Störungen. Nach dem Verstärker ist das Signal recht robust und nicht mehr besonders empfindlich. Die erste Verstärkung wird daher schon oft direkt an die Fotodiode gebaut. Die Schaltnetzteile können auch für die Licht-Frequenzwandler ein Problem sein: auch da können Störungen über die Versorgung einkopplen, und ein ungewollte Modulation des Lichtes ist natürlich auch nicht gut.

    Die schon vorhanden Filter an den Empfängern sind natürlich ein Argument, denn gute optische Filter sind schon recht teuer - da gäbe es dann ggf. auch eine ganz andere Lösung, die das Fremdlicht nutzt: keine aktive Beleuchtung, und dann Eine Kamera auf Multisprektral umbauen, mit einem Filterrad das man vor der Kamera dreht.

  4. #24
    Erfahrener Benutzer Robotik Einstein Avatar von wkrug
    Registriert seit
    17.08.2006
    Ort
    Dietfurt
    Beiträge
    2.187
    keine aktive Beleuchtung, und dann Eine Kamera auf Multisprektral umbauen, mit einem Filterrad das man vor der Kamera dreht
    Im Prinzip ne gute Idee, funktioniert aber leider nicht, wenn ich richtig gelesen habe.

    Es gibt da ein Satelliten Fernverfahren, das auf dieser Basis arbeitet.
    Dabei muß dann der Fehler, der durch den Einfallswinkel der Sonne entsteht rausgerechnet werden.

    Bei bedektem Himmel stimmt aber auch das nicht. Da aber Satelliten nur an klaren Tagen messen können spielt das keine Rolle.

    Das von mir verwendete Messverfahren funktioniert ja eigentlich.
    Es geht ja nur noch darum die Funktion auch bei hellem Tageslicht in den Griff zu kriegen.

    aber das Problem das an sich nur 2 Flanken (die 1. und letzte) genutzt werden bleibt
    Eigentlich werden alle Flanken innerhalb der Torzeit gezählt.
    Wo du Recht hast sind die Zeitpunkte, wo das Tor geöffnet und wieder geschlossen wird. Die können einmal direkt vor einer Flanke, oder direkt danach sein.
    Das gleiche Problem hast Du aber auch bei der Periodendauermessung, da kann Dir das auch mit dem Timer passieren.


    Beim Messverfahren mit der Periodendauermessung muss ich Dir widersprechen.
    Nehmen wir mal an der Controller läuft mit 20MHz.
    Die zu messende Frequenz ist 500kHz.
    Da würde bedeuten das pro Periode der Messfrequenz 40 Counts beim Timer laufen würden.
    Durch Phasenfehler konnen daraus Problemlos 41 oder 39 werden.
    Das ist ein Fehler von 2,5%.
    Bei der Frequenzzählung hab ich aber einen max. Fehler von +/- 2 Digits.
    Das ist ein Fehler von unter 0,01%.
    Selbst bei 100ms Torzeit liege ich bei 0,1% Fehler.

    Selbstverständlich werden die Verhältnisse besser, wenn man mehrere Perioden zur Messung heranzieht.
    Ausserdem wird es genauer, wenn man niedrigere Frequenzen misst.
    Es gibt auch einen Punkt, an dem die Periodendauermessung genauer ist, als die Periodenanzahl messung.
    Wo dieser Punkt liegt ist von der Taktfrequenz des Timers, dem Prescaler und dem Vorteiler für das Eingangssignal abhängig.

    Zudem verursacht ein ICP Interrupt mit immer höher werdender Eingangsfrequenz eine immer höher werdende Prozessorlast, die bis zur völligen Blockade des Systems führen kann. Bei einem mit 16MHz getakteten ATMEGA 32 konnte ich das bei etwa 13kHz feststellen.
    Ausserdem muss bei der Periodendauermessung ein Überlauf des Timers sicher erkannt werden.

    Bei niedrigen Frequenzen ist die Periodendauer Messung eine sehr schnelle und genaue Methode die Frequenz zu bestimmen - Keine Frage.
    Bei höhren Frequenzen hat die Perioden Zähl Methode klare Vorteile.

    Ich sag mal, wenn Du deine Messchaltung auf eine dynamische Umschaltung der beiden Methoden trimmst, geht Deine Frequenzmessung künftig bis 5MHz. Wenn Du den optimalen Umschaltepunkt findest mit der grösstmöglichen Genauigkeit.

    Bei einem ATMEGA kann ich ohne Software und Interrupts nur durch 256teilen.
    Im Prinzip gehen auch andere Teilefaktoren, dann aber nur über die Comparematch Interrupt's.

    Ne abschließende Frage. Meinst Du,das sich das verwendete Frequenzmessverfahren tatsächlich so stark auf die Ergebnisse auswirkt?

    Das das hier nicht so rüberkommt, als würde ich an Eueren Lösungsvorschlägen nur rumunken.
    Ich find's Super wie Ihr euch reinkniet um gemeinsam das Problem zu lösen.
    Ein paar von der Vorschlägen hab ich ja schon ausprobiert, mit wechseldem Erfolg.

    Die nächsten beiden Sachen die ich ausprobieren werde ist die Nullicht Subtraktions Variante und dann die Lichtabschottung ( hab da noch ne alte Theater Flügelblende rumliegen ).
    Beides Ideen von Besserwessi!!!
    Geändert von wkrug (27.12.2011 um 21:38 Uhr)

  5. #25
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Bei der Messung über die Periodenlänge muss man bei höheren Frequenzen natürlich mehr als eine Periode messen. Man misst also die Zeit für den Start, das Ende und die Zahl der Perioden dazwischen. Die Messung der Zeiten ist in aller Regel genauer als der Zufällige Start und das Zufällige Ende einer fest vorgebenen Torzeit. Mein Zähler funktioniert, soweit ganz gut - bis etwa 300 kHz geht es ohne Vorteiler, darüber wird einfach ein Vorteiler (:256) dazugeschaltet - bei der Methode über die Zeitmessung gibt der Vorteiler fast keinen zusätzlichen Fehler, sondern einfach nur eine Erweiterung des Messbereichs auf dann etwa 50 MHz (Grenze der Triggerschaltung). Allerdings ist die Software auch ganz in ASM geschrieben und auf Geschwindigkeit optimiert (z.B. reservierte Register für den Interrupt) - für die Frequenzmessung wäre das nicht so wichtig, aber für andere Messungen wie PWM. Die Berücksichtigung von Überläufen funktioniert, ist aber gar nicht so einfach - einen entsprechender Beispielcode in C ist im RN-Wissen unter Timer.

    Wie viel die Umstellung auf die einfache Zeitmessung (Start, Periodenzahl + Stop) bringt kann man noch relativ einfach abschätzen, weil man da den Vorteil gut abschätzen kann. Bei z.B. 1 s Messzeit (würde ich mal aus den wenigen Daten oben schätzen) kann man mit rund 1 Hz weniger an Fehler rechnen - einfach weil der Quantisierungsfehler der Zählung durch den viel kleinen der Zeitmessung ersetzt wird. Ein passender Test wäre eine Messung um zu sehen wie viel der Sensor selber bzw. das Hintergrundlicht rauscht (z.B. 20 Werte messen bei nur Hintergrundlicht). Ich würde eher vermuten das da der Quatisierungsfehler noch nicht das Problem ist. Etwas anderes wird es ggf. wenn man die Messzeit kürzer (z.B. 0,1 s oder ggf. noch weniger) wählt um besser Schwankungen im Hintergrundlicht zu kompensieren. Wie weit sich eine kürzere Einzelmessung lohnt könnte man testen indem man mit eher kurzer Messzeit (z.B. 0,1 - 0,5 s) relativ viele Werte rein mit dem Hintergrundlicht aufnimmt und dann per FFT das Spektrum anschaut. Wenn man da ein stärkeres 1/f Rauschen hat, was ich durchaus für wahrscheinlich halte, wäre ein kürzere Zeit für die Einzelmessungen schon angebracht. Dann könnte sich ggf auch der Umstieg auf die Zeitmessung lohnen.

    Anders als ich zuerst dachte bringt die Messung aller Flanken hier wohl keinen weiteren Vorteil - denn als primäre, unabhängige Größen kann man die einzelnen Periodendauern sehen. Die Summe der Zeiten ist damit schon der richtige, optimale Weg und die Zeiten dazwischen helfen einem hier also nicht weiter gegen Rauschen vom Sensor. Die zusätzlichen Flanken helfen halt nur gegen Fehler der Triggerschaltung und für noch mehr theoretische Auflösung.

    Das es mit viel Hintergrundlicht schlecher wird, lässt sich übrigens nicht vermeiden. Je mehr Licht auf den Sensor fällt, desto mehr Quatisierungsrauschen durch die Lichtquantelung hat man. Bei Photodioden kommt man durchaus schon mal an diese Grenze.

    Bei den Schwankungen im Hintergrundlicht hätte man ggf. noch eine Chance, wenn man parallel 2 Sensoren auswerte, die bei verschiedenen Wellenlängen arbeiten. So könnte man ggf. den Hintergrund gleichzeitig, nur halt bei einer anderen Wellenlänge messen. Wie gut das geht, hängt auch davon ab wie genau die Sensoren den gleichen Bereich aufnehmen.

  6. #26
    Erfahrener Benutzer Robotik Einstein Avatar von wkrug
    Registriert seit
    17.08.2006
    Ort
    Dietfurt
    Beiträge
    2.187
    Die Messfrequenz ist schon höher. Ich hab ne Torzeit von ca. 100ms. Also etwa alle halbe Sekunde ist ein kompletter Zyklus durchlaufen.
    Die letzten 8 Messungen gehen in das Ergebnis mit ein.

    Das Rauschen der Licht Frequenz Wandler ist auch nicht übermässig stark.
    Bei 5 kHz Ausgangsfrequenz krieg ich Frequenzschwankungen von max. 5Hz. beim Abgleichen raus. Inklusive aller Phasenfehler, die ich natürlich auch bei der Messung mache.
    Wesentlich stärker reagiert der Sensor auf das Umgebungslicht. Schiebt sich eine Wolke vor die Sonne kannst Du zusehen, wie die Messwerte drastisch purzeln - auch im Haus.
    Auch eine kleine Veränderung an den Spindeltrimmern von 1/4 Umdrehung ( 20 Gang Spindeltrimmer - Stromeinstellung für die LED's ) lässt sich an den Messwerten deutlich ablesen.

    Ich denke mein größeres Problem ist die unterschiedliche Reflexion, die durch die Bewegung über den Pflanzen herrührt.
    Und die ändert sich mit zunehmender Umgebungshelligkeit immer stärker.

    Lass mich jetzt mal die Software für die Leer Differenzmessung umschreiben und dann die Ergebnisse auswerten - Ich werde berichten.

  7. #27
    Erfahrener Benutzer Robotik Einstein Avatar von wkrug
    Registriert seit
    17.08.2006
    Ort
    Dietfurt
    Beiträge
    2.187
    Ok, nun gibt es wieder genug grüne Blattmasse für die Messungen und ich hatte ein paar Tage frei.
    Ich hab heute ein wenig rumexperimentiert und leider keine vernünftigen Werte bekommen.
    Das Messverfahren habe ich jetzt auf 1 Leermessung pro Lichtfarbe geändert.
    Aber auch das brachte nur einen Teilerfolg.
    Das Hauptproblem ist größtenteils das zu helle Tageslicht.
    Habt Ihr da noch irgendwelche guten und praktikablen Ideen?

    In den Anhang hab ich mal nen kleinen Log eingestellt.
    Die Datei runterladen, und von .txt auf .kml umbenennen. Google Earth müsste dabei auf dem Rechner installiert sein.
    Dann kann man sich mal Vorstellen, wie ich das künftig mal haben will.
    Die LOGDA003.kml ist bei vollem Tageslicht
    Die LOGDA005.kml ist in der Dämmerung um ca. 21:00Uhr erstellt worden.
    Die geloggte Fläche ist links und rechts vom Weg.
    Beim 21:00Uhr Log kann man die unterschiedliche Bestandsdichte und die nicht grünen Flächen einwandfrei erkennen.
    Beim Tageslicht Log funktioniert das überhaupt nicht!
    Angehängte Dateien Angehängte Dateien
    Geändert von wkrug (05.05.2012 um 20:20 Uhr)

  8. #28
    Erfahrener Benutzer Robotik Einstein Avatar von wkrug
    Registriert seit
    17.08.2006
    Ort
    Dietfurt
    Beiträge
    2.187
    Nach einigen Versuchen hab ich nun die Idee aufgegeben die Pflanzen aktiv zu bestrahlen und die Reflexion auszuwerten.
    Das fremdlicht durch die Sonne ist einfach zu stark.
    Mein neuer Ansatz wäre das Ganze nun passiv auszulegen. Das bedeutet die interessanten Wellenlängen der Reflexion aus dem optischen Spektrum des Sonnenlichtes herauszufiltern und zu bewerten.
    Ein Sensor an der Oberseite misst das eintreffende Sonnenlicht. Ein Sensor an der Unterseite misst die resultierende Reflexion.
    Mein erster Gedanke war dafür optische Bandpassfilter zu verwenden. Die Teile sind mir aber einfach zu teuer. Ich bräuchte ja davon 10Stück - Stückpreis um die 65,-€. - Es sei denn jemand von Euch hätte da günstigere Quellen.

    Mein zweiter Gedankengang war dafür LED's der entsprechenden Wellenlänge als Fotodioden zu missbrauchen.
    Bei meinen High Power LED's funktioniert das mit einigen Wellenlängen sehr gut - Andere reagieren auch auf nicht gewünschte Wellenlängen.
    Zu meiner Überraschung geben aber meine 1W LED's ein sehr gut auswertbares Signal raus. Direkt ans OSZI gehängt Spannungen bis zu 1V!

    Hat da von Euch auch schon mal wer versucht LED's als selektive Fotodioden zu verwenden? - Was kam dabei raus?

    Ich hab mir jetzt mal 1206 SMD LED's geordert und guck mal, ob man damit was anfangen kann.
    Für Tipps und Hilfestellungen euererseits wäre ich sehr dankbar.

  9. #29
    Benutzer Stammmitglied
    Registriert seit
    28.04.2012
    Beiträge
    35
    Na endlich, nach einem halben Jahr Experimentieren um das Sonnenlicht loszuwerden, der gute Einfall, es zu nutzen!
    Das Sonnenspektrum ist einerseits recht bekannt, und kann auch leicht noch leicht als Referenz / Kalibrierung der Messanordnung benutzt werden.Bleibt nun nur noch die Frage des Detektors. Oder der Detektoren.
    Warum nicht ein einfaches Spektrometer basteln, wenn man doch im Auto eh genug Platz hat. Wenn man dann die optimalen Wellenlaengen gefunden hat, kann man dann ja eventuell fixe Detektoren an den entsprechenden Linien anbringen.
    Viel Glueck!
    wilhelm

  10. #30
    Erfahrener Benutzer Robotik Einstein Avatar von wkrug
    Registriert seit
    17.08.2006
    Ort
    Dietfurt
    Beiträge
    2.187
    Warum nicht ein einfaches Spektrometer basteln, wenn man doch im Auto eh genug Platz hat. Wenn man dann die optimalen Wellenlaengen gefunden hat, kann man dann ja eventuell fixe Detektoren an den entsprechenden Linien anbringen.
    Die Idee hatte ich auch schon.
    Ist dafür reflektiertes Licht auch hell genug um es durch ein Spektrometer zu jagen und dann die Spektrallinien mit ner Fotodiode auszuwerten?

    Ich dachte auch schon daran einen optischen Liniensensor am Spektrometer anzubringen. Der hätte dann sozusagen 100...400 Fotodioden verbaut.
    Zudem kommt das reflektierte Licht ja aus allen Richtungen. Geht sowas mit nem Spektrometer?

    Die Krux bei der Verwendung des Sonne als Lichtquelle ist, das ich die spektrale Verteilung des Sonnelichtes berücksichtigen muß.

    Drum wär mir die aktive Variante schon lieber gewesen - Aber wenn das nicht funktioniert... hilft das halt nichts.

Seite 3 von 4 ErsteErste 1234 LetzteLetzte

Ähnliche Themen

  1. SQL: Daten einer Tab. in Abhängigkeit einer weiteren wählen
    Von Jaecko im Forum Software, Algorithmen und KI
    Antworten: 10
    Letzter Beitrag: 26.07.2010, 23:13
  2. Sensor einer Optischen Maus zur Streckenmessung
    Von paunza im Forum Sensoren / Sensorik
    Antworten: 43
    Letzter Beitrag: 04.09.2009, 08:40
  3. Schnittstelle für PAN101(Sensor einer optischen Maus)
    Von Javik im Forum C - Programmierung (GCC u.a.)
    Antworten: 7
    Letzter Beitrag: 18.09.2006, 19:55
  4. Brennweite der Linse einer optischen Maus
    Von Manf im Forum Kopfnüsse / Wissensquiz
    Antworten: 13
    Letzter Beitrag: 04.04.2005, 16:48
  5. Antworten: 6
    Letzter Beitrag: 09.03.2005, 08:03

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Solar Speicher und Akkus Tests