Team Fanta 4

From Hackteria Wiki
Jump to: navigation, search

Team Fanta 4 besteht aus den vier Studierenden der Hochschule Luzern Technik & Architektur Yves, Patrik, Julian und Dominik.

Team Logo

Durch die Kombination von drei Studenten aus dem Bereich Maschinentechnik und einen Medizinaltechnik Student entsteht ein guter Mix von verschiedenem Wissen. Wir alle sind motiviert und freuen uns auf die neuen Herausforderungen des Tüfftelns und etwas Selbst zu entwickeln.

Einleitung

MedTech-DIY

Am Anfang gab es eine interessante Präsentation über die MedTech-DIY Blockwoche an sich und zusätzlich gab es eine Einführung über Hakteria und Fablab. Das Modul verbindet Anwendungen der Medizintechnik mit Do It Yourself (DIY) Ansätzen. Viel Freiheit zum Experimentieren und Ausprobieren. Arbeiten und Lernen in Skill-Share Sessions. Studierende entscheiden selbst an welchen kreativen Projekten sie in Teams arbeiten wollen. Dadurch wird das tiefere Verständnis von Medizintechnischen Geräten durch einen interdisziplinären und selbstgesteuerten Zugang gefördert. Einführung ins FabLab, Lasercutter, 3D Druck und Elektronik. Basierend auf verschiedenen elektrophysiologischen Messmodulen (EMG, EKG, EOG, EEG) entwickeln die Studierenden im Team innovative Produktideen. Erste Prototypen werden mit den Mitteln der Digitalen Fabrikation hergestellt und getestet. (Modulbeschrieb HSLU, 2019)

Arbeitsplatz FabLab

Ein FabLab Hight-Tech-Werkstatt die öffentlich zugänglich ist. Das FabLab bietet neben Maschinen und Geräten (3D-Ducker, Laser-Cutter, CNC-Maschinen usw) auch Wissen und Erfahrung im Bereich innovative und Nachhaltige Produktion. Es sollte als Möglichkeit dienen Prototypen herzustellen aber keine Serie-arbeiten. FabLabs entstehen überall auf der Welt.Im weltweiten Netzwerk tauscht man sich über Kontinente hinweg aus und teilt so Erfahrungen, Fragen und Ideen mit anderen Spezialisten aus.

Quelle: -FabLab Luzern

Nach der Lehrreichen Einführung wurden die Gruppen Eingeteilt man statte sich einen Arbeitsplatz aus und state sich mit diversen Werkzeugen für die ganze Woche aus. Es wurden diverse Bausätze von BACKYARD BRAINS zur Verfügung gesellt um sich mit den Experimente vertraut zu machen und sein Wissen zu erweitern.

Tag 1: Muscle Spiker Shield & Lichtsensor

Experiment 1 Muscle Spiker Shield Löten

Als erstes löteten wir das vorgegebene Modul (MUSCLE SPIKERSHIELD DIY) gemäss Anleitung zusammen. Dabei konnten wir von dem Löt-Crashkurs von Yves als gelernter Elektroniker profitieren. Er erklärte uns, wie man am besten die verschiedenen Elektrobauteile an der Leiterplatte befestigt und verlötet. Am besten beginnt man mit den Bauteilen, welche am tiefsten auf der Leiterplatte aufliegen. Die Lötspitze kann mit etwas Lötzinn am nassen Schwam gereinigt werden. Die Temperatur hatten wir auf 320 Grad Celcius eingestellt. Diese ersten "Lötler2 versuche haben uns gezeigt, dass jeder Löten kann, ein schöhne und Langanhaltende Lötverbingung braucht aber wie so vieles Übung, Übung, Übung. Bevor wir die Speisung am fertig gelöteten Modul angehängt haben, überprüften wir das Modul auf Kurzschluss mit einem Multimeter, dies ist zu Empfehlen da bei einem schnellpassiertem Lötfehler die grosse Speisung das Modul evtl. zerstören würde. Mit dem Muscle Spiker Shield man die Differenz der Muskelströme eines angespanten zu einer "Erdung" am Körper Messung und mittels Arduino dieses Signal weiterverarbeiten. Im ersten Schritt wurden die Signale in dem Serial Plotter dargestellt und analysiert. Dadurch wurde ersichtlich, wenn man den angeschlossenen Muskel anspannt, dass sich das Ausgangssignal erhöht. Durch dieses Signal haben wir die Helligkeit des LED-Rings angesteuert.


