Schlagwort-Archive: PHP

Arduino-Bastelei: Die smarte(re) Waschmaschine (Update)

Es gibt ein Update zum meinem Waschmaschinenprojekt. Zur Erinnerung: Es ging darum, bei einer recht alten Waschmaschine eine Benachrichtigung am Handy zu bekommen, sobald der Waschvorgang beendet ist.

Die Spielerei hat anfangs recht gut funktioniert, im Laufe der Zeit jedoch immer schlechter. Meine Erklärung: Der Vibrationssensor hat der Belastung nicht standgehalten. Der erste Sensor ging wirklich kaputt, ein zweiter wurde auch laufend schlechter. Schlechter bedeutet, dass die Werte immer mehr streuten und daher das zeitliche Vibrationsprofil, über das der letzte Schleudervorgang und damit das Ende des Waschvorgangs detektiert wurde, immer verrauschter und uneindeutiger wurde. Es gab Fehlalarme.

3-Achsen-Beschleunigungssensor GY-61

Über ein anderes Bastelprojekt bin ich dann auf einen einfachen 3-Achsen-Beschleunigungssensor gestoßen, den GY-61. Der gibt an drei analogen Ausgängen einfach die Beschleunigung für drei orthogonale Achsen (x, y, z) aus. Im Prinzip so ein Teil, welches heute in jedem Smartphone z.B. die Bildschirmorientierung steuert. Gravitation ist ja auch nichts anderes als eine Beschleunigung; dreht man das Handy, dann wirkt diese Beschleunigung (zumindest anteilig) in eine andere Richtung.

Ich habe nun den alten Vibrationssensor durch den neuen Beschleunigungssensor ersetzt. Von den drei Achsen kann ich allerdings nur ein einzige nutzen, weil der Wemos D1 mini nur einen analogen Eingang bietet. Hier ein paar Bilder vom Umbau:

Die Werte, die der Sensor in den drei Schleuderphasen der Waschmaschine liefert sind um Welten besser als das, was der Vibrationssensor jemals geliefert hat. Hier der Plot eines typischen Waschvorgangs:

Die Werte werden für mich zur Kontrolle an meinen Raspberry Pi geschickt und mit Hilfe der Bibliothek dygraphs geplottet. Blau: Beschleunigung. Rot: Der Schwellwert. Gelb: Dauer über dem Schwellwert. Rot: Auslösen der Benachrichtigung.

Man sieht hier schön, dass der letzte Schleudergang stärker und vor allem länger ist als die ersten beiden. Seit dem Einbau des neuen Sensors wurde damit das Ende des Waschvorgangs hundertprozentig richtig erkannt. Weiterlesen

Arduino-Bastelei: Die smarte(re) Waschmaschine

Es wäre gelogen zu sagen, dass es bei unserer Waschmaschine dringenden Optimierungsbedarf gegeben hätte. Aber als Bastler sucht man ja immer nach einer möglichst sinnvollen Kanalisation des Basteltriebs. Daher hier die im Nachhinein zusammengelogene Motivation für das aktuelle Projekt:

Unsere Waschmaschine steht im Keller. Außerdem ist sie alt, fast 18 Jahre. Damals gab es noch kein „Ich bin fertig!“-Gepiepse. Also muss man nach dem Einschalten der Maschine in etwa abschätzen, wann sie fertig sein wird und sich am besten eine Erinnerung am Handy einstellen. Sonst könnte sich eine der folgenden dramatischen Szenen abspielen:

  • Die Maschine ist fertig und niemand räumt sie aus.
  • Die Maschine ist fertig und man räumt sie viel zu spät aus.
  • Die Maschine ist fertig und man merkt es zu spät, wodurch sich die nächste Maschine verzögert, deren Ende man wieder zu spät merkt, wodurch sich die näcshte Maschine… (das Prinzip ist klar).
  • Die Maschine ist fertig und irgend etwas anderes ganz schlimmes.

Wemos D1 mini

Da hat man als Bastler jetzt also einen Wemos D1 mini herumliegen (also einem Arduino-ähnlichen Mikrocontroller mit einem ESP8266-WLAN-Modul) und fragt sich, was man – bezüglich des oben geschilderten „Problems – sinnvolles damit machen könnte. Natürlich 1) irgendwie das Ende des Waschvorgangs detektieren und dann 2) irgendwie eine Nachricht absetzen, die dann wiederum irgend jemanden zum Ausräumen der Waschmaschine animieren soll.

Weiterlesen

Dropbox-Podcast, selbstgebaut

