Team CreateIt

From Hackteria Wiki
Jump to: navigation, search
Das Logo wurde illegal entwendet von [1]
Hier könnte ihre Werbung stehen.

Team

Wir sind das Team CreateIt

Namensinfos

Aussprache: IPA: [kriːˈeıt-ıt]
Bedeutungen: Create aus dem Englischen steht für die Maker- & DIY-Bewegung | It steht zum für Informationstechnik sowie für das englische Wort «it»
Herkunft: Der Name wurde am 12.02.2018 im FabLab Luzern erfunden
Worttrennung: Cre·ate·It, Plural: Cre·ate·Its
Synonyme: MakeIt, DesignIt, DoIt, LötleIt

Unser Team, v.l.n.r: Deia, Sandra, Xander, Andi

Teammitglieder

  • Sandra Flück | Medizintechnik
  • Andi Müller | Maschinentechnik
  • Deia Melchior | Maschinentechnik
  • Xander Schild | Maschinentechnik

Medtech DIY 12.02.2018-16.02.2018

Im Rahmen der Blockwoche Medtech DIY der Hochschule Luzern entdecken wir als Gruppe CreateIt die Welt des Arduino und die spielerische Vielfältigkeit der Elektronik. Die Blockwoche basiert darauf, sich selbst zu motivieren, eigene Ideen und Fähigkeiten in ein Projekt einzubringen. Im Grundsatz gilt hierbei, learning by doing und durchführen von sogenannten Skill Share Sessions. Die Skill Share Sessions dienen dem Austausch der Vielfältigen Fähigkeiten der Mitglieder. Jeder besitzt viele Fähigkeiten, die erwähnenswert sind, auch wenn diese im ersten Moment nicht unbedingt spezifisch etwas mit dem Projekt zu tun haben. Jeder kann seine Fähigkeiten teilen und diese mit kleinen Workshops den Anderen beibringen. Somit wird effizient und aktiv Wissen geteilt, welches genutzt werden kann. In der Woche Medtech DIY erlernen wir das Zusammenspiel der Elektronik und der Interaktion des Menschen. So ertasten wir uns an die Funktionen Medizintechnischer Geräte.

Skill Share Session der Gruppe CreatIt: DIY-MedTech Laser - Team CreateIt

Arduino

Für die folgenden Experimente wurde mit dem Arduino Uno gearbeitet. Dafür wird zuerst die Programmierumgebung für das Arduino installiert. Wir haben uns mittels Anleitungen von Youtube belehren lassen, da keiner von uns das bisher gemacht hat. Dabei half uns das Video „Install Arduino Software (IDE) on Windows 10“. Nach diesen Einstellungen ist das Arduino schon bereit, mit dem gewünschten Programm gefüttert zu werden.

Experimente

Experiment 1:

Wir können auch lötlen!

Muscle SpikerShield

Backyard Brains enthaltet unter „Experiments“ viele Erkenntnisse und Experimente in einem Beschrieb, so dass sie leicht nachzubauen sind.

Control Machines with your Brain!

Hier ging es darum mittels eigener Muskelkraft (Impulse der Muskeln) 6 LED’s zu steuern. Hierbei kann die aufgewendete Kraft mittels Anzahl der Lämpchen visualisiert werden. Je stärker die Muskeln kontrahiert werden, desto mehr Lämpchen leuchten. Dabei stiessen wir auf folgende Punkte, welche von unserer Seite her erwähnenswert sind:

Probleme beim Zusammenbau

Beim Zusammenbau des Muscle SpikerShield gab es einige Probleme, da die Bedienungsanleitung nicht genau mit den beiliegenden Materialien übereinstimmt. Es ist zu empfehlen, zuerst zu kontrollieren ob auf dem Board die Position für die Widerstände R3 und R4 vorhanden sind. Falls ja, besitzt man ein V2 Board und kann nach der Bedienungsanleitung arbeiten. Andernfalls ist auf der Verpackung eine Liste mit allen Teilen und den dazugehörigen Positionen zu finden. Zudem fehlten die 10µF Kondensatoren. Diese konnten jedoch durch bereits vorhandene ersetzt werden. Hierbei ist lediglich darauf zu achten nicht zu Grosse zu verwenden, da sie sonst nicht neben die Widerstände passen.


Nach dem Löten wurde das vorhandene Programm auf das Arduino geladen. Das Aufleuchten der Lämpchen konnte in dessen Feinheit bezüglich der Kraftsteuerung eingestellt werden. Wir haben einige Einstellungen in folgenden Zeilen ausprobiert:

Bildschirmfoto 2018-02-14 um 15.23.52.png
Grafik Muskelkontraktionen

