Projekt:SpaceLED: Unterschied zwischen den Versionen

Aus Schaffenburg
Zur Navigation springen Zur Suche springen
(Angefangen)
 
Zeile 23: Zeile 23:


<pre>
<pre>
cls
 
timer 20000,[periode]
timer 1000,[periode]
if Status == "v" then wprint "Geschlossen" else wprint "Offen"
wait
wait


[periode]
[periode]
cls
po 4 1
po 4 1
let Status = left(wget("status.schaffenburg.org/"),1)
let Status = left(wget("status.schaffenburg.org/"),1)
po 4 0
po 4 0
if Status == "v" then po 0 1 else po 0 0
if Status == "v" then po 0 1 else po 0 0
timer 300000,[periode]
if Status == "v" then wprint "Geschlossen" else wprint "Offen"
timer 60000,[periode]
wait
wait
</pre>
</pre>

Version vom 25. April 2016, 19:17 Uhr

Übersicht

Es wird beschrieben wie man mit einem NodeMCU-(Clone)-Board, WLAN, drei Widerständen und einer RGB-LED den Zustand des Space in sein Wohnzimmer holen kann. Sofern die Schaltung mit Strom und WLAN-Internetzugang versorgt wird ist sie aus, wenn der Space offen ist, oder rot, wenn ers nicht ist. Während des Update leuchtet sie blau.

Ansprechpartner

Hendrik

SpaceLED

Artikel in Arbeit

ESP8266BASIC

Mein NodeMCU habe ich der guten alten Zeit willen mit ESP8266BASIC beladen. Wie es geht, steht auf deren Website.

Funktionsweise Hardware

Zwei Pins sind über Widerstände mit einer RGB-LED verbunden, wobei Port 0 die Rote versorgt, Port 4 die Blaue. Masse ist normal mit GND verbunden.

Funktionsweise Software

Das Programm ruft zeitgesteuert den Zustand von http://status.schaffenburg.org ab, schaut ob das erste Zeichen ein "v" für verriegelt ist. Wird der Space offen gemeldet, wird der Port an dem die rote LED hängt LO geschaltet, wird der Space verriegelt gemeldet, so wird der Pin high.

Code

Der folgende Code ist mit ESP8266BASIC Version 2.0 Alpha 10 lauffähig. Voraussetzung ist das korrekte eintragen der Zugangsdaten als WLAN-Client und Freigabe für Internetzugriff. Ich habe dem Client nur Whitelistzugriff gegeben um ihn von anderen Websites fernzuhalten (damit er kein PR0N schaut) und hausintern einen DNS-Namen gegeben, um ihn nicht nur mit der IP-Adresse ansprechen zu können. Diese Version enthält noch keine Stromsparmaßnahmen.


timer 1000,[periode]
wait

[periode]
cls
po 4 1
let Status = left(wget("status.schaffenburg.org/"),1)
po 4 0
if Status == "v" then po 0 1 else po 0 0
if Status == "v" then wprint "Geschlossen" else wprint "Offen"
timer 60000,[periode]
wait

Lesestoff

Projekttagebuch:

  • 25.04.2015: Projektseite angefangen. Mangels Steckkontakten ist der grüne Die noch nicht angeschlossen und wird auch nicht angesteuert.