Autor: Paul-Vincent Roll

Frühling!

Nachdem ich während der Fahrt zur Schule morgens inzwischen an zwei aufeinanderfolgenden Tagen das Bedürfnis hatte, sofort auszusteigen, irgendwoher eine Kamera herzaubern und den Sonnenaufgang zu fotografieren, habe ich mich heute mal dazu entschlossen, einfach früher loszufahren und genau das tatsächlich auch zu tun!

image

Ich wandere gerade irgendwo auf dem Schönberg herum und habe noch ca. eine Stunde bevor ich wieder losfahren muss, um noch rechtzeitig in die Schule an zu kommen.

UPDATE 07:37
Es war ziemlich neblig, was cool gewesen wäre aber leider waren die Wolken hinter dem Nebel so dicht, dass gar keine Sonne mehr durchkam.

_MG_0708

_MG_0717

Node.js – Python Bridge

Die Methode aus dem letzten Beitrag Daten von meinem Pythonskript mit zerorpc in mein Node.js-Skript zu bekommen hat zwar im Endeffekt irgendwie funktioniert, nur gab es das Problem, dass es wenn ich die Skripte eine Weile laufen lies irgendwann aufgehört hat die Daten weiterzuleiten. Da ich sowieso nicht wirklich zufrieden mit der Methode war, habe ich gar nicht mehr nach dem Problem sondern gleich nach einer anderen Lösung gesucht, die ich dank John Hobbs jetzt auch habe. Auf der Suche nach Beispielen für UNIX Sockets habe ich diesen Artikel gefunden, nach einem Kommentar, hat er ihn gleich noch um einen Node.js-Server ergänzt, was jetzt auch ohne Probleme funktioniert.

import RPi.GPIO as GPIO
import os, os.path
import socket

GPIO.setup(27, GPIO.IN)

def node_bridge(command):
    if os.path.exists( "/tmp/python_node_bridge" ):
        client = socket.socket( socket.AF_UNIX, socket.SOCK_STREAM )
        client.connect( "/tmp/python_node_bridge" )
        client.send( command )
        client.close()
    else:
        print "Couldn't Connect!"

def switchview(27):
    node_bridge("switchview")

try:
    GPIO.add_event_detect(27, GPIO.FALLING, callback=switchview, bouncetime=600)
    while 1:
        time.sleep(100)
var io = require('socket.io').listen(1234);
var net = require('net');

var server = net.createServer(function(python_bridge) {
  python_bridge.on('data', function(data) {
    if(data.toString() == "switchview") {
      io.sockets.emit('switchview');
    }
  });
});
server.listen("/tmp/python_node_bridge");
var socket = io.connect('http://localhost:1234');
view = "view1";

function switchview() {
  if (view == "view1") {
    $('#view1').fadeOut(700);
    $('#view2').fadeIn(700);
    view = "view2"
  } else if (view == "view2") {
    $('#view2').fadeOut(700);
    $('#view1').fadeIn(700);
   view = "view1"
  }
};

socket.on('switchview', function () {
  switchview();
});

Diese drei Code-Schnippsel schalten nun nach dem Drücken eines Tasters zwischen zwei verschiedenen Ansichten hin und her, zeigen also unterschiedliche Informationen auf dem Spiegel an.
Das Pythonskript überwacht den GPIO-Pin und wartet darauf, dass die 3.3V Spannung auf 0V abfällt. Passiert das schickt es eine Nachricht an mein Node.js-Skript, welches diese an die Benutzeroberfläche weiterleitet und dort eine Funktion auslöst, die zwischen den Ansicht wechselt.

Python Unklarheit

Vielleicht hat hier ja irgendjemand ein bisschen mehr Ahnung von Python als ich – vermutlich nicht sonderlich schwer – und kann mir daher erklären, wieso das erste Skript nicht funktioniert, das Zweite hingegen schon. Biteule und ich sind nur soweit gekommen, dass es wohl irgendwas mit dem Threading der GPIO-Callbacks zu tun haben muss aber was jetzt genau das Problem ist, verstehen wir beide nicht. Es ist nicht so, dass zerorpc im ersten Skript beim Aufruf nicht vorhanden ist, immerhin kann es einen Fehler ausgeben (LostRemote: Lost remote after 10s heartbeat), wieso also macht es trotzdem einen Unterschied, an welcher Stelle ich es importiere?

