Hallo, ich bin neu hier und hoffe, dass mir wer helfen kann.Ich habe bezüglich meines Praxissemesters vom Studium die Aufgabe eine sehr genaue Temperaturregelung (auf 0,01°C genau) mit einem Microcontroller zu bauen. Ich habe nicht sehr viel Erfahrung mit Microcontrollern! Das Problem beginnt schon am Anfang: Die Wahl des richtigen Microcontrollers. Es sollen zwei Temperaturen über je ein PT1000 aufgenommen werden. Die Auflösung sollte mindestens 16Bit betragen. Die meisten uC, die ich gefunden habe, haben aber nur einen 10Bit ADC. Zwei Peltierelemente sollen die beiden Körper auf eine eingestellte Temperatur regeln, wofür zwei 0-10V Ausgänge benötigt werden. Ein dritter 0-10V Ausgang sollte ebenfalls vorhanden sein. Die 0-10 V sollten mit mindestens 10Bit, besser 12Bit aufzulösen sein. Den ein oder anderen Ein- und Ausgang brauch ich dann noch zur Überwachung. Außerdem sollte zur Anzeige der Temperaturen und Einstellung von Temperaturwerten noch ein kleiner TFT angesteuert werden können. Meiner Meinung nach bräucht ich schon für die gesamten Ein- und Ausgänge über 70 I/Os. Ich habe uC gefunden die schon einen 16Bit ADC intergriet haben, allerdings haben die dann sehr wenige I/Os. Ich hoffe, dass ich genügend Informationen gegeben habe und mir HOFFENTLICH wer helfen kann, welchen uC ich verwenden kann! Gruß Nils
Hi Nils, ich habe bereits ein paar Temperaturregelungen für Peltierelementen für Laser gebaut. An deiner Stelle würd ich sofort auf nen einzelnen 16Bit-ADC umsteigen und lieber nen schnellen uC mit vielen Ports nehmen. Wichtigste Frage ist jetzt: Wie schnell soll das ganze denn regeln? Bei einer so genauen Regelung wirst du wohl auf eine Umschaltung zwischen Heizen und Kühlen mit genügend Strom (0.5-3A) nicht herum kommen. Wobei dies natürlich alles von der thermischen Masse abhängt. Schau dir mal ein paar Peltiersdaten an (Spannung Strom und max. temp.-Diff.) z.B. bei "supercool.com". In der Regel wird das Peltier zwischen eine H-Brücke gelegt, um die Stromrichtung steuern zu können. Ich verwende einen gechopperten TEK-Controller. Vielleicht solltest du dir das Datenblatt als unterstützung durchlesen: ADN8833 Es wäre sicherlich auch von Vorteil, wenn die TFT-Ansteuerung und die Regelung getrennt ablaufen. Weiß ja nicht wie die Anforderungen sind. (z.B. Regelung über Atmel ATMega mit extra ADC und H-Brücke / TFT-Ansteuerung über FPGA) Schau dir die Sachen mal an. Gruß Alexander
Ich hab Peltier Regelmodule mit einem 20Bit ADC an einem AVR gebaut. Allerding mit PC Ansteuerung, ohne lokale Bedienung. Ich verwende eine lineare H Bruecke und erreiche fast 2mK Stabilitaet mit NTC und 50mK mit PT1000. Siehe http://www.ibrtses.com/g/produkte/tec.html
>Ich habe bezüglich >meines Praxissemesters vom Studium die Aufgabe eine sehr genaue >Temperaturregelung (auf 0,01°C genau) mit einem Microcontroller zu bauen. Wer hat Dir diese Aufgabe gestellt? Eine Temperatur auf "nur" 0.1 °C genau zu ***messen***, ist bereits eine recht anspruchsvolle Angelegenheit, bei der schon Effekte wie z. B. die Eigenerwärmung des Sensors durch den Messstrom berücksichtigt werden wollen. Eine Genauigkeit von 0.01 °C ist - gelinde gesagt - völlig utopisch; die präzisesten Pt100-Sensoren ("Klasse A") bringen es im Raumtemperaturbereich auf ca. ±0.2 °C.
Vielleicht wäre hier auch mal wieder der Unterschied zwischen Auflösung und Genauigkeit zu beachten. Geht es um die exakte Temperatur, oder geht es nur darum, die Temperatur mit einer Abweichung von beispielsweise 0.1° konstant zu halten, darf aber beispielsweise 0.5° neben dem exakten Wert liegen?
fragt Nils nun nach der Genauigkeit des PT1000 (nicht PT100) oder nach einem Microcontroller? Ich warte auch auf den Super-Microcontroller ...... Danach fragte er doch? Sein letzter Satz lautete doch: Ich hoffe, dass ich genügend Informationen gegeben habe und mir HOFFENTLICH wer helfen kann, welchen uC ich verwenden kann!
Es gibt meines Wissens keine uP mit eingebautem ADC von 16 oder gar mehr Bit Auflösung. Da müssen externe Bauteile her. Alle Bauteile für >= 16 Bit sind sehr exotisch, selbst Widerstände braucht man dann in 0,01% oder besser . Auch ein TFT soll "nebenher" noch angesteuert werden. Hmmm... Der Typ des uP ist bei dieser Aufgabenstellung --sollte sie nur annäherend erst gemeint sein-- fast nebensächlich. Ich würde da was fertiges kaufen, eine PC/104 Platine z.B., und dort die Messtechnik geeignet anflanschen, das ist kompliziert genug.
> Es gibt meines Wissens keine uP mit eingebautem ADC von 16 oder gar mehr > Bit Auflösung. Der MSP430F2013 hat einen 16bit Delta Sigma Wandler drin. Aber mit 14 Pins ist er hier nicht hilfreich.
Controller gibt's schon ein paar die das theoretisch könnten... ADuC845, 847 (24-Bit ADC + 12-Bit-DAC + 2x 16-Bit-Delta-Sigma DAC) oder die MSC1211/1212 (24-Bit ADC + 4x 16-Bit-DAC) jeweils integrierten Stromquellen etc. Mit beiden kann man auch problemlos ein Standard-LCD ansteuern (wenn die Ports knapp werden nimmt man eben ein seriell ansteuerbares (low cost Variante: Handy-Display)), für ein richtiges TFT, wie schon erwähnt wurde, entweder FPGA oder externer Controller. Weitere Fragen: - Muss die absolute Temperatur auf 0.01 °C genau gemessen werden? - In welchem Temperaturbereich soll die Schaltung arbeiten? Bsp.: Referenzwiderstand 10k, TK 100ppm/K ergibt etwa 0.05 °C Fehler pro °C Temperaturänderung der Schaltung - Reichen die eingebauten ADCs aus. 0.01 °C entsprechen bei einem PT1000 und 100uA Messstrom (um die Selbsterwärmung so gering wie möglich zu halten) ~4 uV - Layouterfahrung ausreichend? - Passendes Messinstrumentarium zur Kalibrierung vorhanden?
>Es gibt meines Wissens keine uP mit eingebautem ADC von 16 oder gar mehr >Bit Auflösung. Doch, gibt es. Den MSC1210 von Texas Instruments/Burr Brown zum Bleistift. Der hat einen ADC mit 24 bit Auflösung drauf. Wer allerdings glaubt, die Auflösung nutzen zu können, der träumt von den Weisswürsten. Wenn man 18 bit erreicht, ist das schon supergut. Im Praxissemester solche Anforderungen? Und dann noch einen TFT steuern? Junge, Junge. Das ist sogar für eine Diplomarbeit zu heftig, finde ich.
Ich nehm schwer an er meint mit TFT -> Einfaches LCD Display (Zeilen oder grafisch)
Nils Michaelis wrote: > die Aufgabe eine sehr genaue > Temperaturregelung (auf 0,01°C genau) mit einem Microcontroller zu > bauen. Dürfte in etwa 10 Mannjahren von sehr erfahrenen Entwicklern zu machen sein. > Das Problem beginnt schon am Anfang: Die Wahl des richtigen > Microcontrollers. Da ist das kleinste Problem. Temperatur regeln kostet keine Rechenzeit, jeder ist geeignet. Selbst ein ATtiny85. > Zwei Peltierelemente sollen die beiden Körper auf eine eingestellte > Temperatur regeln, wofür zwei 0-10V Ausgänge benötigt werden. Hast Du schon die Powerendstufe (~100A) dafür oder mußt Du die auch entwickeln ? > Außerdem sollte zur Anzeige der Temperaturen und Einstellung von > Temperaturwerten noch ein kleiner TFT angesteuert werden können. Da sollte man einfach ein fertiges Textdisplay nehmen, sonst ist nur dafür schnell ein Mannjahr vorbei. > Meiner Meinung nach bräucht ich schon für die gesamten Ein- und Ausgänge > über 70 I/Os. Viel zu viel ! Wenns nicht schnell sein muß, steuert man alles seriell an. 3 SPI-Leitungen + Selectletungen, so um die 16..32 reichen dicke. > Ich habe uC gefunden die schon einen 16Bit ADC intergriet haben, Integrierte ADCs sind nichts für unerfahrene Entwickler (Störeinflüsse). Nimm externe ADCs, der ADS8345 ist ganz gut. Ob man mit nur 16 Bit auf 0,01°C regeln kann, mußt Du prüfen. Peter P.S.: Wenn Du es schaffst auf <1°C genau zu regeln, dann ist das für einen Anfänger schon sehr gut. 0,01°C kannste bei SAT1 in der Märchenstunde erzählen.
Ich nehm schwer an er meint mit auf 0,01°C genau -> 0,01°C Auflösung.
> Ich nehm schwer an er meint mit auf 0,01°C genau -> 0,01°C Auflösung.
Das machts aber nicht einfacher ;)
Gruß Hagen
Hallo, erst mal vielen Dank für die vielen Antworten! Erst mal vorweg zum Thema, wer hat dir diese Aufgabe gestellt. Die mir die Aufgabe gestellt haben, haben ebenfalls keine Erfahrung mit uC. Es war eher gemeint: "Wenn/Ob es möglich ist." @Alexander(vielen Dank für die guten Tips!!): Die Temperaturregelung soll ebenfalls für einen Laser sein. Der Laser heizt selbst genug, so benötigt man keine Umschaltung zwischen heizen und kühlen. Eine Peltiertreiber - Platine ist schon vorhanden, die mit den 0 - 10 V angesteuert wird. Zwei für die Peltiers und einmal 0-10V für die Ansteuerung eines Netzteils, was dann den Strom für die Laserdioden liefert. Der Laser sollte bei Raumtemperatur ca. zwischen 20 und 30 °C auf eine konstante Temperatur geregelt werden. Also, wenn 24,00°C eingestellt ist kann es auch mal bis 23,96 abweichen. Wenn möglich wäre es natürlich am besten, die Temperatur würde bei 24C bleiben. Zu der Frage, wei schnell die Regelung funktionieren soll: Die Temperatur wird eingestellt und kann einen Moment benötigen, bis die Temperatur erreicht wird. Am besten natürlich so schnell wie möglich. Ich dachte an einen PID - Regler als Programm mit veränderbaren Reglerparametern. Zu dem Diplay, da hatte ich einen uC mit Display (hoffentlich darf ich das sagen) bei Diplay3000 gefunden, was ich eigentlich ganz gut fand, der aber wahrscheinlich nicht für diesen Zweck ausreicht. Das heißt vielleicht diesen uC für die Anzeige und Eingabe verwenden. Einen weiteren für die Berechnung und einen externen ADC mit 16Bit oder sogar mehr zur Wandlung. @ Arc Net: Ich denke die Temperatur sollte schon auf 0,01°C gemessen werden, damit man die Temperatur auch genauer geregelt werden kann. Reichen die eingebauten ADC aus: Das könnte sogar möglich sein, aber mit ADC`s höherer Bitzahl, dachteich mir, bleibt die Erweiterbarkeit oder Umstellung auf ein anderes System vorhanden. Die Layoutererfahrung: Da gibt es hier welche, die wahrscheinlich genügend Erfahrung haben. Die uC sollten halt miteinander komunizieren können. Und da weiß ich nicht so genau, ob das so einfach zu realisieren ist. Und, falls es nicht fertig wird im Praxissemester, dann hab ich vielleicht gleich eine Aufgabe für die Diplomarbeit:-))! Vielen Dank im voraus! Gruß
Beim ADC ist dann auch zu beachten welchen Messbereich man normalerweise vorsieht. Läuft Deine Temperatur nur in einem bestimmten Wertebereich ab kannst Du die Referenzspannung entsprechend anpassen und kommst so mit deutlich weniger Bit Auflösung hin. Die PT-Serie find ich persönlich nicht so berauschend zum Messen, da nicht linear. Ich bevorzuge die LM35-Geschichten, hab damit gute Erfahrungen gemacht, aber abgleichen muss man die auch, da kommste nicht drum herum. Ich messe in einer Anwendung auf +/- 0,03° mit nem 10-Bit ADC, das geht auch ganz gut und mit reproduzierbaren Ergebnissen. Würde heute aber eher auf 12-Bit gehen und das 12te Bit als Rauschen verwerfen. In dem Zusammenhang währe dann auch das Oversampling zu nennen, mitunter kannst Du Dir noch n Bit konstruieren, aber das ist dann schon etwas unzuverlässiger
Fuer Laserregelungen mittels Peltier gibt es von Maxim/Analog Devices integrierte Loesungen, Stichwort TEC (thermoelectric cooler)
@ Andreas Kaiser (a-k) >Vielleicht wäre hier auch mal wieder der Unterschied zwischen Auflösung >und Genauigkeit zu beachten. Geht es um die exakte Temperatur, oder geht Genau. Aufloesung und Genauigkeit @ Nils Michaelis (nille81) >Die mir die Aufgabe gestellt haben, haben ebenfalls keine Erfahrung >mit uC. Es war eher gemeint: "Wenn/Ob es möglich ist." Die Frage ist aber NICHT, ob es mit einem uC möglich ist! Die wesentliche Frage ist, WIE die Messung der Temperatur auf 0,01C GENAU erreicht wird. Im Bereich von 20..30C auf 0,01 C AUFLÖSEN ist recht einfach, das sind gerade mal 1000 Stufen -> 10 Bit. >Der Laser sollte bei Raumtemperatur ca. zwischen 20 und 30 °C auf eine >konstante Temperatur geregelt werden. Also, wenn 24,00°C eingestellt ist >kann es auch mal bis 23,96 abweichen. Wenn möglich wäre es natürlich am >besten, die Temperatur würde bei 24C bleiben. Die Temperatur mit 0,01C auflösen und auf die Auflösung ausregeln sollte mit vertretbarem Aufwand machbar sein, aber einfach ist es auch nicht. Auf 0,01 C GENAU zu messen dürfte absolute HighTec sein, Wie der Peter schon fesatstellte. MFG Falk P.S. Bin wieder da ;-) Urlaub vorbei :-(
Hallo, wie wäre es mit dem "IC SMT-UTI-18SOIC TRANSDUCER INTERFACE". Conrad Best-Nr.: 174548 - 62 Kurzbeschreibung: PT 100/PT 1000 Mess-/Sensor Auswerteschaltung Das Universal Transducer-Interface (UTI) ist ein CMOS-Interface-IC für Sensorelemente wie PT 100/1000, NTC/PTC oder Kondensatoren und Widerstandsmessbrücken. Es benötigt keine Kalibrierung, keine zusätzliche Beschaltung und nur eine unipolare Versorgungsspannung von 2,9 bis 5,5 V/DC. Dank eines integrierten Taktgebers sowie einer automatischen und kontinuierlichen Selbstkalibrierung von Offset und Verstärkung erübrigt sich der Abgleich. Ein weiterer Vorteil ist die 50/60 Hz-Unterdrückung. Das UTI arbeitet mit einer Auflösung/Linearität von 14/13 Bit bei Messzeiten von 10 ms oder 100 ms. Das Interface SMT-UTI ist preiswert und sparsam im Stromverbrauch. Datenblatt: http://www2.produktinfo.conrad.com/datenblaetter/150000-174999/174548-da-01-en-IC-SMT-UTI-18SOIC.pdf mfg Klaus
Ich beziehe mich erst mal nur auf die Regelung, auch das ist nicht trivial. Ein "einfacher" PID Regler wird von der Regelqualität da nicht reichen, besser ist es imho auch die eingetragene Leistung durch den/die Laser zu erfassen und als Störgröße mit einzubeziehen. Das ist ein wesentlich besserer "Vorhalt" als der D-Anteil des Reglers.
Hallo, @Andreas Kaiser: Es geht darum die Temperatur mit einer Abweichung von 0.01° konstant zu halten, darf aber beispielsweise 0.05° neben dem exakten Wert liegen!
@ Nils Michaelis (nille81) >Es geht darum die Temperatur mit einer Abweichung von 0.01° konstant zu >halten, darf aber beispielsweise 0.05° neben dem exakten >Wert liegen! Also wird "nur" eine AUFLÖSUNG von 0,01 C benötigt. Das ist schon eher machbar, aber trotzdem nicht trivial. Der uC ist das kleinste Problem. MFG Falk
Die Herausforderung dürfte in der Ermittlung der Übertragungsfunktion von der Heizung zum Sensor liegen. Ist diese genau bekannt (z.B. Einschwingzeit eines Tiefpass 1. Ordnung), kann auch eine exakte Regelung angewendet werden. Das betrifft dann allerdings lediglich die Temperatur am Ort der Messung. Innerhalb des Temperaturgeregelten Raumes treten sicherlich signifikante Temperaturunterschiede auf (Konvektion, Wärmeleitung). Je kleiner die zu regelnde "Masse" ist, umso genauer kann diese auch geregelt werden.
0,05° absolute Genaugkeit scheint mir recht anspruchsvoll, ärger als 0,01° Auslösung. Schon weil's sowas selten serienmässig ab Werk geben dürfte, also zu allererst mal eine entsprechend genaues Vergleichgerät nötig ist.
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.