144 lines
4.2 KiB
Markdown
144 lines
4.2 KiB
Markdown
+++
|
||
title = "IoT: MQTT-Topics"
|
||
+++
|
||
|
||
Grundlegende Aufteilung der MQTT-Topics in Quellen und Senken (Sensoren
|
||
= Quellen, Aktoren = Senken). Ein Topic-Namensraum gehört den Sensoren,
|
||
ein Topic-Namensraum den Aktoren. Ein Verknüpfungs-Layer abonniert die
|
||
Sensor-Namensräume, und postet in den Aktor-Namensräumen. Klartext
|
||
Topics erlauben z.B. auf einem Bedienpanel lesbare Logs anzuzeigen.
|
||
(vgl.:
|
||
[Bamberg](https://www.hackerspace-bamberg.de/Space_Automation))
|
||
|
||
~~(Ein besonderer Topic-namensraum ist *Device Presence Control*. Hier
|
||
können kritische Nodes wie z.B. Einbruchssensoren etc. zyklisch ihre
|
||
Funktionsfähikeit melden)~~ Ist in MQTT schon eingebaut
|
||
|
||
## Raumnamen
|
||
|
||
- `lounge` (Sofaecke, ...)
|
||
- `work_el` (Elektronikwerkstatt, Netzwerkschrank, ...)
|
||
- `work_mech` (Mechanikwerkstatt, Fräsraum, ...)
|
||
- `raum4` (Beamer, Regalreihe, Workshops, ...)
|
||
- `kitchen` (Küche, Besteck, Dusche, ...)
|
||
- `hall` (Flur, Ofen, Geschirr, ...)
|
||
- `restroom` (Toiletten, Reinigungsmittel, ...)
|
||
- `cellar` (Ebenerdiger "Keller", Getränkelager, ...)
|
||
- `entrance_front` (Gelbe Eingangstür, Südwestseite, Klingel, Abstellgleis, ...)
|
||
- `entrance_back` (Orange Eingangstür, Nordortseite, Hof, Pennertonne, ...)
|
||
- `all` (Spezialfall für Sensoren/Aktoren die in allen Räumen gleich
|
||
sind, z.B. `sensor/audio/all/mpd`)
|
||
|
||
## Beispiel Topics
|
||
|
||
- `sensors/`
|
||
- `lounge/`
|
||
- `light_state`
|
||
- `window_state`
|
||
- `work_el/`
|
||
- `door_state`
|
||
- `light_state`
|
||
- `soldering_iron_state`
|
||
- `work_mech/`
|
||
- `light_state`
|
||
- `window_state`
|
||
- `kitchen/`
|
||
- `light_state`
|
||
- `hall/`
|
||
- `light_state`
|
||
- `restroom/`
|
||
- `light_state`
|
||
- `smell_state`
|
||
- `toilet_flush`
|
||
- `urinal_flush`
|
||
- `cellar/`
|
||
- `drinks_crate_counts`
|
||
- `drinks_scale_measurements_metric`
|
||
- `drinks_scale_measurements_raw`
|
||
- `light_state`
|
||
- `entrance_front/`
|
||
- `door_state`
|
||
- `entrance_back/`
|
||
- `door_state`
|
||
- `all/`
|
||
- `music_info`
|
||
- `actors/`
|
||
- `lounge/`
|
||
- `light_state`
|
||
- `window_state`
|
||
- `work_el/`
|
||
- `light_state`
|
||
- `work_mech/`
|
||
- `light_state`
|
||
- `window_state`
|
||
- `raum4/`
|
||
- `light_state`
|
||
- `window_state`
|
||
- `kitchen/`
|
||
- `light_state`
|
||
- `window_state`
|
||
- `hall/`
|
||
- `light_state`
|
||
- `window_state`
|
||
- `restroom/`
|
||
- `light_state`
|
||
- `toilet_flush`
|
||
- `urinal_flush`
|
||
- `cellar/`
|
||
- `light_state`
|
||
- `entrance_front/`
|
||
- `entrance_back/`
|
||
- `all/`
|
||
- `music_next_track`
|
||
- `music_previous_track`
|
||
- `music_play_pause`
|
||
- `music_volume_up`
|
||
- `music_volume_down`
|
||
|
||
## Sammlung möglicher Sensoren
|
||
|
||
### Mit Schaltern zu realisieren
|
||
|
||
- Dachluke Lounge und Küche
|
||
- Fenster in den einzelnen Räumen (Einfachversion: Schalter in Reihe für Fenster auf / zu).
|
||
Erfordert dann statt Umschalter eine Kette aus Öffnern + Pullup-Widerstand
|
||
- Mechanik-Werkstatt
|
||
- Lounge
|
||
- Raum 4
|
||
- Tür Raum 2 (E-Werkstatt / Haupteingang), Erfassung Verriegelungsstatus. Speziell: Sowohl
|
||
Motorschloß-Riegel als auch Abus-Knebelschloß-Riegel müssen überwacht werden
|
||
- Tür Raum 4, Erfassung Schließriegel (Öffner gegen Wechsler tauschen)
|
||
- Kühlschranktür
|
||
- Klopapierlager (Spender mit senkrechtem Rollenstapel, vorletzte Rolle => Sensorsignal)
|
||
- Klo besetzt / frei
|
||
- Außentüren zugezogen (schwierig wegen abgeranzter Mechanik)
|
||
- Klingelschalter (Ersatz für ISM - Funkklingeln) - ermöglicht
|
||
automatisches Türöffnen wenn Space auf
|
||
|
||
### Besondere Sensoren
|
||
|
||
- Bewegungsmelder (Versorgung aus Akku sollte gehen)
|
||
- Der über dem Kücheneingang
|
||
- Innenräume im Space?
|
||
- Wasseralarm (Am Fenster oder auf dem Boden?)
|
||
- Temperatur in den einzelnen Räumen
|
||
- In Raummitte
|
||
- Auf dem Fensterbrett (Detektion offener Fenster zusätzlich zum Fenstersensor?)
|
||
- Herd / Pizzaofen
|
||
- Anschluss an Kontrollampe, also Erfassung ob an / aus
|
||
- Stromerfassung über Wandler / Shunt?
|
||
- Lötstationen
|
||
|
||
## Sammlung möglicher Aktoren
|
||
|
||
- 230 V - Lasten (China Relaisplatinen, günstiger 433 MHz Gateway auf
|
||
Funksteckdosen, spart ausserdem Aufwand für Berührschutz)
|
||
- Türöffner unten (Relais wie GSM Schloss)
|
||
- Audio (MPD Ansteuerung)
|
||
- flipdots
|
||
- Lüftung
|
||
- Vorhandener Lüfter im Klo
|
||
- Motoren an den Dachluken
|
||
- flipdot - Leuchtkasten vor der M-Werkstatt
|
||
- Posting im IRC
|
||
- Mail (Vor allem bei niedrigem Batteriestand wichtig)
|