import RPi.GPIO as GPIO
import time
import zerorpc

nodebridge = zerorpc.Client()
nodebridge.connect("tcp://127.0.0.1:4242")

GPIO.setmode(GPIO.BCM)
GPIO.setup(27, GPIO.IN)

def switchview(switchview_taster):
    nodebridge.switchview()

try:
    GPIO.add_event_detect(27, GPIO.FALLING, callback=switchview, bouncetime=600)
    while 1:
        time.sleep(100)
import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BCM)
GPIO.setup(27, GPIO.IN)

def switchview(switchview_taster):
    import zerorpc
    nodebridge = zerorpc.Client()
    nodebridge.connect("tcp://127.0.0.1:4242")
    nodebridge.switchview()

try:
   GPIO.add_event_detect(27, GPIO.FALLING, callback=switchview, bouncetime=600)
   while 1:
      time.sleep(100)
var io = require('socket.io').listen(1234);
var zerorpc = require("zerorpc");

var pythonbridge = new zerorpc.Server({
  switchview: function(reply) {
    io.sockets.emit('switchview');
    reply(null);
  }
});

pythonbridge.on("error", function(error) {
  console.error("RPC server error:", error);
});

pythonbridge.bind("tcp://0.0.0.0:4242");

UPDATE 12.02.15 – 14:51:

Der magische Spiegel – EMV Störungen

Kleines Zwischenupdate! Mein Onkel hat mir ein Spiegelmuster besorgt, so sieht das ganze mit Glas davor aus 🙂
Spiegelmuster

Wie es aussieht, habe ich ein paar Probleme mit der elektromagnetischen Verträglichkeit meiner Komponenten…
Ich habe vor kurzem einen Taster zum herunterfahren des Spiegels eingebaut, der folgendermaßen funktioniert: Ein GPIO-Pin ist ständig auf 3.3V gesetzt, wenn ich den Taster drücke, wird der Pin geerdet und geht auf 0V. Ein Pythonskript bemerkt das und fährt den Raspberry herunter. Seltsamerweise passiert das auch jedes mal, wenn der Bewegungsmelder meinen Monitor anschaltet. Ich dachte zunächst irgendetwas stimmt mit meiner Schaltung nicht und überlegte daher, zusammen mit meinem Onkel, wie die 230V des Monitors den Pi über das Relais beeinflussen könnten. Eine andere Überlegung war, dass der Monitor zuviel Strom zieht und deswegen irgendwie kurz die 3.3V zusammenbrechen- wieso auch immer – da es, wie ich später bemerkt habe, auch passiert, wenn ich den Monitor nicht über das Relais anschließe.

alte Lampe
Gerade habe ich dann aber diese alte Lampe geholt, da ich etwas Licht gebraucht habe, um richtig beurteilen zu können, wie es sich mit der Reflektivität und der Durchlässigkeit verhält, wenn man den Spiegel normal verwendet. Naja. Mit dem, was dann passiert ist, habe ich nicht so ganz gerechnet…
Jedes mal, wenn ich die Lampe entweder ein oder aus schalte (und sie an einer bestimmten Stelle steht), geht der Monitor für 2 Sekunden aus, auf den Raspberry Pi, scheint sie keine Auswirkung zu haben aber es würde nahe liegen, dass es sich bei dem anderen Problem, um etwas ähnliches handelt…

UPDATE 22:22
Ich habe noch ein bisschen mit der Lampe oder besser ihrem Kabel experimentiert. Wenn ich das Kabel über den Pi hänge, passiert beim Anschalten das Selbe, wie beim Einschalten des Monitors. Es liegt also vermutlich tatsächlich an irgendwelchen Abstrahlungen der Stromkabel.

Der magische Spiegel – Raspberry Pi

Ich bin momentan mit einem kleinen Projekt beschäftigt und dachte ich schreibe daher einfach mal wieder einen Artikel! 🙂

