12 Thermoelemente an Arduino Mega

Hallo zusammen,

ich bräuchte Ratschläge von euch bezüglich Thermoelementen.

Und zwar geht es darum das ich neben dem Strom der über meinen Heizelementen abfließt auch noch die Temperatur überwachen will.

Ich habe einen Mega2560 dieser hat ja nur 16 analoge Eingänge und ich habe ja 24 analoge Signale, summa sumarum fehlen mir dann 8 Eingänge...

Gibt es Multiplexer die ihr mir empfehlen könntet (wenn ja wie schließe ich diese mit dem Arduino zusammen und was müsste ich im Code dazuu beachten) oder welche Möglichkeiten gibt es denn noch, alle meine Signale zu verarbeiten?

Wäre über Hilfe sehr dankbar :slight_smile:

Grüße

Tobias

Du kannst Thermoelemente nicht direkt mit dem Arduino einlesen.

Dazu brauchts ein spezielles Modul, das auch die Kaltstellenmessung mit übernimmmt.

thermocouple-amplifier

TW1993:
Und zwar geht es darum das ich neben dem Strom der über meinen Heizelementen abfließt auch noch die Temperatur überwachen will.

Ich fände zunächst interessant, um was für einen Aufbau es überhaupt geht. Hast Du schon überlegt, ob es möglich ist, Sensoren einzusparen oder zusammenzulegen? Existiert ein Schaltplan, den Du zeigen kannst?

TW1993:
... oder welche Möglichkeiten gibt es denn noch, alle meine Signale zu verarbeiten?

Du könntest einen zusätzlichen Arduino nehmen und die beiden via serieller Schnittstelle miteinander plaudern lassen. Wie sieht das „Startverhalten“ der Sensoren aus? Brauchen die Zeit zum Hochfahren oder einpegeln? Müssen die ständig aktiv sein?

Sorry, ich habe nur eine zusätzliche Möglichkeit geliefert und so viele Fragen ...

Gruß

Gregor

Du kannst Thermoelemente nicht direkt mit dem Arduino einlesen.

Dazu brauchts ein spezielles Modul, das auch die Kaltstellenmessung mit übernimmmt.

ok dieses Modul hab ich auch schon gesehen, aber gleich 12 davon? ^^

Ich fände zunächst interessant, um was für einen Aufbau es überhaupt geht. Hast Du schon überlegt, ob es möglich ist, Sensoren einzusparen oder zusammenzulegen? Existiert ein Schaltplan, den Du zeigen kannst?

Ich steuere mittels PWM Heizelemente an und muss die Leistung dieser dann auch messen. Um später die Leistung zu messen habe ich einen Shunt mit OP vor die Last geschaltet (High-Side-Messung; vor der Last da ich eine Kurzschlussüberwachung brauche und dies laut Recherche dann so gemacht werden sollte, aber werde auch gerne eines besseren belehrt). Durch einen Differenzverstärker gebe ich den kleinen Spannungsabfall über den Messwiderstand auf einen analogen Eingang.
Brauch ich hier etwa auch so ein Modul?

An meine Heizelemente kommen dann die Thermoelemente um die Temperatur zu überwachen.

Du könntest einen zusätzlichen Arduino nehmen und die beiden via serieller Schnittstelle miteinander plaudern lassen. Wie sieht das „Startverhalten" der Sensoren aus? Brauchen die Zeit zum Hochfahren oder einpegeln? Müssen die ständig aktiv sein?

Sorry, ich habe nur eine zusätzliche Möglichkeit geliefert und so viele Fragen ...

Ist schon ok, ich habe die für mich wesentlichen Dinge dargestellt und falls da noch Fragen aufkommen beantworte ich diese gerne.

Würde das schon lieber gerne auf einem Arduino laufen haben wenn ich ehrlich bin, denn mit der Kommunikation zwischen zwei Arduinos habe ich mich noch nicht auseinandergesetzt.

Nein die Sensoren brauchen keine Zeit zum Hochfahren und ja Sie sollten ständig aktiv sein.

Schaltplan mache ich gerade und lade ihn so schnell wie möglich hoch

Kommst du nicht mit Platin Sensoren aus?

TW1993:
Würde das schon lieber gerne auf einem Arduino laufen haben wenn ich ehrlich bin, denn mit der Kommunikation zwischen zwei Arduinos habe ich mich noch nicht auseinandergesetzt.

Hol' das am besten nach, bevor Du Dich in Multiplexer-Abenteuer stürzt. Evtl. ist der Lernaufwand erheblich geringer. Zudem wäre das ein programmierbarer Multiplexer-Ersatz.

Gruß

Gregor

TW1993:
ok dieses Modul hab ich auch schon gesehen, aber gleich 12 davon? ^^

Ich fürchte ja.

