Schlagwort-Archive: Technik

Arduino-Bastelei: Wer da?

Es war nur so eine spontane Idee, eines späten Abends bereits im Bett liegend und auf die Rückkehr eines der streunenden Kinder wartend geboren: Wie wäre es, wenn man zuhause sehr einfach sehen könnte, welches Familienmitglied sich noch bzw. schon zuhause befindet und welches nicht? Nicht, dass unser Haus so unübersichtlich wäre, dass das nicht irgendwie herauszufinden wäre, aber praktisch wäre eine Art Anzeige oder Display schon. Weiteres Beispiel: Ich komme spät vom Volleyballtraining heim und setzte mich noch im Arbeitszimmer an den Rechner, einen Blogpost schreiben, etwas basteln, Bass spielen oder was auch immer. Es wird spät und später. Die Gattin schreckt irgendwann aus dem Schlaf hoch und wundert sich, dass ich noch nicht da bin. Sie macht sich Sorgen: Wenn er jetzt noch immer nicht da ist könnte er sich verletzt haben und… Könnte sie jetzt im Bett liegend direkt sehen, wer zuhause ist, müsste sie sich nur umdrehen und könnte entspannt weiter schlafen. Oder so.

So etwas zu bauen sollte kein Problem sein, tönte ich irgendwann im Übermut. Tatsächlich war im Geheimen recht schnell ein funktionierender Prototyp zusammengeschustert. Der Weg hin zu einem ansehlichen Gerät und einer Android-App, mit deren Hilfe man auch unterwegs den Anwesenheitszustand prüfen kann, war dann doch noch etwas länger. Das ganze Teil gab es dann Ende letzten Jahres als Geburtstagsgeschenk für die sich ab und an sorgende Gattin. Und so sieht das Ganze nun aus:

Mir ist bewusst, das so eine Familien-Überwachung grenzwertig ist. Habe ich eigentlich schon einmal den Blog von „Das Nuf“ empfohlen? Falls nicht ist das die Gelegenheit dazu. Sie schreibt gerne über Familienthemen, und das in einer erfrischenden Art und mit einer Haltung, die ich fast immer komplett unterstreichen kann. Vor einigen Tagen ging es um das Thema der Überwachung von Familienmitgliedern. Auch hier folge ich ihr in ihrer ablehnenden Haltung der Überwachung von Kindern gegenüber. Allerdings geht das, was sie beschreibt, weit über das hinaus, was wir hier machen: Komplette Ortung per GPS, Festlegung erlaubter Aufenthaltsbereiche, Anzapfen des Mikrofons des Kinderhandys usw. Uns ging es vor allem um das, was vermutlich viele aus den Anfängen ihrere Teenagerzeit kennen: Die Eltern möchten gerne informiert werden, wenn das zunehmnd streunende Kinder wieder zuhause einläuft. Ich habe mich umgehört, das gibt und gab es in den verschiedensten Varianten: Das Kind weckt ggf. die Eltern und meldet sich zurück. Oder das Kind gibt eine Art Signal, wenn es zurück ist (schaltet z.B. das Flurlich aus). Oder die Eltern checken zu einer bestimmten Uhrzeit, ob das Kind im Bett ist. Ich finde ein solches Verhalten für eine gewissen Übergangszeit legitim, auch wenn klar ist, dass damit irgendwann Schluss sein muss.

Für den interessierten Leser jetzt noch ein paar Details zur technischen Realisierung:

Der Bau

Als ersten Schritt hatte ich als „proof of concept“ wiedermal einen Wemos D1 mini zur Hand genommen, 4 LEDs angeschlossen (für jedes Familienmitglied eine), ein Programm geschrieben und das Teil im Haus testweise einige Tage laufen lassen. LED an = Person ist zuhause, LED aus = Person ist nicht zuhause. Das hat nach einem groben Fehlschlag doch recht zügig funktioniert, Details zur Programmierung gitb es weiter unten. Ich wollte das Ganze aber etwas schöner gestalten, sollte eher ein dekoratives Element werden. Einige Entwürfe wurden gezeichnet, am Ende habe ich mich für das oben gezeigte hexagonale Layout entschieden. Ausgangsmaterial waren zwei Stiftehalter aus Holz. Die wurden jeweils halbiert, der Boden abgetrennt, das ganze verleimt. Innen habe ich einzeln adressierbare LED-Strips verbaut, und am Ende die Waben vorne mit milchig geschliffene Plexiglasscheiben vor schwarzweiß gedruckten Fotos abgeschlossen.

