Team Abartig

From Hackteria Wiki
Revision as of 11:33, 20 September 2022 by Tdzgragg (talk | contribs) (Abschlusspräsentation)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


Geh zurück auf Medizintechnik DIY

Willkommen zu diesem abartigen Wiki

Teamvorstellung

  • Tobias Zgraggen (Medizintechnik)
  • Dominik Märki (Medizintechnik)
  • Olivier Hochstrasser (Medizintechnik)
  • Daniel Niederberger (Maschinentechnik)


Einleitung

MEDTECH DIY Blockwoche

Das Team Abartig wurde zu Beginn der Blockwoche gegründet und besteht aus vier Teammitgliedern. Vom 12. bis 17.09.2022 fand die Blockwoche an der Hochschule Luzern Technik & Architektur statt. Viel Wert legte man auf die "Do It Yourself bzw. Together" Kultur. Dies bedeutet, dass die Studierenden ihre Vorkenntnisse oder Erkenntnisse mit den Anderen teilten. Hierzu plante man "Skill Share Sessions" ein, um den Austausch von Wissen zu fördern. Der Themenbereich wurde hierbei sehr offen gehalten, sodass man aus verschiedenen Fachgebieten etwas Neues lernen kann. Zusammen in der Gruppe erarbeitete man diverse Projektideen und realisiert diese.

FABLAB

Das FabLab ist an der Hochschule Technik & Architektur in Horw angesiedelt und ist für Alle zugänglich. Zu Beginn benötigt es allerdings eine Einführung durch das Fachpersonal. Weitere Informationen findet man unter: https://fablab-luzern.ch/

Tag Öffnung Schliessung
Dienstag 10:00 Uhr 21:00 Uhr
Mittwoch 10:00 Uhr 21:00 Uhr
Donnerstag 10:00 Uhr 21:00 Uhr

Es sind folgende Geräte vorhanden:

  • Laser Cutter
  • 3D-Drucker
  • CNC Fräse

Laser Cutter

Es sind zwei Laser Cutter vom Typ AKJ-6090 von Acctek im Einsatz. Die mögliche Bearbeitungsfläche beträgt 900 x 600 mm. Es können Bauteile in verschiedenen Materialien geschnitten, geritzt und graviert werden.

ACHTUNG!!

  • Es gibt Materialien die nicht gut mit dem Laser geschnitten werden können. Verleimtes Sperrholz lässt sich meist nur bis ca. 3mm schneiden.
  • Materialien mit einem Chloranteil dürfen nicht bearbeitet werden, da giftige Gase entstehen.

3D-Drucker

Im FabLab sind folgende 3D-Drucker vorhanden:

  • 3 x Original+
  • 4 x Ultimaker2+

CNC Fräsmaschine

Im FabLab ist folgende Portalfräsmaschine vorhanden:

  • 1 x PA8050

Für genauere Infos:

https://www.millstep.de/cnc-fraesmaschinen-vom-hersteller/cnc-fraesmaschine-pa-serie-v3/

https://fablab-luzern.ch/cnc-frasmaschine/

Programm

Reflektion Inputs

Vortrag Urs Gaudenz

Urs Gaudenz ist der Gründer von GaudiLabs http://www.gaudi.ch/. Vor dieser Gründung hat Urs an der technischen Hochschule in Lausanne das Masterstudium im Bereich Mikrotechnologie absolviert. In den Bereichen Elektronik, Mechanik und Software bringt er ein grosses Wissen mit.

Am Montag Nachmittag gab er den Studierenden einen Einblick in die DIY Community. Er erzähle auch von seinen Erfahrungen die er in diesem Bereich gesammelt hat und wie er damit umging. Zudem zeigte er diverse Open Source Quellen wie z.B. https://www.thingiverse.com/. Auf dieser Webseite findet man schnell Gute Ideen.

Ein Produkt aus dem Sortiment von GaudiLabs ist der Open Drop. Es ist ein Gemeinschaftprojekt von Hackterian.org und der DIYBio-Bewegung. Das Gerät erlaubt es eine Flüssigkeit durch digitale Mikrofluidik zu Steuern.