Bei Thermoelementen gehts um millivolt. Und, vor allem, du darfst keine fremden Materialien dazwischen haben, weil jede Übergangsstelle wieder Fremdspannungen erzeugt.

Die gibt es analog, meist mit dem AD849x, dann werden sei an den AD-eingang des Arduino angeschlossen, du brauchst aber 12 AD. Die könnte man aber multiplexen.

oder auch digital z.b. mit dem MAX31855, die kann man Seriell auslesen. Das ist deutlich einfacher weniger fehlerbehaftet.

Um welche Temperaturen geht es denn? Kleiner 125°C? dann wäre der DS18B20 eine Alternative.

Welche Leitungslängen hast du zu den Temperatursensoren?
Ich denke wie der Vorredner an die DS18B20 Sensoren. Damit brauchst du einen Pin für alle 12 Sesoren.

combie:
Kommst du nicht mit Platin Sensoren aus?

Ich nehme an du meinst PT100/1000 ^^. Habe Typ K hier und würde die auch gerne benutzen :slight_smile:

gregorss:
Hol' das am besten nach, bevor Du Dich in Multiplexer-Abenteuer stürzt. Evtl. ist der Lernaufwand erheblich geringer. Zudem wäre das ein programmierbarer Multiplexer-Ersatz.

Ich schaue mir das mal an, danke für den Tipp.

guntherb:
Ich fürchte ja.

Bei Thermoelementen gehts um millivolt. Und, vor allem, du darfst keine fremden Materialien dazwischen haben, weil jede Übergangsstelle wieder Fremdspannungen erzeugt.

Die gibt es analog, meist mit dem AD849x, dann werden sei an den AD-eingang des Arduino angeschlossen, du brauchst aber 12 AD. Die könnte man aber multiplexen.

oder auch digital z.b. mit dem MAX31855, die kann man Seriell auslesen. Das ist deutlich einfacher weniger fehlerbehaftet.

Um welche Temparturen geht es denn? Kleiner 125°C? dann wäre der DS18B20 eine Alternative.

Also wenn ich nach dir gehe dann brauche ich :

12 mal ein solches Modul für mein Typ K

Das mit dem AD849x liest sich für mich nicht schlecht, müsste diesen dann einfach an meine Versorgunsspannung meiner Heizemente noch anschließen und den OUT-Ausgang dann an meinen analogen Ausgang hängen oder verstehe ich das falsch?

Wenn ich es aber richtig verstehe beim MAX31855 dann geht das hier bloß mit bis zu 8 Typ K und brauche ja 4 mehr noch

Temperaturbereich erstreckt sich von 20°C - 250°C

Franz54:
Welche Leitungslängen hast du zu den Temperatursensoren?
Ich denke wie der Vorredner an die DS18B20 Sensoren. Damit brauchst du einen Pin für alle 12 Sesoren.

Puh schwer zusagen, der Aufbau befindet sich ja später im Windkanal. Ich will jetzt nichts falsches sagen. ich gehe von 1-1.5m aus aber kann auch weniger oder mehr sein ...
Darüber habe ich mir leider keine Gedanken gemacht sorry ...

habe da etwas gefunden ist ein Aufbau einer Lötstation, sehe hier keinen solchen Baustein... warum funktioniert das hier so und ohne Baustein?Lötstation

Hier mal der Schaltplan nur mit HE geht das denn so durch?

TW1993:
Hier mal der Schaltplan nur mit HE geht das denn so durch?

Also von mir bekommst Du dafür keinen Punktabzug. Ist vielleicht auch ein gutes Beispiel für den Einsatz eines OPs. Mich irritiert nur, dass der Shunt im Vergleich zu R2(*) ziemlich klein ist (< 1%). Aber da ich noch überhaupt keine Ahnung von OPs habe ...

Gruß

Gregor

habe da etwas gefunden ist ein Aufbau einer Lötstation, sehe hier keinen solchen Baustein... warum funktioniert das hier so und ohne Baustein?Lötstation

Überlesen, dass da ein OpAmp verwendet wird?
Je nach gewollter Genauigkeit kann das so reichen.

Ja, ich meinte PT1000, denn die kannst du recht einfach verwenden.
Und einen 2ten Arduino per I2C als ADC Portexpander zu verwenden, ist jetzt auch keine Raketentechnik.

Anosnten gibts noch viele verschiedene I2C oder SPI ADC, welche erheblich genauer sind, als der AVR ADC.

Auch gibt es verschiedene Analog Multiplexer.

TW1993:
Hier mal der Schaltplan nur mit HE geht das denn so durch?

Ich denke nicht!
Das wird versagen.
Zumindest bin ich mir da recht sicher.

Begründung:

Die OP Versorgung liegt bei 5V
An den + und - Eingängen liegt 24V an.

Ohne ins Datenblatt geschaut zu haben, möchte ich mal sagen, dass das weit außerhalb der Spezifikation für einen sichern Betrieb liegt.