Experiment 2 Lichtsensor Löten

Der Lichtsensor wurde wie auf dem untenstehendem Bild verdrahtet. Durch den Lichteinfall verändert sich der Widerstand des Lichtsensors. Dabei entsteht ein Spannungsteiler. Ein Abgriff zwischen den beiden Widerständen wird auf einen Analogen Input des Arduino geführt. Die Spannung wird gemessen. Anhand des Lichteinfalls wird ein Servomotor angesteuert. Von ganz dunkel zu ganz Hell dreht sich der Servomotor um 180 Grad. Der Servomotor wurde träger gemacht, indem ein Durschnitt von 10 Messwerten genommen wurde (siehe Bild unten). Dieses Experiment gab uns bereits einen kleinen Schubs in die Richtung unseres Prototyps. denn die Bewegung eines Motors gemäss der Lichtintensität entspricht sinngemäss der Bewegung des Menschlichen Auges bei starkem und schwachem Lichteinfall.


Tag 2: Experimentieren & Skill Share Session

Experiment 3 Muskelaktivität messen

Beim erstem Experiment wurden die Aktivitäten der Muskeln gemessen, einmal am Unterarm und einmal am Bizeps. Nach erfolgreichem Löten der Muscle SpikerShield Printplatte, wurde diese mit dem Arduino verbunden und der Code draufgeladen. Am Anfang gab es Schwierigkeiten, weil die Empfindlichkeit zu hoch eingestellt war und wir somit nur hohe Werte bekommen haben. Als wir das Problem identifiziert haben, waren die Muskelaktivität anhand der LEDs und auf dem Rechner auf dem Serial Monitor des Arduinos zu erkennen. Am Bizeps gab es mehr Muskelaktivitäten, da der Muskel grösser/stärker ist und nicht so eine hohe Präzision erfordert, kann das Neuron mehrere Muskelfasern steuern.



Experiment 4: Greifmechanismus

Beschreibung: Als erstes wurde versucht der Greifmechanismus mittels Muskelströme zu bewegen. Der Greifer war schon von der letztjährigen Blockwoche produziert worden und stand uns somit zur Verfügung. Das Muskel Shield wurde zusätzlich an einer Batterie angeschlossen.

Resultate: Dies ist leider gescheitert, da die Batteriespannung bezüglich fehlender Komponenten auf dem Bord nicht auf den Greifer übertragen konnten. Dadurch hat der Greifer eine zu geringe Spannung und kann dadurch nicht betrieben werden.

Erkenntnisse: Um den Greifer doch steuern zu wollen, könne man die fehlenden Komponenten, doch bei diversen Firmen kaufen.

Programmierung: Wie dir vorherigen Experiment kam die Programiierung auch von backyardbrains mit dem Namen Controlling the Claw.


Experiment 5: PulseSensor

Beschreibung: In diesem Versuch möchte man mit einem Pulssensor die Herzfrequenz messen und über über Aurdino darstellen. Der Pulssensor ist ein Produkt der Seite- PulseSensor.com auf der Seite gibts ein Youtube Video welche als gute Anleitung dient. Um bei Aurdion über die Library die Programierung eines Pulssensor herunterzuladen.

Resultate: Der Versuch war ein voller Erfolg man kann die Ergebnisse in unserem YouTube Video Video gneau betrachten. Dort sieht man die Herzfrequenz eins Gruppenmitgliedes dargestellt.

Erkenntnisse: Wir kamen zur Erkenntnis, dass durch schon Vorprogrammierten Programmen aus der Library auch Laien sehr schnell Versuche durchspielen kann .

Programmierung: Wie schon erwähnt konnten gab es eine gute Anleitung für die Library Arduino Library Pulsesensor text

Skill Share 1: Lasercuten

Yamaha Logo

Je nach Material und Materialdicke müssen andere Parameter eingefügt werden wie zum Bespiel die Fahrgeschwindigkeit des Laser und Leistungsstärke. Diese können in einer Liste entnommen werden. Ob das Material geschnitten oder nur graviert werden soll hat auch einen Einfluss auf die Parameter. Das Motiv wird in das Programm geladen und die Grösse und Parameter können eingestellt werden. Anschliessend wird die Datei auf einem USB Stick gespeichert. Der USB Stick wird an der Maschine eingesteckt. Wichtig ist, dass man den Laserkopf für jedes neue Material mit der Metalldistanzplatte neu kalibriert. Sobald man das Material korrekt platziert hat, kann das Programm gestartet werden. Die Absauglüftung welche die giftige Stoffe des verbrennenden Materials herausfiltert muss eingeschaltet werden. Als erster Versuch wurde ein Yamaha Logo eingraviert und dieses mit einem Kreis ausgeschnitten.

