Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Arduino - Temperatur über eine serielle Schnittstelle an das Web senden

Komponenten und Verbrauchsmaterialien

Arduino UNO
× 1
PHPoC WiFi Shield 2 für Arduino
× 1
Adafruit DS18B20 Temperatursensor
× 1
Überbrückungskabel
× 1

Über dieses Projekt

Durch die Verwendung von Serial.println (Temperatur) können wir die Temperatur über das Web senden. Mit einem integrierten Web Serial Plotter können wir die Temperatur im Web OHNE Webprogrammierung visualisieren.

Wenn Sie ein Anfänger sind, können Sie in Arduino - Wifi und Arduino - DS18B20 Temperatursensor-Tutorials mehr über WLAN und Sensoren erfahren

Vorführung

.

Wie es funktioniert

  • Arduino liest den Temperaturwert vom Sensor und sendet ihn über Seriell
  • Zugriff auf Web Serial Plotter über einen Browser auf einem Mobiltelefon oder PC
  • Die Temperatur wird automatisch an das Web weitergeleitet.
  • Web visualisiert Temperatur im Web
  • Standardmäßig funktioniert Web Serial Plotter genauso wie Serial Plotter auf der Arduino IDE. Wir müssen es anpassen, um den Titel der X-Achse, den Titel der Y-Achse, den Temperaturbereich und die Anzahl der angezeigten Datenproben hinzuzufügen. Dies kann über eine Einstellungsseite erfolgen.

Schritt-für-Schritt-Anleitung

1. Verkabelung

  • Stapeln Sie PHPoC Wifi Shield 2 oder PHPoC Shield 2 auf Arduino
  • Verdrahtung wie Bilder im Schaltplan

2. Arduino-Code kompilieren und hochladen

Siehe Code in "Arduino Code - Short Sampling Period"

3. Web Serial Plotter anpassen

  • Zugreifen auf Web Serial Plotter durch Eingabe der IP-Adresse von PHPoC WiFi Shield
  • Klicken Sie auf den Link "Setup" zur Anpassungsseite
  • Parameter wie oben anpassen und speichern

4. Ergebnis

  • Klicken Sie auf die Schaltfläche "Verbinden", um das Ergebnis zu sehen

Überwachung der Temperatur über einen langen Zeitraum

Wenn die Temperatur in kleinen Intervallen (z. B. Sekunden) gemessen wird, müssen wir nur den Temperaturwert auf Serial drucken, da wir warten können, um das Diagramm zu sehen.

Was passiert, wenn wir die Temperatur täglich oder stündlich überwachen möchten? Wir können es NICHT erwarten, alle Grafiken zu sehen.

Lösung :Wir speichern die Nummer der letzten Abtasttemperaturen auf Arduino und drucken sie häufig aus.

Beispiel:Wir möchten die Temperaturanzeige im Diagramm während 100 Stunden anzeigen. Die Einheit ist Stunde. Wir müssen jede Stunde Daten vom Sensor lesen und in einer Kreiswarteschlange speichern (Warteschlangenlänge beträgt 100). Jede Sekunde drucken wir alle 100 Beispieldaten aus. Daher können wir die Temperaturkurve der letzten 100 Stunden sehen, ohne 100 Stunden warten zu müssen.

Sie können Code in "Arduino Code - Long Sampling Period" . sehen

Das beste Arduino Starter Kit für Anfänger

Siehe Das beste Arduino-Kit für Anfänger

Code

  • Arduino-Code - Kurzer Probenahmezeitraum
  • Arduino-Code - Lange Abtastperiode (täglich, stündlich...)
Arduino-Code - Kurzer AbtastzeitraumArduino
#include #include #include #define SAMPLE_INTERVAL 1000 // in ms // Datenkabel ist an Port 8 des ArduinoOneWire oneWire(8); DallasTemperature . angeschlossen Sensoren (&oneWire);unsigned long lastSampleTime;void setup () { Serial.begin (9600); while(!Seriell); sensoren.begin(); Phpoc.begin(); lastSampleTime =millis();}void loop() { if((millis() - lastSampleTime)> SAMPLE_INTERVAL) {sensoren.requestTemperatures(); Schwimmertemperatur =Sensoren.getTempCByIndex(0); Serial.println (temp); lastSampleTime =millis(); }}
Arduino-Code - Lange Abtastperiode (täglich, stündlich...)Arduino
#include #include #include #define UPDATE_INTERVAL 1000 // in ms#define SAMPLE_INTERVAL 60*60*1000 // 1 Stunde// Datenleitung ist gesteckt in Port 8 des ArduinoOneWire oneWire(8);DallasTemperatursensoren(&oneWire);unsigned long lastSampleTime;unsigned long lastUpdateTime;float temps[100];int index;void setup() { Serial.begin(9600); while(!Seriell); sensoren.begin(); Phpoc.begin(); lastSampleTime =millis(); lastUpdateTime =millis(); index =0;}void loop() { if((millis() - lastSampleTime)> SAMPLE_INTERVAL) {sensoren.requestTemperatures(); Schwimmertemperatur =Sensoren.getTempCByIndex(0); temps[index] =temp; Index =(Index + 1) % 100; lastSampleTime =millis(); } if ((millis() - lastUpdateTime)> UPDATE_INTERVAL) { for(int i =0; i <100; i++) { Serial.println (temps[(index - i + 100)%100]); } lastUpdateTime =millis(); }}

Schaltpläne

1. Stapeln Sie PHPoC Wifi Shield 2 oder PHPoC Shield 2 auf Arduino
2. Verkabelung wie unten abgebildet

Herstellungsprozess

  1. Feuchte/Temperatur aus dem Web abrufen
  2. Einfache Temperatur und Luftfeuchtigkeit auf Raspberry Pi
  3. Webbetriebener DMX-Controller
  4. Programmieren der Atmel AT89-Serie über Arduino
  5. Temperatur- und Feuchtigkeitsdatenlogger
  6. Kontaktloses Temperaturüberwachungstor
  7. Arduino - Freischaltung von Webmustern
  8. SMART-Temperaturüberwachung für Schulen
  9. Temperaturgesteuerter Holzkohle-Räucherofen
  10. Arduino - Zeichnen über das Web mit Schrittmotorsteuerung