#UH16: Wie wir unserer Pflanze “Jasper” das Sprechen beigebracht haben.

Image for post
Image for post

Der Hackathon umahüsla 2016

Vor etwas mehr als einem Monat fand im Campus V in Dornbirn der “umahüsla” Hackathon statt. Eine Vielzahl an motivierten Software-Entwicklern und Hobby-Hackern trafen sich um gemeinsam an Projekten zu arbeiten. Bereits der Check-In versprach eine spannende Zeit und vor allem lustige Zeit.

Das Team “Awesome3000”

Hinter dem umahüsla-Projekt stecken vier kreative Köpfe aus Vorarlberg: Philip H., Felipe P., Julian T. und ich. Wir kennen uns alle schon länger von der Arbeit oder Privat und haben uns zusammen geschlossen um beim diesjährigen “umahüsla 2016” in Dornbirn mitzumachen.

Die Idee für #uh16

Fast die Hälfte unserer deutschen Nachbarn (49 Prozent) sind davon überzeugt, dass Pflanzen Gefühle haben. Das ergab eine repräsentative Emnid-Untersuchung die im Auftrag des Magazins Zeit Wissen durchgeführt wurde. Viele Deutsche glauben, dass Pflanzen dankbar sind, wenn man mit ihnen spricht. Ist tatsächlich etwas Wahres dran? Immerhin ist es auch Sims Figuren möglich, mit Pflanzen zu sprechen.

  • Können wir mit Sensoren beispielsweise die Lichtverhältnisse und die Feuchtigkeit der Erde messen?
  • Können wir diese gesammelten Daten mit Jasper (via Google STT) verarbeiten, welcher uns ein Audio-Feedback mit Google TTS gibt?
  • Und kann unsere Pflanze vielleicht auch noch selber twittern?

Die Hardware

Für den Plantbot3000 stehen uns folgende Hardware zur Verfügung:

Die Software

Ursprünglich war geplant die Sprachsteuerung mit Amazon Alexa umzusetzen. Bereits vor dem umahüsla hat Philipp die Spracherkennung und -ausgabe auf unserem Raspberry Pi zum Laufen gebracht. Wir haben uns dann aber im Laufe des Tages doch für Jasper entschieden. Die Sensoren-Daten lasen wir mit Hilfe von Tutorials (Bsp. für den YL-69 Sensor)und dem Wissen unserer beiden Hacker aus.

Der Plantbot3000

Installation der Sensoren

Die Sensoren haben wir mit dem Breadboard und dem Arduino verkabelt. Dazu findet ihr auf YouTube eine Schritt für Schritt Anleitung. Das Ergebnis sah dann so aus (leider haben wir keine besseren Fotos gemacht):

Image for post
Image for post
YL-69 soil moisture sensor
Image for post
Image for post
LDR Sensor

Daten vom Arduino zum Raspberry Pi senden

Nun war es an der Zeit die Daten von den Sensoren auszulesen. Filipe und Philip kümmerten sich um den Teil und das Ergebnis seht ihr in unserem GitHub Repository.

Installation der Software

Während Filipe und Philip sich um die Sensoren kümmerten, war es Julian’s und meine Aufgabe Jasper zum Laufen zu bringen. In der Theorie sollte es einfach sein, Jasper zu installieren. Es hieß nach der Installation von mehreren Packages, Konfiguration der STT- und TTS-Engines sowie einer profile.yml Konfiguration würde Jasper laufen. Nach mehreren Stunden Arbeit können wir euch sagen: dem war leider nicht so!

  1. sudo python jasper.py Probleme mit der .asound.conf lösen: folgt der Anleitung von jingmli und löst das Rechte Problem als auch die, die mit aplay und arecord auftreten können.
  2. Empty $PATH beheben: wir hatten auch Probleme mit den .bash_profile und .bashrc Änderungen. Geholfen hat schließlich die Einstellungen in beiden Files zu übernehmen.
  3. Optional: fügt den pi User der Gruppe “audio” hinzu
  4. Optional: ihr könnt auch die eingebaute Soundkarte deaktivieren, beachtet, dass ihr dann eventuell die ~/.asound.config auch anpassen müsst.

Entwicklung von Jasper-Modulen

Anschließend ging es darum Module für Jasper zu bauen. Auf der Webseite von Jasper sind dazu ein paar Beispiele angeführt. Wir haben uns dazu entschlossen, dass unser Plantbot

  • den aktuellen Wetterbericht vorlesen,
  • seine Sensoren-Werte angeben
  • und auf die Frage “Please bring me a beer” reagieren kann.

Das Ergebnis — Hello Plantbot3000

Image for post
Image for post
Image for post
Image for post

Die erste Demo

Leider war die Qualität unseres Microphones nicht all zu gut. Spult am besten bis 3:10 vor und hört euch das Ergebnis der Frage “How are you?” an.

Produktpräsentation

Im offiziellen umahüsla-Video, welches alle Projekte umfasst, seht ihr unsere Abschlusspräsentation (startet ab 11:48). Seht euch auch die anderen spannenden Projekte der Teams an!

Gewonnen!

Am Ende des umahüsla Events fand die Preisverleihung statt. Neben Preisen für das kreativste, schwierigste und nützlichste Projekt gab es auch einen Preis für das beste Easter-Egg. Und den konnte unser Team und der Plantbot3000 gewinnen. Wir konnten es kaum glauben als wir jubelnd den Preis entgegen genommen haben. Vielen Dank an alle Teilnehmer!

Fazit

Es war mein erster richtiger Hackathon an dem ich persönlich teilgenommen habe und die Energie, Ideen und tolle Organisation hat das Event zu einem echten Highlight gemacht. Spannende Gespräche, kreative Ideen und jede Menge Spaß waren das Ergebnis. Ich freue mich schon auf das nächste Jahr. Wenn es wieder ans Eingemachte geht und alle “umahüslan”.

Impressionen vom Hackathon

Fotos vom Event könnt ihr euch hier ansehen: http://foto.rhomberg.cc/ummahuesla16hackathon/

Folgt unserem Plantbot3000

Unser Plantbot macht sich auf Twitter regelmässig bemerkbar, wenn es ihm nicht mehr gut geht. ==> https://twitter.com/plantbot3000.

Appendix: Tools und Anleitungen

Written by

I am a Software Engineer from Austria 🇦🇹. I write about JavaScript, TypeScript, ReactJS and NodeJS. 📧 Weekly NL Series: https://newsletter.natterstefan.me

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store