Cayenne funziona in modo molto simile a OpenHAB che non richiede un proprio server. Cayenne è un servizio Internet gratuito offerto da MyDevices , che semplifica la visualizzazione di progetti IoT. Poiché Cayenne è un servizio Internet, possiamo accedere alle informazioni dal nostro progetto IoT da qualsiasi luogo. C'è anche un'app per smartphone per accedere ai dati.
Come nell'esempio, costruiamo un semplice dispositivo IoT basato su a D1 Mini fatto legge un' DHT11 sensore di temperatura e umidità e unità un' modulo relè . Entrambi i moduli sono inclusi anche in Set di sensori 35 in 1 . La struttura è molto semplice Il DHT11 è collegato al D1 del D1 Mini e al D2 del D1 Mini. Inoltre, entrambi i moduli sono collegati al connettore GND e al connettore 3.3V del D1 Mini.
Per utilizzare Cayenne abbiamo bisogno di un account. Noi possiamo visitare il MyDevices sito web per un account gratuito.
Bei einem neuen Account erscheint der Startbildschirm. Wir wählen "Tutti i dispositivi"
Wir gelangen zur Geräteauswahl und wählen "Generic ESP8266"
Esegui questa configurazione Schirm für das gewählte Gerät. Wir nennen das Gerät z.B. "D1 Mini". Cayenne wartet nun darauf, dass sich ein Gerät mit den angegeben Zugangsdaten (Username, Password und Client ID) meldet. Dazu müssen wir in folgendem Sketch from Zugangsdaten für MQTT and WLAN editieren and ihn dann auf den D1 Mini carico.
Schizzo:
Scheda per Arduino IDE = NodeMCU1.0 (modulo ESP-12F)
/ * ESP8266 con sensore DHT11 e gestione Relais per cruscotto MQTT Cayenne * https://mydevices.com */ // # definisce CAYENNE_DEBUG #definire CAYENNE_PRINT Seriale #includere <CayenneMQTTESP8266.h> #includere <DHTesp.h> // Informazioni sulla rete WiFi. #definire SSID "" #definire WIFIPASSWORD "" // Cayenne Zugangsdaten. Diese erhalten wir vom Cayenne Dashboard. #definire NOME UTENTE "" #definire PAROLA D'ORDINE "" #definire IDENTIFICATIVO CLIENTE "" // Kanäle zur Kommunikation mit dem Dashboard #definire KANAL_TEMPERATUR 1 #definire KANAL_FEUCHTE 2 #definire KANAL_RELAIS 3 #definire KANAL_STATUS 4 #definire PIN_DHT 5 #definire PIN_RELAIS 4 // globale Variablen booleano relais_status = 0; TempAndHumidity neueWerte; DHTesp DHT; vuoto impostare() { Seriale.inizio(115200); pinMode(PIN_RELAIS,PRODUZIONE); digitalWrite(PIN_RELAIS,relais_status); DHT.impostare(PIN_DHT, DHTesp::DHT11); peperoncino di Cayenna.inizio(NOME UTENTE, PAROLA D'ORDINE, IDENTIFICATIVO CLIENTE, SSID, WIFIPASSWORD); } vuoto ciclo continuo() { peperoncino di Cayenna.ciclo continuo(); } // Diese Funktion wird von Cayenne.loop in regelmäßigen Abständen aufgerufen // Hier sollten die Daten der Sensoren übertragen werden CAYENNE_OUT_DEFAULT() { neueWerte = DHT.getTempAndHumidity(); Se (DHT.getStatus() == 0) { peperoncino di Cayenna.celsiusWrite(KANAL_TEMPERATUR,neueWerte.temperatura); peperoncino di Cayenna.virtualWrite(KANAL_FEUCHTE,neueWerte.umidità,TYPE_RELATIVE_HUMIDITY,UNIT_PERCENT); } peperoncino di Cayenna.digitalSensorWrite(KANAL_STATUS,relais_status); } // Diese Funktion wird von Cayenne.loop aufgerufen wenn Daten für Aktoren von Cayenne anstehen // Hier sollte auf diese Daten reagiert werden CAYENNE_IN_DEFAULT() { Se (richiesta.canale == KANAL_RELAIS) { relais_status = getValue.Asint(); digitalWrite(PIN_RELAIS,relais_status); } }
Crea il tuo sketch e compila con il solletico del Cayenne Web-Seite in the Zeur das folgende Bild zeigen. Eventuell is a Ricarica nel browser notwendig.
In questo modo vengono collegati i collegamenti D1 Mini e Dashboard Gerät con Drei Mini e D1 Mini con il server MQTT. Questo è il motivo del cruscotto con il cruscotto gestito da un uomo e una donna.
In primo luogo, fare clic sul colore verde "+" sulla destra in alto a destra di ogni widget. In questo modo, il widget viene associato al pannello di controllo. A questo punto, è possibile spostare i widget e modificarlo in modo da visualizzare e ridimensionare. Per modificare l'aspetto della vista, fare clic sull'icona della ruota dentata in alto a destra e selezionare Impostazioni. Le impostazioni del widget che possono essere alterate possono essere visualizzate.
A questo punto, vogliamo aggiungere un altro widget per spegnere il relè. Facendo clic sulla parte superiore sinistra, fare clic su Aggiungi nuovo ... e sul menu Devices/Widgets. Sulla pagina Device &, si seleziona Widget personalizzati. Nell'elenco a destra, votiamo "Button". Viene visualizzato il modulo di input per la Button Settings:
Una volta inseriti tutti i campi nel modulo (in base allo Sketch, il canale 3 deve essere selezionato), è possibile fare clic sul pulsante "Aggiungi widget" per aggiungere il nuovo widget al pannello di controllo. Possiamo testare la Relais Button allo stesso modo. Un clic sul button dovrebbe accendere il relè nel nostro disegno sperimentale. Dopo un massimo di 10 secondi, dovremmo anche ricevere il feedback sullo stato.
Infine, vogliamo aggiungere un altro attivatore che accende il relè (ad esempio per il riscaldamento) se la temperatura al di sotto di 18 ° C diminuisce e si spegne quando la temperatura aumenta a 22 °C. Per fare ciò, fare clic sull'icona del dentista di un widget e selezionare Trigger. Viene visualizzato il modulo trigger. Con Drag & Drop, trasciniamo il D1 Mini dispositivo sulla superficie "if" e sulla superficie "then". Con la superficie "if", selezioniamo la temperatura del trigger e si immetta i valori desiderati. Con la superficie "then", scegliamo relè come azione. Il modulo dovrebbe essere simile a quello di seguito.
Se tutto e' completato correttamente, possiamo fare clic su Save. Lo stesso vale per la creazione di un secondo trigger che interviene in relè quando la temperatura aumenta a 22 °C.
- E' cosi ' che si tita. Have fun sperimenting.
18 commenti
DonBoy
Wer nicht unbedingt von ausserhalb einen Zugriff benötigt, kann sich statt MyDevices und Cayenne z.B. einen Raspberry Pi ins Netzwerk holen und das fertige Image von dem Node-Red darauf installieren. Dessen Dashboard hat mehr Möglichkeiten (sogar WebCams anzeigen) und es gibt 1000de von Custom-Nodes. Man kann per Drag&Drop seine Flows zusammenstellen und/oder per JS eigenen Code auf dem Server verwenden. Ich hab mit den D1-Modulen von AZ-Delivery hier den kompletten Garten im Überblick und Steuere meine Rollos zum Teil automatisiert anhand Sonnenauf- und Untergang.
Stefan
@Joachim: Einbinden von libraries (Bibliotheken) gehört zur C oder auch Arduino Grundausbildung. Ich denke wenn die von AZ soweit unten anfangen werden die Anleitungen deutlich zu lang.
Bei der Arduino IDE kann mit mit Strg+Shift+I (=Sketch/Bibliothek/Bibliothekverwalter) die 2. h-Dateien einfach in die Zeile oben rechts eingeben, suchen und dann unten die gefundenen Bibs. installieren. Jetzt sollten die Fehlermeldungen weg sein.
@Manfred: Gute Idee, ich hab von 1&1 eine Homepage für ca. 25Euros, da werde ich es mal versuchen.
Joachim
Beim kompilieren läuft man auf die Fehlermeldung, dass die Dateien CayenneMQTTESP8266.h und DHTesp.h nicht gefunden werden können. Kann mir jemand weiterhelfen und sagen, wo ich diese Dateien finden kann, bzw. wo ich sie einfügen muss? Vielen Dank
Grundsätzlich finde ich es super, dass es Leute gibt, die Ihre Ideen mit anderen teilen und sogar entsprechende Anleitungen hier einstellen. Umso ärgerlicher ist, wenn dann relevante Informationen fehlen und das Nachvollziehen daran scheitert. Wenn wir hier alles Spezialisten wären, die sich auskennen und selbst helfen können , dann bräuchten wir diese Anleitungen nicht. Ich denke aber, hier gibt es eine Menge Einsteiger, die über diesen Weg in die Materie reinkommen möchten. Und da wären dann VOLLSTÄNDIGE Informationen hilfreich
Joachim
Beim kompilieren läuft man auf die Fehlermeldung, dass die Dateien CayenneMQTTESP8266.h und DHTesp.h nicht gefunden werden können. Kann mir jemand weiterhelfen und sagen, wo ich diese Dateien finden kann, bzw. wo ich sie einfügen muss? Vielen Dank
Grundsätzlich finde ich es super, dass es Leute gibt, die Ihre Ideen mit anderen teilen und sogar entsprechende Anleitungen hier einstellen. Umso ärgerlicher ist, wenn dann relevante Informationen fehlen und das Nachvollziehen daran scheitert. Wenn wir hier alles Spezialisten wären, die sich auskennen und selbst helfen können , dann bräuchten wir diese Anleitungen nicht. Ich denke aber, hier gibt es eine Menge Einsteiger, die über diesen Weg in die Materie reinkommen möchten. Und da wären dann VOLLSTÄNDIGE Informationen hilfreich
Manfred Blum
Hat schon mal einer versucht sich von solchen Anbietern wie MyDevices abzunabeln und die Devices selbst zu programmieren?
Das einfachste wäre bei 4-Eins, 1und1, etc. eine preisgünstige Domäne (Server) zu erwerben und die Darstellungsprobleme mit HTPL in Verbindung mit PHP in den Griff zu bekommen??? Die Kosten mit 60 bis 70€/Jahr dürften zu stemmen sein.
Oder mit XAMPP auf seinem eigenen Rechner einen eigenen Server aufzubauen. Ist gar nicht so schwer und der Lerneffekt ist kolossal und kostenlos.
Manfred Blum
Es wäre lobenswert, wenn die sichtbare Seite so breit wäre, dass man die Code-Zeilen bis zum Ende lesen könnte.
Christof
Mach doch “einfach” deinen eigenen Server .. Google-Suche nach “create my own mqtt server” oder schau mal hier:
https://obrienlabs.net/how-to-setup-your-own-mqtt-broker/
Gunther
Zitat:
“Our business operations and the computer servers that handle data collected via the Services are hosted in the United States. If you are accessing or using the Services in the European Union or other regions with laws governing data collection and use that may differ from U.S. law, then please note that your personal information will be transferred to the United States and you consent to such transfer.”
Das heißt: Es gelten NICHT die europäischen Datenschutzgesetze!!!
Dann kann man ja auch die chinesischen Clouddienste nutzen…
Sven
Beim Cayenne Dashboard Sketch kompiliert kommt immer Fehler kann die *.h dateinen nicht finden. Es ist mühselig die einzelner Dateien in den Ordner ein zu fügen, wer hilfreich wenn eine Liste mit den benötigten datein dabei wäre.
michael
Man hätte vieleicht auch mal für neulinge den genauen ablauf beschreiben können, für die account registrierung.
vielen dank
michael
Jens
In dem Sketch ist das Relaymodul an 3V3 angeschlossen obwohl es lt. Datenblatt ein 5V Modul ist. Funktioniert das trotzdem? Ansonsten VCC für das Relaismodul von den 5V des D1mini versorgen. Auch sind die Farben für GND und VCC zum Relaismodul mit rot für GND und schwarz für VCC ungünstig gewählt. Vorsicht also beim Nachbau! Mit freundlichen Grüßen, Jens Gabrikowski
Wolfgang Petzold
Ich bin leider in der englischen Sprache nicht so bewandert. Könntet Ihr die ersten 3 Absätze dieses Artikels auch in die deutsche Sprache übersetzen?
Danke
Andre Schubert
Gibt es die Möglichkeit, Daten vom Dashboard einzulesen ? Also von Cayenne abholen und in nen ESP8266 seriell ausgeben ?
Gerald Lechner
Hallo Andre
Danke für den Hinweis die Pins 4 und 5 waren vertauscht. Ich habe den Sketch korrigiert.
Für den DHT 22 muss die vierte Zeile im Setup geändert werden
dht.setup(PIN_DHT, DHTesp::DHT22);
Gruß Gerald
Andre Schubert
PIN 4 und PIN 5 im Sketch müssen getauscht werden
Rene
Geil
Andre Schubert
Ich versuche den Aufbau mit einem DHT22 und bekomme keine Werte geliefert. Wo muss ich den Sketch anpassen ?
Jürgen
Hallo, gibt es auch Anbieter, wie MyDevices,
die den Standort in Deutschland haben? Mir wäre wohler dabei. Gruß Jürgen