Zum Beispiel: #define MAX 150

  • feineinstellung: Wert kleiner als 150 setzen; sehr starke Reaktion, kann kaum einzelne LED’s ansteuern
  • Mittelwert: um 500-700 geht es relativ gut um einzelne LED’s anzusteuern
  • Hoher Wert: ab 1000 wird es relativ schwierig alle 6 LED’s zum leuchten zu bringen


Schlussendlich stimmte der Wert von 600 für unsere Bedienung. Je nach dem was man erreichen will kann man natürlich auch feinere oder gröbere Werte wählen. Zur besseren Auslesung unserer Werte haben wir noch einen Print gemacht, um die Werte in der Arduino Software im Monitor oder Plot darstellen zu können. Dies wurde mit folgendem Code umgesetzt:
void setup(){Serial.begin(9600);}
void loop(){analogReadings = analogRead(A0);
Serial.println(analogReadings);}

Zur Stromversorgung des Servomotors wurde ursprünglich der USB-Port einer Ikea Steckerleiste verwendet. Dieser ging auf ein separates Arduino Uno, da dieses eine konstante 5V Versorgung hat. Vom 5V Ausgang des 2. Arduinos wurde dann ein Kabel direkt zur Stromversorgung des Servomotors auf dem SpikerBoard gezogen, da dieses keinen Spannungswandler besitzt. Beim Plotten unserer Messung haben wir festgestellt, dass sobald das Stromkabel angeschlossen wurde ein massiver Fehler in der Messung von ca. 400 auftratt. Nach einigen Versuchen die Stromversorgung anzupassen, stellten wir fest, dass der Fehlerstrom von der Steckerleiste kommt. Beim Betrieb des 2. Arduinos über den Laptop oder einer Powerbank konnte eine saubere Messung durchgeführt werden.

Experiment 2:

Controlling the Claw

Mit diesem Experiment kann man mittels einem Servo ein Gegenstand wie zum Beispiel eine Klaue ansteuern, um die Greifbewegung nachzuahmen.

Hierbei haben wir folgende Einstellungen bei den Werten ausprobiert:

Code Experiment 2.png

Zum Beispiel: int sensitivities [] = {200, 350, 520, 680, 840, 1000} (Originalwert)

  • fein Einstellung = {50, 150, 320, 480, 640, 800}

Wir haben die Werte nach unten reguliert und haben eine gewisse feinere Reaktion auf dem Servo festgestellt. Zudem konnte der Wert für "int lastsensitivitiesIndex=2.5;" angepasst werden. Je höher der Wert, desto grösser der Kraftaufwand und umgekehrt. Wir haben den Wert für uns auf 2 eingestellt.

Probleme beim Zusammenbau

Zuerst hatten wir das Problem, dass der Servo zu wenig Spannung bekam. Auf der Anleitung von Backyard Brains steht, dass er mit 9V gespiesen werden muss! Das Arduino liefert lediglich 5V. Im Backyard Brains Experiment haben sie eine 9V Batterie angeschlossen um den Servo genügend zu speisen. Wir hatten keine Batterie und mussten etwas basteln da uns ebenfalls ein Spannungswandler fehlte. Somit haben wir ein zweites Arduino, in welchem ein Spannungswandler integriert war, an unsere Schaltung angeschlossen und es mit dem Muscle Spiker Shield verbunden. Das zweite Arduino wurde nun mit 9V gespiesen, so dass eine Spannung von 5V auf das Muscle SpikerShield übertragen wurde. Unten in den Bildern sieht man links den Spannungswandler welcher vorhanden sein sollte und rechts unser Muscle Spiker Shield bei welchem er fehlt. Zudem sind auf dem rechten Bild der kleine Spannungswandler des Arduinos und die Anschlüsse welche wir verbinden mussten eingekreist.




Der Bieröffner

People-misusing-their-teeth-collection-1-003-218x400.jpg

Das Ursprüngliche Experiment von Backyard Brains diente dazu, eine Klaue mittels der Muskelkraft über einen Servo zu bedienen. Wir haben uns nach anderen Möglichkeiten umgesehen, und folgendes Szenario erstellt: Angenommen eine Person, die Ihren Arm gebrochen hat, möchte an einem einsamen Abend gemütlich ein Spiel sehen und dazu ein zwei Bierchen trinken. Das Problem ist nun, dass es ziemlich anspruchsvoll und nervenaufreibend sein kann, ein Bier nur mit einer Hand zu öffnen. Dabei kann Der Bieröffner nun helfen. Die Person muss sich nur 3 Elektroden auf den funktionsfähigen Arm kleben um den Bieröffner bedienen zu können. (in einer ausgereifteren Version unseres Projektes würden bereits während dem Gipsen Elektroden angebracht, was es möglich macht den verletzten Arm trotzdem zu brauchen und auch für andere alltägliche Arbeiten eingesetzt werden kann, als nur ein Bier zu öffnen)