Im folgenden Video wird gezeigt wie das Gerät verwendet wird.

Vortrag Paula Pin

Dienstag Nachmittags teilte Paula ihre Erfahrungen die sie auf ihren Reisen gemacht hat mit uns. Paula ist eine künstlerische Aktivistin, zudem forscht sie an diversen Projekten. Weitere Informationen darüber findet man auf folgenden Links:



Vortrag Christian Gehringer

Christian Gehringer ist Arzt und Forscher im Bereich Biomedizin. Er hat für eine gewisse Zeit im Basler Spital gearbeitet und nun führt er eine eigene Praxis als Hausarzt.

In seiner Präsentation übermittelte er den Studierenden seine Erkenntnisse und Ergebnisse von seinen Forschungen. Ein Beispiel dabei waren die parasitierende Blutwürmer und deren symbiotischen Bakterien. Für die angehenden Ingenieuren ist es von grosser Bedeutung, dass vor der Entwicklung eines Gerätes der jeweiligen Arbeitsprozess betrachtet wird. Oftmals kommt es vor, dass etwas entwickelt wird, das am Ende nie gebraucht wird. Einer der grössten Gründe dabei ist, dass das entwickelte Gerät nicht benutzergerecht entwickelt wurde und so die Arbeit nicht vereinfacht.

Hack 0

EMG SpikerShield Bord

Das EMG SpikerShield misst die elektronischen Impulse der Muskeln. Dieses Shield wurde als Einleitung in die Woche gebaut mit dem Ziel das Löten den Studierenden näher zu bringen. Durch das Programmieren von dem Arduino bekam man auch einen guten Einstig in die Welt des Programmierens

Zusammenbau

Um die Platine zum laufen zu bringen, mussten zuerst alle Bauteile eingelötet werden. Dabei gingen wir nach der Anleitung auf Backyardbrains. Da die meisten aus der Gruppe nicht zum ersten mal löteten ging es im Grossen und Ganzen zügig voran. Das grösste Problem war jedoch das die Lötspitze nicht mehr so neu war und deshalb den Lötzinn nicht annahm. Durch eine höher eingestellte Temperatur konnte jedoch das Problem etwas beseitig werden. Das Shield wurde am Ende auf das Arduino gesteckt. Dabei muss sehr genau geachtet werden, dass alle Pins verbunden werden.

Code

Der Code für das Arduino konnte von der Website "Backyardbrains" heruntergeladen werden. Im Prinzip wird die Spannung am Analogen Input A0 zehn mal eingelesen und daraus das Mittel gebildet. Dieser Wert wird anschliessend auf den 8 LEDs angezeigt.

Funktionstest

Um das Shield auszutesten, hat Oli die Elektroden an seinem Unterarm befestigt. Die Elektroden wurden dann über ein Kabel mit dem Shield verbunden. Sobald nun der Muskel angespannt wird, beginnen die LEDs zu leuchten. Zuerst war es viel zu sensitiv und hat ununterbrochen fest ausgeschlagen. Das Problem war, dass der Schalter noch nicht auf ENV gestellt war sondern auf RAW. Dabei wird das Signal nicht gefiltert und es ergibt keine klare Messung. In er Arduino IDE gibt es die Möglichkeit mit einem Plotter eine Kurve anzeigen zu lassen. Wir haben den Analogen Eingang, auf dem das Muskelsignal liegt, so visuell anzeigen können. Auf diesem sind die jeweiligen Ausschläge der Muskeln sehr gut zu erkennen.

Reflexion

Die Muskelstromauswertung hat mit dem EMG SpikerShield Bord nicht auf Anhieb funktioniert. Es mussten noch diverse Anpassungen (Elektrodenplatzierung, Einstellungen am Shield, etc.) vorgenommen werden, damit die Auswertung realistische Ergebnisse anzeigte.

Heart and Brain SpikerShield

Aufzeichnung Augenbewegung

Mit dem Heart and Brain SpikerShield haben wir die Augenbewegung auf horizontaler Ebene aufgezeichnet.

