====== Auswertung von Sensordaten und Steuerung von Aktoren mit dem ESP-Microcontrollerboard ====== **Achtung!** Bevor du hier weitermachen kannst, musst du die Kompetenz //Elektro-Grundlagen für Microcontroller// erworben haben. Auf die maximal zulässige Stromstärke von **12 mA** an GPIO-Pins sei nochmal hingewiesen. Dieser Guide ist im Rahmen des [[uebung:itt11:microcontroller-projekt|Microcontroller-Projekts ITT11 - cyber-physische Systeme]] zu bearbeiten. Lies dir zuerst die Projektbeschreibung durch, bevor du auf dieser Seite weiterarbeitest. Für diesen Guide sei besonders auf das im Unterricht vorherrschende Pull-Prinzip higewiesen. Die Projektaufgabe stellt dich vor eine komplexe Anforderung, bei der du von der angebotenen Hilfestellung durch deine Lehrkraft Gebrauch machen solltest. ===== Empfohlene Lernstrategie ===== - Informiere dich über die für das Projekt zur Verfügung stehenden Sensoren und Aktoren und treffe in deinem Team eine Entscheidung, welche davon ihr einsetzen möchtet. - Informiere dich detailliert über die Verwendung des von euch gewählten Sensors und Aktors. Eine Suche unter Verwendung der Modellbezeichnung des verwendeten Geräts führt dich in der Regel zu - Datenblättern - Handbüchern - Anleitungen aus anderen Projekten - Du kannst dabei jederzeit deine Lehrkraft um Unterstützung bitten, wenn du nicht fündig wirst. - Beginne nicht sofort mit der Implementierung für das Projekt sondern mit sehr einfachen Teilimplementierungen. - Versuche die Sensordaten auszulesen und anzuzeigen, z. B. indem du den seriellen Monitor verwendest. - Versuche den Aktor nach einem festgelegten Schema unabhängig von Fremdfaktoren zu steuern. - Teste zuerst eventuell benötigte weitere Funktionalität, wie z. B. die WLAN-Verbindung, MQTT-Kommunikation oder ggf. die Verwendung eines Displays. - Plane, wie du die vorhandenen Erkenntnisse aus den Teilimplementierungen zu einem funktionsfähigen Prototyp zusammenfügen möchtest. - Beginne erst mit der Implementierung, wenn die Planung ausreichend weit fortgeschritten ist. - Teste die Funktion deines Prototyps regelmäßig bereits nach kleinen Änderungen, um auftretende Schwierigkeiten rechtzeitig zu erkennen und besser identifizieren zu können. - Denke daran, euren Projektverlauf zu dokumentieren. ===== Hinweise und Hilfsmittel ===== * Auf der [[uebung:itt11:beispielcode_esp8266|Beispielseite für Code für den ESP8266]] findest du einige Links zu Code-Beispielen, die dir im Umgang mit verschiedenen Komponenten oder bei der Bewältigung bestimmter Herausforderungen nützlich sein können. **Die Beispielseite ist quasi dein bester Freund für die Dauer dieses Projekts. Du solltest sie oft besuchen, sie ausführlich kennenlernen und ihr stets gut zuhören.** * Dokumentiere den Aufbau deines Prototypen sorgfältig. Verwende falls hilfreich auch Fotos dazu. Du solltest in der Lage sein, ihn jederzeit zu zerlegen und aus Einzelkomponenten wieder aufzubauen. * Besorge dir, falls für einen schnellen Test notwendig, vorübergehend einen zweiten Microcontroller um einzelne Komponenten oder Code-Abschnitte zu testen. ===== Ergänzendes und alternatives Material ===== * Anleitung: {{https://randomnerdtutorials.com/esp8266-deep-sleep-with-arduino-ide/|Deep Sleep}}: Strom sparen mit dem ESP8266 * Video: {{https://www.youtube.com/embed/tlgLA-PT5eE|Servo am NodeMCU}} (2:26) * Video: {{https://www.youtube.com/embed/5jF_io-A--0|PubSubClient mit NodeMCU}} (13:37)