Ein paar Impressionen vom Bau:

Die Programmierung Weiterlesen

Arduino-Bastelei: LED-Spielereien

Es ist schon gut ein Jahr her, dass ich damit angefangen hatte, mit LED-Strips in Kombination mit dem Arduino zu spielen. Und zwar mit solchen LED-Strips, bei denen man jede einzelne LED extra ansprechen und somit nette Animationen erzeugen kann.

Hintergrund: Der Jüngere der Söhne schläft oben in einem Stockbett, dessen unteren Teil er als eine Art Sofa oder was auch immer nutzt. Anlässlich seinen Geburtstages wünschte er sich eine Beleuchtung dieses unteren Stockbett-Teils, und das kam mir gerade recht. Ich hatte einige nette Abende und habe ihm aus einem Arduino Uno, einem 5-Meter-LED-Strip, ein paar Potis zum Einstellen der Farben (einen für die Helligkeit und jeweils einen für die RGB-Farbanteile), einem Taster zum Umschalten zwischen verschiedenen Betriebsmodi, ein paar Sensoren (Temperatur, Lautstärke) und einem leistungsstarken Netzteil etwas zusammengeschustert.

Zum Geburtstag gab es dann eine Box mit den Elektronik-Bauteilen und diesem Schaltplan:

Folgende Betriebsmodi gibt es:

  • Manuelle Farbsteuerung: Mit den vier Potis kann die Helligkeit des Strips und die Farbzusammensetzung (RGB = rot, grün, blau) eingestellt werden. Änderungen betreffen nicht sofort den ganzen Strip, sondern wandern vom Anfang her über den Strip.
  • Temperatur-Steuerung: Abhängig von der Zimmertemperatur ändert der Strip seine Farbe von blau (kalt) hin zu rot (warm).
  • Lautstärke-Steuerung: Der Strip fungiert als Lautstärkeanzeige für Musik: Je lauter die Musik, desto mehr LEDs entlang des Strips leuchten. Außerdem ändert sich mit der Lautstärke auch die Farbe.
  • Rainbow: Farbverläufe (wie sie eigentlich keiner sehen will) mäandern über den Strip.
  • DiscoDsicoPartyParty: Zum Bekloppt-Werden: Zufälliges Lichter-Zucken auf allen Kanälen. Die Farbenanteile und die Helligkeit können eingestellt werden.
  • Volle Helligkeit: Alle LEDs auf weiß und volle Helligkeit. Nichts zu steuern.
  • LEDs aus: Wie der Name schon sagt, einfach alles aus.

Mit etwas Unterstützung (an einem Geburtstag soll ja kein Frust aufkommen) war das Zeug schnell zusammengebaut und auch lauffähig. Noch bei der Feier haben wir ein bisschen was modifiziert und ergänzt und das Ding irgendwann am Bett montiert. Wurde Zeit, das hier mal zu dokumentieren und euch mit einem kleinen Video einen Einblick zu geben, was man mit doch recht einfachen Mitteln nettes basteln kann. Das Video wurde vom Geburtstagskind selbst geschnitten, bitte zum Ende ansehen, es gibt ein kleines Easeregg:


Weiterlesen

Touch ist alles, alles ist Touch