Das Auge wird durch vier Muskeln bewegt. Jeweils ein Muskel dreht das Auge nach oben, unten, links oder rechts. Genauere Informationen sind hier auffindbar. Wenn eine Elektrode an der Schläfe und die andere an der Nase befestigt wird, kann das elektrische Signal auf der horizontalen Ebene des Auges gemessen werden. Dies betrifft vorallem die Muskeln links und rechts vom Auge.

Im Diagramm ist dargestellt, wie sich die Spannung ändert, wenn das Auge in folgender Reihenfolge bewegt wird: mitte, links, mitte, rechts, mitte. Nur bei der Bewegung des Auges ist ein Signalausschlag erkennbar. Je nach dem ob der linke oder rechte Muskel bewegt wird, entsteht ein positives oder negatives Signal.

Die Software wurde von der Website backyardbrains übernommen oder kann hier: download zip direkt heruntergeladen werden.

SkillShare Session 2022:

Am Mittwoch Morgen war das Ziel sich gegenseitig etwas beizubringen. Unten sind die Themen aufgelistet, welche vorbereitet wurden.

SkillShare & Gruppe Wann Ort
DIY-MedTech - Pumpspeicherkraftwerk erklären Mittwoch 09:15 Fablab
DIY-MedTech - ESP erklären Mittwoch 09:15 Fablab
DIY-MedTech - Schlössli knacken Mittwoch 10:15 Fablab
DIY-MedTech - "Female" pleasure ANATOMY Mittwoch 10:15 Fablab
DIY-MedTech - Kartenspiel Mittwoch 11:15 Fablab
DIY-MedTech - Aufbau Arduino Mittwoch 11:15 Fablab

Hack 1

Idee

Das Team Abartig wollte die Signale, die mit dem EMG SpikeShield erfasst werden können für etwas verwenden. Das Team will die Bewegungen der Augen mit dem SpikeShield erfassen und damit eine Lampe in die entsprechende Richtung der Augen bewegen. Wenn nach links geschaut wird, soll eine Stirnlampe sich nach links bewegen. Wenn nach rechts geschaut wird, soll die Stirnlampe sich nach rechts bewegen. Das Ziel ist es, dass im Dunkeln immer dort Licht ist, wo gerade hingeschaut wird.

Sensoren

Für die Messung der Augenbewegung wurde die gleiche Methode wie beim Hack 0: Heart and Brain SpikerShield angewendet, ausser dass die Elektroden an beiden Schläfen und die Referenz an der Stirn mittig befestigt wurden. Da normalerweise beide Augen in die gleiche Richtung bewegt werden, wirken die Muskelströme des linken und rechten Auges in die gleiche Richtung.

Lampe

Um im Dunkeln sehen zu können, wurde zuerst eine Lampe entwickelt. Als Leuchtmittel wurde im Fablab ein passender LED-Ring gefunden. Beim Ring handelt es sich um Neopixel-LEDs. Diese können wie herkömmliche RGBs angesteuert werden. Dazu wurden zuerst die Kontakte des Rings mit einem Kabel verlötet. Anschliessend wurde ein Lampenschirm gebaut, der das Licht in eine Richtung konzentrieren sollte. Dazu wurde ein glänzendes Blech zu einem Konus geformt und zusammengenietet. Der LED-Ring und der Lampenschirm wurden anschliessend auf eine Grundplatte verleimt. Die Grunplatte wurde zuvor mit dem Lasercutter aus einer MDF-Platte herausgeschnitten.

Programm Arduino

Das Programm wurde in der Arduino IDE geschrieben. Es wurden zwei verschiedene Librarys hinzugefügt. Eine um die Neopixel anzusteuern und eine um den Servo zu bedienen. Zudem wurde Online von der Website ".." den Code für das Heard and Brain SpikerShield genommen. Alle Codestücke anschliessend in einen grossen Code zu verbinden, war schwieriger als angenommen, da man nicht immer genau wusste wo das Problem lag, wenn etwas nicht funktionierte. Da die Arduino IDE auch keinen Debugger hat, wurde meist ein Teil des Codes auskommentiert und so nach den Ursachen der Fehler gesucht. Da das Shield nicht selber designt worden war, hatte man zudem noch oft das Problem, das gewisse Inputs und Outputs schon verwendet werden, obwohl man sie nicht dringend benötigt. Der fertige Code kann man unten ansehen.

