Hallo liebe Community, ich muss im Rahmen meiner Ausbildung eine PID-Schaltung einer Vakuumkammer bauen. Das Thermoelement ist schon vorhanden (Typ K) und eingebaut, ein Labornetzteil (6261B; ein relativ altes Teil) ist ebenfalls vorhanden und auch eingestellt, um es mit einer externen Spannungsquelle steuern zu können. Dieses Netzteil steuert anschließend ein Heizelement (ebenfalls eingebaut). Ich habe mich für einen Arduino Nano Every entschieden als Mikrokontroller, da dieser leicht zu programmieren ist sowie auch Steckbrett kompatibel ist. Ich habe mein verwendetes Schaltbild angehängt sowie den relevanten Ausschnitt aus der Bedienungsanleitung des Netzteils. Ich messe das Thermoelement mittels eines MAX31856, welcher die benötigte genaue Auflösung besitzt. Das Messen des Signales nur mit diesem Sensor im Steckbrett funktioniert. Wenn ich nun aber meinen DAC (ein MCP4725) auf das Steckbrett dazu stecke führt dies dazu das mein MAX31856 einen zu hohen und konstanten Wert (ansonsten fluktuiert das Signal um ca. +- 1xAuflösung) ausgibt (in etwa 300°C anstatt den normalen ~25°C). Ich habe schon mit dem Multimeter durchgemessen und vermute das der Grund an unterschiedlichen Ground-Spannungen liegt (Wenn ich die beiden Ground messe ist die Spannung ca. 1V). Habe auch probiert den Ground nur an den DAC zu hängen und diesen als Referenz Ground zu nehmen, was jedoch wieder in einen zu hohen Wert mündet. Ich wollte nun fragen ob ihr eventuell eine Lösung für mein Problem wisst. Ein anderes Netzteil kommt nicht in Frage, jedoch bin ich bei der Schaltung sehr flexibel. Meine Überlegung wäre diese beiden Breakout Boards galvanisch zu trennen mittels zb. eines Optokopplers jedoch weiß ich nicht wie sich das auf das I2C Signal des DAC auswirkt. Auch der Grund wieso dies auftritt wäre interessant zu erfahren falls dies irgendwer weiß. :) Für die PID-Steuerung selbst gibt es genügend Literatur das ich da keine Probleme haben werde meiner Meinung nach.
> Meine Überlegung wäre diese beiden Breakout > Boards galvanisch zu trennen mittels zb. eines Optokopplers jedoch weiß > ich nicht wie sich das auf das I2C Signal des DAC auswirkt. Gehe auf jedenfall den Weg das Thermoelement potentialfrei zu machen. Du willst da Mikrovolt messen und hast jede Menge Stoerungen durch die Heizung und lange Leitungen. Selbst kleinste Kriechstroeme sind da bereits uebel. Vanye
Danke für die schnelle Antwort. Also reicht ein Optokoppler oder gibt es andere bessere Varianten? Bin leider noch etwas unerfahren mit dem Galvanischen Trennen bzw. deren Möglichkeiten. Und würde ich dann nur den Ground vom Rest trennen oder soll ich auch die 5V mit trennen?
Hi, hast du das Board von Adafruit (MAX31856)? Wenn ja, dieses Board hat einen eigenen Spannungsregler auf der Platine aber keinen Pegelwandler, wenn ich es richtig sehe. Wenn du die Platine mit 5V versorgst, arbeitet der MAX31856 trotzdem nur mit 3 / 3,3V. Wenn ich es richtig sehe, arbeitet der Nano Every mit 5V. Ich würde einen Pegelwandler vorsehen zwischen den beiden Boards. Einger bekommt seine Versorgung vom Nano und der andere vom Adafruit-Board (Vout). Pegelwandler kann man auch mit zwei Widerständen und einem MOSFET realisieren. Dann würde ich alle Boards mit ordentlicher Verdrahtung getrennt zur Spannungsversorgung führen (Sternverdrahtung). Dann gibt wenig Probleme mit einer Spannungsverschiebung. Wenn das Board mit dem DAC mehr Strom zieht, ist nur seine Leitung davon betroffen und nicht die der anderen. Vielleicht könnte man auch Serienwiderstände in den Signalleitungen einplanen (CLK, SDI, SDO). Da kann man dann auch leichter dran messen, ob es einen großartigen Spannungsabfall gibt. Aus der Hüfte geschossen, würde ich mit 33 Ohm bis 100 Ohm mal testen. Man kann vielleicht auch noch je einen Elko in der Nähe der Boards vorsehen. Grüße Daniel
Clemens B. schrieb: > Ich habe mein verwendetes Schaltbild angehängt Wo? Das, was du da angehängt hast, ist eine Fritzing Steckanleitung. Ein Schaltplan hat andere Ansprüche und sieht deshalb auch ganz anders aus. https://de.wikipedia.org/wiki/Schaltplan
Wer einen Schaltplan lesen kann versteht auch den "Fritzing"-Plan.
@Daniel Ja genau hab das Board von Adafruit. Ich verstehe allerdings nicht ganz wie dies mein Problem beheben soll da ja bei den beiden Ground Signalen eine Spannung anliegt. Ich könnte allerdings auch einfach den 3.3V Ausgang des Nano Everys verwenden um den MAX31856 zu betreiben dann bräuchte ich keinen Pegelwandler und hätte auch eine Trennung der Betriebsspannungen der beiden Boards. Bezüglich der Sternverdrahtung, ich habe allerdings nur eine Spannungsquelle welcher der Arduino Nano Every ist, welcher die Spannung über das USB-Signal eines PCs bezieht (dieser handelt nimmt die Daten auf und verarbeitet diese anschließend weiter). Weswegen ich nicht weiß wie eine Sternverdrahtung hier helfen könnte. Danke für den Tipp mit den Widerständen werde ich das nächste mal probieren wenn ich wieder im Labor bin! @Rainer Dachte das der Fritzing Plan mehr Aussagekraft hat, weswegen ich den angehängt habe. Habe nun den wirklichen Schaltplan angehängt. (Anmerkung: Es fehlen die Verbindungen von dem Thermoelement diese sind natürlich in der richtigen Polarität an den THERM-/THERM+ angeschlossen, sowie die Verbindung zum Labornetzteil welches an VOUT und GND das DAC angeschlossen ist. Das meinte ich mit mehr Aussagekraft :) )
Heizungssteuerungen sind extrem träge, da regelt man nicht mehr analog, sondern über den Tastgrad. Man schaltet also periodisch die Heizung voll an und aus. Zum Messen bietet sich dann der Zeitpunkt kurz vor dem wieder Einschalten an. Das Schaltsignal kann man über ein SSR galvanisch vom Meßkreis trennen. Da die Thermospannung nur wenige µV beträgt, ist der Meßkreis sauempfindlich gegen Störungen. Der Gleichtakteingangsbereich des Meß-ICs ist penibel einzuhalten. Typisch ist der Sensor 2-polig herausgeführt und ein Pol wird dann direkt am Meß-IC geerdet. Vorzugsweise nimmt man geschirmte Ausgleichsleitung bis zum Sensor und überall Typ-K Steckverbinder, die gibt es auch als Vakuumdurchführung. 1kW Heizleistung im Vakuum ist schon ne Hausnummer, man hat ja nur Strahlungsverluste. Wieviel 1000°C sind denn gefordert?
Armin X. schrieb: > Wer einen Schaltplan lesen kann versteht auch den "Fritzing"-Plan. Ist die Aussage auch umkehrbar? Es geht nicht um Verstehen, sondern um einen gewissen Standard bei der Ausbildung. Ich würde mich jedenfalls nicht trauen, so etwas als Dokumentation einer Schaltung abzugeben.
Clemens B. schrieb: > Wenn ich nun aber meinen DAC (ein MCP4725) auf > das Steckbrett dazu stecke führt dies dazu das mein MAX31856 einen zu > hohen und konstanten Wert (ansonsten fluktuiert das Signal um ca. +- > 1xAuflösung) ausgibt (in etwa 300°C anstatt den normalen ~25°C). Ich > habe schon mit dem Multimeter durchgemessen und vermute das der Grund an > unterschiedlichen Ground-Spannungen liegt Es darf keine unterschiedlichen Ground-Spannungen geben. Beide Leitungen des Thermoelements dürfen keinen Kontakt mit irgendwas haben, auseer den Klemmen des Mess-Boards. Es darf eine Abschirmung ums Kabel liegen die mit GND=Masse verbunden ist, aber die kontaktiert keinen Thermoelementdraht- Clemens B. schrieb: > Also reicht ein Optokoppler Häh ? Es reicht, die Masse Verbindung eines Drahtes deines Thermoelements aufzuheben. Übrigens: Vakuum ist ein schlechter Wärmeleiter, sowohl zum Messen für das Thermoelement als auch für das Heizen mittels Elektroheizung. Ich ziehe deinen ganzen Versuchsaufbau in Frage, wenn nicht Heizung und Thermoelement an demselben Metallklotz im Vakuum angebracht sind.
Michael B. schrieb: > Übrigens: Vakuum ist ein schlechter Wärmeleiter, sowohl zum Messen für > das Thermoelement als auch für das Heizen mittels Elektroheizung. Das hast du hübsch ausgedrückt. Echtes Vakuum leitet die Wärme ÜBERHAUPT nicht. Energieübertragung findet dort nur durch Strahlungsaustausch statt. Manche Leute bezeichnen allerdings schon leicht abgesenkten Luftdruck als "Vakuum".
@Peter Danke für den Input, die eigentliche Messaufbau ist schon älter (~ende 90er) und ich sollte so möglich wie wenig daran verändern. Allerdings könnte ich diesen Input schon einbringen, ob ich ihn auch durchführen darf steht auf einem anderen Blatt. Der Sensor ist 2 Polig herangeführt mit einem Abgeschirmten Kabel, Steckverbinder vom Typ K schon eingebaut. Das Netzteil wird voraussichtlich nicht vollständig ausgenutzt, dh die Heizleistung beträgt nie 1kW, jedoch kann ich nicht genau sagen wieviel sie betragen wird dies muss erst ermittelt werden wenn die Steuerung funktioniert. Es soll jedoch eine Temperatur von ~700°C erreicht werden. @Michael Also die beiden Thermoelement Kabel sind nur an den Klemmen des Boards angeschlossen. Und die Abschirmung liegt an Ground an. Dadurch das sich aber der Ground vom Netzteil her anderer Spannung liegt als der vom Arduino Nano Every, vermute ich das dies zu Problemen führt. Zumindest sobald ich den Ground anschließe, führt dies zu dem oben beschriebenen unerwünschten Verhalten. Das Vakuum ein schlechter Wärmeleiter ist ist mir durchaus bewusst, zur Info dieser Aufbau wird/wurde verwendet um ein Thermodesoptionsspektrum aufzunehmen, der Aufbau stammt nicht von mir sondern ist mir vorgegeben worden. Wie schon erwähnt habe ich darauf keinen Einfluss. Es ist ein UHV Anlage mit einer freien Weglänge von in etwa 10^5m. Die Temperatur wird an einer Düse gemessen welche sich in der Anlage befindet somit ist die Wärmeleiteigenschaft des Vakuums irrelevant! Geheizt wird die zu ermittelnde Probe bzw. das Gehäuse in welchen sich diese befindet, wo auch die Düse verbunden ist. Also sind die beiden am gleichen Metallklotz angebracht. Allerdings stellt sich mir die Frage wie ich die Masse Verbindung aufheben kann diese sind ja direkt an das Board angeschlossen. @Rainer Es gibt mehrere Klassen von Vakuum, also Vakuum in diesem Sinne ist nicht als absolut Teilchenloser Raum zu verstehen (gibt es auch nicht!). Und leicht abgesenkten Luftdruck (bis ca. 1mbar) bezeichnet man als Grobvakuum. Also ist die Bezeichnung Vakuum schon korrekt.
:
Bearbeitet durch User
Clemens B. schrieb: > Es gibt mehrere Klassen von Vakuum Wie wahr https://www.chemie.de/lexikon/Mittlere_freie_Wegl%C3%A4nge.html 10^5m ist doch schon mal eine Aussage ;-)
:
Bearbeitet durch User
> Also reicht ein Optokoppler oder gibt es andere bessere Varianten?
Optokoppler geht, aber heute nimmt man auch gerne magnetische oder
kapazitive koppler. Also Adum von AD oder ISO7041(oder andere) von TI.
Vanye
Vanye R. schrieb: >> Also reicht ein Optokoppler oder gibt es andere bessere Varianten? > > Optokoppler geht, aber heute nimmt man auch gerne magnetische oder > kapazitive koppler. Also Adum von AD oder ISO7041(oder andere) von TI. > > Vanye Danke für deine Hilfe! Ich wüsste aber noch gerne wie man dies genau bewerkstelligt das erschließt sich mir noch nicht ganz. Wie schon gesagt habe noch nie mit sowas zu tun gehabt. Mein Physik Studium ist mehr auf der theoretischen Seite aufgebaut. Also wo konkret muss ich den die Galvanische Trennung einbauen um das Thermoelement Potentialfrei zu machen?
Clemens B. schrieb: > Wenn ich nun aber meinen DAC (ein MCP4725) auf > das Steckbrett dazu stecke führt dies dazu das mein MAX31856 einen zu > hohen und konstanten Wert (ansonsten fluktuiert das Signal um ca. +- > 1xAuflösung) ausgibt (in etwa 300°C anstatt den normalen ~25°C). Wird der DAC in der Software angesteuert? Was passiert wenn du die Funktionen auskommentierst? Ich vermute ein Softwareproblem bzw. hängen der Kommunikation mit dem DAC. Die Pullupwiderstände für den I2C-Bus sind auf dem MCP4725-Board? Uwe
Clemens B. schrieb: > Habe nun den wirklichen Schaltplan angehängt. Ich sehe im Schaltplan nur ein GND. Ist der angeschlossene PC, und also dessen USB-Port, geerdet? Oder benutzt ihr ein Notebook mit Netzteilstecker ohne Erdung? LG, Sebastian
> Also wo konkret muss ich den die Galvanische Trennung > einbauen um das Thermoelement Potentialfrei zu machen? DA wo es fuer dich am einfachsten ist. :-) Also wohl in die SPI-Leitungen. Ausserdem musst du natuerlich noch die Stromversorgung trennen. Da bietet sich ein DCDC-Wandler an wie du ihn fertig kaufen kannst. Kaufe da nicht zu billig sondern von einem Hersteller der dir in einem Datenblatt zeigt wie man das Dingen filtert und entstoert. Des weiteren haben die Teile ueblicherweise keine Regelung der Ausgangsspannung, also brauchst du noch einen LowDrop Regler auf deine Sollspannung. Natuerlich wirst du Datenblaetter lesen: https://www.ti.com/lit/ds/symlink/iso7041.pdf Es wird fuer dich ohne Bedeutung sein, aber du koenntest mit Freude zur Kenntnis nehmen das es mittlerweile eine Reihe von Certificaten gibt: https://www.ti.com/product/ISO7041#tech-docs Und es gibt sogar Module mit denen du spielen koenntest: https://www.ti.com/lit/ug/sllu331/sllu331.pdf DCDC koennte dann vielleicht sowas sein: https://www.mouser.de/datasheet/2/281/1/kdc_nte-2940969.pdf Beachte das Filter auf Seite5 Vielleicht auch mal das hier lesen: https://www.ti.com/lit/an/snva871/snva871.pdf Hier noch ein paar Grundlagen: https://emcfastpass.com/wp-content/uploads/2017/04/DC_DC_Converters_Output_Noise.pdf Beachte besonders Ct damit kann man an manchen dieser DCDC Bausteine ein mittleres Wunder bewirken. https://electronics.stackexchange.com/questions/516154/isolated-dc-dc-coupling-capacitor-location Vanye
Clemens B. schrieb: > Also wo konkret muss ich den die Galvanische Trennung einbauen um das > Thermoelement Potentialfrei Dein Thermoelement ist potentialfrei, da ja deiner Beschreibung nach angeblich kein Sensordraht mit Masse (dem Gehäuse, der Abschirmung, dem Metallklotz) elektrisch verbunden ist. Dein 6261B ist wohl auch potentialfrei, da GND als extra Kontakt unbelegt, eingezeichnet ist. Wir wissen nicht, ob dein Heizelement potentialfrei ist, und wir wissen nicht, wo die Versorgung des Arduino herkommt. Es kann doch wohl nicht so schwer sein zu ermitteln wo es unterschiedliche GND gibt die erst durch den uC verbunden werden.
Uwe B. schrieb: > Wird der DAC in der Software angesteuert? Was passiert wenn du die > Funktionen auskommentierst? > Ich vermute ein Softwareproblem bzw. hängen der Kommunikation mit dem > DAC. > Die Pullupwiderstände für den I2C-Bus sind auf dem MCP4725-Board? Ja der wird in der Software angesteuert, habe dies schon probiert und das Problem bleibt bestehen. Die Pullupwiderstände sind auf dem MCP4725 Board. Sebastian W. schrieb: > Ist der angeschlossene PC, und also dessen USB-Port, geerdet? Oder > benutzt ihr ein Notebook mit Netzteilstecker ohne Erdung? Ich benutze ein Notebook mit Netzteilstecker welches mit Schuko Stecker ist, also müsste es meines Erachtens geerdet sein. Vanye R. schrieb: > Also wohl in die SPI-Leitungen. Ausserdem musst du natuerlich noch > die Stromversorgung trennen. Da bietet sich ein DCDC-Wandler an > wie du ihn fertig kaufen kannst. Kaufe da nicht zu billig sondern > von einem Hersteller der dir in einem Datenblatt zeigt wie > man das Dingen filtert und entstoert. Des weiteren haben die > Teile ueblicherweise keine Regelung der Ausgangsspannung, also > brauchst du noch einen LowDrop Regler auf deine Sollspannung. Danke für die ausführliche Beschreibung. Werde dies ausprobieren sobald ich das nächste mal im Labor bin. Hoffe das dies dann das erwünschte Ergebnis bringt :) Michael B. schrieb: > Wir wissen nicht, ob dein Heizelement potentialfrei ist, und wir wissen > nicht, wo die Versorgung des Arduino herkommt. > > Es kann doch wohl nicht so schwer sein zu ermitteln wo es > unterschiedliche GND gibt die erst durch den uC verbunden werden. Die Versorgung des Arduino ist über die USB Büchse welche an einem Laptop angeschlossen ist. Die Unterschiedlichen Grounds sind bekannt und von dem Arduino (also USB von Laptop) und der S- von dem 6261B diesen muss ich ja an den Ground vom MCP4725 hängen. Danke an euch alle für euer Bemühen! :)
Ich habe das Problem identifiziert, es ist der MAX31856 welcher bei gewissen Umständen sozusagen "hängen" bleibt. Beschreibung unter anderem in diesem https://forums.adafruit.com/viewtopic.php?p=843331 Post zu finden. Ein reinitialisieren hat bei mir nichts gebracht da er sofort wieder "hängen" blieb. Somit werde ich diesen ersetzen durch etwas anderes. Falls jemand das gleiche Problem hat, das "hängen" bleiben kann man ermitteln in dem man das Thermoelement absteckt, falls dann noch immer der gleiche Wert übermittelt wird anstatt eines "thermocouple open" Fehlers, ist dieser "hängen" geblieben.
Clemens B. schrieb: > Ich habe das Problem identifiziert, es ist der MAX31856 welcher bei > gewissen Umständen sozusagen "hängen" bleibt. Scheint eine Mimose zu sein, der Käfer. Hier gibt es etwas Info, kommen Ferritperlen drin vor. https://www.eevblog.com/forum/projects/max31856-thermocouple-amplifier/ Schade eigentlich. Uwe
> Ich habe das Problem identifiziert, es ist der MAX31856 welcher bei > gewissen Umständen sozusagen "hängen" bleibt. Seufz. Ein Thermoelement was ist das? Ein Kurzschluss aus zwei Draehten die ein paar uV liefern. Wie kann das irgendein Problem verursachen? Ausser natuerlich du bringst die Eingangstufe in den Latchup, z.B weil du ein Potentialproblem hast. .-) Vanye
Uwe B. schrieb: > Scheint eine Mimose zu sein, der Käfer. > Hier gibt es etwas Info, kommen Ferritperlen drin vor. > https://www.eevblog.com/forum/projects/max31856-thermocouple-amplifier/ Danke für den Input. Schaut vielversprechend aus zumindest in der Theorie und ist sicherlich einen Versuch wert! Vanye R. schrieb: > Seufz. Ein Thermoelement was ist das? Ein Kurzschluss aus zwei Draehten > die ein paar uV liefern. Wie kann das irgendein Problem verursachen? > Ausser natuerlich du bringst die Eingangstufe in den Latchup, z.B weil > du ein Potentialproblem hast. .-) Scheint nach dem Post oben und anderen Posts ein häufig auftretendes Problem mit diesem IC/BOB zu sein, somit wohl doch öfter ein Problem :)
> Scheint nach dem Post oben und anderen Posts ein häufig auftretendes > Problem mit diesem IC/BOB zu sein, somit wohl doch öfter ein Problem :) Es gabe natuerlich noch die Moeglichkeit eines Software problems. Irgendjemand programmiert etwas falsch und das hat dann solche Folgen. Aber wieso sollte das der Fall sein? Muessten dann ja ganz viele Leute falsch machen. Dss ist statistisch unrealistisch. Ausser wir wuerden in einer Welt leben wo Entwickler keine Datenblaetter lesen und nur den Sourcecode anderer Leute kopieren. Also sehr unrealistisch. Vanye
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.