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

MKR1000 an ThingSpeak.com

Komponenten und Verbrauchsmaterialien

DHT11 Temperatur- und Feuchtigkeitssensor (4 Pins)
× 1
Arduino MKR1000
× 1

Über dieses Projekt

Ich hatte bereits Code für den ESP8266 12-E entwickelt, um Umgebungssensordaten zu erhalten, die vom DHT11 aufgenommen, drahtlos auf die ThingSpeak-Website hochgeladen und grafisch dargestellt wurden. Ich musste nur kleine Änderungen vornehmen, damit es mit dem neuen Arduino MKR1000 funktioniert.

Schritt 1.

Verbinden Sie die DHT-Datenleitung mit dem MKR1000 Pin1 (beschriftet mit 1 auf der Rückseite der Platine).

Schritt 2. Laden Sie die WiFi101-Bibliothek und die DHT-Bibliothek herunter von:

https://github.com/arduino-libraries/WiFi101

https://learn.adafruit.com/dht

Schritt 3.

Gehen Sie zum Board Manager in der Arduino IDE

Extras-->Board-->Boards-Manager

Suche nach Arduino SAMD Boards (32-Bit ARM Cortex M0+)

Laden Sie Version 1.6.3 herunter (ich hatte Probleme mit 1.6.4, da das MKR100-Board nicht installiert wurde)

Schritt 4.

Erstellen Sie ein kostenloses ThingSpeak.com-Konto, beschriften Sie die Felder mit Graph (Luftfeuchtigkeit und Temperaturen) und fügen Sie Ihren ThingSpeak "write" API-Schlüssel zusammen mit Ihrer WLAN-SSID und Ihrem WLAN-Passwort in die bereitgestellte Skizze ein.

Schritt 5.

Wählen Sie den richtigen Com-Port aus, suchen Sie nach dem MKR1000, kompilieren Sie den Code und führen Sie ihn aus.

Sie sollten die Aktualisierungen sehen, die an ThingSpeak in Ihrem seriellen Fenster gesendet werden.

Viel Spaß!

Code

  • MKR1000 zu DHT zu ThingSpeak Wireless Cloud-basierte Umgebungssensor-Grafik