Alternative Mensch-Maschine-Schnittstellen finde ich schon immer interessant. Denn ich glaube, dass viele Eingabegeräte, mit denen wir so vertraut sind, nicht optimal sind. Sie sind historisch so gewachsen. Bestes Beispiel ist unser Tastaturlayout, welches nicht deshalb so aussieht, wie es aussieht, weil das für die heutige Eingabe am Computer optimal wäre, sondern weil das bei den typischen Buchstabenkombinationen der deutschen Sprache dafür sorgte, dass sich die einzelnen Buchstaben der Schreibmaschine möglichst selten verhakten. Es gibt z.B. einige optimierte Tastaturlayouts für die deutsche Sprache, die aber kaum eine Chance haben, sich durchzusetzen. Nicht weil sie schlecht wären, sondern weil wir so unglaublich träge sind in der Umgewöhnung. Die müsste fast mit Zwang passieren. In der Mathematik / Physik / Chemie nennt man so einen Zustand ein „lokales Minimum“. Schon nicht schlecht, aber um ein besseres, vielleicht sogar globales Minimum zu finden müsste viel Energie aufgewendet werden. Ich schweife ab…

Was ich sagen will: Aus lokalen Minima kommt man schlecht heraus, daher lohnt es sich, völlig neuen Ansätzen nachzugehen, statt alte optimieren zu wollen. Die Touch-Bedienung war ein solcher Schritt, und dieser Interaktionsansatz ist noch lange nicht ausgereizt.

Im folgenden Video ist ein Ansatz gezeigt, bei dem leitender Lack auf beliebigen Oberflächen aufgetragen wird. Am Rand des Objekts werden dann Kontakte angebracht und ein elektrisches Feld angelegt. Bei Berührung des Objekts wird jetzt dieses Feld modifiziert, woraus auf die Position der Berührung rückgeschlossen werden kann. Sehr schöne Idee:

Arduino-Bastelei: Weihnachtsbaumbeleuchtung per WLAN steuern

Ich habe wieder ein bisschen mit Elektronik gebastelt. Allerdings war das aktuelle „Projekt“ nicht wirklich echt, es ging nicht um das Produkt, sondern nur um ein bisschen Spaß. Für die aktuelle Themenreihe der CityChurch sollten ein paar Videos gedreht werden, und die Videoleute fragten mich an, ob ich ich dafür nicht irgend eine Elektronik-Bastelei machen könnte.

Die Idee war dann, die Weihnachtsbaumbeleuchtung per WLAN vom Handy aus zu steuern. Einfach so zum Spaß. Ich hatte mir gerade das Wemos D1 mini etwas genauer angesehen und sagte zu. Sollte kein zu großes Problem sein, damit per WLAN ein Relais zu steuern, welches die Beleuchtung dann schaltet. Das Problem war dann aber, dass ich aufgrund der letzten Bastelei kein Relais mehr hatte und pfuschen improvisieren musste: Statt des Relais habe ich ein Servo verwendet, mit dem eine Art motorisierter Schalter gebaut wurde. Also auch eine Art Relais, nur nicht mit Magnetspule, sondern mit Servomotor. Dem Elektriker meines Vertrauens sei gesagt, dass die Konstruktion längst wieder zerlegt wurde und nie für den produktiven Einsatz gedacht war. Der Vollständigkeit halber: Don’t try this at home!

Hier also das Video. Schnitt und so ist nicht von mir, nur die Bastelei und ein bisschen Schauspielerei (nicht gerade meine Kernkompetenz).

Fazit: Das Wemos D1 mini kann ich nur empfehlen. Im Wesentlichen Arduino-kompatibel, man kann es mit der Arduino-IDE programmieren (eine simple Anleitung zur Installation des Boards findet man hier), WLAN ist an Bord, außerdem ein einfach zu bedienender Webserver. Die erste Demo (Steuerung einer LED per WLAN) war mit guter Anleitung in unter 15 Minuten auf dem Schreibtisch lauffähig und die Abwandlung zur Servo-Steuerung ein Klacks. Außerdem ist ein Klon des Boards mit 6,50€ wirklich erschwinglich.

Vom Prozedere her läuft das ganze so: Code schreiben, compilieren und auf’s Board schieben, aus dem seriellen Monitor der Arduino-IDE die IP des Boards holen, mit dem Browser die IP aufrufen und darüber das Board steuern. Wenn man das ganze (wie im Video gezeigt) etwas eleganter per Smartphone machen will empfiehlt sich eine App wie z.B. HTTP Request Widget, die für Android Widgets erstellen kann, die dann HTTP-Requests absetzen und somit die Steuerung ohne den „Umweg“ über den Browser übernehmen.

