** will be translated shortly ** even it is in German language, you might find it useful, I developed an sensor based on an ESP8266 and BLE beacon (blueIOT) feeding status and quality data about escalators at public railway stations to improve and innovate public transportation services. The traveler will be alerted when he approaches an elevator close by which is in service with proximity and added value service (e.g. temp, air quality, current floor level). Events will be pushed via the Maker Channel of IFTTT (IF App). Have fun browsing the project!
Im Rahmen des #DBhackathon wurden Aufzugsdaten also "opendata" für tolle neue Anwendungsideen zur Verfügung gestellt:
Mein Beitrag zum #DBhackathon, Januar 2016:
Aufzüge auf Bahnhöfen - stille technische Maschinen, die wir nicht immer beachten, aber:
- Kinder wollen in ihren Kinderwägen zum/vom Zug kommen!
- Rollifahrer möchten Barrierefrei zum/vom Zug kommen!
- Habt ihr schon mal eine sperriges Möbel per Bahn transportiert?
- Oder gar euer Fahrrad auf Bahnsteig 23 die Treppen hochgetragen?
- Oder man ist einfach zu faul und spart sich den Frühsport die Treppen zu steigen.
Es gibt viele Gründe für einen Aufzug am Bahnsteig. Nun ist diese technische Maschine nicht immer Einsatz fähig und meistens genau dann wenn man sie braucht:
- findet man sie nicht, war er auf Bahnsteig 2 oder 3?
- ist in Stockwerk "UG", wann wird er denn kommen?
- ja auch manchmal benötigt er eine Auszeit - Defekt :-(
Meistens ist man eh zu spät und dann wird es hecktisch ...
Nun haben wir ja die tolle API der Bahn, welche uns Auskunft über Aufzüge gibt, wo steht er? ist er aktiv? wer ist der Herrsteller? welcher Bahnsteig wird bedient?
Toll! - oder doch nicht? Halt uns fehlen wichtige Informationen ...
- In welchem Stockwerk steht er gerade? (Floor Level)
- Ist er schon voll? (Count)
- Auch dass soll es geben - riecht es in ihm? (Air Quality)
- GPS im Bahnhof viel Gück, wir benötigen eine indoor Navi! (Proximity)
Da die Bahn Aufzugs API lieder wichtige real-time Sensordaten *nicht* enthält habe ich mir schnell eine kleine "Nachrüstlösung" #retrofit gebaut. Hierzu wurde auf Basis eine 5$ WiFi Lösung (ESP8266) mit der Arduino(TM) Entwicklungsumgebung eine Basis entwickelt, welche die notwendigen Sensordaten erfaßt - ergänzt um einen Beacon (iBeacon oder Eddystone).
Schaltbild:
Da wir nun unser Sensor "online" ist kann er auch gleich aktuelle Informationen aus der Aufzugs API abfragen, bzw. später auch die "Sensordaten" gleich zurückspielen. Im Sinne der offenen Schnittstellen und Zusammenarbeit über Projektgrenzen hinweg habe ich gleich mal den @Aufzugswaechter integriert (Danke Alexey!).
Anwendungsablauf:
1. wir kommen am Bahnhof an
2. unser Smartphone interagiert (anonym) mit der "Nachrüstlösung" per Beacon
3. der Beacon = Position des Aufzuges, erfasst unsere Entfernung (Proximity)
4. wenn der in der Nähe befindliche Aufzug eine Reihe von Merkmalen erfüllt wird ein Trigger per Maker Channel der populären IFTTT Anwendung generiert, hierzu wurde eine "Rezept" definiert, welches eine "Notification" versendet. D.h. nicht jeder Aufzug, welche sich in der Nähe findet wird sich melden, sondern nur "meiner"!
5. Hier kann der Anwender nun selber entscheiden wie er informiert werden will:
twitter, notifcation, etc er definert seine Regel und Interaktion selbst nach seinen Wünschen, hierbei ist wichtig es muss nicht extra erst eine Anwendung geöffnet werden ...
6. der Fahrgast bekommt nun eine relevante, real-time Nachricht wo ein Aufzug mit welche Servicequalität bereit steht: Ist mein Aufzug schon da?
Die Servicequalität definiert sich über "Nähe", "Wartezeit", "Temperatur", "Geruch im Aufzug = viele Leute, müffelt es, ...", und andere mehr, wird als Sternchen (*,**,***,****) vergeben und mit angezeigt.
Der Ablauf ist eine prototypische Implementierung und kann mit beliebigen weiteren Daten angereichert werden (welche Fahrstrecke, ...) und ganz leicht ergänzt werden. Wichtig war auch die Kosten für eine exemplarische "Nachrüsteinheit" drastisch zu senken, aber doch relevante Sensor Informationen zu ermitteln, welche heute noch nicht in der API verfügbar sind. Im Sinne von #opendata sendet die Lösung die Daten gleich auch auf einen offenen Datenserver: http://data.sparkfun.com/aufzug
Zutaten:
- Smartphone (Android oder iOS)
- ESP8266 mit Sensoren (Barometer Bosch Sensortec BMP180/BME280 = Floor Level, Temperatur, Umweltdaten, ein Air Quality Sensor, andere optional) - Sparkfun ESP8266 bzw. Arduino Feather ESP8266
- blueIOT (Arduino basierender Beacon mit bglib) meine Lab-Entwicklung
- ein Arduino Programm (siehe Anhang) dieses beinhaltet zentral alle Ablauflogik incl. der Aufzugs-API, Beacon-Überwachung und wurde speziell für den #dbhackthon entwickelt
- die populäre IFTTT (IF) APP plus Rezept "Aufzug"
Ausblick:
Da wir nun eine real-time und locale Interaktion mit dem Aufzug haben, können wir auch noch mehr - in der nächsten Version ;-)
- weitere Sensoren verwenden (Beschleunigung, Anzahl Leute, etc)
- den Aufzug steuern (fährt bei Verfügbarkeit schon nach "EG", Tür auf per proximity oder Touch Screen)
Viele andere Ideen und Datenanalysen sind nun sehr einfach möglich. Es werden sich auch in der Anwendung dann viele neue Ideen entwickeln, welche den Aufzug in ein modernes, Service orientiertes Gerät verwandelt (Touch Screen" Reagiert auf mich" Steht für mich bereit! Stinkt nicht!) - welches Teil des "Internet der Dinge" wird und vom Kunden wie selbstverständlich in seine Interaktionswelt integriert wird.
Der intelligente Aufzug wird morgen auf uns auf dem richtigen Stockwerk warten, die Türe automatisch öffnen, ja auch mal lüften wenn es müffelt und andere Tolle Dinge machen ... Viel Spaß!
Comments