In meinem Zimmer steht seit geraumer Zeit ein DVI-Monitor herum. Er war von Anfang an mit einem Raspberry Pi verbunden aber hatte immer wieder wechselnden Aufgaben. Zu beginn hatte ich eine XBMC Installation darauf und benutzte den Bildschirm zum Filme schauen und Musik hören mit meiner Anlage. Danach hatte ich mal den Plan ihn als Informationskiosk einzusetzen, irgendwann fand ich es dann aber doch etwas seltsam und unnötig ein Display herumstehen zu haben, das nur Informationen anzeigt (mal abgesehen davon, dass ich sowieso nicht wirklich wusste, was ich darauf eigentlich anzeigen sollte), also funktionierte ich das Setup wieder in ein Mediencenter um.

Vor kurzem habe ich dann – auf der Suche nach Raspberry Pi Projekten – den „Magischen Spiegel“ von Michael Teeuw wiederentdeckt und ganz spontan beschlossen mir auch so einen zu bauen. Ich habe also das Gehäuse des Monitor auseinandergeschraubt und angefangen zu überlegen, wie ich den Pi am besten darauf unterbringen konnte, an Michaels Interface habe ich auch noch ein bisschen etwas verändert. Das Original zeigte zufällige Komplimenten aus einer Liste, da ich aber eher Tageszeit bezogene Texte wollte, habe ich diese Funktion noch schnell eingebaut (meine erste Git-Pull-Requests; yeah!).

Ich hatte ein bisschen bedenken einen Bildschirm im Zimmer zu haben, der rund um die Uhr läuft, selbst, wenn keiner da ist, der überhaupt darauf schauen könnte, also habe ich mir ein Relais und einen Bewegungsmelder bestellt und ein kleines Pythonskript geschrieben, das den Monitor nur anschaltet, wenn sich auch etwas bewegt; Jonathan vom Studio Einz hat mir währenddessen den benötigten Mini-Schaltkreis zusammengelötet, der, mit den ca. 3 Volt der GPIO-Pins, den 5V Stromkreis für das Relais aktiviert (Man beachte die wunderschöne LED! Wir hatten leider keine Diode zur Hand :D)

Transistor Board

Relais

Bewegungsmelder

Raspberry Pi

Was manche FRITZ!Box Besitzer eventuell wissen: Die Box besitzt einen Anrufsmonitor, den man zum Beispiel per Node.js (sehr praktisches Modul dafür!) abfragen kann. Die eingehenden Anrufe leite ich mithilfe von Socket.IO an das Webinterface des Spiegels weiter, welches dann diese wunderschöne Meldung anzeigt:

Anruf

Eine Meldung, die mich darauf hinweist, wenn jemand an der Tür klingelt, existiert im Code auch schon, bevor der funktioniert, muss ich aber erst noch die Klingel an die FRITZ!Box anschließen. Soweit zu meinem momentanen stand. Jetzt brauche ich noch den Spiegel und ein Gehäuse für das Ganze.

Ah! Falls jemand eine Idee haben sollte, was man noch so sinnvolles auf einem Spiegel anzeigen könnte: Immer her damit!

Ein aufmerksamer Autofahrer

Es ist ein Ewigkeit her, seitdem ich das letzte Mal etwas auf diesem Blog veröffentlicht habe aber mir ist gerade etwas passiert und da dachte ich, dass ich das mal wieder aufschreiben könnte. Ich bin joggen gewesen, wobei ich die meiste Zeit über vermutlich eher gemütlich laufen war und die Sterne beobachtet habe. Neben dem Radweg auf dem ich mich befand, ist eine normale Straße, immer mal wieder fuhr also vereinzelnd auch mal ein Auto vorbei. Eines viel mir besonders auf, es war etwas älter und daher lauter aber bei dieser Besonderheit blieb es nicht. Als es an mir vorbei war, hörte ich auf einmal das quietschen von Rädern hinter mir, ich fragte mich, was jetzt plötzlich los sei und drehte mich um, das Auto hatte eine Vollbremsung gemacht und fuhr jetzt ganz schön schnell Rückwärts zurück auf mich zu. Ich dachte zunächst, da sind ein paar Jugendliche am Werk, die ihr Auto ein bisschen ausreizen wollen aber, dass es dann auf einmal auf mich zukam fand ich schon etwas eigenartig, vor allem als es neben mir zum stillstand kam. Im Auto saß ein junger Mann (ich bin schlecht im Alter schätzen: 20-30), vom Wortlaut fragte er mich dann in etwa folgendes:

