Ollo (Diskussion | Beiträge) |
Ollo (Diskussion | Beiträge) (Software Schnittstelle hinzugefügt) |
||
(9 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 4: | Zeile 4: | ||
= Motor Leinwand = | = Motor Leinwand = | ||
== Benutzer-Schnittstelle == | |||
=== Eingabe === | |||
Die Steuerung hat folgende Taster, über die Eingaben gemacht werden können: | |||
{| border="1" | |||
! align="left"| Taster | |||
! Funktion | |||
|- | |||
| Hoch | |||
| Muss für mindestens 100ms gedrückt werden um die Leinwand einzurollen | |||
|- | |||
| Stop | |||
| Muss für mindestens 100ms gedrückt werden um jegliche Bewegungen zu stoppen | |||
|- | |||
| Runter | |||
| Muss für mindestens 100ms gedrückt werden um die Leinwand abzurollen | |||
|} | |||
== | === Ausgabe === | ||
Der Schalter hat eine LED, welche mit folgenden Farben Status ausgibt | |||
{| border="1" | |||
! align="left"| Farbe | |||
! Zustand | |||
|- | |||
| Blaues Blinken | |||
| Nach einem WLAN wird gesucht | |||
|- | |||
| Rotes Blinken | |||
| Achtung! Leinwand fährt nach unten | |||
|- | |||
| Grünes Blinken | |||
| Achtung! Leinwand fährt nach oben | |||
|} | |||
== Software Schnittstelle == | |||
Neben den physikalischen Knöpfen kann die Leinwand auch über MQTT gesteuert werden: | |||
mosquitto_pub -h bigbrother -t "/room/screen/command" -m "up" | |||
mosquitto_pub -h bigbrother -t "/room/screen/command" -m "down" | |||
mosquitto_pub -h bigbrother -t "/room/screen/command" -m "stop" | |||
=== Zustände der Leinwand in MQTT === | |||
Die Leinwand gibt ihre aktuelle Zustand über MQTT mit folgender Abfrage | |||
mosquitto_sub -h bigbrother -v -t "/room/screen/state" | |||
aus | |||
Leinwand rollt sich ab | |||
/room/screen/state movingdown | |||
Durch Benutzer oder MQTT angehalten | |||
/room/screen/state stop | |||
Leinwand rollt sich auf | |||
/room/screen/state movingup | |||
Leinwand ist komplett aufgerollt | |||
/room/screen/state up | |||
Leinwand ist komplett abgerollt | |||
/room/screen/state down | |||
=== Fortschritt der Leinwand in MQTT === | |||
Während die Leinwand sich bewegt kann die aktuelle Höhe abgefragt werden: | |||
mosquitto_sub -h bigbrother -v -t "/room/screen/percent" | |||
Wenn die Leinwand heruntergefahren wird: | |||
/room/screen/percent 100 | |||
/room/screen/percent 98 | |||
/room/screen/percent 97 | |||
... | |||
== Elektronik == | |||
=== Schalten === | === Schalten === | ||
Die | Die Releais müssen auf GND gezogen werden, um geschaltet zu werden. | ||
(Die Eingänge im Mikrocontroller sind via Pull-up nach oben gezogen) | (Die Eingänge im Mikrocontroller sind via Pull-up nach oben gezogen) | ||
Zeile 31: | Zeile 82: | ||
! Funktion | ! Funktion | ||
|- | |- | ||
| | | 2 | ||
| | | 14V | ||
| | | Saft | ||
|- | |- | ||
| 3 | | 3 | ||
| | | | ||
| | | Runter | ||
|- | |- | ||
| 6 | | 6 | ||
Zeile 48: | Zeile 95: | ||
|- | |- | ||
| 7 | | 7 | ||
| | | | ||
| Hoch | | Hoch | ||
|} | |} | ||
Zeile 54: | Zeile 101: | ||
[https://de.wikipedia.org/wiki/RJ-Steckverbindung#Zuordnung_von_RJ-Beschaltungsvarianten_zu_in_Europa_gebr.C3.A4uchlichen_Modularstecker-Bauformen Erklärung zu RJ45 (8P8C) Pinbelegung] | [https://de.wikipedia.org/wiki/RJ-Steckverbindung#Zuordnung_von_RJ-Beschaltungsvarianten_zu_in_Europa_gebr.C3.A4uchlichen_Modularstecker-Bauformen Erklärung zu RJ45 (8P8C) Pinbelegung] | ||
== Notabschaltung == | == Software == | ||
=== Notabschaltung === | |||
Die Motorsteuerung ist über Mechanische Endschalter (Endstopps) gelößt. D.h. die Software kann die "Hoch" oder "Runter" Befehle ewig senden. | Die Motorsteuerung ist über Mechanische Endschalter (Endstopps) gelößt. D.h. die Software kann die "Hoch" oder "Runter" Befehle ewig senden. | ||
Zeile 74: | Zeile 123: | ||
[[Datei:LeinwandZustaende.png]] | [[Datei:LeinwandZustaende.png]] | ||
== | == Aufbau == | ||
=== Version 2.0 === | |||
Hier wird die Steuerung komplett im Schalter mit einem ESP realisiert. | |||
<gallery> | |||
Datei:IMG_20160518_190923_small.jpg | ESP8266-Schalter | |||
</gallery> | |||
=== Version 1.0 === | |||
Diese Version hatte das originale Board mit einer neuen Software verwendet | |||
<gallery> | <gallery> | ||
Datei:leinwandcontroller.jpg | Orginal Mikrocontoller | Datei:leinwandcontroller.jpg | Orginal Mikrocontoller | ||
Zeile 80: | Zeile 138: | ||
Datei:IMG_20140529_185907.jpg | Test setup | Datei:IMG_20140529_185907.jpg | Test setup | ||
Datei:IMG 20140529 192935.jpg | Remote Erweiterung | Datei:IMG 20140529 192935.jpg | Remote Erweiterung | ||
</gallery> | |||
== Halterung == | |||
<gallery> | |||
Datei:IMG 20150616 190635.jpg | Konstruktion | |||
Datei:IMG 20150616 173055.jpg | Halterungs Winkel | |||
Datei:IMG 20150616 190615.jpg | Frontal Ansicht | |||
</gallery> | </gallery> | ||
Aktuelle Version vom 23. Juni 2016, 19:05 Uhr
Motor Leinwand
Benutzer-Schnittstelle
Eingabe
Die Steuerung hat folgende Taster, über die Eingaben gemacht werden können:
Taster | Funktion |
---|---|
Hoch | Muss für mindestens 100ms gedrückt werden um die Leinwand einzurollen |
Stop | Muss für mindestens 100ms gedrückt werden um jegliche Bewegungen zu stoppen |
Runter | Muss für mindestens 100ms gedrückt werden um die Leinwand abzurollen |
Ausgabe
Der Schalter hat eine LED, welche mit folgenden Farben Status ausgibt
Farbe | Zustand |
---|---|
Blaues Blinken | Nach einem WLAN wird gesucht |
Rotes Blinken | Achtung! Leinwand fährt nach unten |
Grünes Blinken | Achtung! Leinwand fährt nach oben |
Software Schnittstelle
Neben den physikalischen Knöpfen kann die Leinwand auch über MQTT gesteuert werden:
mosquitto_pub -h bigbrother -t "/room/screen/command" -m "up" mosquitto_pub -h bigbrother -t "/room/screen/command" -m "down" mosquitto_pub -h bigbrother -t "/room/screen/command" -m "stop"
Zustände der Leinwand in MQTT
Die Leinwand gibt ihre aktuelle Zustand über MQTT mit folgender Abfrage
mosquitto_sub -h bigbrother -v -t "/room/screen/state"
aus
Leinwand rollt sich ab
/room/screen/state movingdown
Durch Benutzer oder MQTT angehalten
/room/screen/state stop
Leinwand rollt sich auf
/room/screen/state movingup
Leinwand ist komplett aufgerollt
/room/screen/state up
Leinwand ist komplett abgerollt
/room/screen/state down
Fortschritt der Leinwand in MQTT
Während die Leinwand sich bewegt kann die aktuelle Höhe abgefragt werden:
mosquitto_sub -h bigbrother -v -t "/room/screen/percent"
Wenn die Leinwand heruntergefahren wird:
/room/screen/percent 100 /room/screen/percent 98 /room/screen/percent 97 ...
Elektronik
Schalten
Die Releais müssen auf GND gezogen werden, um geschaltet zu werden. (Die Eingänge im Mikrocontroller sind via Pull-up nach oben gezogen)
RJ45 Pinbelegung
RJ45 Pin | Mikrocontroller Pin | Funktion |
---|---|---|
2 | 14V | Saft |
3 | Runter | |
6 | GND | |
7 | Hoch |
Erklärung zu RJ45 (8P8C) Pinbelegung
Software
Notabschaltung
Die Motorsteuerung ist über Mechanische Endschalter (Endstopps) gelößt. D.h. die Software kann die "Hoch" oder "Runter" Befehle ewig senden.
Daher muss eigentlich nie der Zustand Hoch / Runter verlassen werden.
Um die Relais und zu Entlasten wurde folgende Rechnung durchgeführt:
Maximale-Leinwand Länge sei 200cm
Achse auf der die LW aufgerollt ist hat einen Durchmesser von 6cm
U = 2*pi*r = pi*d
=> ca 10 Umdrehungen fürs komplette Ab/ Aufrollen
Motor hat 10 r/min
Nach 1min ist die Leinwand komplett ausgerollt
Nach 1min x sec kommt man immer in den Timeout
Aufbau
Version 2.0
Hier wird die Steuerung komplett im Schalter mit einem ESP realisiert.
-
ESP8266-Schalter
Version 1.0
Diese Version hatte das originale Board mit einer neuen Software verwendet
-
Orginal Mikrocontoller
-
Schalter
-
Test setup
-
Remote Erweiterung
Halterung
-
Konstruktion
-
Halterungs Winkel
-
Frontal Ansicht
Software
Der aktuelle Stand der Software-Entwicklung ist in unserem Github zu finden: https://github.com/C3MA/MotorLeinwand