Bedienungsanleitung Der Bieröffner:

  1. Bier aus dem Kühlschrank nehmen
  2. Elektroden an markierten Stellen ankleben (Wenn bereits in Gips vorhanden: Schritt überspringen)
  3. Krokodilkabel an Elektroden anhängen
  4. Ein bis zwei Test Griffe durchführen, um zu vergewissern, dass Der Bieröffner reagiert
  5. Bierflasche in die Hand nehmen, an welcher die Elektroden befestigt sind
  6. Bierflasche in Position im Der Bieröffner bringen
  7. Einmal Bierflasche leicht und liebevoll drücken
  8. Zzzzschschsch... Prost!

Probleme beim Zusammenbau

Als erstes mussten wir den Drehwinkel des Servos anpassen, um eine angemessene Hebelwirkung zu erlangen. Dafür haben wir folgende Werte im Programm geändert:

Code Bieröffner.png

Hier haben wir jeweils die Werte der Abschnitte von "analogReadings = constrain(analogReadings, ... , emgSaturationValue);" auf 40 und 120 angepasst. Wir haben herausgefunden, je grösser die Differenz der beiden Zahlen ist, umso grösser wurde der Winkel.

Anbringen der Elektroden

Am Besten befestigt man eine Elektrode auf dem Handrücken für das Schwarze Kabel. Eine andere wird auch auf der Handoberfläche etwa zwischen Daumen und Zeigefinger geklebt, wie man es unten auf dem Bild rechts gut erkennt. Die Dritte positioniert man am besten relativ weit hinten an der unteren Seite des Arms, etwas oberhalb des Ellenbogens. (Der Muskel kann sehr gut ertastet werden, wenn man seine andere Hand ca. auf diese Stelle hält und mit derjenigen auf welche die Elektroden kommen die Faust ballt. Der entsprechende Muskel, welcher angesteuert werden soll, sollte sich nun spürbar verhärten)

Fazit

Die Umsetzung mit dem Öffnen der Flasche funktionierte leider noch nicht so ganz wie wir uns das gewünscht hätten. Um den Prototypen zu testen haben wir ein bereits vorhandenes Modell "Bieröffner" im Internet gefunden und diese Dateien verwendet. Das Problem war dann später leider, dass der Arm nicht ganz sauber auf dem Flaschendeckel aufstützen konnte, die Übertragung der Muskelkraft glückte jedoch reibungslos. Mit einem besseren Modell, welches stabiler wäre und einem besseren Winkel im Hebel würde es bestimmt klappen. Aus zeitlichen Gründen haben wir jedoch noch ein anderes Projekt versucht und dieses auf die Seite geschoben.

Experiment 3

Puls-pulslinie-frequenz.png

Turtle Herbi

Für ein weiteres Experiment wollten wir uns noch mit der Pulsmessung auseinandersetzen. Wir wollten spielerisch den aufgezeichneten Puls wiedergeben können. Da kam die Idee, die Aufzeichnungen des Pulses als Output in Form von Bewegung wiederzugeben. Dabei entstand die Schildkröte Herbi. Die Schildkröte wird mit Arduino und einem Servo ausgestattet. Ziel ist es, dass sich die Schildkröte im Takt des Pulses fortbewegt. Dabei sind die Füsse mit dem Servo verbunden. Die Schildkröte könnte zum Beispiel in einem Kinderspital eingesetzt werden, wenn das Kind an einem Gerät zur permanenten Pulsüberwachung angeschlossen ist. Die Schildkröte kann dazu angeschlossen werden und fröhlich daherwatscheln und dem Kind so die Angst vor den vielen Geräten nehmen.

Elektronik Aufbau

Komponenten:

Ein Arduino wird mit dem SpikerShield zusammengesteckt, das andere wird für den Servobetrieb benutzt. Dies ist nötig, da die Servolibrary und das SpikerShield zusammen nicht auf einem einzelnen Arduino funktionieren. Das SpikerShield sendet schlussendlich nur 3 Signale an das 2. Arduino, nämlich ob die Herzrate langsam, mittel, oder schnell ist. Dies wurde durch 3 Outputs beim Spikershield und 3 Inputs beim Arduino realisiert. Falls keiner der Inputs aktiv ist, ist die Herzrate unbekannt. Der Servo wandelt die Inputs anschliessend in eine langsame bis schnelle Bewegung der Schildkröte um. Bei einer unbekannten Herzrate wackelt die Schildkröte nur leicht.


