ADC Störung durch Netzspannung

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    Aufgrund technischer Veränderungen ist der Mailverkehr innerhalb des Forums (Private Nachrichten) nur noch eingeschränkt möglich. Die Einschränkung ist notwendig, um zusätzliche Betriebskosten für das Forum zu vermeiden. Näheres zu den Hintergründen im Thread "Aktuelles zum Forum".Wir bitten um Verständnis.

    Hinweis kann nach Kenntnisnahme deaktiviert werden!

    • ADC Störung durch Netzspannung

      Hi zusammen,

      ich habe mir ein Balkonkraftwerk zugelegt, und die Markise soll es bei bestimmten Sonnenständen nicht beschatten. Da die alte Markisensteuerung mit 30Jahre+ sowieso langsam den Geist aufgibt, dachte ich, ich bastel was maßgeschneidertes, was den Schatten der Markise erkennt und danach steuert.

      Der Aufbau meines Sonnenerinterpreters wird mit einem ATmega88P betrieben, die eigentlichen Sonnensensoren sind vier rote low-power LEDs mit parallelem 10M Widerstand und einem 10n Kerko, die per ADC ausgelesen werden. Bei ordentlich Sonnenschein kommt so bis zu über 1.1V aus einer LED raus, bei Beschattung mit der Hand geht es auf <150mV runter. Passt super, mit dem 88er mit 1.1V Referenzspannung kann man direkt die Digits lesen und danach steuern. Eine weitere Steuereinheit (verarbeitet Logik/Hysteresen/Zeit etc.) mit angeschlossener Relaiskarte 5V->Markisenmotor fährt die Motoren dann erfolgreich hoch und runter. Beide Karten haben gemeinsames GND und +5V aus einer Powerbank, und sind mit einem Signalkabel (3 Signale) verbunden. Die LEDs werden über ein 5m CAT5-Kabel angeschlossen.

      Mit Bascom stabliliere ich das Auslesen noch über Mittelwertbildung über 100 Widerholungen und jeweils 1ms Pause dazwischen, das funktioniert im Testaufbau wunderbar, da sind die Werte super stabil.

      Wenn ich aber Netzspannung in die Nähe bringe, sprich die Netzseite an die Relaiskarte anschließe, fängt da was an zu schwingen, alle ADC-Werte gehen sichtbar langsam im 2-bis-5-Sekundentakt von mal 200 runter auf 10 digits und wieder hoch (Werte im Schatten), Sonne überlagert das Schwingen natürlich, aber man sieht es trotzem.

      Meine Steuerung funktioniert dann trotzdem, da die Hysteresen lange genug sind, aber ab und an gibt es halt doch verquere Situationen, wo Beschattung gesehen wird, wenn Sonne ist, und umgekehrt.

      Wie blocke ich sowas ab? Dicke Elkos statt Kerkos an die LEDs? Muss ich die Relaiskarte weiter weg vom Sonneninterpreter anbinden? Ich habe bisher nur mit 5-12V rumgewerkelt, da gab's solche Probleme nicht :)

      Jede Hilfe willkommen! Danke :)
      Christoph
      Dateien
      • adcx.png

        (86,6 kB, 41 mal heruntergeladen, zuletzt: )
    • Hallo!

      Normale LED's als Lichtsensoren sind lausig.
      Mit so was kann man freilich rumspielen, aber m.E. nur direkt am ADC und nicht über mehrere Meter Kabel.
      Wie du ja schon bemerkt hast sind LED's als Lichtsensoren verflixt hochohmig - das du das erkannst hast sieht man an den 10M-Widerständen parallel zu den LED's.
      Der physikalische Effekt ähnelt dem Efekt der Fotodioden, genauso hochohmig.
      Will man sowas auf der Controller-Platine sauber machen, braucht es aktive, rauscharme Verstärkung, in der Regel mit entsprechenden Operationsverstärkern.

      Will man diese Sensoren aber absetzen über Kabel, braucht es solche Verstärker zwingend. Und zwar direkt an den Sensoren!
      Wie sowas aussieht?

      de.wikipedia.org/wiki/Photodiodenverst%C3%A4rker

      digikey.de/de/articles/how-to-…utomotive-medical-systems


      Das Ausgangssignal des als Transimpendanzverstärkers geschalteten OP' ist robust und niederohmig genug um über Kabel wie Cat5 übertragen zu werden.

      Dein Kernproblem jetzt ligt einfach daran das die Spannungen der LED's viel hochohmiger (einige Mohm) sind als die zahlreichen Störungen welche in das Kabel magnetisch einkoppeln.
      Das können Schaltwandler sein, beispielsweise die PPT oder auch der Wechselrichter deines Balkonkraftwerkes, irgendwelche PWM-gesteuerten Leuchten, Steckerladegeräte und vieles mehr.

      Und, wenn du dein Projekt möglichst ideal pimpen wolltest:
      Nutze die verdrillten Signaladern in deinem Cat5 Kabel symmetrisch!

      Also kein Single-OP je Sensor, sondern einen Doppel-OP und einer virtuellen GND bei Ub/2.
      Den ersten OP dann als Transimpedanzverstärker mit einer in Sperrichtung betriebenen Fotodiode.
      Den zweiten OP als analogen inverter zum Ausgangssignal des ersten OP's.
      An beiden OP-Ausgängen hast du dann ein symmetrisches Signal welches perfekt zu den verdrillten Aderpäärchen deines Kabels passt.
      Zusammen mit der Schirmung des Kabels hast du dann die Übertragungsqualität wofür Cat5 spezifiziert wurde.

      Jürgen
    • Lieben Dank für all die Hinweise!

      Pluto25 schrieb:

      chw9999 schrieb:

      Dicke Elkos statt Kerkos an die LEDs?
      Die Leds sind an den twisted Leitungen angeschlossen? Jede mit eigener Gnd Leitung?Der Schirm an der Platinenseite auf Gnd?
      Ok, Kondensatoren setze ich noch mal welche hinzu.
      LEDs - nee, da war ich zu simpel unterwegs, jeweils 2 LEDs an einem verdrillten Kabelpaar, eine Runde GND für alle, und ein 1+1 Pärchen frei - das Naheliegende nicht gesehen B-)

      "Schirmung? Welche Schirmung?" Ja klar - da merkt man gleich, dass ich sowas noch nicht gemacht habe X-D

      Ok, das probiere ich mal mit Umlöten und Schirmen.

      DG7GJ schrieb:

      (...) <Operationsverstärkern> (...)

      Lieben Dank, Jürgen, für die umfangreiche Erklärung. Ich hatte das mit OPs beim ersten Reinlesen in das Thema auch irgendwo mal gelesen, wollte es aber erst mal simpler probieren (Spiel- und Tatendrang ;)), und da die LEDs schon so gut passende Spannungen lieferten, dachte ich: super, mal probieren.
      Ich bestell schon mal einen Satz OPs... Wenn das Umlöten oben nichts bringt (schon fast erwartbar), werde ich das mit den OPs umsetzen.

      Ich werde berichten :) Programm kommt dann gerne in die Sammlung hier!


      Viele Grüße
      Christoph
    • Hallo Christoph,

      der Bereich Lichtmessung ist nicht mein Spezialbereich, aber ob ich wollte oder nicht, musste ich mich gelegentlich damit auseinander setzen.
      Und dein Vorhaben erinert mich an meine ersten Gehversuche diesbezüglich.

      Ein Teil deiner Probleme ist neben der hochohmigkeit über das lange Kabel deine Idee, die bei mir damals auch der Fehler war:
      Ein optisches Bauteil als Miniatur-Solarzelle zu betrachten.

      Freilich kommt aus einer LED oder einer Fotodiode Strom raus bei Lichteinfall.
      Auch wenn es nur wenige nA sind, aber bliebt man schon hochohmig in der Erfassung (mehrere Mohm) kann man an beiden Bauteilen eine Spannung messen die mit der Lichtintensität steigt.

      Allerdings, was damals bei mir fast zwei Wochen Frust brauchte, war die Erkentniss:
      Nimmt man LED's oder Fotodioden als Mini-Solarzellen und misst nur ihre Spannung, taugt das kaum für mehr als "Hell/Dunkel".
      Eine konkrete messung der Helligkeit über einen gewissen Dynamikbereich kann man da vergessen.

      Der Trick wie es richtig geht: Eine einfache Fotodiode wie die BPW34 wird nicht als Strom- oder Spannungsquelle genutzt, sondern als Stromsenke.
      Die wird in Sperrichtung mit einer Spannung von mehreren Volt beaufschlagt und ihr Sperrstrom vermessen.
      Dieser liegt in einem sehr niedrigen Bereich, wenige nA oder gar pA bei Dunkelheit.
      Der Transimpedanzverstärker mit beispielsweise 1Mohm + 100nF im Rückkopplungsweg macht aus diesen winzigen Sperrströmen eine ADC-taugliche Spannung.

      Man bekommt dann eine Dynamik die weit über die "LED als Solarzelle" Variante herrausgeht.
      Beispielsweise misst man dann nicht nur wo gerade die maximale Sonneneinstrahlung herrscht inklusive Wolkendämpfung, sondern kann im unteren Bereich nachts auch problemlos Mondstand und Mondphase in den ADC-Werten sehen.

      Allerdings noch ein Tip, da es bei dir ja um Aussenanwendung geht:
      Es währe sinnvoll die Signale zusätzlich über ein LowCut zu Filtern. Alle Signalanteile mit <1 Sekunde spielen zur Erfassung der Sonneneinstrahlung keine Rolle. Filtert man die nicht könnte es sein das du nach starken Gewittern stundelang Störimpule in den ADC-Daten findest die nix mit der Lichtintensität zu tun haben.
      Kurze, knackige Imulse mit Breiten zwischen 10ns und 100µs sind dann natürliche Gammastrahlung.

      Wann immer ich in den letzten Jahren was mit Helligkeitsmessung zu tun hatte, greife ich zu meiner Standardschaltung:
      BPW34 in Sperrichtung, den Transimpedanzverstärker mit 1M und 100nF an einem MCP602 als OP.
      Nur einmal bin ich den faulen Weg gegangen, waren Alu-Platinen mit zig MidPower-LED's wo ein Lichtsensor drauf sollte.
      Da habe ich dann aus Platzgründen einen VEML7700-TT eingesetzt.

      Hatte aber nicht nur was mit Faulheit zu tun. I²C hatte ich schon für Temperatursensor und einem E²PROM auf dem Board.
      Als dann kurz vor fertigstellung des Layouts der Wunsch aufkam ob ein Lichtsensor noch drauf könne war dann schnell klar das ich das dann auch via I²C mach.

      Jürgen
    • Danke Dir, Jürgen, für die vielen Erklärungen, so viel Erfahrung habe ich in diesem Bereich in der Tat nicht. Ich hatte meine erste und bisher einzige Berührung mit "LED als Lichtsensor" bei einem Miniprojekt: "Ist das Garagentor zu, aber haben die Kinder wieder das Licht angelassen?" Das funktioniert dabei mit einer LED sehr gut, da sie wirklich nur Dunkel von etwas Licht unterscheiden muss, und mit der eingebauten Optik sogar recht "scharf" sieht. Ein ATtiny48 bewerkstelligt hier die Messung.

      Da das so gut funktioniert hatte, versuchte ich mit allen bei mir herumliegenden LED-Typen (erstaunlich, wie viel sich ansammelt :)), wie viel man bei Sonnenschein rausbekommt. Neben IR-LEDs, die noch recht viel Spannung lieferten, waren nur noch die roten Low Power LEDs mit diffusem Körper tauglich, die - wie schon geschrieben - mit 10M parallel über 1 Volt liefern. Bei den anderen war schon bei 200mV Schluss... Wolkig oder Dämmerung kann man also damit sehr gut von Sonnenschein abgrenzen, ein Cutoff bei ca. 150mV ist hier schon hinreichend. Dabei ist der Sonnenstand für signifikant höhere Werte gar nicht so relevant, vermutlich eben wegen des diffusen LED-Körpers. Wie linear das ganze ist, weiß ich nicht, aber für die Anwendung ist es auch nicht relevant, Hauptsache ist, dass es reproduzierbar ist. Ich messe ja vier LEDs "parallel", und da sind bei gleicher Lichtstärke (Sonnenschein mit >500mV) die Abstände <20 mV, entweder durch die 1% Toleranz der Widerstände, leichte Abweichungen in der Ausrichtung oder sonstwas. Das ist viel besser, als ich ursprünglich gedacht hatte.

      Auf eure Hinweise hin habe ich nun die LEDs an den verdrillten vier Aderpaaren angelötet. Die Kondensatoren habe ich erst mal beibehalten, da das alles bei mir gefädelt ist. Aber ich habe eine Strippe zwischen 230V-Erdung und GND gezogen - und siehe da, beides bewirkt eine Verringerung des Schwingens auf ca. 7 digits. Das wird wohl reichen, da ich beim Cutoff von 150 mV noch viel Platz nach oben habe. "Sonne mit Cirrus" liegt um die 350mV aufwärts...
      Leider gab es heute keine Sonne mehr, als ich gebastelt habe, so dass ich nur die Dämmerung messen konnte. Wie geschrieben, vorher waren es >150 digits Schwankungen, bin sehr zufrieden.

      Schwankungen Sonne/Wolken und damit über oder unter der Schwelle werden durch eine Hysterese geglättet und interpretiert. Entweder hat man mehr Sonne oder mehr Schatten, dann fährt die Markise raus oder rein. Keine Raketentechnik, und Echtzeit ist auch nicht notwendig. Nur bei der Justage des Schattens gerade noch außerhalb der Paneele wird schnell gemessen und gesteuert.
      Ich muss aber noch an der Software feilen, ich habe da noch so ein paar Ideen ;) Und der Regen- und Windsensor müssen auch noch verdrahtet werden.

      Viele Grüße
      Christoph
    • Vielleicht sind Infrarot-Dioden noch eine alternative zu den LED's.

      Ich habe vor 1-2 Jahren mal damit experimentiert und konnte gute Werte für den ADC-Eingang erhalten.
      Auf Sonne reagieren die sehr gut, auch wenn der Himmel unnatürlich weis ist und Sonne durchscheint.
      Bei Wolkenfetzen, die schatten werden, ist das auch sehr gut mit IR-Dioden detektierbar.

      Ich hatte diese IR-Dioden aus dem Bereich der Fernbedienungen verwendet.
      Die Dioden gibts aber mit verschiedenen Wellen-Längen. Vielleicht ist da eine bestimmte Wellenlänge besser geeignet.

      Bei SPS wird bei analogen Steuerungen gerne anstelle von Spannung auf eine Stromschnittstelle (0..20mA) zurückgegriffen,
      weil das auf größere Distanzen unempfindlicher gegen Störungen ist.

      Vielleicht wäre bei dir eine Konstantstromquelle beim Controller auch eine Lösung? Dann könntest du den Wert mit OP auch auf den Messbereich des ADC-Eingangs anpassen.
      Klar, es sind nur kleine Ströme, aber es sollte doch noch etwas besser funktionieren, als deine Spannung an 10MOhm zu messen.

      Die Stromquelle müsste dann irgendwo um die 0,1µA haben, wenn du bei LED bleibst.

      Mit den IR-Dioden könntest du einen höheren Strom nehmen.
    • Hallo!

      Mitch64 schrieb:

      Bei SPS wird bei analogen Steuerungen gerne anstelle von Spannung auf eine Stromschnittstelle (0..20mA) zurückgegriffen,
      weil das auf größere Distanzen unempfindlicher gegen Störungen ist.
      Nicht nur bei SPS. Zu analoger Stromschleife fällt mir einiges ein. POTS beispielsweise, was unsere Zivilisation knapp 100 Jahre lang das Telefon bescherrte.
      Allerdings ist es fast egal ob man Spannung oder Strom überträgt, beides sind kompromissbehaftete Techniken.
      Zwar kann man einfacher erfassen ob nun 1mA oder 20mA fließen. Allerdings hat man dort dennoch mehr Rauschprobleme als bei Spannungsübertragung.

      Elementare Erkentnisse wie man all diese Probleme erschlägt sind:
      Quell- und Zielimpedanzen festlegen auf einen Standard, z.B. 150R oder 600R.
      Symmetrische Leitung, zusätzliche geschirmt.

      Und genau da hatte Chritoph ja schon einen richtigen Ansatz:
      Er verwendet Cat.5 Kabel. Symmetrische päärchen mit 150R Impedanz, zusätzlich geschirmt.
      Alles was nicht hinhaute:
      Die Impedanz von 1M über Cat.5 an den ADC der um die 100k glaube ich hat.

      Der ADC der ATmegas ist diesbezüglich eh verhunzt. Spannungen aus niederohmigen Quellen kann er, keine Frage.
      Aber seine Eingangsimpadanz wird schon zum Problem wenn man eine Batteriespannung messen will ohne das diese nennenswert Entladen wird. Also mit einem Spannungsteiler mit xM.

      Reichen einem die 10Bit des internen ADC's und will dort etwas aus einer 1M-Quelle dran hängen, geht das nicht ohne Impedanzwandler / Spannungsfolger.
      Ich dagegen setze dann eher externe und anständige ADC's ein.
      Wie verhunzt der ATMega-ADC mit seinen 100k Eingangsimpedanz ist, sieht man dann sofort in den Datenblättern ordentlicher ADC's wie z.B. MCP3425 mit stolzen 25 Megaohm Eingangsimpedanz.

      Mit solch einem Teil kann man dann mühelos auch eine LED mit 1M Impedanz dran hängen.
      Und genau das hat mich bereits vor einigen Jahren noch überzeugt:

      Microchip hat bei seinen I²C-ADC's ein interessantes System gebaut:
      Die verstehen alle einen Sammelruf, den es bei I²C ja so gar nicht gibt.
      Dieser Sammelruf kommt eher aus der SMBus-Sparte.
      Aber Adresse b0000000 gefolgt von Befehlsworten ermöglicht eine simultane ADC-Messung aller externen ADC's, wo immer sie auch im Gerät verteilt sind.

      Stichwort Wellenlängen:
      Will man die Helligkeit nicht exakt vermessen, beispielsweise für eine Anzeige in Lux, sondern eher eine quantitative aussage mit den deutlich geringeren Anspruch "eher duster" oder "richtig hell", kann man das mit LED's natürlich machen.
      Allerdings muss man damit dann experimentieren, da die Datenblätter von LED's in diesem Bereich absolut nichts definieren.

      Klar ist aber das farbige LED's einen Filter eingebaut haben.
      Rote, Gelbe, Grüne LED's mit ebensolchen Gehäusen werden eben bei genau diesen Farben ihre Peaks als Sensoren haben.
      Das selbe gilt für IR-LED's die häufig schwarz oder schwarz/Lila Gehäuse haben.
      Und IR ist selbstverständlich genau der Bereich den ich anstreben würde, wenn ich die Intensität der Sonne messen wollte.

      Denn die Sonne hat ein Gesamtspektrum welches gerade zwischen 800-1200nm einen heftigen Peak hat.
      Also IR im Sinne von Fernbedienungssysteme um 800-900nm wären goldrichtig. Der Mond beispielsweise sendet nix im IR-Bereich.

      Jürgen
    • Hallo!

      Mitch64 schrieb:

      Bei SPS wird bei analogen Steuerungen gerne anstelle von Spannung auf eine Stromschnittstelle (0..20mA) zurückgegriffen,
      weil das auf größere Distanzen unempfindlicher gegen Störungen ist.
      Nicht nur bei SPS. Zu analoger Stromschleife fällt mir einiges ein. POTS beispielsweise, was unsere Zivilisation knapp 100 Jahre lang das Telefon bescherrte.
      Allerdings ist es fast egal ob man Spannung oder Strom überträgt, beides sind kompromissbehaftete Techniken.
      Zwar kann man einfacher erfassen ob nun 1mA oder 20mA fließen. Allerdings hat man dort dennoch mehr Rauschprobleme als bei Spannungsübertragung.

      Elementare Erkentnisse wie man all diese Probleme erschlägt sind:
      Quell- und Zielimpedanzen festlegen auf einen Standard, z.B. 150R oder 600R.
      Symmetrische Leitung, zusätzliche geschirmt.

      Und genau da hatte Chritoph ja schon einen richtigen Ansatz:
      Er verwendet Cat.5 Kabel. Symmetrische päärchen mit 150R Impedanz, zusätzlich geschirmt.
      Alles was nicht hinhaute:
      Die Impedanz von 1M über Cat.5 an den ADC der um die 100k glaube ich hat.

      Der ADC der ATmegas ist diesbezüglich eh verhunzt. Spannungen aus niederohmigen Quellen kann er, keine Frage.
      Aber seine Eingangsimpadanz wird schon zum Problem wenn man eine Batteriespannung messen will ohne das diese nennenswert Entladen wird. Also mit einem Spannungsteiler mit xM.

      Reichen einem die 10Bit des internen ADC's und will dort etwas aus einer 1M-Quelle dran hängen, geht das nicht ohne Impedanzwandler / Spannungsfolger.
      Ich dagegen setze dann eher externe und anständige ADC's ein.
      Wie verhunzt der ATMega-ADC mit seinen 100k Eingangsimpedanz ist, sieht man dann sofort in den Datenblättern ordentlicher ADC's wie z.B. MCP3425 mit stolzen 25 Megaohm Eingangsimpedanz.

      Mit solch einem Teil kann man dann mühelos auch eine LED mit 1M Impedanz dran hängen.
      Und genau das hat mich bereits vor einigen Jahren noch überzeugt:

      Microchip hat bei seinen I²C-ADC's ein interessantes System gebaut:
      Die verstehen alle einen Sammelruf, den es bei I²C ja so gar nicht gibt.
      Dieser Sammelruf kommt eher aus der SMBus-Sparte.
      Aber Adresse b0000000 gefolgt von Befehlsworten ermöglicht eine simultane ADC-Messung aller externen ADC's, wo immer sie auch im Gerät verteilt sind.

      Stichwort Wellenlängen:
      Will man die Helligkeit nicht exakt vermessen, beispielsweise für eine Anzeige in Lux, sondern eher eine quantitative aussage mit den deutlich geringeren Anspruch "eher duster" oder "richtig hell", kann man das mit LED's natürlich machen.
      Allerdings muss man damit dann experimentieren, da die Datenblätter von LED's in diesem Bereich absolut nichts definieren.

      Klar ist aber das farbige LED's einen Filter eingebaut haben.
      Rote, Gelbe, Grüne LED's mit ebensolchen Gehäusen werden eben bei genau diesen Farben ihre Peaks als Sensoren haben.
      Das selbe gilt für IR-LED's die häufig schwarz oder schwarz/Lila Gehäuse haben.
      Und IR ist selbstverständlich genau der Bereich den ich anstreben würde, wenn ich die Intensität der Sonne messen wollte.

      Denn die Sonne hat ein Gesamtspektrum welches gerade zwischen 800-1200nm einen heftigen Peak hat.
      Also IR im Sinne von Fernbedienungssysteme um 800-900nm wären goldrichtig. Der Mond beispielsweise sendet nix im IR-Bereich.

      Jürgen
    • @DG7GJ

      Hallo Jürgen

      Ich muss deine Ausführungen, die ja sehr interessant sind etwas gerade rücken.
      Du bist sehr HF-Orientiert und auch so geprägt. Kennst dich mit Antennentechnik, Empfängern, Funk, Antennebau usw. gut aus.
      Das will ich dir gar nicht absprechen.

      Daher bist du, wie dein Name verrät, ganz offensichtlich ein Amateurfunker.

      Du kannst aber nicht alles von HF auf Controller umlegen. Zudem sind hier keine Profis unterwegs (ich bin auch keiner).

      D.h. z.B. dass der eingebaute ADC-Wandler nach deiner Beurteilung Murks ist, aber für viele Fälle völlig ausreuchend ist.
      Ich brauche kein High-End ADC-Wandler mit 24-Bit auflösung und einer Sampelrate von 1MSaples(s mit 30MOhm eingangswiderstand zum die 5V prüfen.

      For einfache Dinge tut der interne ADC sehr gute Dienste. Wem die Leistung nicht reicht, kann auf externe Bausteine ausweichen.

      Das hast du zwar nicht erwähnt, aber das betrifft genausi die interne Spannungsreferenz für den ADC.
      Auch hier ist es ein Feature des Controllers, was für viele Fälle ausreicht. Will man es genauer, dann externes Bauteil nehmen.
      Heißt jetzt aber nicht, dass der deswegen vermurkst ist. So sehe ich das!

      Weiterhin sprichst du die I2C-Bus ADC-Wandler vom Microchip an, wo sich die wohl was tolles einfallen haben lassen um die ADC-Wandler mit Adresse b00000 synchron zu Sampeln.
      Da muss man differenzieren.

      Microchip nutzt nur den I2C-Bus, der von Phillips entwickelt würde. Und in der Specifikation steht die Adresse 0 schon als Generel Call drin. Also eine Adresse für einen Rundruf an alle Busteilnehmer.

      Microchip hat lediglich den General Call verwendet um die ADC'S zum Wandeln zu bringen. Also ein Synchrones Wandeln der ADC's am Bus.

      Mit der Impedanz von Quelle (LED) und Übertragungsmedium (CAT5) und der Impedanz des Empfängers (ADC) hast du aus HF-Sicht sicherlich recht,
      was das Rauschen angeht. So kenne ich das aus der HF Technik. Dabei spricht man dann aber von Leistungsanpassung.

      In der Elektronik (NF) verwendet man aber i.d.R. eine Spannungsanpassung. Also Quelle Niederohmig und Empfänger hochohmig).

      Du gibst viele Tips, die hier für viele zu hochohmig sind. Aber hier wird kaum jemand sein, der den Aufwand für die Basteleien treibt.

      Das Beispiel mit der Stromschnittstelle (0-20mA) habe ich gegeben, weil hier ein paar Leute sind, die das von SPS her kennen.
      Du hast recht, dass es da noch viele andere Anwendungen gibt.
      Aber ich glaube jetzt aber nicht unbedingt, dass die Stromschnittstelle jetzt empfindlicher sein soll als die Spannungsschnittstelle. Was das Rauschen angeht muss ich passen. Das ist selbst mir zu hochohmig.

      Viele hier sind Hobbybaster mit einem gewissen technischen Hinergrund.
      Und viele wollen eine einfache Schaltung, also möglichst wenig Aufwand von den Bauteilen her. Daher sind solche Profilösungen hier eher nicht so gefragt.

      Also nicht falsch verstehen. Di hast unumstritten viel Wissen. Aber man muss das auch bissel aus der Sicht eines Basters sehen.

      Ich persöhnlich, um das Thema abzuschließen, würde als Lösung deinen Aktiv-Sensor bauen und dann per Spannungsanpassung an den ADC zu gehen. Leitungen verdrillt und abgeschirmt. Damit dürfte man mit internem ADC schon recht gute Ergebnisse bekommen.
      Die Stromschnittstelle bei LED wäre zu hochohmig und habe diese Lösung nur mal in den Rasum gestellt. Um es richtig zu machen, muss da mehr Strom fließen, was wieder einen Verstärker bei der Diode erforderlich machen würde. Damit wieder Aktivsensor!

      Wie gesagt, Aktivsensor wäre eine gute Lösung, das CAT5-Kaben wäre dann auch für die Spannungsversorgung verwendbar. Zudem ein Sensor, der auch tatsächlich Sonne detektiert, also eine UV-Diode/Transistor.

      Wenn das zu aufwendig ist, das entscheidet ja schlussendlich der Bastler, dann muss man eben mit dem Signal auskommen, was die einfache Schaltung liefert.
      Wenns reicht ist ok, sonst eben etwas mehr Aufwand.
    • Wegen Netzproblem nicht erfolgreich gesendet

      Hallo Jürgen,
      da s passt vielleicht auch zum Thema...
      kürzlich habe ich mit einem Helligkeitssensor experimentiert. Er arbeitet mit einem GY302 dessen Wellenlänge exakt im gewünschten Spektrum bis IR liegt. Er ist über I 2c ansprechbar und liefert darüber LUX-Werte an einen MEGA8.
      Über case-Abfragen ist somit ein weiter Anwendungsbereich gegeben.
      Gruß Rudi
      Immer Glück haben ist fast wie können..

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Rudi Einstein ()

    • Hallo Jürgen,
      das passt vielleicht auch zum Thema...
      kürzlich habe ich mit einem Helligkeitssensor experimentiert. Er arbeitet mit einem GY302 dessen Wellenlänge exakt im gewünschten Spektrum bis IR liegt. Er ist über I 2c ansprechbar und liefert darüber LUX-Werte an einen MEGA8.
      Über case-Abfragen ist somit ein weiter Anwendungsbereich gegeben.
      Gruß Rudi
      Dateien
      Immer Glück haben ist fast wie können..
    • Hi Mitch!

      Mitch64 schrieb:

      Du kannst aber nicht alles von HF auf Controller umlegen. Zudem sind hier keine Profis unterwegs (ich bin auch keiner).

      D.h. z.B. dass der eingebaute ADC-Wandler nach deiner Beurteilung Murks ist, aber für viele Fälle völlig ausreuchend ist.
      Ich brauche kein High-End ADC-Wandler mit 24-Bit auflösung und einer Sampelrate von 1MSaples(s mit 30MOhm eingangswiderstand zum die 5V prüfen.
      HF auf µC umlegen mache ich auch nicht.
      Aber elementares Grundwissen zum Thema Gleichstrom und Analogtechnik sind halt ebenso wichtig.
      Das Thema Rauschen z.B. ist nicht nur ein Funkthema in der HF-Technik, sondern ebenso in der analogen Signalverarbeitung.

      Kleines beispiel zum ADC in den ATmegas:
      Man will gucken ob ein Akku, beispielsweise drei NiMH = 3,6V Nenn bzw. Leer 2,7 bis 4,65V voll und hat keine Probleme die einem zum Strom sparen zwingen.
      Läuft der µC mit hinreichend stabilisierten 5V kann man am AVref ein simplen RC-Tiefpass hängen und über Vcc 5V speisen.
      Dann kann man mit dem ADCx direkt ohne Spannungsteiler an den zu messenen Akku.
      Bei einem µC der an 3,3V läuft, bräuchte man dann schon einen Spannungsteiler, beispielsweise 10k + 10k.

      Geht es aber darum eine CR2032 zu messen ob diese noch 3,xV oder nur noch 2,8V hat, wird es kniffelig.
      Um die CR2032 nicht mit dem Spannungsteiler unnötig leer zu saugen.
      Daher nimmt man 1M + 2M als Teiler um den Querstrom auf max. 1µA zu drücken und hängt sinnvoller weise eine externe 1,024V-Referenz an des AVref.

      Jedes anständige Multimeter zeigt über den 1M die exakt durch 3 geteilte Spammung von z.B. 1,00V.
      Was aber misst der ADCx über diesen 1M Widerstand des Teilers?
      Kaum mehr als 700-800mV was sofort nach einer total leeren CR2032 aussieht.

      Warum dieser Unterschied?
      Das hat kaum etwas mit HF zu tun, sondern liegt einfach an den 100k Eingangsimpedanz.
      Wo HF mit reinspielt, weswegen ich die 100k des ADC's auch immer als Impedanz und eben nicht als Innenwiderstand bezeichne:
      Durch den SH-Kondensator des ADC-Multiplexers kommt es auch auf die Sampeldauer an.
      Denn für eine korrekte ADC-Messung muss genügend Strom üer diese 100k + Spannungsteiler fließen, um innerhalb der Sampelzeit diesen SH-Kondensator tatsächlich auf die Spannung zu laden, die der ADC messen soll.

      Und genau das ist der Grund weswegen ich den ADC als verhunzt bezeichne.
      Damit er hochohmige Signalquellen mit mehreren hunder k bis vielleicht 1-5Mohm korrekt vermessen kann, braucht es eigens dafür einen Impedanzwandler. Also ein OP als Spannungsfolger.

      Mitch64 schrieb:

      Mit der Impedanz von Quelle (LED) und Übertragungsmedium (CAT5) und der Impedanz des Empfängers (ADC) hast du aus HF-Sicht sicherlich recht,
      was das Rauschen angeht. So kenne ich das aus der HF Technik. Dabei spricht man dann aber von Leistungsanpassung.
      Das hat eher weniger mit HF und Leistungsanpassung zu tun.
      Viel mehr bei analogen Meßwerten damit das man das Rauschen Minnimiert.

      Rauschen ist nicht nur das Empfängerrauschen in der Funktechnik, sondern bezeichnet in der Analogtechnik schlichtweg ALLE

      am Ende der Leitung ankommenden Signale abseits des gewünschten Nutzsignals.
      Also 50Hz-Reste durch Einstreuung aus dem Stromnetz, 100Hz von Eisenkern-Netzteilen und Leuchtstofflampen, die bis mehrere kHz reichenden Fragmente diverser Schaltnetzteile sowie wie von Christoph angedeutet Wechselrichter von Balkon-Solaranlagen. Selbst solch träge Größen wie Erdmagnetfeld und Magnetfeldern von Gewittern wirken auf solch ein Kabel ein.


      Daher erwähnte ich das:
      Wenn man empfindliche Sensorsignale nicht unmittelbar am µC hat, sondern über Kabel absetzt, egal ob es dabei um 1m oder 30m geht - ist Cat.5 und darüber dafür schonmal eine perfekte Kabellösung.
      Allerdings nur wenn man es richtig macht.
      Nimmt man ein Päärchen asymetrisch, beispielsweise eine Ader für GND und die zweite für das zu übertragene Signal, ist das kontraproduktiv. Sowas für Übertragung von Betriebsspannung ist OK, aber Sensorsignale?
      Will man z.B. 200mV übertragen, und geht asymetrisch auf die eine Ader und GND über die zweite Ader, könnte es schon schwierig werden nach wenigen Metern Leitung, diese 200mv nicht mehr ordentlich ausgewertet werden kann.

      Nutzt man hingegen das päärchen symmetrisch, also +200mV auf der einen und -200mV Ader, und wertet am Empfangsort mit einem Instrumentenverstärker die Mespannung ADC-tauglich zurück, weil man alleine hierdurch einen Löwenanteil der Störsignale erschlagen hat.

      Und was sich für dich anhört nach Leistungsanpassung, aber wo dieses Wort m.E. nicht ganz passt:
      Die verdrillten Äderchen im Cat.5 haben eine Leitungsimpedanz von 150 Ohm. Das konkret ist allerdings nur wirklich wichtig, wenn es um AC-Signale geht im Sinne der Leistungsanpassung.

      Überträgt man statt dessen analoge Meßwerte ist erstmal nur essenziell das solche Zustände worum es ging nicht ausarten.
      Eine Spannung aus einer Quelle von um die 1M an einen ADC mit 100k - das würde ich nicht mal direkt auf der µC-Platine machen, zumindest nicht ohne Impedanzwandler.
      Über meterweise Kabel dazwischen wären für mich so undenkbar.

      Und, obwohl Leistungsanpassung bei DC keine Rolle spielt:
      Hängt man beim Sender den OP-Ausgang direkt auf die Ader und am anderen Ende lauscht etwas, kann da durchaus was falsch laufen. Denn das Kabel wirkt zusammen mit dem Empfänger (100K) und dem Kabel als überwiegend kapazitive Last.
      Und das mögen die meißten OP's überhaupt nicht, oder bei einigen nur bis zu einer im Datenblatt erwähnten Kapazität.
      Hängt man ein Shunt zwischen OP-Ausgang und Kabel, von z.B. 150R, hat man schon mal die Kabelkapazität erschlagen.
      Die 150R sind ein willkürlicher Kompromiss. Dazu würden Werte zwischen 100 und 470R passen.

      Das sind überwiegend alles Erfahrungen die ich nicht erst durch eigene Basteleien gelernt habe, sondern weil ich gelegentlich mit Industrietechnik zu tun habe, wo noch erstaunlich viel über analoge Meßwertübertragungen läuft.
      Als Aussenstehender mag man ja die Vorstellung haben das dort alles über RS488, CAN oder sogar über moderne Funktechnik vonwegen IoT geht.
      Die tatsächliche Wahrheit ist aber bei Idustrie und ebenso in der Agrartechnik ein Wildwuchs aller erdänklicher Systeme.
      Einen Haufen kunterbuntes, mit Meßgrößen wie -200mV bis +200mV, +-15mA, 0-3V.
      Wird sowas heute noch z.B. von den Sensoren einer Produktionsstraße an die Hauptsteuerung mittels Kabel übertragen:
      Symmetrische Übertragung, beidseitig OP-Schaltungen. RS488, CAN sowie Ethernet und weitere sind Erkennbar im laufe der Jahrzehnte in solchen Industrieanlagen angewachsen, sprichwörtlich.

      Jürgen
    • Hallo!

      Rudi Einstein schrieb:

      Hallo Jürgen,
      Die Posts 8 + 9 sind identisch...
      Ja, das war eine Irreführung von der Forensoftware.
      Beim absenden des Beitrages meldete das Forum einen Fehler und meinte ich solle es später nochmal versuchen.
      Blöder weise habe ich nochmals auf absenden geklickt was dann geklappt hat.
      Blöder weise stehen da aber nun zwei mal die selben Posts...


      Rudi Einstein schrieb:

      das passt vielleicht auch zum Thema...
      kürzlich habe ich mit einem Helligkeitssensor experimentiert. Er arbeitet mit einem GY302 dessen Wellenlänge exakt im gewünschten Spektrum bis IR liegt. Er ist über I 2c ansprechbar und liefert darüber LUX-Werte an einen MEGA8.

      Den GY302 kenne ich nicht, habe aber mal nen Tütchen VEML7700-TT verwurstet.
      Solche Teile sind genial und zeigen sehr eindrucksvoll welche Dynamik man bekommt wenn man eine Photodiode in Sperrbetrieb über einen Transimpedanzverstärker und einem gescheiten ADC bekommt.

      Jürgen
    • Ich lese hier interessiert mit, gerne mehr aus den vielen Nähkästchen :)

      Von meiner Seite kann ich nur beisteuern, dass derzeit meine Anforderungen mit der low-cost Hardware "LED" übererfüllt wurden. Wie oben irgendwo gesagt - "Hell und Dunkel genug" waren die Kriterien, das kann die LED ausdifferenzieren.

      Noch eine Frage zum Rauschen (fand die Aussage sehr interessant): Ich sample mehrmals und ermittle dabei den Durchschnitt, bekommt man das Rauschen damit in den Griff - oder ist sowas nur gut für's Gefühl? Für zeitkritische Anforderungen ist das natürlich zu langsam, aber Wolken ziehen langsam, und die Nacht bricht hier noch langsamer herein...

      BASCOM-Quellcode

      1. 'Stabilize!
      2. waitms 100
      3. for B=1 to 100 ' Mitteln über 100 Samples
      4. W=getADC(ADC_Innen_Port)
      5. ADC_Innen=ADC_Innen+W
      6. ADC_Innen=ADC_Innen/2
      7. waitms 1
      8. next
      9. for B=1 to 100 ' Mitteln über 100 Samples
      10. W=getADC(ADC_MitteInnen_Port)
      11. ADC_MitteInnen=ADC_MitteInnen+W
      12. ADC_MitteInnen=ADC_MitteInnen/2
      13. waitms 1
      14. next
      15. (... u.s.w. ...)
      Alles anzeigen
    • chw9999 schrieb:

      Ich sample mehrmals und ermittle dabei den Durchschnitt
      Dabei ist rauschen sogar von Vorteil. Es vergrößert die Auflösung.
      Jedoch alle summieren vor dem Teilen, sonst schlägt die letzte Messung zu stark durch.

      Quellcode

      1. W=getADC(ADC_Innen_Port) 'Adc Eingang umschalten
      2. waitms 10 'Auf Pegelanpassung warten
      3. ADC_Innen=0
      4. for B=1 to 64 ' nur 64 damit es in ein Word passt
      5. W=getADC(ADC_Innen_Port)
      6. ADC_Innen=ADC_Innen+W
      7. next
      8. ADC_Innen=ADC_Innen/64

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Pluto25 ()

    • Hallo!

      chw9999 schrieb:

      Ich lese hier interessiert mit, gerne mehr aus den vielen Nähkästchen :)
      Oh, ich hole schon extra weit aus :)

      chw9999 schrieb:

      Von meiner Seite kann ich nur beisteuern, dass derzeit meine Anforderungen mit der low-cost Hardware "LED" übererfüllt wurden. Wie oben irgendwo gesagt - "Hell und Dunkel genug" waren die Kriterien, das kann die LED ausdifferenzieren.
      Wenn dir das reicht, ist es ja OK.
      Nur leute die angeregt durch dieses Thema selbiges nachbauen wollen, könnten eventuell vor Problemen landen.

      Der Effekt worum es hier geht, liegt darin begründet jas jeder Halbleiter mit PN-Übergang eine hochohmige Spannung erzeugt wenn Licht direkt auf diese PN-Schicht einwirkt, vergleichbar zu einer extrem winzigen Solarzelle.
      Da LED's eben ein lichtdurchlässiges Gehäuse haben, kann dort halt eine Spannung gemessen werden bei Lichteinfall.

      Statt einen Widerstand parallel zur LED zu schalten, welcher schon die Spannung belastet, müsste man alleine die Hochohmigkeit der LED effektiv runter bringen. Denn der ADC misst dort unter ca. 100k Last, wo die LED-Spannung massiv einbrechen würde.

      Ebenso sehe ich die Gefahr das Mitleser auf den Gedanken kommen könnten eine normale LED an einen Transimpedanzverstärker zu hängen.

      In beiden Fällen, sowohl bei normalen LED's sowie auch bei Fotodioden, muss das Signal aufbereitet werden bevor es sicher über einen ADC gewandelt werden kann.
      Statt sowas mit Transistoren und J-FET's kompliziert zu bauen, setzt man seit geraumer Zeit für beide Varianten Operationsverstärker ein.
      Damit beschränkt sich der Bauteilaufwand und auch die Fehleranfälligkeit enorm.

      Fall 1: Normale LED als Lichtsensor.
      Hier braucht es die einfachste aller OP-Schaltungen überhaupt, die ohne weitere Bauteile auskommt.

      Bild sowie weitere Erklärungen:
      elektronik-kompendium.de/sites/slt/0210151.htm im Abschnitt "Anwendung als Impedanzwandler.
      Wann immer man es mit Meßsignalen zu tun hat die zwar eine hinreichende Spannung bieten, allerdings einen viel zu hohen Innenwiderstand haben, ist dieses der Problemlöster.
      Diese Schaltung hat keine Verstärkung (V=1), sorgt aber dafür das die unbelastete LED-Spannung exakt am Ausgang wieder abgebildet wird. Allerdings dann robust und niederohmig.

      Fall 2: Eine richtige Fotodiode im Sperrbetrieb.
      Hier braucht es den Transimpedanzverstärker.


      Bild sowie tiefergehende Erklärungen:

      de.wikipedia.org/wiki/Photodiodenverst%C3%A4rker

      Allerdings ist das Schaltbild etwas verwirrend.

      Die untere Linie mit dem Erdungszeichen kann man auf GND legen. Allerdings nur wenn man den OP symmetrisch speißt.

      Hat man keine symetrische Stromversorgung, ist es besser einen Rail-To-Rail-OP zu nehmen, und statt GND die untere Linie über Spannungsteiler auf Ub/2 zu legen.

      Als R1 sind 1M und für C1 wären 100nF typische Anfangswerte die häufig direkt zum Erfolg führen.


      Als OP's mache ich im Umkreis von µC seit Jahren viel mit MCP602 und MCP604 die es von DIL bis runter auf SOT-23-5 gibt.

      Es sind Rail-to-Rail-OP's die mit normaler Vcc, egal ob 5V oder 3,3V problemlos laufen.



      chw9999 schrieb:

      Noch eine Frage zum Rauschen (fand die Aussage sehr interessant): Ich sample mehrmals und ermittle dabei den Durchschnitt, bekommt man das Rauschen damit in den Griff - oder ist sowas nur gut für's Gefühl? Für zeitkritische Anforderungen ist das natürlich zu langsam, aber Wolken ziehen langsam, und die Nacht bricht hier noch langsamer herein...
      Ja - Aber:
      Oversampling nutzt nur wenn von n Einzelmessungen nur wenige Messungen Fehlerhaft sind.
      Misst du also 1000 mal, und da sind >10 Sampels bei die irgendein Strörsignal eingefangen haben, kann man das rausmitteln.
      Also n mal sampeln, alle Sampelwerte addieren und zum schluß durch n teilen.

      Wo Oversampling aber nichts dran verbessern kann ist schlechtes S/N.
      Beispiel:
      Liefert die LED satte 800mV mit 5M Innenwiderstand über mehrere Meter Kabel zum ADC, misst er da vielleicht noch gerade eben dreistellige mV, warscheinlich weniger. Mögliche Störungen aus dem 230V-Netz sowie von PWM oder EDV-Krempel in der Nähe, können diese deutlich stärker am ADC anliegen als das LED-Signal.
      Das ergibt dann Müll beim Sampeln.
      Und es nutzt nix 1000 mal Müll zu sampeln, weil der Mittelwert wird dann auch Müll sein.

      Jürgen
    • Kurzer Nachtrag:

      Wollte da mal eben gucken wie sich das mit dem Ri einer LED verhält.
      Auf's Steckbrett landete eine RND 135-00164 Lichtfarbe weis, klares Gehäuse mit 15° Öffnungswinkel.

      Bei aktueller eher niedrigeren Raumhelligkeit brachte die etwa 200-350mV stark schwankend.
      Parallel zu LED und Multimeter ein 1,1M und die Spannung brach auf ungefähr 60-90mV ein.
      Die werte waren aber derart instabil das eine exakte Vermessung unmöglich war. Rauschen eben!

      Also dann mit der Brechstange. LED-Taschenlampe direkt Linse auf Linse und vorsichtig den optimalen Einstrahlwinkel gesucht wo Maximalspannung herrschte.
      Dort dann endlich stabile Werte - offenbar Clip-Werte oder Sättigungswerte.
      Nur hochwertiges Multimeter an LED: 2,378V.
      Mit 1,1M parallel noch 1,247V.
      Bei einem Strom von 1,1336µA (1,131V / 1,1Mohm) bricht die Spannung also um 2,378-1,247V = 1,131V ab.
      Das entspräche rechnerisch einem Ri von 998R, knapp unter 1M.

      Würde ich diese LED statt am Multimeter (>10M Innenwiderstand) die LED an einen ADCx eines ATmega's hängen, würde ich erwarten das von diesen 2,378V nur 220mV gemessen werden würden.

      Und durch das Schummeln mit der LED-Taschenlampe sieht man da auch schon das Rauschproblem.
      Klares Meßergebnis nur bei Sättigung der LED.
      Bei normaler Abend-Beleuchtung mittels Halogen-Tischleuchte instabile, verrauschte Werte.
      Kein Wunder...Abstand zur USB-Tastatur wenige cm, zum LCD-Monitor keine 20cm, etwa 35cm entfernt die Halogen-Tischleuchte mit Dimmer im Fuß, unter dem Tisch diverse Schaltnetzteile.
      Da fängt sich so viel auf den 120cm langen Meßstrippen ein, das die 200-350mV der LED da nur sehr verrauscht rüber kamen.

      Vielleicht noch ein Schmankler weswegen ich so auf die anständige Lösung rumreite.
      Vor einigen Jahren fragte mich meine Lebensgefährtin ob man die diversen Beistell-Lämpchen (4W LED) nicht mit einem Dämmerungsschalter versehen könnte.
      Aber Freilich...ab ins Internet und bei den üblichen Verdächtigen nach VDR's abgesucht.
      Blöder weise gab es da aber nix abseits von Alibaba mit 30 Tagen Lieferzeit.
      Irgendwelche Bürokraten meinten das Cadmium und das Selen die in VDR's stecken mit zu dem Blei und andere böse Stoffe packen zu müssen.

      Also rumprobiert...LED unbrauchbar.
      Fotodiode BPW34 als Spannungssensor (genau wie LED) über Impedanzwandler gesampelt, genauso unbrauchbar.
      Schließlich war der Anspruch ja einen Sensor zu haben der unterscheiden kann zwischen diffuse Dunkelheit und so duster das man nix mehr sieht.
      Also habe ich mich gefragt wie man das in richtigen Luxmetern macht und stolperte über das Thema TIA / Transimpedanzwandler.
      MCP602 und BPW34 steckten noch auf dem Steckbrett. Alles was fehlte waren R und C.
      Schnell gemerkt bei R's zwischen 1k und 470k das R die Verstärkung bestimmt. Das C dient primär einer Lowpassfunktion, damit z.B. der Meßwert nicht Ammok-Läuft wenn eine 38kHz IR-Fernbedienung in der Nähe benutzt wird.
      Interessiert man sich für die Helligkeit, also langsame Änderungen, ist man eher mit 10nF bis 1µF gut bedient, geht es einem eher um flotte Datenübertragung braucht C eher zweistellige pF.

      Damals in meiner Werkstatt dann etwas rumprobiert und bei 100k saubere 2,5-0,9V am MCP602-Ausgang gehabt.
      Diverse Lampen im Raum ein und aus geschaltet, bissel mit Schattenwurf auf die BPW34 gespielt.
      Genau das was vorher mit LED und BPW34 nicht mal ansatzweise ging, erschien plötzlich realisierbar.

      Eines aber, und das hat sich in mein Hirn gebrannt als Erfahrungswert:
      Die Dritte Nachkommastelle auf dem Multimeter zappelte.
      Einstrahlung? Rauschen? Lag's am Multimeter? Hat der OP Schluckauf?
      Also Oszi angeworfen und Messpitze dran.
      Aha...etwa Sekundentakt ?!?. Ne, eher irgendwas um 800-900ms.
      Hmm, ist Invertiert, also 100 und 200ms...der Groschen fiel in Zeitlupe.
      Ich warf mein Blick nach Rechts zu meiner DCF-Uhr wo eine gelbe 3mm LED im DCF77-Takt funzelte, gute 6m quer durch den Raum.
      Uhr abgehängt, impuls weg, wieder entfernt...wieder da.
      Seit dem weis ich:
      Eine Fotodiode ist nicht einfach ein VDR-Ersatz, sondern mitunter sogar empfindlicher als das menschliche Auge!
      Hat man vor sowas direkt an den ADC zu hängen ohne andere Spannungen die eine bestimmte AVref benötigen, geht das ganz simpel:
      Viruelle GND des OP's über Pannungsteiler auf Ub/2, also z.B 100k+100k zwischen 5V und GND.
      Mittig mit 100nF glätten gibt saubere 2,5V = Virtuelle Masse für Fotodiode und TIA.
      Diese Virtuelle Masse mit 2,5V dann an den AVref als Referenz.
      Der Ausgang des TIA dann an einen der ADCx.
      Maximalspannung 2,5V entspricht dann ADC-Wert bei h3FF = absolut dunkel bis einige mV über GND also ADC h00x für maximale Helligkeit.
      Man kann aber auch, wenn man einen größeren MPC604 o.ä. nimmt, gerne einen Invertierer (2,5-4V), dann einen Subtrahierer -2,5V (für 0-1,5V) und einem Verstärker dahinter schalten, wenn man lieber 0V für dunkel und 3,3V oder 5V für "Hell" möchte.

      Jürgen
    • DG7GJ schrieb:

      Und es nutzt nix 1000 mal Müll zu sampeln, weil der Mittelwert wird dann auch Müll sein.
      Eben nicht da der Müll in beiden Richtungen gleich ist hebt er sich auf. Allein Richtung Null fällt der auf da keine Negativen Werte gesampelt werden. Die Störungen dürfen den Pegel des Nutzsignals erreichen, hier sind es schon erheblich weniger:

      chw9999 schrieb:

      auf ca. 7 digits
      Das ist gut genug sogar ohne samplen eine Prozent Anzeige zu generieren. Mit kommt man auf ca 0,1 Promille Genauigkeit.
      Eine Genauigkeit von weniger als einem Zehntel reichte das die Anwendung funktionierte.