#include <Servo.h>
#include <Adafruit_NeoPixel.h>
#ifdef __AVR__
 #include <avr/power.h> 
#endif
#define PIN        11
#define NUMPIXELS 14

Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
Servo myservo;  // create servo object to control a servo

int potpin = 0;  // analog pin used to connect the potentiometer
int pos;    // variable to read the value from the analog pin
int reading[10];
int finalReading;
int multiplier = 1;
unsigned int mittel = 0;
int i = 0;
unsigned int counterright = 0;
unsigned int counterleft = 0;

void setup() {
  Serial.begin(9600); //begin serial communications
  #if defined(__AVR_ATtiny85__) && (F_CPU == 16000000)
    clock_prescale_set(clock_div_1);
  #endif
  pixels.begin();
  pixels.clear();
  pixels.setPixelColor(1, pixels.Color(255, 0, 0));
  pixels.show();
  myservo.attach(5);  // attaches the servo on pin 9 to the servo object
  pos = 90;
  delay(1000);
  for(i = 0;i<50;i++){
    for(int i = 0; i < 10; i++){    //take ten readings in ~0.02 seconds
      reading[i] = analogRead(A0) * multiplier;
      delay(2);
    }
    for(int i = 0; i < 10; i++){   //average the ten readings
      finalReading += reading[i];
    }
    finalReading /= 10;
    mittel = mittel+finalReading;
    delay(10);
    Serial.println(mittel);
  }
  mittel = mittel/50;
  Serial.print(mittel);
  Serial.print("\t");
  delay(1000);
  pixels.clear();
  for(int i=0; i<NUMPIXELS; i++)
  {
    pixels.setPixelColor(i, pixels.Color(255, 0, 255));
  }
  pixels.show();
}

void loop() {
  for(int i = 0; i < 10; i++){    //take ten readings in ~0.02 seconds
    reading[i] = analogRead(A0) * multiplier;
    delay(2);
  }
  for(int i = 0; i < 10; i++){   //average the ten readings
    finalReading += reading[i];
  }
  finalReading /= 10;
  Serial.print(finalReading);
  Serial.print("\t");
  if(finalReading > (mittel +100)&&counterright>30){
    pos += 89;
    counterright = 0;
  }
  if(finalReading < (mittel-100)&&counterleft>30){
    pos -= 89;
    counterleft = 0;
  }
  pos = constrain(pos, 1, 179);
  Serial.print(mittel);
  Serial.print("\t");
  Serial.println(pos);
  myservo.write(pos);
  counterleft++;
  counterright++;
  for(int i=0; i<NUMPIXELS; i++)
  {
    pixels.setPixelColor(i, pixels.Color(255, 255, 255));
  }
  pixels.show();
  delay(40);
}

Funktion

Nach den diversen Arbeiten wie dem Erstellen der Komponenten, ging es darum die Teilsysteme zusammenzubauen und in Betrieb zu nehmen. Wie im Video erkennbar ist, kann die Lampe durch die Augenbewegungen gesteuert werden.

Reflexion

Mit dem Hack 1 konnte das Team Abartig beweisen, dass man die Muskeln für die Augenbewegung messen und auswerten kann. In einem weiteren Schritt wollt man das ganze System unabhängig vom Computer machen, da bis jetzt eine USB-Verbindung nötig war. Leider gab es das Problem, dass die Spannung nicht ausreicht von der Batterie um die Servos anzusteuern und der ganze Arduino hatte deshalb eine ungenügende Stromversorgung. Somit konnten keine guten Messungen mehr gemacht werden. Da es jedoch schon Donnerstag Abend war, als das Problem mit der Spannung erkannt worden ist, hat das Team eine Besprechung gemacht und entschieden das Projekt nicht mehr weiter zu verfolgen und noch weitere Hacks in der verbleibenden Zeit zu machen. Grund dafür war, dass das Beheben des Problems nochmals einiges an Zeit benötigt und nicht klar war ob man überhaupt eine Lösung finden wird. Zudem ist der erreichte Stand des Projekts genügen gut um ihn so stehen zu lassen.

