Wie der Thermosensor MAX6675 funktioniert und wie dieser mit einem Arduino UNO verbunden wird habe ich im ersten Tutorial Arduino Lektion 23: Thermosensor MAX6675 bereits beschrieben.
In diesem Tutorial möchte ich auf den Anschluss und den Betrieb am Arduino Nano eingehen.
Der Arduino Nano ist mit dem Arduino UNO fast baugleich, jedoch sind die Anschlüsse, welche für den MAX6675 benötigt werden, anders gelegt.
Anschluss an den Arduino Nano
Der Thermosensor verfügt über 5 Pins welche an den Arduino Nano wie folgt angeschlossen werden.
Modul MAX6675 | Arduino Nano |
---|---|
GND (Ground) | GND |
VCC | 5V |
SCK (Serial Clock) | digitaler PIN D13 |
CS (Chip Select) | digitaler PIN D10 |
SO (Serial Output) | digitaler PIN D12 |
Bibliothek
Eine Bibliothek für die Ansteuerung des Moduls ist auf GitHub unter folgendem Link https://github.com/adafruit/MAX6675-library zu finden.
Wie man eine Bibliothek in die Arduino IDE einbindet habe ich im Tutorial „Arduino IDE, Einbinden einer Bibliothek“ ausführlich beschrieben und möchte daher hier nicht weiter darauf eingehen.
Quellcode
#include "max6675.h" //Die MAX6675 Bibliothek int max6675SO = 12; // Serial Output am PIN 8 int max6675CS = 10; // Chip Select am PIN 9 int max6675CLK = 13; // Serial Clock am PIN 10 // Initialisierung der MAX6675 Bibliothek mit // den Werten der PINs MAX6675 ktc(max6675CLK, max6675CS, max6675SO); void setup() { Serial.begin(9600); // Begin der Seriellen Kommunikation mit 9600 Baud delay(500); // eine kleine Pause damit der Sensor sich kalibriert } void loop() { // Lesen des Temperaturwertes in Grad Celsius Serial.print(ktc.readCelsius()); Serial.println("C"); // Lesen des Temperaturwertes in Grad Fahrenheit Serial.print(ktc.readFahrenheit()); Serial.println("F"); // 500ms Pause bis zum nächsten Durchlauf delay(500); }
Hallo, habe library gedownloadet und in das Arduino Programm erfolgreich eingebunden,jedoch erhalte ich diesen fehlercode,obwohl D12 doch der Name des Pins ist,bei den anderen pins wird wahrscheinlich dann auch dieser fehlercode auftreten.
Vielen dank für dein Feedback
Arduino_Nano__w_rmef_hler:2: error: ‚D12‘ was not declared in this scope
int max6675SO = D12;
^
Arduino_Nano__w_rmef_hler:3: error: ‚D10‘ was not declared in this scope
int max6675CS = D10;
^
Arduino_Nano__w_rmef_hler:4: error: ‚D13‘ was not declared in this scope
int max6675SCK = D13;
^
exit status 1
‚D12‘ was not declared in this scope
Sache hat sich erledigt, habe die D`s bei den Pins weggelassen, jedoch nun ,wenn ich auf dem seriellen Monitor die gradzahl angezeigt lassen will, kommen Zahlen wie 16C° raus, obwohl es bei uns mind. 20C° Zimmertemperatur ist, und ich ihn in meinen Händen halte, wo es ja wesentlich wärmer ist.
Vielen Dank.
Hi,
freue mich das es nun funktioniert.
Wo die ungenauigkeit herkommt kann man schwer sagen.
Steigt die Temperatur denn wenn eine Kerze drunter steht?
Gruß,
Stefan
Hallo, vielen Dank für die Hilfe 🙂
Nein die Temperatur sinkt!
Gruss
Andreas
Hi,
ist der Sensor richtig angeschlossen? Also Plus an Plus und Minus an Minus? Auf dem Board bitte prüfen und ggf. einfach mal die Pole tauschen.
Gruß,
Stefan
Hi,
Mein Sohn (Laie) und ich (absolut unwissend) sind dir sehr dankbar für deine promten Feedbacks.
Wir werden heute Abend mal die Pole untersuchen und ggf. tauschen.
Wäre es möglich, einen Schaltplan von einem Arduino Nano zu posten, an dem der Thermosensor MAx6675 anhängt, welcher bei einer gewissen Temperatur einen Ventilator anschmeisst, welcher durch einen Optokoppler angesteuert wird? Ich hoffe, ich habe mich für einen profi wie dich verständlich ausgedrückt 🙂
Das Script dazu würde die Sache sicherlich noch abrunden, aber wir möchten nicht zu viel verlangen 😉
Gruss
Andreas
Hallo,
gerne kann ich bei eurem kleinen Projekt unterstützen.
Ich werde heute Abend mal was vorbereiten 😉
Gruß,
Stefan
Hi,
ich habe mal einen kleinen Beitrag zu deinem Projekt verfasst.
https://draeger-it.blog/arduino-projekt-temperaturgesteuerter-luefter/
Ich hoffe dieser hilft dir weiter, ansonsten kannst du dich gerne an mich wenden.
Gruß,
Stefan
Vielen Herzlichen Dank :-))
Hallo,
Bisher funktionniert alles zu unserer Zufreidenheit. Wenn noch Bedarf besteht, melden wir uns nochmals. Vielen Dank für deine Unterstützung.
Gruss
Andreas