Vorgehen Das Vorgehen, damit man die gewünschten Bauteile mit dem Lasercuter herstellen kann ist vom Ausgangsmaterial abhängig. Grundsätzlich gilt folgendes. Auf dem Programm des Lasers welches je Maschinenhersteller Variert muss eine DXF datei importiert werden. Das Programm für die Maschinen im FabLab Luzern kann auf der Homepage des Fablabs unter folgendem Linkheruntergeladen werden. Die Importierten DXF Dateien werden gemäss Anleitungbearbeitet und Anschliessend wie oben beschrieben gefertigt.

Tipp Wenn man einfache geometrien oder Bilder aus dem Internet Parametrisieren und cuten will empfiehlt es sich nicht aufwändig den Weg über ein Computer added Design Programm zu wählen sondern eine Grafiksoftware wie zum beispiel die gratisversion des Inkscape zur verwenden.

Tag 3: Experimentieren

Experiment 6: Human to Human Interface

Beschreibung: In diesem Versuch möchte wir mit der Aktivitäten der Muskeln eines Proband Impulse also elektrische Signale weiter auf eine andre Person Übertragen. Der Aufbau wird mit einem Arduino-Mikrocontroller gesteuert. Ein Muscle SpikerShild wird mit dem Aurdino verbunden, welche dazu dient, die Muskel Aktivitäten zu erfassen. Die Signale werden dann auf TENS-Stimulationsgerät übertragen. Der zweite Proband bekommt dann durch den TENS elektrische stimulation, was die Nerven des Arm dazu bringen sich zu beugen.

Resultate: Der Versuch sorge für viele gelächter, da die Probanden von dem leichten Schmerz aufschreien mussten. Jeder wollte mal der Signal geber sein und auch der empfanger. Wir haben einen Kurzen Abschnitt des Experimentes auf YouTube Video festgehalten.

Erkenntnisse: Wir kamen zur Erkenntnis, dass dieses Experiment sehr fasstiznierten ist. Man kann nur durch leichte Signale schon eine grosse Kontrolle über den Körper eines andern Menschen haben. Kliengt wie ein Scienc fiction film durch schon Vorprogrammierten Programmen aus der Library auch Laien sehr schnell Versuche durchspielen kann .

Programmierung: Die Anleitung und diverse Beispiel Videos finden sie auf der Seite von BACKYARD BRAINS Human Human Interfacetext



Experiment 7: Blinzeln

Beschreibung: Mit dem Heart und Brain Spikeshield wurden die Muskelströme beim Blinzeln gemessen. Sobald der gemessene Wert über dem Treshhold von 800 liegt, wird ein Servomotor angesteuert. Dieser dreht sich um 90 Grad und wieder zurück. Dies soll später im Abschluss Projekt Wimpern bewegen, welche das Blinzeln ermöglicht.

Resultate: Das Signal der Ströme ist unten im Diagramm zu sehen. Durch das Blinzeln sind die Peaks klar ersichtlich. Man kann das auch sehr gut im YouTube Video erkennen, das es sehr schnell reagiert.

Erkenntnisse: Der erste Peak entstand durch ein blinzeln mit Anstrengung. Der Peak ist deutlich höher als bei einem normalen Blinzeln.

Programmierung: Die Programierung finden sie auf der Webseite BACKYARD BRAINS Heart and Brain SpikerShield Bundle desweiteren wurde das Porgramm für unser Zwecke leicht verändert und angepasst.


Signale


Tag 4 & 5: Prototyp & Skil Share Letkion

Prototyp

Am Anfang haben wir gemeinsam in der Gruppe überlegt, was wir machen wollen. Mit den Überlegungsanstössen aus den Experimenten und der zufälligen entdeckung eines Prototypen vom Vorjahr ist die Idee entstanden auf dem bereits erarbeiteten Wissen aufzubauen und den Prototypen des Vorjahres weiterzuentwickeln. Das Vorjahreskonzept von Team Dr. Octopus ist eine Mechanische Iris, welche sie mit dem Laser-cuter hergestellt hatten. Die CAD Daten haben sie von der Website Instructables.com heruntergeladen, skalliert und gelastert.