Hack 2 Heisser Draht

Idee

Am Freitag Morgen begann das Team Abartig mit ihrem zweiten Projekt. Da die Blockwoche bereits dem Ende naht, entschied das Team ein kleineres Projekt zu starten bei dem ein spielerischer Anteil dabei ist. Die Idee war ein schon bekanntes Spiel den Heisser Draht zu bauen. Dabei handelt es sich um Geschicklichkeitsspiel welches vom Benützer eine hohe Konzentration abverlangt.

Komponenten

Um das Spiel zu bauen wurden folgende Komponenten verwendet.

  • Kabel
  • Batterie
  • Unterlag-Platte
  • Lautsprecher
  • LED
  • Widerstand
  • Steckboard
  • Reihenklemme

Funktion

Das passende Kabel für den Draht zu finden war nicht ganz einfach, da die meisten aktuell verwendeten Kabel Litzen sind. Im Abfall fanden wir jedoch eine genug dicke Litze aus Stahl, welche sich verformen lässt und genügend Stabil dabei bleibt. Diese haben wir abisoliert und auf einem grossen Stück Holz befestigt. Zudem haben wir aus dem Rest des Kabels das Handstück gebaut. Um am Ende anzuzeigen wenn eine Person den Draht berührt, wurde zur Erkennung eine LED und ein Lautsprecher verwendet. Diese sind Seriell mit dem Draht geschalten. Somit erhellt die LED und ein Ton erklingt sobald das Handstück Kontakt mit dem Draht macht. Die ganze Schaltung wird mit einer Batterie gespiessen. Damit der Transport etwas einfacher ist, wurde mit einer Reihenklemme alle fixen Kabel auf der Unterlag-Platte befestigt und auf das Steckboard geleitet. Dort ist die LED aufgesteckt und der Lautsprecher angeschlossen.

Fazit

Das Spiel hat am Ende gut funktioniert. Beim Zusammenbau gab es keine grossen Probleme.
Als Erweiterung kann man in Zukunft noch ein schönes Gehäuse für die Elektronik bauen. Zudem kann man den Lautsprecher noch mit einem Mikrocontroller ansteuern und nicht nur ein Ton sondern ein spezifischer Sound ablassen.

Hack 3

Hochspannungstrafo / Elektroschocker

Aufbau und Funktion

Für den Elektroschocker wurde ein Trafo mit zwei Spulen, ein Mosfet, eine Batterie und ein Arduino verwendet.

Ein Ende der kleinen Spule wurde mit dem Minuspol der Batterie verbunden und das andere Ende mit dem Source des Mosfet. Das Pluspol der Batterie wird mit dem Drain des Mosfet verbunden. Das Gate des Mosfets wird mit einem PWM-Pin des Arduinos angesteuert. Nun kann über die kleine Spule des Trafos der Strom ein-/ oder ausgeschaltet werden.

Wenn durch die Spule Strom fliesst, baut sich im Eisenkern des Trafos ein elektrisches Feld auf. Sobald der Strom abgeschaltet wird, muss sich das Feld abbauen, was über die grosse Spule erfolgt.

Das Ergebnis ist im Video ersichtlich.

Verwendete Ressourcen

Anleitung Muscle SpikerShield: [1]

Weitere Infos zum Muscle SpikerShield: [2]

Interessante EKG Einführung: [3]

FabLab Homepage: [4]

Wiki-Codes: [5], [6]

Abschlusspräsentation

Am Samstagmorgen präsentierte das Team Abartig seine Ergebnisse den anderen Teams. Beim amüsanten Austausch mit den Gruppen wurde auf die gesamte Blockwoche zurückgeschaut. Anschliessend ist die Präsentation des Teams Abartig abgelegt.

File:Präsentation_Team_Abartig.pdf