Hallo! Ich suche eine einfache und dynamische Methode, Absorption oder Reflektion zu messen. Also eigentlich eine Kreuzkorrelation. Jetzt mag ich mich dem Prinzip des TouchButton zuwenden, und wollte wissen, ob jemand schon eine andere Signalkette dazwischen gehangen hat als ein paar isolierte Drähte. Ich habe als ersten Ansatz überlegt, das mit Timern selber zu programmieren Also „Sender“ würde einen Rechteck-Puls senden. Über RC-Glied geht das auf die LED, die einen exponentiell abfallenden Strom aussendet. Dito an der Photodiode, also RC-Hochpass, was Gleichanteil wegwirft. Über das Benutzen mehrerer Ausgänge (oder auch Eingänge) mit unterschiedlichen Widerständen könnte man eine Art Bereichsumschaltung realisieren. Natürlich wäre ein Stromspiegel schön, so dass der Sendestrom durch die LED eine strenge mathematische Funktion ist. Mit etwas Glück ist der Spannungsabfall der LED aber nicht zu sehr störend. Misst man die Zeit zwischen Sprung auf High an LED und dem Punkt, wo der Sensor das Signal beim Umschaltpunkt (1/2 U_batt?) am Eingang wieder zum Umklappen H-L bringt, hat man Absorption der Strecke über eine Zeitfunktion gemessen. Muss man noch linearisieren. Läuft das Timerregister schön schnell, kann das recht auflösend werden. (Gibt da ja auch 32bit mit Interrupt.) Ich möchte hier um Anregungen bitten, wie man durch Software den „Lock-In“, oder Kreuz-Korrelations-Anteil hinein bekäme. Vorbild bei den Anlog-Chips: Eigentlich hat der alte Lichtschrankenchip IS471 alles an Board, Signalgenerator, LED-Treiber und Kreuzkorrelation. Gibt es da so was mit externem Detektor? Ich muss im Sichtbaren / UV-A messen. IS471 hat eine Photodiode mit IR-Filter im Resin fest verbaut. Freischleifen sollte die Bondingdrähte zerstören. Ganz vielen Dank! Andi. P.s. ich hoffe, es kommen noch viele Sensor-Beispiele. Den Kreuzkorrelation ist universell verwendbar. Ich bin mit Cypress PSOC-1 fündig geworden, aber dke alten Beispiele bekomme ich als Neuling nicht auf neuen IDEs zum Laufen. Die Anwendungsnotiz beschreibt auch die Kreuzkorrelation sehr schön, UA Elektronik-Prof hat das für Cypress verfasst. https://www.cypress.com/documentation/application-notes/an2042-psoc-1-multifunctional-optical-sensor Man bekommt die Design-Dateien in diesem ZIP: https://www.infineon.com/dgdl/Infineon-AN2042_PSoC_1_Multifunctional_Optical_Sensor-ApplicationNotes-v03_00-EN.zip Verlinkt sind die nirgends mehr, archive antwortet nicht. Der Support schickt das alte auf Anfrage. (Spendet archive org und fordert wehrhafte Transparenz!) Zum Thema LED als Sender und Empfänger habe ich ais der Spektroskopie fefunden, dass dort durchaus mit einer Art PWM gemessen wird, was den A/D überflüssig macht. Sagte ein Paper zum Messen für Spektro. Dort wurde zu LEDs verwiesen auf: Absorbance Based Light Emitting Diode Optical Sensors and Sensing Devices by Martina O’Toole and Dermot Diamond https://www.mdpi.com/1424-8220/8/4/2453
:
Bearbeitet durch User
Andi H. schrieb: > Ich suche eine einfache und dynamische Methode ?????????? Welche Drogen nimmst du für so wirres Zeug ? Andi H. schrieb: > Gibt es da so was mit externem Detektor? NE567 http://www.trigonal.de/sel/blobs/relisch.png
Muss hartes Zeug sein ;) Nein aber zu deinem Vorhaben. Vllt mache ich mir das gerade zu einfach. Ginge das nicht auch so? https://electronics.stackexchange.com/questions/902/detecting-light-with-an-led?origin=serp_auto Den Puls ersetzt du durch ständige Beleuchtung in der Nacht. Empfangs-LED dunkel = Taste gedrückt.
Andi H. schrieb: > Also eigentlich eine Kreuzkorrelation. Du meinst die Kreuzkorrelation zwischen Sende- und Empfangssignal? Insgesamt scheint mir, du willst hier ein einfaches Problem mit möglichst vielen komplexen Komponeten und Fachbegriffen angehen. Das beginnt mit der Kreuzkorrelation, geht über die e-Funktion und den Stromspiegel bis hin zur "strengen mathematischen Funktion"... > Also „Sender“ würde einen Rechteck-Puls senden. Das ist üblich, denn nur so kann dein Sender von Fremdlicht untershcieden werden. > Über RC-Glied geht das auf die LED, die einen exponentiell abfallenden > Strom aussendet. Das ist ein unnötiger Zwischenschritt. > Dito an der Photodiode, also RC-Hochpass, was Gleichanteil wegwirft. Das schafft ein C allein. Insgesamt würde mich interessieren, was du denn überhaupt machen willst. So ein einfacher optischer Touchbutton braucht keine Raketentechnik. Es reicht aus, wenn der Sender eine bestimmte Frequenz ausgibt und der Empfänger erkennt, ob die Sendefrequenz im Empgangssignal enthalten ist.
Lothar M. schrieb: > Insgesamt würde mich interessieren, was du denn überhaupt machen willst. Er möchte Absorbtion und Reflektion messen, steht doch da :-) Im Ernst, bei so einer dürftigen Beschreibung kann niemand helfen. > So ein einfacher optischer Touchbutton braucht keine Raketentechnik. Ich sehe nicht, wo wie an welcher Stelle Reflektionen gemessen werden sollen oder Absorbtionen. Ich sehe nicht mal, dass das optische Wellen sind, oder sein sollen. > Es reicht aus, wenn der Sender eine bestimmte Frequenz ausgibt und der > Empfänger erkennt, ob die Sendefrequenz im Empgangssignal enthalten ist. Eventuell hilft dem TE ein Hinweis auf diese Art von touch buttons, wo das genau so gemacht wird: Es sind 2 Frequenzen, die durch den Finger mehr oder weniger gut absorbiert werden. Durch die Frequenzwahl kann man das steuern und nachregeln. Im Ausgangssignal sind dann beide Frequenzen enthalten. Die Amplitude macht die Entfernung, die Mischung die Feinposition. http://www.96khz.org/htm/capacitivesensormusickeyboard.htm Im Bereich der Blutanalyse (Sauerstoff und Hämoglobin) wird das auch mit Lichtsensorik gemacht.
:
Bearbeitet durch User
Klingt irgendwie nach einem Regensensor für Finger. Der Brewster-Winkel ist da doch die Größe, die zwischen Reflexion und Transmission unterscheidet. Bei Regensensor wird der Brechungsindex der Glasscheibe derart durch das Wasser verändert, dass das List vom Emitter nicht mehr beim Empfänger ankommt. Wie sich das bei Fingern verhält, müsste man ausprobieren.
Für einen einfachen Touch-Button kann man eine Reflexlichtschranke hinter eine Glasplatte packen. z.B. https://de.farnell.com/osram-opto-semiconductors/sfh-9206/reflexlichtschranke-0-05a-5mm/dp/2981800 Sowas läuft hier zu hunderten als vandalensicherer Taster.
Ziel war, - Konzentrationsmessung (Pool-Desi sowie Algen, über Absorption in 4 Wellenlängen RGB+UV) und Streuung=Trübung - ohne Analog-Digital-Wandlung und ohne aufwändige externe Beschaltung - Messung von Abschwächung des eigenen per LED ausgesandten Signals - über eine Zeitmessung eben ähnlich der Touch-Button Routinen. Dabei erhoffe ich mir mit Tricks mehr als 10-12 bit Auflösung. Sozusagen mit 3 Bauteilen pro Kanal bzw. ein RC pro Messbereich (Sende- bzw Empfangs-Kanal) extern: LED, Fotodiode, und je RC-Glied(er). Fertig. Ich möchte das Projekt dann mit nicht elektronisch vorbelasteten Menschen teilen, die eine kleine begrenzte Einkaufsliste wie ESP32 oder Arduino und ein Breadboard als Einstiegs-Ticket in primitive Spektroskopie nutzen können. Es geht nicht um die Elektronik, sondern um die Mess-Möglichkeiten. Der Pool ist nur ein Beispiel. Deshalb sollte externe Beschaltung mit Spezial-ICs vermieden werden, wie komplexe Modulator- und Demodulator-Technik. (Man kann für die benötigte Funktion das Blockschaltbild des IS471 von Sharp ansehen, der Auto-Korrelation macht.) Trotzdem besteht das Potential, mit Pulsen über mehrere Größenordnungen mit „Bereichsumschaltung“ präzise zu messen. Absorption wird in Durchlicht gemessen. Streuung wird gemessen, indem seitlich in der Messkammer (ein Stück Plexi-Rohr im Rücklauf oder ein Bypass oder eingeschraubte „Fenster“ etwa) ein zweiter Empfänger oder Sender angebracht wird. Das soll hier nicht weiter interessieren, da die Elektronik für alle möglichen Messaufgaben auch außerhalb von „Licht“ gleich ist. Störlichtfestigkeit soll neben Elimination des Gleichanteils über ausreichend viele Messungung zu (pseudo-) zufälligen Zeitpunkten gemacht werden, eventuell mit Erkennung von Fehlmessungen. Ich denke, dass ein RC-Glied inklusive R nötig ist, da man sonst mit unbekannten und eventuell Zustands-abhängigen inneren Widerständen von Ausgangsstufe des Microcontrollers und dem Spannungsabfall an der Sendediode als Fehlerquellen zu kämpfen hat. Eigentlich wäre ein Stromwandler mit einem (Leistungs-) OP-Amp nötig. Der bekommt das exponentiell abfallende Spannungssignal und prägt proportional einen Strom in die Sende-LED ein. Das meinte ich mit Stromspiegel, war wohl das falsche Wort. Denn der Strom ist genau die ausgesandte Lichtmenge, da die Effizienz in weiten Teilen konstant ist (bei konstanter Temperatur). Prinzipiell sucht man den Sendestrom, bei dem das Signal am Empfänger gleich ist wie bei der Wasserprobe ohne zu messenden Zusatz-Stoff. Dann ist der Sender linear, der zeitliche Verlauf des Stroms in der LED bekannt, und der Empfänger sagt nur: jetzt! ist es gleich. Somit ist die Zeitdauer zwischen Start des Rechteck-Pulses und dem Zurückfallen des Phtotdioden-Eingangs auf 0 unser Roh-Messwert. Das mag mit Timer-Registern auflösend gemessen werden, wo man über 16 bit hinaus mit Interrupt-gesteuerter Erweiterung des Timer-Zählers arbeiten kann. Der exponentielle Abfall des Stroms nach I(t)=U0/R * e^(-t/tau) mit tau=R*C ist ja bekannt. Das gilt aber nur, wenn keine nicht-linearen Anteile von Ausgangs-Stufe oder Diode zum Tragen kommen. Ohne R tun sie das sicher. Stört das, muss der Op-Amp her. Die Schaltschwelle am Empfänger - bei immer der gleichen Intensität - hat den Vorteil, dass nichtlineare Kennlinien eines Empfängers keine Rolle spielen. (Naja, solange man die 0-Messung (Vergleichsprobe mit Wasser) ständig mitmisst mit baugleichem Gefäß, oder (wenn man das nur zu Anfang macht) auf halbwegs konstantes Hintergrundlicht achtet. Ein halbwegs linearer Sensor ist von Vorteil, ich suche günstig eine Art OPT101 (den ab 4€) in etwas besserer/gleichmäßigerer Empfindlichkeit von Rot bis UV. Im Endausbau wird in einigen Wellenlängen gemessen, so dass man einige gelöste Stoffe unterscheiden kann.) Hat man einmal eine solche Messung mit einem „DIY-A/D-Wandler“ geschafft, kann man dieses Prinzip auf viele Dinge, die „sensorisch“ interessieren, übertragen. Mit Sensor-Strecke meinte ich, dass ich sowohl das anregende Signal wie auch den Empfang kontrollieren will. Sonst konzentriert man sich meist nur empfangend auf das Messen physikalischer Größen. Da wir die Menge und das zeitliche Verhalten des ausgesandten Lichts ebenfalls kontrollieren, ist das in sich wie eine Pseudo-Regelstrecke. Wir „gestalten“ auf bestmögliche Auflösung und Linearität (etwa der Absorptionsmessung) und kleinstmöglichen Störeinfluss. Hat man mehrere Ausgänge zur Verfügung, kann man dazu Bereichs- oder Skalen-Umschaltung betreiben. (Da die Kapazitätswerte der RC-Glieder um Größenordnungen über denen der Endstufe liegen, geht das, indem man nicht benötigte Ausgänge für R oder C Tri-State schaltet.) (Skalen: also unterschiedliche „Frequenzbänder“ per Dimensionierung von im einfachstem Fall einem RC-Gluid: Denn je ein Filter unterteilt die Signale in eine Skale, und wenn ich mehrere orthogonale Filter nutze, bekomme ich nebenbei eine Wavelet-Analyse, also eine vollständige Aufspaltung der Eigenschaften der Strecke bezüglich des verwendeten Filters.) Im Bedarfsfall den letzten Satz ignorieren. Oder google wavelet-analyse mit hochpass-filter bemühen, scheint zu gehen. Hier werde ich mir die Source-Codes von wasser-erkennenden und damit das gegenüber dem „echten Finger“ ignorierenden Touchbutton-Routinen ansehen, auch wenn der Quelltext da (bei Cypress mal angesehen in PSOC Creator) tief verschachtelt ist und in Libraries vergraben. Jedenfalls ist da immer auch eine Störsignal-Sicherheit drin. Leider „kranken“ fertige Touchbuttons immer an Auto-Adapt, und für das absolute Messen möchte man ja gerade nicht ein Eliminieren eines langsamen Trends. Man kann also maximal an deren Routinen lernen, wie sie etwa das Verhalten in verschiedenen Frequenzen messen, und das nur mit Pulsen und Zeitmessung. Ich danke herzlich für die konstruktiven Inputs, auch wenn niemand auf die von mir ausgesuchte Messung analoger Signale mittels Pulsen ähnlich der in Touch-Button-Routinen zur Kapazitätsmessung verwendeten eingegangen ist. Ich hoffe, dass die Rumpler hier genau sagen, was nicht verständlich ist, wenn ich schreibe, vielleicht auch nach dem zweiten Lesen, und bitte um präzises Feedback, wo es klemmt (statt stumpfsinniger Beleidigungen). Wenn Innovatives, also neue Gedanken, immer so rigoros abgelehnt werden, wie hier überwiegend erfahren, nur wegen Formulierungsschwächen gar, oder weil das Einsatz-Szenario nicht „ankam“ als präzises Bild, gibt es eben keine Feedback-Kultur, das wäre ein schlimmes Symptom für MC net. So weit ich weiß, hat jeder Microcontroller als einen Input-Mode eine Art Komparator, und mehr braucht es nicht. Bleibt abzuwarten, wie sehr der dann rauscht. Soweit ich weiß, hat noch niemand hier ein Projekt gemacht, wo man ohne weitere Bauteile den D/A oder A/D Wandler selbst gestaltet für eine Signal-Strecke. Gruß! Andi
:
Bearbeitet durch User
Irgendwas bringst Du völlig durcheinander. Ein kapazitiver Touchbutton detektiert keine Strahlung, sondern eine Wegänderung. Je geringer der Abstand, umso mehr Ladungen werden transportiert d.h. umso größer ist der Wechselstrom.
Andi H. schrieb: > Dabei erhoffe ich mir mit Tricks mehr als 10-12 bit Auflösung. Die Hoffnung stirbt zuletzt. Aber im Ernst: da wären ja alle anderen irgendwie dumm, wenn die statt eines RC-Glieds teure ICs kaufen. > Soweit ich weiß, hat noch niemand hier ein Projekt gemacht, wo man ohne > weitere Bauteile den D/A oder A/D Wandler selbst gestaltet für eine > Signal-Strecke. Ich habs getan: der DA-Wandler als PWM-Ausgang mit RC-Glied. Und der AD-Wandler so, wie früher die Joysticks am PC eingelesen wurden. Aber da hatte ich weder in die Linearität noch in die Langzeitkonstanz noch in die absolute Auflösung irgendwelche Hoffnungen gesetzt.
Andi H. schrieb: > Ich hoffe, dass die Rumpler hier genau sagen, was nicht verständlich > ist, wenn ich schreibe, vielleicht auch nach dem zweiten Lesen, und > bitte um präzises Feedback, wo es klemmt (statt stumpfsinniger > Beleidigungen). > > Wenn Innovatives, also neue Gedanken, immer so rigoros abgelehnt werden, > wie hier überwiegend erfahren, nur wegen Formulierungsschwächen gar, > oder weil das Einsatz-Szenario nicht „ankam“ als präzises Bild, gibt es > eben keine Feedback-Kultur, das wäre ein schlimmes Symptom für MC net. Mir kommt es so vor, als hättest Du eine Lösung und suchst ein Problem dafür. Du möchtest Signalverarbeitung möglichst analog und diskret machen. Kann man machen, muss man aber nicht. Im echten Leben entwickeln nur noch wenige Leute beispielsweise in Assembler, einfach weil es nicht mehr notwendig ist und man anders einfacher und schneller und damit billiger ans Ziel kommt. Genauso ist es in der Signalverarbeitung. Wo man früher aufwendige Filter abgestimmt hat, wird jetzt ein komplettes Frequenzband einfach digitalisiert - der Rest ist Software. Rechenleistung ist da, ADCs und DACs bis in den GHz-Bereich sind da, und es wird auch genutzt, weil man damit mehr Möglichkeiten hat, flexibler ist und schneller ans Ziel kommt, und das wiederum spart Geld. Deine Gedanken und Deine Lösungsansätze sind nicht innovativ, sondern gehören eher ins letzte Jahrhundert, wo die technischen Möglichkeiten noch beschränkter waren. Aus diesem Grund erntest Du hier auch nur Kopfschütteln und Unverständnis. fchk
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.