Der Vollständigkeit halber hier noch mein Code für das Projekt:


//http://www.esp8266learning.com/wemos-webserver-example.php

#include <ESP8266WiFi.h>
#include <ESP8266mDNS.h>
#include <WiFiUdp.h>
#include <Servo.h>

const char* ssid = "deine WLAN-SSID";
const char* password = "dein WLAN-Passwort";
 
int servoPin = D4;
Servo Servo1;

WiFiServer server(80);






 
void setup() {
  Serial.begin(115200);
  delay(10);
 
  Servo1.attach(servoPin);
  Servo1.write(0);
 
  // Connect to WiFi network
  Serial.println();
  Serial.println();
  Serial.print("Connecting to ");
  Serial.println(ssid);
 
  WiFi.mode(WIFI_STA);
  WiFi.begin(ssid, password);
 
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("");
  Serial.println("WiFi connected!");
 
  // Start the server
  server.begin();
  Serial.println("Server started");
 
  // Print the IP address
  Serial.print("Use this URL : ");
  Serial.print("http://");
  Serial.print(WiFi.localIP());
  Serial.println("/");

}

 
void loop() {
 
  // Check if a client has connected
  WiFiClient client = server.available();
  if (!client) {
    return;
  }
 
  // Wait until the client sends some data
  Serial.println("new client");
  while(!client.available()){
    delay(1);
  }
 
  // Read the first line of the request
  String request = client.readStringUntil('\r');
  Serial.println(request);
  client.flush();
 
  // Match the request
 
  int value = LOW;
  if (request.indexOf("/servo=on") != -1) {
    //digitalWrite(servoPin, HIGH);
    Servo1.write(90);
    value = HIGH;
  } 
  if (request.indexOf("/servo=off") != -1){
    //digitalWrite(servoPin, LOW);
    Servo1.write(0);
    value = LOW;
  }
 
 
 
  // Return the response
  client.println("HTTP/1.1 200 OK");
  client.println("Content-Type: text/html");
  client.println(""); //  do not forget this one
  client.println("<!DOCTYPE HTML>");
  client.println("<html>");
 
  client.print("Servo position is now: ");
 
  if(value == HIGH) {
    client.print("ON");  
  } else {
    client.print("OFF");
  }
  client.println("

");
  if(value == HIGH) {
    client.println("Click <a href=\"/servo=off\">to turn the servo in OFF position</a>
");
  } else {
    client.println("Click <a href=\"/servo=on\">to turn the servo in ON position</a>
");
  }
  
  
  client.println("</html>");
 
  delay(1);
  Serial.println("Client disconnected");
  Serial.println("");
 
}


Arduino-Bastelei: Backup-Festplatte einschalten (lassen)

Arduino Pro Micro mit Relais

Nach meiner ersten und für den Anfang etwas aufwendigen Arduino-Bastelei war neulich Bedarf für ein zweites, diesmal sehr überschaubares Projekt: Das Einschalten einer USB-Backupfestplatte genau dann, wenn sie auch gebraucht wird.

Der Hintergrund ist der: Bei einem Rechner wird mit dem sehr empfehlenswerten Tool HardlinkBackup beim Herunterfahren des Rechners ein „inkrementelles“ Backup erstellt, und zwar mittels Hardlinks. Kurz gesagt macht man ein Vollbackup mit dem Platzbedarf eines inkrementellen Backups. Das aber nur am Rande, wäre ein Thema für sich. Das Backup wird jedenfalls automatisch gestartet, sobald Windows heruntergefahren wird. An dieser Stelle sollte die USB-Festplatte, auf die gesichert wird, dann auch verfügbar sein und nicht manuell eingeschaltet werden müssen. Dauerhaft laufen soll sie natürlich auch nicht, wenn der Rechner läuft. Das ist erstens nicht gut für die Lebensdauer der Platte, und zweitens nicht gerade sicher im Hinblick auf diverse Schadsoftware etc. Eine Möglichkeit wäre es, die Platte per Software erst einzubinden, wenn sie gebraucht wird, ich wollte sie aber hardwareseitig wirklich komplett ausgeschaltet haben.

Arduino Pro Micro

Und hier kommt wieder der kleine und günstige Arduino Pro Micro ins Spiel. Der kann – wie so ziemlich jeder andere Arduino auch – nämlich erstens per USB serielle Kommandos empfangen und verarbeiten, und zweitens dadurch getriggert dann z.B. über ein Relais die Stromversorgung der USB-Platte anschalten. Die Kosten für den Arduino plus das Relais liegen zusammen bei ca. 10€.

Und genau so wurde das auch umgesetzt. Mittels eines kleinen Tools namens SerialSend schickt der Rechner eine Kommando an die entsprechende USB-Schnittstelle, an der der Arduino hängt:


SerialSend.exe /baudrate 9600 /devnum 18 SwitchRelayON

Auf dem Arduino läuft dann folgender Sketch, der dieses Kommando empfängt und dann das an ihm an Pin 15 angeschlossene Relais schaltet:


// Define Relay Pin:
#define PinRelay 15

// Define string for relay status:
String SerialRead     = "SwitchRelayOFF";
String SerialReadOld  = "SwitchRelayOFF";

void setup() {
  
  // Define Pin mode:
  pinMode(PinRelay, OUTPUT);
  
  // Switch the relay OFF:
  digitalWrite(PinRelay, HIGH);

  // Turn serial monitor on:
  Serial.begin(9600);
  
}

void loop() {

  // Read data from serial port:
  if(Serial.available()>0) {
    SerialRead = Serial.readString();
  }

  // Only send command if status changed:
  if (SerialRead != SerialReadOld) {
    // Switch Relay:
    if (SerialRead == "SwitchRelayON") {
      digitalWrite(PinRelay, LOW);
      Serial.println("relay switched ON");
    } else if (SerialRead == "SwitchRelayOFF") {
      digitalWrite(PinRelay, HIGH);
      Serial.println("relay switched OFF");
    } 
  }

  SerialReadOld = SerialRead;
  
//  delay(1000);
  
}


Das SerialSend-Kommando wurde dann noch in das .bat-Skript integriert, welches sowieso schon beim Herunterfahren des Rechners das Backup angefahren hat:


@echo off


REM Platte über Arduino starten:
"C:\Users\Blablabla\Documents\backup-Sachen\SerialSend.exe" /baudrate 9600 /devnum 18 SwitchRelayON
timeout /T 20 > nul


REM Abbruch, falls Festplatte nicht erreichbar
if not exist "B:\" goto NoUSB:

REM Möglichkeit bieten, um Backup noch manuell abzubrechen:
Choice /T 15 /D J /M "Das Backup wird in 15 Sekunden automatisch gestartet. 'N' bricht ab... "
If Errorlevel 2 goto Abbruch:
If Errorlevel 1 goto StarteBackup:

REM Starte Backup
:StarteBackup
echo.
echo Starte das Backup, bitte warten...
cd "C:\Users\Blablabla\Documents\backup-Sachen\"
REM call "USB-Backup.hbd"
"C:\Program Files\Lupinho.Net\HardlinkBackup\HardlinkBackup.exe" -execute USB-Backup.hbd
echo Backup fertig!
Goto eof:

REM Ausgabe und Abbruch, falls Festplatte nicht erreichbar
:NoUSB
echo .
echo USB-Festplatte nicht gefunden!
Goto eof:

REM Abbruch
:Abbruch
echo .
echo Dann eben nicht...
Goto eof:

REM Sprungmarke, um Batch-Datei von jeder Stelle aus zu beenden:
:eof

Fast vergessen: Durch das Relais muss natürlich noch die Stromversorgung der USB-Platte laufen. Am besten hinter dem Netzteil einfach das Kabel aufgetrennt und eine der beiden Kabel durchgetrennt und durhc das Relais schleifen. In diesem Fall habe ich parallel noch einen ganz normalen Kippschalter gehängt, damit man die Platte auch ohne den Arduino per Hand einschalten kann, wenn man das mal möchte.

Das war’s dann auch schon. Fährt man jetzt den Rechner herunter hört man das kurze Klacken des Ralais, dann das Anlaufen der USB-Platte, anschließend startet das Backup und schließlich freut sich der Benutzer.

Arduino-Bastelei: Pedal zum Bass-Üben

Eines vorneweg: Auch wenn ich gern an allem möglichen herumbastle, bei Elektronik hört bei mir der Spaß schnell auf. Ich tausche schon mal defekte Kondensatoren in Netzteilen oder mache aus zwei defekten Kaffeemaschinen eine funktionierende, aber da müssen die defekten Stellen schon durch Rauch oder Feuer auf sich aufmerksam machen. Das große Verständnis von Elektronik fehlt mir. Etwas neidisch beobachtete ich bisher die Bastlerszene, die mit diversen günstigen Bauelementen allen möglichen Kram zusammenzaubert. Und immer wieder hörte ich, dass das alles mittlerweile gar nicht mehr schwer sei. Jeder könne das. Dabei viel immer wieder das Stichwort Arduino.

Im Sommer dachte ich, es wird auch für mich Zeit, mich da mal ein bisschen einzuarbeiten. Also habe ich einen bunten Strauß an Arduinoboards, Sensoren und Aktoren bestellt und zu basteln angefangen: Einfach mal ganz simpel einen Schalter an ein Arduinoboard und damit ein Schrittmotor steuern. Oder mit einem Näherungssensor ein Servo. Oder einfach nur eine LED blinken lassen (ein Unterfangen, an dem ich mit einer analogen Schaltung schnell scheitern würde). Mein Fazit ist: Wer googlen kann, der kann auch Arduino.

Bei diesen Spielereien habe ich irgendwann gelesen, dass diverse Arduinoboards, die ja einfach über die USB-Schnittstelle programmiert werden können, am Rechner auch gleichzeitig als Human Interface Device agieren können, sich also wie eine Maus oder eine Tastatur verhalten. Es ist also relativ leicht, sie als externes Eingabegerät für den Rechner zu verwenden. Dazu sind auch keine speziellen Treiber am Rechner nötig. Board an den USB-Anschluss und fertig.

Die Idee

Damit war die Idee geboren: Beim Bass-Üben stört es mich immer wieder, das Instrument aus der Hand legen zu müssen, um in Spotify nochmal zum Songanfang zu springen, in Youtube-Tutorials vor- oder zurückzuspulen, eine Webseite mit Chords weiterzuscrollen oder einfach nur die Lautstärke des PCs anzupassen. Ich übe in der Regel mit Kopfhörer an einem kleinen Mischpult, an dem auch der Rechner hängt, der mich mit Musik und Tutorials versorgt. Was es braucht ist eine Möglichkeit, diverse Funktionen des Rechners mit den Füßen zu steuern. Sollte mit einem kleinen Arduino machbar sein. Weiterlesen

Das Rad, neu erfunden (2)

Das Rad muss nicht ständig neu erfunden werden. Man sagt das so und meint es metaphorisch. Umso faszinierender, wenn sich jemand daran macht, das trotzdem im wörtlichen Sinne zu tun. Ich habe auf diesem Kanal schon einmal neue Ansätze zum Thema „Rad“ gezeigt, aber das heutige geht doch in eine völlig andere Richtung. Und auch das ist nicht metaphorisch gemeint:

Mehr als ein Proof of Concept ist das noch nicht, ich würde gerne mal die Kombination zwischen diesem Antrieb und dem normalen Fahren sehen. Gerne auch bei höheren Geschwindigkeiten z.B. beim Spurwechsel oder so. Aber auch so schon mal eine grandiose Idee.

Es läuft nicht rund

Seit 1990 baut der Niederländer Theo Jansen seine Strandbeest-Ungetüme. Gebilde aus Plastikrohren, denen der Wind Leben einhaucht. Jansen nennt sie „Lebewesen“, was an der Definition von „Leben“ zwar grob vorbeigeht, aber die Illusion ist schon nicht schlecht. Dieses Video hier gibt einen ganz guten Überblick über seine Kreaturen:

Jetzt hat Jansen es aber übertrieben. Er hat seine – zugegebenermaßen faszinierenden – Laufapparaturen mit einem Fahrrad gekreuzt. Zusammen mit dem kalifornischen Bastler-Kollektiv Carv wurde der vierfüßigen Laufmechanismus für das Fahrrad kreiert und eingebaut. Gefahren wird es trotzdem wie ein normales Fahrrad:

Richtig rund läuft es noch nicht.

DSL vs. VDSL

Vor einigen Wochen haben wir unseren DSL-Anschluss (16 Mbit/s) auf VDSL (100 Mbit/s) umstellen können. Es hat etwas gedauert, bis 1&1 nach den technischen Umbauten hier im Ort ihn auch wirklich zur Verfügung gestellt hat, die Umstellung an sich ging dann aber ohne nennenswerte Komplikationen oder Ausfälle über die Bühne. Bei dem 100.000er VDSL-Anschluss bietet 1&1 noch die Möglichkeit, den Upload für 3€/Monat von 20.000 auf 40.000 zu erhöhen. Hab ich gemacht, sollte einen spürbarer Vorteil für Anwendungen wie OwnCloud oder den youtubenden Junior bringen.

Seit Anfang des Jahres habe ich auf meinem Raspberry Pi ein Skript laufen, welches in regelmäßigen Abständen einen Speedtest macht:


#!/bin/bash

LOGFILE=~/speedtest.log

# Checken, ob Logfile existiert:
if [ ! -d $LOGFILE ]; then touch $LOGFILE; fi

# Der Pfad zu speedtest muss hier so stehen, denn das Skript wird über cron leider nicht in der BASH ausgeführt...
SPEED=$(/usr/local/bin/speedtest --simple)
ZEIT=$(date +%Y-%m-%d_%H:%M:%S)

echo $ZEIT $SPEED >> $LOGFILE

Die Ergebnisse habe ich mir jetzt einmal angesehen (etwas geglättet):

DSL vs. VDSL
Das ist schon ein ordentlicher Performance-Schub:

  • Die Ping-Zeiten gehen um 58% nach unten.
  • Die Download-Raten gehen um 690% nach oben.
  • Die Upload-Raten gehen um 4220% nach oben!

Damit kann man jetzt erst mal eine Zeit gut leben. Die nächste Baustelle ist dann eher die Netzwerktechnik im Haus. LAN-Kabel gibt es keine, und trotz WLAN-AC an Router, Repeater und Notebook ist das nicht wirklich befriedigend. Aber ich will jetzt mal nicht jammern…

Der schubst auch Kinder!

So ziemlich jeder hat wahrscheinlich schon mal in einem Video einen dieser Roboter von Boston Dynamics gesehen, z.B.dieses hundeähnlichen Vieh, welches gut als Lastenträger denkbar ist, oder den schnell rennenden Vierbeiner, dem man besser nicht in freier Wildbahn begegnen möchte.

Im Programm hat Boston Dynamics auch einen humanoiden Roboter, genannt Atlas. Von der neusten Atlas-Version wurde vor einer Woche ein Video veröffentlicht, welches schon ziemlich faszinierend ist. Gestutzt habe ich aber vor allem an dieser Stelle hier bei Minute 1:21:


(Mist, das Einbinden von Videos mit einer bestimmten Startzeit scheint nicht so einfach zu klappen wie gehofft…)

Noch gemeiner wird es bei Minute 2:04, da ärgert der Typ den Roboter nicht nur, sondern stößt ihn wirklich zu Boden. Der Roboter rappelt sich wieder hoch, und man rechnet damit, dass er sich umdreht und auf den Menschen losgeht. Macht er aber nicht. Artig erzogen programmiert, der Gute.

Es ist völlig klar, dass dieser Roboter nur eine Maschine ist, trotzdem fühlt es sich falsch und böse an, wenn jemand ihn ärgert oder gar umstößt. Wer Roboter schubst, der schubst auch kleine Kinder! Oder?