IDEE Unsere Idee war es, einige Funktionen des menschlichen Auges zu untersuchen und diese in unserem Prototyp umzusetzen. Einerseits soll sich die Iris je nach Intensität des Lichteinfalls aufs Auge anpassen. Das bedeutet, je mehr Licht auf die Iris strahlt, desto mehr zieht sie sich zusammen. Je Dunkler es wird, desto weiter öffnet sie sich. Dadurch wird erreicht, dass immer die ideale menge an Licht auf die Lichtrezeptoren im Auge treffen. Dies wird mit einem Lichtsensor umgesetzt, welcher je nach Lichteinfall einen Servomotor antreibt. Dieser steuert die mechanische Iris an. Dabei konnten wir auf das gewonnene Knowhow von Experiment 2 zurückgreifen. Zusätzlich wollen wir das Blinzeln des menschlichen Auges nachahmen. Blinzeln befeuchtet das menschliche Auge und schützt das Auge vor Gefährdungen. Mit den erkenntnissen aus Experiment 3 wird dies gangbar umgesetzt werden können.

Grundsätzliche Überlegungen Damit es keine Komplikationen wie gegenseitige Störsignale oder ähnliches gibt, werden wir für die beiden Funktionen, den Irismechanismus und das Blinzeln, separate Arduino Module verwendet. Wir haben uns zusätzlich überlegt, welche Bauteile aus dem Vorjahreskonzept übernommen werden können und welche man weiterentwickeln muss. Dabei ist schnell aufgefallen, dass es ohne die ursprünglichen DXF Daten aus dem Vorjahr wegen der Grössenskalierung ein reverse ingenieering schwirig wird. Mit dem Prototypenmaterial Holz sind jedoch nachträgliche Anpassungen am bestehenden Modell schnell gemacht.

Vorgehen Im ersten Schritt haben wir weiter mit den backyardbrain Modulen gearbeitet und die einzelnen Funktionen wie Lichtintensitätsmessung und Blinzelerkennung gearbeitet. Der Code ist unter Realisierung ersichtlich. Anschliessend haben wir uns daran gemacht eine Basisplatte für die Mechanissmen sowie elektronikkomponenten zu Entwickeln. Diese sollte so Modular wie möglich gestalltet werden, da die Grundplatte auch zukünftige Experimente und Erweiterungen abdecken soll. Mit Hilfe des Solidworks (CAD) können so einfache überlegungen grafisch dargestellt werden. Beispielsweise war der Mechanismuss des Auges vorgegeben und es galt diesen über einen Servo welcher eine Vorgegebene Winkelveränderung hat anzusteuern. Mit diesen Randbedingungen kann über die Teilebibliothek und einfache Gleichungen ein Übersetzungssystem realisiert werden welches den Schliessmechanismuss ansteuert und dabei die maximale Winkelveränderung des Servomotors berücksichtigt.

Realisierung Wir haben uns viel Zeit genommen den Mechanismuss sowie die Programme als einzelne Funktionen zu Entwickeln. Somit war es nacher einfach alle Teile des Mechanismuss im Laser aus 3mm MDF Platten zu fertigen und die Gesammtbaugruppe zusammenzustellen. Nach der Laserherstellung montierten wir unser Auge zusammen. Dabei gab es vielê Schraub- und Kleinarbeiten auszuführen, beispielsweise passte die Blende der Iris beim Zusammenfahren nicht mer da sich wegen der Toleranzen minimale Fehler in den neuen Anschraubpositionen ergeben haben. Mittels einiger kleiner schleifarbeiten konnte dies jedoch schnell behoben werden.

Folgend ist der Code für das zusammenziehen des Auges je Lichteinfall sowie das Schliessen des Augenliedes Ersichtlich.