MKR1000 zu DHT zu ThingSpeak Wireless Cloud-basierte UmgebungssensorgrafikArduino
Eine Kombination aus Skizzen von AdaFruit, WiFi101 WebClient und ThingSpeak Arduino Templates.
/*Dieser Sketch ist eine Kombination aus ADAFruits DHT Sketch, WiFi101 Webclient und Das Arduino-Beispiel von ThingSpeakModified by Stephen Borsay for the MKR1000, zögern Sie nicht zu verwenden */ #include  //Sie brauchen dies nicht, da wir nicht den abgeschirmten Just-Chip verwenden#include #include "DHT.h"#define DHTPIN 1 // Welcher Pin wir sind verbunden mit, Pin1 ist der 5. Pin vom Ende // Entkommentieren Sie den verwendeten DHT-Sensortyp! #define DHTTYPE DHT11 // DHT 11 // #define DHTTYPE DHT21 // DHT 21 // #define DHTTYPE DHT22 // DHT 22DHT dht (DHTPIN,DHTTYPE);String apiKey ="IhrApiKeyHere"; // API von ThingSpeakchar ssid[] ="YourSSIDHERE"; // Ihre Netzwerk-SSID (Name)char pass[] ="YourPasswordHere"; //Ihr Netzwerk-Passwortint keyIndex =0; // Ihre Netzwerkschlüssel-Indexnummer (wird nur für WEP benötigt)//#define WEBSITE "api.thingspeak.com"int status =WL_IDLE_STATUS;// wenn Sie kein DNS verwenden möchten (und Ihre Skizzengröße reduzieren)// Verwenden Sie die numerische IP anstelle des Namens für server://IPAddress server(74,125,232,128); // Numerische IP für Google (kein DNS)char-Server[] ="api.thingspeak.com"; // Adresse für Google benennen (unter Verwendung von DNS)// Ethernet-Client-Bibliothek// mit der IP-Adresse und dem Port des Servers// initialisieren, mit dem Sie eine Verbindung herstellen möchten (Port 80 ist Standard für HTTP):WiFiClient-Client;void setup () {// Seriell initialisieren und warten, bis der Port geöffnet wird:Serial.begin (9600); while (!Seriell) {; // Warten Sie, bis der serielle Port eine Verbindung herstellt. Nur für nativen USB-Port erforderlich} // Überprüfen Sie das Vorhandensein des Schilds:if (WiFi.status () ==WL_NO_SHIELD) { Serial.println ("WiFi-Schild nicht vorhanden"); // nicht fortfahren:while (true); } // Versuch, eine Verbindung zum Wifi-Netzwerk herzustellen:while (status !=WL_CONNECTED) { Serial.print ( "Versuch, eine Verbindung zu SSID herzustellen:"); Serial.println (ssid); // Verbinden Sie sich mit dem WPA/WPA2-Netzwerk. Ändern Sie diese Zeile, wenn Sie Open/WEP-Netzwerkstatus verwenden =WiFi.begin (ssid, pass); // 10 Sekunden auf Verbindung warten:delay(10000); } Serial.println ("Mit WLAN verbunden"); printWifiStatus(); }void loop () { // Warten Sie einige Sekunden zwischen den Messungen. Verzögerung (2000); //benutze lieber float, aber Paketgröße oder Float-Konvertierung funktioniert nicht //wird in Zukunft mit einer String-Funktion oder einer Float-Konvertierungsfunktion überarbeitet int h =dht.readHumidity(); // Temperatur als Celsius lesen (Standard) int t =dht.readTemperature (); // Temperatur als Fahrenheit lesen (isFahrenheit =true) int f =dht.readTemperature (true); // Prüfen, ob Lesevorgänge fehlgeschlagen sind und vorzeitig beenden (um es erneut zu versuchen). if (isnan(h) || isnan(t) || isnan(f)) {Serial.println("Fehler beim Lesen vom DHT-Sensor!"); Rückkehr; } // Wärmeindex in Fahrenheit berechnen (Standard) int hif =dht.computeHeatIndex(f, h); // Wärmeindex in Celsius berechnen (isFahreheit =false) int hic =dht.computeHeatIndex(t, h, false); Serial.print ("Luftfeuchtigkeit:"); Seriendruck (h); Serial.print(" %\t"); Serial.print ( "Temperatur:"); Serial.print (t); Serial.print ( " * C "); Serial.print (f); Serial.print(" *F\t"); Serial.print ( "Heatindex:"); Serial.print (hic); Serial.print ( " * C "); Serial.print (hif); Serial.println(" *F\n"); Serial.println("\nVerbindung zum Server wird gestartet..."); // Wenn Sie eine Verbindung erhalten, melden Sie sich per Serial zurück:if (client.connect (server, 80)) { Serial.println ( "mit Server verbunden"); client.print(F("POST")); client.print("/update?key=apiKey&field1=" + (String) h + "&field2=" +(String) t + "&field3=" +(String) f + "&field4=" +(String) hic + " &field5=" +(String) hif ); String tsData ="field1=" // brauche die Länge um ThingSpeak zu geben + (String) h + "&field2=" +(String) t + "&field3=" +(String) f + "&field4=" +(String) hic + "&field5=" +(String) hif; client.print("POST /update HTTP/1.1\n"); client.print("Host:api.thingspeak.com\n"); client.print("Verbindung:schließen\n"); client.print("X-THINGSPEAKAPIKEY:" + apiKey + "\n"); client.print("Content-Type:application/x-www-form-urlencoded\n"); client.print("Inhaltslänge:"); client.print(tsData.length()); //Datenstring legth an ts senden client.print("\n\n"); client.print(tsData); client.stop(); Verzögerung (1000); }}void printWifiStatus () {// Drucken Sie die SSID des Netzwerks, mit dem Sie verbunden sind:Serial.print ( "SSID:"); Serial.println (WiFi.SSID()); // drucke die IP-Adresse deines WiFi-Shields:IPAddress ip =WiFi.localIP(); Serial.print ("IP-Adresse:"); Serial.println (ip); // die empfangene Signalstärke ausgeben:long rssi =WiFi.RSSI(); Serial.print ("Signalstärke (RSSI):"); Serial.print (rssi); Serial.println(" dBm");}
Code in GitHub
Gleicher Code, aber in GitHub für MKR1000https://github.com/sborsay/Arduino_Wireless/blob/master/MRK100_DHt_TS

Schaltpläne

Verdrahten Sie die DHT-Datenleitung mit MKR100 Pin 1 (5. Pin oben)
Verbinden Sie 5 V und Masse mit dem DHT-Sensor, die beide vom MKR1000 bereitgestellt werden

Herstellungsprozess

  1. Manhattan Skyline:kompakte ARM COM mit NXP i.MX 8MM
  2. Kontron:neuer Embedded Computing Standard COM HPC
  3. DHT Tiny Breakout für den Raspberry Pi
  4. ThingSpeak Temperaturmonitor mit Raspberry Pi
  5. Erstellen Sie Ihr erstes IOT mit einem Raspberry Pi, einem DHT11-Sensor und Thingspeak.
  6. Mkr1000-Pinbelegung:Eine bevorzugte Wahl für IoT-Projekte
  7. Die Vorteile von Parts.Cat.Com und Registrierung
  8. Ihr Leitfaden zu Shop.Cat.Com
  9. Erste Schritte mit My.Cat.com
  10. ASTM A551 Klasse DHT wärmebehandelt