Schönen Nachmittag,
Ich habe mir vor Jahren einmal eine Platine mit einem AD7793 und PT1000
gebaut und diese an mein PIC Board angeschlossen. Jetzt wollte ich diese
wieder verwenden aber da die Schaltung nur fliegend auf einem Steckboard
aufgebaut war und sich Kabel gelöst haben, kann ich das leider nicht
mehr (Keine Ahnung welche Kabel wohin kommt).
Ich habe es jetzt mit einem Arduino nachgebaut und es funktioniert
soweit auch. Ich fange mir aber eine Menge Störungen ein. Wenn die
Schaltung am Tisch liegt bekomme ich stabile Werte. Baue ich alles aber
in mein Gerät (Brutkasten f. Hühner) ein dann springt der Wert um 0,6 °C
herum was unbrauchbar ist. Weiters wenn ich den Lüfer (220V Papst 15W)
einschalte dann springt die Temperatur mal auf -400 °C.
Gut dann nehme ich gleich einen fertigen DHT22. Der reagiert aber zu
langsam wie es scheint. Wenn ich die Temperatur auf 37 °C einstelle dann
hört er dort zwar auf zu heizen aber die Temp steigt dann weiter auf
37,3 °C.
Jetzt wüsste ich gerne wie ich das ganze entstören kann. Die Leitung vom
PT1000 geht von der Elektronik am Relais vorbei in den Innenraum. Wie
blocke ich den Impuls vom einschalten bzw. abschalten des Ventilators?
Danke
Andreas
Guten Abend,
Anbei ein Foto vom Kasten.
Das Netzteil besteht aus einem Trafo mit einem 7812. Damit versorge ich
den Arduino über eine 10uH Induktivität. Der Arduino versorgt dann die
AD7793 Schaltung.
Das graue Kabel geht in den Innenraum. Dort hängt dann der PT1000 dran.
Die Platine mit dem AD7793 ist jetzt nicht angeschlossen.
BG
Andreas
Guten Abend,
Hat keiner eine Idee woher diese Schwankungen kommen können bzw. wie ich
diese weg bekomme? Ich mach pro Messung schon den Durchschnitt aus 7
Messungen und nehme auch den Druchschnitt mit der vorherigen Messung.
Trotzdem springt der Wert noch um 0,3 Grad.
Den Ventilator habe ich inzwischen geerdet aber wenn ich den Abschalte
springt der Wert gleich auf -800.
Danke
Andreas
Darum hatte ich nach der gesamten Schaltung gefragt.
Kondensatoren vor und nach dem 7812?
Versorung des Arduino mit einer Diode und Elko entkoppelt?
usw.....
Ohne all diese Dinge zu wissen ist Antworten nur Sterndeuten.
Hallo Hubert,
Ja der 7812 hat die Kondensatoren wo sie sein sollen. 100nF und Elko mit
220uF. Die Versorgung vom Arduino habe ich mit einer Induktivität und
einem Kondensator entkoppelt.
Ich habe heute den PT1000 durch einen 1k Widerstand ersetzt und hatte
einen Konstanten Wert. Erst wenn ich den PT1000 mit der Zuleitung
anschließe beginnt der Wert zu springen. Also fange ich mir das über die
Messleitung des PT1000 ein. Ist das normal?!
BG
Andreas
Andreas schrieb:> Hat keiner eine Idee woher diese Schwankungen kommen können
Hmm, könnte das der Grund sein, warum Elektronikhersteller ihre Geräte
mit ordentlichen Platinen herstellen und nicht als schnell
zusammengesteckten Breadboatd-Eackelkontakthaufen mit abenteuerlicher
Masseführung abliefern ?
Andreas schrieb:> Guten Abend,>> Hat keiner eine Idee woher diese Schwankungen kommen
Das gibt es verdammt viele Fehelrquellen. Angefangen von deinem
Steckbrett, über die Leitungsführung und die Schaltung, die du uns nicht
zeigst (Schaltplan)
> können bzw. wie ich> diese weg bekomme? Ich mach pro Messung schon den Durchschnitt aus 7> Messungen
7? Ist das deine Glückszahl? Die meisten Programmierer würden ein 2er
Poten nz nehmen, also eher 8.
> und nehme auch den Druchschnitt mit der vorherigen Messung.> Trotzdem springt der Wert noch um 0,3 Grad.
Meinst du wirklich, daß das relevant ist? Ich kenn mich zwar nicht mit
Brutkästen aus, würde aber mal meinen, daß die im Originla auch nicht
auf 0,1°C stabil sind.
> Den Ventilator habe ich inzwischen geerdet aber wenn ich den Abschalte> springt der Wert gleich auf -800.
Dann hast du einen massiven Fehler in deinem Aufbau, sowohl Hard- als
auch Software.
Andreas schrieb:> Hallo Hubert,>> Ja der 7812 hat die Kondensatoren wo sie sein sollen. 100nF und Elko mit> 220uF. Die Versorgung vom Arduino habe ich mit einer Induktivität und> einem Kondensator entkoppelt.
Erspar uns diese Lyrik und zeige einen GESCHEITEN Schaltplan!
Andreas schrieb:> Hab mal schnell den Schaltplan nachgezeichnet für das Netzteil. Anbei> auch die Schaltung vom AD7793.
Naja, auf den ersten Blick sieht das OK aus. Aber wie sieht denn die
Schaltung real aus? Ist das Kabel zwischen Arduino und ADC wenigstens
verdrillt? Dein Aufbau sieht SEHR fluffig aus! Woher hast du die
Schaltung für die RC-Filter am Eingang? Die Dimensionierung ist
fragwürdig. Bei 2x100 Ohm und 220nF kommt man auf 3,6kHz Grenzfrequenz.
Naja, nicht ganz falsch, aber für Temperaturmessungen immer noch sehr
viel. Da aber dein Meßwert nicht nur wtwas wackelt sonder vollkommen
unsinnige Werte annimt, vermute ich eine Störung auf dem SPI zwischen
Arduino und ADC.
Falk B. schrieb:> Naja, auf den ersten Blick sieht das OK aus. Aber wie sieht denn die> Schaltung real aus? Ist das Kabel zwischen Arduino und ADC wenigstens> verdrillt?
Welche Kabel soll ich denn verdrillen?
> Dein Aufbau sieht SEHR fluffig aus! Woher hast du die> Schaltung für die RC-Filter am Eingang? Die Dimensionierung ist> fragwürdig. Bei 2x100 Ohm und 220nF kommt man auf 3,6kHz Grenzfrequenz.
Wie weit soll die Grenzfrequen herunter? 360 Hz?
> Naja, nicht ganz falsch, aber für Temperaturmessungen immer noch sehr> viel. Da aber dein Meßwert nicht nur wtwas wackelt sonder vollkommen> unsinnige Werte annimt, vermute ich eine Störung auf dem SPI zwischen> Arduino und ADC.
Ich habe den PT1000 jetzt auf 4 Draht umgebaut mit einem geschirmten
Kabel. Gleiches Ergebnis wenn ich den Schirm nicht an Erde hänge.
Wenn ich den Schirm vom Kabel an Erde hänge.... Dann spielt der Wert
komplett verrückt! Dann springt der um 3-4 °C herum! Oder muss ich den
Schrim auf Masse hängen?
Danke
Andreas
Andreas schrieb:> Falk B. schrieb:>> Naja, auf den ersten Blick sieht das OK aus. Aber wie sieht denn die>> Schaltung real aus? Ist das Kabel zwischen Arduino und ADC wenigstens>> verdrillt?>> Welche Kabel soll ich denn verdrillen?
Hallo? Hab ich das nicht eindeutig geschrieben?
>> fragwürdig. Bei 2x100 Ohm und 220nF kommt man auf 3,6kHz Grenzfrequenz.>> Wie weit soll die Grenzfrequen herunter? 360 Hz?
Ne, lass mal. Die 3,6kHz sind fürs erste OK. Der ADC hat vermutlich noch
einen Digitalfilter, den man zuschalten kann. Das reicht.
>> unsinnige Werte annimt, vermute ich eine Störung auf dem SPI zwischen>> Arduino und ADC.>> Ich habe den PT1000 jetzt auf 4 Draht umgebaut
Das sollte man so oder so machen. Aber das hat keinen Einfluß auf
eingekoppelte Störungen, nur auf die Meßgenauigkeit.
> mit einem geschirmten> Kabel. Gleiches Ergebnis wenn ich den Schirm nicht an Erde hänge.
Blumenerde? Welche Erde denn? Und wo?
> Wenn ich den Schirm vom Kabel an Erde hänge.... Dann spielt der Wert> komplett verrückt! Dann springt der um 3-4 °C herum! Oder muss ich den> Schrim auf Masse hängen?
JA!
Welche Meßgeräte hast du? Ein Oszi? Ggf. auch nur leihweise. Da sollte
man sich erstmal die Signal auf dem SPI ansehen. Ein gern gemachter
Fehler ist der falsche SPI-Modus, kann werden Bits auf der Kante
eingelesen und die Datenübertragung wird instabil.
Wie lang ist das Kabel zwichen Arduino und ADC? Mit etwas Pech ist die
Länge bereits kritisch und es treten Reflektionen auf dem Kabel auf,
welche das Taktsignal stören und Zu Datenfehlern führen. Testweise kann
man mal 33-100Ohm In Reihe zum Signal SCK am Arduino einfügen.
Falk B. schrieb:> Andreas schrieb:>> Falk B. schrieb:>>> Naja, auf den ersten Blick sieht das OK aus. Aber wie sieht denn die>>> Schaltung real aus? Ist das Kabel zwischen Arduino und ADC wenigstens>>> verdrillt?>>>> Welche Kabel soll ich denn verdrillen?>> Hallo? Hab ich das nicht eindeutig geschrieben?
Nein, leider gar nicht. Ausser du meinst alle 6 Kabel welche die beiden
Platinen verbinden irgendwie verdrillen. Oder nur die Datebleitungen IN
und OUT miteinander. Oder +5V und Masse....
>> mit einem geschirmten>> Kabel. Gleiches Ergebnis wenn ich den Schirm nicht an Erde hänge.>> Blumenerde? Welche Erde denn? Und wo?
Das komische Grün/Gelbe aus der Steckdose halt.
>> Wenn ich den Schirm vom Kabel an Erde hänge.... Dann spielt der Wert>> komplett verrückt! Dann springt der um 3-4 °C herum! Oder muss ich den>> Schrim auf Masse hängen?>> JA!
Werd ich mal versuchen.
> Welche Meßgeräte hast du? Ein Oszi? Ggf. auch nur leihweise. Da sollte> man sich erstmal die Signal auf dem SPI ansehen. Ein gern gemachter> Fehler ist der falsche SPI-Modus, kann werden Bits auf der Kante> eingelesen und die Datenübertragung wird instabil.
SPI Mode0 ist aktiviert. Siehe Bild. Wenn ich Mode1 aktiviere am Arduino
dann bekomm ich gar nichts mehr zurück.
> Wie lang ist das Kabel zwichen Arduino und ADC? Mit etwas Pech ist die> Länge bereits kritisch und es treten Reflektionen auf dem Kabel auf,> welche das Taktsignal stören und Zu Datenfehlern führen. Testweise kann> man mal 33-100Ohm In Reihe zum Signal SCK am Arduino einfügen.
Das Kabel hat ca. 20cm.
Andreas schrieb:> Falk B. schrieb:>> Andreas schrieb:>>> Falk B. schrieb:>>>> Naja, auf den ersten Blick sieht das OK aus. Aber wie sieht denn die>>>> Schaltung real aus? Ist das Kabel zwischen Arduino und ADC wenigstens>>>> verdrillt?>>>>>> Welche Kabel soll ich denn verdrillen?>>>> Hallo? Hab ich das nicht eindeutig geschrieben?>> Nein, leider gar nicht. Ausser du meinst alle 6 Kabel welche die beiden> Platinen verbinden irgendwie verdrillen. Oder nur die Datebleitungen IN> und OUT miteinander. Oder +5V und Masse....
Natürlich meine ich die 6 Leitungen zwischen Arduino und ADC. Die
sollten NICHT als lose Einzeladern wild in der Gegend rumfliegen,
sondern kompakt als Bündel geführt werden. Im Normalfall nimmt man dazu
mehradrige Steuerleitung, im Idealfall geschirmt. Das Mindeste ist, die
Einzeldrähte alle zusammen leicht zu verdrillen.
>>> mit einem geschirmten>>> Kabel. Gleiches Ergebnis wenn ich den Schirm nicht an Erde hänge.>>>> Blumenerde? Welche Erde denn? Und wo?>> Das komische Grün/Gelbe aus der Steckdose halt.
Dort gehört die Schirmung nicht dran, sondern an die Masse des
ADC-Boards.
Wenn wir beide vom selben Kabel reden. Ich meine die Leitung zwischen
PT1000 und ADC-Eingang.
>> man mal 33-100Ohm In Reihe zum Signal SCK am Arduino einfügen.>> Das Kabel hat ca. 20cm.
Das ist eigentlich noch unkritisch, wenn die Kabel etwas verdrillt sind.
Deine Messung zeigt zwar viele Überschwinger und auch Übersprechem vom
Takt auf die Daten, aber das sind vermutlich größtenteils Meßfehler. Wie
hast du deinen Tastkopf angeschlossen? Wenn gleich man hier nicht die
ultimative HF-Ankopplung braucht, ist ein Massepunkt nah am Meßpunkt
wichtig. Sprich, wenn du am ADC mißt, muss der Tastkopf mit der
Krokodilklemme am ADC an Masse angeschlossen sein. Ist das so?
https://www.mikrocontroller.net/articles/Oszilloskop#Tastk.C3.B6pfe_richtig_benutzen
Übertreibt die "genaue" Regelung mal nicht. Geregelt wird nur auf die
Temperatur direkt am Fühler, nicht woanders. Nur bei turbulenter
Strömung (Lüfter) paßt das für den Rest einigermaßen. Ein Brutkasten hat
aber keinen Lüfter. Eine brütende Henne erzeugt auch nicht überall die
gleiche Temperatur in den Eiern, und das funktioniert trotzdem.
Unser alter Brutkasten hatte ein Kontaktthermometer und zugeschaltete
Glühbirnen als Heizung.
Werner H. schrieb:> Übertreibt die "genaue" Regelung mal nicht.
Mit geht es nicht so sehr um die Regelung. Die funktioniert ja. Ich
möchte dem Herumspringen der Werte auf den Grung gehen.
Werner H. schrieb:> in Brutkasten hat aber keinen Lüfter.
Meiner Schon
Falk B. schrieb:
> Dort gehört die Schirmung nicht dran, sondern an die Masse des> ADC-Boards. Wenn wir beide vom selben Kabel reden. Ich meine die Leitung> zwischen PT1000 und ADC-Eingang.
Hab ich jetzt auch gemacht. Ändert nix.
Falk B. schrieb:
> Natürlich meine ich die 6 Leitungen zwischen Arduino und ADC. Die> sollten NICHT als lose Einzeladern wild in der Gegend rumfliegen,> sondern kompakt als Bündel geführt werden. Im Normalfall nimmt man dazu> mehradrige Steuerleitung, im Idealfall geschirmt. Das Mindeste ist, die> Einzeldrähte alle zusammen leicht zu verdrillen.
Es ist mehr oder weniger ein Flachbandkabel. Ich habe das jetzt noch
inneinander verdreht. Ändert nix.
Falk B. schrieb:
> Das ist eigentlich noch unkritisch, wenn die Kabel etwas verdrillt sind.> Deine Messung zeigt zwar viele Überschwinger und auch Übersprechem vom> Takt auf die Daten, aber das sind vermutlich größtenteils Meßfehler. Wie> hast du deinen Tastkopf angeschlossen? Wenn gleich man hier nicht die> ultimative HF-Ankopplung braucht, ist ein Massepunkt nah am Meßpunkt> wichtig. Sprich, wenn du am ADC mißt, muss der Tastkopf mit der> Krokodilklemme am ADC an Masse angeschlossen sein. Ist das so?
Ich habe die Masse über das Protoboard abgenommen. Ich habe nochmal eine
Messung gemacht bei der ich die Tastköpfe und Masse direkt am Anschluss
der AD7793 Platine angeschlossen habe. Ich habe auch dabei die
Überschwinger drinnen.
Andreas schrieb:> Werner H. schrieb:>> Übertreibt die "genaue" Regelung mal nicht.>> Mit geht es nicht so sehr um die Regelung. Die funktioniert ja. Ich> möchte dem Herumspringen der Werte auf den Grung gehen.
Das ist sinnvoll und nötig, denn deine Schaltung hat ein deutliches
Problem.
>> ADC-Boards. Wenn wir beide vom selben Kabel reden. Ich meine die Leitung>> zwischen PT1000 und ADC-Eingang.>> Hab ich jetzt auch gemacht. Ändert nix.
Mist.
>> mehradrige Steuerleitung, im Idealfall geschirmt. Das Mindeste ist, die>> Einzeldrähte alle zusammen leicht zu verdrillen.>> Es ist mehr oder weniger ein Flachbandkabel. Ich habe das jetzt noch> inneinander verdreht. Ändert nix.
Hmm.
> Ich habe die Masse über das Protoboard abgenommen. Ich habe nochmal eine> Messung gemacht bei der ich die Tastköpfe und Masse direkt am Anschluss> der AD7793 Platine angeschlossen habe. Ich habe auch dabei die> Überschwinger drinnen.
Hmm, merkwürdig.
Bau mal deinen Aufbau aus der Kiste und leg ihn auf den Tisch, da kann
man besser ran.
"Den Ventilator habe ich inzwischen geerdet aber wenn ich den Abschalte
springt der Wert gleich auf -800."
Also nur einmalig. Da das nicht so oft passiert, genau genommen nur
einmal beim Start deiner Steuerung (richtig?), sollte das unkritisch
sein. Außerdem kann man das in der Steuerung synchronisieren. Sprich,
wenn deine Steuerung den Lüfter ein- oder aus schaltet, wird keine
Temperatur gemessen bzw. der alte Temperaturwert benutzt. Der
Schaltvorgang ist sehr kurz, da passiert nix.
Die Störung kommt vermutlich vom Relaiskontakt. Was ist das denn für ein
Lüfter? Modellbezeichnung? Datenblatt? Möglicherweise ist das ein Motor
mit Entstör- oder Phasenschieberkondensator, der beim Einschalten einen
deftigen Strompuls generiert.
Die kleineren Schwankungen könnten eine Einkopplung von 50Hz sein, die
an den Motor gehen. Da muss man mal die Kabelführung anschauen. Aber
wenn es angeblich auch mit einem geschirmten Kabel nicht geht, wo der
Schirm an der Masse vom ADC angelötet ist, dann ist das schon komisch.
Andreas schrieb:> Ich habe die Masse über das Protoboard abgenommen. Ich habe nochmal eine> Messung gemacht bei der ich die Tastköpfe und Masse direkt am Anschluss> der AD7793 Platine angeschlossen habe. Ich habe auch dabei die> Überschwinger drinnen.
Zeig mal ein Bid vom Aufbau und den Tastköpfen sowie vom Oszi.
Wenn du diesen Fertigregler genommen hättest, dann würden dich womöglich
schon die ersten Piepmätze als Daddy ansehen. Im Ernst, ohne jetzt bei
so nem Huhn mal Fieber gemessen zu haben, die werden so wie wir, auch
nicht jeden Tag dieselbe Temperatur haben. Und +0,3 spielt ohnehin keine
Rolle, das verringert sich je näher du dem Sollwert kommst, einfach weil
die Wärmequelle zwar ausgeschaltet ist, aber nachglüht. Wenn die jetzt
aber bloss 0,5° heizen muss, dann wird die gar nicht so heiss, dass sie
so viel überschwingt.
Falk B. schrieb:> Zeig mal ein Bid vom Aufbau und den Tastköpfen sowie vom Oszi.
Hallo QuickPrint3 zeigt nochmal das überschwingen. Ich habe versucht dei
Klemme so nahe wie möglich am Anschluss der AD7793 Platine anzubringen.
Wenn ich einen 100Ohm Widerstand in Serie dazu schalte dann sieht das
Signal besser aus wie in QuickPrint4 zu sehen ist.
Andreas schrieb:> Falk B. schrieb:>> Zeig mal ein Bid vom Aufbau und den Tastköpfen sowie vom Oszi.>> Hallo QuickPrint3 zeigt nochmal das überschwingen. Ich habe versucht dei> Klemme so nahe wie möglich am Anschluss der AD7793 Platine anzubringen.
Ist OK. Die Verkabelung scheint soweit auch OK zu sein.
> Wenn ich einen 100Ohm Widerstand in Serie dazu schalte dann sieht das> Signal besser aus wie in QuickPrint4 zu sehen ist.
Sieht besser aus.
Wie reagiert denn dein Aufbau in der Lage? Temperaturmessung stabil?
Noch eine Idee. Wie wird deine Schaltung mit Strom versorgt? Vermutlich
mit einem Steckernetzteil. Diese haben die "nette" Eigenschaft, kleine
Kondensatoren von um die 1nF zwischen Netzseite und der Ausgangsmasse zu
haben, um diverse EMV-Probleme zu bekämpfen. Leider entsteht dadurch ein
neues EMV-Problem, nämlich hochohmig eingekoppelte Netzspannung.
Verbinde mal die Masse deiner Schaltung am Arduino mit PE am
Schukostecker.
Falk B. schrieb:> Noch eine Idee. Wie wird deine Schaltung mit Strom versorgt?> Vermutlich> mit einem Steckernetzteil. Diese haben die "nette" Eigenschaft, kleine> Kondensatoren von um die 1nF zwischen Netzseite und der Ausgangsmasse zu> haben, um diverse EMV-Probleme zu bekämpfen. Leider entsteht dadurch ein> neues EMV-Problem, nämlich hochohmig eingekoppelte Netzspannung.> Verbinde mal die Masse deiner Schaltung am Arduino mit PE am> Schukostecker.
Ist in der Schaltung eingezeichnet. Trafo mit Gleichrichter und
Spannungsregler. Keine Kondensatoren zwischen Netzseite und Masse. Ich
habe das trotzdem mal versucht und es ergab auch keine Besserung.
Tany
> du hast irgendwie Störung am REF Eingang. Ich würde R8 weg lassen. Also> REF- mit GND.
Kann ich mal versuchen.
Ich habe jetzt aber ein neues "tolles" Problem... Ich hab inzwischen den
dritten Nano verbaut weil mir die Teile abbrennen nach 3-4 Tagen! Der
Prozessor wird sehr heiß und das "L"-Led leuchtet dauerhaft. Das LED
hängt an SCK vom SPI. Ich hab überhaupt keine Idee woher das wieder
kommt. Nimm ich den Nano aus der Schaltung und hänge ihn am USB Port an
erhalte ich Daten über die Serielle Schnittstelle. Er wird aber auch
dann sehr heiß. Ein neuer Nano in der Schaltung funktioniert wieder
einwandfrei! Stromaufnahme 29mA.
Andreas schrieb:> Ich habe jetzt aber ein neues "tolles" Problem... Ich hab inzwischen den> dritten Nano verbaut weil mir die Teile abbrennen nach 3-4 Tagen!
Dann hast du ein grundlegendes Problem.
> Der> Prozessor wird sehr heiß und das "L"-Led leuchtet dauerhaft. Das LED> hängt an SCK vom SPI. Ich hab überhaupt keine Idee woher das wieder> kommt. Nimm ich den Nano aus der Schaltung und hänge ihn am USB Port an> erhalte ich Daten über die Serielle Schnittstelle. Er wird aber auch> dann sehr heiß. Ein neuer Nano in der Schaltung funktioniert wieder> einwandfrei! Stromaufnahme 29mA.
Mulder, übernehmen Sie!
Hubert G. schrieb:> Parallel zum ADC Eingang einen 100n Kondensator nach GND schalten.
100nF und 1kΩ ergibt eine Zeitkonstante von 100µs.
Da wird der ADC von der beruhigenden Wirkung deines Kondensators
bestimmt "schwer" beeindruckt sein ;-)
Wolfgang schrieb:> 100nF und 1kΩ ergibt eine Zeitkonstante von 100µs.> Da wird der ADC von der beruhigenden Wirkung deines Kondensators> bestimmt "schwer" beeindruckt sein ;-)
Das wird er. Denn es geht NICHT um den Tiefpass, welcher durch RC
gebildet wird, sondern um einen Ladungspuffer für die Sample & Hold
Stufe im ADC. Denn die will einen ~5pF(?) Kondensator in 1-2 ADC-Takten
aufladen. mit 100nF AM ADC-Pin steht genügend Ladung niederimpedant zur
Verfügung, ohne daß es zu nennenswerten Spannungseinbrüchen kömmt.