Was geht bei dir? Alles in Ordnung?

Ich bejahte seine Frage und meinte, ich würde nur noch etwas laufen. Er „ok”, und fuhr wieder weiter. Irgendwie hat ich das gerade ganz schön berührt. Es ist schön, dass es noch Menschen gibt, die auf ihre Umgebung achten und fragen, ob alles in Ordnung ist.

Schreiben

Ich denke sehr zwischspältig über das Schreiben. Ich liebe es Welten zu erschaffen und sie niederzuschreiben und zur selben Zeit hasse ich es.
Meiner Meinung nach gibt es zwei verschiedene Arten von Ereignissen innerhalb eines fiktionalen Textes:

  1. Geschehnisse, bei deren Planung man sich schon auf den Tag freut, an dem man sie endlich in Worte fassen darf.
  2. Geschehnisse, die man niederschreiben muss, obwohl man sie hasst, aus dem einfachen Grund keine Lügen, sondern die gesamte Wahrheit erzählen zu wollen. Es sind Ereignissen, die man zu Papier bringt, weil sie notwendig sind, und nicht weil man sie besonders gerne hat. Die größte Qual dabei ist immer die erneute Überarbeitung am Ende, denn eigentlich schreibt man diese Teile der Geschichte nur, um wieder zu denen des 1. Punktes zu gelangen.

Schreiben ist eine wunderschöne Tätigkeit, die ich wirklich gerne ausübe, aber trotzdem kostet sie mich zum Teil eine irre Überwindung.
Im Grunde ist es genauso wie auch mit dem Leben. Manchmal erleben wir Zeiten, die wir am liebsten überspringen würden, weil sie uns wehtun oder langweilen, uns bleibt dann nichts anderes übrig, als zu kämpfen – in der Gewissheit, dass irgendwann auch wieder Angenehmeres auf uns zukommen wird und zwar genau diese Art von Ereignissen, die unser Leben erst so wertvoll machen.

Religionsunterricht an Schulen

Gut möglich, dass ich mir mit folgendem Beitrag einige Kritik einheimse, aber ich möchte dieses Thema jetzt einfach mal ansprechen, da es mir persönlich sehr wichtig ist.

Meiner Meinung nach hat Religionsunterricht absolut gar nichts an einer Schule zu suchen. Ich vertrete die Meinung Schulen sollten dafür da sein, Wissen weiterzugeben und keinen Glauben. Natürlich ist der Glauben der Menschen auch ein Teil unseres Wissens, daher muss ich meine erste Aussage noch etwas genauer Aufschlüsseln. Ich hätte zum Beispiel kein Problem damit, wenn man Religion als sachliches Thema angehen würde, doch leider geschieht dies nicht. Unter einem sachlichem Angehen verstehe ich, dass man nicht nur eine Religionslehre unterrichtet, den Schülern einredet nach dieser zu leben, und alles andere als falsch deklariert, was bei uns in Arbeiten, trotz richtiger Argumentation, leider durchaus vorkommt, sondern ihnen einfach völlig allgemein zeigt, an was die Menschen auf dieser Welt glauben. Ein solcher Unterricht ließe sich mit dem eigentlichen Ziel einer Schule, das Wissen der Welt und nicht irgendwelche Theorien zu vermitteln, ohne Probleme in Einklang bringen. Obwohl ich kein bisschen Gläubig bin, sehe ich durchaus etwas gutes in Religion, insofern sie nicht von der Kirche missbraucht wird, kann sie Menschen Trost spenden und sie auf einen moralisch richtigen Weg führen. Wichtig dabei ist nur, dass sie eine freiwillige Entscheidung sein sollte, ohne jeglichen Einfluss der Familie und erst recht nicht der Schule. Dies ist auch der Grund, wieso ich nicht mehr am Religionsunterricht teilnehme und stattdessen in Ethik gewechselt bin. Hier habe ich die Möglichkeit zu sagen, was ich glaube und denke, ohne irgendwelche vorgeschriebene Regeln zu beachten, deren Abweichung automatisch alles, was ich sage, ungültig machen. Wir haben dort die Möglichkeit über alle Religionen zu reden, uns selbst ein Bild zu machen und zu entscheiden, was wir glauben wollen.

