Hausautomation mit Arduino | 1 |
Einleitung | 5 |
Inhaltsverzeichnis | 7 |
1Einstieg in die Hausautomation | 11 |
1.1 Begriffsklärung | 11 |
1.2 Kommerzielle Produkte | 12 |
FS20 | 13 |
Homematic/eQ-3 | 14 |
Belkin WEMO | 15 |
AVM Fritz | 15 |
Pearl CasaControl | 16 |
China 434 | 16 |
1.3 Freie Projekte | 17 |
FHEM | 17 |
OpenHAB | 17 |
Smarthomatic | 17 |
1.4 Der Maker-Arbeitsplatz | 18 |
Arbeitsplatz | 18 |
Aufbewahrung | 18 |
Löten und messen | 19 |
1.5 Tipps zum sauberen Aufbau von Schaltungen | 21 |
Eigenbauplatinen aus Normplatinen | 21 |
Prototypen-Shields | 22 |
Selbst ätzen oder bestellen | 23 |
Flexibilität mit Jumpern und Headern | 24 |
Schaltungsentwürfe mit Fritzing | 24 |
1.6 Tipps zum Upcycling | 25 |
Geplante Obsoleszenz? – Nicht mit uns! | 25 |
Zielgerichtetes Schlachten spart Geld | 26 |
Vorsicht, Hochspannung! | 27 |
1.7 Tipps zum Aufbau von Gehäusen | 28 |
Missbrauchte Gefrierboxen | 28 |
Alu und Kunststoff | 28 |
Steampunk mit Holzkästchen | 28 |
3D-Druck | 28 |
Schrumpfschlauch | 29 |
1.8 Tipps zur Energieversorgung | 29 |
Steckernetzteile | 29 |
Akkus | 30 |
Einwegbatterien | 30 |
Solarzellen | 31 |
Parasitäre Energieversorgung | 31 |
2Grundlagen und Basisprojekte | 33 |
2.1 Die richtige Arduino-IDE | 34 |
2.2 Der Arduino Yún als Steuerungszentrale | 35 |
Erstkontakt mit Yún | 36 |
Wo bist du, Yún? | 40 |
SSH-Zugriff auf Arduino Yún | 41 |
Arduino Yún per Netzwerk programmieren | 42 |
Debugging von Yún-Sketches | 44 |
Webserver schaltet LED | 45 |
2.3 Raspberry Pi als Alternative | 47 |
Arduino per I²C anbinden | 48 |
Vorbereitung beim Raspberry Pi | 49 |
Skript schaltet LED | 50 |
Sonderfall RPi-Shieldbridge | 55 |
2.4 Arduinos für Sensoren und Aktoren | 56 |
Prototyping mit Arduino Uno | 57 |
Kompakte Sensoren mit Arduino Pro Mini | 58 |
Maximale Flexibilität mit Rasterduino | 61 |
Klein und billig: Rastertiny | 70 |
Platine zum Flashen von Bootloadern und Programmieren von Attinys | 76 |
Funk inklusive bei Moteino | 78 |
3Großer Projektteil | 79 |
3.1 Kommunikation mit Funkaktoren | 79 |
Projekt: Arduino schaltet Funksteckdosen | 79 |
Projekt: Erweiterung zur Schaltuhr | 84 |
Funkuhr setzt RTC | 98 |
Projekt: Signale der China-434-Fernbedienung verarbeiten | 100 |
Projekt: FS20-Aktoren steuern | 103 |
Projekt: Zwei Arduinos funken miteinander | 108 |
Projekt: Umbau von Heizkörperthermostaten auf Funk | 117 |
3.2 Sensoren selbst bauen | 129 |
Projekt: Basissensor mit Ethernetverbindung | 129 |
Projekt: Basissensor mit Einwegefunk (434 MHz Manchester) | 136 |
Projekt: Basissensor mit RFM12B-Transceivern (434 MHz) | 142 |
Hintergrund: Stromsparmodi nutzen | 146 |
Projekt: Lichtsensor | 150 |
Projekt: Temperatursensor | 152 |
Projekt: Lecksensor für die Waschküche | 155 |
Projekt: Fenster offen? | 159 |
3.3 Steuerungszentrale aufbauen | 162 |
Projekt: Ein Adapter, um alles anzuschließen | 162 |
Projekt: Aktoren in REST-Schemata integrieren (Yún) | 169 |
Projekt: Aktoren in REST-Schemata integrieren (Raspberry Pi) | 174 |
Projekt: Sensoren in REST-Schemata integrieren (Yún) | 179 |
Projekt: Sensoren in REST-Schemata integrieren (Raspberry Pi) | 182 |
Projekt: Ein hübsches Webfrontend statt REST-Links (Arduino Yún) | 190 |
Projekt: Ein hübsches Webfrontend statt REST-Links (Raspberry Pi) | 196 |
Projekt: REST sicher im Internet verfügbar machen | 199 |
Projekt: Anwesenheitsermittlung per Bluetooth | 204 |
3.4 Kombinierte Projekte | 208 |
Projekt: Die RFID-Katzentür | 208 |
Projekt: Twitternde Zimmerpflanzen | 215 |
Projekt: War der Briefträger schon da? | 221 |
3.5 Mit Sicherheit! | 225 |
Projekt: Rauchmelder meldet per SMS | 225 |
Projekt: Gaslecksensor selbst gebaut | 233 |
Projekt: Steampunk-Einlasskontrolle mit Wählscheibe | 237 |
AAnhang | 247 |
A.1 Crashkurs Arduino | 247 |
IDE installieren | 247 |
Aufbau eines Arduino | 247 |
Empfohlene Bauteile | 248 |
Beispiel: LED blinken lassen | 248 |
Beispiel: Debug-Ausgabe am PC | 248 |
Bibliotheken importieren | 249 |
A.2 Problemlösung | 249 |
Netzwerk-Troubleshooting | 249 |
#ifdef verursacht seltsame Fehler | 249 |
BGlossar | 251 |
Stichwortverzeichnis | 257 |
#ifdef | 44 |
3D-Druck | 28 |
434 MHz Manchester | 136 |
Akku | 30 |
Anwesenheitserkennung | 150 |
Anwesenheitserkennung | 204 |
Arduino | 57 |
Due | 57 |
Galileo | 57 |
Kompatibilität | 56 |
Leonardo | 57 |
Pro Mini | 55 |
Pro Mini | 58 |
Pro Mini | 162 |
Pro Mini | 174 |
Uno | 55 |
Uno | 56 |
Uno | 57 |
Uno R3 | 174 |
Yún | 35 |
Yún | 108 |
Yún | 162 |
Yún | 169 |
Yún | 179 |
Yún | 190 |
Yún | 205 |
Yún | 215 |
Yún | 229 |
Arduino-IDE | 34 |
Arduino-IDE | 42 |
Arduino-IDE | 247 |
Arduino-Proto-Shield | 162 |
ATmega328P | 55 |
ATmega328P | 56 |
ATmega328P | 57 |
ATmega328P | 174 |
ATmega328P | 179 |
ATmega328P | 226 |
ATmega32U4 | 56 |
Attiny45 | 70 |
Atxmega | 57 |
AVM Fritz | 15 |
Batterie | 30 |
Batterie | 129 |
Batterie | 146 |
Bluetooth | 204 |
BlueZ | 205 |
Bootloader | 59 |
Bootloader | 63 |
Bootloader | 67 |
Bootloader | 73 |
Bootloader | 76 |
Breadboard | 21 |
Briefkastensensor | 221 |
Brownout Detection | 149 |
CasaControl | 16 |
CGI-Skript | 190 |
China 434 | 16 |
China 434 | 100 |
Cronjob | 172 |
CSS | 193 |
CSV-Datei | 187 |
Cygwin | 41 |
Dauerbetrieb | 142 |
DCF77 | 84 |
DCF77 | 92 |
Debugging | 44 |
DS1307 | 84 |
DS3231 | 84 |
Dynamisches DNS | 203 |
Einlasskontrolle | 237 |
Einwegefunk | 136 |
Elektrolyt | 156 |
Enc28J60-Ethernetmodul | 129 |
Energiesparfunktion | 226 |
Energiesparmodus | 147 |
Erdfeuchtesensor | 158 |
Erdfeuchtesensor | 216 |
Ethernet | 129 |
Fenstersensor | 159 |
FHEM | 17 |
Flask | 55 |
Flask | 199 |
Flask-Applikationsserver | 196 |
Fotodiode | 150 |
Fotowiderstand | 150 |
Fritzing | 24 |
FS20 | 13 |
FS20 | 175 |
FS20-Aktoren | 103 |
Funkreichweite | 83 |
Funksensor | 179 |
Funksteckdose | 79 |
Funksteckdose | 137 |
Funksteckdose | 192 |
Funkuhr | 84 |
Fusebits | 66 |
Fusebits | 67 |
Gaslecksensor | 233 |
Gassensor | 233 |
Gegenstromwärmetauscher | 12 |
Gehäuse | 28 |
Heißleiter | 154 |
Heizkörperthermostat | 108 |
Heizkörperthermostat | 117 |
Heizkörperthermostat | 186 |
Heizungssteuerung | 152 |
Heizungssteuerung | 199 |
Helligkeit | 187 |
Homematic | 14 |
I²C | 48 |
ICSP | 59 |
ICSP-Header | 108 |
Interrupt | 129 |
Interrupt | 147 |
Interrupt | 222 |
Interrupt | 222 |
Interrupt Service Routine | 156 |
JSON | 47 |
JSON | 135 |
Katzentür | 208 |
Lecksensor | 155 |
Leitungswasser | 156 |
Lichtsensor | 150 |
Linino | 35 |
Löten | 19 |
Luftfeuchtigkeit | 187 |
Lux | 151 |
Manchester 434 MHz | 136 |
Manchester-Bibliothek | 165 |
MC145010 | 225 |
MC145012 | 225 |
Memory-Effekt | 151 |
Mikrocontroller | 6 |
Mikrocontroller | 33 |
Minimalsensor | 136 |
MQ-Sensoren | 236 |
Nachtabsenkung | 11 |
NSI | 238 |
NSR | 238 |
OpenHAB | 14 |
OpenHAB | 17 |
opkg | 41 |
Post | 221 |
Programmer | 73 |
Pull-up-Widerstand | 160 |
Raspberry Pi | 47 |
Raspberry Pi | 162 |
Raspberry Pi | 174 |
Raspberry Pi | 179 |
Raspberry Pi | 182 |
Raspberry Pi | 196 |
Raspberry Pi | 232 |
Raspberry-Pi-Shieldbridge | 55 |
Rasterduino | 61 |
Rasterduino | 121 |
Rasterduino | 174 |
Rastertiny | 70 |
Rauchmelder | 225 |
RC522-Chip | 208 |
RCSwitch | 80 |
RCSwitch | 100 |
RCSwitch | 175 |
Real Time Clock | 84 |
Reed-Kontakt | 159 |
Reed-Kontakt | 221 |
REST-API | 45 |
REST-API | 176 |
REST-API | 199 |
REST-Interface | 169 |
RF12-Bibliothek | 124 |
RFID-Katzenklappe | 208 |
RF-Link | 80 |
RF-Link-Empfänger | 103 |
RF-Link-Empfänger | 162 |
RF-Link-Sender | 79 |
RF-Link-Sender | 136 |
RF-Link-Sender | 162 |
RFM12B | 109 |
RFM12B | 228 |
RFM12B-Transceiver | 108 |
RFM12B-Transceiver | 162 |
RFM12B-Transceiver | 180 |
RFM12B-Transceiver | 185 |
RPi-Shieldbridge | 108 |
RPi-Shieldbridge | 162 |
RTC-Modul | 85 |
SC5262 | 80 |
SC5262 | 100 |
Schaltuhr | 84 |
Schaltuhr | 177 |
Schlafmodus | 147 |
Schrumpfschlauch | 29 |
Sensor | 129 |
Sensor | 136 |
Serial Peripheral Interface | 110 |
Servo | 211 |
Smarthomatic | 17 |
Smartphone | 204 |
SMS senden | 229 |
SNAP-Protokoll | 108 |
Solarzelle | 31 |
SPI | 108 |
SPI | 130 |
SPI | 209 |
SQLite-Datenbank | 187 |
SSH | 41 |
Stand-by-Stromfresser | 80 |
Steampunk | 28 |
Steampunk | 237 |
Steckernetzteil | 29 |
Stylesheet | 197 |
Takt | 72 |
Temboo-API | 216 |
Temboo-API | 229 |
Temperatur | 187 |
Temperatursensor | 152 |
Thermostat | 121 |
Trinärlogik | 101 |
Twilio | 229 |
Twitter | 215 |
Twitternde Zimmerpflanzen | 215 |
UDP | 132 |
UDP-Sensor | 179 |
UIPEthernet-Bibliothek | 130 |
User Datagram Protocol | 132 |
Virtualwire | 142 |
Wählscheibe | 237 |
Wake On LAN | 130 |
Waschmaschine | 155 |
Wattuino Pro Mini | 59 |
Webserver | 45 |
Webserver | 190 |
Webserver | 196 |
Weihnachtsbaum | 80 |
WEMO | 15 |
WLAN | 36 |
YunServer | 169 |
Zehntel-Zoll-Raster | 21 |