Podcast-LogoIch bin leidenschaftlicher Podcast-Hörer. Es gibt nichts besseres, als bei Tätigkeiten, die wenig Aufmerksamkeit erfordern (Putzen, Kochen, Fahrradfahren, Basteln, …), nebenbei interessante Sachen zu hören. Dazu habe ich diverse fertige Podcasts abonniert. Allerdings kommt es immer wieder vor, dass mir außerhalb meiner abonnierten Podcasts einzelne Vorträge oder Sendungen über den Weg laufen, die ich ebenfalls gerne über meine Podcast-App hören würde. Denn die App (ich nutze Podkicker Pro) hat gewisse Vorteile: Ich kann meine Standard-App nutzen und diese auch mit meiner Pebble steuern, ich kann es ggf. beschleunigt hören, die Datei wird automatisch auf das Smartphone geladen und nach dem Hören von selbigem wieder gelöscht usw.

Um also einzelne MP3s automatisch in meinen Podcast-Workflow zu bekommen musste ein eigener Podcast her. Der sollte natürlich möglichst einfach von diversen Geräten aus gefüttert werden können. Ideal wäre es – dachte ich mir so – wenn ich einfach die Dateien in einen Dropbox-Ordner legen könnte und sie von dort aus alleine in meine Podcast-App wandern würden. Manchmal ist es auch nett, wenn man gar nicht das MP3 an sich in die Dropbox legen muss, sondern einfach eine URL-Datei, die auf das MP3 verweist. Meistens liegt das Ding ja schon irgendwo im Netz.

Und sowas hab ich mir dann gebastelt. Weiterlesen

Android-Tablet als digitaler Bilderrahmen

Eltern und Großeltern freuen sich ja immer über Bilder ihrer Kinder und Enkel (gut, etwas pauschalisiert). Aus diesem Grund haben wir unseren Eltern vor einigen Jahren einen digitalen Bilderrahmen geschenkt, der mit WLAN im heimischen Netz hängt und über einen Dienst per Mail mit neuen Bildern gefüttert werden kann. Super Sache. Es war zwar nur ein kleiner Rahmen (ein Kodak W730 Pulse mit 7 Zoll), aber ordentlich zu bedienen und eben mit gewünschter und zuverlässiger Email-Funktionalität, die auch (mal mehr, mal weniger) rege genutzt wurde.
Weiterlesen

Kontakteverwaltung: Perfektionistisch bis zwanghaft

Ich gebe zu, bei meiner Kontaktverwaltung bin ich durchaus perfektionistisch bis zwanghaft. Jahre lang habe ich Outlook dafür herangezogen und war auch mit der Synchronisation mit meinen ersten mobilen Endgeräten sehr zufrieden. Mit dem Umstieg auf Android bin ich dann schweren Herzens auch mit meinen Kontakten zu Google Contacts umgezogen. Mit welchem Programm ich das gemacht habe weiß ich leider nicht mehr, die Suche hat damals etwas gedauert, weil es mir wichtig war, alle Kontaktbilder (und das waren viele!) beim Umzug nicht zu verlieren. Hat dann auch alles soweit geklappt, einzig die Darstellung der Namen war etwas unschön. Dazu muss man wissen, dass es in Kontaktverwaltungen verschiedenste Namensfelder gibt, einfach Vor- und Nachname wäre da zu simpel. Bei meinem Umzug wurden die Felder für Vor- und Nachnamen korrekt belegt, zusätzlich wurde aber der angezeigte Name auf „Nachname, Vorname“ gesetzt. Das ist eigentlich erst mal egal, kann aber unschön werden, wenn man dann andere Tools mit seinen Google-Kontakten synchronisiert. Ich nutze bspw. den automatischen Datenabgleich mit meiner Fritzbox, der dafür sorgt, dass bei allen Nummern, die ich in meinen Kontakten habe, auf dem Festnetztelefon der Name des Anrufers angezeigt wird, auch wenn dieser gar nicht im Festnetztelefon gespeichert ist. Und ich nutze das Thunderbird-Add-On „Google Contacts“, um im Mailclient meines Vertrauens immer die Kontakte aktuell zu haben. Und dort ergibt sich dann z.B. das „Problem“, dass eine Mail dann nicht an ‚Vorname Nachname <mail@dres.se>‘ gesendet wird, sondern an ‚“Nachname, Vorname“ <mail@dres.se>‘. Ist jetzt nicht weiter schlimm, erzeugt aber beim Kontaktperfektionisten ein gewisses Unbehagen.

In Outlook hatte ich mir mal ein kleines VBA-Schnipsel erstellt, um alle Kontakte durchzugehen und Felder nach meinen Änderungswünschen zu modifizieren. Sowas wollte ich jetzt auch für meine Google-Kontakte haben und habe mich mal hingesetzt, und eine kleine PHP-Lösung zusammengestrickt. Der Großteil des Codes ist von irgendwo zusammengeklaut und eben für meine Bedürfnisse angepasst, benutzt wird außerdem das Zend Framework. Ich habe damit jetzt einfach mal alle „Nachname, Vorname“ in „Vorname Nachname“ ändern lassen, es lässt sich aber auch leicht an andere „Problemfälle“ anpassen. Viel Spaß.
Weiterlesen