Glaube ist letztlich eben nur, was auch der Name schon sagt, eine Vermutung und weiter nichts. Er ist keine feststehende Tatsache und sollte demnach auch nicht wie eine unterrichtet werden.

Fiktion, und damit zum Beispiel lesen, eröffnet einem die unterschiedlichsten Perspektiven auf diese Welt und deren Bewohner. Sie hilft einem dabei andere Menschen besser zu verstehen und gerechtere, sowie differenziertere Entscheidungen im alltäglichen Leben zu treffen.

Von Geldlosen Gesellschaften und Ideen, die dann doch schon da sind.

Ein irgendwie lustig und sogleich deprimierendes Phänomen, welches (vermutlich) allen Leuten, die sich mit dem schreiben von Geschichten bzw. allgemein mit kreativer Arbeit beschäftigen, bekannt sein wird. Man hat eine interessante Idee, nur um dann kurz darauf zu merken, dass jemand anderem genau diese Idee auch schon mal gekommen ist. Mir ging es interessanterweise schon zweimal so in dieser Woche und beides mal handelte es sich, um Bücher des selben Autors, dessen Ideen sich mit den meinen überlagerten, und zwar Andreas Eschbach. Seine Bücher sind im übrigen sehr zu empfehlen!

Vor ein paar Tagen habe ich mir mal Gedanken darüber gemacht, wie man eine Gesellschaft realisieren könnte, in der kein Mensch mehr irgendetwas tun müsste, was ihm nicht wirklich zu 100% Spaß machte. Eine Gesellschaft in der Geld nicht mehr von Nöten ist. Gestern habe ich dann angefangen das Buch „Herr aller Dinge“ von oben genanntem Autor zu lesen und gemerkt, dass dieser sich genau diese Gedanken wohl auch schon mal gemacht hatte; nur im Unterschied zu mir, auch schon ein Buch darüber geschrieben hat. Er verfolgt zwar einen anderen Grundansatz aber das Resultat ist quasi das Selbe.

Meine Idee sah, in ihren Grundzügen wie folgt aus (wird vermutlich jetzt auch immer eine Grundidee bleiben):

Stellen wir uns einmal eine Gesellschaft vor, in der Arbeiter zu 99% überflüssig sind, die einzigen Jobs, die noch existieren sind die Programmierer und Ingenieure der Automatisierung aber auch diese können wir eventuell durch Programme ersetzen. Das einzige mit dem man in dieser Zeit noch Geld verdienen kann sind die kreative Berufe, wie das Schreiben von Büchern oder das Filmemachen (usw.). In Wirklichkeit ist es aber gar nicht notwendig etwas zu verdienen, da sich ein zentraler Staat der Automatisierung gebildet hat, welcher alles nötige produziert. Alle anderen Staaten liefern Rohstoffe, welche automatisch abgebaut werden, an diesen Maschinenstaat und erhalten als Gegenleistung, Produkte, die von unseren kreativen Leuten erdacht und automatisch Hergestellt wurden, zurück. Jedem Bürger eines jeden Staates steht nun ein solches Produkt zu, wenn er es denn benötigt. Was passiert aber, wenn die Rohstoffe einmal aufgebraucht sind, mal abgesehen von regenerierbaren? Hat man einfach welche Gefunden, die sich eben für alles einsetzen lassen und regenerierbar sind? Kann man alles perfekt wiederverwenden? Wenn ja hätten wir doch eine Gesellschaft, die ohne Geld (außer kreativer Berufe) auskommt, die frage ist dann nur was man sich von dem kreativ erarbeiteten Geld überhaupt noch kaufen sollte (außer vielleicht neue Produktionen (wie zum Beispiel einen Film zu finanzieren.), aber auch für so etwas kann ja im Grund jeder alle Güter haben, die er benötigt.). In einer solchen Gesellschaft, wäre eigentlich auch fast alle Kriminalität überflüssig, da diese ja meist irgendwie mit Geld, bzw. dessen Mangel zu tun hat.

Wer noch vor haben sollte dieses Buch zu lesen sollte nun NICHT weiterlesen.

Spoiler

Update: 18. Februar 2013 – Fazit (relativ Spoiler frei)

Spoiler

Copyright © 2024 MeType

Theme von Anders Norén↑ ↑