gregorss:
Also von mir bekommst Du dafür keinen Punktabzug. Ist vielleicht auch ein gutes Beispiel für den Einsatz eines OPs. Mich irritiert nur, dass der Shunt im Vergleich zu R2(*) ziemlich klein ist (< 1%). Aber da ich noch überhaupt keine Ahnung von OPs habe ...

Gruß

Gregor

laut Literatur muss ich den Shunt viel kleiner wählen als die anderen Widerstände. habe dazu auch ein Excel-Sheet mit dem ich das berechnet habe.

combie:
Überlesen, dass da ein OpAmp verwendet wird?
Je nach gewollter Genauigkeit kann das so reichen.

Ja, ich meinte PT1000, denn die kannst du recht einfach verwenden.
Und einen 2ten Arduino per I2C als ADC Portexpander zu verwenden, ist jetzt auch keine Raketentechnik.

Anosnten gibts noch viele verschiedene I2C oder SPI ADC, welche erheblich genauer sind, als der AVR ADC.

Auch gibt es verschiedene Analog Multiplexer.

Also ich bin der Meinung das ich jetzt mir 20 solcher MAX6675 bestelle (bei mir geht gerne was kaputt wenn ich teste ^^) und versuche das dann mit einem Thermoelement zum laufen zu bringen und mich dann hoch zu arbeiten.

Das mit dem SPI würde ich Stand jetzt bevorzugen mit dem MAX6675 :slight_smile:

combie:
Ich denke nicht!
Das wird versagen.
Zumindest bin ich mir da recht sicher.

Begründung:

Die OP Versorgung liegt bei 5V
An den + und - Eingängen liegt 24V an.

Ohne ins Datenblatt geschaut zu haben, möchte ich mal sagen, dass das weit außerhalb der Spezifikation für einen sichern Betrieb liegt.

Laut Datenblatt muss kann ich Vdd an 5 V legen oder versteh ich das etwas falsch?

Wenn ich einen anderen OP wähle geht das dann ? :neutral_face:

MCP6H01.pdf (1.02 MB)

Laut Datenblatt muss kann ich Vdd an 5 V legen oder versteh ich das etwas falsch?

Vollkommen richtig erkannt!

Aber dann hast du aufgehört das Datenblatt und mein Posting zu lesen... :frowning:

Denn es gibt ja noch die: Absolute Maximum Ratings †
Und da...

Analog Inputs (VIN+, VIN-)††.............VSS – 1.0V to VDD + 1.0V

... steht klar, dass du Vin mit maximal 6V beaufschlagen darfst.

Und, was machst du?
Du klemmst da 24V dran.

combie:
Vollkommen richtig erkannt!

Aber dann hast du aufgehört das Datenblatt und mein Posting zu lesen... :frowning:

Denn es gibt ja noch die: Absolute Maximum Ratings †
Und da...... steht klar, dass du Vin mit maximal 6V beaufschlagen darfst.

Und, was machst du?
Du klemmst da 24V dran.

Mea culpa!

Also einen OP suchen der die 24V abkann und diese Sache läuft zumindest schon mal dann. Korrigiere mich bitte wenn ich wieder zu viel Risiko gehe ^^

bzw. hast du eine Empfehlung zwecks OP ?

TW1993:
Also einen OP suchen der die 24V abkann und diese Sache läuft zumindest schon mal dann. Korrigiere mich bitte wenn ich wieder zu viel Risiko gehe ^^

Eine Alternative könnte sein, die Eingänge des OPs über einen Spannungsteiler an die 24 V anzuschließen. Falls Platz, Geld und auch sonst alles Nötige verfügbar ist.

Gruß

Gregor

Du könntest einen HighSide Switch aus der BTS/BTT Reihe verwenden.
Viele haben einen Sense Anschluss, den man sogar auswerten kann.

Hier mal einen blind aus der Familie ausgewählt: https://www.infineon.com/dgdl/Infineon-BTS5014SDA-DS-v01_01-EN.pdf?fileId=5546d4625a888733015aa42c708e1142

Habe diesen hier ins Auge gefasst:

OP

Krieg ich den TÜV dafür, denn laut Beschreibung auf der Seite sollte er die 24V abkönnen

gibt es bei diesem noch was zu beachten?

Ganz generelle Verständnis-Frage: wenn der Heizstromkreis potentialgetrennt wäre, könnte man diese Differenzverstärker-Schaltung ohne weiteres verwenden, richtig?

Müsste man allerdings die Ansteuerung des MOSFET auch per Optokoppler entkoppeln, oder wie ginge das sonst?

Was für ein Heizelement (ca. Leistung) ist das, was für ein MOSFET (finde keinen IRFFP064N)?
Damit der Shunt nicht ein wesentlicher Teil der Heizung wäre, rate ich mal, du meinst 25 mOhm ?