Beim Testen des Zusammenspiels der Herzrate und der Servobewegung sind bei uns einige Probleme aufgetreten.

  • Stromversorgung

Am besten wäre, es das Arduino über eine Stromversorgung zu betreiben und das 2. Arduino über VIn und GRD zu speisen. Da der Servo jedoch zu viel Strom zieht, stürzen die Arduinos ab oder funktionieren nicht zuverlässig. Schlussendlich haben wir beide Arduinos separat gespiesen. Evtl. funktioniert die Speisung besser, wenn beide Boards originale Arduinos sind.
ACHTUNG
Wenn man sich nicht so sicher ist ob seine Stromversorgung stimmt und man die Stromversorgung über USB plant, sollte man besser nicht ein allzu teures Gerät benutzen. Bei einem Teilnehmer wurde der Laptop plötzlich schwarz und funktionierte erst nach einem Ausbau des Akkus wieder.

  • Steuerung Servo abgehackt

Die Steuerung des Servos wurde aus einem Beispielprogramm von Arduino abgeleitet. Dieses baut auf einer For-Schlaufe auf. Dadurch macht die Schildkröte immer erst ihre Bewegung fertig, obwohl der Puls Input schon geändert hat. So kann es zu abgehackten Bewegungen kommen wenn sich der Puls schnell ändert, oder eine fehlerhafte Messung ausgelesen wird.

  • Puls nicht gemittelt

Der Puls wird bei unserer Messung ständig ausgelesen und nicht gerundet. Dies kann dazu führen, dass eine kleine Muskelkontraktion einen Spike auslöst und der "Puls" so in die Höhe schnellt. Zukünftig sollte der Puls über eine Anzahl Messungen gemittelt werden um solche Sprünge abzudämpfen.

  • 3 Stufen von Puls

Momentan können nur 3 Arten der Bewegung übertragen werden. Um einen flüssigeren Übergang der Bewegungen zu erzeugen könnte man versuchen ein Analoges Signal in ein PWM-Signal für den Servo umzuwandeln. Dadurch würde sich die Schildkröte schneller und flüssiger an den neuen Puls anpassen. Man könnte auch auf die Map Funktion zurückgreifen.

Mechanischer Aufbau

Damit die Schildkröte auch noch Form bekommt haben wir im CAD einfache Zeichnungen entwickelt, um die Formen dann mit dem Lasercutter auszuschneiden. Als Material verwendeten wir 4mm dicke MDF (Mitteldichte Holzfaserplatten). Der Aufbau der Schildkröte besteht hauptsächlich aus gestapelten Ringen für den Panzer, damit die Bauhöhe individuell auf die zu verstauenden Elektronik-Baugruppen angepasst werden kann. Der Kopf entstand ebenfalls aus diesen Ringen. Die Füsse und der "Boden" wurden frei gezeichnet. Um die Füsse der Schildkröte mittels Servo in Bewegung zu bringen, mussten diese verbunden werden. Dazu zeichneten wir kleine Verbindungsstege und schnitten sie ebenfalls mit dem Lasercutter aus. Verbunden wurden die Stege mit einem feinen Draht, damit sie beweglich sind. Alle Laserteile können hier als PDF Datei heruntergeladen werden: File:Laserteile.pdf


Rückblick auf die MedTech-DIY Blockwoche

Für uns war es etwas neues so frei zu sein bei dem was wir eine Woche lang tun können. Wir wurden von Anfang an ins kalte Wasser geworfen und durfte mehr oder weniger anstellen was wir wollten. Dies war zum einen etwas mühsam, da man sich um alles kümmern musste, andererseits war es sehr interessant zu sehen was man alles in so kurzer Zeit anstellen kann ohne vorher einen Plan oder Vorwissen zu haben. Das man eine Idee austüfteln kann und danach wieder verwerfen oder einfach nach einer gewissen Zeit an etwas spannenderem Arbeiten will, war vor allem für die Maschinenbauer etwas neues. Aus dem Studium kennt man eigentlich nur, eine Lösung zu finden die optimal ist und diese dann ins letzte Detail auszurechnen bis alles funktioniert. Das FabLab als Werkstatt funktionierte ziemlich gut. Man hatte zwar wenig Platz, dies führte jedoch eher dazu, dass weniger Laptops auf dem Tisch waren. Dadurch konnten alle besser miteinander arbeiten. Am Ende machte es somit sehr grossen Spass, dass uns so grosse Freiheiten in der Projektumsetzung gewährt wurde, trotz den anfänglichen Schwierigkeiten mit der Ungewissheit.


Zurück nach Medizintechnik DIY