Team CreateIt

From Hackteria Wiki
Revision as of 12:18, 16 February 2018 by Dmelchior (talk | contribs) (Elektronik Aufbau)
Jump to: navigation, search
Das Logo wurde ilegal 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, Andreas

Teammitglieder

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

Medtech DIY 12.-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, auch wenn diese im ersten Moment nicht unbedingt spezifisch etwas mit dem Projekt zu tun haben. Jeder kann seine Fähigkeiten teilen und mit kleinen Workshops den Anderen diese 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.
DIY-MedTech Laser - Team CreateIt

Arduino

Für die folgenden Experimente wurde mit dem Arduino gearbeitet. Dafür wird zuerst die Programmierumgebung für das Arduino installiert. Wir haben 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 Kapazitoren. 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

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 auftritt. 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 Crevo 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 Power 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 Muskel Spiker Spielt verbunden. Das zweite Arduino wurde nun mit 9V gespiesen, so dass eine Spannung von 5V auf das Muschel Spiker Shield übertragen wurde.




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)

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 kräftig, aber liebevoll drücken
  8. Zzzzschschsch... Prost!

Probleme beim Zusammenbauen

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 ... angepasst. wir habe herausgefunden, je grösser die Differenz der beiden Zahlen, 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, und die Dritte 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 diese auf die Seite geschoben.

Experiment 3

Puls-pulslinie-frequenz.png

Turtel 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 4 Signale an das 2. Arduino, nämlich ob die Herzrate langsam, mittel, schnell oder unbekannt 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.

CODE UPLOAD

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

  • 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 all zu 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 schon geändert hat. So kann es zu abgehackten Bewegungen kommen wenn 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.

  • 4 Stufen von Puls

Momentan können nur 4 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.

Mechanischer Aufbau

Zurück nach Medizintechnik DIY