NEWS
NODEmcu K-Type Temp-Fühler in IObroker !? [gelöst]
-
Hallo zusammen,
ich suche schon länger einen Temperatursensor zur Erfassung der Abgastemperatur meines Holzofens.
Durch einen Forenbeitrag wurde ich auf den NODEmcu mit einem MAX38155 und einem K-Type Fühler aufmerksam.Ich bekomme es inzwischen mit ARDUINO hin die Temperatur zu messen.
Auch ins WLAN einwählen klappt.
Allerdings beides zusammen bekomme ich nicht gebacken.Kennt sich hier jemand mit ARDUINO aus und kann mir helfen bzw. Tipps geben wie ich die gemessene Temperatur in IObroker bekomme ?
Oder kennt jemand ein gutes verständliches ARDUINO Tut ?Ich müsste ja "nur" noch die 2 Codes zusammen bringen,
und ich denke MQTT implementieren !?Im vorraus schon mal besten Dank
Stefan -
@qax1 Zeig mal den Code in codetags (</>). Falls der länger ist erst Spoiler (auge) klicken und dann direkt codetags.
-
#include <Wire.h> #include <SPI.h> #include "Adafruit_MAX31855.h" #define CLK 14 //connect CLK to GPIO14 #define CS 5 //connect CS to GPIO5 #define DO 12 //connect DO to GPIO12 Adafruit_MAX31855 thermocouple(CLK,CS,DO); void setup() { Serial.begin(9600); Serial.println("MAX31855 testing"); delay(500); } void loop() { Serial.print("Internal Temp = "); Serial.println(thermocouple.readInternal()); double c = thermocouple.readCelsius(); if (isnan(c)) { Serial.println("Something wrong with thermocouple!"); } else { Serial.print("C = "); Serial.println(c); } delay(1000); }
Mit diesem Code funktioniert die Temp. Messung mittels MAX31855 und
K-Type fühler.
Ich weiß aber eben nicht, wie ich jetzt den WiFi Code einbaue.
Alle Versuche endeten in zahllosen Fehlermeldungen.
Eine Erklärung oder ein Tutorial, das den Aufbau eines Code´s erklärt habe ich auch nicht gefunden, deswegen die Frage hier....Haben doch bestimmt schon andere umgesetzt sowas.
Gruß Stefan
-
- Versuch:
Die Werte ausfüllen:
const char ssid[] = ""; const char pass[] = ""; Im Connect() while (!client.connect(client_name,"MQTTUser","MQTTPassword")) // User und Password(MQTT-Adapter ioBroker) Im Setuo() client.begin("IP-Adresse vom MQTT-Server",1885,net); // IP und Port (MQTT ioBroker) Im loop() client.begin("IP-Adresse vom MQTT-Server",1885,net); // IP und Port (MQTTT ioBroker)
Ich hoffe ich habe alles bedacht? Versuch mal.
-
@mcu
Bekomme ich n Fehler :MQTT.h: No such file or directory...
Arduino: 1.8.13 (Windows 10), Board: "NodeMCU 1.0 (ESP-12E Module), 80 MHz, Flash, Legacy (new can return nullptr), All SSL ciphers (most compatible), 4MB (FS:2MB OTA:~1019KB), 2, v2 Lower Memory, Disabled, WIFI, Only Sketch, 115200"
MQTT-TEST-1:6:18: fatal error: MQTT.h: No such file or directory
#include <MQTT.h>
^compilation terminated.
exit status 1
MQTT.h: No such file or directory
Dieser Bericht wäre detaillierter, wenn die Option
"Ausführliche Ausgabe während der Kompilierung"
in Datei -> Voreinstellungen aktiviert wäre. -
@qax1 Schau mal unter Dokumente/ardunino dort sind alle Dateien. Musst dann die mqtt.h suchen und in dein Projekt kopieren.
Oder unter Sketch/Bibliothek einbinden/ Bibliotheken verwalten:
Auf Adafruit MQTT Library klicken und Installieren klicken. -
hab ich, kommt aber immernoch die gleiche Fehlermeldung :
-
@qax1 Hast du mal Arduino neu gestartet nach der Installation?
-
Japp hab ich auch versucht,
hab auch die Neueste Version probiert,
aber auch ohne Erfolg. -
@qax1 Dann muss jetzt die mqtt.h Datei im Dokumente Ordner sein. Kopiere die mal in Dein Projekt.
Boardverwalter:
https://dl.espressif.com/dl/package_esp32_index.json https://arduino.esp8266.com/stable/package_esp8266com_index.json
-
Du meinst nicht im ADRUINO Oder sondern wirklich im Dokumente Orden von Windows ?
Dors sind nur Ordner mit Versuchen von mir die ich gespeichert hatte. -
@qax1 Im Dokumente/arduino werden alle Dateien zum Arduino gespeichert:
-
Ah... Ok... gefunden...
Was davon jetzt wohin kopieren ?
Was meinst du mit "Mein Projekt" ?Sorry bin halt absoluter Anfänger...
-
-
Ich hab das MQTT ersetzten jetzt so verstanden......
-
@qax1
Punkt hinter dem "h" ist falsch.
Ansonsten nimm meine MQTT.h -
Du musst das Semikolon hier entfernen nach dem define:
-
Jetzt kommt der Fehler :
Arduino: 1.8.13 (Windows 10), Board: "NodeMCU 1.0 (ESP-12E Module), 80 MHz, Flash, Legacy (new can return nullptr), All SSL ciphers (most compatible), 4MB (FS:2MB OTA:~1019KB), 2, v2 Lower Memory, Disabled, WIFI, Only Sketch, 115200"
MQTT-TEST-1:25:1: error: 'MQTTClient' does not name a type
MQTTClient client;
^
C:\Users\Stefan\Documents\Arduino\MQTT-TEST-1\MQTT-TEST-1.ino: In function 'void connect()':
MQTT-TEST-1:34:12: error: 'client' was not declared in this scope
while (!client.connect(client_name,"MQTTUser","MQTTPassword")) { ^
MQTT-TEST-1:40:4: error: 'client' was not declared in this scope
client.subscribe(client_name + "/+"); ^
MQTT-TEST-1:40:35: error: invalid operands of types 'const char [10]' and 'const char [3]' to binary 'operator+'
client.subscribe(client_name + "/+"); ^
MQTT-TEST-1:41:33: error: invalid operands of types 'const char [10]' and 'const char [7]' to binary 'operator+'
client.publish(client_name + "/alive","true"); ^
C:\Users\Stefan\Documents\Arduino\MQTT-TEST-1\MQTT-TEST-1.ino: In function 'void setup()':
MQTT-TEST-1:59:2: error: 'client' was not declared in this scope
client.begin("http://192.168.178.30",1883,net); //192.168.178.45
^
C:\Users\Stefan\Documents\Arduino\MQTT-TEST-1\MQTT-TEST-1.ino: In function 'void loop()':
MQTT-TEST-1:75:5: error: 'client' was not declared in this scope
client.publish(client_name + "/InternalTemp",String(c)); ^
MQTT-TEST-1:75:34: error: invalid operands of types 'const char [10]' and 'const char [14]' to binary 'operator+'
client.publish(client_name + "/InternalTemp",String(c)); ^
MQTT-TEST-1:77:3: error: 'client' was not declared in this scope
client.loop();
^
MQTT-TEST-1:81:6: error: 'werteCount' was not declared in this scope
werteCount = 0; ^
MQTT-TEST-1:86:35: error: invalid operands of types 'const char [10]' and 'const char [16]' to binary 'operator+'
client.publish(client_name + "/connectProblem","Verbindungsproblem gehabt"); ^
exit status 1
'MQTTClient' does not name a type
Dieser Bericht wäre detaillierter, wenn die Option
"Ausführliche Ausgabe während der Kompilierung"
in Datei -> Voreinstellungen aktiviert wäre. -
@qax1 Hast du jetzt meine MQTT genutzt? Und hast du das Semikolon entfernt?
Hier darf nur die IP stehen:
Also http:// weg -
Ich habe den PUNKT hinter dem h
und den Semikolon weg gemacht.