Blinzeln:

 #include <Servo.h>
 Servo servo;
 #define EKG A0 //we are reading from AnalogIn 0
 int threshold = 800; //threshold for heartbeat detection, you can play with this value
 int finalReading; // the AnalogIn reading
 ////This sets up serial communication values can 9600, 14400, 19200, 28800, 31250, 38400, 57600, and 115200, also 300, 600, 1200, 2400, 4800,   
 but that's too slow for us
 int bitrate = 9600; //IMPORTANT!!! 28800 is the minimum speed needed to record at 500 Hz / 14400 is the minimum to record at 250 Hz, 9600 is the   
 minimum for
 int sensorPin = A0;    // select the input pin for the potentiometer
 int sensorValue = 0;  // variable to store the value coming from the sensor
 int zustand = 0;
 void setup() {
 Serial.begin(bitrate); //
 pinMode(12, OUTPUT); // Turns on Red LED
 pinMode(6, OUTPUT); // Connect Speaker to Digital Out 6 and Ground to get beep
 pinMode (8, OUTPUT);
 servo.attach (8);
 }
 void loop() {
   finalReading = analogRead(EKG);
   Serial.println(finalReading);  
 if (finalReading > threshold && zustand == 0) { // Threshold to detect heartbeats
   zustand = 1;
   servo.write(0); // überträgt die Zielposition an den Servomotors
   delay(500);
   servo.write(50);
   delay(500);
  // tone(6,1000,50); // Beep the Speaker
   digitalWrite(12, HIGH);   // sets the LED on
 }
 else {
   digitalWrite(12, LOW);
 }
 if(finalReading <500)
 {
   zustand = 0; 
 }  
 }

Schliessen:

 #include <Servo.h>
 Servo servo;
 int pos = 0;
 int state = 0;
 int sensorPin = A0;    // select the input pin for the potentiometer
 int sensorValue = 0;  // variable to store the value coming from the sensor
 int val = 0;
 long summe = 0;
 int durchschnitt = 0;
 int deg = 0;
 void setup() {
 Serial.begin(9600); //begin serial communications
 pinMode (4, OUTPUT);
 servo.attach (4);
 }
 void loop() {
 for (int i = 0; i < 10; i++)
 {
   sensorValue = analogRead(sensorPin);
   summe = summe + sensorValue;
 }
 durchschnitt = summe / 10;
 summe = 0;
  Serial.println(val);
 //Serial.println(durchschnitt);
 val = map(durchschnitt, 250, 800, 170, 80); // rechnet den Wert in den Wertebereich des Servomotors (zwischen 0 und180)
 servo.write(val); // überträgt die Zielposition an den Servomotors
 delay(50);
 }


Testing Zum Schluss testeten wir den ganzen Mechanismus. Die Ansteuerungen der Servos gab noch einige Probleme. Durch diverse Tests und Feingefühl beim Programmieren brachten wir den Mechanismus zum Laufen. wärend des Testings sind wegen der Grossen Zahnflankenkräfte einige Zähne abgebrochen. Dies haben wir mit einer anpassung der Zahngeometrie in den Griff bekommen.

Skill Share Lektion: DIY-MedTech Ski wachsen - Team Fanta 4

Reflexion

Die Blockwoche hat uns allen sehr gefallen. Am Anfang fiel es uns allerdings schwer mit dem DIY-Prozess. So viel Zeit und Spielraum sind wir von unserem Studium nicht gewohnt. Mit der Zeit ging es immer besser und hatten grossen Spass viele Kleinprojekte durchführen und viel daraus lernen. Die Freiheit nach Lust und Laune etwas auszuprobieren und die Vielfalt an Materialen und Komponenten erweckten unsere Fantasie. Wir schweissten als Gruppe richtig zusammen und konnten das Wissen einander weitergeben.


Wir waren begeistert, wie stark das Interesse an unserer Skill Share Session ausfiel. Wir konnten das Ski wachsen Know-how unseren Besuchern vorzeigen und weitergeben. Es kamen viele spezifische Frage welche Julian mit seinem Wissen und den Erfahrungen gut beantworten konnte.


Es ist erstaunlich wie viel wir diese Woche gelernt haben, das hätten wir zu Beginn uns nie vorgestellt. Leider haben wir festgestellt, dass die Zeit bei DIY schnell vorüber geht. Wir hätten noch viele Ideen umsetzen wollen. Es ist gut möglich, dass die Gruppenmitglieder von Team Fanta 4 in Zukunft im FabLab anzutreffen sind. Zum Schluss noch vielen Dank an die Organisation dieser Blockwoche, dass wir den DIY-Spirit kennenlernen durften und dadurch uns so viel Wissen aneignen konnten.


Zurück nach Medizintechnik DIY