Team DIY Dudes
Contents
Herzlich Willkommen!
Wir sind das Team DIY Dudes und bestehen aus Martin Baumeler, Claudio Eicher und Adrian Salvisberg. Näheres zu den Teammitgliedern findet ihr hier: Team
In diesem Wiki Beitrag beschreiben wir unsere Erfahrungen in der Blockwoche "Medizintechnik DIY" vom 12.09.2022 - 17.09.2022. Die Herausforderungen denen wir während der Woche und den Projekten begegnet sind beschreiben wir ebenso wie unsere Problemanalysen und gefundene Lösungsansätze dafür. Natürlich erleutern wir auch welche Ansätze funktioniert haben und welche nicht. Zwecks rotem Faden werden die Projekt und Arbeitsschritte generell beschrieben.
Team
Adrian Salvisberg
- Grundbildung: Berufslehre als Chemielaborant
- Studiengang: Medizintechnik, teilzeit
- Semester: 6
- Arbeitserfahrung: Labor und Qualitätssicherung in Chemie, Pharma & Medizintechnik
Ich habe nach meiner Lehre als Chermielaborant noch einige Jahre in verschiedenen Laboren gearbeitet, bevor und während ich meinen Zivildienst absolviert habe. Nach einem Aufenthalt im Ausland bin ich dann zurück ins Labor, diesmal in der Pharmaindustrie. Dort habe ich dann in die Qualitätssicherung gewechselt und auch mein Studium in Medizintechnik begonnen. Um das erlernte Wissen besser in der Praxis anwenden zu können, habe ich in eine Firma gewechselt, die neben der Pharma auch in der Medizintechnik sehr aktiv ist.
Claudio Eicher
- Grundbildung: Gymnasiale Maturität mit Vertiefung Physik und angewandte Mathematik (PAM)
- Studiengang: Maschinenbau, teilzeit und vollzeit
- Semester: 8
- Arbeitserfahrung: Praktikum in bei der Durrer Spezialmaschinen
Nach meinem Gymansiumabschluss habe ich zuerst meinen militärischen Dienst im Durchdiener absolviert. Danach habe ich 2 Jahre an der ETH Zürich studiert bis ich dann zur Hochschule Luzern gekommen bin. Hier habe ich mich nun auf den Thermo- und Fluiddynamik Bereich vertieft. Diese Fachrichtung ist nicht nur vielseitig und facettenreich sondern auch integral in unsere Gesellschaft und Zukunft.
Martin Baumeler
- Grundbildung: Berufslehre als Polymechaniker
- Studiengang: Maschinenbau, vollzeit
- Semester: 6
- Arbeitserfahrung: Bau 3D Drucker und Lasergravurmaschine
Nach meinem Lehrabschluss zum Polymechaniker Aufzugsmonteur bei Schindler habe ich dort noch zwei Jahre gearbeitet. Parallel zur Arbeit auf der Baustelle habe ich in dieser Zeit bei mir zu Hause einen 3D Drucker konstruiert und gebaut. Dazu kamen später noch zwei Lasergravurmaschinen. Einige meiner Projekte (zum Beispiel mein 3D Drucker) sind auf meinem Thingiverseprofil unter folgendem Link https://www.thingiverse.com/thing:5180595 aufrufbar. Durch weitere kleinere Projekte konnte ich mir bereits einiges Wissen im DIY Gebiet aneignen. Um weiter Erfahrung in diesem Gebiet zu sammeln, habe ich diese Blockwoche gewählt.
Hack 0
Hack 0 ist die erste Aufgabe und wird zur Einführung und zum Kennenlernen des Fablap genutzt. Dabei zeigen sich gleich die Vorteile des interdisziplinär zusammengesetzten Teams. Polymechaniker Martin weiss um den Nutzen eines aufgeräumten und gut organisierten Arbeitsplatzes und beginnt damit Arbeitsplatte, Lötkolben, Steckerleiste, Kabel und Abfallbehälter sinnvoll anzuordnen und festzukleben, bevor mit den Lötarbeiten begonnen wird. Claudio liest sich währenddessen in die Arbeitsbeschreibung zum Löten ein. Adrian, der aus der Arbeitswelt in der Pharma die Good Documentation Practice kennt und weiss, dass ein zeitnahes Dokumentieren parallel zur Arbeit sinnvoll ist, beginnt damit, das Vorgehen und die Prozesse fürs Wicki aufzuschreiben.
Zwecks Lerneffekt wechseln die Teammitglieder sich beim Löten ab, damit alle mit dem Prozess vertraut werden. Die anderen beiden, die gerade nicht Löten, kümmern sich jeweils um andere Teile des Projekts. Martin macht sich zum Beispiel sogleich an die Lösung eines ersten Problems: Die nicht sonderlich gesunden Zinndämpfe werden beim Löten eingeatmet. Aus einem kleinen Propeller, einer Batterie und einigen Kabeln baut er kurzerhand einen Ventilator, der an der "helping Hand" montiert wird, damit die Dämpfe vom Gesicht des Arbeitenden weggeblasen werden. Der erste Prototyp ist innert weniger Minuten gebaut und sieht wie folgt aus:
Nach einigen funktionellen und ästhetischen Korrekturen sieht der Ventilator dann so aus:
https://youtube.com/shorts/XD920kZmy4c?feature=share
Inbetriebnahme des Arduino mit Shield
Der gebaute Shield wird auf ein Arduino gesteckt. Als erstes wird das Arduino an den Strom angeschlossen um zu kontrollieren, ob alles richtig zusammengelötet wurde. Eines der roten LED beginnt zu blinken, sobald das Arduino an einer Stromquelle hängt. Das bedeutet, dass der vorinstallierte Blinkcode des Arduino grundsätzlich in einen visuellen Output umgewandelt werden kann. Folgendes Problem ist allerdings aufgetreten: Das Arduino wird vom PC nicht erkannt, obwohl es per USB 2.0 A zu B verbunden ist. Da Strom fliesst wird angenommen, dass das Kabel nicht das Problem ist. Zuerst wird versucht, den PC neu zu starten. Dabei wird festgestellt, dass das Neustarten aussergewöhnlich lange dauert, was darauf hindeutet, dass ein Update im Hintergrund installiert wird. Da der PC auch nach mehreren Minuten nicht wieder hochgefahren ist ohne eine Meldung anzuzeigen, wird versucht, das Arduino mit einem anderen Laptop zu verbinden. Um den Fehler beim ersten Laptop zu finden wird parallel versucht, ein anderes Arduino mit diesem Laptop zu verbinden, sobald der Neustart abgeschlossen ist. Die Verbindung beim ersten Laptop mit dem ersten Arduino funktioniert auch nach dem Neustarten nicht. Ein anderes Arduino kann allerdings problemlos verbunden werden. Das neue Arduino hat ein anderes Interface als Schnittstelle zur USB Verbindung. Die vermutung liegt nahe, dass das die Verbindung ermöglicht. Das erste Arduino funktioniert auch mit dem neuen Laptop nicht.
Sobald allerdings mit dem ersten Laptop, mit welchem das neue Arduino funktioniert, wieder das erste Arduino verwendet wird, funktioniert die Verbindung einwandfrei. Dieses Mal wird allerdings nur das Arduino angehängt mit einem neuen Kabel, davor wurde das Arduino immer zusammen mit dem Kabel von PC zu PC gegeben. Mit einem neuen Kabel funktionieren beide Arduinos mit beiden Laptops. Das Problem war also offensichtlich doch das Kabel. Da das Arduino funktioniert, wird der gebaute Shield aufs Arduino gesteckt.
Testen der EMG Sensoren
Die EMG Sensoren werden wie beschrieben auf der Haut befestigt. Ein Sensor auf der Rückseite der Hand, zwei auf der Innenseite des Unterarms. Der zu verwendende Code zur Messung wird auf das Arduino gespielt. Die Muskeln in Hand und Unterarm werden mehrfach kontrahiert und entspannt. Der gemessene Wert verändert sich allerdings nicht. Auch kann kein Zusammenhang zwischen Muskelkontraktion oder Bewegungen mit der Reaktion der LED festgestellt werden. Die LED blinken manchmal und manchmal nicht, ohne ersichtlichen Grund. Ein Mitstudent eines anderes Teams wird gebeten, sich den Aufbau anzusehen. Das verwendete Shield ist ein anderes als das selber gebaute und scheinbar nicht korrekt. Eine Brücke war an der falschen Stelle platziert (siehe nachfolgendes Bild), sodass nicht die richtigen Pins Kontakt hatten.
Nachdem das behoben wurde reagieren die LED verlässlich auf die Bewegungen des Arms. Dabei leuchten die LED der Reihe nach auf, wenn die Kontraktion stärker wird. Bei starker Kontraktion leuchten alle gleichzeitig, wenn der Arm in Ruhelage und entspannt ist, leuchtet kein LED. Das Experiment wird parallel am anderen Laptop mit einem Arduino Shiled getestet und funktioniert ebenfalls zuverlässig. Anschliessend wird das selber gebaute Arduino Shield getestet. Zuerst wird kein verlässliches Signal erkannt, die LED reagieren nicht verlässlich auf Muskelkontraktionen. Einige Lötstellen werden gesäubert oder neu gelötet, das Potentiometer wird justiert und . Anschliessend wird das Experiment erneut durchgeführt und funktioniert diesmal korrekt. Die LED reagieren verlässlich auf die Muskelkontraktion.
Hack 1
Beschreibung
Beim Hack 0 haben wir eher als Spielerei nebenbei einen Ventilator auf dem Lötkolben befestigt, welcher die Dämpfe absaugen sollte. Da wir dabei aber gemerkt haben, dass das tatsächlich nützlich und sinnvoll ist, haben wir uns dazu entschieden, dieses Konzept im Hack 1 aufzugreifen. Wir wollen eine Absaugvorrichtung bauen, die die Zinndämpfe einsaugt. Anders als beim Ventilator sollen die Dämpfe aber nicht einfach weggeblasen, sondern abgesaugt und neutralisiert werden. Auch soll die Vorrichtung automatisiert sein, so dass die Lüftung automatisch angeht, wenn gelötet wird und wieder ausgeht, sobald der Lötvorgang abgeschlossen ist.
Anforderungen
Die eingangs beschriebenen Eigenschaften werden im Folgenden in einem Anforderungskatalog aufgeführt und in muss-, soll- und kann-Kriterien eingeteilt. Die muss-Kriterien haben dabei höchste Priorität und müssen erfüllt werden, damit Hack 1 den angestrebten Zweck erfüllt. Soll-Kriterien müssen nicht zwingend erfüllt sein, generieren aber einen relevanten Mehrwert und sollen deshalb ebenfalls hoch gewichtet werden. Kann-Kriterien sollen wo möglich beachtet werden, da sie Hack 1 verbessern, können aber auch verworfen werden, wenn die Erfüllung zu umständlich oder kompliziert erscheint oder andere Funktionalitäten beeinträchtigt werden. Im nächsten Schritt werden Lösungsansätze für die einzelnen Anforderungen gesucht.
Anforderungskatalog
Anforderung | Kriterium |
---|---|
Zinndämpfe werden eingesaugt | muss |
Zinndämpfe werden neutralisiert | soll |
Lüftung an / aus ist automatisiert | soll |
Lautstärke der Lüftung beeinträchtigt Konzentration nicht | kann |
Lösungsansätze
In einem Brainstorming im Team werden Lösungsansätze für die verschiedenen Anforderungen kreiert und anschliessend diskutiert. Die ersten daraus resultierenden Lösungsansätze sind im Folgenden beschrieben. Der Übersichtlichkeit halber werden die Lösungsansätze zudem in einem Pflichtenheft den Anforderungen, die sie erfüllen sollen, zugeordnet.
Zinndämpfe absaugen und neutralisieren
Um diese beiden Anforderungen zu erfüllen wird schnell die Idee gefunden, einen Lüfter, wie sie in PCs verbaut sind, zu verwenden und die Dämpfe über einen Aktivkohlefilter strömen zu lassen. Eine Kurze Recherche ergibt, dass Aktivkohle dazu geeignet ist, die Zinndämpfe zu adsorbieren. Was hierbei beachtet werden muss ist, dass der Aktivkohlefilter einen Widerstand darstellt und dieser die Saugleistung nicht so stark beeinträchtigen darf, dass die Dämpfe gar nicht mehr eingesaugt werden. Ob sich Aktivkohle Granulat oder eine andere Variante besser eignet muss eruiert werden.
Automatisierung
Bei der Automatisierung wird zuerst diskutiert, eine Elektrode oder dergleichen am Anwendenden zu befestigen, sodass ein Stromkreis geschlossen wird, sobald der Lötkolben berührt wird, was den Ventilator starten soll. Nach beenden des Lötvorgangs wird der Lötkolben wieder losgelassen und damit der Stromkreislauf unterbrochen. Das Problem dabei ist, dass das befestigen und entfernen der Elektrode einen grösseren Aufwand darstellt, als einfach einen Schalter zu betätigen und der Mehrwert der Automatisierung dadurch nicht gegeben ist. Das wäre ein Tritt in die klassische Ingenieursfalle gewesen, dass eine Lösung aus Sicht des begeisterten Tüftlers, nicht des gemütlichen Anwenders gesucht wird. Alternativ wird der Ansatz gefunden, dass der Stromkreis direkt vom Lötkolben in der Halterung geschlossen wird. Solange der Lötkolben also in seiner Halterung steckt, ist der Stromkreis geschlossen und der Ventilator wird so geschaltet, dass er bei geschlossenem Stromkreis aus ist. Umgekehrt geht die Lüftung an, sobald der Lötkolben aus der Halterung genommen wird. Dieses Konzept würde die gewünschten Anforderungen gut erfüllen. Im Austausch mit anderen Gruppen wird allerdings angemerkt, dass die hohe Oberflächentemperatur des Lötkolbens bei diesem Ansatz ein Problem darstellen könnte. Das ist ein valider Einwand, da der elektrische Widerstand natürlich stark temperaturabhängig ist und die Schaltung dadurch kompliziert wird. Deshalb wir dieser Punkt nochmal im Team diskutiert und ein neuer Lösungsansatz gefunden. In die Halterung soll einfach ein mechanischer Schalter eingebaut werden, welcher aktiviert wird, wenn der Lötkolben in der Halterung platziert wird. Der Output dieses Schalters steuert die Lüftung. Wenn der Schalter gedrückt wird geht die Lüftung aus, solange der Schalter nicht gedrückt wird, ist die Lüftung aus. Dieser Ansatz wird für besser befunden und soll deshalb umgesetzt werden.
Lautstärke
Damit der Lüfter nicht zu laut ist muss im wesentlichen der Motor stark genug sein, dass die Dämpfe ab- und durch den Filter gesaugt werden können, ohne dass der Motor auf maximaler Leistung laufen muss. Der Motor soll also leicht überdimensioniert werden.
Pflichtenheft
Anforderung | Kriterium | Lösungsansatz |
---|---|---|
Zinndämpfe werden eingesaugt | muss | Radiallüfter wird auf Arbeitsstation montiert |
Zinndämpfe werden neutralisiert | soll | Aktivkohlefilter wird eingebaut |
Lüftung an / aus ist automatisiert | soll | Schalter wird in Lötkolbenhalterung angebracht |
Lautstärke der Lüftung beeinträchtigt Konzentration nicht | kann | Motor wird ausreichend überdimensioniert gewählt |
Umsetzung
Damit das muss-Kriterium erfüllt ist müssen die Zinn Dämpfe eingesaugt werden. Dazu muss der Lüfter laufen, während gelötet wird. Als erstes wird deshalb parallel daran gearbeitet, den Code fürs Arduino zu schreiben, welcher den Lüfter steuert. Dabei soll der Lüfter immer laufen, wenn der Schalter nicht betätigt wird und aus gehen, sobald der Schalter einen Input erhält, weil der Schalter gedrückt wird, wenn der Lötkolben in der Halterung steckt.
Code und Schaltung
Dazu wird ein Code fürs Arduino auf Basis von C geschrieben. Online wird nach einem vergleichbaren Code gesucht, welcher als Grundlage verwendet und adaptiert werden kann. Gleichzeitig wird eine Schaltung gebaut, die das Arduino mit dem Lüfter und dem Schalter verbindet, so dass der Code laufend getestet werden kann. Damit während der Entwicklung schnell Anpassungen vorgenommen werden können wird eine Steckplatine (bread board) zwischengeschalten. Die Schaltung sieht wie folgt aus:
Die Schwierigkeiten bestehen hier vor allem darin ohne fundierte Programmieren in C Kenntnisse den Code richtig zu verstehen und gezielt anpassen zu können. Das ist notwendig, um das Relais richtig ansteuern zu können, damit ein Input erhalten wird, wenn der Schalter betätigt wird und dieser in den korrekten Output umgewandelt werden kann. Mittels online gefundenen Manuals und Erklärungen kann der Code nach mehreren Versuchen korrekt formuliert werden. Auch bei der physischen Schaltung ist das Relais der Knackpunkt. Die Schaltung muss so gebaut werden, dass das Arduino einen Input vom Schalter erhält und den Output richtig an den Lüfter weiterleitet. Hier muss ebenfalls vieles ausprobiert und korrigiert werden. Auch hier sind online viele Hilfestellungen zu finden. Besonders hilfreich war bei beiden Arten von Problemen, sowohl mit dem Code als auch mit der Schaltung, die Seite funduino.de. Das oben erwähnte bread board war dabei auch sehr nützlich, weil Steckverbindungen schnell ausgetauscht werden und damit verschiedene Ideen ausprobiert werden konnten.
Arduino Code
Der Code ist hier zu sehen inklusive Kommentaren:
int Relais = 6; //Das Wort „Relais“ steht jetzt für den Wert 6.
int taster = 7; //Das Wort „taster“ steht jetzt für den Wert 7.
int tasterstatus = 0; //Das Wort „tasterstatus“ steht jetzt zunächst für den Wert 0. Später wird unter dieser Variable gespeichert, ob der Taster gedrückt ist oder nicht.
void setup() //Hier beginnt das Setup. {
pinMode(Relais, OUTPUT); //Der Pin mit dem Relais (Pin 6) ist jetzt ein Ausgang. pinMode(taster, INPUT); //Der Pin mit dem Taster (Pin 7) ist jetzt ein Eingang.
}
void loop() { //Mit dieser Klammer wird der Loop-Teil geöffnet.
tasterstatus = digitalRead(taster); //Hier wird der Pin7 ausgelesen (Befehl:digitalRead). Das Ergebnis wird unter der Variable „tasterstatus“ mit dem Wert „HIGH“ für 5Volt oder „LOW“ für 0Volt gespeichert. if (tasterstatus == HIGH)//Verarbeitung: Wenn der Taster gedrückt ist (Das Spannungssignal ist hoch) { //Programmabschnitt des IF-Befehls öffnen. digitalWrite(Relais, HIGH); //dann soll das Relais eingeschalten werden delay (500); //und zwar für für 0.5 Sekunden (500 Millisekunden). } //Programmabschnitt des IF-Befehls schließen. else //...ansonsten... { //Programmabschnitt des else-Befehls öffnen. digitalWrite(Relais, LOW); //...soll das Relais aus sein . delay (5000); } //Programmabschnitt des else-Befehls schließen.
} //Mit dieser letzten Klammer wird der Loop-Teil geschlossen.
Halterung
Konzept
Gleichzeitig wird an der Halterung gebaut. Diese soll so konzipiert sein, dass der Schalter betätigt wird, wenn der Lötkolben in der Halterung steckt. Sobald der Lötkolben aus der Halterung genommen wird, soll der Schalter nicht deaktiviert sein. Das wird realisiert, indem die Spule, die den Lötkolben hält, in einem Gelenk steckt, welches in einem definierten Bereich kippen kann. Der Aufbau ist so dimensioniert, dass die Spule ohne Kolben in eine Richtung kippt, so dass kein Druck auf den Schalter vorhanden ist (siehe Abbildung "Schalter deaktiviert"). Sobald der Kolben in die Spule gesteckt wird, verschiebt sich der Schwerpunkt so, dass die Spule in die andere Richtung kippt und auf den Schalter drückt (siehe Abbildung "Schalter aktiviert".
Schalter deaktiviert:
Schalter aktiviert:
Der Schalter befindet sich unter dem blauen Gelenk. Zum besseren Verständnis sind hier einige Fotos einzelner Teile und als teilweise zusammengefügte Baugruppe eingefügt:
Spule in Gelenk:
Baugruppe Konzept der Halterung
Herstellung der Einzelteile
Hier sind die Einzelteile zu sehen:
Die hölzernen Teile die den Rahmen der Halterung bilden wurden in CAD konstruiert und als 2D-dxf exportiert und mit dem Lasercutter aus 6 mm MDF Holzplattenresten geschnitten. Das Gelenk wurde ebenfalls in CAD gezeichnet und als stl exportiert und anschliessend mittels Laserdrucker aus PLA hergestellt.
Am Mittwoch war Skillshare Vormittag. Die Studierenden haben in einem Brainstorming Themen aufgeschrieben, über die sie mehr erfahren möchten. Dann haben die Dozierenden und Studierenden aufgeschrieben, bei welchen Themen sie einen Input geben könnten. Anschliessend hatten alle je drei Stimmen die sie abgeben konnten, um für die interessantesten Themen zu voten. So kamen sechs Vorträge zusammen, von denen jeweils zwei parallel gehalten wurden. Man konnte also jeweils drei Vorträge besuchen. Die DIY Dudes haben insgesamt die vier Vorträge Pumpspeicherkraftwerk, Schlössli knacken, MedTech Kartenspiel und Arduino was Yesterday, today is ESP besucht. Die Präsentation zum Pumpspeicherkraftwerk wurde dabei von Claudio aus unserem Team gehalten. Im Folgenden geben wir einen kurzen Überblick zu den einzelnen Themen.
Pumpspeicherkraftwerk
Ich, Adrian, habe den Vortrag selber besucht und fand ihn sehr spannend und informativ. Wasserkraftwerke interessieren mich persönlich und Claudio hat eine sehr gute Präsentation gehalten. Da er der Fachmann bei diesem Thema ist, gibt er selber eine kurze Zusammenfassung zu dem Thema.
Eines der grössten Probleme unsere Zeit ist die Speicherung von Energie. Dank der hohen Energiedichte sind Kohle, Gas und Benzin, bzw. Diesel, immer noch sehr gute Energiespeicher. Vor allem da diese Generatoren extrem schnell in das Netz eingespeisten werden können. Das macht es sehr schwierig für Erneuerbaren Energien weiterhin Fuss zu fassen. Genau dafür sind Pumpspeicherkraftwerke wie das Nant-de-Drance gedacht. Sie können riesige Mengen an Energie speichern und innert 5 Minuten am Netz bis zu 900MW Strom einspeisen. Während dem Skillshare «Pumpspeicherkraftwerk erklärt» wurden die Grundlagen eines solchen Kraftwerkes gezeigt. Dazu habe ich Aufnahmen und Bilder, welche ich vor Ort beim Nant-De-Drance machen konnte, gezeigt. Dadurch konnte man besser verstehen wie das Kraftwerk funktioniert und wie gross es eigentlich ist.
Einige der Bilder sind hier zu sehen, damit man sich das ganze besser vorstellen kann:
Schlössli knacken
Bei dieser Skillshare Session hat Alejandro von den Baboons gezeigt wie man Schlösser knacken kann. Angefangen mit einer Präsentation um die Funktionsweise eines Schlosses zu erklären und mit einem Schlüssel geöffnet wird und wie das mittels Dietrich gemacht werden kann, ohne den passenden Schlüssel zu haben. Anschliessend konnte man die Theorie in der Praxis ausprobieren, indem man sich mit mitgebrachten Dietrichen an verschiedenen Schlössern probieren konnte. Manche davon waren durchsichtig, damit man nochmal sehen konnte, was man darin macht, andere handelsübliche Schlösser wie man sie zB. an Fahrrädern oft sieht. Dabei war erstaunlich, wie viele Studierende ohne Schlossknackererfahrung innert kurzer Zeit ein Schloss öffnen konnten. Und Spass gemacht hat das ganze ebenfalls sehr.
MedTech Kartenspiel
Die Medizintechnik Studierenden treffen sich jeden Mittag oberhalb der Mensa um ein bestimmtes Kartenspiel zu spielen. Bei diesem Skillshare Block wurde dieses Kartenspiel erklärt, damit auch Studierende von anderen Studiengängen, oder Medizintchnikstudenten, die das Spiel noch nicht kannten, mitspielen können. Zuerst wurden die Regeln erklärt, anschliessend wurde eine Runde gespielt. Das hat Spass gemacht und wird sicher zur Vernetzung zwischen den Studierenden beitragen, wenn künftig in der Mittagspause noch mehr Studierende mitspielen werden.
Arduino was Yesterday, today is ESP
Martin einfügen