Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung Nächste ÜberarbeitungBeide Seiten der Revision | ||
projekte:datenreise [2012/03/21 22:30] – [Infrastruktur] macgoever | projekte:datenreise [2012/04/16 17:56] – [Infrastruktur] macgoever | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
=====Datenreise===== | =====Datenreise===== | ||
====Idee==== | ====Idee==== | ||
- | Um unsere Visibility in der Öffentlichkeit zu erhöhen entstand heute die Idee, eine Datenreise durch die gesamte Stadt zu realisieren. Dazu ist der Plan an verschiedenen Stellen in Münster kleine Stationen aufzustellen, | + | Um unsere Visibility in der Öffentlichkeit zu erhöhen entstand heute die Idee, eine Datenreise durch die gesamte Stadt zu realisieren. Dazu ist der Plan an verschiedenen Stellen in Münster kleine Stationen |
====Infrastruktur==== | ====Infrastruktur==== | ||
- | Die Daten werden von eine zentralen Instanz bereitgestellt. Die Stationen holen sich die Daten übers Inet von einem Server, übertragen sie und schieben sie wieder auf den Server zurück. Dadurch kann man alle Stationen monitoren und man kann das System dynamisch erweitern oder Stationen wieder entfernen. Sogar eine Erweiterung in eine andere Stadt ist denkbar. | + | Die Daten werden von eine zentralen Instanz bereitgestellt. Die Stationen holen sich die Daten übers Inet von einem Server, übertragen sie auf die lustige und anschauliche Art und schieben sie wieder auf den Server zurück. Dadurch kann man alle Stationen monitoren und man kann das System dynamisch erweitern oder Stationen wieder entfernen. Sogar eine Erweiterung in eine andere Stadt ist denkbar. |
- | Also wird quasi nur die Schnittstelle zur zentralen | + | ===Zentrale |
+ | Auf dem Warpzone Server gibt es eine VM (datenreise.warpzone.ms), die Stand heute noch nix kann. Ich will aber mal beschreiben was sie können soll: | ||
+ | ==Frontend== | ||
+ | Das Frontend soll möglichst einfach sein, damit die Einstieghürde für potentielle Mitmacher möglichst gering ist. Die Schnittstelle soll möglichst vielseitig sein, aber auch ein Mindestmaß an Sicherheit bieten. Daher kommen für die Übertragung der Daten nur Protokolle in Frage, die eine Authentifizierung ermöglichen. Eine mögliche Schnittstelle wäre http mit nem PHP oder CGI im Hintergrund. Da http selbst zu proggen nicht ultraeingängig ist, könnte man noch ein MiniFTP entwickeln, der mit den Befehlen '' | ||
+ | Mit dieser Vorgehensweise hat man folgende Probleme erschlagen: | ||
+ | * Dateinamen : Dateinamen sind immer eine Fehlerquelle bei Falschbenennung oder auch bei bereits vorhandenen Dateinamen. Dadurch kann es zu zahlreichen unvorhergesehenen Fehlern kommen und das Interface sollte ja einfach sein, gell? | ||
+ | * Timestamps: Für unsere statistische Auswertung müssen wir wissen, welche Station wie lange gebraucht hat. Einfach nur eine Datei hochladen, die dann von einem Prozess eingesammelt wird, der nur alle 15 Minuten läuft ist etwas ungenau. Dann könnte der Dateiname der Uploaddatei einen Timestamp enthalten. Der müsste aber korrekt im Layout und synchron zur zentralen Uhr sein. Zudem hat nicht jede Station überhaupt eine Uhrzeit da. | ||
+ | * Threadsicherheit: | ||
+ | * Authentifizierung: | ||
+ | * Datenintegrität: | ||
====Webseite==== | ====Webseite==== | ||
Um das Projekt auch überregional bekannt zu machen brauchen wir natürlich eine Webseite. Dort wäre eine Karte nett, auf der alle Stationen verzeichnet sind. Bei Klick auf die Stationen kriegt man Infos über die Station: | Um das Projekt auch überregional bekannt zu machen brauchen wir natürlich eine Webseite. Dort wäre eine Karte nett, auf der alle Stationen verzeichnet sind. Bei Klick auf die Stationen kriegt man Infos über die Station: | ||
Zeile 21: | Zeile 30: | ||
====Brainstorm für Stationen==== | ====Brainstorm für Stationen==== | ||
- | ===Wasserwaage=== | + | === Digitale Übermittlung |
- | Je nach Bytewert wird eine bestimmte Menge Wasser in ein Wasserglas geschüttet und gewogen. Das Wiegeergebnis ist das übertragene Byte. Danach muss das Wasser wieder zurückgepumpt werden. | + | ==Laser== |
- | + | ||
- | ===Laser=== | + | |
2 Laser übertragen die Daten. Einer gibt den Takt auf einen Fotosensor und der andere wird angeschaltet, | 2 Laser übertragen die Daten. Einer gibt den Takt auf einen Fotosensor und der andere wird angeschaltet, | ||
- | ===Murmelbahn=== | + | ==Murmelbahn== |
Im getakteten Rythmus rollt eine Murmel vorbei, oder halt nicht. Keine Kugel Bit 0 / Kugel Bit 1. | Im getakteten Rythmus rollt eine Murmel vorbei, oder halt nicht. Keine Kugel Bit 0 / Kugel Bit 1. | ||
- | ===Farberkennung=== | + | ==Farberkennung== |
Murmeln einer bestimmten Farbe rollen in eine Kammer und werden mit einer RGB LED und einem Fotosensor gescannt. Jede Farbe steht für ein Tupel. | Murmeln einer bestimmten Farbe rollen in eine Kammer und werden mit einer RGB LED und einem Fotosensor gescannt. Jede Farbe steht für ein Tupel. | ||
- | ===Slow Ethernet=== | + | |
+ | ==Slow Ethernet== | ||
Die Daten werden nach dem Ethernetstandard übertragen, | Die Daten werden nach dem Ethernetstandard übertragen, | ||
- | ===Fahnenschwenker=== | + | |
+ | ==Fahnenschwenker== | ||
Eine Figur mit 2 schwenkbaren Armen steht auf einem Dach und bewegt je nach darzustellendem Byte die Arme ein. Eine Kamera auf einem anderen Hausdach erkennt die Armstellung und speist das Byte wieder ein. | Eine Figur mit 2 schwenkbaren Armen steht auf einem Dach und bewegt je nach darzustellendem Byte die Arme ein. Eine Kamera auf einem anderen Hausdach erkennt die Armstellung und speist das Byte wieder ein. | ||
+ | |||
+ | |||
+ | === Analoge Übermittlung === | ||
+ | == Wasserwaage == | ||
+ | Je nach Bytewert wird eine bestimmte Menge Wasser in ein Wasserglas geschüttet und gewogen. Das Wiegeergebnis ist das übertragene Byte (bzw. 100% Füllstand = vollster Farbwert, 0%=schwarz). Danach muss das Wasser wieder zurückgepumpt werden. | ||
+ | |||
+ | == Entfernung == | ||
+ | Ein Hindernis wird auf einen Ultraschallsensor zu bewegt oder entfernt. Wenn es zum Stillstand kommt, ist die Entfernung zur Messeinheit das zu übertragende Byte. (Bzw. Volle Entfernung = 100% Farbwert, niedrigste 0%) | ||
+ | |||
+ | === Alternative Übermittlung === | ||
+ | == Crypt/ | ||
+ | Die Daten werden verschlüsselt (XOR(Data," |