http://www.hackteria.org/wiki/api.php?action=feedcontributions&user=Tnroth&feedformat=atomHackteria Wiki - User contributions [en]2024-03-29T06:46:02ZUser contributionsMediaWiki 1.28.0http://www.hackteria.org/wiki/index.php?title=Medizintechnik_DIY_2020&diff=41695Medizintechnik DIY 20202020-02-09T12:18:39Z<p>Tnroth: /* Student Teams */</p>
<hr />
<div><span style="color:#ff0000; font-size:150%">'''Diese Wiki-Seite bitte nur in den einzelnen Paragraphen editieren'''</span><br />
<br />
<div style="float:right" class="toclimit-2">__TOC__</div><br />
<br />
[[File:MedTechDIY_GroupShot.jpg|640px]]<br />
<br />
== Kurzbeschreib ==<br />
<br />
Das Modul verbindet Anwendungen der Medizintechnik mit Do It Yourself (DIY) Ansätzen. Dadurch wird das tiefere Verständnis von Medizintechnischen Geräten durch einen direkten, interdisziplinären und möglichst selbstgesteuerten Zugang gefördert. Basierend auf verschiedenen elektrophysiologischen Messmodulen (EMG, EKG, EOG, EEG) entwickeln die Studierenden im Team Ideen für innovative Projekte. Erste Prototypen werden mit den Mitteln der Digitalen Fabrikation hergestellt und getestet.<br />
<br />
Download Modulbeschrieb HS2019: [[:File:t medizintechnik DIY_HS19.pdf]]<br />
<br />
==== Earlier Editions MedTech DIY ====<br />
<br />
[[Medizintechnik_DIY_2018]]<br />
<br />
[[Medizintechnik_DIY_2019]]<br />
<br />
== Location(s) ==<br />
'''FabLab Horw (Trakt I)'''<br />
<br />
[[File:Location_fablab.jpg|400px]]<br />
<br />
'''Unterrichtsraum E200 (Trakt II) (40 Plätze)''' <br />
<br />
'''Sitzungszimmer D1 (Trakt I) (12 Plätze)'''<br />
<br />
<gallery mode="packed-hover" widths=320px heights=200px><br />
File:Fablab_groundFloor.jpg|Fablab Luzern<br />
File:DIY-MedTech_Fablablab.jpg|WetBioMedLab im Fablab<br />
File:IMG_20180213_165204.jpg|After the 2nd day<br />
File:DIY-MedTech_classroom.jpg|Unterrichtsraum E210<br />
</gallery><br />
<br />
== Schedule ==<br />
<br />
Montag, 3. Februar - Samstag 8. Februar 2020<br />
<br />
Täglich von 8:30 - 12.00 and 13.00 - 16:30 Uhr<br />
<br />
'''Dienstag bis 19:00 Uhr''' Kulturbeitrag und Apèro<br />
<br />
Samstag 09:00 - 14:00 Uhr<br />
<br />
[[File:WeekgridMedTech2020_update.jpg|800px]]<br />
<br />
<br clear=all><br />
<br />
=== Content ===<br />
<br />
'''Preparation:''' <br />
* Read and Reflect<br />
* Prepare for Team Discussion<br />
<br />
'''Learn 0: Introduction'''<br />
* Introduction into DIY and Fablab<br />
* Introduction of Winterschool<br />
* Wiki-Intro<br />
<br />
'''Hack 0: Body-Signals'''<br />
* Lötle<br />
* Experimentiere<br />
<br />
'''Learn 1: Un-conferencing'''<br />
* Skill Share Sessions - See more on [[BreakOut Methoden]]<br />
* Input Lectures on MedTech and DIY Hacking Cultures<br />
<br />
'''Hack 1:'''<br />
* Prototyping<br />
* Experimenting<br />
<br />
'''Hack 2:'''<br />
* Refraining<br />
* Experimenting<br />
* more Prototyping<br />
<br />
'''Share:'''<br />
* Documentation<br />
* Presentation<br />
<br />
'''Post Production:'''<br />
* Final Documentation<br />
<br />
=== Input Lectures ===<br />
<br />
See more about the [[Input Lectures on DIY, MedTech and Hacklabs]] from 2018.<br />
[[File:Berz_steine$.jpg|thumb|120px]]<br />
'''Dienstag, 4. Feb, 17:00 -19:00 Simon Berz - "Sediment" Klangkunst Konzert '''<br />
<br />
Simon Berz (MTR Transdisciplinary Studies in the Arts) <br />
Drummer, sound artist, director of the Badabum music school born on 26 January 1967, Baden (CH)<br />
<br />
His work in experimental and improvised music, in sound art and new forms of performance aims at innovation, interaction and participation. Simon Berz is a drummer and sound artist. He uses improvised music to create bridges between his compositions and performances to visual arts, dance and film. His work takes place in artist-run spaces as well as in clubs, galleries and concert halls. (and fablabs)<br />
<br />
* [http://www.simonberz.ch/index.php?/work/lithophon/ Simon Berz Website]<br />
<br />
[[File:MedTechDIY_Konzert.jpg|400px]]<br />
<br />
'''Donnerstag, 6. Feb, 13:00 - 14:00 Christian Gehringer - '''<br />
<br />
DIY Ansätze in der Biomedizinischen Forschung<br />
<br />
Christian erzählt über seinen beruflichen Werdegang bisher und über 2 Forschungsprojekte, die etwas anders als normal initiiert werden konnten und trotzdem den Weg in die akademisch-wissenschaftliche Welt gefunden haben.<br />
Die Folien findet ihr hier: [[:File:DIY_Ans_tze_in_Biomedizinischer_Forschung___Presentation_MedTech_2020.pdf]]<br />
<br />
[[File:Folien_christian.jpg|400px]]<br />
<br />
'''Greg Gage - Backyard Brains (VideoConf)''' | Part of Un-Conference Skill-share<br />
<br />
Please prepare and give us a few specific questions about our experiences with the Backyard Brains tools / experiments / website. Propose improvements or future experiments that you would like to contribute.<br />
<br />
[[Q & A with Greg - Backyard Brains 2019]]<br />
<br />
[[File:Screenshot_Greg_videocall.png|400px]]<br />
<br />
=== Schlusspräsentationen / Demos Zeitplan ===<br />
<br />
'''Samstag 8. Februar ab 9:00'''<br />
<br />
* 8:30 Fablab is ab 8:30 offen falls ihr noch letzte Vorbereitungen machen wollt.<br />
<br />
Die Präsentationen finden OBEN statt. Wir werden eine kleine Demobühne mit Tisch bereitstellen, den ihr brauchen könnt.<br />
<br />
Es hat Lautsprecher, Beamer, Strom. Schaut ob ihr für eure Demo etwas umstellen müsst oder zusätzliche Technik benötigt.<br />
<br />
Am besten bereitet ihr eure Demos/Protoypen gut vor und haltet sie bereit zum aufstellen. Die ersten 4 Teams sollten alles schon oben haben. Während der Pause können die anderen 4 Teams ihre eigenen noch bereitstellen. Es sollte kein grosses Geläufe mehr geben zwischen den einzelnen Präsentationen. Dazu ist die Pause da.<br />
<br />
====Infos zu dem Format der Präsentationen==== <br />
Dauer pro Team, '''15 Minuten''', inkl 1-2 Minuten Fragen und Feedback der Studierenden. <br />
<br />
Gestaltet den Tag unterhaltsam und authentisch, dH euer "Publikum" sind die anderen Studierenden. Gerne wollen sie erfahren was ihr gemacht habt, was euch inspiriert und auf die Ideen für eure Prototypen gebracht hat. Stellt euch und euer Team vor. Reflektiert über den Prozess wie ihr gemeinsam gearbeitet habt. Sprecht über offene Fragen / Probleme und wie ihr weitermachen würdet.<br />
<br />
Schaut dass ihr die knappen 15 Minuten mit Filmen, guten Photos und Demos vielfältig gestaltet. Generell ist es unterhaltsamer, wenn verschiedene Leute aus dem Team unterschiedliche Phasen der Präsentation übernehmen , aber die Aufteilung müsst ihr selbst im Team<br />
abmachen. Sprecht euch gut ab, damit der Fluss / rote Faden übereinstimmt.<br />
<br />
==== Zeitablauf Samstag 8. Feb ====<br />
<br />
* Es hat Gipfeli und Snacks für alle!!<br />
<br />
'''Opening'''<br />
<br />
* 9.00 Willkommen und Besprechung Ablauf<br />
<br />
'''Präsentationen / Demos'''<br />
<br />
* 9:15 Team B: [[Bananas In Pajamas]]<br />
* 9:30 Team G: [[Team G2020]]<br />
* 9:45 Team D: [[Die Profis]]<br />
* 10:00 Team F: [[Team Frosch]]<br />
<br />
'''15 min Pause'''<br />
<br />
* 10:30 Team A: [[Another Team]]<br />
* 10:45 Team H: [[Team HustlerzZ]]<br />
* 11:00 Team E: [[Team Eehhh]]<br />
* 11:15 Team C: [[Team Corona]]<br />
<br />
'''30 min Pause'''<br />
<br />
* 12:00 Reflektion / Feeback Runde<br />
* 12:30 Abschluss<br />
* 12:45 Aufräumen<br />
* 13:00 Good-bye<br />
<br />
== Skill Share Sessions ==<br />
<br />
''Was ist eine Skill Share Session?''<br />
<br />
[[File:SkillShare_Schedule2020.jpeg|thumb|240px]]<br />
<br />
Wird im Rahmen der Einleitung im Detail erklärt. Hier ein paar Beispiele vom Kurs im Winter 2018.<br />
<br />
http://www.hackteria.org/wiki/BreakOut_Methoden<br />
<br />
{|<br />
|9:00||Photshop/GIMP<br/>E200?||Bildgebende Verfahren<br/>Mensa?||Arduino A<br/>FabLab<br />
|-<br />
|10:00||Synths&Soundzz<br/>Fablab Sofa Ecke||Medizin-Crashkurs<br/>E200?||Elektrotechnik<br/>FabLab1.Stock<br />
|-<br />
|11:00||Arduino B<br/>FabLab||Jassen und Gumpen<br/>Elephant||Einfache Diagnostik und Body-Hacking<br/>E200<br />
|-<br />
|1:00||Zmittag Pause<br />
|-<br />
|13:00||Schweissen<br/>Fablab||....||Zombie Apolalypse<br/>E200<br />
|}<br />
<br />
=== Skillshares ===<br />
<br />
==== [[Autonomes Nervensystem und das Hören in der Medizin]] Christian==== <br />
<br />
==== [[Another Team#Skillshare ARDUINO TUTORIAL]] ====<br />
<br />
==== [[DIY-MedTech Bildgebende Verfahren-Unterschiedliche Bildeindrücke - Team Frosch]] ====<br />
<br />
==== [[DIY-MedTech Synths&Soundzz - dusjagr]] ====<br />
<br />
==== [[Team Eehhh#Skillshare- Photoshop]] ====<br />
<br />
==== [[DIY-MedTech Skillshare - Zombie Apokalypse - Greg Gage]] ====<br />
<br />
====[[Team G2020-Schweissen]]====<br />
<br />
====[[Team HustlerzZ Medizin-Crashkurs]]====<br />
<br />
====[[Bananas In Pajamas ELektrotechnik Crash Kurs]]====<br />
<br />
== Student Teams ==<br />
<br />
===[[Another Team]]===<br />
<br />
===[[Bananas In Pajamas]]===<br />
<br />
=== [[Team Corona]] ===<br />
<br />
=== [[Die Profis]] ===<br />
<br />
Die Profis bauten im Rahmen dieser Blockwoche ein Baseball-Cap mit Ventilator, eine Spritzenpumpe und gossen Zinn. Als Skill Share Session wurde ein Aruduino Grundkurs angeboten - nicht auf profi Niveau, sondern Einsteigerlevel :)<br />
<br />
=== [[Team Eehhh]]===<br />
<br />
=== [[Team Frosch]]===<br />
<br />
=== [[Team G2020]] ===<br />
<br />
=== [[Team HustlerzZ]]===<br />
<br />
Die "HustlerzZ" wurden im Rahmen der [[MedTech-DIY]]-Blockwoche gegründet und bestehen aus den Mitgliedern Thomas Binggeli, Robin Durrer, Manuel Omlin und Marco Schöni<br /><br />
<br />
==== Zusammenfassung und Reflektion ====<br />
Die Blockwoche MedTech-DIY hat uns sehr gut gefallen. Zu Anfang hatten wir ein bisschen Mühe mit dem DIY Gedanken. Selbstständiges Arbeiten sind wir uns gewohnt, nicht aber dass keine klare Aufgabenstellung gegeben ist. Wir haben etwas Zeit gebraucht bis wir einfach drauf los experimentiert haben. Es ist erstaunlich wie ohne spezifisches Wissen so schnell ein Experiment ensteht und ein Prototyp hergestellt werden kann. Ein Problem war, dass wir zu wenig Skills in der Elektrotechnik und dem Programmieren vom Arduino hatten. Bei der Spannungsversorung und dem verkabeln sind wir schon bald an unsere Grenzen gestossen. Falls ein Arduino Programm nicht direkt von der Bibliothek bezogen werden konnte, haben wir sehr viel Zeit gebraucht bis es einwandfrei funktionierte. In solche Situationen haben wir die Hilfe anderer Studenten in Anspruch genommen, die ihre Skills mit uns geteilt haben. Zum Schluss haben wir uns ein Eishockeyspiel ausgedacht und einen Prototypen aufgebaut.<br /><br />
Die Blockwoche hat sich definitiv gelohnt. Nur schon die Abwechslung der Struktur zum restlichen Studium ist erholsam. Wir danken herzlich für die Organisation dieser Blockwoche und die gute Unterhaltung.<br />
<br />
==== Prototypen ====<br />
<br />
<gallery <gallery mode="packed-hover" widths=400px heights=300px><br />
Greifarmhustlerzz.jpeg|Greifarm<br />
DisplaySpieler.jpeg|Display<br />
PrototypEishockeyfeld.jpeg|Eishockeyfeld<br />
</gallery><br />
<br />
Skill Share Session: [[Team HustlerzZ Medizin-Crashkurs]]<br />
<br />
=== Beispiele aus alten Jahrgängen: ===<br />
<br />
==== Beispiel für Zusammenfassung auf Frontseite ====<br />
<br />
* In einem ersten Abschnitt soll jedes Team in eingen wenigen Sätzen ihre '''Zusammenfassung und Reflektion''' beschreiben. <br />
* Zusätzlich einen wiki-link zu ihrem Skill-share einfügen, und evt in einem Satz beschreiben. <br />
* Im zweiten Abschnitt ein Überblick über die '''Prototypen''' der verschiedenen Projekten als Fotogallerie und 1-2 Sätze dazu.<br />
<br />
[[File:Doku_Beispiel_Zusammenfassung.jpg|800px]]<br />
<br />
==== [[Team GUSTAV]] ====<br />
<br />
==== [[Team 2020 Mentorzz]] ====<br />
<br />
== Testat ==<br />
<br />
=== Teilnahme ===<br />
* Pflichtlektüren gelesen<br />
* Aktive Teilnahme an allen Tagen der Blockwoche<br />
<br />
=== Leistungsnachweis ===<br />
<br />
'''Wiki-Seite pro Gruppe (70%) mit:'''<br />
* Reflektion zu Readings / Input Vorlesungen<br />
* Dokumentation der Experimente während der Woche<br />
(Experimente, Resultate, Erkenntnisse, Links/Resourcen, Bilder)<br />
* Dokumentation des Skill-Share Session<br />
(Vorbereitung, Durchführung, Erfahrungen, Links, Resourcen)<br />
<br />
'''Schlusspräsentation in der Gruppe am Samstag (30%)'''<br />
<br />
'''Abgabetermin Wiki-Seiten: Sonntag 1. März 2020, 23:59'''<br />
<br />
== Mentors ==<br />
<br />
=== Urs Gaudenz aka [[Gaudi]] ===<br />
<br />
Urs Gaudenz is an engineer and interdisciplinary scholar working in Lucerne, Switzerland. He was born 1971 in Seattle USA. He got his master in science of Microtechnologoy from the Swiss Federal Institute of Technology, Lausanne. Subsequent to that he attended Post-Graduate programs in international business and innovation-management. In 2016 completed the course of study in the Principles and Applications of Synthetic Biology as directed by Georg Curch, Professor of Genetics at Hardward Medical School. He is founder of GaudiLabs, a third space for third culture. He is a founding member and member of the board of Hackteria International Society. He is currently on the faculty of the Lucerne School for Applied Science and Arts. In his professional practice, Urs Gaudenz makes use of various forms of work and expression such as prototype development, open scientific research and collaborative workshops. He is combining his different backgrounds to explore new technological and cultural fields and his works often emerges out of the void in this intersection. Remarkable in his work is the wide span from speculative and futuristic to very functional and applied. He worked with and was inspired by Dr. Marc Dusseiller - dusjagr labs, the Swiss Mechatronic Art Society, the GynePunk, BioDesign for the Real World, Sci | Art NanoLab Summer Institute at UCLA, LifePatch. He was invited to give workshops or exhibit projects at renown institutions and festivals such as Ars Electronica - Projekt Genesis, ISEA - International Symposium on Electronic Art, DOCK18, space for media cultures of the world, Kapelica Gallery / BioTehna, Schloss Werdenberg, N/O/D/E festival, Medialab-Prado Madrid, CYNETART-Festival - Trans-Media-Akademie. <br />
<br />
http://www.gaudi.ch/GaudiLabs/<br />
<br />
=== Dr. Marc R. Dusseiller aka [[dusjagr]] ===<br />
<br />
Marc Dusseiller aka [[dusjagr]] is a nomadic researcher and workshopologist. He is part of the [http://www.randelab.ch/ Center for Alternative Coconut Research] and co-founder of [http://mechatronicart.ch/ SGMK] and the [http://hackteria.org/ Global Hackteria Network], Co-organiser of [http://openhardware.science/ GOSH, Gathering for Open Science Hardware]. He loves making DIWO laboratories for creative biological experimentation and works in an integral way, combining science, art and education. He has worked as guest faculty and mentor at various schools, Srishti Institute of Art, Design and Technology, Bangalore (IN), UCSB (USA) and in Switzerland, FHNW, HEAD, ETHZ. He lives and works in Zürich, Yogyakarta and Taipei. He also loves [http://8bitmixtape.cc/ synhtesizers and coconuts].<br />
<br />
See more about [[dusjagr]] and [http://www.dusseiller.ch/cv/short_bio_dusseiller17.pdf full biography]<br />
<br />
=== Dr. Christian Gehringer, MSc. (ETH) ===<br />
<br />
ARZT · FORSCHER<br />
<br />
Gründungsmitglied des gemeinnützigen Vereins ”et al° | Vereinigung Wissenschaft, Kultur und Medizin”. Interesse an 3D-Druck, Mikrophotographie, Schwimmen, generative Kunst, Konstruktion von Robotern und Reisen. Teilnahme am 35C3 mit einem selbst konstruierten 3D-Drucker und einem motorisierten Sessel.<br />
<br />
See more about Christian on his website [https://gehringer.li].<br />
<br />
=== Chris Obrist ===<br />
<br />
Chris ist seit 2015 Fabmanager im FabLab Luzern. <br />
<br />
Nach eine Ausbildung zum Werbefachmann hat er den Bachelor in Kunst und Vermittlung der Hochschule Luzern, Design & Kunst gemacht. Als Kunstler hatte er bereit verschiedene Ausstellungen und Live-Performances. <br />
<br />
http://chrisobrist.ch/about/<br />
<br />
== Pflichtlektüre & Videos / Compulsary Readings ==<br />
<br />
'''''Open Culture did not start with the invention of the computer'''''<br />
<br />
''Open Culture is a concept according to which knowledge should be spread freely and its growth should come from developing, altering or enriching already existing works on the basis of sharing and collaboration, without being restricted by rules linked to the legal protection of intellectual property. In a context of globalization, the consequence is that all citizens should have equal access to information.''<br />
<br />
=== FabLab ===<br />
'''Fab Charta'''<br />
<br />
http://fablab-luzern.ch/info/fab-charta-2/#FabCharter<br />
<br />
=== Articles ===<br />
<br />
'''Biotechnology for All / DIY in bioanalytics: doing and grasping it yourself. SATW publication 2015'''<br />
[[File:SATW_article_cover.png|right|thumb|200px]]<br />
<br />
[https://www.hackteria.org/wiki/images/8/87/SATW_INFO_2-15_DIY-Bio_EN.pdf SATW Info 2/15 – Biotechnology for all / DIY in bioanalytics: doing and grasping it yourself]. <br />
<br />
[https://www.hackteria.org/wiki/images/a/ac/SATW_INFO_2-15_DIY-Bio_DE.pdf «Do it yourself» in der Bioanalytik – zum Download auf Deutsch]<br />
<br />
"Biotechnologische Forschung findet heute nicht mehr nur in spezialisierten Labors statt. Eine wachsende Gemeinschaft von Biologen, Bastlern und Technikbegeisterten experimentiert in Küchen, Werkstätten und Eigenbau-Labors. Einige sehen in der Demokratisierung der Biotechnologie eine Gefahr; andere die Chance für ein besseres Verständnis von komplexen wissenschaftlichen Zusammenhängen in der Gesellschaft."<br />
<br />
The article from SATW Info 2/15 – Biotechnology for all / DIY in bioanalytics: doing and grasping it yourself is available for download in German, English and French. The pedagogic conecpt and educational kits were developed during a project funded by the Swiss Academy for Engineering Sciences (SATW), together with hackteria, M. Dusseiller and U. Gaudenz, and FHNW School for Lifesciences, Dr. D. Gygax, during a workshop with an interdisciplinary group of participants. More info [http://hackteria.org/education/satw/ here].<br />
<br />
'''Interview in "The Art of Free and Open Science", MCD#68'''<br />
[[File:MCD_86_hackteria.png|right|thumb|200px]]<br />
<br />
[https://www.hackteria.org/media/interview-in-mcd68/ Mehr zum Artikel und Interview in MCD#68]<br />
<br />
[http://www.hackteria.org/wordpress/wp-content/uploads/2012/10/hackteria_interview_MCD68.pdf Interview zum Download in Englisch]<br />
<br />
Hackteria is a network of people practicing DIY (do-it-yourself) biology with an interest in art, design and interdisciplinary cooperation. The network was founded in 2009 by Yashas Shetty, Andy Gracie and Marc Dusseiller and now includes not only scientists, engineers and artists, as you would expect, but also philosophers, entrepreneurs, and even foodies and chefs. Hackteria operates on a global scale, and is based on a web platform and a wiki for sharing knowledge, which enable anyone to learn but also test different ways of hacking living systems. Hackteria is not based in a physical space, and its goal is to allow artists, scientists and hackers to collaborate and test various biohacking and bioart techniques outside the official laboratories and art institutions, basically anywhere in the world.<br />
<br />
=== Videos ===<br />
<br />
'''How to control someone else's arm with your brain | Greg Gage'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/rSQNi5sAwuc<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
As grad students at the University of Michigan, co-founders Tim and Greg often interacted with schoolchildren during neuroscience outreach events. We often wanted to show real "spiking" activity to students, but this was impossible due to the high cost of equipment. By using off-the-shelf electronics, we designed kits that could provide insight into the inner workings of the nervous system.<br />
<br />
Go and look at their website! [https://backyardbrains.com/ Backyard Brains - Neuroscience For Everyone!]<br />
<br />
'''What is Open Source explained in LEGO'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/a8fHgx9mE5U<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
<br />
'''You can learn Arduino in 15 minutes'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/nL34zDTPkcs<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
The ultimate Arduino tutorial for beginners. Learn how to choose an Arduino, dim LEDs, build a motor speed controller and more. <br />
<br />
'''"Simplicity: We know it when we see it" | George Whitesides'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/GayY-mjZXrQ<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Simplicity: We know it when we see it -- but what is it, exactly? In this funny, philosophical talk, George Whitesides chisels out an answer.<br />
<br />
More about [https://www.ted.com/talks/george_whitesides_a_lab_the_size_of_a_postage_stamp Simplicity, in the specific case of "A lab the size of a postage stamp"]<br />
<br />
'''"Why toys make good medical devices | Jose Gomez-Marquez'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/UHCT9SOBHs0<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
We develop empowerment technologies for health. We believe that innovation and design happens at the frontline of healthcare where providers and patients can invent everyday technologies to improve outcomes. By radically democratizing the tools of medical creation, we seek to enable front line patients and providers to invent answers to disease burdens.<br />
<br />
https://littledevices.org/<br />
<br />
== How to use this wiki ==<br />
<br />
Dear participants, please make sure you prepare your account and get some first experience in using a wiki, in this case it's [https://www.mediawiki.org/wiki/MediaWiki MediaWiki] the same software on which the famous wikipedia has been created. The previous link directs you to many instructions on how to use a wiki. look at it.<br />
<br />
In the roght upper corner you should see a ling to [https://www.hackteria.org/wiki/Special:CreateAccount Create Account]. Make one. You should have received a login by now. Try it out and create a new page for your own project notes, give it a reasonable name and make sure you add the folling line at the end of the page, so it will be sorted all in the same category.<br />
<br />
[[ <code> Category:MedTech-DIY </code> ]]<br />
<br />
<br />
[[Ich Komme Nicht Draus]]<br />
<br />
=== Hallo ===<br />
<br />
Please write a [[few sentences about yourself]], add links to your other websites, blogs, biographies, artworks. <br />
<br />
* try to add images<br />
* "internal links" to other pages on the hackteria wiki<br />
* "external likns" to websites<br />
* embed a youtube video?<br />
<br />
You can always click the "edit" link on this or other pages to see how stuff has been written in the mediawiki language.<br />
<br />
== [[DIY-MedTech Resources]] ==<br />
<br />
[[Medizintechnik DIY Resources]]<br />
<br />
=== Methoden für Break Out / Skill Share Sessions ===<br />
<br />
http://www.hackteria.org/wiki/BreakOut_Methoden<br />
<br />
http://finding-marbles.com/retr-o-mat/was-ist-eine-agile-retrospektive/<br />
<br />
== [[DIY-MedTech Sharing Playground]] ==<br />
<br />
The [[DIY-MedTech Sharing Playground]] is for all of us to put related or not so related info on this wiki. Inspiring videos or articles and projects you want to share with future students.<br />
<br />
=== [[DIY MedTech WishList]] ===<br />
<br />
Put down ideas on [[DIY MedTech WishList]] for future editions of this course. What else would we need? Materials, devicees, infrastructure, people?<br />
<br />
[[File:Feedback_zetteli2019.jpg|400px]]<br />
<br />
== Links ==<br />
<br />
=== Related Courses on this wiki ===<br />
<br />
==== NanoHacking - Interdisciplinary Course at University of Lichtenstein ====<br />
<br />
[[NanoHacking-UNILI]] <br />
<br />
"The innovators of 1600 were hackers before the word existed; they proposed open sharing of ideas for the benefit of humanity. Isaac Newton, Robert Hooke, Descartes, and the other scientists of the late 1600s could not have inaugurated the greatest scientific innovation of all time—the invention of modern science itself—without the Hackers of the 1600s. The Renaissance’s secretive structure was hacked, and it inspired the Scientific Revolution."<br />
<br />
==== From DIY lab tools to field-works ====<br />
<br />
[[LabHacking - From DIY lab tools to field-works, UCSB]]<br />
<br />
==== The Art of BioHacking ====<br />
<br />
[[The Art of BioHacking or How to make Cheese and Wine, HEAD, Geneva]]<br />
<br />
==== DIWO Culture ====<br />
<br />
[[HaSTA]] DIWO Culture : Hacking art/Sci/Tech & Activism<br />
<br />
To engage with the most pressing issues (environment, social injustice, globalisation) of society, artist have embraced new transdisciplinary practices, which combine the use of open source tools (OST) and hacking strategies in a collaborative manner with "others". DIWO (Do It With Others) Culture will introduce such strategies through case studies, hands-on experimentation and team projects to the students. This first edition will focus on OST for environmental monitoring and artistic interpretation.<br />
<br />
=== HSLU Related Institutes ===<br />
<br />
Medizintechnik - Experten an der Schnittstelle von Technik und Medizin<br><br />
https://www.hslu.ch/de-ch/technik-architektur/institute/medizintechnik/<br><br />
<br><br />
Innovation und Technologiemanagement - Gemeinsam überzeugt die Zukunft gestalten<br><br />
https://www.hslu.ch/de-ch/technik-architektur/institute/innovation-und-technologiemanagement/<br><br />
<br><br />
Maschinen- und Energietechnik - Innovationstreiberin an der Schnittstelle der Ingenieursdisziplinen<br><br />
https://www.hslu.ch/de-ch/technik-architektur/institute/maschinen-und-energietechnik/<br><br />
<br><br />
Zukunftslabor CreaLab - Erforscht Möglichkeitsräume, die kreatives Denken und Handeln fördern<br><br />
https://blog.hslu.ch/crealab/<br><br />
<br><br />
<br />
[[Category:MedTech-DIY]]</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=Medizintechnik_DIY_2020&diff=41694Medizintechnik DIY 20202020-02-09T12:17:27Z<p>Tnroth: /* Student Teams */</p>
<hr />
<div><span style="color:#ff0000; font-size:150%">'''Diese Wiki-Seite bitte nur in den einzelnen Paragraphen editieren'''</span><br />
<br />
<div style="float:right" class="toclimit-2">__TOC__</div><br />
<br />
[[File:MedTechDIY_GroupShot.jpg|640px]]<br />
<br />
== Kurzbeschreib ==<br />
<br />
Das Modul verbindet Anwendungen der Medizintechnik mit Do It Yourself (DIY) Ansätzen. Dadurch wird das tiefere Verständnis von Medizintechnischen Geräten durch einen direkten, interdisziplinären und möglichst selbstgesteuerten Zugang gefördert. Basierend auf verschiedenen elektrophysiologischen Messmodulen (EMG, EKG, EOG, EEG) entwickeln die Studierenden im Team Ideen für innovative Projekte. Erste Prototypen werden mit den Mitteln der Digitalen Fabrikation hergestellt und getestet.<br />
<br />
Download Modulbeschrieb HS2019: [[:File:t medizintechnik DIY_HS19.pdf]]<br />
<br />
==== Earlier Editions MedTech DIY ====<br />
<br />
[[Medizintechnik_DIY_2018]]<br />
<br />
[[Medizintechnik_DIY_2019]]<br />
<br />
== Location(s) ==<br />
'''FabLab Horw (Trakt I)'''<br />
<br />
[[File:Location_fablab.jpg|400px]]<br />
<br />
'''Unterrichtsraum E200 (Trakt II) (40 Plätze)''' <br />
<br />
'''Sitzungszimmer D1 (Trakt I) (12 Plätze)'''<br />
<br />
<gallery mode="packed-hover" widths=320px heights=200px><br />
File:Fablab_groundFloor.jpg|Fablab Luzern<br />
File:DIY-MedTech_Fablablab.jpg|WetBioMedLab im Fablab<br />
File:IMG_20180213_165204.jpg|After the 2nd day<br />
File:DIY-MedTech_classroom.jpg|Unterrichtsraum E210<br />
</gallery><br />
<br />
== Schedule ==<br />
<br />
Montag, 3. Februar - Samstag 8. Februar 2020<br />
<br />
Täglich von 8:30 - 12.00 and 13.00 - 16:30 Uhr<br />
<br />
'''Dienstag bis 19:00 Uhr''' Kulturbeitrag und Apèro<br />
<br />
Samstag 09:00 - 14:00 Uhr<br />
<br />
[[File:WeekgridMedTech2020_update.jpg|800px]]<br />
<br />
<br clear=all><br />
<br />
=== Content ===<br />
<br />
'''Preparation:''' <br />
* Read and Reflect<br />
* Prepare for Team Discussion<br />
<br />
'''Learn 0: Introduction'''<br />
* Introduction into DIY and Fablab<br />
* Introduction of Winterschool<br />
* Wiki-Intro<br />
<br />
'''Hack 0: Body-Signals'''<br />
* Lötle<br />
* Experimentiere<br />
<br />
'''Learn 1: Un-conferencing'''<br />
* Skill Share Sessions - See more on [[BreakOut Methoden]]<br />
* Input Lectures on MedTech and DIY Hacking Cultures<br />
<br />
'''Hack 1:'''<br />
* Prototyping<br />
* Experimenting<br />
<br />
'''Hack 2:'''<br />
* Refraining<br />
* Experimenting<br />
* more Prototyping<br />
<br />
'''Share:'''<br />
* Documentation<br />
* Presentation<br />
<br />
'''Post Production:'''<br />
* Final Documentation<br />
<br />
=== Input Lectures ===<br />
<br />
See more about the [[Input Lectures on DIY, MedTech and Hacklabs]] from 2018.<br />
[[File:Berz_steine$.jpg|thumb|120px]]<br />
'''Dienstag, 4. Feb, 17:00 -19:00 Simon Berz - "Sediment" Klangkunst Konzert '''<br />
<br />
Simon Berz (MTR Transdisciplinary Studies in the Arts) <br />
Drummer, sound artist, director of the Badabum music school born on 26 January 1967, Baden (CH)<br />
<br />
His work in experimental and improvised music, in sound art and new forms of performance aims at innovation, interaction and participation. Simon Berz is a drummer and sound artist. He uses improvised music to create bridges between his compositions and performances to visual arts, dance and film. His work takes place in artist-run spaces as well as in clubs, galleries and concert halls. (and fablabs)<br />
<br />
* [http://www.simonberz.ch/index.php?/work/lithophon/ Simon Berz Website]<br />
<br />
[[File:MedTechDIY_Konzert.jpg|400px]]<br />
<br />
'''Donnerstag, 6. Feb, 13:00 - 14:00 Christian Gehringer - '''<br />
<br />
DIY Ansätze in der Biomedizinischen Forschung<br />
<br />
Christian erzählt über seinen beruflichen Werdegang bisher und über 2 Forschungsprojekte, die etwas anders als normal initiiert werden konnten und trotzdem den Weg in die akademisch-wissenschaftliche Welt gefunden haben.<br />
Die Folien findet ihr hier: [[:File:DIY_Ans_tze_in_Biomedizinischer_Forschung___Presentation_MedTech_2020.pdf]]<br />
<br />
[[File:Folien_christian.jpg|400px]]<br />
<br />
'''Greg Gage - Backyard Brains (VideoConf)''' | Part of Un-Conference Skill-share<br />
<br />
Please prepare and give us a few specific questions about our experiences with the Backyard Brains tools / experiments / website. Propose improvements or future experiments that you would like to contribute.<br />
<br />
[[Q & A with Greg - Backyard Brains 2019]]<br />
<br />
[[File:Screenshot_Greg_videocall.png|400px]]<br />
<br />
=== Schlusspräsentationen / Demos Zeitplan ===<br />
<br />
'''Samstag 8. Februar ab 9:00'''<br />
<br />
* 8:30 Fablab is ab 8:30 offen falls ihr noch letzte Vorbereitungen machen wollt.<br />
<br />
Die Präsentationen finden OBEN statt. Wir werden eine kleine Demobühne mit Tisch bereitstellen, den ihr brauchen könnt.<br />
<br />
Es hat Lautsprecher, Beamer, Strom. Schaut ob ihr für eure Demo etwas umstellen müsst oder zusätzliche Technik benötigt.<br />
<br />
Am besten bereitet ihr eure Demos/Protoypen gut vor und haltet sie bereit zum aufstellen. Die ersten 4 Teams sollten alles schon oben haben. Während der Pause können die anderen 4 Teams ihre eigenen noch bereitstellen. Es sollte kein grosses Geläufe mehr geben zwischen den einzelnen Präsentationen. Dazu ist die Pause da.<br />
<br />
====Infos zu dem Format der Präsentationen==== <br />
Dauer pro Team, '''15 Minuten''', inkl 1-2 Minuten Fragen und Feedback der Studierenden. <br />
<br />
Gestaltet den Tag unterhaltsam und authentisch, dH euer "Publikum" sind die anderen Studierenden. Gerne wollen sie erfahren was ihr gemacht habt, was euch inspiriert und auf die Ideen für eure Prototypen gebracht hat. Stellt euch und euer Team vor. Reflektiert über den Prozess wie ihr gemeinsam gearbeitet habt. Sprecht über offene Fragen / Probleme und wie ihr weitermachen würdet.<br />
<br />
Schaut dass ihr die knappen 15 Minuten mit Filmen, guten Photos und Demos vielfältig gestaltet. Generell ist es unterhaltsamer, wenn verschiedene Leute aus dem Team unterschiedliche Phasen der Präsentation übernehmen , aber die Aufteilung müsst ihr selbst im Team<br />
abmachen. Sprecht euch gut ab, damit der Fluss / rote Faden übereinstimmt.<br />
<br />
==== Zeitablauf Samstag 8. Feb ====<br />
<br />
* Es hat Gipfeli und Snacks für alle!!<br />
<br />
'''Opening'''<br />
<br />
* 9.00 Willkommen und Besprechung Ablauf<br />
<br />
'''Präsentationen / Demos'''<br />
<br />
* 9:15 Team B: [[Bananas In Pajamas]]<br />
* 9:30 Team G: [[Team G2020]]<br />
* 9:45 Team D: [[Die Profis]]<br />
* 10:00 Team F: [[Team Frosch]]<br />
<br />
'''15 min Pause'''<br />
<br />
* 10:30 Team A: [[Another Team]]<br />
* 10:45 Team H: [[Team HustlerzZ]]<br />
* 11:00 Team E: [[Team Eehhh]]<br />
* 11:15 Team C: [[Team Corona]]<br />
<br />
'''30 min Pause'''<br />
<br />
* 12:00 Reflektion / Feeback Runde<br />
* 12:30 Abschluss<br />
* 12:45 Aufräumen<br />
* 13:00 Good-bye<br />
<br />
== Skill Share Sessions ==<br />
<br />
''Was ist eine Skill Share Session?''<br />
<br />
[[File:SkillShare_Schedule2020.jpeg|thumb|240px]]<br />
<br />
Wird im Rahmen der Einleitung im Detail erklärt. Hier ein paar Beispiele vom Kurs im Winter 2018.<br />
<br />
http://www.hackteria.org/wiki/BreakOut_Methoden<br />
<br />
{|<br />
|9:00||Photshop/GIMP<br/>E200?||Bildgebende Verfahren<br/>Mensa?||Arduino A<br/>FabLab<br />
|-<br />
|10:00||Synths&Soundzz<br/>Fablab Sofa Ecke||Medizin-Crashkurs<br/>E200?||Elektrotechnik<br/>FabLab1.Stock<br />
|-<br />
|11:00||Arduino B<br/>FabLab||Jassen und Gumpen<br/>Elephant||Einfache Diagnostik und Body-Hacking<br/>E200<br />
|-<br />
|1:00||Zmittag Pause<br />
|-<br />
|13:00||Schweissen<br/>Fablab||....||Zombie Apolalypse<br/>E200<br />
|}<br />
<br />
=== Skillshares ===<br />
<br />
==== [[Autonomes Nervensystem und das Hören in der Medizin]] Christian==== <br />
<br />
==== [[Another Team#Skillshare ARDUINO TUTORIAL]] ====<br />
<br />
==== [[DIY-MedTech Bildgebende Verfahren-Unterschiedliche Bildeindrücke - Team Frosch]] ====<br />
<br />
==== [[DIY-MedTech Synths&Soundzz - dusjagr]] ====<br />
<br />
==== [[Team Eehhh#Skillshare- Photoshop]] ====<br />
<br />
==== [[DIY-MedTech Skillshare - Zombie Apokalypse - Greg Gage]] ====<br />
<br />
====[[Team G2020-Schweissen]]====<br />
<br />
====[[Team HustlerzZ Medizin-Crashkurs]]====<br />
<br />
====[[Bananas In Pajamas ELektrotechnik Crash Kurs]]====<br />
<br />
== Student Teams ==<br />
<br />
===[[Another Team]]===<br />
<br />
===[[Bananas In Pajamas]]===<br />
<br />
=== [[Team Corona]] ===<br />
<br />
=== [[Die Profis]] ===<br />
<br />
Die Profis bauten im Rahmen dieser Blockwoche eine Baseball-Cap mit Ventilator, eine Spritzenpumpe und gossen Zinn. Als Skill Share Session wurde ein Aruduino Grundkurs angeboten.<br />
<br />
=== [[Team Eehhh]]===<br />
<br />
=== [[Team Frosch]]===<br />
<br />
=== [[Team G2020]] ===<br />
<br />
=== [[Team HustlerzZ]]===<br />
<br />
Die "HustlerzZ" wurden im Rahmen der [[MedTech-DIY]]-Blockwoche gegründet und bestehen aus den Mitgliedern Thomas Binggeli, Robin Durrer, Manuel Omlin und Marco Schöni<br /><br />
<br />
==== Zusammenfassung und Reflektion ====<br />
Die Blockwoche MedTech-DIY hat uns sehr gut gefallen. Zu Anfang hatten wir ein bisschen Mühe mit dem DIY Gedanken. Selbstständiges Arbeiten sind wir uns gewohnt, nicht aber dass keine klare Aufgabenstellung gegeben ist. Wir haben etwas Zeit gebraucht bis wir einfach drauf los experimentiert haben. Es ist erstaunlich wie ohne spezifisches Wissen so schnell ein Experiment ensteht und ein Prototyp hergestellt werden kann. Ein Problem war, dass wir zu wenig Skills in der Elektrotechnik und dem Programmieren vom Arduino hatten. Bei der Spannungsversorung und dem verkabeln sind wir schon bald an unsere Grenzen gestossen. Falls ein Arduino Programm nicht direkt von der Bibliothek bezogen werden konnte, haben wir sehr viel Zeit gebraucht bis es einwandfrei funktionierte. In solche Situationen haben wir die Hilfe anderer Studenten in Anspruch genommen, die ihre Skills mit uns geteilt haben. Zum Schluss haben wir uns ein Eishockeyspiel ausgedacht und einen Prototypen aufgebaut.<br /><br />
Die Blockwoche hat sich definitiv gelohnt. Nur schon die Abwechslung der Struktur zum restlichen Studium ist erholsam. Wir danken herzlich für die Organisation dieser Blockwoche und die gute Unterhaltung.<br />
<br />
==== Prototypen ====<br />
<br />
<gallery <gallery mode="packed-hover" widths=400px heights=300px><br />
Greifarmhustlerzz.jpeg|Greifarm<br />
DisplaySpieler.jpeg|Display<br />
PrototypEishockeyfeld.jpeg|Eishockeyfeld<br />
</gallery><br />
<br />
Skill Share Session: [[Team HustlerzZ Medizin-Crashkurs]]<br />
<br />
=== Beispiele aus alten Jahrgängen: ===<br />
<br />
==== Beispiel für Zusammenfassung auf Frontseite ====<br />
<br />
* In einem ersten Abschnitt soll jedes Team in eingen wenigen Sätzen ihre '''Zusammenfassung und Reflektion''' beschreiben. <br />
* Zusätzlich einen wiki-link zu ihrem Skill-share einfügen, und evt in einem Satz beschreiben. <br />
* Im zweiten Abschnitt ein Überblick über die '''Prototypen''' der verschiedenen Projekten als Fotogallerie und 1-2 Sätze dazu.<br />
<br />
[[File:Doku_Beispiel_Zusammenfassung.jpg|800px]]<br />
<br />
==== [[Team GUSTAV]] ====<br />
<br />
==== [[Team 2020 Mentorzz]] ====<br />
<br />
== Testat ==<br />
<br />
=== Teilnahme ===<br />
* Pflichtlektüren gelesen<br />
* Aktive Teilnahme an allen Tagen der Blockwoche<br />
<br />
=== Leistungsnachweis ===<br />
<br />
'''Wiki-Seite pro Gruppe (70%) mit:'''<br />
* Reflektion zu Readings / Input Vorlesungen<br />
* Dokumentation der Experimente während der Woche<br />
(Experimente, Resultate, Erkenntnisse, Links/Resourcen, Bilder)<br />
* Dokumentation des Skill-Share Session<br />
(Vorbereitung, Durchführung, Erfahrungen, Links, Resourcen)<br />
<br />
'''Schlusspräsentation in der Gruppe am Samstag (30%)'''<br />
<br />
'''Abgabetermin Wiki-Seiten: Sonntag 1. März 2020, 23:59'''<br />
<br />
== Mentors ==<br />
<br />
=== Urs Gaudenz aka [[Gaudi]] ===<br />
<br />
Urs Gaudenz is an engineer and interdisciplinary scholar working in Lucerne, Switzerland. He was born 1971 in Seattle USA. He got his master in science of Microtechnologoy from the Swiss Federal Institute of Technology, Lausanne. Subsequent to that he attended Post-Graduate programs in international business and innovation-management. In 2016 completed the course of study in the Principles and Applications of Synthetic Biology as directed by Georg Curch, Professor of Genetics at Hardward Medical School. He is founder of GaudiLabs, a third space for third culture. He is a founding member and member of the board of Hackteria International Society. He is currently on the faculty of the Lucerne School for Applied Science and Arts. In his professional practice, Urs Gaudenz makes use of various forms of work and expression such as prototype development, open scientific research and collaborative workshops. He is combining his different backgrounds to explore new technological and cultural fields and his works often emerges out of the void in this intersection. Remarkable in his work is the wide span from speculative and futuristic to very functional and applied. He worked with and was inspired by Dr. Marc Dusseiller - dusjagr labs, the Swiss Mechatronic Art Society, the GynePunk, BioDesign for the Real World, Sci | Art NanoLab Summer Institute at UCLA, LifePatch. He was invited to give workshops or exhibit projects at renown institutions and festivals such as Ars Electronica - Projekt Genesis, ISEA - International Symposium on Electronic Art, DOCK18, space for media cultures of the world, Kapelica Gallery / BioTehna, Schloss Werdenberg, N/O/D/E festival, Medialab-Prado Madrid, CYNETART-Festival - Trans-Media-Akademie. <br />
<br />
http://www.gaudi.ch/GaudiLabs/<br />
<br />
=== Dr. Marc R. Dusseiller aka [[dusjagr]] ===<br />
<br />
Marc Dusseiller aka [[dusjagr]] is a nomadic researcher and workshopologist. He is part of the [http://www.randelab.ch/ Center for Alternative Coconut Research] and co-founder of [http://mechatronicart.ch/ SGMK] and the [http://hackteria.org/ Global Hackteria Network], Co-organiser of [http://openhardware.science/ GOSH, Gathering for Open Science Hardware]. He loves making DIWO laboratories for creative biological experimentation and works in an integral way, combining science, art and education. He has worked as guest faculty and mentor at various schools, Srishti Institute of Art, Design and Technology, Bangalore (IN), UCSB (USA) and in Switzerland, FHNW, HEAD, ETHZ. He lives and works in Zürich, Yogyakarta and Taipei. He also loves [http://8bitmixtape.cc/ synhtesizers and coconuts].<br />
<br />
See more about [[dusjagr]] and [http://www.dusseiller.ch/cv/short_bio_dusseiller17.pdf full biography]<br />
<br />
=== Dr. Christian Gehringer, MSc. (ETH) ===<br />
<br />
ARZT · FORSCHER<br />
<br />
Gründungsmitglied des gemeinnützigen Vereins ”et al° | Vereinigung Wissenschaft, Kultur und Medizin”. Interesse an 3D-Druck, Mikrophotographie, Schwimmen, generative Kunst, Konstruktion von Robotern und Reisen. Teilnahme am 35C3 mit einem selbst konstruierten 3D-Drucker und einem motorisierten Sessel.<br />
<br />
See more about Christian on his website [https://gehringer.li].<br />
<br />
=== Chris Obrist ===<br />
<br />
Chris ist seit 2015 Fabmanager im FabLab Luzern. <br />
<br />
Nach eine Ausbildung zum Werbefachmann hat er den Bachelor in Kunst und Vermittlung der Hochschule Luzern, Design & Kunst gemacht. Als Kunstler hatte er bereit verschiedene Ausstellungen und Live-Performances. <br />
<br />
http://chrisobrist.ch/about/<br />
<br />
== Pflichtlektüre & Videos / Compulsary Readings ==<br />
<br />
'''''Open Culture did not start with the invention of the computer'''''<br />
<br />
''Open Culture is a concept according to which knowledge should be spread freely and its growth should come from developing, altering or enriching already existing works on the basis of sharing and collaboration, without being restricted by rules linked to the legal protection of intellectual property. In a context of globalization, the consequence is that all citizens should have equal access to information.''<br />
<br />
=== FabLab ===<br />
'''Fab Charta'''<br />
<br />
http://fablab-luzern.ch/info/fab-charta-2/#FabCharter<br />
<br />
=== Articles ===<br />
<br />
'''Biotechnology for All / DIY in bioanalytics: doing and grasping it yourself. SATW publication 2015'''<br />
[[File:SATW_article_cover.png|right|thumb|200px]]<br />
<br />
[https://www.hackteria.org/wiki/images/8/87/SATW_INFO_2-15_DIY-Bio_EN.pdf SATW Info 2/15 – Biotechnology for all / DIY in bioanalytics: doing and grasping it yourself]. <br />
<br />
[https://www.hackteria.org/wiki/images/a/ac/SATW_INFO_2-15_DIY-Bio_DE.pdf «Do it yourself» in der Bioanalytik – zum Download auf Deutsch]<br />
<br />
"Biotechnologische Forschung findet heute nicht mehr nur in spezialisierten Labors statt. Eine wachsende Gemeinschaft von Biologen, Bastlern und Technikbegeisterten experimentiert in Küchen, Werkstätten und Eigenbau-Labors. Einige sehen in der Demokratisierung der Biotechnologie eine Gefahr; andere die Chance für ein besseres Verständnis von komplexen wissenschaftlichen Zusammenhängen in der Gesellschaft."<br />
<br />
The article from SATW Info 2/15 – Biotechnology for all / DIY in bioanalytics: doing and grasping it yourself is available for download in German, English and French. The pedagogic conecpt and educational kits were developed during a project funded by the Swiss Academy for Engineering Sciences (SATW), together with hackteria, M. Dusseiller and U. Gaudenz, and FHNW School for Lifesciences, Dr. D. Gygax, during a workshop with an interdisciplinary group of participants. More info [http://hackteria.org/education/satw/ here].<br />
<br />
'''Interview in "The Art of Free and Open Science", MCD#68'''<br />
[[File:MCD_86_hackteria.png|right|thumb|200px]]<br />
<br />
[https://www.hackteria.org/media/interview-in-mcd68/ Mehr zum Artikel und Interview in MCD#68]<br />
<br />
[http://www.hackteria.org/wordpress/wp-content/uploads/2012/10/hackteria_interview_MCD68.pdf Interview zum Download in Englisch]<br />
<br />
Hackteria is a network of people practicing DIY (do-it-yourself) biology with an interest in art, design and interdisciplinary cooperation. The network was founded in 2009 by Yashas Shetty, Andy Gracie and Marc Dusseiller and now includes not only scientists, engineers and artists, as you would expect, but also philosophers, entrepreneurs, and even foodies and chefs. Hackteria operates on a global scale, and is based on a web platform and a wiki for sharing knowledge, which enable anyone to learn but also test different ways of hacking living systems. Hackteria is not based in a physical space, and its goal is to allow artists, scientists and hackers to collaborate and test various biohacking and bioart techniques outside the official laboratories and art institutions, basically anywhere in the world.<br />
<br />
=== Videos ===<br />
<br />
'''How to control someone else's arm with your brain | Greg Gage'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/rSQNi5sAwuc<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
As grad students at the University of Michigan, co-founders Tim and Greg often interacted with schoolchildren during neuroscience outreach events. We often wanted to show real "spiking" activity to students, but this was impossible due to the high cost of equipment. By using off-the-shelf electronics, we designed kits that could provide insight into the inner workings of the nervous system.<br />
<br />
Go and look at their website! [https://backyardbrains.com/ Backyard Brains - Neuroscience For Everyone!]<br />
<br />
'''What is Open Source explained in LEGO'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/a8fHgx9mE5U<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
<br />
'''You can learn Arduino in 15 minutes'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/nL34zDTPkcs<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
The ultimate Arduino tutorial for beginners. Learn how to choose an Arduino, dim LEDs, build a motor speed controller and more. <br />
<br />
'''"Simplicity: We know it when we see it" | George Whitesides'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/GayY-mjZXrQ<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Simplicity: We know it when we see it -- but what is it, exactly? In this funny, philosophical talk, George Whitesides chisels out an answer.<br />
<br />
More about [https://www.ted.com/talks/george_whitesides_a_lab_the_size_of_a_postage_stamp Simplicity, in the specific case of "A lab the size of a postage stamp"]<br />
<br />
'''"Why toys make good medical devices | Jose Gomez-Marquez'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/UHCT9SOBHs0<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
We develop empowerment technologies for health. We believe that innovation and design happens at the frontline of healthcare where providers and patients can invent everyday technologies to improve outcomes. By radically democratizing the tools of medical creation, we seek to enable front line patients and providers to invent answers to disease burdens.<br />
<br />
https://littledevices.org/<br />
<br />
== How to use this wiki ==<br />
<br />
Dear participants, please make sure you prepare your account and get some first experience in using a wiki, in this case it's [https://www.mediawiki.org/wiki/MediaWiki MediaWiki] the same software on which the famous wikipedia has been created. The previous link directs you to many instructions on how to use a wiki. look at it.<br />
<br />
In the roght upper corner you should see a ling to [https://www.hackteria.org/wiki/Special:CreateAccount Create Account]. Make one. You should have received a login by now. Try it out and create a new page for your own project notes, give it a reasonable name and make sure you add the folling line at the end of the page, so it will be sorted all in the same category.<br />
<br />
[[ <code> Category:MedTech-DIY </code> ]]<br />
<br />
<br />
[[Ich Komme Nicht Draus]]<br />
<br />
=== Hallo ===<br />
<br />
Please write a [[few sentences about yourself]], add links to your other websites, blogs, biographies, artworks. <br />
<br />
* try to add images<br />
* "internal links" to other pages on the hackteria wiki<br />
* "external likns" to websites<br />
* embed a youtube video?<br />
<br />
You can always click the "edit" link on this or other pages to see how stuff has been written in the mediawiki language.<br />
<br />
== [[DIY-MedTech Resources]] ==<br />
<br />
[[Medizintechnik DIY Resources]]<br />
<br />
=== Methoden für Break Out / Skill Share Sessions ===<br />
<br />
http://www.hackteria.org/wiki/BreakOut_Methoden<br />
<br />
http://finding-marbles.com/retr-o-mat/was-ist-eine-agile-retrospektive/<br />
<br />
== [[DIY-MedTech Sharing Playground]] ==<br />
<br />
The [[DIY-MedTech Sharing Playground]] is for all of us to put related or not so related info on this wiki. Inspiring videos or articles and projects you want to share with future students.<br />
<br />
=== [[DIY MedTech WishList]] ===<br />
<br />
Put down ideas on [[DIY MedTech WishList]] for future editions of this course. What else would we need? Materials, devicees, infrastructure, people?<br />
<br />
[[File:Feedback_zetteli2019.jpg|400px]]<br />
<br />
== Links ==<br />
<br />
=== Related Courses on this wiki ===<br />
<br />
==== NanoHacking - Interdisciplinary Course at University of Lichtenstein ====<br />
<br />
[[NanoHacking-UNILI]] <br />
<br />
"The innovators of 1600 were hackers before the word existed; they proposed open sharing of ideas for the benefit of humanity. Isaac Newton, Robert Hooke, Descartes, and the other scientists of the late 1600s could not have inaugurated the greatest scientific innovation of all time—the invention of modern science itself—without the Hackers of the 1600s. The Renaissance’s secretive structure was hacked, and it inspired the Scientific Revolution."<br />
<br />
==== From DIY lab tools to field-works ====<br />
<br />
[[LabHacking - From DIY lab tools to field-works, UCSB]]<br />
<br />
==== The Art of BioHacking ====<br />
<br />
[[The Art of BioHacking or How to make Cheese and Wine, HEAD, Geneva]]<br />
<br />
==== DIWO Culture ====<br />
<br />
[[HaSTA]] DIWO Culture : Hacking art/Sci/Tech & Activism<br />
<br />
To engage with the most pressing issues (environment, social injustice, globalisation) of society, artist have embraced new transdisciplinary practices, which combine the use of open source tools (OST) and hacking strategies in a collaborative manner with "others". DIWO (Do It With Others) Culture will introduce such strategies through case studies, hands-on experimentation and team projects to the students. This first edition will focus on OST for environmental monitoring and artistic interpretation.<br />
<br />
=== HSLU Related Institutes ===<br />
<br />
Medizintechnik - Experten an der Schnittstelle von Technik und Medizin<br><br />
https://www.hslu.ch/de-ch/technik-architektur/institute/medizintechnik/<br><br />
<br><br />
Innovation und Technologiemanagement - Gemeinsam überzeugt die Zukunft gestalten<br><br />
https://www.hslu.ch/de-ch/technik-architektur/institute/innovation-und-technologiemanagement/<br><br />
<br><br />
Maschinen- und Energietechnik - Innovationstreiberin an der Schnittstelle der Ingenieursdisziplinen<br><br />
https://www.hslu.ch/de-ch/technik-architektur/institute/maschinen-und-energietechnik/<br><br />
<br><br />
Zukunftslabor CreaLab - Erforscht Möglichkeitsräume, die kreatives Denken und Handeln fördern<br><br />
https://blog.hslu.ch/crealab/<br><br />
<br><br />
<br />
[[Category:MedTech-DIY]]</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=MedTechDIY20_Die_Profis&diff=41693MedTechDIY20 Die Profis2020-02-09T12:13:55Z<p>Tnroth: /* Versuch 2 */</p>
<hr />
<div>Hier gehts zurück auf: [[Medizintechnik DIY]]<br />
<br />
[[File:DieProfis.png|700px|right|none|Wochenplan]]<br />
<br />
= Team =<br />
<br />
'''Die Profis''' besteht aus den drei Studierenden '''Daniel Glur''', '''Lukas Roth''' und '''Daniel Zellweger''' der Hochschule Luzern. Im Rahmen der Blockwoche "DIY Medizintechnik" formierte sich das Team aus verschiedenen Studiengängen um auch interdisziplinär voneinander zu lernen und Wissen auszutauschen.<br />
<br />
'''Mitglieder:'''<br />
<br />
Maschinentechnik: <gallery><br />
File:DanielGlur.jpg | Daniel Glur<br />
File:LukasRoth.jpg | Lukas Roth<br />
</gallery><br />
<br />
Medizintechnik: <gallery><br />
File:DanielZellweger.jpg | Daniel Zellweger<br />
</gallery><br />
<br />
= Pflichtlektüre =<br />
<br />
'''How to control someone else's arm with your brain | Greg Gage'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/rSQNi5sAwuc<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
In Diesem Video wird gezeigt wie man über die Aufnahme eines Biologischen Signals, dieses an eine zweite Person weitergeleitet werden kann.<br />
Dies funktioniert jedoch nur aus verschiedenen Gründen bedingt. Nebst den allgemeinen Störeinflüsse aus der Messtechnik, kommen zusätzlich noch jene der Ansteuerung. Da das Signal nur von einzelnen Muskelfasern abgefangen wird, kann dieses nicht sämtliche Muskelfasern der zweiten Person Reizen. Dies hat zur folge, dass nur eine annähernd ähnliche Bewegung des Armes arfolgt.<br />
<br />
<br />
'''What is Open Source explained in LEGO'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/a8fHgx9mE5U<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Durch die Verwendung der Open Source Methode erhält man die Möglichkeit während des Projektes noch Erweiterungen oder Veränderungen anzustreben.<br />
<br />
'''"Why toys make good medical devices | Jose Gomez-Marquez'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/UHCT9SOBHs0<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Nebst dem Preis besitzen Spielzeuge diverse spezifische Funktionen. Da diese meist günstige Anschaffung auch einfach verändert werden kann, sind sie sehr geeignet dafür umgebaut zu werden. Somit sind Spielzeuge welche chemische oder sensorische Funktionen besitzen ein gefundenes fressen für den Hacker und eine Alternative für Regionen in welchen die finanzielle Situation teure Medizinprodukte nicht erlauben.<br />
<br />
= Einleitung =<br />
Die Blockwoche "DIY Medizintechnik" verbindet Anwendungen der Medizintechnik mit Do It Yourself (DIY) Ansätzen. Dadurch wird das tiefere Verständnis von Medizintechnischen Geräten durch einen direkten, interdisziplinären und möglichst selbstgesteuerten Zugang gefördert. Basierend auf verschiedenen elektrophysiologischen Messmodulen (EMG, EKG, EOG, EEG) entwickeln die Studierenden im Team Ideen für innovative Projekte. Erste Prototypen werden mit den Mitteln der Digitalen Fabrikation hergestellt und getestet. Tag für Tag stehen produktive "Hacks" auf dem Programm. Hacks sind sehr praxisbezogene Arbeitssequenzen wo die Studierenden Experimente durchführen sowie Prototypen entwickeln und bauen können. Dabei ist aber nicht nur die Medizintechnik zentral sondern auch der Interdisziplinäre Austausch sowie eine Skill-Share-Session wo die Studierenden ganz nach dem do it yourself Gedanken einen eigenen Workshop leiten können.<br />
Alle Erkenntnisse und Erfahrungen werden laufend in einem eigenen Wiki-Eintrag festgehalten und dokumentiert.<br />
<br />
Die Blockwoche wird von den beiden Dozenten [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] und [https://www.hackteria.org/wiki/Gaudi/ Urs Gaudenz] duchgeführt. Unterstützt wurden die Beiden von '''Dr. Christian Gehringer, MSc. (ETH)''' und [http://chrisobrist.ch/about// Chris Obrist]<br />
<br />
Maschinentechnik: <gallery><br />
File:MarkDusseiller.jpg | Dr. Marc R. Dusseiller<br />
File:UrsGaudenz.jpg | Urs Gaudenz<br />
</gallery><br />
<br />
= Planung =<br />
<br />
Die Blockwoche wird wie in folgendem Wochenplan unterteilt:<br />
<br />
[[File:Wochenplan2020.jpg|700px|thumb|none|Wochenplan]]<br />
<br />
= Wochenrückblick =<br />
== Die Woche in Bilder==<br />
[[File:ProfisInAction.PNG|400px]]<br />
[[File:Komponente.PNG|300px]]<br />
[[File:Aufbau.PNG|400px]]<br />
[[File:Motor_mit_Adapter.jpg|300px]]<br />
[[File:Pumpe.PNG|350px]]<br />
[[File:pulsmessung.jpg|450px]]<br />
[[File:Zusammenbau2.jpg|300px]]<br />
[[File:Foto 07.02.20, 11 14 53.jpg|300px]]<br />
[[File:DanielZellweger.jpg|300px]]<br />
<br />
== Tag 1==<br />
'''Einführung'''<br />
<br />
Wir traffen uns zu beginn im FABLAB, wo sich die Dozenten vorstellten und uns über Ihren bisherigen Werdegang informierten. Das interessante an der beruflichen Laufbahn der beiden ist, dass beide ein Studium abgeschlossen haben und heute einer Tätigkeit nachgehen, welche eigentlich nicht mehr viel mit dem damaligen Studium zu tun hat. Das vermittelt unserer Meinung nach, den Studenten eine etwas andere Sichtweise als die technische Hochschule. Es zeigt z.B. dass man nach einem Studium nicht gezwungen ist auf diesem Fachgebiet zu arbeiten sondern dass der Arbeitsmarkt noch sehr viele andere Möglichkeiten zu bieten hat.<br />
<br />
Nachdem sie sich Vorgestellt haben, stellten sie uns auch noch den Assistent vor. Dieser ist ein ausgebildeter Arzt welcher sich momentan für seinen zweiten Doktortitel engagiert. Von Ihm und seinem grossen medizinischen Fachwissen können wir als Studenten die ganze Woche profitieren.<br />
<br />
Danach überliessen die Dozenten uns Studenten das Wort. Es war eine etwas andere Vorstellungsrunde wie man sie noch nicht kannte. Dazu stand uns ein ganzer Tisch mit kuriosen Gegenständen, welche etwas mit dem DIY Gedanke zu tun haben, zur verfügung. Sie vorderten uns alle auf einen Gegenstand auszuwählen. Danach mussten wir uns Vorstellen und noch ein paar Worte dazu verlieren welche Gemeinsamkeiten wir mit dem ausgesuchten Gegenstand teilen.<br />
<br />
'''DIY (Do It Yourself)'''<br />
<br />
Das DIY Prinzip basiert auf eigenem experimentieren und learning by doing<br />
<br />
{{#widget:Iframe<br />
|url= https://www.youtube.com/watch?v=3zH_J12G9sQ<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
<br />
'''How to use Wiki'''<br />
<br />
Durch die 45 minütige Einführung in die Handhabung das Wiki durch Dr. Marc R. Dusseiller waren wir bereit unsere Erkenntnisse und Projekte, welche wir in dieser Woche erfahren und durchführen werden, in einer Zugänglichen Form, niederzuschreiben.<br />
<br />
== Tag 2 ==<br />
Am zweiten Tag begannen wir die Vorbereitung Skill-Share-Session. Diesbezüglich sollte jeder Teilnehmer einen Skill, welcher er erlernen möchte und einen Skill, den man beibringen könnte notieren. Diese wurden dann auf einer Tafel in Cluster aufgeteilt. Zwölf davon wurden als Skill-Share Workshops ausgewählt und die Teilnehmer konnten sich nach Belieben einschreiben.<br />
<br />
[[File:SkillSession2020.jpg|500px|thumb|none|Skill-share-session]]<br />
<br />
Während des zweiten Teils arbeiteten wir an unserem Experiment weiter, welches wir am Vortag begonnen haben.<br />
Dazu mussten wir die elektronischen Bauteile mit unserem Laptop verbinden und einen vorgefertigten Sketch laufen lassen.<br />
<br />
Nachdem wir den ersten Versuch erfolgreich durchführen konnten, versuchten wir mit dem Arduino einen Stepmotor anzusteuern. Dabei stiessen wir jedoch auf einige Schwierigkeiten. Da wir diese bis zur Einführung des Lasercutters und des 3D-Druckers fertig haben sollten. Siehe [[#Hack 0]]<br />
<br />
Unteranderem wurde unsere Skill-Share-Session über Arduino vorbereitet.<br />
<br />
Am Abend kam [http://chrisobrist.ch/about// Chris Obrist] zu Besuch und unterhielt uns mit einer wundervollen musikalischen Darbietung.<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/Hj1Ogr8137o<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
== Tag 3 ==<br />
Von 9:00 Uhr bis nach dem Mittag um 14:00 Uhr waren wir alle mit der [[#Skill-Share-Session]] beschäftigt.<br />
<br />
Danach hatten wir Zeit um den nächsten Hack vorzubereiten und zu planen.<br />
<br />
== Tag 4 ==<br />
Den Vormittag verbrachten wir weiter mit dem Hack 1, welchen wir dann vor der Mittagspause den Dozenten und allen Mitstudierenden präsentieren durften. Leider litten wir während des ganzen Hack 1 sehr unter Zeitdruck, was auf eine turbulente Projektphase zurückzuführen ist. Mehr dazu erfährst du im [[#Hack 1]].<br />
<br />
Nach einer kurzen Inspirationphase entschieden wir uns dafür eine kleine Spritzenpumpe zu basteln. [[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 5 ==<br />
Am Tag 5 ging es darum die Einzelteile physikalisch sowie über ein Funktionierendes Arduinoprogamm zum laufen zu bringen.<br />
[[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 6 ==<br />
Zum Abschluss durften wir alle Hacks der verschiedenen Teams begutachten. Interessant waren die spontanen Vorgehensweisen und auch die daraus entstandenen Produkte. Viele Teams suchten zuerst das Material und erst danach die Ideen. So entstanden die unterschiedlichsten Prototypen.<br />
Zudem Reflektierten wird die Blockwoche. Im Allgemeinen gefielen die Freiheit und auch der unkomplizierte Teamgeist untereinander. Besten Dank auch an die Organisatoren der Blockwoche.<br />
<br />
= Experimente =<br />
Bei den Experimenten sollte es darum gehen aus unterschiedlichsten Einzelteilen ein Produkt zu erschaffen. Dieser Prozess brachte uns dazu über die Grenzen unseres altäglichem Denken zu springen und in der Verbindung der einzelnen Bereiche solcher Produkte besser zu verstehen.<br />
<br />
== Hack 0 ==<br />
<br />
<br />
===Versuchsaufbau 1===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 1===<br />
Nach den Inputs der Dozenten verbrachten wir hauptsächlich die Zeit damit den Muscle Spiker Shield nach der Anleitung mit den dazugehörigen Teilen zusammenzulöten.[https://backyardbrains.com/products/files/MuscleSpikerShield.v.2.11.BuildingInstructions.pdf]V2.11<br />
Nebenbei machten wir unsere ersten Schritte in Arduino.<br />
Als wir unsere mechatronischen Komponenten zusammengestellt und ein Grundverständnis von Arduino angeeignet haben, verbanden wir dies in einem Experiment. <br />
Das Experiment welches wir durchführten nennt man Control Machines with your Brain und ist auf der Seite von [https://backyardbrains.com/experiments/muscleSpikerShield/ Backyard Brains] nachzusehen.<br />
<br />
Für den Versuch wurden Elektroden an den Testpersonen angeschlossen und über den Arduino ausgelesen.<br />
Der Versuch wurde mit zwei Testpersonen durchgeführt. Dabei fiel uns nebst der Kontrolle der LED's auch auf, dass der Puls gemessen wurde. Dies unabhängig von der Position der Elektroden. Vermutlich reagieren die Elektroden zu sensitiv für diese Anwendung.<br />
<br />
<br />
[[File:UeberblickVersuchTeamD.jpg|400px|thumb|none|Versuchsaufbau]]<br />
[[File:Versuchsaufbau1TeamD.jpg|400px|thumb|none|Elektrodenbefestigung]]<br />
[[File:MessungDanielGlur.jpg|400px|thumb|none|Messung von Daniels Puls]]<br />
<br />
===Versuchsaufbau 2===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 2===<br />
<br />
Als zweites Experiment versuchten wir durch das anspannen der Muskeln einen Servomotor anzusteuern. Wie es auch auf der Homepage von [https://backyardbrains.com/experiments/MuscleSpikerShield_GripperHand/ Backyard Brains] anzutreffen ist. Dieser Versuch konnte aber leider aus Zeitgründen nicht zu Ende geführt werden. Wir konnten lediglich das Arduinoprogramm laden und etwas anpassen.<br />
<br />
===Reflexion===<br />
<br />
Der Hack 0 war in der Hinsicht sehr interessant, da wir alle unsere ersten Erfahrungen mit einem Arduino machen konnten. Einige von unserem Team hatten bisher auch noch nie auf einer Printplatte irgendwelche Widerstände oder Schalter etc. gelötet. Ebenso war es erstaunlich, dass man mit so wenig so viel verschiedene Sachen machen kann. Keiner von uns hat gedacht dass wir bereits am ersten Tag irgend etwas mit unseren Muskeln kontrollieren könnten. Insgesamt kam der Hack 0 gut bei uns an und wir alle konnten einiges davon profitieren und hoffentlich auch den weiteren Hacks weiterverwenden.<br />
<br />
== Hack 1: Baseball-Cap mit Ventilator ==<br />
<br />
Der Hack 1 beschreibt die Konzept- und Testphase des ersten Prototyps.<br />
<br />
Zu Beginn waren wir uns sehr unschlüssig was wir wirklich bauen wollen. Also entschieden wir uns für ein weiteres Experiment mit einem Bausatz von Backyard Brains. Wir versuchten durch die Funktion des Heart and Brain Spiker Shield einen Ventilator anzusteuern. Der Gedanke, welcher uns auf diese Idee führte, kennt wohl jeder Student. Während einer Prüfung kommt so mancher ins Grübeln und in harten Fällen kommt es auch vor dass einem eine Schweissperle von der Stirn läuft. Um in solchen Fällen für die nötige Kühlung zu sorgen, sollen Sensoren die Hirnströme gemessen und als Signal wiedergeben werden um damit einen Ventilator anzuschalten.<br />
<br />
Zu unserem eigenen Erstaunen erhielten wir sogar ein Signal aus unserer Messung. Es stellte sich aber sehr bald heraus, dass das wohl nicht die Hirnströme waren sondern eher Bewegungen des Kopfs und der Kabel. Denn die Sensoren sind recht empfindlich gegen solche Einflüsse. Zudem kam noch, dass die Sensoren über den Haaren angebracht wurden, was das Signal der Hirnströme noch zusätzlich verschlechterte. Nach einigen Versuchen sahen wir ein, dass das wohl eine zu grosse Herausforderung war und wir uns besser an einen einfacheren Versuch versuchen sollten.<br />
<br />
[[File:heart_and_brain.jpg|300px|thumb|none|Signal aus Messung der "Hirnströme"]]<br />
[[File:EEGDanielGlur.jpg|500px|thumb|none|Daniel beim messen der "Hirnströme"]]<br />
<br />
Also beschlossen wir uns anstelle der Hirnströme den Puls zu messen. Denn während einer Prüfung kann es durchaus auch vorkommen, dass der Puls etwas ansteigt. Die Messungen sollten dann ausgelesen werden und wenn der Puls eine gewisse Frequenz übersteigt, schaltet ein Ventilator ein um den Studenten wieder etwas zu beruhigen.<br />
<br />
Für diesen Versuch platzierten wir Sensoren am Unterarm und an der Handoberfläche. Idealerweise sollten laut Assistent Christian die Sensoren aber so weit wie möglich voneinander entfernt, an einer anderen Körperstelle angebracht werden um eine gewisse Referenz zu haben und um sicherzustellen, dass man wirklich den Puls misst. Unsere Kabel waren aber leider etwas zu kurz. Wir erhielten trotzdem ein relativ gutes Signal von welchem man davon ausgehen konnte, dass es sich um den Puls handelte. Jetzt nur noch das Signal auswerten, einen Frequenzbegrenzer programmieren und mithilfe von einem Arduino UNO den Ventilator ansteuern... Dachten wir... Dies war allerdings etwas Schwieriger als erwartet und überstieg unsere Kompetenzen. Das führte uns dazu auch diesen Versuch an dieser Stelle abzubrechen und nochmal zu überdenken.<br />
<br />
<br />
[[File:puls.png|400px|thumb|none|Pulssignal]]<br />
[[File:pulsmessung.jpg|400px|thumb|none|Pulssmessung]]<br />
<br />
<br />
Nun rannte uns schon langsam die Zeit davon. Doch dann kam uns die Idee, welche wir schon zu Beginn benötigt hätten. Und zwar wollten wir einen Ventilator auf einem Baseball-Cap anbringen und diesen ansteuern wenn ein gewisses Temperaturniveau unter dem Cap überschritten wird wird. Dazu wird ein 12V Ventilator via Relais von dem Arduino angesteuert. Weil der Arduino nur eine Spannung von 5V liefert, musste ein 12V Netzgerät den Ventilator mit Strom versorgen. Damit man den Ventilator so schalten konnte, damit er den Strom über das 12V Netzgerät bezieht, mussten wir noch ein Relais einbauen. Den Code für den Arduino bezogen wir aus verschiedenen ähnlichen Projekten aus dem Internet und passten ihn spezifisch für unsere Anwendung an. Für das auslesen der Temperatur mussten wir zuerst zwei Libreries herunterladen (DallasTemperature und OneWire).<br />
<br />
[[File:Komponente.PNG|400px|thumb|none|Verbaute Komponenten]]<br />
<br />
Nun mussten wir noch den Ventilator am Baseball-Cap anbringen. Dafür wurde eine Halterung im CAD konstruiert und mit einem 3D-Drucker ausgedruckt. Die Teile wurden danach zusammengesteckt und mit dem Baseball-Cap verschraubt. Natürlich wurde zuvor ein Loch in das Cap geschnitten, damit der Ventilator auch seinen Zweck erfüllen kann und dem Studenten einen kühlen Kopf verschafft.<br />
<br />
[[File:Aufbau.PNG|350px|thumb|none|3D-Modell im CAD]]<br />
<br />
[[File:Zusammenbau1.jpg|350px]]<br />
[[File:Zusammenbau2.jpg|350px]]<br />
<br />
Nun wurde unser Prototyp getestet. Der Sensor erfüllte seinen Dienst und wir konnten erfolgreich die Temperaturen messen. Jedoch war das Relais während dem Testen ständig eingeschalten und der Ventilator lief die ganze Zeit auch wenn die Temperatur den Minimalwert unterschritten hatte. Es hat sich also irgendwo in unserem Programm einen Fehler eingeschlichen. Den galt es nun zu finden und zu beheben. Dazu bauten wir einen Druckknopf ein um zu überprüfen ob das Relais defekt war und um die Fehlerquellen etwas einzugrenzen.<br />
<br />
[[File:Temperatur.jpg|350px]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/TQnGa5WiGS4<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
Der Druckknopf funktionierte, das Relais schaltete perfekt ein und aus und der Ventilator wurde an- und abgestellt. Somit wissen wir nun wo der Fehler zu suchen ist und können versuchen das Programm an diesen Stellen zu bereinigen. Nur ist jetzt schon Donnerstag Nachmittag und der Hack 2 hat schon begonnen. Wir alle wurden aufgefordert unseren bisherigen Prototypen aufzugeben und etwas neues, anderes zu versuchen und zu testen. Also legen wir schweren Herzens unser erster Prototyp beiseite und widmen unsere Kreativität dem nächsten Hack.<br />
<br />
=== Reflexion ===<br />
Der Hack 1 hat uns gezeigt, dass es gar nicht so einfach ist beim ersten Versuch ein brauchbares Resultat zu erzielen. Jedoch konnten wir so aus zwei vorhergehenden, fehlgeschlagenen Ansätzen eine Idee weiterentwickeln. Somit konnten wir mit unseren Kompetenzen und den Erfahrungen aus dem Hack 0 ein zufriedenstellendes Resultat erzielen. Durch die zwei Versuche zuvor ging leider recht viel Zeit "verloren", welche wir sehr benötigt hätten um unser erster Prototyp fehlerfrei hinzukriegen. Es war uns auch eine Lehre, dass man nicht zu lange an einer Sache verharren sollte wenn einem nur wenig Zeit zur Verfügung steht. Manchmal ist es besser man wirft alles nochmal über den Haufen und beginnt von vorne. Trotz allen Strapazen während des Hack 1 sind wir mit unserem ersten Prototyp sehr zufrieden und konnten auch bei diesem Versuch wieder viel profitieren und mitnehmen. Nun blicken wir gespannt nach vorne auf den nächsten Hack.<br />
<br />
<br />
===Code===<br />
<br />
Wir konnten zwar die Temperatur herauslesen und das Relais über einen Butten steuern, jedoch die Steuerung anhand der Temperatur geling uns nicht.<br />
<br />
<pre><br />
/********************************************************************/<br />
// First we include the libraries<br />
#include <OneWire.h> <br />
#include <DallasTemperature.h><br />
/********************************************************************/<br />
// Data wire is plugged into pin 2 on the Arduino <br />
#define ONE_WIRE_BUS 2 <br />
<br />
float tempReading;<br />
/********************************************************************/<br />
// Setup a oneWire instance to communicate with any OneWire devices <br />
// (not just Maxim/Dallas temperature ICs) <br />
OneWire oneWire(ONE_WIRE_BUS); <br />
/********************************************************************/<br />
// Pass our oneWire reference to Dallas Temperature. <br />
DallasTemperature sensors(&oneWire);<br />
/********************************************************************/ <br />
int relayPin = 4; // Relay Singnal lead to Digital Pin [D2-D12]<br />
<br />
float maxTemperature = 30.00; // The Max Temperature allowed<br />
float minTemperature = 25.00; // The Min Temperature allowed<br />
<br />
// constants won't change. They're used here to set pin numbers:<br />
const int buttonPin = 8; // the number of the pushbutton pin<br />
const int ledPin = 4; // the number of the LED pin<br />
<br />
// variables will change:<br />
int buttonState = 0; // variable for reading the pushbutton status<br />
<br />
void setup(void) {<br />
// initialize the LED pin as an output:<br />
pinMode(ledPin, OUTPUT);<br />
// initialize the pushbutton pin as an input:<br />
pinMode(buttonPin, INPUT);<br />
<br />
Serial.begin(9600); <br />
Serial.println("Dallas Temperature IC Control Library Demo"); <br />
// Start up the library <br />
sensors.begin(); <br />
}<br />
<br />
void loop(void) <br />
{ <br />
// call sensors.requestTemperatures() to issue a global temperature <br />
// request to all devices on the bus <br />
/********************************************************************/<br />
Serial.print(" Requesting temperatures..."); <br />
sensors.requestTemperatures(); // Send the command to get temperature readings <br />
Serial.println("DONE"); <br />
/********************************************************************/<br />
Serial.print("Temperature is: "); <br />
Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"? <br />
// You can have more than one DS18B20 on the same bus. <br />
// 0 refers to the first IC on the wire <br />
delay(1000); // Check Temperature every second<br />
<br />
float temperature = getTemperature();<br />
if(temperature >= maxTemperature){<br />
powerOnRelay();<br />
} else if (temperature <= minTemperature) {<br />
powerOffRelay();<br />
}<br />
delay(1000); // Check tempertature every second<br />
<br />
} <br />
void powerOnRelay() {<br />
digitalWrite(relayPin, HIGH);<br />
Serial.println("Relay On");<br />
}<br />
<br />
void powerOffRelay() {<br />
digitalWrite(relayPin, LOW);<br />
Serial.println("Relay Off");<br />
}<br />
float getTemperature(){<br />
tempReading = digitalRead(ONE_WIRE_BUS);<br />
<br />
// read the state of the pushbutton value:<br />
buttonState = digitalRead(buttonPin);<br />
<br />
// check if the pushbutton is pressed. If it is, the buttonState is HIGH:<br />
if (buttonState == HIGH) {<br />
// turn LED on:<br />
digitalWrite(ledPin, HIGH);<br />
} else {<br />
// turn LED off:<br />
digitalWrite(ledPin, LOW);<br />
}<br />
}<br />
</pre><br />
<br />
== Hack 2: Spritzenpumpe ==<br />
<br />
Nachdem der Hack 1 abgeschlossen war, machten wir uns aufs Neue darüber Gedanken was wir für einen Prototyp für den Hack 2 bauen wollen. Urs hat nach dem Abschluss von Hack 1 gesagt, wir sollten uns ein komplett neues Produkt überlegen, welches möglicherweise auch etwas mit der Medizintechnik zu tun hat. Nach einem Brainstorming kamen wir noch nicht so richtig auf einen grünen Zweig. So kamen wir auf die Idee uns einen Kaffee zu holen und einfach mal durch das FABLAB zu laufen um alles Mögliche anzuschauen, in die Hand zu nehmen und uns von all diesen Gegenständen inspirieren zu lassen. So kamen uns diverse Gegenstände in die Finger. darunter waren Servomotoren sowie einige DC-Motoren, eine Spritze, eine Pumpe, ein Micro-Switch Schalter, ein Potentiometer und vieles mehr. Diese Gegenstände haben wir dann auf unserem Gruppentisch ausgebreitet und uns Gedanken darüber gemacht was wir damit wohl anstellen konnten zum Thema Medizintechnik. So entstanden relativ schnell einige Ideen. Wir haben uns schlussendlich dafür entschieden ein Dosiergerät für eine medizinische Spritze zu machen. Dieses sollte so funktionieren, dass wir eine Spritze in eine Vorrichtung legen und über einen DC-Motor zum Einfahren bzw. Ausfahren bringen. Dazu muss die Drehbewegung des Motors in eine Lineare Bewegung umgeleitet werden. Zudem muss ggf. auch die Drehzahl des Motors durch ein Potentiometer reguliert werden können um einen zu schnellen Aus- oder Einfahrvorgang zu verhindern. Soviel zu zu den technischen Überlegungen. <br />
<br />
Sofort nach dem Entscheid suchten wir nach einem geeigneten Motor. Dieser sollte dabei eine eher tiefe Drehzahl haben damit die Spritze nur langsam ein- und ausfährt. Zudem suchten wir im Internet nach einem geeigneten Mechanismus der die Drehbewegung in eine lineare Bewegung umwandelt. Denn wir hatten leider zu wenig zeit um alles selber zu entwerfen und zu konstruieren. So wurden wir auf auf der Hompage von [https://www.thingiverse.com/thing:2797132/ Thingiverse] schliesslich fündig. Also konnte wir die Folgenden Komponenten herunterladen und mit dem 3D-Drucker ausdrucken.<br />
<br />
Komponenten: <gallery><br />
File:Halteplatte.PNG | Halteplatte<br />
File:Zahnrad.PNG | Zahnradpaar<br />
File:Zahnradpaar.PNG | Zahnstange<br />
File:Zahnstange.PNG | Zahnrad<br />
</gallery><br />
<br />
Da wir einen anderen Motor verwendeten als für diesen Mechanismus vorgesehen wäre, mussten wir noch eine passende Adapterplatte konstruieren, damit der Motor auch auf die Vorrichtung passt.<br />
<br />
<gallery><br />
File:Adapterplatte.PNG | Adapterplatte<br />
File:Motor.PNG | Motor<br />
File:Motor_mit_Adapter.jpg | Motor mit Adapter<br />
</gallery><br />
<br />
Der Motor benötigt, wie auch der Ventilator von Hack 1, eine Spannung von 12V für den Betrieb. Also mussten wir erneut das 12V Netzgerät verwenden. Damit unser zweiter Prototyp auch die gewünschte Fördermenge fördern kann, muss die Zeitdauer, in welcher gefördert werden soll, definiert werden. Das dazugehörige Programm wird mit einem Arduino UNO implementiert. Der Zugehörige Code haben wir durch Recherche im Internet und durch persönliches erweitern und anpassen erstellt. Die Drehzahl des Motors darf nicht zu hoch sein damit man die Fördermenge auch sinnvoll einstellen kann. Für diese Anwendung wird ein Potentiometer zwischen Relais und Motor gehängt. So kann die Motorspannung reguliert und die Drehzahl anforderungsgemäss eingestellt werden. Nachfolgend wird der Prozessablauf kurz beschrieben.<br />
<br />
Mit einem Knopfdruck wird wird ein Relais geschalten und der Motor wird angesteuert. Die Drehzahl des Motors wird über ein Getriebe reduziert. Die Zahnräder greifen auf eine Zahnstange und wandeln die Drehbewegung in eine lineare Bewegung um. An der Zahnstange wird der Stössel der Spritze befestigt. Der Rest der Spritze wird mit einem Kabelbinder fest mit der Bodenplatte verbunden damit sich dieser Teil nicht bewegen kann. Die programmierte Zeitdauer bestimmt welche Menge an Flüssigkeit gefördert werden soll.<br />
<br />
[[File:Pumpe.PNG|500px|thumb|none|Aufbau der Spritzenpumpe]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/PLG_S3GtVI8<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
=== Reflexion ===<br />
<br />
Anders als beim Hack 1 kamen waren wir uns bei diesem Hack sehr schnell einig was genau wir bauen möchten. Die ganze Ideenfindung erledigte sich sehr schnell und wir konnten nach bereits wenigen Stunden mit dem programmieren des Arduinos beginnen. Wie wir bereits im Hack 1 erfahren durften, ist das bei dem gedrängten Zeitplan dieser Woche ein grosser Vorteil. Rückblickend können wir urteilen, dass der Hack 2 aus unserer Sicht ein erfreuendes Erfolgserlebnis war. Unser zweiter Prototyp funktioniert genau so wie wir uns das von Beginn an vorgestellt haben. Per Knopfdruck fördert unser Prototyp eine gewisse Menge an Flüssigkeit.<br />
<br />
=== Code ===<br />
<br />
<pre><br />
<br />
bool geschaltet = false;<br />
int RelaisPin = 10; <br />
int tasterPin = 2;<br />
int empfindlichkeit = 200;<br />
<br />
void setup() {<br />
<br />
pinMode( tasterPin, INPUT_PULLUP);<br />
pinMode( RelaisPin, OUTPUT);<br />
<br />
}<br />
<br />
void loop() {<br />
<br />
if (digitalRead(tasterPin) == LOW) <br />
{<br />
if (geschaltet == false) {<br />
geschaltet = true;<br />
}<br />
else {<br />
geschaltet = false;<br />
}<br />
}<br />
<br />
if (geschaltet == true) {<br />
digitalWrite(RelaisPin, HIGH);<br />
delay(1000);<br />
geschaltet = false; <br />
}<br />
<br />
if (geschaltet == false) {<br />
digitalWrite(RelaisPin, LOW);<br />
}<br />
<br />
delay(empfindlichkeit);<br />
}<br />
</pre><br />
<br />
== Hack 3: Zinnguss ==<br />
<br />
Für diesen Hack wurde Zinn gegossen. Dank dem tiefen Schmelzpunkt lässt sich der Gusswerkstoff in einer [[:File:Kanne.jpg|Stahlkanne]] mit einem Brenner einer Autogenschweissanlage leicht erhitzen.<br />
<br />
[[File:Kanne.jpg|300px|thumb|none|Stahlkanne mit flüssigem Zinn]]<br />
<br />
=== Versuch 1 ===<br />
<br />
Für die Gussform wurde MDF verwendet. Da die Hitzebeständigkeit von MDF unklar war, sollte ein kleiner Versuch Aufschluss geben. Eine einfache Zylinderform mit einem Überlaufbecken bestehend aus 3 Platten gemässe Bild [[:File:Versuch_1_Gussform.jpg | Gussform, Versuch 1]]. Da nur eine kleine Menge an Zinn erhitzt wurde, war die Temperatur vermutlich deutlich über dem Schmelzpunkt. Es entwickelte sich Dampf, was zu einem Gussfehler im Überlauf führte. Ausserdem wurde das MDF stark verkohlt, siehe [[:File:Versuch_1_Resultat.jpg | Resultat]]. Dennoch ist das Resultat zufriedenstellend, sodass für einen weiteren Versuch wieder MDF verwendet werden kann.<br />
<br />
Versuch 1: <gallery><br />
File:Versuch_1_Gussform.jpg | Gussform<br />
File:Versuch_1_Guss.jpg | Frisch gegossen<br />
File:Versuch_1_Resultat.jpg | Resultat<br />
</gallery><br />
<br />
=== Versuch 2 ===<br />
<br />
Nun konnte der eigentliche Versuch gestartet werden. Das Zinn wurde wieder in der Stahlkanne erhitzt, jedoch nicht so stark wie in Versuch 1. Jedoch wurden diesmal alle Formen mit dem Lasercutter ausgeschnitten. Auch bei dieser [[:File:Versuch_2_Gussform.jpg | Gussform]] diente die letzte MSF Platte als Überlauf. Das flüssige Zinn konnte bei der grösseren Form kontrollierter und langsamer gegossen werden, so dass die Form gleichmässig ausgefüllt werden konnte, siehe Bild [[:File:Versuch_2_Guss.jpg | Frisch gegossen]].<br />
<br />
Versuch 2 Guss:<br />
<gallery><br />
File:Versuch_2_Gussform.jpg | Gussform<br />
File:Versuch_2_Guss.jpg | Frisch gegossen<br />
</gallery><br />
<br />
Durch den Schwund lässt sich das Gussstück relativ gut aus der Form drücken, obwohl keine Formschrägen vorhanden waren. Vorher empfiehlt es sich, den Überlauf abzufräsen (Bild [[:File:Versuch_2_Fraesen.jpg| Überfäsen]], [[:File:Versuch_2_Resultat.jpg | Resultat]]), da sich Zinn nur bedingt im Schraubstock einspannen lässt. Zinn vierbiegt sich sehr leicht.<br />
<br />
Versuch 2 Bearbeitung:<br />
<gallery><br />
File:Versuch_2_Fraesen.jpg | Überfäsen<br />
File:Versuch_2_Resultat.jpg | Resultat<br />
</gallery><br />
<br />
=== Rückblick ===<br />
<br />
Es ist gut möglich, Zinn in galaserte MDF Platten zu giessen. Der Zinn soll dabei langsam und konntrolliert in die Form eingegossen werden. Zudem soll das Gussmaterial nicht zu stark über den Schmelzpunkt erhitzt werden, da sich sonst blasen bilden. Damit die Formen schön mit den Schrauben positioniert werden können, sollen die Bohrungen beim Lasercutter um 0.25 mm kleiner gewählt werden. Zum Beispiel 3.75 mm für ein M4 Gewinde, da der Cutter übermass hat.<br />
<br />
= Skill-Share-Session =<br />
<br />
== Grundlagen der Arduinoprogrammierung ==<br />
<br />
Dieser Kurs wurde von unserer Gruppe angeboten und soll den Teilnehmern die Grundlage der Programierung eines Arduino UNO beibringen. Folgend werden die grundlegenden Befehle und deren Syntax vorgestellt. Der Aufbau folgt dem YouTube Tutorial von Max. Hier gelangst du zu dem Link: [https://www.youtube.com/watch?v=eaFvQG8wrGw&list=PLAB63281B90FB376E&index=3]<br />
<br />
=== Skript ===<br />
Der Code wird in einem Skript geschrieben. Dieses ist in zwei Bereiche aufgeteilt<br />
* Void setup() Dieses Skript wird einmalig ausgeführt und enthält zB. Input und output<br />
* Void loop() Dieser Teil des Skripts wird als Dauerschleife wiederholt<br />
<br />
==== Befehlseingabe ====<br />
<br />
Die Befehle werden nach folgender Syntax eingegeben:<br />
<br />
* Funktion(Parameter1, Parameter2);<br />
<br />
Dabei muss das «;» gesetzte werden, ausserdem spielen Gross- und Kleinbuchstaben eine Rolle.<br />
<br />
=== Variablen ===<br />
Übersichtshalber sollen sprechende Namen für die Bezeichnung von z.B. Outputs verwendet werden. Dabei können verschiedene Datentypen ausgewählt werden.<br />
<br />
==== Datentyp ====<br />
* int Ganze Zahlen von -32768 … 32767 z.B. 1, 48, -654<br />
* boolean Entweder true oder false<br />
* byte 8 Bit an Informationen z.B. 00010101 (=21)<br />
* char enthält 1 Byte Informationen, das ein Zeichen darstellt z.B. 65 = A<br />
* long grosse Zahlen von ca. -2.1 Milliarden bis 2.1 Milliarden z.B. 15636451<br />
* float Komazahlen z.B. 5.498<br />
* string Zeichenketten z.B. «Do it yourself»<br />
<br />
==== Deklaration Syntax ====<br />
<br />
* Datentyp Name = Wert;<br />
<br />
oder<br />
<br />
* Datentyp Name;<br />
* Name = Wert;<br />
<br />
====Ort der Deklaration====<br />
<br />
Die Variable muss immer im Teil des Skriptes deklariert sein, wo sie auch gebraucht wird. Wird die Variable im setup wie auch im loop benötigt, so kann man die Variable als sogenannte globale Variable oberhalb des Setups deklarieren.<br />
<br />
===If-Schleife===<br />
<br />
Bei der If-Schleife wird der Wert einer Variablen mit einem Vergleichswert verglichen. Falls der Vergleich positiv ist, wird der Code ausgeführt, ansonsten übersprungen. Dazu sind Vergleichsoperatoren notwendig.<br />
<br />
====Syntax====<br />
<br />
if(Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
====Vergleichsoperatoren====<br />
<br />
* == gleich<br />
* != ungleich<br />
* < kleiner<br />
* < grösser<br />
* <= kleiner gleich<br />
* >= grösser gleich<br />
<br />
===While-Schleife===<br />
<br />
Mit der While-Schleife wird die Bedingung fortlaufend geprüft. Stimmt diese, wird der Code ausgeführt, ansonsten wird der Code übersprungen. Es können die selben Vergleichsoperatoren wie bei der If-Schleife verwendet werden.<br />
<br />
====Syntax====<br />
<br />
while (Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
==Bildgebende Verfahren==<br />
<br />
Der Tag begann mit einer Einführung in die Bildgebenden Verfahren durch David Stadelmann. Hierbei erklärte er uns, verschiedene Methoden, um Bilder aus dem Körperinneren zu machen und welche Methode für die verschiedenen Gewebetypen gebraucht werden. Zudem Zeigte und erklärte er uns anhand von Beispielen was die Einzelnen Schattierungen aussagen könnten.<br />
<br />
[[DIY-MedTech Bildgebende Verfahren-Unterschiedliche Bildeindrücke - Team Frosch]]<br />
<br />
==Synths & Sound ==<br />
<br />
Danach ging es weiter mit dem Kurs Synths & Sounds. Diese Session wurde von [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] durchgeführt. Hierbei zeigte er uns, wie man mit verschieden erzeugten Schwingungen eine grosse Variation von Tönen generiert kann. Zudem auch wie man elektronisch gewisse Instrumente Simulieren könnte und durch die Aneinanderreihung verschiedenster Tonvariationen eine Melodie enstehen kann. Dies mit unterschiedlich Variationen von selbstgebauten Synthesizers.<br />
<br />
<gallery><br />
File:Sinthesizer1.jpg | Synthesizer 1<br />
File:Synthesizer2.jpg | Synthesizer 2<br />
</gallery><br />
<br />
== Schweissen ==<br />
<br />
Bei dem Skill-Share Workshop von [https://www.hackteria.org/wiki/Team_G2020/ Team G2020] konnten wir verschiedene Schweissverfahren kennenlernen und auch gleich anwenden.<br />
<br />
Es wurde uns das [https://de.wikipedia.org/wiki/Lichtbogenhandschwei%C3%9Fen/ Elektrodenschweissen], das [https://de.wikipedia.org/wiki/Schutzgasschwei%C3%9Fen/ MIG-Schweissen] und das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] nähergebracht.<br />
<br />
Dieser Workshop war für uns alle sehr interessant, da sich bisher noch keiner von uns so wirklich mit dem Schweissen und den verschiedenen Verfahren auskannte. An diesem Tag konnten wir nach einer kurzen Theorie gleich sofort selber handanlegen und die verschiedenen Schweissverfahren ausprobieren.<br />
<br />
Dabei mussten wir feststellen, dass es gar nicht so einfach ist wie es immer aussieht. Besonders das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] braucht sehr viel Übung und Geschick um wirklich schöne Schweissergebnisse zu erzielen.<br />
<br />
== Autonomes Nervensystem und das Hören in der Medizin ==<br />
<br />
Der Assistent Dr. Christian Gehringer, MSc. (ETH) hielt uns einen sehr interessanten Vortrag. Dabei ging es darum, dass wir die Anatomie kennenlernen und erkunden am Beispiel des Hörens z.B mit einem Stethoskop.<br />
<br />
[https://www.hackteria.org/wiki/Autonomes_Nervensystem_und_das_H%C3%B6ren_in_der_Medizin/ Autonomes Nervensystem und das Hören in der Medizin]</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=MedTechDIY20_Die_Profis&diff=41691MedTechDIY20 Die Profis2020-02-09T12:12:48Z<p>Tnroth: /* Hack 3: Zinnguss */</p>
<hr />
<div>Hier gehts zurück auf: [[Medizintechnik DIY]]<br />
<br />
[[File:DieProfis.png|700px|right|none|Wochenplan]]<br />
<br />
= Team =<br />
<br />
'''Die Profis''' besteht aus den drei Studierenden '''Daniel Glur''', '''Lukas Roth''' und '''Daniel Zellweger''' der Hochschule Luzern. Im Rahmen der Blockwoche "DIY Medizintechnik" formierte sich das Team aus verschiedenen Studiengängen um auch interdisziplinär voneinander zu lernen und Wissen auszutauschen.<br />
<br />
'''Mitglieder:'''<br />
<br />
Maschinentechnik: <gallery><br />
File:DanielGlur.jpg | Daniel Glur<br />
File:LukasRoth.jpg | Lukas Roth<br />
</gallery><br />
<br />
Medizintechnik: <gallery><br />
File:DanielZellweger.jpg | Daniel Zellweger<br />
</gallery><br />
<br />
= Pflichtlektüre =<br />
<br />
'''How to control someone else's arm with your brain | Greg Gage'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/rSQNi5sAwuc<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
In Diesem Video wird gezeigt wie man über die Aufnahme eines Biologischen Signals, dieses an eine zweite Person weitergeleitet werden kann.<br />
Dies funktioniert jedoch nur aus verschiedenen Gründen bedingt. Nebst den allgemeinen Störeinflüsse aus der Messtechnik, kommen zusätzlich noch jene der Ansteuerung. Da das Signal nur von einzelnen Muskelfasern abgefangen wird, kann dieses nicht sämtliche Muskelfasern der zweiten Person Reizen. Dies hat zur folge, dass nur eine annähernd ähnliche Bewegung des Armes arfolgt.<br />
<br />
<br />
'''What is Open Source explained in LEGO'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/a8fHgx9mE5U<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Durch die Verwendung der Open Source Methode erhält man die Möglichkeit während des Projektes noch Erweiterungen oder Veränderungen anzustreben.<br />
<br />
'''"Why toys make good medical devices | Jose Gomez-Marquez'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/UHCT9SOBHs0<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Nebst dem Preis besitzen Spielzeuge diverse spezifische Funktionen. Da diese meist günstige Anschaffung auch einfach verändert werden kann, sind sie sehr geeignet dafür umgebaut zu werden. Somit sind Spielzeuge welche chemische oder sensorische Funktionen besitzen ein gefundenes fressen für den Hacker und eine Alternative für Regionen in welchen die finanzielle Situation teure Medizinprodukte nicht erlauben.<br />
<br />
= Einleitung =<br />
Die Blockwoche "DIY Medizintechnik" verbindet Anwendungen der Medizintechnik mit Do It Yourself (DIY) Ansätzen. Dadurch wird das tiefere Verständnis von Medizintechnischen Geräten durch einen direkten, interdisziplinären und möglichst selbstgesteuerten Zugang gefördert. Basierend auf verschiedenen elektrophysiologischen Messmodulen (EMG, EKG, EOG, EEG) entwickeln die Studierenden im Team Ideen für innovative Projekte. Erste Prototypen werden mit den Mitteln der Digitalen Fabrikation hergestellt und getestet. Tag für Tag stehen produktive "Hacks" auf dem Programm. Hacks sind sehr praxisbezogene Arbeitssequenzen wo die Studierenden Experimente durchführen sowie Prototypen entwickeln und bauen können. Dabei ist aber nicht nur die Medizintechnik zentral sondern auch der Interdisziplinäre Austausch sowie eine Skill-Share-Session wo die Studierenden ganz nach dem do it yourself Gedanken einen eigenen Workshop leiten können.<br />
Alle Erkenntnisse und Erfahrungen werden laufend in einem eigenen Wiki-Eintrag festgehalten und dokumentiert.<br />
<br />
Die Blockwoche wird von den beiden Dozenten [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] und [https://www.hackteria.org/wiki/Gaudi/ Urs Gaudenz] duchgeführt. Unterstützt wurden die Beiden von '''Dr. Christian Gehringer, MSc. (ETH)''' und [http://chrisobrist.ch/about// Chris Obrist]<br />
<br />
Maschinentechnik: <gallery><br />
File:MarkDusseiller.jpg | Dr. Marc R. Dusseiller<br />
File:UrsGaudenz.jpg | Urs Gaudenz<br />
</gallery><br />
<br />
= Planung =<br />
<br />
Die Blockwoche wird wie in folgendem Wochenplan unterteilt:<br />
<br />
[[File:Wochenplan2020.jpg|700px|thumb|none|Wochenplan]]<br />
<br />
= Wochenrückblick =<br />
== Die Woche in Bilder==<br />
[[File:ProfisInAction.PNG|400px]]<br />
[[File:Komponente.PNG|300px]]<br />
[[File:Aufbau.PNG|400px]]<br />
[[File:Motor_mit_Adapter.jpg|300px]]<br />
[[File:Pumpe.PNG|350px]]<br />
[[File:pulsmessung.jpg|450px]]<br />
[[File:Zusammenbau2.jpg|300px]]<br />
[[File:Foto 07.02.20, 11 14 53.jpg|300px]]<br />
[[File:DanielZellweger.jpg|300px]]<br />
<br />
== Tag 1==<br />
'''Einführung'''<br />
<br />
Wir traffen uns zu beginn im FABLAB, wo sich die Dozenten vorstellten und uns über Ihren bisherigen Werdegang informierten. Das interessante an der beruflichen Laufbahn der beiden ist, dass beide ein Studium abgeschlossen haben und heute einer Tätigkeit nachgehen, welche eigentlich nicht mehr viel mit dem damaligen Studium zu tun hat. Das vermittelt unserer Meinung nach, den Studenten eine etwas andere Sichtweise als die technische Hochschule. Es zeigt z.B. dass man nach einem Studium nicht gezwungen ist auf diesem Fachgebiet zu arbeiten sondern dass der Arbeitsmarkt noch sehr viele andere Möglichkeiten zu bieten hat.<br />
<br />
Nachdem sie sich Vorgestellt haben, stellten sie uns auch noch den Assistent vor. Dieser ist ein ausgebildeter Arzt welcher sich momentan für seinen zweiten Doktortitel engagiert. Von Ihm und seinem grossen medizinischen Fachwissen können wir als Studenten die ganze Woche profitieren.<br />
<br />
Danach überliessen die Dozenten uns Studenten das Wort. Es war eine etwas andere Vorstellungsrunde wie man sie noch nicht kannte. Dazu stand uns ein ganzer Tisch mit kuriosen Gegenständen, welche etwas mit dem DIY Gedanke zu tun haben, zur verfügung. Sie vorderten uns alle auf einen Gegenstand auszuwählen. Danach mussten wir uns Vorstellen und noch ein paar Worte dazu verlieren welche Gemeinsamkeiten wir mit dem ausgesuchten Gegenstand teilen.<br />
<br />
'''DIY (Do It Yourself)'''<br />
<br />
Das DIY Prinzip basiert auf eigenem experimentieren und learning by doing<br />
<br />
{{#widget:Iframe<br />
|url= https://www.youtube.com/watch?v=3zH_J12G9sQ<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
<br />
'''How to use Wiki'''<br />
<br />
Durch die 45 minütige Einführung in die Handhabung das Wiki durch Dr. Marc R. Dusseiller waren wir bereit unsere Erkenntnisse und Projekte, welche wir in dieser Woche erfahren und durchführen werden, in einer Zugänglichen Form, niederzuschreiben.<br />
<br />
== Tag 2 ==<br />
Am zweiten Tag begannen wir die Vorbereitung Skill-Share-Session. Diesbezüglich sollte jeder Teilnehmer einen Skill, welcher er erlernen möchte und einen Skill, den man beibringen könnte notieren. Diese wurden dann auf einer Tafel in Cluster aufgeteilt. Zwölf davon wurden als Skill-Share Workshops ausgewählt und die Teilnehmer konnten sich nach Belieben einschreiben.<br />
<br />
[[File:SkillSession2020.jpg|500px|thumb|none|Skill-share-session]]<br />
<br />
Während des zweiten Teils arbeiteten wir an unserem Experiment weiter, welches wir am Vortag begonnen haben.<br />
Dazu mussten wir die elektronischen Bauteile mit unserem Laptop verbinden und einen vorgefertigten Sketch laufen lassen.<br />
<br />
Nachdem wir den ersten Versuch erfolgreich durchführen konnten, versuchten wir mit dem Arduino einen Stepmotor anzusteuern. Dabei stiessen wir jedoch auf einige Schwierigkeiten. Da wir diese bis zur Einführung des Lasercutters und des 3D-Druckers fertig haben sollten. Siehe [[#Hack 0]]<br />
<br />
Unteranderem wurde unsere Skill-Share-Session über Arduino vorbereitet.<br />
<br />
Am Abend kam [http://chrisobrist.ch/about// Chris Obrist] zu Besuch und unterhielt uns mit einer wundervollen musikalischen Darbietung.<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/Hj1Ogr8137o<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
== Tag 3 ==<br />
Von 9:00 Uhr bis nach dem Mittag um 14:00 Uhr waren wir alle mit der [[#Skill-Share-Session]] beschäftigt.<br />
<br />
Danach hatten wir Zeit um den nächsten Hack vorzubereiten und zu planen.<br />
<br />
== Tag 4 ==<br />
Den Vormittag verbrachten wir weiter mit dem Hack 1, welchen wir dann vor der Mittagspause den Dozenten und allen Mitstudierenden präsentieren durften. Leider litten wir während des ganzen Hack 1 sehr unter Zeitdruck, was auf eine turbulente Projektphase zurückzuführen ist. Mehr dazu erfährst du im [[#Hack 1]].<br />
<br />
Nach einer kurzen Inspirationphase entschieden wir uns dafür eine kleine Spritzenpumpe zu basteln. [[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 5 ==<br />
Am Tag 5 ging es darum die Einzelteile physikalisch sowie über ein Funktionierendes Arduinoprogamm zum laufen zu bringen.<br />
[[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 6 ==<br />
Zum Abschluss durften wir alle Hacks der verschiedenen Teams begutachten. Interessant waren die spontanen Vorgehensweisen und auch die daraus entstandenen Produkte. Viele Teams suchten zuerst das Material und erst danach die Ideen. So entstanden die unterschiedlichsten Prototypen.<br />
Zudem Reflektierten wird die Blockwoche. Im Allgemeinen gefielen die Freiheit und auch der unkomplizierte Teamgeist untereinander. Besten Dank auch an die Organisatoren der Blockwoche.<br />
<br />
= Experimente =<br />
Bei den Experimenten sollte es darum gehen aus unterschiedlichsten Einzelteilen ein Produkt zu erschaffen. Dieser Prozess brachte uns dazu über die Grenzen unseres altäglichem Denken zu springen und in der Verbindung der einzelnen Bereiche solcher Produkte besser zu verstehen.<br />
<br />
== Hack 0 ==<br />
<br />
<br />
===Versuchsaufbau 1===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 1===<br />
Nach den Inputs der Dozenten verbrachten wir hauptsächlich die Zeit damit den Muscle Spiker Shield nach der Anleitung mit den dazugehörigen Teilen zusammenzulöten.[https://backyardbrains.com/products/files/MuscleSpikerShield.v.2.11.BuildingInstructions.pdf]V2.11<br />
Nebenbei machten wir unsere ersten Schritte in Arduino.<br />
Als wir unsere mechatronischen Komponenten zusammengestellt und ein Grundverständnis von Arduino angeeignet haben, verbanden wir dies in einem Experiment. <br />
Das Experiment welches wir durchführten nennt man Control Machines with your Brain und ist auf der Seite von [https://backyardbrains.com/experiments/muscleSpikerShield/ Backyard Brains] nachzusehen.<br />
<br />
Für den Versuch wurden Elektroden an den Testpersonen angeschlossen und über den Arduino ausgelesen.<br />
Der Versuch wurde mit zwei Testpersonen durchgeführt. Dabei fiel uns nebst der Kontrolle der LED's auch auf, dass der Puls gemessen wurde. Dies unabhängig von der Position der Elektroden. Vermutlich reagieren die Elektroden zu sensitiv für diese Anwendung.<br />
<br />
<br />
[[File:UeberblickVersuchTeamD.jpg|400px|thumb|none|Versuchsaufbau]]<br />
[[File:Versuchsaufbau1TeamD.jpg|400px|thumb|none|Elektrodenbefestigung]]<br />
[[File:MessungDanielGlur.jpg|400px|thumb|none|Messung von Daniels Puls]]<br />
<br />
===Versuchsaufbau 2===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 2===<br />
<br />
Als zweites Experiment versuchten wir durch das anspannen der Muskeln einen Servomotor anzusteuern. Wie es auch auf der Homepage von [https://backyardbrains.com/experiments/MuscleSpikerShield_GripperHand/ Backyard Brains] anzutreffen ist. Dieser Versuch konnte aber leider aus Zeitgründen nicht zu Ende geführt werden. Wir konnten lediglich das Arduinoprogramm laden und etwas anpassen.<br />
<br />
===Reflexion===<br />
<br />
Der Hack 0 war in der Hinsicht sehr interessant, da wir alle unsere ersten Erfahrungen mit einem Arduino machen konnten. Einige von unserem Team hatten bisher auch noch nie auf einer Printplatte irgendwelche Widerstände oder Schalter etc. gelötet. Ebenso war es erstaunlich, dass man mit so wenig so viel verschiedene Sachen machen kann. Keiner von uns hat gedacht dass wir bereits am ersten Tag irgend etwas mit unseren Muskeln kontrollieren könnten. Insgesamt kam der Hack 0 gut bei uns an und wir alle konnten einiges davon profitieren und hoffentlich auch den weiteren Hacks weiterverwenden.<br />
<br />
== Hack 1: Baseball-Cap mit Ventilator ==<br />
<br />
Der Hack 1 beschreibt die Konzept- und Testphase des ersten Prototyps.<br />
<br />
Zu Beginn waren wir uns sehr unschlüssig was wir wirklich bauen wollen. Also entschieden wir uns für ein weiteres Experiment mit einem Bausatz von Backyard Brains. Wir versuchten durch die Funktion des Heart and Brain Spiker Shield einen Ventilator anzusteuern. Der Gedanke, welcher uns auf diese Idee führte, kennt wohl jeder Student. Während einer Prüfung kommt so mancher ins Grübeln und in harten Fällen kommt es auch vor dass einem eine Schweissperle von der Stirn läuft. Um in solchen Fällen für die nötige Kühlung zu sorgen, sollen Sensoren die Hirnströme gemessen und als Signal wiedergeben werden um damit einen Ventilator anzuschalten.<br />
<br />
Zu unserem eigenen Erstaunen erhielten wir sogar ein Signal aus unserer Messung. Es stellte sich aber sehr bald heraus, dass das wohl nicht die Hirnströme waren sondern eher Bewegungen des Kopfs und der Kabel. Denn die Sensoren sind recht empfindlich gegen solche Einflüsse. Zudem kam noch, dass die Sensoren über den Haaren angebracht wurden, was das Signal der Hirnströme noch zusätzlich verschlechterte. Nach einigen Versuchen sahen wir ein, dass das wohl eine zu grosse Herausforderung war und wir uns besser an einen einfacheren Versuch versuchen sollten.<br />
<br />
[[File:heart_and_brain.jpg|300px|thumb|none|Signal aus Messung der "Hirnströme"]]<br />
[[File:EEGDanielGlur.jpg|500px|thumb|none|Daniel beim messen der "Hirnströme"]]<br />
<br />
Also beschlossen wir uns anstelle der Hirnströme den Puls zu messen. Denn während einer Prüfung kann es durchaus auch vorkommen, dass der Puls etwas ansteigt. Die Messungen sollten dann ausgelesen werden und wenn der Puls eine gewisse Frequenz übersteigt, schaltet ein Ventilator ein um den Studenten wieder etwas zu beruhigen.<br />
<br />
Für diesen Versuch platzierten wir Sensoren am Unterarm und an der Handoberfläche. Idealerweise sollten laut Assistent Christian die Sensoren aber so weit wie möglich voneinander entfernt, an einer anderen Körperstelle angebracht werden um eine gewisse Referenz zu haben und um sicherzustellen, dass man wirklich den Puls misst. Unsere Kabel waren aber leider etwas zu kurz. Wir erhielten trotzdem ein relativ gutes Signal von welchem man davon ausgehen konnte, dass es sich um den Puls handelte. Jetzt nur noch das Signal auswerten, einen Frequenzbegrenzer programmieren und mithilfe von einem Arduino UNO den Ventilator ansteuern... Dachten wir... Dies war allerdings etwas Schwieriger als erwartet und überstieg unsere Kompetenzen. Das führte uns dazu auch diesen Versuch an dieser Stelle abzubrechen und nochmal zu überdenken.<br />
<br />
<br />
[[File:puls.png|400px|thumb|none|Pulssignal]]<br />
[[File:pulsmessung.jpg|400px|thumb|none|Pulssmessung]]<br />
<br />
<br />
Nun rannte uns schon langsam die Zeit davon. Doch dann kam uns die Idee, welche wir schon zu Beginn benötigt hätten. Und zwar wollten wir einen Ventilator auf einem Baseball-Cap anbringen und diesen ansteuern wenn ein gewisses Temperaturniveau unter dem Cap überschritten wird wird. Dazu wird ein 12V Ventilator via Relais von dem Arduino angesteuert. Weil der Arduino nur eine Spannung von 5V liefert, musste ein 12V Netzgerät den Ventilator mit Strom versorgen. Damit man den Ventilator so schalten konnte, damit er den Strom über das 12V Netzgerät bezieht, mussten wir noch ein Relais einbauen. Den Code für den Arduino bezogen wir aus verschiedenen ähnlichen Projekten aus dem Internet und passten ihn spezifisch für unsere Anwendung an. Für das auslesen der Temperatur mussten wir zuerst zwei Libreries herunterladen (DallasTemperature und OneWire).<br />
<br />
[[File:Komponente.PNG|400px|thumb|none|Verbaute Komponenten]]<br />
<br />
Nun mussten wir noch den Ventilator am Baseball-Cap anbringen. Dafür wurde eine Halterung im CAD konstruiert und mit einem 3D-Drucker ausgedruckt. Die Teile wurden danach zusammengesteckt und mit dem Baseball-Cap verschraubt. Natürlich wurde zuvor ein Loch in das Cap geschnitten, damit der Ventilator auch seinen Zweck erfüllen kann und dem Studenten einen kühlen Kopf verschafft.<br />
<br />
[[File:Aufbau.PNG|350px|thumb|none|3D-Modell im CAD]]<br />
<br />
[[File:Zusammenbau1.jpg|350px]]<br />
[[File:Zusammenbau2.jpg|350px]]<br />
<br />
Nun wurde unser Prototyp getestet. Der Sensor erfüllte seinen Dienst und wir konnten erfolgreich die Temperaturen messen. Jedoch war das Relais während dem Testen ständig eingeschalten und der Ventilator lief die ganze Zeit auch wenn die Temperatur den Minimalwert unterschritten hatte. Es hat sich also irgendwo in unserem Programm einen Fehler eingeschlichen. Den galt es nun zu finden und zu beheben. Dazu bauten wir einen Druckknopf ein um zu überprüfen ob das Relais defekt war und um die Fehlerquellen etwas einzugrenzen.<br />
<br />
[[File:Temperatur.jpg|350px]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/TQnGa5WiGS4<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
Der Druckknopf funktionierte, das Relais schaltete perfekt ein und aus und der Ventilator wurde an- und abgestellt. Somit wissen wir nun wo der Fehler zu suchen ist und können versuchen das Programm an diesen Stellen zu bereinigen. Nur ist jetzt schon Donnerstag Nachmittag und der Hack 2 hat schon begonnen. Wir alle wurden aufgefordert unseren bisherigen Prototypen aufzugeben und etwas neues, anderes zu versuchen und zu testen. Also legen wir schweren Herzens unser erster Prototyp beiseite und widmen unsere Kreativität dem nächsten Hack.<br />
<br />
=== Reflexion ===<br />
Der Hack 1 hat uns gezeigt, dass es gar nicht so einfach ist beim ersten Versuch ein brauchbares Resultat zu erzielen. Jedoch konnten wir so aus zwei vorhergehenden, fehlgeschlagenen Ansätzen eine Idee weiterentwickeln. Somit konnten wir mit unseren Kompetenzen und den Erfahrungen aus dem Hack 0 ein zufriedenstellendes Resultat erzielen. Durch die zwei Versuche zuvor ging leider recht viel Zeit "verloren", welche wir sehr benötigt hätten um unser erster Prototyp fehlerfrei hinzukriegen. Es war uns auch eine Lehre, dass man nicht zu lange an einer Sache verharren sollte wenn einem nur wenig Zeit zur Verfügung steht. Manchmal ist es besser man wirft alles nochmal über den Haufen und beginnt von vorne. Trotz allen Strapazen während des Hack 1 sind wir mit unserem ersten Prototyp sehr zufrieden und konnten auch bei diesem Versuch wieder viel profitieren und mitnehmen. Nun blicken wir gespannt nach vorne auf den nächsten Hack.<br />
<br />
<br />
===Code===<br />
<br />
Wir konnten zwar die Temperatur herauslesen und das Relais über einen Butten steuern, jedoch die Steuerung anhand der Temperatur geling uns nicht.<br />
<br />
<pre><br />
/********************************************************************/<br />
// First we include the libraries<br />
#include <OneWire.h> <br />
#include <DallasTemperature.h><br />
/********************************************************************/<br />
// Data wire is plugged into pin 2 on the Arduino <br />
#define ONE_WIRE_BUS 2 <br />
<br />
float tempReading;<br />
/********************************************************************/<br />
// Setup a oneWire instance to communicate with any OneWire devices <br />
// (not just Maxim/Dallas temperature ICs) <br />
OneWire oneWire(ONE_WIRE_BUS); <br />
/********************************************************************/<br />
// Pass our oneWire reference to Dallas Temperature. <br />
DallasTemperature sensors(&oneWire);<br />
/********************************************************************/ <br />
int relayPin = 4; // Relay Singnal lead to Digital Pin [D2-D12]<br />
<br />
float maxTemperature = 30.00; // The Max Temperature allowed<br />
float minTemperature = 25.00; // The Min Temperature allowed<br />
<br />
// constants won't change. They're used here to set pin numbers:<br />
const int buttonPin = 8; // the number of the pushbutton pin<br />
const int ledPin = 4; // the number of the LED pin<br />
<br />
// variables will change:<br />
int buttonState = 0; // variable for reading the pushbutton status<br />
<br />
void setup(void) {<br />
// initialize the LED pin as an output:<br />
pinMode(ledPin, OUTPUT);<br />
// initialize the pushbutton pin as an input:<br />
pinMode(buttonPin, INPUT);<br />
<br />
Serial.begin(9600); <br />
Serial.println("Dallas Temperature IC Control Library Demo"); <br />
// Start up the library <br />
sensors.begin(); <br />
}<br />
<br />
void loop(void) <br />
{ <br />
// call sensors.requestTemperatures() to issue a global temperature <br />
// request to all devices on the bus <br />
/********************************************************************/<br />
Serial.print(" Requesting temperatures..."); <br />
sensors.requestTemperatures(); // Send the command to get temperature readings <br />
Serial.println("DONE"); <br />
/********************************************************************/<br />
Serial.print("Temperature is: "); <br />
Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"? <br />
// You can have more than one DS18B20 on the same bus. <br />
// 0 refers to the first IC on the wire <br />
delay(1000); // Check Temperature every second<br />
<br />
float temperature = getTemperature();<br />
if(temperature >= maxTemperature){<br />
powerOnRelay();<br />
} else if (temperature <= minTemperature) {<br />
powerOffRelay();<br />
}<br />
delay(1000); // Check tempertature every second<br />
<br />
} <br />
void powerOnRelay() {<br />
digitalWrite(relayPin, HIGH);<br />
Serial.println("Relay On");<br />
}<br />
<br />
void powerOffRelay() {<br />
digitalWrite(relayPin, LOW);<br />
Serial.println("Relay Off");<br />
}<br />
float getTemperature(){<br />
tempReading = digitalRead(ONE_WIRE_BUS);<br />
<br />
// read the state of the pushbutton value:<br />
buttonState = digitalRead(buttonPin);<br />
<br />
// check if the pushbutton is pressed. If it is, the buttonState is HIGH:<br />
if (buttonState == HIGH) {<br />
// turn LED on:<br />
digitalWrite(ledPin, HIGH);<br />
} else {<br />
// turn LED off:<br />
digitalWrite(ledPin, LOW);<br />
}<br />
}<br />
</pre><br />
<br />
== Hack 2: Spritzenpumpe ==<br />
<br />
Nachdem der Hack 1 abgeschlossen war, machten wir uns aufs Neue darüber Gedanken was wir für einen Prototyp für den Hack 2 bauen wollen. Urs hat nach dem Abschluss von Hack 1 gesagt, wir sollten uns ein komplett neues Produkt überlegen, welches möglicherweise auch etwas mit der Medizintechnik zu tun hat. Nach einem Brainstorming kamen wir noch nicht so richtig auf einen grünen Zweig. So kamen wir auf die Idee uns einen Kaffee zu holen und einfach mal durch das FABLAB zu laufen um alles Mögliche anzuschauen, in die Hand zu nehmen und uns von all diesen Gegenständen inspirieren zu lassen. So kamen uns diverse Gegenstände in die Finger. darunter waren Servomotoren sowie einige DC-Motoren, eine Spritze, eine Pumpe, ein Micro-Switch Schalter, ein Potentiometer und vieles mehr. Diese Gegenstände haben wir dann auf unserem Gruppentisch ausgebreitet und uns Gedanken darüber gemacht was wir damit wohl anstellen konnten zum Thema Medizintechnik. So entstanden relativ schnell einige Ideen. Wir haben uns schlussendlich dafür entschieden ein Dosiergerät für eine medizinische Spritze zu machen. Dieses sollte so funktionieren, dass wir eine Spritze in eine Vorrichtung legen und über einen DC-Motor zum Einfahren bzw. Ausfahren bringen. Dazu muss die Drehbewegung des Motors in eine Lineare Bewegung umgeleitet werden. Zudem muss ggf. auch die Drehzahl des Motors durch ein Potentiometer reguliert werden können um einen zu schnellen Aus- oder Einfahrvorgang zu verhindern. Soviel zu zu den technischen Überlegungen. <br />
<br />
Sofort nach dem Entscheid suchten wir nach einem geeigneten Motor. Dieser sollte dabei eine eher tiefe Drehzahl haben damit die Spritze nur langsam ein- und ausfährt. Zudem suchten wir im Internet nach einem geeigneten Mechanismus der die Drehbewegung in eine lineare Bewegung umwandelt. Denn wir hatten leider zu wenig zeit um alles selber zu entwerfen und zu konstruieren. So wurden wir auf auf der Hompage von [https://www.thingiverse.com/thing:2797132/ Thingiverse] schliesslich fündig. Also konnte wir die Folgenden Komponenten herunterladen und mit dem 3D-Drucker ausdrucken.<br />
<br />
Komponenten: <gallery><br />
File:Halteplatte.PNG | Halteplatte<br />
File:Zahnrad.PNG | Zahnradpaar<br />
File:Zahnradpaar.PNG | Zahnstange<br />
File:Zahnstange.PNG | Zahnrad<br />
</gallery><br />
<br />
Da wir einen anderen Motor verwendeten als für diesen Mechanismus vorgesehen wäre, mussten wir noch eine passende Adapterplatte konstruieren, damit der Motor auch auf die Vorrichtung passt.<br />
<br />
<gallery><br />
File:Adapterplatte.PNG | Adapterplatte<br />
File:Motor.PNG | Motor<br />
File:Motor_mit_Adapter.jpg | Motor mit Adapter<br />
</gallery><br />
<br />
Der Motor benötigt, wie auch der Ventilator von Hack 1, eine Spannung von 12V für den Betrieb. Also mussten wir erneut das 12V Netzgerät verwenden. Damit unser zweiter Prototyp auch die gewünschte Fördermenge fördern kann, muss die Zeitdauer, in welcher gefördert werden soll, definiert werden. Das dazugehörige Programm wird mit einem Arduino UNO implementiert. Der Zugehörige Code haben wir durch Recherche im Internet und durch persönliches erweitern und anpassen erstellt. Die Drehzahl des Motors darf nicht zu hoch sein damit man die Fördermenge auch sinnvoll einstellen kann. Für diese Anwendung wird ein Potentiometer zwischen Relais und Motor gehängt. So kann die Motorspannung reguliert und die Drehzahl anforderungsgemäss eingestellt werden. Nachfolgend wird der Prozessablauf kurz beschrieben.<br />
<br />
Mit einem Knopfdruck wird wird ein Relais geschalten und der Motor wird angesteuert. Die Drehzahl des Motors wird über ein Getriebe reduziert. Die Zahnräder greifen auf eine Zahnstange und wandeln die Drehbewegung in eine lineare Bewegung um. An der Zahnstange wird der Stössel der Spritze befestigt. Der Rest der Spritze wird mit einem Kabelbinder fest mit der Bodenplatte verbunden damit sich dieser Teil nicht bewegen kann. Die programmierte Zeitdauer bestimmt welche Menge an Flüssigkeit gefördert werden soll.<br />
<br />
[[File:Pumpe.PNG|500px|thumb|none|Aufbau der Spritzenpumpe]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/PLG_S3GtVI8<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
=== Reflexion ===<br />
<br />
Anders als beim Hack 1 kamen waren wir uns bei diesem Hack sehr schnell einig was genau wir bauen möchten. Die ganze Ideenfindung erledigte sich sehr schnell und wir konnten nach bereits wenigen Stunden mit dem programmieren des Arduinos beginnen. Wie wir bereits im Hack 1 erfahren durften, ist das bei dem gedrängten Zeitplan dieser Woche ein grosser Vorteil. Rückblickend können wir urteilen, dass der Hack 2 aus unserer Sicht ein erfreuendes Erfolgserlebnis war. Unser zweiter Prototyp funktioniert genau so wie wir uns das von Beginn an vorgestellt haben. Per Knopfdruck fördert unser Prototyp eine gewisse Menge an Flüssigkeit.<br />
<br />
=== Code ===<br />
<br />
<pre><br />
<br />
bool geschaltet = false;<br />
int RelaisPin = 10; <br />
int tasterPin = 2;<br />
int empfindlichkeit = 200;<br />
<br />
void setup() {<br />
<br />
pinMode( tasterPin, INPUT_PULLUP);<br />
pinMode( RelaisPin, OUTPUT);<br />
<br />
}<br />
<br />
void loop() {<br />
<br />
if (digitalRead(tasterPin) == LOW) <br />
{<br />
if (geschaltet == false) {<br />
geschaltet = true;<br />
}<br />
else {<br />
geschaltet = false;<br />
}<br />
}<br />
<br />
if (geschaltet == true) {<br />
digitalWrite(RelaisPin, HIGH);<br />
delay(1000);<br />
geschaltet = false; <br />
}<br />
<br />
if (geschaltet == false) {<br />
digitalWrite(RelaisPin, LOW);<br />
}<br />
<br />
delay(empfindlichkeit);<br />
}<br />
</pre><br />
<br />
== Hack 3: Zinnguss ==<br />
<br />
Für diesen Hack wurde Zinn gegossen. Dank dem tiefen Schmelzpunkt lässt sich der Gusswerkstoff in einer [[:File:Kanne.jpg|Stahlkanne]] mit einem Brenner einer Autogenschweissanlage leicht erhitzen.<br />
<br />
[[File:Kanne.jpg|300px|thumb|none|Stahlkanne mit flüssigem Zinn]]<br />
<br />
=== Versuch 1 ===<br />
<br />
Für die Gussform wurde MDF verwendet. Da die Hitzebeständigkeit von MDF unklar war, sollte ein kleiner Versuch Aufschluss geben. Eine einfache Zylinderform mit einem Überlaufbecken bestehend aus 3 Platten gemässe Bild [[:File:Versuch_1_Gussform.jpg | Gussform, Versuch 1]]. Da nur eine kleine Menge an Zinn erhitzt wurde, war die Temperatur vermutlich deutlich über dem Schmelzpunkt. Es entwickelte sich Dampf, was zu einem Gussfehler im Überlauf führte. Ausserdem wurde das MDF stark verkohlt, siehe [[:File:Versuch_1_Resultat.jpg | Resultat]]. Dennoch ist das Resultat zufriedenstellend, sodass für einen weiteren Versuch wieder MDF verwendet werden kann.<br />
<br />
Versuch 1: <gallery><br />
File:Versuch_1_Gussform.jpg | Gussform<br />
File:Versuch_1_Guss.jpg | Frisch gegossen<br />
File:Versuch_1_Resultat.jpg | Resultat<br />
</gallery><br />
<br />
=== Versuch 2 ===<br />
<br />
Nun konnte der eigentliche Versuch gestartet werden. Das Zinn wurde wieder in der Stahlkanne erhitzt, jedoch nicht so stark wie in Versuch 1. Jedoch wurden diesmal alle Formen mit dem Lasercutter ausgeschnitten. Auch bei dieser Gussform diente die letzte MSF Platte als Überlauf. Das flüssige Zinn konnte bei der grösseren Form kontrollierter und langsamer gegossen werden, so dass die Form gleichmässig ausgefüllt werden konnte, siehe Bild [[:File:Versuch_2_Guss.jpg | Frisch gegossen]].<br />
<br />
Versuch 2 Guss:<br />
<gallery><br />
File:Versuch_2_Gussform.jpg | Gussform<br />
File:Versuch_2_Guss.jpg | Frisch gegossen<br />
</gallery><br />
<br />
Durch den Schwund lässt sich das Gussstück relativ gut aus der Form drücken, obwohl keine Formschrägen vorhanden waren. Vorher empfiehlt es sich, den Überlauf abzufräsen (Bild [[:File:Versuch_2_Fraesen.jpg| Überfäsen]], [[:File:Versuch_2_Resultat.jpg | Resultat]]), da sich Zinn nur bedingt im Schraubstock einspannen lässt. Zinn vierbiegt sich sehr leicht.<br />
<br />
Versuch 2 Bearbeitung:<br />
<gallery><br />
File:Versuch_2_Fraesen.jpg | Überfäsen<br />
File:Versuch_2_Resultat.jpg | Resultat<br />
</gallery><br />
<br />
=== Rückblick ===<br />
<br />
Es ist gut möglich, Zinn in galaserte MDF Platten zu giessen. Der Zinn soll dabei langsam und konntrolliert in die Form eingegossen werden. Zudem soll das Gussmaterial nicht zu stark über den Schmelzpunkt erhitzt werden, da sich sonst blasen bilden. Damit die Formen schön mit den Schrauben positioniert werden können, sollen die Bohrungen beim Lasercutter um 0.25 mm kleiner gewählt werden. Zum Beispiel 3.75 mm für ein M4 Gewinde, da der Cutter übermass hat.<br />
<br />
= Skill-Share-Session =<br />
<br />
== Grundlagen der Arduinoprogrammierung ==<br />
<br />
Dieser Kurs wurde von unserer Gruppe angeboten und soll den Teilnehmern die Grundlage der Programierung eines Arduino UNO beibringen. Folgend werden die grundlegenden Befehle und deren Syntax vorgestellt. Der Aufbau folgt dem YouTube Tutorial von Max. Hier gelangst du zu dem Link: [https://www.youtube.com/watch?v=eaFvQG8wrGw&list=PLAB63281B90FB376E&index=3]<br />
<br />
=== Skript ===<br />
Der Code wird in einem Skript geschrieben. Dieses ist in zwei Bereiche aufgeteilt<br />
* Void setup() Dieses Skript wird einmalig ausgeführt und enthält zB. Input und output<br />
* Void loop() Dieser Teil des Skripts wird als Dauerschleife wiederholt<br />
<br />
==== Befehlseingabe ====<br />
<br />
Die Befehle werden nach folgender Syntax eingegeben:<br />
<br />
* Funktion(Parameter1, Parameter2);<br />
<br />
Dabei muss das «;» gesetzte werden, ausserdem spielen Gross- und Kleinbuchstaben eine Rolle.<br />
<br />
=== Variablen ===<br />
Übersichtshalber sollen sprechende Namen für die Bezeichnung von z.B. Outputs verwendet werden. Dabei können verschiedene Datentypen ausgewählt werden.<br />
<br />
==== Datentyp ====<br />
* int Ganze Zahlen von -32768 … 32767 z.B. 1, 48, -654<br />
* boolean Entweder true oder false<br />
* byte 8 Bit an Informationen z.B. 00010101 (=21)<br />
* char enthält 1 Byte Informationen, das ein Zeichen darstellt z.B. 65 = A<br />
* long grosse Zahlen von ca. -2.1 Milliarden bis 2.1 Milliarden z.B. 15636451<br />
* float Komazahlen z.B. 5.498<br />
* string Zeichenketten z.B. «Do it yourself»<br />
<br />
==== Deklaration Syntax ====<br />
<br />
* Datentyp Name = Wert;<br />
<br />
oder<br />
<br />
* Datentyp Name;<br />
* Name = Wert;<br />
<br />
====Ort der Deklaration====<br />
<br />
Die Variable muss immer im Teil des Skriptes deklariert sein, wo sie auch gebraucht wird. Wird die Variable im setup wie auch im loop benötigt, so kann man die Variable als sogenannte globale Variable oberhalb des Setups deklarieren.<br />
<br />
===If-Schleife===<br />
<br />
Bei der If-Schleife wird der Wert einer Variablen mit einem Vergleichswert verglichen. Falls der Vergleich positiv ist, wird der Code ausgeführt, ansonsten übersprungen. Dazu sind Vergleichsoperatoren notwendig.<br />
<br />
====Syntax====<br />
<br />
if(Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
====Vergleichsoperatoren====<br />
<br />
* == gleich<br />
* != ungleich<br />
* < kleiner<br />
* < grösser<br />
* <= kleiner gleich<br />
* >= grösser gleich<br />
<br />
===While-Schleife===<br />
<br />
Mit der While-Schleife wird die Bedingung fortlaufend geprüft. Stimmt diese, wird der Code ausgeführt, ansonsten wird der Code übersprungen. Es können die selben Vergleichsoperatoren wie bei der If-Schleife verwendet werden.<br />
<br />
====Syntax====<br />
<br />
while (Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
==Bildgebende Verfahren==<br />
<br />
Der Tag begann mit einer Einführung in die Bildgebenden Verfahren durch David Stadelmann. Hierbei erklärte er uns, verschiedene Methoden, um Bilder aus dem Körperinneren zu machen und welche Methode für die verschiedenen Gewebetypen gebraucht werden. Zudem Zeigte und erklärte er uns anhand von Beispielen was die Einzelnen Schattierungen aussagen könnten.<br />
<br />
[[DIY-MedTech Bildgebende Verfahren-Unterschiedliche Bildeindrücke - Team Frosch]]<br />
<br />
==Synths & Sound ==<br />
<br />
Danach ging es weiter mit dem Kurs Synths & Sounds. Diese Session wurde von [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] durchgeführt. Hierbei zeigte er uns, wie man mit verschieden erzeugten Schwingungen eine grosse Variation von Tönen generiert kann. Zudem auch wie man elektronisch gewisse Instrumente Simulieren könnte und durch die Aneinanderreihung verschiedenster Tonvariationen eine Melodie enstehen kann. Dies mit unterschiedlich Variationen von selbstgebauten Synthesizers.<br />
<br />
<gallery><br />
File:Sinthesizer1.jpg | Synthesizer 1<br />
File:Synthesizer2.jpg | Synthesizer 2<br />
</gallery><br />
<br />
== Schweissen ==<br />
<br />
Bei dem Skill-Share Workshop von [https://www.hackteria.org/wiki/Team_G2020/ Team G2020] konnten wir verschiedene Schweissverfahren kennenlernen und auch gleich anwenden.<br />
<br />
Es wurde uns das [https://de.wikipedia.org/wiki/Lichtbogenhandschwei%C3%9Fen/ Elektrodenschweissen], das [https://de.wikipedia.org/wiki/Schutzgasschwei%C3%9Fen/ MIG-Schweissen] und das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] nähergebracht.<br />
<br />
Dieser Workshop war für uns alle sehr interessant, da sich bisher noch keiner von uns so wirklich mit dem Schweissen und den verschiedenen Verfahren auskannte. An diesem Tag konnten wir nach einer kurzen Theorie gleich sofort selber handanlegen und die verschiedenen Schweissverfahren ausprobieren.<br />
<br />
Dabei mussten wir feststellen, dass es gar nicht so einfach ist wie es immer aussieht. Besonders das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] braucht sehr viel Übung und Geschick um wirklich schöne Schweissergebnisse zu erzielen.<br />
<br />
== Autonomes Nervensystem und das Hören in der Medizin ==<br />
<br />
Der Assistent Dr. Christian Gehringer, MSc. (ETH) hielt uns einen sehr interessanten Vortrag. Dabei ging es darum, dass wir die Anatomie kennenlernen und erkunden am Beispiel des Hörens z.B mit einem Stethoskop.<br />
<br />
[https://www.hackteria.org/wiki/Autonomes_Nervensystem_und_das_H%C3%B6ren_in_der_Medizin/ Autonomes Nervensystem und das Hören in der Medizin]</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=MedTechDIY20_Die_Profis&diff=41685MedTechDIY20 Die Profis2020-02-09T12:09:41Z<p>Tnroth: /* Versuch 2 */</p>
<hr />
<div>Hier gehts zurück auf: [[Medizintechnik DIY]]<br />
<br />
[[File:DieProfis.png|700px|right|none|Wochenplan]]<br />
<br />
= Team =<br />
<br />
'''Die Profis''' besteht aus den drei Studierenden '''Daniel Glur''', '''Lukas Roth''' und '''Daniel Zellweger''' der Hochschule Luzern. Im Rahmen der Blockwoche "DIY Medizintechnik" formierte sich das Team aus verschiedenen Studiengängen um auch interdisziplinär voneinander zu lernen und Wissen auszutauschen.<br />
<br />
'''Mitglieder:'''<br />
<br />
Maschinentechnik: <gallery><br />
File:DanielGlur.jpg | Daniel Glur<br />
File:LukasRoth.jpg | Lukas Roth<br />
</gallery><br />
<br />
Medizintechnik: <gallery><br />
File:DanielZellweger.jpg | Daniel Zellweger<br />
</gallery><br />
<br />
= Pflichtlektüre =<br />
<br />
'''How to control someone else's arm with your brain | Greg Gage'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/rSQNi5sAwuc<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
In Diesem Video wird gezeigt wie man über die Aufnahme eines Biologischen Signals, dieses an eine zweite Person weitergeleitet werden kann.<br />
Dies funktioniert jedoch nur aus verschiedenen Gründen bedingt. Nebst den allgemeinen Störeinflüsse aus der Messtechnik, kommen zusätzlich noch jene der Ansteuerung. Da das Signal nur von einzelnen Muskelfasern abgefangen wird, kann dieses nicht sämtliche Muskelfasern der zweiten Person Reizen. Dies hat zur folge, dass nur eine annähernd ähnliche Bewegung des Armes arfolgt.<br />
<br />
<br />
'''What is Open Source explained in LEGO'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/a8fHgx9mE5U<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Durch die Verwendung der Open Source Methode erhält man die Möglichkeit während des Projektes noch Erweiterungen oder Veränderungen anzustreben.<br />
<br />
'''"Why toys make good medical devices | Jose Gomez-Marquez'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/UHCT9SOBHs0<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Nebst dem Preis besitzen Spielzeuge diverse spezifische Funktionen. Da diese meist günstige Anschaffung auch einfach verändert werden kann, sind sie sehr geeignet dafür umgebaut zu werden. Somit sind Spielzeuge welche chemische oder sensorische Funktionen besitzen ein gefundenes fressen für den Hacker und eine Alternative für Regionen in welchen die finanzielle Situation teure Medizinprodukte nicht erlauben.<br />
<br />
= Einleitung =<br />
Die Blockwoche "DIY Medizintechnik" verbindet Anwendungen der Medizintechnik mit Do It Yourself (DIY) Ansätzen. Dadurch wird das tiefere Verständnis von Medizintechnischen Geräten durch einen direkten, interdisziplinären und möglichst selbstgesteuerten Zugang gefördert. Basierend auf verschiedenen elektrophysiologischen Messmodulen (EMG, EKG, EOG, EEG) entwickeln die Studierenden im Team Ideen für innovative Projekte. Erste Prototypen werden mit den Mitteln der Digitalen Fabrikation hergestellt und getestet. Tag für Tag stehen produktive "Hacks" auf dem Programm. Hacks sind sehr praxisbezogene Arbeitssequenzen wo die Studierenden Experimente durchführen sowie Prototypen entwickeln und bauen können. Dabei ist aber nicht nur die Medizintechnik zentral sondern auch der Interdisziplinäre Austausch sowie eine Skill-Share-Session wo die Studierenden ganz nach dem do it yourself Gedanken einen eigenen Workshop leiten können.<br />
Alle Erkenntnisse und Erfahrungen werden laufend in einem eigenen Wiki-Eintrag festgehalten und dokumentiert.<br />
<br />
Die Blockwoche wird von den beiden Dozenten [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] und [https://www.hackteria.org/wiki/Gaudi/ Urs Gaudenz] duchgeführt. Unterstützt wurden die Beiden von '''Dr. Christian Gehringer, MSc. (ETH)''' und [http://chrisobrist.ch/about// Chris Obrist]<br />
<br />
Maschinentechnik: <gallery><br />
File:MarkDusseiller.jpg | Dr. Marc R. Dusseiller<br />
File:UrsGaudenz.jpg | Urs Gaudenz<br />
</gallery><br />
<br />
= Planung =<br />
<br />
Die Blockwoche wird wie in folgendem Wochenplan unterteilt:<br />
<br />
[[File:Wochenplan2020.jpg|700px|thumb|none|Wochenplan]]<br />
<br />
= Wochenrückblick =<br />
== Die Woche in Bilder==<br />
[[File:ProfisInAction.PNG|400px]]<br />
[[File:Komponente.PNG|300px]]<br />
[[File:Aufbau.PNG|400px]]<br />
[[File:Motor_mit_Adapter.jpg|300px]]<br />
[[File:Pumpe.PNG|350px]]<br />
[[File:pulsmessung.jpg|450px]]<br />
[[File:Zusammenbau2.jpg|300px]]<br />
[[File:Foto 07.02.20, 11 14 53.jpg|300px]]<br />
[[File:DanielZellweger.jpg|300px]]<br />
<br />
== Tag 1==<br />
'''Einführung'''<br />
<br />
Wir traffen uns zu beginn im FABLAB, wo sich die Dozenten vorstellten und uns über Ihren bisherigen Werdegang informierten. Das interessante an der beruflichen Laufbahn der beiden ist, dass beide ein Studium abgeschlossen haben und heute einer Tätigkeit nachgehen, welche eigentlich nicht mehr viel mit dem damaligen Studium zu tun hat. Das vermittelt unserer Meinung nach, den Studenten eine etwas andere Sichtweise als die technische Hochschule. Es zeigt z.B. dass man nach einem Studium nicht gezwungen ist auf diesem Fachgebiet zu arbeiten sondern dass der Arbeitsmarkt noch sehr viele andere Möglichkeiten zu bieten hat.<br />
<br />
Nachdem sie sich Vorgestellt haben, stellten sie uns auch noch den Assistent vor. Dieser ist ein ausgebildeter Arzt welcher sich momentan für seinen zweiten Doktortitel engagiert. Von Ihm und seinem grossen medizinischen Fachwissen können wir als Studenten die ganze Woche profitieren.<br />
<br />
Danach überliessen die Dozenten uns Studenten das Wort. Es war eine etwas andere Vorstellungsrunde wie man sie noch nicht kannte. Dazu stand uns ein ganzer Tisch mit kuriosen Gegenständen, welche etwas mit dem DIY Gedanke zu tun haben, zur verfügung. Sie vorderten uns alle auf einen Gegenstand auszuwählen. Danach mussten wir uns Vorstellen und noch ein paar Worte dazu verlieren welche Gemeinsamkeiten wir mit dem ausgesuchten Gegenstand teilen.<br />
<br />
'''DIY (Do It Yourself)'''<br />
<br />
Das DIY Prinzip basiert auf eigenem experimentieren und learning by doing<br />
<br />
{{#widget:Iframe<br />
|url= https://www.youtube.com/watch?v=3zH_J12G9sQ<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
<br />
'''How to use Wiki'''<br />
<br />
Durch die 45 minütige Einführung in die Handhabung das Wiki durch Dr. Marc R. Dusseiller waren wir bereit unsere Erkenntnisse und Projekte, welche wir in dieser Woche erfahren und durchführen werden, in einer Zugänglichen Form, niederzuschreiben.<br />
<br />
== Tag 2 ==<br />
Am zweiten Tag begannen wir die Vorbereitung Skill-Share-Session. Diesbezüglich sollte jeder Teilnehmer einen Skill, welcher er erlernen möchte und einen Skill, den man beibringen könnte notieren. Diese wurden dann auf einer Tafel in Cluster aufgeteilt. Zwölf davon wurden als Skill-Share Workshops ausgewählt und die Teilnehmer konnten sich nach Belieben einschreiben.<br />
<br />
[[File:SkillSession2020.jpg|500px|thumb|none|Skill-share-session]]<br />
<br />
Während des zweiten Teils arbeiteten wir an unserem Experiment weiter, welches wir am Vortag begonnen haben.<br />
Dazu mussten wir die elektronischen Bauteile mit unserem Laptop verbinden und einen vorgefertigten Sketch laufen lassen.<br />
<br />
Nachdem wir den ersten Versuch erfolgreich durchführen konnten, versuchten wir mit dem Arduino einen Stepmotor anzusteuern. Dabei stiessen wir jedoch auf einige Schwierigkeiten. Da wir diese bis zur Einführung des Lasercutters und des 3D-Druckers fertig haben sollten. Siehe [[#Hack 0]]<br />
<br />
Unteranderem wurde unsere Skill-Share-Session über Arduino vorbereitet.<br />
<br />
Am Abend kam [http://chrisobrist.ch/about// Chris Obrist] zu Besuch und unterhielt uns mit einer wundervollen musikalischen Darbietung.<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/Hj1Ogr8137o<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
== Tag 3 ==<br />
Von 9:00 Uhr bis nach dem Mittag um 14:00 Uhr waren wir alle mit der [[#Skill-Share-Session]] beschäftigt.<br />
<br />
Danach hatten wir Zeit um den nächsten Hack vorzubereiten und zu planen.<br />
<br />
== Tag 4 ==<br />
Den Vormittag verbrachten wir weiter mit dem Hack 1, welchen wir dann vor der Mittagspause den Dozenten und allen Mitstudierenden präsentieren durften. Leider litten wir während des ganzen Hack 1 sehr unter Zeitdruck, was auf eine turbulente Projektphase zurückzuführen ist. Mehr dazu erfährst du im [[#Hack 1]].<br />
<br />
Nach einer kurzen Inspirationphase entschieden wir uns dafür eine kleine Spritzenpumpe zu basteln. [[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 5 ==<br />
Am Tag 5 ging es darum die Einzelteile physikalisch sowie über ein Funktionierendes Arduinoprogamm zum laufen zu bringen.<br />
[[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 6 ==<br />
Zum Abschluss durften wir alle Hacks der verschiedenen Teams begutachten. Interessant waren die spontanen Vorgehensweisen und auch die daraus entstandenen Produkte. Viele Teams suchten zuerst das Material und erst danach die Ideen. So entstanden die unterschiedlichsten Prototypen.<br />
Zudem Reflektierten wird die Blockwoche. Im Allgemeinen gefielen die Freiheit und auch der unkomplizierte Teamgeist untereinander. Besten Dank auch an die Organisatoren der Blockwoche.<br />
<br />
= Experimente =<br />
Bei den Experimenten sollte es darum gehen aus unterschiedlichsten Einzelteilen ein Produkt zu erschaffen. Dieser Prozess brachte uns dazu über die Grenzen unseres altäglichem Denken zu springen und in der Verbindung der einzelnen Bereiche solcher Produkte besser zu verstehen.<br />
<br />
== Hack 0 ==<br />
<br />
<br />
===Versuchsaufbau 1===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 1===<br />
Nach den Inputs der Dozenten verbrachten wir hauptsächlich die Zeit damit den Muscle Spiker Shield nach der Anleitung mit den dazugehörigen Teilen zusammenzulöten.[https://backyardbrains.com/products/files/MuscleSpikerShield.v.2.11.BuildingInstructions.pdf]V2.11<br />
Nebenbei machten wir unsere ersten Schritte in Arduino.<br />
Als wir unsere mechatronischen Komponenten zusammengestellt und ein Grundverständnis von Arduino angeeignet haben, verbanden wir dies in einem Experiment. <br />
Das Experiment welches wir durchführten nennt man Control Machines with your Brain und ist auf der Seite von [https://backyardbrains.com/experiments/muscleSpikerShield/ Backyard Brains] nachzusehen.<br />
<br />
Für den Versuch wurden Elektroden an den Testpersonen angeschlossen und über den Arduino ausgelesen.<br />
Der Versuch wurde mit zwei Testpersonen durchgeführt. Dabei fiel uns nebst der Kontrolle der LED's auch auf, dass der Puls gemessen wurde. Dies unabhängig von der Position der Elektroden. Vermutlich reagieren die Elektroden zu sensitiv für diese Anwendung.<br />
<br />
<br />
[[File:UeberblickVersuchTeamD.jpg|400px|thumb|none|Versuchsaufbau]]<br />
[[File:Versuchsaufbau1TeamD.jpg|400px|thumb|none|Elektrodenbefestigung]]<br />
[[File:MessungDanielGlur.jpg|400px|thumb|none|Messung von Daniels Puls]]<br />
<br />
===Versuchsaufbau 2===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 2===<br />
<br />
Als zweites Experiment versuchten wir durch das anspannen der Muskeln einen Servomotor anzusteuern. Wie es auch auf der Homepage von [https://backyardbrains.com/experiments/MuscleSpikerShield_GripperHand/ Backyard Brains] anzutreffen ist. Dieser Versuch konnte aber leider aus Zeitgründen nicht zu Ende geführt werden. Wir konnten lediglich das Arduinoprogramm laden und etwas anpassen.<br />
<br />
===Reflexion===<br />
<br />
Der Hack 0 war in der Hinsicht sehr interessant, da wir alle unsere ersten Erfahrungen mit einem Arduino machen konnten. Einige von unserem Team hatten bisher auch noch nie auf einer Printplatte irgendwelche Widerstände oder Schalter etc. gelötet. Ebenso war es erstaunlich, dass man mit so wenig so viel verschiedene Sachen machen kann. Keiner von uns hat gedacht dass wir bereits am ersten Tag irgend etwas mit unseren Muskeln kontrollieren könnten. Insgesamt kam der Hack 0 gut bei uns an und wir alle konnten einiges davon profitieren und hoffentlich auch den weiteren Hacks weiterverwenden.<br />
<br />
== Hack 1: Baseball-Cap mit Ventilator ==<br />
<br />
Der Hack 1 beschreibt die Konzept- und Testphase des ersten Prototyps.<br />
<br />
Zu Beginn waren wir uns sehr unschlüssig was wir wirklich bauen wollen. Also entschieden wir uns für ein weiteres Experiment mit einem Bausatz von Backyard Brains. Wir versuchten durch die Funktion des Heart and Brain Spiker Shield einen Ventilator anzusteuern. Der Gedanke, welcher uns auf diese Idee führte, kennt wohl jeder Student. Während einer Prüfung kommt so mancher ins Grübeln und in harten Fällen kommt es auch vor dass einem eine Schweissperle von der Stirn läuft. Um in solchen Fällen für die nötige Kühlung zu sorgen, sollen Sensoren die Hirnströme gemessen und als Signal wiedergeben werden um damit einen Ventilator anzuschalten.<br />
<br />
Zu unserem eigenen Erstaunen erhielten wir sogar ein Signal aus unserer Messung. Es stellte sich aber sehr bald heraus, dass das wohl nicht die Hirnströme waren sondern eher Bewegungen des Kopfs und der Kabel. Denn die Sensoren sind recht empfindlich gegen solche Einflüsse. Zudem kam noch, dass die Sensoren über den Haaren angebracht wurden, was das Signal der Hirnströme noch zusätzlich verschlechterte. Nach einigen Versuchen sahen wir ein, dass das wohl eine zu grosse Herausforderung war und wir uns besser an einen einfacheren Versuch versuchen sollten.<br />
<br />
[[File:heart_and_brain.jpg|300px|thumb|none|Signal aus Messung der "Hirnströme"]]<br />
[[File:EEGDanielGlur.jpg|500px|thumb|none|Daniel beim messen der "Hirnströme"]]<br />
<br />
Also beschlossen wir uns anstelle der Hirnströme den Puls zu messen. Denn während einer Prüfung kann es durchaus auch vorkommen, dass der Puls etwas ansteigt. Die Messungen sollten dann ausgelesen werden und wenn der Puls eine gewisse Frequenz übersteigt, schaltet ein Ventilator ein um den Studenten wieder etwas zu beruhigen.<br />
<br />
Für diesen Versuch platzierten wir Sensoren am Unterarm und an der Handoberfläche. Idealerweise sollten laut Assistent Christian die Sensoren aber so weit wie möglich voneinander entfernt, an einer anderen Körperstelle angebracht werden um eine gewisse Referenz zu haben und um sicherzustellen, dass man wirklich den Puls misst. Unsere Kabel waren aber leider etwas zu kurz. Wir erhielten trotzdem ein relativ gutes Signal von welchem man davon ausgehen konnte, dass es sich um den Puls handelte. Jetzt nur noch das Signal auswerten, einen Frequenzbegrenzer programmieren und mithilfe von einem Arduino UNO den Ventilator ansteuern... Dachten wir... Dies war allerdings etwas Schwieriger als erwartet und überstieg unsere Kompetenzen. Das führte uns dazu auch diesen Versuch an dieser Stelle abzubrechen und nochmal zu überdenken.<br />
<br />
<br />
[[File:puls.png|400px|thumb|none|Pulssignal]]<br />
[[File:pulsmessung.jpg|400px|thumb|none|Pulssmessung]]<br />
<br />
<br />
Nun rannte uns schon langsam die Zeit davon. Doch dann kam uns die Idee, welche wir schon zu Beginn benötigt hätten. Und zwar wollten wir einen Ventilator auf einem Baseball-Cap anbringen und diesen ansteuern wenn ein gewisses Temperaturniveau unter dem Cap überschritten wird wird. Dazu wird ein 12V Ventilator via Relais von dem Arduino angesteuert. Weil der Arduino nur eine Spannung von 5V liefert, musste ein 12V Netzgerät den Ventilator mit Strom versorgen. Damit man den Ventilator so schalten konnte, damit er den Strom über das 12V Netzgerät bezieht, mussten wir noch ein Relais einbauen. Den Code für den Arduino bezogen wir aus verschiedenen ähnlichen Projekten aus dem Internet und passten ihn spezifisch für unsere Anwendung an. Für das auslesen der Temperatur mussten wir zuerst zwei Libreries herunterladen (DallasTemperature und OneWire).<br />
<br />
[[File:Komponente.PNG|400px|thumb|none|Verbaute Komponenten]]<br />
<br />
Nun mussten wir noch den Ventilator am Baseball-Cap anbringen. Dafür wurde eine Halterung im CAD konstruiert und mit einem 3D-Drucker ausgedruckt. Die Teile wurden danach zusammengesteckt und mit dem Baseball-Cap verschraubt. Natürlich wurde zuvor ein Loch in das Cap geschnitten, damit der Ventilator auch seinen Zweck erfüllen kann und dem Studenten einen kühlen Kopf verschafft.<br />
<br />
[[File:Aufbau.PNG|350px|thumb|none|3D-Modell im CAD]]<br />
<br />
[[File:Zusammenbau1.jpg|350px]]<br />
[[File:Zusammenbau2.jpg|350px]]<br />
<br />
Nun wurde unser Prototyp getestet. Der Sensor erfüllte seinen Dienst und wir konnten erfolgreich die Temperaturen messen. Jedoch war das Relais während dem Testen ständig eingeschalten und der Ventilator lief die ganze Zeit auch wenn die Temperatur den Minimalwert unterschritten hatte. Es hat sich also irgendwo in unserem Programm einen Fehler eingeschlichen. Den galt es nun zu finden und zu beheben. Dazu bauten wir einen Druckknopf ein um zu überprüfen ob das Relais defekt war und um die Fehlerquellen etwas einzugrenzen.<br />
<br />
[[File:Temperatur.jpg|350px]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/TQnGa5WiGS4<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
Der Druckknopf funktionierte, das Relais schaltete perfekt ein und aus und der Ventilator wurde an- und abgestellt. Somit wissen wir nun wo der Fehler zu suchen ist und können versuchen das Programm an diesen Stellen zu bereinigen. Nur ist jetzt schon Donnerstag Nachmittag und der Hack 2 hat schon begonnen. Wir alle wurden aufgefordert unseren bisherigen Prototypen aufzugeben und etwas neues, anderes zu versuchen und zu testen. Also legen wir schweren Herzens unser erster Prototyp beiseite und widmen unsere Kreativität dem nächsten Hack.<br />
<br />
=== Reflexion ===<br />
Der Hack 1 hat uns gezeigt, dass es gar nicht so einfach ist beim ersten Versuch ein brauchbares Resultat zu erzielen. Jedoch konnten wir so aus zwei vorhergehenden, fehlgeschlagenen Ansätzen eine Idee weiterentwickeln. Somit konnten wir mit unseren Kompetenzen und den Erfahrungen aus dem Hack 0 ein zufriedenstellendes Resultat erzielen. Durch die zwei Versuche zuvor ging leider recht viel Zeit "verloren", welche wir sehr benötigt hätten um unser erster Prototyp fehlerfrei hinzukriegen. Es war uns auch eine Lehre, dass man nicht zu lange an einer Sache verharren sollte wenn einem nur wenig Zeit zur Verfügung steht. Manchmal ist es besser man wirft alles nochmal über den Haufen und beginnt von vorne. Trotz allen Strapazen während des Hack 1 sind wir mit unserem ersten Prototyp sehr zufrieden und konnten auch bei diesem Versuch wieder viel profitieren und mitnehmen. Nun blicken wir gespannt nach vorne auf den nächsten Hack.<br />
<br />
<br />
===Code===<br />
<br />
Wir konnten zwar die Temperatur herauslesen und das Relais über einen Butten steuern, jedoch die Steuerung anhand der Temperatur geling uns nicht.<br />
<br />
<pre><br />
/********************************************************************/<br />
// First we include the libraries<br />
#include <OneWire.h> <br />
#include <DallasTemperature.h><br />
/********************************************************************/<br />
// Data wire is plugged into pin 2 on the Arduino <br />
#define ONE_WIRE_BUS 2 <br />
<br />
float tempReading;<br />
/********************************************************************/<br />
// Setup a oneWire instance to communicate with any OneWire devices <br />
// (not just Maxim/Dallas temperature ICs) <br />
OneWire oneWire(ONE_WIRE_BUS); <br />
/********************************************************************/<br />
// Pass our oneWire reference to Dallas Temperature. <br />
DallasTemperature sensors(&oneWire);<br />
/********************************************************************/ <br />
int relayPin = 4; // Relay Singnal lead to Digital Pin [D2-D12]<br />
<br />
float maxTemperature = 30.00; // The Max Temperature allowed<br />
float minTemperature = 25.00; // The Min Temperature allowed<br />
<br />
// constants won't change. They're used here to set pin numbers:<br />
const int buttonPin = 8; // the number of the pushbutton pin<br />
const int ledPin = 4; // the number of the LED pin<br />
<br />
// variables will change:<br />
int buttonState = 0; // variable for reading the pushbutton status<br />
<br />
void setup(void) {<br />
// initialize the LED pin as an output:<br />
pinMode(ledPin, OUTPUT);<br />
// initialize the pushbutton pin as an input:<br />
pinMode(buttonPin, INPUT);<br />
<br />
Serial.begin(9600); <br />
Serial.println("Dallas Temperature IC Control Library Demo"); <br />
// Start up the library <br />
sensors.begin(); <br />
}<br />
<br />
void loop(void) <br />
{ <br />
// call sensors.requestTemperatures() to issue a global temperature <br />
// request to all devices on the bus <br />
/********************************************************************/<br />
Serial.print(" Requesting temperatures..."); <br />
sensors.requestTemperatures(); // Send the command to get temperature readings <br />
Serial.println("DONE"); <br />
/********************************************************************/<br />
Serial.print("Temperature is: "); <br />
Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"? <br />
// You can have more than one DS18B20 on the same bus. <br />
// 0 refers to the first IC on the wire <br />
delay(1000); // Check Temperature every second<br />
<br />
float temperature = getTemperature();<br />
if(temperature >= maxTemperature){<br />
powerOnRelay();<br />
} else if (temperature <= minTemperature) {<br />
powerOffRelay();<br />
}<br />
delay(1000); // Check tempertature every second<br />
<br />
} <br />
void powerOnRelay() {<br />
digitalWrite(relayPin, HIGH);<br />
Serial.println("Relay On");<br />
}<br />
<br />
void powerOffRelay() {<br />
digitalWrite(relayPin, LOW);<br />
Serial.println("Relay Off");<br />
}<br />
float getTemperature(){<br />
tempReading = digitalRead(ONE_WIRE_BUS);<br />
<br />
// read the state of the pushbutton value:<br />
buttonState = digitalRead(buttonPin);<br />
<br />
// check if the pushbutton is pressed. If it is, the buttonState is HIGH:<br />
if (buttonState == HIGH) {<br />
// turn LED on:<br />
digitalWrite(ledPin, HIGH);<br />
} else {<br />
// turn LED off:<br />
digitalWrite(ledPin, LOW);<br />
}<br />
}<br />
</pre><br />
<br />
== Hack 2: Spritzenpumpe ==<br />
<br />
Nachdem der Hack 1 abgeschlossen war, machten wir uns aufs Neue darüber Gedanken was wir für einen Prototyp für den Hack 2 bauen wollen. Urs hat nach dem Abschluss von Hack 1 gesagt, wir sollten uns ein komplett neues Produkt überlegen, welches möglicherweise auch etwas mit der Medizintechnik zu tun hat. Nach einem Brainstorming kamen wir noch nicht so richtig auf einen grünen Zweig. So kamen wir auf die Idee uns einen Kaffee zu holen und einfach mal durch das FABLAB zu laufen um alles Mögliche anzuschauen, in die Hand zu nehmen und uns von all diesen Gegenständen inspirieren zu lassen. So kamen uns diverse Gegenstände in die Finger. darunter waren Servomotoren sowie einige DC-Motoren, eine Spritze, eine Pumpe, ein Micro-Switch Schalter, ein Potentiometer und vieles mehr. Diese Gegenstände haben wir dann auf unserem Gruppentisch ausgebreitet und uns Gedanken darüber gemacht was wir damit wohl anstellen konnten zum Thema Medizintechnik. So entstanden relativ schnell einige Ideen. Wir haben uns schlussendlich dafür entschieden ein Dosiergerät für eine medizinische Spritze zu machen. Dieses sollte so funktionieren, dass wir eine Spritze in eine Vorrichtung legen und über einen DC-Motor zum Einfahren bzw. Ausfahren bringen. Dazu muss die Drehbewegung des Motors in eine Lineare Bewegung umgeleitet werden. Zudem muss ggf. auch die Drehzahl des Motors durch ein Potentiometer reguliert werden können um einen zu schnellen Aus- oder Einfahrvorgang zu verhindern. Soviel zu zu den technischen Überlegungen. <br />
<br />
Sofort nach dem Entscheid suchten wir nach einem geeigneten Motor. Dieser sollte dabei eine eher tiefe Drehzahl haben damit die Spritze nur langsam ein- und ausfährt. Zudem suchten wir im Internet nach einem geeigneten Mechanismus der die Drehbewegung in eine lineare Bewegung umwandelt. Denn wir hatten leider zu wenig zeit um alles selber zu entwerfen und zu konstruieren. So wurden wir auf auf der Hompage von [https://www.thingiverse.com/thing:2797132/ Thingiverse] schliesslich fündig. Also konnte wir die Folgenden Komponenten herunterladen und mit dem 3D-Drucker ausdrucken.<br />
<br />
Komponenten: <gallery><br />
File:Halteplatte.PNG | Halteplatte<br />
File:Zahnrad.PNG | Zahnradpaar<br />
File:Zahnradpaar.PNG | Zahnstange<br />
File:Zahnstange.PNG | Zahnrad<br />
</gallery><br />
<br />
Da wir einen anderen Motor verwendeten als für diesen Mechanismus vorgesehen wäre, mussten wir noch eine passende Adapterplatte konstruieren, damit der Motor auch auf die Vorrichtung passt.<br />
<br />
<gallery><br />
File:Adapterplatte.PNG | Adapterplatte<br />
File:Motor.PNG | Motor<br />
File:Motor_mit_Adapter.jpg | Motor mit Adapter<br />
</gallery><br />
<br />
Der Motor benötigt, wie auch der Ventilator von Hack 1, eine Spannung von 12V für den Betrieb. Also mussten wir erneut das 12V Netzgerät verwenden. Damit unser zweiter Prototyp auch die gewünschte Fördermenge fördern kann, muss die Zeitdauer, in welcher gefördert werden soll, definiert werden. Das dazugehörige Programm wird mit einem Arduino UNO implementiert. Der Zugehörige Code haben wir durch Recherche im Internet und durch persönliches erweitern und anpassen erstellt. Die Drehzahl des Motors darf nicht zu hoch sein damit man die Fördermenge auch sinnvoll einstellen kann. Für diese Anwendung wird ein Potentiometer zwischen Relais und Motor gehängt. So kann die Motorspannung reguliert und die Drehzahl anforderungsgemäss eingestellt werden. Nachfolgend wird der Prozessablauf kurz beschrieben.<br />
<br />
Mit einem Knopfdruck wird wird ein Relais geschalten und der Motor wird angesteuert. Die Drehzahl des Motors wird über ein Getriebe reduziert. Die Zahnräder greifen auf eine Zahnstange und wandeln die Drehbewegung in eine lineare Bewegung um. An der Zahnstange wird der Stössel der Spritze befestigt. Der Rest der Spritze wird mit einem Kabelbinder fest mit der Bodenplatte verbunden damit sich dieser Teil nicht bewegen kann. Die programmierte Zeitdauer bestimmt welche Menge an Flüssigkeit gefördert werden soll.<br />
<br />
[[File:Pumpe.PNG|500px|thumb|none|Aufbau der Spritzenpumpe]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/PLG_S3GtVI8<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
=== Reflexion ===<br />
<br />
Anders als beim Hack 1 kamen waren wir uns bei diesem Hack sehr schnell einig was genau wir bauen möchten. Die ganze Ideenfindung erledigte sich sehr schnell und wir konnten nach bereits wenigen Stunden mit dem programmieren des Arduinos beginnen. Wie wir bereits im Hack 1 erfahren durften, ist das bei dem gedrängten Zeitplan dieser Woche ein grosser Vorteil. Rückblickend können wir urteilen, dass der Hack 2 aus unserer Sicht ein erfreuendes Erfolgserlebnis war. Unser zweiter Prototyp funktioniert genau so wie wir uns das von Beginn an vorgestellt haben. Per Knopfdruck fördert unser Prototyp eine gewisse Menge an Flüssigkeit.<br />
<br />
=== Code ===<br />
<br />
<pre><br />
<br />
bool geschaltet = false;<br />
int RelaisPin = 10; <br />
int tasterPin = 2;<br />
int empfindlichkeit = 200;<br />
<br />
void setup() {<br />
<br />
pinMode( tasterPin, INPUT_PULLUP);<br />
pinMode( RelaisPin, OUTPUT);<br />
<br />
}<br />
<br />
void loop() {<br />
<br />
if (digitalRead(tasterPin) == LOW) <br />
{<br />
if (geschaltet == false) {<br />
geschaltet = true;<br />
}<br />
else {<br />
geschaltet = false;<br />
}<br />
}<br />
<br />
if (geschaltet == true) {<br />
digitalWrite(RelaisPin, HIGH);<br />
delay(1000);<br />
geschaltet = false; <br />
}<br />
<br />
if (geschaltet == false) {<br />
digitalWrite(RelaisPin, LOW);<br />
}<br />
<br />
delay(empfindlichkeit);<br />
}<br />
</pre><br />
<br />
== Hack 3: Zinnguss ==<br />
<br />
Für diesen Hack wurde Zinn gegossen. Dank dem tiefen Schmelzpunkt lässt sich der Gusswerkstoff in einer Stahlkanne mit einem Brenner einer Autogenschweissanlage leicht erhitzen.<br />
<br />
[[File:Kanne.jpg|300px|thumb|none|Stahlkanne mit flüssigem Zinn]]<br />
<br />
=== Versuch 1 ===<br />
<br />
Für die Gussform wurde MDF verwendet. Da die Hitzebeständigkeit von MDF unklar war, sollte ein kleiner Versuch Aufschluss geben. Eine einfache Zylinderform mit einem Überlaufbecken bestehend aus 3 Platten gemässe Bild Gussform, Versuch 1. Da nur eine kleine Menge an Zinn erhitzt wurde, war die Temperatur vermutlich deutlich über dem Schmelzpunkt. Es entwickelte sich Dampf, was zu einem Gussfehler im Überlauf führte. Ausserdem wurde das MDF stark verkohlt, siehe Resultat. Dennoch ist das Resultat zufriedenstellend, sodass für einen weiteren Versuch wieder MDF verwendet werden kann.<br />
<br />
Versuch 1: <gallery><br />
File:Versuch_1_Gussform.jpg | Gussform<br />
File:Versuch_1_Guss.jpg | Frisch gegossen<br />
File:Versuch_1_Resultat.jpg | Resultat<br />
</gallery><br />
<br />
=== Versuch 2 ===<br />
<br />
Nun konnte der eigentliche Versuch gestartet werden. Das Zinn wurde wieder in der Stahlkanne erhitzt, jedoch nicht so stark wie in Versuch 1. Jedoch wurden diesmal alle Formen mit dem Lasercutter ausgeschnitten. Auch bei dieser Gussform diente die letzte MSF Platte als Überlauf. Das flüssige Zinn konnte bei der grösseren Form kontrollierter und langsamer gegossen werden, so dass die Form gleichmässig ausgefüllt werden konnte, siehe Bild [[:File:Versuch_2_Guss.jpg]]Frisch gegossen.<br />
<br />
Versuch 2 Guss:<br />
<gallery><br />
File:Versuch_2_Gussform.jpg | Gussform<br />
File:Versuch_2_Guss.jpg | Frisch gegossen<br />
</gallery><br />
<br />
Durch den Schwund lässt sich das Gussstück relativ gut aus der Form drücken, obwohl keine Formschrägen vorhanden waren. Vorher empfiehlt es sich, den Überlauf abzufräsen (Bild [[:File:Versuch_2_Fraesen.jpg| Überfäsen]], Resultat), da sich Zinn nur bedingt im Schraubstock einspannen lässt. Zinn vierbiegt sich sehr leicht.<br />
<br />
Versuch 2 Bearbeitung:<br />
<gallery><br />
File:Versuch_2_Fraesen.jpg | Überfäsen<br />
File:Versuch_2_Resultat.jpg | Resultat<br />
</gallery><br />
<br />
=== Rückblick ===<br />
<br />
Es ist gut möglich, Zinn in galaserte MDF Platten zu giessen. Der Zinn soll dabei langsam und konntrolliert in die Form eingegossen werden. Zudem soll das Gussmaterial nicht zu stark über den Schmelzpunkt erhitzt werden, da sich sonst blasen bilden. Damit die Formen schön mit den Schrauben positioniert werden können, sollen die Bohrungen beim Lasercutter um 0.25 mm kleiner gewählt werden. Zum Beispiel 3.75 mm für ein M4 Gewinde, da der Cutter übermass hat.<br />
<br />
= Skill-Share-Session =<br />
<br />
== Grundlagen der Arduinoprogrammierung ==<br />
<br />
Dieser Kurs wurde von unserer Gruppe angeboten und soll den Teilnehmern die Grundlage der Programierung eines Arduino UNO beibringen. Folgend werden die grundlegenden Befehle und deren Syntax vorgestellt. Der Aufbau folgt dem YouTube Tutorial von Max. Hier gelangst du zu dem Link: [https://www.youtube.com/watch?v=eaFvQG8wrGw&list=PLAB63281B90FB376E&index=3]<br />
<br />
=== Skript ===<br />
Der Code wird in einem Skript geschrieben. Dieses ist in zwei Bereiche aufgeteilt<br />
* Void setup() Dieses Skript wird einmalig ausgeführt und enthält zB. Input und output<br />
* Void loop() Dieser Teil des Skripts wird als Dauerschleife wiederholt<br />
<br />
==== Befehlseingabe ====<br />
<br />
Die Befehle werden nach folgender Syntax eingegeben:<br />
<br />
* Funktion(Parameter1, Parameter2);<br />
<br />
Dabei muss das «;» gesetzte werden, ausserdem spielen Gross- und Kleinbuchstaben eine Rolle.<br />
<br />
=== Variablen ===<br />
Übersichtshalber sollen sprechende Namen für die Bezeichnung von z.B. Outputs verwendet werden. Dabei können verschiedene Datentypen ausgewählt werden.<br />
<br />
==== Datentyp ====<br />
* int Ganze Zahlen von -32768 … 32767 z.B. 1, 48, -654<br />
* boolean Entweder true oder false<br />
* byte 8 Bit an Informationen z.B. 00010101 (=21)<br />
* char enthält 1 Byte Informationen, das ein Zeichen darstellt z.B. 65 = A<br />
* long grosse Zahlen von ca. -2.1 Milliarden bis 2.1 Milliarden z.B. 15636451<br />
* float Komazahlen z.B. 5.498<br />
* string Zeichenketten z.B. «Do it yourself»<br />
<br />
==== Deklaration Syntax ====<br />
<br />
* Datentyp Name = Wert;<br />
<br />
oder<br />
<br />
* Datentyp Name;<br />
* Name = Wert;<br />
<br />
====Ort der Deklaration====<br />
<br />
Die Variable muss immer im Teil des Skriptes deklariert sein, wo sie auch gebraucht wird. Wird die Variable im setup wie auch im loop benötigt, so kann man die Variable als sogenannte globale Variable oberhalb des Setups deklarieren.<br />
<br />
===If-Schleife===<br />
<br />
Bei der If-Schleife wird der Wert einer Variablen mit einem Vergleichswert verglichen. Falls der Vergleich positiv ist, wird der Code ausgeführt, ansonsten übersprungen. Dazu sind Vergleichsoperatoren notwendig.<br />
<br />
====Syntax====<br />
<br />
if(Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
====Vergleichsoperatoren====<br />
<br />
* == gleich<br />
* != ungleich<br />
* < kleiner<br />
* < grösser<br />
* <= kleiner gleich<br />
* >= grösser gleich<br />
<br />
===While-Schleife===<br />
<br />
Mit der While-Schleife wird die Bedingung fortlaufend geprüft. Stimmt diese, wird der Code ausgeführt, ansonsten wird der Code übersprungen. Es können die selben Vergleichsoperatoren wie bei der If-Schleife verwendet werden.<br />
<br />
====Syntax====<br />
<br />
while (Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
==Bildgebende Verfahren==<br />
<br />
Der Tag begann mit einer Einführung in die Bildgebenden Verfahren durch David Stadelmann. Hierbei erklärte er uns, verschiedene Methoden, um Bilder aus dem Körperinneren zu machen und welche Methode für die verschiedenen Gewebetypen gebraucht werden. Zudem Zeigte und erklärte er uns anhand von Beispielen was die Einzelnen Schattierungen aussagen könnten.<br />
<br />
[[DIY-MedTech Bildgebende Verfahren-Unterschiedliche Bildeindrücke - Team Frosch]]<br />
<br />
==Synths & Sound ==<br />
<br />
Danach ging es weiter mit dem Kurs Synths & Sounds. Diese Session wurde von [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] durchgeführt. Hierbei zeigte er uns, wie man mit verschieden erzeugten Schwingungen eine grosse Variation von Tönen generiert kann. Zudem auch wie man elektronisch gewisse Instrumente Simulieren könnte und durch die Aneinanderreihung verschiedenster Tonvariationen eine Melodie enstehen kann. Dies mit unterschiedlich Variationen von selbstgebauten Synthesizers.<br />
<br />
<gallery><br />
File:Sinthesizer1.jpg | Synthesizer 1<br />
File:Synthesizer2.jpg | Synthesizer 2<br />
</gallery><br />
<br />
== Schweissen ==<br />
<br />
Bei dem Skill-Share Workshop von [https://www.hackteria.org/wiki/Team_G2020/ Team G2020] konnten wir verschiedene Schweissverfahren kennenlernen und auch gleich anwenden.<br />
<br />
Es wurde uns das [https://de.wikipedia.org/wiki/Lichtbogenhandschwei%C3%9Fen/ Elektrodenschweissen], das [https://de.wikipedia.org/wiki/Schutzgasschwei%C3%9Fen/ MIG-Schweissen] und das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] nähergebracht.<br />
<br />
Dieser Workshop war für uns alle sehr interessant, da sich bisher noch keiner von uns so wirklich mit dem Schweissen und den verschiedenen Verfahren auskannte. An diesem Tag konnten wir nach einer kurzen Theorie gleich sofort selber handanlegen und die verschiedenen Schweissverfahren ausprobieren.<br />
<br />
Dabei mussten wir feststellen, dass es gar nicht so einfach ist wie es immer aussieht. Besonders das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] braucht sehr viel Übung und Geschick um wirklich schöne Schweissergebnisse zu erzielen.<br />
<br />
== Autonomes Nervensystem und das Hören in der Medizin ==<br />
<br />
Der Assistent Dr. Christian Gehringer, MSc. (ETH) hielt uns einen sehr interessanten Vortrag. Dabei ging es darum, dass wir die Anatomie kennenlernen und erkunden am Beispiel des Hörens z.B mit einem Stethoskop.<br />
<br />
[https://www.hackteria.org/wiki/Autonomes_Nervensystem_und_das_H%C3%B6ren_in_der_Medizin/ Autonomes Nervensystem und das Hören in der Medizin]</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=MedTechDIY20_Die_Profis&diff=41684MedTechDIY20 Die Profis2020-02-09T12:09:00Z<p>Tnroth: /* Versuch 1 */</p>
<hr />
<div>Hier gehts zurück auf: [[Medizintechnik DIY]]<br />
<br />
[[File:DieProfis.png|700px|right|none|Wochenplan]]<br />
<br />
= Team =<br />
<br />
'''Die Profis''' besteht aus den drei Studierenden '''Daniel Glur''', '''Lukas Roth''' und '''Daniel Zellweger''' der Hochschule Luzern. Im Rahmen der Blockwoche "DIY Medizintechnik" formierte sich das Team aus verschiedenen Studiengängen um auch interdisziplinär voneinander zu lernen und Wissen auszutauschen.<br />
<br />
'''Mitglieder:'''<br />
<br />
Maschinentechnik: <gallery><br />
File:DanielGlur.jpg | Daniel Glur<br />
File:LukasRoth.jpg | Lukas Roth<br />
</gallery><br />
<br />
Medizintechnik: <gallery><br />
File:DanielZellweger.jpg | Daniel Zellweger<br />
</gallery><br />
<br />
= Pflichtlektüre =<br />
<br />
'''How to control someone else's arm with your brain | Greg Gage'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/rSQNi5sAwuc<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
In Diesem Video wird gezeigt wie man über die Aufnahme eines Biologischen Signals, dieses an eine zweite Person weitergeleitet werden kann.<br />
Dies funktioniert jedoch nur aus verschiedenen Gründen bedingt. Nebst den allgemeinen Störeinflüsse aus der Messtechnik, kommen zusätzlich noch jene der Ansteuerung. Da das Signal nur von einzelnen Muskelfasern abgefangen wird, kann dieses nicht sämtliche Muskelfasern der zweiten Person Reizen. Dies hat zur folge, dass nur eine annähernd ähnliche Bewegung des Armes arfolgt.<br />
<br />
<br />
'''What is Open Source explained in LEGO'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/a8fHgx9mE5U<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Durch die Verwendung der Open Source Methode erhält man die Möglichkeit während des Projektes noch Erweiterungen oder Veränderungen anzustreben.<br />
<br />
'''"Why toys make good medical devices | Jose Gomez-Marquez'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/UHCT9SOBHs0<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Nebst dem Preis besitzen Spielzeuge diverse spezifische Funktionen. Da diese meist günstige Anschaffung auch einfach verändert werden kann, sind sie sehr geeignet dafür umgebaut zu werden. Somit sind Spielzeuge welche chemische oder sensorische Funktionen besitzen ein gefundenes fressen für den Hacker und eine Alternative für Regionen in welchen die finanzielle Situation teure Medizinprodukte nicht erlauben.<br />
<br />
= Einleitung =<br />
Die Blockwoche "DIY Medizintechnik" verbindet Anwendungen der Medizintechnik mit Do It Yourself (DIY) Ansätzen. Dadurch wird das tiefere Verständnis von Medizintechnischen Geräten durch einen direkten, interdisziplinären und möglichst selbstgesteuerten Zugang gefördert. Basierend auf verschiedenen elektrophysiologischen Messmodulen (EMG, EKG, EOG, EEG) entwickeln die Studierenden im Team Ideen für innovative Projekte. Erste Prototypen werden mit den Mitteln der Digitalen Fabrikation hergestellt und getestet. Tag für Tag stehen produktive "Hacks" auf dem Programm. Hacks sind sehr praxisbezogene Arbeitssequenzen wo die Studierenden Experimente durchführen sowie Prototypen entwickeln und bauen können. Dabei ist aber nicht nur die Medizintechnik zentral sondern auch der Interdisziplinäre Austausch sowie eine Skill-Share-Session wo die Studierenden ganz nach dem do it yourself Gedanken einen eigenen Workshop leiten können.<br />
Alle Erkenntnisse und Erfahrungen werden laufend in einem eigenen Wiki-Eintrag festgehalten und dokumentiert.<br />
<br />
Die Blockwoche wird von den beiden Dozenten [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] und [https://www.hackteria.org/wiki/Gaudi/ Urs Gaudenz] duchgeführt. Unterstützt wurden die Beiden von '''Dr. Christian Gehringer, MSc. (ETH)''' und [http://chrisobrist.ch/about// Chris Obrist]<br />
<br />
Maschinentechnik: <gallery><br />
File:MarkDusseiller.jpg | Dr. Marc R. Dusseiller<br />
File:UrsGaudenz.jpg | Urs Gaudenz<br />
</gallery><br />
<br />
= Planung =<br />
<br />
Die Blockwoche wird wie in folgendem Wochenplan unterteilt:<br />
<br />
[[File:Wochenplan2020.jpg|700px|thumb|none|Wochenplan]]<br />
<br />
= Wochenrückblick =<br />
== Die Woche in Bilder==<br />
[[File:ProfisInAction.PNG|400px]]<br />
[[File:Komponente.PNG|300px]]<br />
[[File:Aufbau.PNG|400px]]<br />
[[File:Motor_mit_Adapter.jpg|300px]]<br />
[[File:Pumpe.PNG|350px]]<br />
[[File:pulsmessung.jpg|450px]]<br />
[[File:Zusammenbau2.jpg|300px]]<br />
[[File:Foto 07.02.20, 11 14 53.jpg|300px]]<br />
[[File:DanielZellweger.jpg|300px]]<br />
<br />
== Tag 1==<br />
'''Einführung'''<br />
<br />
Wir traffen uns zu beginn im FABLAB, wo sich die Dozenten vorstellten und uns über Ihren bisherigen Werdegang informierten. Das interessante an der beruflichen Laufbahn der beiden ist, dass beide ein Studium abgeschlossen haben und heute einer Tätigkeit nachgehen, welche eigentlich nicht mehr viel mit dem damaligen Studium zu tun hat. Das vermittelt unserer Meinung nach, den Studenten eine etwas andere Sichtweise als die technische Hochschule. Es zeigt z.B. dass man nach einem Studium nicht gezwungen ist auf diesem Fachgebiet zu arbeiten sondern dass der Arbeitsmarkt noch sehr viele andere Möglichkeiten zu bieten hat.<br />
<br />
Nachdem sie sich Vorgestellt haben, stellten sie uns auch noch den Assistent vor. Dieser ist ein ausgebildeter Arzt welcher sich momentan für seinen zweiten Doktortitel engagiert. Von Ihm und seinem grossen medizinischen Fachwissen können wir als Studenten die ganze Woche profitieren.<br />
<br />
Danach überliessen die Dozenten uns Studenten das Wort. Es war eine etwas andere Vorstellungsrunde wie man sie noch nicht kannte. Dazu stand uns ein ganzer Tisch mit kuriosen Gegenständen, welche etwas mit dem DIY Gedanke zu tun haben, zur verfügung. Sie vorderten uns alle auf einen Gegenstand auszuwählen. Danach mussten wir uns Vorstellen und noch ein paar Worte dazu verlieren welche Gemeinsamkeiten wir mit dem ausgesuchten Gegenstand teilen.<br />
<br />
'''DIY (Do It Yourself)'''<br />
<br />
Das DIY Prinzip basiert auf eigenem experimentieren und learning by doing<br />
<br />
{{#widget:Iframe<br />
|url= https://www.youtube.com/watch?v=3zH_J12G9sQ<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
<br />
'''How to use Wiki'''<br />
<br />
Durch die 45 minütige Einführung in die Handhabung das Wiki durch Dr. Marc R. Dusseiller waren wir bereit unsere Erkenntnisse und Projekte, welche wir in dieser Woche erfahren und durchführen werden, in einer Zugänglichen Form, niederzuschreiben.<br />
<br />
== Tag 2 ==<br />
Am zweiten Tag begannen wir die Vorbereitung Skill-Share-Session. Diesbezüglich sollte jeder Teilnehmer einen Skill, welcher er erlernen möchte und einen Skill, den man beibringen könnte notieren. Diese wurden dann auf einer Tafel in Cluster aufgeteilt. Zwölf davon wurden als Skill-Share Workshops ausgewählt und die Teilnehmer konnten sich nach Belieben einschreiben.<br />
<br />
[[File:SkillSession2020.jpg|500px|thumb|none|Skill-share-session]]<br />
<br />
Während des zweiten Teils arbeiteten wir an unserem Experiment weiter, welches wir am Vortag begonnen haben.<br />
Dazu mussten wir die elektronischen Bauteile mit unserem Laptop verbinden und einen vorgefertigten Sketch laufen lassen.<br />
<br />
Nachdem wir den ersten Versuch erfolgreich durchführen konnten, versuchten wir mit dem Arduino einen Stepmotor anzusteuern. Dabei stiessen wir jedoch auf einige Schwierigkeiten. Da wir diese bis zur Einführung des Lasercutters und des 3D-Druckers fertig haben sollten. Siehe [[#Hack 0]]<br />
<br />
Unteranderem wurde unsere Skill-Share-Session über Arduino vorbereitet.<br />
<br />
Am Abend kam [http://chrisobrist.ch/about// Chris Obrist] zu Besuch und unterhielt uns mit einer wundervollen musikalischen Darbietung.<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/Hj1Ogr8137o<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
== Tag 3 ==<br />
Von 9:00 Uhr bis nach dem Mittag um 14:00 Uhr waren wir alle mit der [[#Skill-Share-Session]] beschäftigt.<br />
<br />
Danach hatten wir Zeit um den nächsten Hack vorzubereiten und zu planen.<br />
<br />
== Tag 4 ==<br />
Den Vormittag verbrachten wir weiter mit dem Hack 1, welchen wir dann vor der Mittagspause den Dozenten und allen Mitstudierenden präsentieren durften. Leider litten wir während des ganzen Hack 1 sehr unter Zeitdruck, was auf eine turbulente Projektphase zurückzuführen ist. Mehr dazu erfährst du im [[#Hack 1]].<br />
<br />
Nach einer kurzen Inspirationphase entschieden wir uns dafür eine kleine Spritzenpumpe zu basteln. [[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 5 ==<br />
Am Tag 5 ging es darum die Einzelteile physikalisch sowie über ein Funktionierendes Arduinoprogamm zum laufen zu bringen.<br />
[[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 6 ==<br />
Zum Abschluss durften wir alle Hacks der verschiedenen Teams begutachten. Interessant waren die spontanen Vorgehensweisen und auch die daraus entstandenen Produkte. Viele Teams suchten zuerst das Material und erst danach die Ideen. So entstanden die unterschiedlichsten Prototypen.<br />
Zudem Reflektierten wird die Blockwoche. Im Allgemeinen gefielen die Freiheit und auch der unkomplizierte Teamgeist untereinander. Besten Dank auch an die Organisatoren der Blockwoche.<br />
<br />
= Experimente =<br />
Bei den Experimenten sollte es darum gehen aus unterschiedlichsten Einzelteilen ein Produkt zu erschaffen. Dieser Prozess brachte uns dazu über die Grenzen unseres altäglichem Denken zu springen und in der Verbindung der einzelnen Bereiche solcher Produkte besser zu verstehen.<br />
<br />
== Hack 0 ==<br />
<br />
<br />
===Versuchsaufbau 1===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 1===<br />
Nach den Inputs der Dozenten verbrachten wir hauptsächlich die Zeit damit den Muscle Spiker Shield nach der Anleitung mit den dazugehörigen Teilen zusammenzulöten.[https://backyardbrains.com/products/files/MuscleSpikerShield.v.2.11.BuildingInstructions.pdf]V2.11<br />
Nebenbei machten wir unsere ersten Schritte in Arduino.<br />
Als wir unsere mechatronischen Komponenten zusammengestellt und ein Grundverständnis von Arduino angeeignet haben, verbanden wir dies in einem Experiment. <br />
Das Experiment welches wir durchführten nennt man Control Machines with your Brain und ist auf der Seite von [https://backyardbrains.com/experiments/muscleSpikerShield/ Backyard Brains] nachzusehen.<br />
<br />
Für den Versuch wurden Elektroden an den Testpersonen angeschlossen und über den Arduino ausgelesen.<br />
Der Versuch wurde mit zwei Testpersonen durchgeführt. Dabei fiel uns nebst der Kontrolle der LED's auch auf, dass der Puls gemessen wurde. Dies unabhängig von der Position der Elektroden. Vermutlich reagieren die Elektroden zu sensitiv für diese Anwendung.<br />
<br />
<br />
[[File:UeberblickVersuchTeamD.jpg|400px|thumb|none|Versuchsaufbau]]<br />
[[File:Versuchsaufbau1TeamD.jpg|400px|thumb|none|Elektrodenbefestigung]]<br />
[[File:MessungDanielGlur.jpg|400px|thumb|none|Messung von Daniels Puls]]<br />
<br />
===Versuchsaufbau 2===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 2===<br />
<br />
Als zweites Experiment versuchten wir durch das anspannen der Muskeln einen Servomotor anzusteuern. Wie es auch auf der Homepage von [https://backyardbrains.com/experiments/MuscleSpikerShield_GripperHand/ Backyard Brains] anzutreffen ist. Dieser Versuch konnte aber leider aus Zeitgründen nicht zu Ende geführt werden. Wir konnten lediglich das Arduinoprogramm laden und etwas anpassen.<br />
<br />
===Reflexion===<br />
<br />
Der Hack 0 war in der Hinsicht sehr interessant, da wir alle unsere ersten Erfahrungen mit einem Arduino machen konnten. Einige von unserem Team hatten bisher auch noch nie auf einer Printplatte irgendwelche Widerstände oder Schalter etc. gelötet. Ebenso war es erstaunlich, dass man mit so wenig so viel verschiedene Sachen machen kann. Keiner von uns hat gedacht dass wir bereits am ersten Tag irgend etwas mit unseren Muskeln kontrollieren könnten. Insgesamt kam der Hack 0 gut bei uns an und wir alle konnten einiges davon profitieren und hoffentlich auch den weiteren Hacks weiterverwenden.<br />
<br />
== Hack 1: Baseball-Cap mit Ventilator ==<br />
<br />
Der Hack 1 beschreibt die Konzept- und Testphase des ersten Prototyps.<br />
<br />
Zu Beginn waren wir uns sehr unschlüssig was wir wirklich bauen wollen. Also entschieden wir uns für ein weiteres Experiment mit einem Bausatz von Backyard Brains. Wir versuchten durch die Funktion des Heart and Brain Spiker Shield einen Ventilator anzusteuern. Der Gedanke, welcher uns auf diese Idee führte, kennt wohl jeder Student. Während einer Prüfung kommt so mancher ins Grübeln und in harten Fällen kommt es auch vor dass einem eine Schweissperle von der Stirn läuft. Um in solchen Fällen für die nötige Kühlung zu sorgen, sollen Sensoren die Hirnströme gemessen und als Signal wiedergeben werden um damit einen Ventilator anzuschalten.<br />
<br />
Zu unserem eigenen Erstaunen erhielten wir sogar ein Signal aus unserer Messung. Es stellte sich aber sehr bald heraus, dass das wohl nicht die Hirnströme waren sondern eher Bewegungen des Kopfs und der Kabel. Denn die Sensoren sind recht empfindlich gegen solche Einflüsse. Zudem kam noch, dass die Sensoren über den Haaren angebracht wurden, was das Signal der Hirnströme noch zusätzlich verschlechterte. Nach einigen Versuchen sahen wir ein, dass das wohl eine zu grosse Herausforderung war und wir uns besser an einen einfacheren Versuch versuchen sollten.<br />
<br />
[[File:heart_and_brain.jpg|300px|thumb|none|Signal aus Messung der "Hirnströme"]]<br />
[[File:EEGDanielGlur.jpg|500px|thumb|none|Daniel beim messen der "Hirnströme"]]<br />
<br />
Also beschlossen wir uns anstelle der Hirnströme den Puls zu messen. Denn während einer Prüfung kann es durchaus auch vorkommen, dass der Puls etwas ansteigt. Die Messungen sollten dann ausgelesen werden und wenn der Puls eine gewisse Frequenz übersteigt, schaltet ein Ventilator ein um den Studenten wieder etwas zu beruhigen.<br />
<br />
Für diesen Versuch platzierten wir Sensoren am Unterarm und an der Handoberfläche. Idealerweise sollten laut Assistent Christian die Sensoren aber so weit wie möglich voneinander entfernt, an einer anderen Körperstelle angebracht werden um eine gewisse Referenz zu haben und um sicherzustellen, dass man wirklich den Puls misst. Unsere Kabel waren aber leider etwas zu kurz. Wir erhielten trotzdem ein relativ gutes Signal von welchem man davon ausgehen konnte, dass es sich um den Puls handelte. Jetzt nur noch das Signal auswerten, einen Frequenzbegrenzer programmieren und mithilfe von einem Arduino UNO den Ventilator ansteuern... Dachten wir... Dies war allerdings etwas Schwieriger als erwartet und überstieg unsere Kompetenzen. Das führte uns dazu auch diesen Versuch an dieser Stelle abzubrechen und nochmal zu überdenken.<br />
<br />
<br />
[[File:puls.png|400px|thumb|none|Pulssignal]]<br />
[[File:pulsmessung.jpg|400px|thumb|none|Pulssmessung]]<br />
<br />
<br />
Nun rannte uns schon langsam die Zeit davon. Doch dann kam uns die Idee, welche wir schon zu Beginn benötigt hätten. Und zwar wollten wir einen Ventilator auf einem Baseball-Cap anbringen und diesen ansteuern wenn ein gewisses Temperaturniveau unter dem Cap überschritten wird wird. Dazu wird ein 12V Ventilator via Relais von dem Arduino angesteuert. Weil der Arduino nur eine Spannung von 5V liefert, musste ein 12V Netzgerät den Ventilator mit Strom versorgen. Damit man den Ventilator so schalten konnte, damit er den Strom über das 12V Netzgerät bezieht, mussten wir noch ein Relais einbauen. Den Code für den Arduino bezogen wir aus verschiedenen ähnlichen Projekten aus dem Internet und passten ihn spezifisch für unsere Anwendung an. Für das auslesen der Temperatur mussten wir zuerst zwei Libreries herunterladen (DallasTemperature und OneWire).<br />
<br />
[[File:Komponente.PNG|400px|thumb|none|Verbaute Komponenten]]<br />
<br />
Nun mussten wir noch den Ventilator am Baseball-Cap anbringen. Dafür wurde eine Halterung im CAD konstruiert und mit einem 3D-Drucker ausgedruckt. Die Teile wurden danach zusammengesteckt und mit dem Baseball-Cap verschraubt. Natürlich wurde zuvor ein Loch in das Cap geschnitten, damit der Ventilator auch seinen Zweck erfüllen kann und dem Studenten einen kühlen Kopf verschafft.<br />
<br />
[[File:Aufbau.PNG|350px|thumb|none|3D-Modell im CAD]]<br />
<br />
[[File:Zusammenbau1.jpg|350px]]<br />
[[File:Zusammenbau2.jpg|350px]]<br />
<br />
Nun wurde unser Prototyp getestet. Der Sensor erfüllte seinen Dienst und wir konnten erfolgreich die Temperaturen messen. Jedoch war das Relais während dem Testen ständig eingeschalten und der Ventilator lief die ganze Zeit auch wenn die Temperatur den Minimalwert unterschritten hatte. Es hat sich also irgendwo in unserem Programm einen Fehler eingeschlichen. Den galt es nun zu finden und zu beheben. Dazu bauten wir einen Druckknopf ein um zu überprüfen ob das Relais defekt war und um die Fehlerquellen etwas einzugrenzen.<br />
<br />
[[File:Temperatur.jpg|350px]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/TQnGa5WiGS4<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
Der Druckknopf funktionierte, das Relais schaltete perfekt ein und aus und der Ventilator wurde an- und abgestellt. Somit wissen wir nun wo der Fehler zu suchen ist und können versuchen das Programm an diesen Stellen zu bereinigen. Nur ist jetzt schon Donnerstag Nachmittag und der Hack 2 hat schon begonnen. Wir alle wurden aufgefordert unseren bisherigen Prototypen aufzugeben und etwas neues, anderes zu versuchen und zu testen. Also legen wir schweren Herzens unser erster Prototyp beiseite und widmen unsere Kreativität dem nächsten Hack.<br />
<br />
=== Reflexion ===<br />
Der Hack 1 hat uns gezeigt, dass es gar nicht so einfach ist beim ersten Versuch ein brauchbares Resultat zu erzielen. Jedoch konnten wir so aus zwei vorhergehenden, fehlgeschlagenen Ansätzen eine Idee weiterentwickeln. Somit konnten wir mit unseren Kompetenzen und den Erfahrungen aus dem Hack 0 ein zufriedenstellendes Resultat erzielen. Durch die zwei Versuche zuvor ging leider recht viel Zeit "verloren", welche wir sehr benötigt hätten um unser erster Prototyp fehlerfrei hinzukriegen. Es war uns auch eine Lehre, dass man nicht zu lange an einer Sache verharren sollte wenn einem nur wenig Zeit zur Verfügung steht. Manchmal ist es besser man wirft alles nochmal über den Haufen und beginnt von vorne. Trotz allen Strapazen während des Hack 1 sind wir mit unserem ersten Prototyp sehr zufrieden und konnten auch bei diesem Versuch wieder viel profitieren und mitnehmen. Nun blicken wir gespannt nach vorne auf den nächsten Hack.<br />
<br />
<br />
===Code===<br />
<br />
Wir konnten zwar die Temperatur herauslesen und das Relais über einen Butten steuern, jedoch die Steuerung anhand der Temperatur geling uns nicht.<br />
<br />
<pre><br />
/********************************************************************/<br />
// First we include the libraries<br />
#include <OneWire.h> <br />
#include <DallasTemperature.h><br />
/********************************************************************/<br />
// Data wire is plugged into pin 2 on the Arduino <br />
#define ONE_WIRE_BUS 2 <br />
<br />
float tempReading;<br />
/********************************************************************/<br />
// Setup a oneWire instance to communicate with any OneWire devices <br />
// (not just Maxim/Dallas temperature ICs) <br />
OneWire oneWire(ONE_WIRE_BUS); <br />
/********************************************************************/<br />
// Pass our oneWire reference to Dallas Temperature. <br />
DallasTemperature sensors(&oneWire);<br />
/********************************************************************/ <br />
int relayPin = 4; // Relay Singnal lead to Digital Pin [D2-D12]<br />
<br />
float maxTemperature = 30.00; // The Max Temperature allowed<br />
float minTemperature = 25.00; // The Min Temperature allowed<br />
<br />
// constants won't change. They're used here to set pin numbers:<br />
const int buttonPin = 8; // the number of the pushbutton pin<br />
const int ledPin = 4; // the number of the LED pin<br />
<br />
// variables will change:<br />
int buttonState = 0; // variable for reading the pushbutton status<br />
<br />
void setup(void) {<br />
// initialize the LED pin as an output:<br />
pinMode(ledPin, OUTPUT);<br />
// initialize the pushbutton pin as an input:<br />
pinMode(buttonPin, INPUT);<br />
<br />
Serial.begin(9600); <br />
Serial.println("Dallas Temperature IC Control Library Demo"); <br />
// Start up the library <br />
sensors.begin(); <br />
}<br />
<br />
void loop(void) <br />
{ <br />
// call sensors.requestTemperatures() to issue a global temperature <br />
// request to all devices on the bus <br />
/********************************************************************/<br />
Serial.print(" Requesting temperatures..."); <br />
sensors.requestTemperatures(); // Send the command to get temperature readings <br />
Serial.println("DONE"); <br />
/********************************************************************/<br />
Serial.print("Temperature is: "); <br />
Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"? <br />
// You can have more than one DS18B20 on the same bus. <br />
// 0 refers to the first IC on the wire <br />
delay(1000); // Check Temperature every second<br />
<br />
float temperature = getTemperature();<br />
if(temperature >= maxTemperature){<br />
powerOnRelay();<br />
} else if (temperature <= minTemperature) {<br />
powerOffRelay();<br />
}<br />
delay(1000); // Check tempertature every second<br />
<br />
} <br />
void powerOnRelay() {<br />
digitalWrite(relayPin, HIGH);<br />
Serial.println("Relay On");<br />
}<br />
<br />
void powerOffRelay() {<br />
digitalWrite(relayPin, LOW);<br />
Serial.println("Relay Off");<br />
}<br />
float getTemperature(){<br />
tempReading = digitalRead(ONE_WIRE_BUS);<br />
<br />
// read the state of the pushbutton value:<br />
buttonState = digitalRead(buttonPin);<br />
<br />
// check if the pushbutton is pressed. If it is, the buttonState is HIGH:<br />
if (buttonState == HIGH) {<br />
// turn LED on:<br />
digitalWrite(ledPin, HIGH);<br />
} else {<br />
// turn LED off:<br />
digitalWrite(ledPin, LOW);<br />
}<br />
}<br />
</pre><br />
<br />
== Hack 2: Spritzenpumpe ==<br />
<br />
Nachdem der Hack 1 abgeschlossen war, machten wir uns aufs Neue darüber Gedanken was wir für einen Prototyp für den Hack 2 bauen wollen. Urs hat nach dem Abschluss von Hack 1 gesagt, wir sollten uns ein komplett neues Produkt überlegen, welches möglicherweise auch etwas mit der Medizintechnik zu tun hat. Nach einem Brainstorming kamen wir noch nicht so richtig auf einen grünen Zweig. So kamen wir auf die Idee uns einen Kaffee zu holen und einfach mal durch das FABLAB zu laufen um alles Mögliche anzuschauen, in die Hand zu nehmen und uns von all diesen Gegenständen inspirieren zu lassen. So kamen uns diverse Gegenstände in die Finger. darunter waren Servomotoren sowie einige DC-Motoren, eine Spritze, eine Pumpe, ein Micro-Switch Schalter, ein Potentiometer und vieles mehr. Diese Gegenstände haben wir dann auf unserem Gruppentisch ausgebreitet und uns Gedanken darüber gemacht was wir damit wohl anstellen konnten zum Thema Medizintechnik. So entstanden relativ schnell einige Ideen. Wir haben uns schlussendlich dafür entschieden ein Dosiergerät für eine medizinische Spritze zu machen. Dieses sollte so funktionieren, dass wir eine Spritze in eine Vorrichtung legen und über einen DC-Motor zum Einfahren bzw. Ausfahren bringen. Dazu muss die Drehbewegung des Motors in eine Lineare Bewegung umgeleitet werden. Zudem muss ggf. auch die Drehzahl des Motors durch ein Potentiometer reguliert werden können um einen zu schnellen Aus- oder Einfahrvorgang zu verhindern. Soviel zu zu den technischen Überlegungen. <br />
<br />
Sofort nach dem Entscheid suchten wir nach einem geeigneten Motor. Dieser sollte dabei eine eher tiefe Drehzahl haben damit die Spritze nur langsam ein- und ausfährt. Zudem suchten wir im Internet nach einem geeigneten Mechanismus der die Drehbewegung in eine lineare Bewegung umwandelt. Denn wir hatten leider zu wenig zeit um alles selber zu entwerfen und zu konstruieren. So wurden wir auf auf der Hompage von [https://www.thingiverse.com/thing:2797132/ Thingiverse] schliesslich fündig. Also konnte wir die Folgenden Komponenten herunterladen und mit dem 3D-Drucker ausdrucken.<br />
<br />
Komponenten: <gallery><br />
File:Halteplatte.PNG | Halteplatte<br />
File:Zahnrad.PNG | Zahnradpaar<br />
File:Zahnradpaar.PNG | Zahnstange<br />
File:Zahnstange.PNG | Zahnrad<br />
</gallery><br />
<br />
Da wir einen anderen Motor verwendeten als für diesen Mechanismus vorgesehen wäre, mussten wir noch eine passende Adapterplatte konstruieren, damit der Motor auch auf die Vorrichtung passt.<br />
<br />
<gallery><br />
File:Adapterplatte.PNG | Adapterplatte<br />
File:Motor.PNG | Motor<br />
File:Motor_mit_Adapter.jpg | Motor mit Adapter<br />
</gallery><br />
<br />
Der Motor benötigt, wie auch der Ventilator von Hack 1, eine Spannung von 12V für den Betrieb. Also mussten wir erneut das 12V Netzgerät verwenden. Damit unser zweiter Prototyp auch die gewünschte Fördermenge fördern kann, muss die Zeitdauer, in welcher gefördert werden soll, definiert werden. Das dazugehörige Programm wird mit einem Arduino UNO implementiert. Der Zugehörige Code haben wir durch Recherche im Internet und durch persönliches erweitern und anpassen erstellt. Die Drehzahl des Motors darf nicht zu hoch sein damit man die Fördermenge auch sinnvoll einstellen kann. Für diese Anwendung wird ein Potentiometer zwischen Relais und Motor gehängt. So kann die Motorspannung reguliert und die Drehzahl anforderungsgemäss eingestellt werden. Nachfolgend wird der Prozessablauf kurz beschrieben.<br />
<br />
Mit einem Knopfdruck wird wird ein Relais geschalten und der Motor wird angesteuert. Die Drehzahl des Motors wird über ein Getriebe reduziert. Die Zahnräder greifen auf eine Zahnstange und wandeln die Drehbewegung in eine lineare Bewegung um. An der Zahnstange wird der Stössel der Spritze befestigt. Der Rest der Spritze wird mit einem Kabelbinder fest mit der Bodenplatte verbunden damit sich dieser Teil nicht bewegen kann. Die programmierte Zeitdauer bestimmt welche Menge an Flüssigkeit gefördert werden soll.<br />
<br />
[[File:Pumpe.PNG|500px|thumb|none|Aufbau der Spritzenpumpe]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/PLG_S3GtVI8<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
=== Reflexion ===<br />
<br />
Anders als beim Hack 1 kamen waren wir uns bei diesem Hack sehr schnell einig was genau wir bauen möchten. Die ganze Ideenfindung erledigte sich sehr schnell und wir konnten nach bereits wenigen Stunden mit dem programmieren des Arduinos beginnen. Wie wir bereits im Hack 1 erfahren durften, ist das bei dem gedrängten Zeitplan dieser Woche ein grosser Vorteil. Rückblickend können wir urteilen, dass der Hack 2 aus unserer Sicht ein erfreuendes Erfolgserlebnis war. Unser zweiter Prototyp funktioniert genau so wie wir uns das von Beginn an vorgestellt haben. Per Knopfdruck fördert unser Prototyp eine gewisse Menge an Flüssigkeit.<br />
<br />
=== Code ===<br />
<br />
<pre><br />
<br />
bool geschaltet = false;<br />
int RelaisPin = 10; <br />
int tasterPin = 2;<br />
int empfindlichkeit = 200;<br />
<br />
void setup() {<br />
<br />
pinMode( tasterPin, INPUT_PULLUP);<br />
pinMode( RelaisPin, OUTPUT);<br />
<br />
}<br />
<br />
void loop() {<br />
<br />
if (digitalRead(tasterPin) == LOW) <br />
{<br />
if (geschaltet == false) {<br />
geschaltet = true;<br />
}<br />
else {<br />
geschaltet = false;<br />
}<br />
}<br />
<br />
if (geschaltet == true) {<br />
digitalWrite(RelaisPin, HIGH);<br />
delay(1000);<br />
geschaltet = false; <br />
}<br />
<br />
if (geschaltet == false) {<br />
digitalWrite(RelaisPin, LOW);<br />
}<br />
<br />
delay(empfindlichkeit);<br />
}<br />
</pre><br />
<br />
== Hack 3: Zinnguss ==<br />
<br />
Für diesen Hack wurde Zinn gegossen. Dank dem tiefen Schmelzpunkt lässt sich der Gusswerkstoff in einer Stahlkanne mit einem Brenner einer Autogenschweissanlage leicht erhitzen.<br />
<br />
[[File:Kanne.jpg|300px|thumb|none|Stahlkanne mit flüssigem Zinn]]<br />
<br />
=== Versuch 1 ===<br />
<br />
Für die Gussform wurde MDF verwendet. Da die Hitzebeständigkeit von MDF unklar war, sollte ein kleiner Versuch Aufschluss geben. Eine einfache Zylinderform mit einem Überlaufbecken bestehend aus 3 Platten gemässe Bild Gussform, Versuch 1. Da nur eine kleine Menge an Zinn erhitzt wurde, war die Temperatur vermutlich deutlich über dem Schmelzpunkt. Es entwickelte sich Dampf, was zu einem Gussfehler im Überlauf führte. Ausserdem wurde das MDF stark verkohlt, siehe Resultat. Dennoch ist das Resultat zufriedenstellend, sodass für einen weiteren Versuch wieder MDF verwendet werden kann.<br />
<br />
Versuch 1: <gallery><br />
File:Versuch_1_Gussform.jpg | Gussform<br />
File:Versuch_1_Guss.jpg | Frisch gegossen<br />
File:Versuch_1_Resultat.jpg | Resultat<br />
</gallery><br />
<br />
=== Versuch 2 ===<br />
<br />
Nun konnte der eigentliche Versuch gestartet werden. Das Zinn wurde wieder in der Stahlkanne erhitzt, jedoch nicht so stark wie in Versuch 1. Jedoch wurden diesmal alle Formen mit dem Lasercutter ausgeschnitten. Auch bei dieser Gussform diente die letzte MSF Platte als Überlauf. Das flüssige Zinn konnte bei der grösseren Form kontrollierter und langsamer gegossen werden, so dass die Form gleichmässig ausgefüllt werden konnte, siehe Bild [[:File:Versuch_2_Guss.jpg]]Frisch gegossen.<br />
<br />
Versuch 2 Guss:<br />
<gallery><br />
File:Versuch_2_Gussform.jpg | Gussform<br />
File:Versuch_2_Guss.jpg | Frisch gegossen<br />
</gallery><br />
<br />
Durch den Schwund lässt sich das Gussstück relativ gut aus der Form drücken, obwohl keine Formschrägen vorhanden waren. Vorher empfiehlt es sich, den Überlauf abzufräsen (Bild [[:File:Versuch_2_Fraesen.jpg]]Überfäsen, [[:File:Versuch_2_Resultat.jpg]]Resultat), da sich Zinn nur bedingt im Schraubstock einspannen lässt. Zinn vierbiegt sich sehr leicht.<br />
<br />
Versuch 2 Bearbeitung:<br />
<gallery><br />
File:Versuch_2_Fraesen.jpg | Überfäsen<br />
File:Versuch_2_Resultat.jpg | Resultat<br />
</gallery><br />
<br />
=== Rückblick ===<br />
<br />
Es ist gut möglich, Zinn in galaserte MDF Platten zu giessen. Der Zinn soll dabei langsam und konntrolliert in die Form eingegossen werden. Zudem soll das Gussmaterial nicht zu stark über den Schmelzpunkt erhitzt werden, da sich sonst blasen bilden. Damit die Formen schön mit den Schrauben positioniert werden können, sollen die Bohrungen beim Lasercutter um 0.25 mm kleiner gewählt werden. Zum Beispiel 3.75 mm für ein M4 Gewinde, da der Cutter übermass hat.<br />
<br />
= Skill-Share-Session =<br />
<br />
== Grundlagen der Arduinoprogrammierung ==<br />
<br />
Dieser Kurs wurde von unserer Gruppe angeboten und soll den Teilnehmern die Grundlage der Programierung eines Arduino UNO beibringen. Folgend werden die grundlegenden Befehle und deren Syntax vorgestellt. Der Aufbau folgt dem YouTube Tutorial von Max. Hier gelangst du zu dem Link: [https://www.youtube.com/watch?v=eaFvQG8wrGw&list=PLAB63281B90FB376E&index=3]<br />
<br />
=== Skript ===<br />
Der Code wird in einem Skript geschrieben. Dieses ist in zwei Bereiche aufgeteilt<br />
* Void setup() Dieses Skript wird einmalig ausgeführt und enthält zB. Input und output<br />
* Void loop() Dieser Teil des Skripts wird als Dauerschleife wiederholt<br />
<br />
==== Befehlseingabe ====<br />
<br />
Die Befehle werden nach folgender Syntax eingegeben:<br />
<br />
* Funktion(Parameter1, Parameter2);<br />
<br />
Dabei muss das «;» gesetzte werden, ausserdem spielen Gross- und Kleinbuchstaben eine Rolle.<br />
<br />
=== Variablen ===<br />
Übersichtshalber sollen sprechende Namen für die Bezeichnung von z.B. Outputs verwendet werden. Dabei können verschiedene Datentypen ausgewählt werden.<br />
<br />
==== Datentyp ====<br />
* int Ganze Zahlen von -32768 … 32767 z.B. 1, 48, -654<br />
* boolean Entweder true oder false<br />
* byte 8 Bit an Informationen z.B. 00010101 (=21)<br />
* char enthält 1 Byte Informationen, das ein Zeichen darstellt z.B. 65 = A<br />
* long grosse Zahlen von ca. -2.1 Milliarden bis 2.1 Milliarden z.B. 15636451<br />
* float Komazahlen z.B. 5.498<br />
* string Zeichenketten z.B. «Do it yourself»<br />
<br />
==== Deklaration Syntax ====<br />
<br />
* Datentyp Name = Wert;<br />
<br />
oder<br />
<br />
* Datentyp Name;<br />
* Name = Wert;<br />
<br />
====Ort der Deklaration====<br />
<br />
Die Variable muss immer im Teil des Skriptes deklariert sein, wo sie auch gebraucht wird. Wird die Variable im setup wie auch im loop benötigt, so kann man die Variable als sogenannte globale Variable oberhalb des Setups deklarieren.<br />
<br />
===If-Schleife===<br />
<br />
Bei der If-Schleife wird der Wert einer Variablen mit einem Vergleichswert verglichen. Falls der Vergleich positiv ist, wird der Code ausgeführt, ansonsten übersprungen. Dazu sind Vergleichsoperatoren notwendig.<br />
<br />
====Syntax====<br />
<br />
if(Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
====Vergleichsoperatoren====<br />
<br />
* == gleich<br />
* != ungleich<br />
* < kleiner<br />
* < grösser<br />
* <= kleiner gleich<br />
* >= grösser gleich<br />
<br />
===While-Schleife===<br />
<br />
Mit der While-Schleife wird die Bedingung fortlaufend geprüft. Stimmt diese, wird der Code ausgeführt, ansonsten wird der Code übersprungen. Es können die selben Vergleichsoperatoren wie bei der If-Schleife verwendet werden.<br />
<br />
====Syntax====<br />
<br />
while (Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
==Bildgebende Verfahren==<br />
<br />
Der Tag begann mit einer Einführung in die Bildgebenden Verfahren durch David Stadelmann. Hierbei erklärte er uns, verschiedene Methoden, um Bilder aus dem Körperinneren zu machen und welche Methode für die verschiedenen Gewebetypen gebraucht werden. Zudem Zeigte und erklärte er uns anhand von Beispielen was die Einzelnen Schattierungen aussagen könnten.<br />
<br />
[[DIY-MedTech Bildgebende Verfahren-Unterschiedliche Bildeindrücke - Team Frosch]]<br />
<br />
==Synths & Sound ==<br />
<br />
Danach ging es weiter mit dem Kurs Synths & Sounds. Diese Session wurde von [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] durchgeführt. Hierbei zeigte er uns, wie man mit verschieden erzeugten Schwingungen eine grosse Variation von Tönen generiert kann. Zudem auch wie man elektronisch gewisse Instrumente Simulieren könnte und durch die Aneinanderreihung verschiedenster Tonvariationen eine Melodie enstehen kann. Dies mit unterschiedlich Variationen von selbstgebauten Synthesizers.<br />
<br />
<gallery><br />
File:Sinthesizer1.jpg | Synthesizer 1<br />
File:Synthesizer2.jpg | Synthesizer 2<br />
</gallery><br />
<br />
== Schweissen ==<br />
<br />
Bei dem Skill-Share Workshop von [https://www.hackteria.org/wiki/Team_G2020/ Team G2020] konnten wir verschiedene Schweissverfahren kennenlernen und auch gleich anwenden.<br />
<br />
Es wurde uns das [https://de.wikipedia.org/wiki/Lichtbogenhandschwei%C3%9Fen/ Elektrodenschweissen], das [https://de.wikipedia.org/wiki/Schutzgasschwei%C3%9Fen/ MIG-Schweissen] und das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] nähergebracht.<br />
<br />
Dieser Workshop war für uns alle sehr interessant, da sich bisher noch keiner von uns so wirklich mit dem Schweissen und den verschiedenen Verfahren auskannte. An diesem Tag konnten wir nach einer kurzen Theorie gleich sofort selber handanlegen und die verschiedenen Schweissverfahren ausprobieren.<br />
<br />
Dabei mussten wir feststellen, dass es gar nicht so einfach ist wie es immer aussieht. Besonders das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] braucht sehr viel Übung und Geschick um wirklich schöne Schweissergebnisse zu erzielen.<br />
<br />
== Autonomes Nervensystem und das Hören in der Medizin ==<br />
<br />
Der Assistent Dr. Christian Gehringer, MSc. (ETH) hielt uns einen sehr interessanten Vortrag. Dabei ging es darum, dass wir die Anatomie kennenlernen und erkunden am Beispiel des Hörens z.B mit einem Stethoskop.<br />
<br />
[https://www.hackteria.org/wiki/Autonomes_Nervensystem_und_das_H%C3%B6ren_in_der_Medizin/ Autonomes Nervensystem und das Hören in der Medizin]</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=MedTechDIY20_Die_Profis&diff=41679MedTechDIY20 Die Profis2020-02-09T12:04:14Z<p>Tnroth: /* Hack 3: Zinnguss */</p>
<hr />
<div>Hier gehts zurück auf: [[Medizintechnik DIY]]<br />
<br />
[[File:DieProfis.png|700px|right|none|Wochenplan]]<br />
<br />
= Team =<br />
<br />
'''Die Profis''' besteht aus den drei Studierenden '''Daniel Glur''', '''Lukas Roth''' und '''Daniel Zellweger''' der Hochschule Luzern. Im Rahmen der Blockwoche "DIY Medizintechnik" formierte sich das Team aus verschiedenen Studiengängen um auch interdisziplinär voneinander zu lernen und Wissen auszutauschen.<br />
<br />
'''Mitglieder:'''<br />
<br />
Maschinentechnik: <gallery><br />
File:DanielGlur.jpg | Daniel Glur<br />
File:LukasRoth.jpg | Lukas Roth<br />
</gallery><br />
<br />
Medizintechnik: <gallery><br />
File:DanielZellweger.jpg | Daniel Zellweger<br />
</gallery><br />
<br />
= Pflichtlektüre =<br />
<br />
'''How to control someone else's arm with your brain | Greg Gage'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/rSQNi5sAwuc<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
In Diesem Video wird gezeigt wie man über die Aufnahme eines Biologischen Signals, dieses an eine zweite Person weitergeleitet werden kann.<br />
Dies funktioniert jedoch nur aus verschiedenen Gründen bedingt. Nebst den allgemeinen Störeinflüsse aus der Messtechnik, kommen zusätzlich noch jene der Ansteuerung. Da das Signal nur von einzelnen Muskelfasern abgefangen wird, kann dieses nicht sämtliche Muskelfasern der zweiten Person Reizen. Dies hat zur folge, dass nur eine annähernd ähnliche Bewegung des Armes arfolgt.<br />
<br />
<br />
'''What is Open Source explained in LEGO'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/a8fHgx9mE5U<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Durch die Verwendung der Open Source Methode erhält man die Möglichkeit während des Projektes noch Erweiterungen oder Veränderungen anzustreben.<br />
<br />
'''"Why toys make good medical devices | Jose Gomez-Marquez'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/UHCT9SOBHs0<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Nebst dem Preis besitzen Spielzeuge diverse spezifische Funktionen. Da diese meist günstige Anschaffung auch einfach verändert werden kann, sind sie sehr geeignet dafür umgebaut zu werden. Somit sind Spielzeuge welche chemische oder sensorische Funktionen besitzen ein gefundenes fressen für den Hacker und eine Alternative für Regionen in welchen die finanzielle Situation teure Medizinprodukte nicht erlauben.<br />
<br />
= Einleitung =<br />
Die Blockwoche "DIY Medizintechnik" verbindet Anwendungen der Medizintechnik mit Do It Yourself (DIY) Ansätzen. Dadurch wird das tiefere Verständnis von Medizintechnischen Geräten durch einen direkten, interdisziplinären und möglichst selbstgesteuerten Zugang gefördert. Basierend auf verschiedenen elektrophysiologischen Messmodulen (EMG, EKG, EOG, EEG) entwickeln die Studierenden im Team Ideen für innovative Projekte. Erste Prototypen werden mit den Mitteln der Digitalen Fabrikation hergestellt und getestet. Tag für Tag stehen produktive "Hacks" auf dem Programm. Hacks sind sehr praxisbezogene Arbeitssequenzen wo die Studierenden Experimente durchführen sowie Prototypen entwickeln und bauen können. Dabei ist aber nicht nur die Medizintechnik zentral sondern auch der Interdisziplinäre Austausch sowie eine Skill-Share-Session wo die Studierenden ganz nach dem do it yourself Gedanken einen eigenen Workshop leiten können.<br />
Alle Erkenntnisse und Erfahrungen werden laufend in einem eigenen Wiki-Eintrag festgehalten und dokumentiert.<br />
<br />
Die Blockwoche wird von den beiden Dozenten [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] und [https://www.hackteria.org/wiki/Gaudi/ Urs Gaudenz] duchgeführt. Unterstützt wurden die Beiden von '''Dr. Christian Gehringer, MSc. (ETH)''' und [http://chrisobrist.ch/about// Chris Obrist]<br />
<br />
Maschinentechnik: <gallery><br />
File:MarkDusseiller.jpg | Dr. Marc R. Dusseiller<br />
File:UrsGaudenz.jpg | Urs Gaudenz<br />
</gallery><br />
<br />
= Planung =<br />
<br />
Die Blockwoche wird wie in folgendem Wochenplan unterteilt:<br />
<br />
[[File:Wochenplan2020.jpg|700px|thumb|none|Wochenplan]]<br />
<br />
= Wochenrückblick =<br />
== Die Woche in Bilder==<br />
[[File:ProfisInAction.PNG|400px]]<br />
[[File:Komponente.PNG|300px]]<br />
[[File:Aufbau.PNG|400px]]<br />
[[File:Motor_mit_Adapter.jpg|300px]]<br />
[[File:Pumpe.PNG|350px]]<br />
[[File:pulsmessung.jpg|450px]]<br />
[[File:Zusammenbau2.jpg|300px]]<br />
[[File:Foto 07.02.20, 11 14 53.jpg|300px]]<br />
[[File:DanielZellweger.jpg|300px]]<br />
<br />
== Tag 1==<br />
'''Einführung'''<br />
<br />
Wir traffen uns zu beginn im FABLAB, wo sich die Dozenten vorstellten und uns über Ihren bisherigen Werdegang informierten. Das interessante an der beruflichen Laufbahn der beiden ist, dass beide ein Studium abgeschlossen haben und heute einer Tätigkeit nachgehen, welche eigentlich nicht mehr viel mit dem damaligen Studium zu tun hat. Das vermittelt unserer Meinung nach, den Studenten eine etwas andere Sichtweise als die technische Hochschule. Es zeigt z.B. dass man nach einem Studium nicht gezwungen ist auf diesem Fachgebiet zu arbeiten sondern dass der Arbeitsmarkt noch sehr viele andere Möglichkeiten zu bieten hat.<br />
<br />
Nachdem sie sich Vorgestellt haben, stellten sie uns auch noch den Assistent vor. Dieser ist ein ausgebildeter Arzt welcher sich momentan für seinen zweiten Doktortitel engagiert. Von Ihm und seinem grossen medizinischen Fachwissen können wir als Studenten die ganze Woche profitieren.<br />
<br />
Danach überliessen die Dozenten uns Studenten das Wort. Es war eine etwas andere Vorstellungsrunde wie man sie noch nicht kannte. Dazu stand uns ein ganzer Tisch mit kuriosen Gegenständen, welche etwas mit dem DIY Gedanke zu tun haben, zur verfügung. Sie vorderten uns alle auf einen Gegenstand auszuwählen. Danach mussten wir uns Vorstellen und noch ein paar Worte dazu verlieren welche Gemeinsamkeiten wir mit dem ausgesuchten Gegenstand teilen.<br />
<br />
'''DIY (Do It Yourself)'''<br />
<br />
Das DIY Prinzip basiert auf eigenem experimentieren und learning by doing<br />
<br />
{{#widget:Iframe<br />
|url= https://www.youtube.com/watch?v=3zH_J12G9sQ<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
<br />
'''How to use Wiki'''<br />
<br />
Durch die 45 minütige Einführung in die Handhabung das Wiki durch Dr. Marc R. Dusseiller waren wir bereit unsere Erkenntnisse und Projekte, welche wir in dieser Woche erfahren und durchführen werden, in einer Zugänglichen Form, niederzuschreiben.<br />
<br />
== Tag 2 ==<br />
Am zweiten Tag begannen wir die Vorbereitung Skill-Share-Session. Diesbezüglich sollte jeder Teilnehmer einen Skill, welcher er erlernen möchte und einen Skill, den man beibringen könnte notieren. Diese wurden dann auf einer Tafel in Cluster aufgeteilt. Zwölf davon wurden als Skill-Share Workshops ausgewählt und die Teilnehmer konnten sich nach Belieben einschreiben.<br />
<br />
[[File:SkillSession2020.jpg|500px|thumb|none|Skill-share-session]]<br />
<br />
Während des zweiten Teils arbeiteten wir an unserem Experiment weiter, welches wir am Vortag begonnen haben.<br />
Dazu mussten wir die elektronischen Bauteile mit unserem Laptop verbinden und einen vorgefertigten Sketch laufen lassen.<br />
<br />
Nachdem wir den ersten Versuch erfolgreich durchführen konnten, versuchten wir mit dem Arduino einen Stepmotor anzusteuern. Dabei stiessen wir jedoch auf einige Schwierigkeiten. Da wir diese bis zur Einführung des Lasercutters und des 3D-Druckers fertig haben sollten. Siehe [[#Hack 0]]<br />
<br />
Unteranderem wurde unsere Skill-Share-Session über Arduino vorbereitet.<br />
<br />
Am Abend kam [http://chrisobrist.ch/about// Chris Obrist] zu Besuch und unterhielt uns mit einer wundervollen musikalischen Darbietung.<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/Hj1Ogr8137o<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
== Tag 3 ==<br />
Von 9:00 Uhr bis nach dem Mittag um 14:00 Uhr waren wir alle mit der [[#Skill-Share-Session]] beschäftigt.<br />
<br />
Danach hatten wir Zeit um den nächsten Hack vorzubereiten und zu planen.<br />
<br />
== Tag 4 ==<br />
Den Vormittag verbrachten wir weiter mit dem Hack 1, welchen wir dann vor der Mittagspause den Dozenten und allen Mitstudierenden präsentieren durften. Leider litten wir während des ganzen Hack 1 sehr unter Zeitdruck, was auf eine turbulente Projektphase zurückzuführen ist. Mehr dazu erfährst du im [[#Hack 1]].<br />
<br />
Nach einer kurzen Inspirationphase entschieden wir uns dafür eine kleine Spritzenpumpe zu basteln. [[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 5 ==<br />
Am Tag 5 ging es darum die Einzelteile physikalisch sowie über ein Funktionierendes Arduinoprogamm zum laufen zu bringen.<br />
[[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 6 ==<br />
Zum Abschluss durften wir alle Hacks der verschiedenen Teams begutachten. Interessant waren die spontanen Vorgehensweisen und auch die daraus entstandenen Produkte. Viele Teams suchten zuerst das Material und erst danach die Ideen. So entstanden die unterschiedlichsten Prototypen.<br />
Zudem Reflektierten wird die Blockwoche. Im Allgemeinen gefielen die Freiheit und auch der unkomplizierte Teamgeist untereinander. Besten Dank auch an die Organisatoren der Blockwoche.<br />
<br />
= Experimente =<br />
Bei den Experimenten sollte es darum gehen aus unterschiedlichsten Einzelteilen ein Produkt zu erschaffen. Dieser Prozess brachte uns dazu über die Grenzen unseres altäglichem Denken zu springen und in der Verbindung der einzelnen Bereiche solcher Produkte besser zu verstehen.<br />
<br />
== Hack 0 ==<br />
<br />
<br />
===Versuchsaufbau 1===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 1===<br />
Nach den Inputs der Dozenten verbrachten wir hauptsächlich die Zeit damit den Muscle Spiker Shield nach der Anleitung mit den dazugehörigen Teilen zusammenzulöten.[https://backyardbrains.com/products/files/MuscleSpikerShield.v.2.11.BuildingInstructions.pdf]V2.11<br />
Nebenbei machten wir unsere ersten Schritte in Arduino.<br />
Als wir unsere mechatronischen Komponenten zusammengestellt und ein Grundverständnis von Arduino angeeignet haben, verbanden wir dies in einem Experiment. <br />
Das Experiment welches wir durchführten nennt man Control Machines with your Brain und ist auf der Seite von [https://backyardbrains.com/experiments/muscleSpikerShield/ Backyard Brains] nachzusehen.<br />
<br />
Für den Versuch wurden Elektroden an den Testpersonen angeschlossen und über den Arduino ausgelesen.<br />
Der Versuch wurde mit zwei Testpersonen durchgeführt. Dabei fiel uns nebst der Kontrolle der LED's auch auf, dass der Puls gemessen wurde. Dies unabhängig von der Position der Elektroden. Vermutlich reagieren die Elektroden zu sensitiv für diese Anwendung.<br />
<br />
<br />
[[File:UeberblickVersuchTeamD.jpg|400px|thumb|none|Versuchsaufbau]]<br />
[[File:Versuchsaufbau1TeamD.jpg|400px|thumb|none|Elektrodenbefestigung]]<br />
[[File:MessungDanielGlur.jpg|400px|thumb|none|Messung von Daniels Puls]]<br />
<br />
===Versuchsaufbau 2===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 2===<br />
<br />
Als zweites Experiment versuchten wir durch das anspannen der Muskeln einen Servomotor anzusteuern. Wie es auch auf der Homepage von [https://backyardbrains.com/experiments/MuscleSpikerShield_GripperHand/ Backyard Brains] anzutreffen ist. Dieser Versuch konnte aber leider aus Zeitgründen nicht zu Ende geführt werden. Wir konnten lediglich das Arduinoprogramm laden und etwas anpassen.<br />
<br />
===Reflexion===<br />
<br />
Der Hack 0 war in der Hinsicht sehr interessant, da wir alle unsere ersten Erfahrungen mit einem Arduino machen konnten. Einige von unserem Team hatten bisher auch noch nie auf einer Printplatte irgendwelche Widerstände oder Schalter etc. gelötet. Ebenso war es erstaunlich, dass man mit so wenig so viel verschiedene Sachen machen kann. Keiner von uns hat gedacht dass wir bereits am ersten Tag irgend etwas mit unseren Muskeln kontrollieren könnten. Insgesamt kam der Hack 0 gut bei uns an und wir alle konnten einiges davon profitieren und hoffentlich auch den weiteren Hacks weiterverwenden.<br />
<br />
== Hack 1: Baseball-Cap mit Ventilator ==<br />
<br />
Der Hack 1 beschreibt die Konzept- und Testphase des ersten Prototyps.<br />
<br />
Zu Beginn waren wir uns sehr unschlüssig was wir wirklich bauen wollen. Also entschieden wir uns für ein weiteres Experiment mit einem Bausatz von Backyard Brains. Wir versuchten durch die Funktion des Heart and Brain Spiker Shield einen Ventilator anzusteuern. Der Gedanke, welcher uns auf diese Idee führte, kennt wohl jeder Student. Während einer Prüfung kommt so mancher ins Grübeln und in harten Fällen kommt es auch vor dass einem eine Schweissperle von der Stirn läuft. Um in solchen Fällen für die nötige Kühlung zu sorgen, sollen Sensoren die Hirnströme gemessen und als Signal wiedergeben werden um damit einen Ventilator anzuschalten.<br />
<br />
Zu unserem eigenen Erstaunen erhielten wir sogar ein Signal aus unserer Messung. Es stellte sich aber sehr bald heraus, dass das wohl nicht die Hirnströme waren sondern eher Bewegungen des Kopfs und der Kabel. Denn die Sensoren sind recht empfindlich gegen solche Einflüsse. Zudem kam noch, dass die Sensoren über den Haaren angebracht wurden, was das Signal der Hirnströme noch zusätzlich verschlechterte. Nach einigen Versuchen sahen wir ein, dass das wohl eine zu grosse Herausforderung war und wir uns besser an einen einfacheren Versuch versuchen sollten.<br />
<br />
[[File:heart_and_brain.jpg|300px|thumb|none|Signal aus Messung der "Hirnströme"]]<br />
[[File:EEGDanielGlur.jpg|500px|thumb|none|Daniel beim messen der "Hirnströme"]]<br />
<br />
Also beschlossen wir uns anstelle der Hirnströme den Puls zu messen. Denn während einer Prüfung kann es durchaus auch vorkommen, dass der Puls etwas ansteigt. Die Messungen sollten dann ausgelesen werden und wenn der Puls eine gewisse Frequenz übersteigt, schaltet ein Ventilator ein um den Studenten wieder etwas zu beruhigen.<br />
<br />
Für diesen Versuch platzierten wir Sensoren am Unterarm und an der Handoberfläche. Idealerweise sollten laut Assistent Christian die Sensoren aber so weit wie möglich voneinander entfernt, an einer anderen Körperstelle angebracht werden um eine gewisse Referenz zu haben und um sicherzustellen, dass man wirklich den Puls misst. Unsere Kabel waren aber leider etwas zu kurz. Wir erhielten trotzdem ein relativ gutes Signal von welchem man davon ausgehen konnte, dass es sich um den Puls handelte. Jetzt nur noch das Signal auswerten, einen Frequenzbegrenzer programmieren und mithilfe von einem Arduino UNO den Ventilator ansteuern... Dachten wir... Dies war allerdings etwas Schwieriger als erwartet und überstieg unsere Kompetenzen. Das führte uns dazu auch diesen Versuch an dieser Stelle abzubrechen und nochmal zu überdenken.<br />
<br />
<br />
[[File:puls.png|400px|thumb|none|Pulssignal]]<br />
[[File:pulsmessung.jpg|400px|thumb|none|Pulssmessung]]<br />
<br />
<br />
Nun rannte uns schon langsam die Zeit davon. Doch dann kam uns die Idee, welche wir schon zu Beginn benötigt hätten. Und zwar wollten wir einen Ventilator auf einem Baseball-Cap anbringen und diesen ansteuern wenn ein gewisses Temperaturniveau unter dem Cap überschritten wird wird. Dazu wird ein 12V Ventilator via Relais von dem Arduino angesteuert. Weil der Arduino nur eine Spannung von 5V liefert, musste ein 12V Netzgerät den Ventilator mit Strom versorgen. Damit man den Ventilator so schalten konnte, damit er den Strom über das 12V Netzgerät bezieht, mussten wir noch ein Relais einbauen. Den Code für den Arduino bezogen wir aus verschiedenen ähnlichen Projekten aus dem Internet und passten ihn spezifisch für unsere Anwendung an. Für das auslesen der Temperatur mussten wir zuerst zwei Libreries herunterladen (DallasTemperature und OneWire).<br />
<br />
[[File:Komponente.PNG|400px|thumb|none|Verbaute Komponenten]]<br />
<br />
Nun mussten wir noch den Ventilator am Baseball-Cap anbringen. Dafür wurde eine Halterung im CAD konstruiert und mit einem 3D-Drucker ausgedruckt. Die Teile wurden danach zusammengesteckt und mit dem Baseball-Cap verschraubt. Natürlich wurde zuvor ein Loch in das Cap geschnitten, damit der Ventilator auch seinen Zweck erfüllen kann und dem Studenten einen kühlen Kopf verschafft.<br />
<br />
[[File:Aufbau.PNG|350px|thumb|none|3D-Modell im CAD]]<br />
<br />
[[File:Zusammenbau1.jpg|350px]]<br />
[[File:Zusammenbau2.jpg|350px]]<br />
<br />
Nun wurde unser Prototyp getestet. Der Sensor erfüllte seinen Dienst und wir konnten erfolgreich die Temperaturen messen. Jedoch war das Relais während dem Testen ständig eingeschalten und der Ventilator lief die ganze Zeit auch wenn die Temperatur den Minimalwert unterschritten hatte. Es hat sich also irgendwo in unserem Programm einen Fehler eingeschlichen. Den galt es nun zu finden und zu beheben. Dazu bauten wir einen Druckknopf ein um zu überprüfen ob das Relais defekt war und um die Fehlerquellen etwas einzugrenzen.<br />
<br />
[[File:Temperatur.jpg|350px]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/TQnGa5WiGS4<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
Der Druckknopf funktionierte, das Relais schaltete perfekt ein und aus und der Ventilator wurde an- und abgestellt. Somit wissen wir nun wo der Fehler zu suchen ist und können versuchen das Programm an diesen Stellen zu bereinigen. Nur ist jetzt schon Donnerstag Nachmittag und der Hack 2 hat schon begonnen. Wir alle wurden aufgefordert unseren bisherigen Prototypen aufzugeben und etwas neues, anderes zu versuchen und zu testen. Also legen wir schweren Herzens unser erster Prototyp beiseite und widmen unsere Kreativität dem nächsten Hack.<br />
<br />
=== Reflexion ===<br />
Der Hack 1 hat uns gezeigt, dass es gar nicht so einfach ist beim ersten Versuch ein brauchbares Resultat zu erzielen. Jedoch konnten wir so aus zwei vorhergehenden, fehlgeschlagenen Ansätzen eine Idee weiterentwickeln. Somit konnten wir mit unseren Kompetenzen und den Erfahrungen aus dem Hack 0 ein zufriedenstellendes Resultat erzielen. Durch die zwei Versuche zuvor ging leider recht viel Zeit "verloren", welche wir sehr benötigt hätten um unser erster Prototyp fehlerfrei hinzukriegen. Es war uns auch eine Lehre, dass man nicht zu lange an einer Sache verharren sollte wenn einem nur wenig Zeit zur Verfügung steht. Manchmal ist es besser man wirft alles nochmal über den Haufen und beginnt von vorne. Trotz allen Strapazen während des Hack 1 sind wir mit unserem ersten Prototyp sehr zufrieden und konnten auch bei diesem Versuch wieder viel profitieren und mitnehmen. Nun blicken wir gespannt nach vorne auf den nächsten Hack.<br />
<br />
<br />
===Code===<br />
<br />
Wir konnten zwar die Temperatur herauslesen und das Relais über einen Butten steuern, jedoch die Steuerung anhand der Temperatur geling uns nicht.<br />
<br />
<pre><br />
/********************************************************************/<br />
// First we include the libraries<br />
#include <OneWire.h> <br />
#include <DallasTemperature.h><br />
/********************************************************************/<br />
// Data wire is plugged into pin 2 on the Arduino <br />
#define ONE_WIRE_BUS 2 <br />
<br />
float tempReading;<br />
/********************************************************************/<br />
// Setup a oneWire instance to communicate with any OneWire devices <br />
// (not just Maxim/Dallas temperature ICs) <br />
OneWire oneWire(ONE_WIRE_BUS); <br />
/********************************************************************/<br />
// Pass our oneWire reference to Dallas Temperature. <br />
DallasTemperature sensors(&oneWire);<br />
/********************************************************************/ <br />
int relayPin = 4; // Relay Singnal lead to Digital Pin [D2-D12]<br />
<br />
float maxTemperature = 30.00; // The Max Temperature allowed<br />
float minTemperature = 25.00; // The Min Temperature allowed<br />
<br />
// constants won't change. They're used here to set pin numbers:<br />
const int buttonPin = 8; // the number of the pushbutton pin<br />
const int ledPin = 4; // the number of the LED pin<br />
<br />
// variables will change:<br />
int buttonState = 0; // variable for reading the pushbutton status<br />
<br />
void setup(void) {<br />
// initialize the LED pin as an output:<br />
pinMode(ledPin, OUTPUT);<br />
// initialize the pushbutton pin as an input:<br />
pinMode(buttonPin, INPUT);<br />
<br />
Serial.begin(9600); <br />
Serial.println("Dallas Temperature IC Control Library Demo"); <br />
// Start up the library <br />
sensors.begin(); <br />
}<br />
<br />
void loop(void) <br />
{ <br />
// call sensors.requestTemperatures() to issue a global temperature <br />
// request to all devices on the bus <br />
/********************************************************************/<br />
Serial.print(" Requesting temperatures..."); <br />
sensors.requestTemperatures(); // Send the command to get temperature readings <br />
Serial.println("DONE"); <br />
/********************************************************************/<br />
Serial.print("Temperature is: "); <br />
Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"? <br />
// You can have more than one DS18B20 on the same bus. <br />
// 0 refers to the first IC on the wire <br />
delay(1000); // Check Temperature every second<br />
<br />
float temperature = getTemperature();<br />
if(temperature >= maxTemperature){<br />
powerOnRelay();<br />
} else if (temperature <= minTemperature) {<br />
powerOffRelay();<br />
}<br />
delay(1000); // Check tempertature every second<br />
<br />
} <br />
void powerOnRelay() {<br />
digitalWrite(relayPin, HIGH);<br />
Serial.println("Relay On");<br />
}<br />
<br />
void powerOffRelay() {<br />
digitalWrite(relayPin, LOW);<br />
Serial.println("Relay Off");<br />
}<br />
float getTemperature(){<br />
tempReading = digitalRead(ONE_WIRE_BUS);<br />
<br />
// read the state of the pushbutton value:<br />
buttonState = digitalRead(buttonPin);<br />
<br />
// check if the pushbutton is pressed. If it is, the buttonState is HIGH:<br />
if (buttonState == HIGH) {<br />
// turn LED on:<br />
digitalWrite(ledPin, HIGH);<br />
} else {<br />
// turn LED off:<br />
digitalWrite(ledPin, LOW);<br />
}<br />
}<br />
</pre><br />
<br />
== Hack 2: Spritzenpumpe ==<br />
<br />
Nachdem der Hack 1 abgeschlossen war, machten wir uns aufs Neue darüber Gedanken was wir für einen Prototyp für den Hack 2 bauen wollen. Urs hat nach dem Abschluss von Hack 1 gesagt, wir sollten uns ein komplett neues Produkt überlegen, welches möglicherweise auch etwas mit der Medizintechnik zu tun hat. Nach einem Brainstorming kamen wir noch nicht so richtig auf einen grünen Zweig. So kamen wir auf die Idee uns einen Kaffee zu holen und einfach mal durch das FABLAB zu laufen um alles Mögliche anzuschauen, in die Hand zu nehmen und uns von all diesen Gegenständen inspirieren zu lassen. So kamen uns diverse Gegenstände in die Finger. darunter waren Servomotoren sowie einige DC-Motoren, eine Spritze, eine Pumpe, ein Micro-Switch Schalter, ein Potentiometer und vieles mehr. Diese Gegenstände haben wir dann auf unserem Gruppentisch ausgebreitet und uns Gedanken darüber gemacht was wir damit wohl anstellen konnten zum Thema Medizintechnik. So entstanden relativ schnell einige Ideen. Wir haben uns schlussendlich dafür entschieden ein Dosiergerät für eine medizinische Spritze zu machen. Dieses sollte so funktionieren, dass wir eine Spritze in eine Vorrichtung legen und über einen DC-Motor zum Einfahren bzw. Ausfahren bringen. Dazu muss die Drehbewegung des Motors in eine Lineare Bewegung umgeleitet werden. Zudem muss ggf. auch die Drehzahl des Motors durch ein Potentiometer reguliert werden können um einen zu schnellen Aus- oder Einfahrvorgang zu verhindern. Soviel zu zu den technischen Überlegungen. <br />
<br />
Sofort nach dem Entscheid suchten wir nach einem geeigneten Motor. Dieser sollte dabei eine eher tiefe Drehzahl haben damit die Spritze nur langsam ein- und ausfährt. Zudem suchten wir im Internet nach einem geeigneten Mechanismus der die Drehbewegung in eine lineare Bewegung umwandelt. Denn wir hatten leider zu wenig zeit um alles selber zu entwerfen und zu konstruieren. So wurden wir auf auf der Hompage von [https://www.thingiverse.com/thing:2797132/ Thingiverse] schliesslich fündig. Also konnte wir die Folgenden Komponenten herunterladen und mit dem 3D-Drucker ausdrucken.<br />
<br />
Komponenten: <gallery><br />
File:Halteplatte.PNG | Halteplatte<br />
File:Zahnrad.PNG | Zahnradpaar<br />
File:Zahnradpaar.PNG | Zahnstange<br />
File:Zahnstange.PNG | Zahnrad<br />
</gallery><br />
<br />
Da wir einen anderen Motor verwendeten als für diesen Mechanismus vorgesehen wäre, mussten wir noch eine passende Adapterplatte konstruieren, damit der Motor auch auf die Vorrichtung passt.<br />
<br />
<gallery><br />
File:Adapterplatte.PNG | Adapterplatte<br />
File:Motor.PNG | Motor<br />
File:Motor_mit_Adapter.jpg | Motor mit Adapter<br />
</gallery><br />
<br />
Der Motor benötigt, wie auch der Ventilator von Hack 1, eine Spannung von 12V für den Betrieb. Also mussten wir erneut das 12V Netzgerät verwenden. Damit unser zweiter Prototyp auch die gewünschte Fördermenge fördern kann, muss die Zeitdauer, in welcher gefördert werden soll, definiert werden. Das dazugehörige Programm wird mit einem Arduino UNO implementiert. Der Zugehörige Code haben wir durch Recherche im Internet und durch persönliches erweitern und anpassen erstellt. Die Drehzahl des Motors darf nicht zu hoch sein damit man die Fördermenge auch sinnvoll einstellen kann. Für diese Anwendung wird ein Potentiometer zwischen Relais und Motor gehängt. So kann die Motorspannung reguliert und die Drehzahl anforderungsgemäss eingestellt werden. Nachfolgend wird der Prozessablauf kurz beschrieben.<br />
<br />
Mit einem Knopfdruck wird wird ein Relais geschalten und der Motor wird angesteuert. Die Drehzahl des Motors wird über ein Getriebe reduziert. Die Zahnräder greifen auf eine Zahnstange und wandeln die Drehbewegung in eine lineare Bewegung um. An der Zahnstange wird der Stössel der Spritze befestigt. Der Rest der Spritze wird mit einem Kabelbinder fest mit der Bodenplatte verbunden damit sich dieser Teil nicht bewegen kann. Die programmierte Zeitdauer bestimmt welche Menge an Flüssigkeit gefördert werden soll.<br />
<br />
[[File:Pumpe.PNG|500px|thumb|none|Aufbau der Spritzenpumpe]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/PLG_S3GtVI8<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
=== Reflexion ===<br />
<br />
Anders als beim Hack 1 kamen waren wir uns bei diesem Hack sehr schnell einig was genau wir bauen möchten. Die ganze Ideenfindung erledigte sich sehr schnell und wir konnten nach bereits wenigen Stunden mit dem programmieren des Arduinos beginnen. Wie wir bereits im Hack 1 erfahren durften, ist das bei dem gedrängten Zeitplan dieser Woche ein grosser Vorteil. Rückblickend können wir urteilen, dass der Hack 2 aus unserer Sicht ein erfreuendes Erfolgserlebnis war. Unser zweiter Prototyp funktioniert genau so wie wir uns das von Beginn an vorgestellt haben. Per Knopfdruck fördert unser Prototyp eine gewisse Menge an Flüssigkeit.<br />
<br />
=== Code ===<br />
<br />
<pre><br />
<br />
bool geschaltet = false;<br />
int RelaisPin = 10; <br />
int tasterPin = 2;<br />
int empfindlichkeit = 200;<br />
<br />
void setup() {<br />
<br />
pinMode( tasterPin, INPUT_PULLUP);<br />
pinMode( RelaisPin, OUTPUT);<br />
<br />
}<br />
<br />
void loop() {<br />
<br />
if (digitalRead(tasterPin) == LOW) <br />
{<br />
if (geschaltet == false) {<br />
geschaltet = true;<br />
}<br />
else {<br />
geschaltet = false;<br />
}<br />
}<br />
<br />
if (geschaltet == true) {<br />
digitalWrite(RelaisPin, HIGH);<br />
delay(1000);<br />
geschaltet = false; <br />
}<br />
<br />
if (geschaltet == false) {<br />
digitalWrite(RelaisPin, LOW);<br />
}<br />
<br />
delay(empfindlichkeit);<br />
}<br />
</pre><br />
<br />
== Hack 3: Zinnguss ==<br />
<br />
Für diesen Hack wurde Zinn gegossen. Dank dem tiefen Schmelzpunkt lässt sich der Gusswerkstoff in einer Stahlkanne mit einem Brenner einer Autogenschweissanlage leicht erhitzen.<br />
<br />
[[File:Kanne.jpg|300px|thumb|none|Stahlkanne mit flüssigem Zinn]]<br />
<br />
=== Versuch 1 ===<br />
<br />
Für die Gussform wurde MDF verwendet. Da die Hitzebeständigkeit von MDF unklar war, sollte ein kleiner Versuch Aufschluss geben. Eine einfache Zylinderform mit einem Überlaufbecken bestehend aus 3 Platten gemässe Bild [[:File:Versuch_1_Gussform.jpg]]Gussform, Versuch 1. Da nur eine kleine Menge an Zinn erhitzt wurde, war die Temperatur vermutlich deutlich über dem Schmelzpunkt. Es entwickelte sich Dampf, was zu einem Gussfehler im Überlauf führte. Ausserdem wurde das MDF stark verkohlt, siehe [[:File:Versuch_1_Resultat.jpg]]Resultat. Dennoch ist das Resultat zufriedenstellend, sodass für einen weiteren Versuch wieder MDF verwendet werden kann.<br />
<br />
Versuch 1: <gallery><br />
File:Versuch_1_Gussform.jpg | Gussform<br />
File:Versuch_1_Guss.jpg | Frisch gegossen<br />
File:Versuch_1_Resultat.jpg | Resultat<br />
</gallery><br />
<br />
=== Versuch 2 ===<br />
<br />
Nun konnte der eigentliche Versuch gestartet werden. Das Zinn wurde wieder in der Stahlkanne erhitzt, jedoch nicht so stark wie in Versuch 1. Jedoch wurden diesmal alle Formen mit dem Lasercutter ausgeschnitten. Auch bei dieser Gussform diente die letzte MSF Platte als Überlauf. Das flüssige Zinn konnte bei der grösseren Form kontrollierter und langsamer gegossen werden, so dass die Form gleichmässig ausgefüllt werden konnte, siehe Bild [[:File:Versuch_2_Guss.jpg]]Frisch gegossen.<br />
<br />
Versuch 2 Guss:<br />
<gallery><br />
File:Versuch_2_Gussform.jpg | Gussform<br />
File:Versuch_2_Guss.jpg | Frisch gegossen<br />
</gallery><br />
<br />
Durch den Schwund lässt sich das Gussstück relativ gut aus der Form drücken, obwohl keine Formschrägen vorhanden waren. Vorher empfiehlt es sich, den Überlauf abzufräsen (Bild [[:File:Versuch_2_Fraesen.jpg]]Überfäsen, [[:File:Versuch_2_Resultat.jpg]]Resultat), da sich Zinn nur bedingt im Schraubstock einspannen lässt. Zinn vierbiegt sich sehr leicht.<br />
<br />
Versuch 2 Bearbeitung:<br />
<gallery><br />
File:Versuch_2_Fraesen.jpg | Überfäsen<br />
File:Versuch_2_Resultat.jpg | Resultat<br />
</gallery><br />
<br />
=== Rückblick ===<br />
<br />
Es ist gut möglich, Zinn in galaserte MDF Platten zu giessen. Der Zinn soll dabei langsam und konntrolliert in die Form eingegossen werden. Zudem soll das Gussmaterial nicht zu stark über den Schmelzpunkt erhitzt werden, da sich sonst blasen bilden. Damit die Formen schön mit den Schrauben positioniert werden können, sollen die Bohrungen beim Lasercutter um 0.25 mm kleiner gewählt werden. Zum Beispiel 3.75 mm für ein M4 Gewinde, da der Cutter übermass hat.<br />
<br />
= Skill-Share-Session =<br />
<br />
== Grundlagen der Arduinoprogrammierung ==<br />
<br />
Dieser Kurs wurde von unserer Gruppe angeboten und soll den Teilnehmern die Grundlage der Programierung eines Arduino UNO beibringen. Folgend werden die grundlegenden Befehle und deren Syntax vorgestellt. Der Aufbau folgt dem YouTube Tutorial von Max. Hier gelangst du zu dem Link: [https://www.youtube.com/watch?v=eaFvQG8wrGw&list=PLAB63281B90FB376E&index=3]<br />
<br />
=== Skript ===<br />
Der Code wird in einem Skript geschrieben. Dieses ist in zwei Bereiche aufgeteilt<br />
* Void setup() Dieses Skript wird einmalig ausgeführt und enthält zB. Input und output<br />
* Void loop() Dieser Teil des Skripts wird als Dauerschleife wiederholt<br />
<br />
==== Befehlseingabe ====<br />
<br />
Die Befehle werden nach folgender Syntax eingegeben:<br />
<br />
* Funktion(Parameter1, Parameter2);<br />
<br />
Dabei muss das «;» gesetzte werden, ausserdem spielen Gross- und Kleinbuchstaben eine Rolle.<br />
<br />
=== Variablen ===<br />
Übersichtshalber sollen sprechende Namen für die Bezeichnung von z.B. Outputs verwendet werden. Dabei können verschiedene Datentypen ausgewählt werden.<br />
<br />
==== Datentyp ====<br />
* int Ganze Zahlen von -32768 … 32767 z.B. 1, 48, -654<br />
* boolean Entweder true oder false<br />
* byte 8 Bit an Informationen z.B. 00010101 (=21)<br />
* char enthält 1 Byte Informationen, das ein Zeichen darstellt z.B. 65 = A<br />
* long grosse Zahlen von ca. -2.1 Milliarden bis 2.1 Milliarden z.B. 15636451<br />
* float Komazahlen z.B. 5.498<br />
* string Zeichenketten z.B. «Do it yourself»<br />
<br />
==== Deklaration Syntax ====<br />
<br />
* Datentyp Name = Wert;<br />
<br />
oder<br />
<br />
* Datentyp Name;<br />
* Name = Wert;<br />
<br />
====Ort der Deklaration====<br />
<br />
Die Variable muss immer im Teil des Skriptes deklariert sein, wo sie auch gebraucht wird. Wird die Variable im setup wie auch im loop benötigt, so kann man die Variable als sogenannte globale Variable oberhalb des Setups deklarieren.<br />
<br />
===If-Schleife===<br />
<br />
Bei der If-Schleife wird der Wert einer Variablen mit einem Vergleichswert verglichen. Falls der Vergleich positiv ist, wird der Code ausgeführt, ansonsten übersprungen. Dazu sind Vergleichsoperatoren notwendig.<br />
<br />
====Syntax====<br />
<br />
if(Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
====Vergleichsoperatoren====<br />
<br />
* == gleich<br />
* != ungleich<br />
* < kleiner<br />
* < grösser<br />
* <= kleiner gleich<br />
* >= grösser gleich<br />
<br />
===While-Schleife===<br />
<br />
Mit der While-Schleife wird die Bedingung fortlaufend geprüft. Stimmt diese, wird der Code ausgeführt, ansonsten wird der Code übersprungen. Es können die selben Vergleichsoperatoren wie bei der If-Schleife verwendet werden.<br />
<br />
====Syntax====<br />
<br />
while (Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
==Bildgebende Verfahren==<br />
<br />
Der Tag begann mit einer Einführung in die Bildgebenden Verfahren durch David Stadelmann. Hierbei erklärte er uns, verschiedene Methoden, um Bilder aus dem Körperinneren zu machen und welche Methode für die verschiedenen Gewebetypen gebraucht werden. Zudem Zeigte und erklärte er uns anhand von Beispielen was die Einzelnen Schattierungen aussagen könnten.<br />
<br />
[[DIY-MedTech Bildgebende Verfahren-Unterschiedliche Bildeindrücke - Team Frosch]]<br />
<br />
==Synths & Sound ==<br />
<br />
Danach ging es weiter mit dem Kurs Synths & Sounds. Diese Session wurde von [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] durchgeführt. Hierbei zeigte er uns, wie man mit verschieden erzeugten Schwingungen eine grosse Variation von Tönen generiert kann. Zudem auch wie man elektronisch gewisse Instrumente Simulieren könnte und durch die Aneinanderreihung verschiedenster Tonvariationen eine Melodie enstehen kann. Dies mit unterschiedlich Variationen von selbstgebauten Synthesizers.<br />
<br />
<gallery><br />
File:Sinthesizer1.jpg | Synthesizer 1<br />
File:Synthesizer2.jpg | Synthesizer 2<br />
</gallery><br />
<br />
== Schweissen ==<br />
<br />
Bei dem Skill-Share Workshop von [https://www.hackteria.org/wiki/Team_G2020/ Team G2020] konnten wir verschiedene Schweissverfahren kennenlernen und auch gleich anwenden.<br />
<br />
Es wurde uns das [https://de.wikipedia.org/wiki/Lichtbogenhandschwei%C3%9Fen/ Elektrodenschweissen], das [https://de.wikipedia.org/wiki/Schutzgasschwei%C3%9Fen/ MIG-Schweissen] und das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] nähergebracht.<br />
<br />
Dieser Workshop war für uns alle sehr interessant, da sich bisher noch keiner von uns so wirklich mit dem Schweissen und den verschiedenen Verfahren auskannte. An diesem Tag konnten wir nach einer kurzen Theorie gleich sofort selber handanlegen und die verschiedenen Schweissverfahren ausprobieren.<br />
<br />
Dabei mussten wir feststellen, dass es gar nicht so einfach ist wie es immer aussieht. Besonders das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] braucht sehr viel Übung und Geschick um wirklich schöne Schweissergebnisse zu erzielen.<br />
<br />
== Autonomes Nervensystem und das Hören in der Medizin ==<br />
<br />
Der Assistent Dr. Christian Gehringer, MSc. (ETH) hielt uns einen sehr interessanten Vortrag. Dabei ging es darum, dass wir die Anatomie kennenlernen und erkunden am Beispiel des Hörens z.B mit einem Stethoskop.<br />
<br />
[https://www.hackteria.org/wiki/Autonomes_Nervensystem_und_das_H%C3%B6ren_in_der_Medizin/ Autonomes Nervensystem und das Hören in der Medizin]</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=MedTechDIY20_Die_Profis&diff=41676MedTechDIY20 Die Profis2020-02-09T11:59:28Z<p>Tnroth: /* Hack 3: Zinnguss */</p>
<hr />
<div>Hier gehts zurück auf: [[Medizintechnik DIY]]<br />
<br />
[[File:DieProfis.png|700px|right|none|Wochenplan]]<br />
<br />
= Team =<br />
<br />
'''Die Profis''' besteht aus den drei Studierenden '''Daniel Glur''', '''Lukas Roth''' und '''Daniel Zellweger''' der Hochschule Luzern. Im Rahmen der Blockwoche "DIY Medizintechnik" formierte sich das Team aus verschiedenen Studiengängen um auch interdisziplinär voneinander zu lernen und Wissen auszutauschen.<br />
<br />
'''Mitglieder:'''<br />
<br />
Maschinentechnik: <gallery><br />
File:DanielGlur.jpg | Daniel Glur<br />
File:LukasRoth.jpg | Lukas Roth<br />
</gallery><br />
<br />
Medizintechnik: <gallery><br />
File:DanielZellweger.jpg | Daniel Zellweger<br />
</gallery><br />
<br />
= Pflichtlektüre =<br />
<br />
'''How to control someone else's arm with your brain | Greg Gage'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/rSQNi5sAwuc<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
In Diesem Video wird gezeigt wie man über die Aufnahme eines Biologischen Signals, dieses an eine zweite Person weitergeleitet werden kann.<br />
Dies funktioniert jedoch nur aus verschiedenen Gründen bedingt. Nebst den allgemeinen Störeinflüsse aus der Messtechnik, kommen zusätzlich noch jene der Ansteuerung. Da das Signal nur von einzelnen Muskelfasern abgefangen wird, kann dieses nicht sämtliche Muskelfasern der zweiten Person Reizen. Dies hat zur folge, dass nur eine annähernd ähnliche Bewegung des Armes arfolgt.<br />
<br />
<br />
'''What is Open Source explained in LEGO'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/a8fHgx9mE5U<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Durch die Verwendung der Open Source Methode erhält man die Möglichkeit während des Projektes noch Erweiterungen oder Veränderungen anzustreben.<br />
<br />
'''"Why toys make good medical devices | Jose Gomez-Marquez'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/UHCT9SOBHs0<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Nebst dem Preis besitzen Spielzeuge diverse spezifische Funktionen. Da diese meist günstige Anschaffung auch einfach verändert werden kann, sind sie sehr geeignet dafür umgebaut zu werden. Somit sind Spielzeuge welche chemische oder sensorische Funktionen besitzen ein gefundenes fressen für den Hacker und eine Alternative für Regionen in welchen die finanzielle Situation teure Medizinprodukte nicht erlauben.<br />
<br />
= Einleitung =<br />
Die Blockwoche "DIY Medizintechnik" verbindet Anwendungen der Medizintechnik mit Do It Yourself (DIY) Ansätzen. Dadurch wird das tiefere Verständnis von Medizintechnischen Geräten durch einen direkten, interdisziplinären und möglichst selbstgesteuerten Zugang gefördert. Basierend auf verschiedenen elektrophysiologischen Messmodulen (EMG, EKG, EOG, EEG) entwickeln die Studierenden im Team Ideen für innovative Projekte. Erste Prototypen werden mit den Mitteln der Digitalen Fabrikation hergestellt und getestet. Tag für Tag stehen produktive "Hacks" auf dem Programm. Hacks sind sehr praxisbezogene Arbeitssequenzen wo die Studierenden Experimente durchführen sowie Prototypen entwickeln und bauen können. Dabei ist aber nicht nur die Medizintechnik zentral sondern auch der Interdisziplinäre Austausch sowie eine Skill-Share-Session wo die Studierenden ganz nach dem do it yourself Gedanken einen eigenen Workshop leiten können.<br />
Alle Erkenntnisse und Erfahrungen werden laufend in einem eigenen Wiki-Eintrag festgehalten und dokumentiert.<br />
<br />
Die Blockwoche wird von den beiden Dozenten [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] und [https://www.hackteria.org/wiki/Gaudi/ Urs Gaudenz] duchgeführt. Unterstützt wurden die Beiden von '''Dr. Christian Gehringer, MSc. (ETH)''' und [http://chrisobrist.ch/about// Chris Obrist]<br />
<br />
Maschinentechnik: <gallery><br />
File:MarkDusseiller.jpg | Dr. Marc R. Dusseiller<br />
File:UrsGaudenz.jpg | Urs Gaudenz<br />
</gallery><br />
<br />
= Planung =<br />
<br />
Die Blockwoche wird wie in folgendem Wochenplan unterteilt:<br />
<br />
[[File:Wochenplan2020.jpg|700px|thumb|none|Wochenplan]]<br />
<br />
= Wochenrückblick =<br />
== Die Woche in Bilder==<br />
[[File:ProfisInAction.PNG|400px]]<br />
[[File:Komponente.PNG|300px]]<br />
[[File:Aufbau.PNG|400px]]<br />
[[File:Motor_mit_Adapter.jpg|300px]]<br />
[[File:Pumpe.PNG|350px]]<br />
[[File:pulsmessung.jpg|450px]]<br />
[[File:Zusammenbau2.jpg|300px]]<br />
[[File:Foto 07.02.20, 11 14 53.jpg|300px]]<br />
[[File:DanielZellweger.jpg|300px]]<br />
<br />
== Tag 1==<br />
'''Einführung'''<br />
<br />
Wir traffen uns zu beginn im FABLAB, wo sich die Dozenten vorstellten und uns über Ihren bisherigen Werdegang informierten. Das interessante an der beruflichen Laufbahn der beiden ist, dass beide ein Studium abgeschlossen haben und heute einer Tätigkeit nachgehen, welche eigentlich nicht mehr viel mit dem damaligen Studium zu tun hat. Das vermittelt unserer Meinung nach, den Studenten eine etwas andere Sichtweise als die technische Hochschule. Es zeigt z.B. dass man nach einem Studium nicht gezwungen ist auf diesem Fachgebiet zu arbeiten sondern dass der Arbeitsmarkt noch sehr viele andere Möglichkeiten zu bieten hat.<br />
<br />
Nachdem sie sich Vorgestellt haben, stellten sie uns auch noch den Assistent vor. Dieser ist ein ausgebildeter Arzt welcher sich momentan für seinen zweiten Doktortitel engagiert. Von Ihm und seinem grossen medizinischen Fachwissen können wir als Studenten die ganze Woche profitieren.<br />
<br />
Danach überliessen die Dozenten uns Studenten das Wort. Es war eine etwas andere Vorstellungsrunde wie man sie noch nicht kannte. Dazu stand uns ein ganzer Tisch mit kuriosen Gegenständen, welche etwas mit dem DIY Gedanke zu tun haben, zur verfügung. Sie vorderten uns alle auf einen Gegenstand auszuwählen. Danach mussten wir uns Vorstellen und noch ein paar Worte dazu verlieren welche Gemeinsamkeiten wir mit dem ausgesuchten Gegenstand teilen.<br />
<br />
'''DIY (Do It Yourself)'''<br />
<br />
Das DIY Prinzip basiert auf eigenem experimentieren und learning by doing<br />
<br />
{{#widget:Iframe<br />
|url= https://www.youtube.com/watch?v=3zH_J12G9sQ<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
<br />
'''How to use Wiki'''<br />
<br />
Durch die 45 minütige Einführung in die Handhabung das Wiki durch Dr. Marc R. Dusseiller waren wir bereit unsere Erkenntnisse und Projekte, welche wir in dieser Woche erfahren und durchführen werden, in einer Zugänglichen Form, niederzuschreiben.<br />
<br />
== Tag 2 ==<br />
Am zweiten Tag begannen wir die Vorbereitung Skill-Share-Session. Diesbezüglich sollte jeder Teilnehmer einen Skill, welcher er erlernen möchte und einen Skill, den man beibringen könnte notieren. Diese wurden dann auf einer Tafel in Cluster aufgeteilt. Zwölf davon wurden als Skill-Share Workshops ausgewählt und die Teilnehmer konnten sich nach Belieben einschreiben.<br />
<br />
[[File:SkillSession2020.jpg|500px|thumb|none|Skill-share-session]]<br />
<br />
Während des zweiten Teils arbeiteten wir an unserem Experiment weiter, welches wir am Vortag begonnen haben.<br />
Dazu mussten wir die elektronischen Bauteile mit unserem Laptop verbinden und einen vorgefertigten Sketch laufen lassen.<br />
<br />
Nachdem wir den ersten Versuch erfolgreich durchführen konnten, versuchten wir mit dem Arduino einen Stepmotor anzusteuern. Dabei stiessen wir jedoch auf einige Schwierigkeiten. Da wir diese bis zur Einführung des Lasercutters und des 3D-Druckers fertig haben sollten. Siehe [[#Hack 0]]<br />
<br />
Unteranderem wurde unsere Skill-Share-Session über Arduino vorbereitet.<br />
<br />
Am Abend kam [http://chrisobrist.ch/about// Chris Obrist] zu Besuch und unterhielt uns mit einer wundervollen musikalischen Darbietung.<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/Hj1Ogr8137o<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
== Tag 3 ==<br />
Von 9:00 Uhr bis nach dem Mittag um 14:00 Uhr waren wir alle mit der [[#Skill-Share-Session]] beschäftigt.<br />
<br />
Danach hatten wir Zeit um den nächsten Hack vorzubereiten und zu planen.<br />
<br />
== Tag 4 ==<br />
Den Vormittag verbrachten wir weiter mit dem Hack 1, welchen wir dann vor der Mittagspause den Dozenten und allen Mitstudierenden präsentieren durften. Leider litten wir während des ganzen Hack 1 sehr unter Zeitdruck, was auf eine turbulente Projektphase zurückzuführen ist. Mehr dazu erfährst du im [[#Hack 1]].<br />
<br />
Nach einer kurzen Inspirationphase entschieden wir uns dafür eine kleine Spritzenpumpe zu basteln. [[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 5 ==<br />
Am Tag 5 ging es darum die Einzelteile physikalisch sowie über ein Funktionierendes Arduinoprogamm zum laufen zu bringen.<br />
[[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 6 ==<br />
Zum Abschluss durften wir alle Hacks der verschiedenen Teams begutachten. Interessant waren die spontanen Vorgehensweisen und auch die daraus entstandenen Produkte. Viele Teams suchten zuerst das Material und erst danach die Ideen. So entstanden die unterschiedlichsten Prototypen.<br />
Zudem Reflektierten wird die Blockwoche. Im Allgemeinen gefielen die Freiheit und auch der unkomplizierte Teamgeist untereinander. Besten Dank auch an die Organisatoren der Blockwoche.<br />
<br />
= Experimente =<br />
Bei den Experimenten sollte es darum gehen aus unterschiedlichsten Einzelteilen ein Produkt zu erschaffen. Dieser Prozess brachte uns dazu über die Grenzen unseres altäglichem Denken zu springen und in der Verbindung der einzelnen Bereiche solcher Produkte besser zu verstehen.<br />
<br />
== Hack 0 ==<br />
<br />
<br />
===Versuchsaufbau 1===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 1===<br />
Nach den Inputs der Dozenten verbrachten wir hauptsächlich die Zeit damit den Muscle Spiker Shield nach der Anleitung mit den dazugehörigen Teilen zusammenzulöten.[https://backyardbrains.com/products/files/MuscleSpikerShield.v.2.11.BuildingInstructions.pdf]V2.11<br />
Nebenbei machten wir unsere ersten Schritte in Arduino.<br />
Als wir unsere mechatronischen Komponenten zusammengestellt und ein Grundverständnis von Arduino angeeignet haben, verbanden wir dies in einem Experiment. <br />
Das Experiment welches wir durchführten nennt man Control Machines with your Brain und ist auf der Seite von [https://backyardbrains.com/experiments/muscleSpikerShield/ Backyard Brains] nachzusehen.<br />
<br />
Für den Versuch wurden Elektroden an den Testpersonen angeschlossen und über den Arduino ausgelesen.<br />
Der Versuch wurde mit zwei Testpersonen durchgeführt. Dabei fiel uns nebst der Kontrolle der LED's auch auf, dass der Puls gemessen wurde. Dies unabhängig von der Position der Elektroden. Vermutlich reagieren die Elektroden zu sensitiv für diese Anwendung.<br />
<br />
<br />
[[File:UeberblickVersuchTeamD.jpg|400px|thumb|none|Versuchsaufbau]]<br />
[[File:Versuchsaufbau1TeamD.jpg|400px|thumb|none|Elektrodenbefestigung]]<br />
[[File:MessungDanielGlur.jpg|400px|thumb|none|Messung von Daniels Puls]]<br />
<br />
===Versuchsaufbau 2===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 2===<br />
<br />
Als zweites Experiment versuchten wir durch das anspannen der Muskeln einen Servomotor anzusteuern. Wie es auch auf der Homepage von [https://backyardbrains.com/experiments/MuscleSpikerShield_GripperHand/ Backyard Brains] anzutreffen ist. Dieser Versuch konnte aber leider aus Zeitgründen nicht zu Ende geführt werden. Wir konnten lediglich das Arduinoprogramm laden und etwas anpassen.<br />
<br />
===Reflexion===<br />
<br />
Der Hack 0 war in der Hinsicht sehr interessant, da wir alle unsere ersten Erfahrungen mit einem Arduino machen konnten. Einige von unserem Team hatten bisher auch noch nie auf einer Printplatte irgendwelche Widerstände oder Schalter etc. gelötet. Ebenso war es erstaunlich, dass man mit so wenig so viel verschiedene Sachen machen kann. Keiner von uns hat gedacht dass wir bereits am ersten Tag irgend etwas mit unseren Muskeln kontrollieren könnten. Insgesamt kam der Hack 0 gut bei uns an und wir alle konnten einiges davon profitieren und hoffentlich auch den weiteren Hacks weiterverwenden.<br />
<br />
== Hack 1: Baseball-Cap mit Ventilator ==<br />
<br />
Der Hack 1 beschreibt die Konzept- und Testphase des ersten Prototyps.<br />
<br />
Zu Beginn waren wir uns sehr unschlüssig was wir wirklich bauen wollen. Also entschieden wir uns für ein weiteres Experiment mit einem Bausatz von Backyard Brains. Wir versuchten durch die Funktion des Heart and Brain Spiker Shield einen Ventilator anzusteuern. Der Gedanke, welcher uns auf diese Idee führte, kennt wohl jeder Student. Während einer Prüfung kommt so mancher ins Grübeln und in harten Fällen kommt es auch vor dass einem eine Schweissperle von der Stirn läuft. Um in solchen Fällen für die nötige Kühlung zu sorgen, sollen Sensoren die Hirnströme gemessen und als Signal wiedergeben werden um damit einen Ventilator anzuschalten.<br />
<br />
Zu unserem eigenen Erstaunen erhielten wir sogar ein Signal aus unserer Messung. Es stellte sich aber sehr bald heraus, dass das wohl nicht die Hirnströme waren sondern eher Bewegungen des Kopfs und der Kabel. Denn die Sensoren sind recht empfindlich gegen solche Einflüsse. Zudem kam noch, dass die Sensoren über den Haaren angebracht wurden, was das Signal der Hirnströme noch zusätzlich verschlechterte. Nach einigen Versuchen sahen wir ein, dass das wohl eine zu grosse Herausforderung war und wir uns besser an einen einfacheren Versuch versuchen sollten.<br />
<br />
[[File:heart_and_brain.jpg|300px|thumb|none|Signal aus Messung der "Hirnströme"]]<br />
[[File:EEGDanielGlur.jpg|500px|thumb|none|Daniel beim messen der "Hirnströme"]]<br />
<br />
Also beschlossen wir uns anstelle der Hirnströme den Puls zu messen. Denn während einer Prüfung kann es durchaus auch vorkommen, dass der Puls etwas ansteigt. Die Messungen sollten dann ausgelesen werden und wenn der Puls eine gewisse Frequenz übersteigt, schaltet ein Ventilator ein um den Studenten wieder etwas zu beruhigen.<br />
<br />
Für diesen Versuch platzierten wir Sensoren am Unterarm und an der Handoberfläche. Idealerweise sollten laut Assistent Christian die Sensoren aber so weit wie möglich voneinander entfernt, an einer anderen Körperstelle angebracht werden um eine gewisse Referenz zu haben und um sicherzustellen, dass man wirklich den Puls misst. Unsere Kabel waren aber leider etwas zu kurz. Wir erhielten trotzdem ein relativ gutes Signal von welchem man davon ausgehen konnte, dass es sich um den Puls handelte. Jetzt nur noch das Signal auswerten, einen Frequenzbegrenzer programmieren und mithilfe von einem Arduino UNO den Ventilator ansteuern... Dachten wir... Dies war allerdings etwas Schwieriger als erwartet und überstieg unsere Kompetenzen. Das führte uns dazu auch diesen Versuch an dieser Stelle abzubrechen und nochmal zu überdenken.<br />
<br />
<br />
[[File:puls.png|400px|thumb|none|Pulssignal]]<br />
[[File:pulsmessung.jpg|400px|thumb|none|Pulssmessung]]<br />
<br />
<br />
Nun rannte uns schon langsam die Zeit davon. Doch dann kam uns die Idee, welche wir schon zu Beginn benötigt hätten. Und zwar wollten wir einen Ventilator auf einem Baseball-Cap anbringen und diesen ansteuern wenn ein gewisses Temperaturniveau unter dem Cap überschritten wird wird. Dazu wird ein 12V Ventilator via Relais von dem Arduino angesteuert. Weil der Arduino nur eine Spannung von 5V liefert, musste ein 12V Netzgerät den Ventilator mit Strom versorgen. Damit man den Ventilator so schalten konnte, damit er den Strom über das 12V Netzgerät bezieht, mussten wir noch ein Relais einbauen. Den Code für den Arduino bezogen wir aus verschiedenen ähnlichen Projekten aus dem Internet und passten ihn spezifisch für unsere Anwendung an. Für das auslesen der Temperatur mussten wir zuerst zwei Libreries herunterladen (DallasTemperature und OneWire).<br />
<br />
[[File:Komponente.PNG|400px|thumb|none|Verbaute Komponenten]]<br />
<br />
Nun mussten wir noch den Ventilator am Baseball-Cap anbringen. Dafür wurde eine Halterung im CAD konstruiert und mit einem 3D-Drucker ausgedruckt. Die Teile wurden danach zusammengesteckt und mit dem Baseball-Cap verschraubt. Natürlich wurde zuvor ein Loch in das Cap geschnitten, damit der Ventilator auch seinen Zweck erfüllen kann und dem Studenten einen kühlen Kopf verschafft.<br />
<br />
[[File:Aufbau.PNG|350px|thumb|none|3D-Modell im CAD]]<br />
<br />
[[File:Zusammenbau1.jpg|350px]]<br />
[[File:Zusammenbau2.jpg|350px]]<br />
<br />
Nun wurde unser Prototyp getestet. Der Sensor erfüllte seinen Dienst und wir konnten erfolgreich die Temperaturen messen. Jedoch war das Relais während dem Testen ständig eingeschalten und der Ventilator lief die ganze Zeit auch wenn die Temperatur den Minimalwert unterschritten hatte. Es hat sich also irgendwo in unserem Programm einen Fehler eingeschlichen. Den galt es nun zu finden und zu beheben. Dazu bauten wir einen Druckknopf ein um zu überprüfen ob das Relais defekt war und um die Fehlerquellen etwas einzugrenzen.<br />
<br />
[[File:Temperatur.jpg|350px]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/TQnGa5WiGS4<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
Der Druckknopf funktionierte, das Relais schaltete perfekt ein und aus und der Ventilator wurde an- und abgestellt. Somit wissen wir nun wo der Fehler zu suchen ist und können versuchen das Programm an diesen Stellen zu bereinigen. Nur ist jetzt schon Donnerstag Nachmittag und der Hack 2 hat schon begonnen. Wir alle wurden aufgefordert unseren bisherigen Prototypen aufzugeben und etwas neues, anderes zu versuchen und zu testen. Also legen wir schweren Herzens unser erster Prototyp beiseite und widmen unsere Kreativität dem nächsten Hack.<br />
<br />
=== Reflexion ===<br />
Der Hack 1 hat uns gezeigt, dass es gar nicht so einfach ist beim ersten Versuch ein brauchbares Resultat zu erzielen. Jedoch konnten wir so aus zwei vorhergehenden, fehlgeschlagenen Ansätzen eine Idee weiterentwickeln. Somit konnten wir mit unseren Kompetenzen und den Erfahrungen aus dem Hack 0 ein zufriedenstellendes Resultat erzielen. Durch die zwei Versuche zuvor ging leider recht viel Zeit "verloren", welche wir sehr benötigt hätten um unser erster Prototyp fehlerfrei hinzukriegen. Es war uns auch eine Lehre, dass man nicht zu lange an einer Sache verharren sollte wenn einem nur wenig Zeit zur Verfügung steht. Manchmal ist es besser man wirft alles nochmal über den Haufen und beginnt von vorne. Trotz allen Strapazen während des Hack 1 sind wir mit unserem ersten Prototyp sehr zufrieden und konnten auch bei diesem Versuch wieder viel profitieren und mitnehmen. Nun blicken wir gespannt nach vorne auf den nächsten Hack.<br />
<br />
<br />
===Code===<br />
<br />
Wir konnten zwar die Temperatur herauslesen und das Relais über einen Butten steuern, jedoch die Steuerung anhand der Temperatur geling uns nicht.<br />
<br />
<pre><br />
/********************************************************************/<br />
// First we include the libraries<br />
#include <OneWire.h> <br />
#include <DallasTemperature.h><br />
/********************************************************************/<br />
// Data wire is plugged into pin 2 on the Arduino <br />
#define ONE_WIRE_BUS 2 <br />
<br />
float tempReading;<br />
/********************************************************************/<br />
// Setup a oneWire instance to communicate with any OneWire devices <br />
// (not just Maxim/Dallas temperature ICs) <br />
OneWire oneWire(ONE_WIRE_BUS); <br />
/********************************************************************/<br />
// Pass our oneWire reference to Dallas Temperature. <br />
DallasTemperature sensors(&oneWire);<br />
/********************************************************************/ <br />
int relayPin = 4; // Relay Singnal lead to Digital Pin [D2-D12]<br />
<br />
float maxTemperature = 30.00; // The Max Temperature allowed<br />
float minTemperature = 25.00; // The Min Temperature allowed<br />
<br />
// constants won't change. They're used here to set pin numbers:<br />
const int buttonPin = 8; // the number of the pushbutton pin<br />
const int ledPin = 4; // the number of the LED pin<br />
<br />
// variables will change:<br />
int buttonState = 0; // variable for reading the pushbutton status<br />
<br />
void setup(void) {<br />
// initialize the LED pin as an output:<br />
pinMode(ledPin, OUTPUT);<br />
// initialize the pushbutton pin as an input:<br />
pinMode(buttonPin, INPUT);<br />
<br />
Serial.begin(9600); <br />
Serial.println("Dallas Temperature IC Control Library Demo"); <br />
// Start up the library <br />
sensors.begin(); <br />
}<br />
<br />
void loop(void) <br />
{ <br />
// call sensors.requestTemperatures() to issue a global temperature <br />
// request to all devices on the bus <br />
/********************************************************************/<br />
Serial.print(" Requesting temperatures..."); <br />
sensors.requestTemperatures(); // Send the command to get temperature readings <br />
Serial.println("DONE"); <br />
/********************************************************************/<br />
Serial.print("Temperature is: "); <br />
Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"? <br />
// You can have more than one DS18B20 on the same bus. <br />
// 0 refers to the first IC on the wire <br />
delay(1000); // Check Temperature every second<br />
<br />
float temperature = getTemperature();<br />
if(temperature >= maxTemperature){<br />
powerOnRelay();<br />
} else if (temperature <= minTemperature) {<br />
powerOffRelay();<br />
}<br />
delay(1000); // Check tempertature every second<br />
<br />
} <br />
void powerOnRelay() {<br />
digitalWrite(relayPin, HIGH);<br />
Serial.println("Relay On");<br />
}<br />
<br />
void powerOffRelay() {<br />
digitalWrite(relayPin, LOW);<br />
Serial.println("Relay Off");<br />
}<br />
float getTemperature(){<br />
tempReading = digitalRead(ONE_WIRE_BUS);<br />
<br />
// read the state of the pushbutton value:<br />
buttonState = digitalRead(buttonPin);<br />
<br />
// check if the pushbutton is pressed. If it is, the buttonState is HIGH:<br />
if (buttonState == HIGH) {<br />
// turn LED on:<br />
digitalWrite(ledPin, HIGH);<br />
} else {<br />
// turn LED off:<br />
digitalWrite(ledPin, LOW);<br />
}<br />
}<br />
</pre><br />
<br />
== Hack 2: Spritzenpumpe ==<br />
<br />
Nachdem der Hack 1 abgeschlossen war, machten wir uns aufs Neue darüber Gedanken was wir für einen Prototyp für den Hack 2 bauen wollen. Urs hat nach dem Abschluss von Hack 1 gesagt, wir sollten uns ein komplett neues Produkt überlegen, welches möglicherweise auch etwas mit der Medizintechnik zu tun hat. Nach einem Brainstorming kamen wir noch nicht so richtig auf einen grünen Zweig. So kamen wir auf die Idee uns einen Kaffee zu holen und einfach mal durch das FABLAB zu laufen um alles Mögliche anzuschauen, in die Hand zu nehmen und uns von all diesen Gegenständen inspirieren zu lassen. So kamen uns diverse Gegenstände in die Finger. darunter waren Servomotoren sowie einige DC-Motoren, eine Spritze, eine Pumpe, ein Micro-Switch Schalter, ein Potentiometer und vieles mehr. Diese Gegenstände haben wir dann auf unserem Gruppentisch ausgebreitet und uns Gedanken darüber gemacht was wir damit wohl anstellen konnten zum Thema Medizintechnik. So entstanden relativ schnell einige Ideen. Wir haben uns schlussendlich dafür entschieden ein Dosiergerät für eine medizinische Spritze zu machen. Dieses sollte so funktionieren, dass wir eine Spritze in eine Vorrichtung legen und über einen DC-Motor zum Einfahren bzw. Ausfahren bringen. Dazu muss die Drehbewegung des Motors in eine Lineare Bewegung umgeleitet werden. Zudem muss ggf. auch die Drehzahl des Motors durch ein Potentiometer reguliert werden können um einen zu schnellen Aus- oder Einfahrvorgang zu verhindern. Soviel zu zu den technischen Überlegungen. <br />
<br />
Sofort nach dem Entscheid suchten wir nach einem geeigneten Motor. Dieser sollte dabei eine eher tiefe Drehzahl haben damit die Spritze nur langsam ein- und ausfährt. Zudem suchten wir im Internet nach einem geeigneten Mechanismus der die Drehbewegung in eine lineare Bewegung umwandelt. Denn wir hatten leider zu wenig zeit um alles selber zu entwerfen und zu konstruieren. So wurden wir auf auf der Hompage von [https://www.thingiverse.com/thing:2797132/ Thingiverse] schliesslich fündig. Also konnte wir die Folgenden Komponenten herunterladen und mit dem 3D-Drucker ausdrucken.<br />
<br />
Komponenten: <gallery><br />
File:Halteplatte.PNG | Halteplatte<br />
File:Zahnrad.PNG | Zahnradpaar<br />
File:Zahnradpaar.PNG | Zahnstange<br />
File:Zahnstange.PNG | Zahnrad<br />
</gallery><br />
<br />
Da wir einen anderen Motor verwendeten als für diesen Mechanismus vorgesehen wäre, mussten wir noch eine passende Adapterplatte konstruieren, damit der Motor auch auf die Vorrichtung passt.<br />
<br />
<gallery><br />
File:Adapterplatte.PNG | Adapterplatte<br />
File:Motor.PNG | Motor<br />
File:Motor_mit_Adapter.jpg | Motor mit Adapter<br />
</gallery><br />
<br />
Der Motor benötigt, wie auch der Ventilator von Hack 1, eine Spannung von 12V für den Betrieb. Also mussten wir erneut das 12V Netzgerät verwenden. Damit unser zweiter Prototyp auch die gewünschte Fördermenge fördern kann, muss die Zeitdauer, in welcher gefördert werden soll, definiert werden. Das dazugehörige Programm wird mit einem Arduino UNO implementiert. Der Zugehörige Code haben wir durch Recherche im Internet und durch persönliches erweitern und anpassen erstellt. Die Drehzahl des Motors darf nicht zu hoch sein damit man die Fördermenge auch sinnvoll einstellen kann. Für diese Anwendung wird ein Potentiometer zwischen Relais und Motor gehängt. So kann die Motorspannung reguliert und die Drehzahl anforderungsgemäss eingestellt werden. Nachfolgend wird der Prozessablauf kurz beschrieben.<br />
<br />
Mit einem Knopfdruck wird wird ein Relais geschalten und der Motor wird angesteuert. Die Drehzahl des Motors wird über ein Getriebe reduziert. Die Zahnräder greifen auf eine Zahnstange und wandeln die Drehbewegung in eine lineare Bewegung um. An der Zahnstange wird der Stössel der Spritze befestigt. Der Rest der Spritze wird mit einem Kabelbinder fest mit der Bodenplatte verbunden damit sich dieser Teil nicht bewegen kann. Die programmierte Zeitdauer bestimmt welche Menge an Flüssigkeit gefördert werden soll.<br />
<br />
[[File:Pumpe.PNG|500px|thumb|none|Aufbau der Spritzenpumpe]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/PLG_S3GtVI8<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
=== Reflexion ===<br />
<br />
Anders als beim Hack 1 kamen waren wir uns bei diesem Hack sehr schnell einig was genau wir bauen möchten. Die ganze Ideenfindung erledigte sich sehr schnell und wir konnten nach bereits wenigen Stunden mit dem programmieren des Arduinos beginnen. Wie wir bereits im Hack 1 erfahren durften, ist das bei dem gedrängten Zeitplan dieser Woche ein grosser Vorteil. Rückblickend können wir urteilen, dass der Hack 2 aus unserer Sicht ein erfreuendes Erfolgserlebnis war. Unser zweiter Prototyp funktioniert genau so wie wir uns das von Beginn an vorgestellt haben. Per Knopfdruck fördert unser Prototyp eine gewisse Menge an Flüssigkeit.<br />
<br />
=== Code ===<br />
<br />
<pre><br />
<br />
bool geschaltet = false;<br />
int RelaisPin = 10; <br />
int tasterPin = 2;<br />
int empfindlichkeit = 200;<br />
<br />
void setup() {<br />
<br />
pinMode( tasterPin, INPUT_PULLUP);<br />
pinMode( RelaisPin, OUTPUT);<br />
<br />
}<br />
<br />
void loop() {<br />
<br />
if (digitalRead(tasterPin) == LOW) <br />
{<br />
if (geschaltet == false) {<br />
geschaltet = true;<br />
}<br />
else {<br />
geschaltet = false;<br />
}<br />
}<br />
<br />
if (geschaltet == true) {<br />
digitalWrite(RelaisPin, HIGH);<br />
delay(1000);<br />
geschaltet = false; <br />
}<br />
<br />
if (geschaltet == false) {<br />
digitalWrite(RelaisPin, LOW);<br />
}<br />
<br />
delay(empfindlichkeit);<br />
}<br />
</pre><br />
<br />
== Hack 3: Zinnguss ==<br />
<br />
Für diesen Hack wurde Zinn gegossen. Dank dem tiefen Schmelzpunkt lässt sich der Gusswerkstoff in einer Stahlkanne mit einem Brenner einer Autogenschweissanlage leicht erhitzen.<br />
<br />
[[File:Kanne.jpg|300px|thumb|none|Stahlkanne mit flüssigem Zinn]]<br />
<br />
=== Versuch 1 ===<br />
<br />
Für die Gussform wurde MDF verwendet. Da die Hitzebeständigkeit von MDF unklar war, sollte ein kleiner Versuch Aufschluss geben. Eine einfache Zylinderform mit einem Überlaufbecken bestehend aus 3 Platten gemässe Bild [[:File:Versuch_1_Gussform.jpg]]Gussform, Versuch 1. Da nur eine kleine Menge an Zinn erhitzt wurde, war die Temperatur vermutlich deutlich über dem Schmelzpunkt. Es entwickelte sich Dampf, was zu einem Gussfehler im Überlauf führte. Ausserdem wurde das MDF stark verkohlt, siehe [[:File:Versuch_1_Resultat.jpg]]Resultat. Dennoch ist das Resultat zufriedenstellend, sodass für einen weiteren Versuch wieder MDF verwendet werden kann.<br />
<br />
Versuch 1: <gallery><br />
File:Versuch_1_Gussform.jpg | Gussform<br />
File:Versuch_1_Guss.jpg | Frisch gegossen<br />
File:Versuch_1_Resultat.jpg | Resultat<br />
</gallery><br />
<br />
=== Versuch 2 ===<br />
<br />
Nun konnte der eigentliche Versuch gestartet werden. Das Zinn wurde wieder in der Stahlkanne erhitzt, jedoch nicht so stark wie in Versuch 1. Jedoch wurden diesmal alle Formen mit dem Lasercutter ausgeschnitten. Auch bei dieser Gussform diente die letzte MSF Platte als Überlauf. Das flüssige Zinn konnte bei der grösseren Form kontrollierter und langsamer gegossen werden, so dass die Form gleichmässig ausgefüllt werden konnte, siehe Bild [[:File:Versuch_2_Guss.jpg]]Frisch gegossen.<br />
<br />
Versuch 2:<br />
<gallery><br />
File:Versuch_2_Gussform.jpg | Gussform<br />
File:Versuch_2_Guss.jpg | Frisch gegossen<br />
</gallery><br />
<br />
Durch den Schwund lässt sich das Gussstück relativ gut aus der Form drücken, obwohl keine Formschrägen vorhanden waren. Vorher empfiehlt es sich, den Überlauf abzufräsen (Bild [[:File:Versuch_2_Fraesen.jpg]]Überfäsen, [[:File:Versuch_2_Resultat.jpg]]Resultat), da sich Zinn nur bedingt im Schraubstock einspannen lässt. Zinn vierbiegt sich sehr leicht.<br />
<br />
Versuch 2 bearbeitung<br />
<gallery><br />
File:Versuch_2_Fraesen.jpg | Überfäsen<br />
File:Versuch_2_Resultat.jpg | Resultat<br />
</gallery><br />
<br />
= Skill-Share-Session =<br />
<br />
== Grundlagen der Arduinoprogrammierung ==<br />
<br />
Dieser Kurs wurde von unserer Gruppe angeboten und soll den Teilnehmern die Grundlage der Programierung eines Arduino UNO beibringen. Folgend werden die grundlegenden Befehle und deren Syntax vorgestellt. Der Aufbau folgt dem YouTube Tutorial von Max. Hier gelangst du zu dem Link: [https://www.youtube.com/watch?v=eaFvQG8wrGw&list=PLAB63281B90FB376E&index=3]<br />
<br />
=== Skript ===<br />
Der Code wird in einem Skript geschrieben. Dieses ist in zwei Bereiche aufgeteilt<br />
* Void setup() Dieses Skript wird einmalig ausgeführt und enthält zB. Input und output<br />
* Void loop() Dieser Teil des Skripts wird als Dauerschleife wiederholt<br />
<br />
==== Befehlseingabe ====<br />
<br />
Die Befehle werden nach folgender Syntax eingegeben:<br />
<br />
* Funktion(Parameter1, Parameter2);<br />
<br />
Dabei muss das «;» gesetzte werden, ausserdem spielen Gross- und Kleinbuchstaben eine Rolle.<br />
<br />
=== Variablen ===<br />
Übersichtshalber sollen sprechende Namen für die Bezeichnung von z.B. Outputs verwendet werden. Dabei können verschiedene Datentypen ausgewählt werden.<br />
<br />
==== Datentyp ====<br />
* int Ganze Zahlen von -32768 … 32767 z.B. 1, 48, -654<br />
* boolean Entweder true oder false<br />
* byte 8 Bit an Informationen z.B. 00010101 (=21)<br />
* char enthält 1 Byte Informationen, das ein Zeichen darstellt z.B. 65 = A<br />
* long grosse Zahlen von ca. -2.1 Milliarden bis 2.1 Milliarden z.B. 15636451<br />
* float Komazahlen z.B. 5.498<br />
* string Zeichenketten z.B. «Do it yourself»<br />
<br />
==== Deklaration Syntax ====<br />
<br />
* Datentyp Name = Wert;<br />
<br />
oder<br />
<br />
* Datentyp Name;<br />
* Name = Wert;<br />
<br />
====Ort der Deklaration====<br />
<br />
Die Variable muss immer im Teil des Skriptes deklariert sein, wo sie auch gebraucht wird. Wird die Variable im setup wie auch im loop benötigt, so kann man die Variable als sogenannte globale Variable oberhalb des Setups deklarieren.<br />
<br />
===If-Schleife===<br />
<br />
Bei der If-Schleife wird der Wert einer Variablen mit einem Vergleichswert verglichen. Falls der Vergleich positiv ist, wird der Code ausgeführt, ansonsten übersprungen. Dazu sind Vergleichsoperatoren notwendig.<br />
<br />
====Syntax====<br />
<br />
if(Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
====Vergleichsoperatoren====<br />
<br />
* == gleich<br />
* != ungleich<br />
* < kleiner<br />
* < grösser<br />
* <= kleiner gleich<br />
* >= grösser gleich<br />
<br />
===While-Schleife===<br />
<br />
Mit der While-Schleife wird die Bedingung fortlaufend geprüft. Stimmt diese, wird der Code ausgeführt, ansonsten wird der Code übersprungen. Es können die selben Vergleichsoperatoren wie bei der If-Schleife verwendet werden.<br />
<br />
====Syntax====<br />
<br />
while (Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
==Bildgebende Verfahren==<br />
<br />
Der Tag begann mit einer Einführung in die Bildgebenden Verfahren durch David Stadelmann. Hierbei erklärte er uns, verschiedene Methoden, um Bilder aus dem Körperinneren zu machen und welche Methode für die verschiedenen Gewebetypen gebraucht werden. Zudem Zeigte und erklärte er uns anhand von Beispielen was die Einzelnen Schattierungen aussagen könnten.<br />
<br />
[[DIY-MedTech Bildgebende Verfahren-Unterschiedliche Bildeindrücke - Team Frosch]]<br />
<br />
==Synths & Sound ==<br />
<br />
Danach ging es weiter mit dem Kurs Synths & Sounds. Diese Session wurde von [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] durchgeführt. Hierbei zeigte er uns, wie man mit verschieden erzeugten Schwingungen eine grosse Variation von Tönen generiert kann. Zudem auch wie man elektronisch gewisse Instrumente Simulieren könnte und durch die Aneinanderreihung verschiedenster Tonvariationen eine Melodie enstehen kann. Dies mit unterschiedlich Variationen von selbstgebauten Synthesizers.<br />
<br />
<gallery><br />
File:Sinthesizer1.jpg | Synthesizer 1<br />
File:Synthesizer2.jpg | Synthesizer 2<br />
</gallery><br />
<br />
== Schweissen ==<br />
<br />
Bei dem Skill-Share Workshop von [https://www.hackteria.org/wiki/Team_G2020/ Team G2020] konnten wir verschiedene Schweissverfahren kennenlernen und auch gleich anwenden.<br />
<br />
Es wurde uns das [https://de.wikipedia.org/wiki/Lichtbogenhandschwei%C3%9Fen/ Elektrodenschweissen], das [https://de.wikipedia.org/wiki/Schutzgasschwei%C3%9Fen/ MIG-Schweissen] und das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] nähergebracht.<br />
<br />
Dieser Workshop war für uns alle sehr interessant, da sich bisher noch keiner von uns so wirklich mit dem Schweissen und den verschiedenen Verfahren auskannte. An diesem Tag konnten wir nach einer kurzen Theorie gleich sofort selber handanlegen und die verschiedenen Schweissverfahren ausprobieren.<br />
<br />
Dabei mussten wir feststellen, dass es gar nicht so einfach ist wie es immer aussieht. Besonders das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] braucht sehr viel Übung und Geschick um wirklich schöne Schweissergebnisse zu erzielen.<br />
<br />
== Autonomes Nervensystem und das Hören in der Medizin ==<br />
<br />
Der Assistent Dr. Christian Gehringer, MSc. (ETH) hielt uns einen sehr interessanten Vortrag. Dabei ging es darum, dass wir die Anatomie kennenlernen und erkunden am Beispiel des Hörens z.B mit einem Stethoskop.<br />
<br />
[https://www.hackteria.org/wiki/Autonomes_Nervensystem_und_das_H%C3%B6ren_in_der_Medizin/ Autonomes Nervensystem und das Hören in der Medizin]</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=MedTechDIY20_Die_Profis&diff=41674MedTechDIY20 Die Profis2020-02-09T11:59:12Z<p>Tnroth: /* Versuch 2 */</p>
<hr />
<div>Hier gehts zurück auf: [[Medizintechnik DIY]]<br />
<br />
[[File:DieProfis.png|700px|right|none|Wochenplan]]<br />
<br />
= Team =<br />
<br />
'''Die Profis''' besteht aus den drei Studierenden '''Daniel Glur''', '''Lukas Roth''' und '''Daniel Zellweger''' der Hochschule Luzern. Im Rahmen der Blockwoche "DIY Medizintechnik" formierte sich das Team aus verschiedenen Studiengängen um auch interdisziplinär voneinander zu lernen und Wissen auszutauschen.<br />
<br />
'''Mitglieder:'''<br />
<br />
Maschinentechnik: <gallery><br />
File:DanielGlur.jpg | Daniel Glur<br />
File:LukasRoth.jpg | Lukas Roth<br />
</gallery><br />
<br />
Medizintechnik: <gallery><br />
File:DanielZellweger.jpg | Daniel Zellweger<br />
</gallery><br />
<br />
= Pflichtlektüre =<br />
<br />
'''How to control someone else's arm with your brain | Greg Gage'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/rSQNi5sAwuc<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
In Diesem Video wird gezeigt wie man über die Aufnahme eines Biologischen Signals, dieses an eine zweite Person weitergeleitet werden kann.<br />
Dies funktioniert jedoch nur aus verschiedenen Gründen bedingt. Nebst den allgemeinen Störeinflüsse aus der Messtechnik, kommen zusätzlich noch jene der Ansteuerung. Da das Signal nur von einzelnen Muskelfasern abgefangen wird, kann dieses nicht sämtliche Muskelfasern der zweiten Person Reizen. Dies hat zur folge, dass nur eine annähernd ähnliche Bewegung des Armes arfolgt.<br />
<br />
<br />
'''What is Open Source explained in LEGO'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/a8fHgx9mE5U<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Durch die Verwendung der Open Source Methode erhält man die Möglichkeit während des Projektes noch Erweiterungen oder Veränderungen anzustreben.<br />
<br />
'''"Why toys make good medical devices | Jose Gomez-Marquez'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/UHCT9SOBHs0<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Nebst dem Preis besitzen Spielzeuge diverse spezifische Funktionen. Da diese meist günstige Anschaffung auch einfach verändert werden kann, sind sie sehr geeignet dafür umgebaut zu werden. Somit sind Spielzeuge welche chemische oder sensorische Funktionen besitzen ein gefundenes fressen für den Hacker und eine Alternative für Regionen in welchen die finanzielle Situation teure Medizinprodukte nicht erlauben.<br />
<br />
= Einleitung =<br />
Die Blockwoche "DIY Medizintechnik" verbindet Anwendungen der Medizintechnik mit Do It Yourself (DIY) Ansätzen. Dadurch wird das tiefere Verständnis von Medizintechnischen Geräten durch einen direkten, interdisziplinären und möglichst selbstgesteuerten Zugang gefördert. Basierend auf verschiedenen elektrophysiologischen Messmodulen (EMG, EKG, EOG, EEG) entwickeln die Studierenden im Team Ideen für innovative Projekte. Erste Prototypen werden mit den Mitteln der Digitalen Fabrikation hergestellt und getestet. Tag für Tag stehen produktive "Hacks" auf dem Programm. Hacks sind sehr praxisbezogene Arbeitssequenzen wo die Studierenden Experimente durchführen sowie Prototypen entwickeln und bauen können. Dabei ist aber nicht nur die Medizintechnik zentral sondern auch der Interdisziplinäre Austausch sowie eine Skill-Share-Session wo die Studierenden ganz nach dem do it yourself Gedanken einen eigenen Workshop leiten können.<br />
Alle Erkenntnisse und Erfahrungen werden laufend in einem eigenen Wiki-Eintrag festgehalten und dokumentiert.<br />
<br />
Die Blockwoche wird von den beiden Dozenten [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] und [https://www.hackteria.org/wiki/Gaudi/ Urs Gaudenz] duchgeführt. Unterstützt wurden die Beiden von '''Dr. Christian Gehringer, MSc. (ETH)''' und [http://chrisobrist.ch/about// Chris Obrist]<br />
<br />
Maschinentechnik: <gallery><br />
File:MarkDusseiller.jpg | Dr. Marc R. Dusseiller<br />
File:UrsGaudenz.jpg | Urs Gaudenz<br />
</gallery><br />
<br />
= Planung =<br />
<br />
Die Blockwoche wird wie in folgendem Wochenplan unterteilt:<br />
<br />
[[File:Wochenplan2020.jpg|700px|thumb|none|Wochenplan]]<br />
<br />
= Wochenrückblick =<br />
== Die Woche in Bilder==<br />
[[File:ProfisInAction.PNG|400px]]<br />
[[File:Komponente.PNG|300px]]<br />
[[File:Aufbau.PNG|400px]]<br />
[[File:Motor_mit_Adapter.jpg|300px]]<br />
[[File:Pumpe.PNG|350px]]<br />
[[File:pulsmessung.jpg|450px]]<br />
[[File:Zusammenbau2.jpg|300px]]<br />
[[File:Foto 07.02.20, 11 14 53.jpg|300px]]<br />
[[File:DanielZellweger.jpg|300px]]<br />
<br />
== Tag 1==<br />
'''Einführung'''<br />
<br />
Wir traffen uns zu beginn im FABLAB, wo sich die Dozenten vorstellten und uns über Ihren bisherigen Werdegang informierten. Das interessante an der beruflichen Laufbahn der beiden ist, dass beide ein Studium abgeschlossen haben und heute einer Tätigkeit nachgehen, welche eigentlich nicht mehr viel mit dem damaligen Studium zu tun hat. Das vermittelt unserer Meinung nach, den Studenten eine etwas andere Sichtweise als die technische Hochschule. Es zeigt z.B. dass man nach einem Studium nicht gezwungen ist auf diesem Fachgebiet zu arbeiten sondern dass der Arbeitsmarkt noch sehr viele andere Möglichkeiten zu bieten hat.<br />
<br />
Nachdem sie sich Vorgestellt haben, stellten sie uns auch noch den Assistent vor. Dieser ist ein ausgebildeter Arzt welcher sich momentan für seinen zweiten Doktortitel engagiert. Von Ihm und seinem grossen medizinischen Fachwissen können wir als Studenten die ganze Woche profitieren.<br />
<br />
Danach überliessen die Dozenten uns Studenten das Wort. Es war eine etwas andere Vorstellungsrunde wie man sie noch nicht kannte. Dazu stand uns ein ganzer Tisch mit kuriosen Gegenständen, welche etwas mit dem DIY Gedanke zu tun haben, zur verfügung. Sie vorderten uns alle auf einen Gegenstand auszuwählen. Danach mussten wir uns Vorstellen und noch ein paar Worte dazu verlieren welche Gemeinsamkeiten wir mit dem ausgesuchten Gegenstand teilen.<br />
<br />
'''DIY (Do It Yourself)'''<br />
<br />
Das DIY Prinzip basiert auf eigenem experimentieren und learning by doing<br />
<br />
{{#widget:Iframe<br />
|url= https://www.youtube.com/watch?v=3zH_J12G9sQ<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
<br />
'''How to use Wiki'''<br />
<br />
Durch die 45 minütige Einführung in die Handhabung das Wiki durch Dr. Marc R. Dusseiller waren wir bereit unsere Erkenntnisse und Projekte, welche wir in dieser Woche erfahren und durchführen werden, in einer Zugänglichen Form, niederzuschreiben.<br />
<br />
== Tag 2 ==<br />
Am zweiten Tag begannen wir die Vorbereitung Skill-Share-Session. Diesbezüglich sollte jeder Teilnehmer einen Skill, welcher er erlernen möchte und einen Skill, den man beibringen könnte notieren. Diese wurden dann auf einer Tafel in Cluster aufgeteilt. Zwölf davon wurden als Skill-Share Workshops ausgewählt und die Teilnehmer konnten sich nach Belieben einschreiben.<br />
<br />
[[File:SkillSession2020.jpg|500px|thumb|none|Skill-share-session]]<br />
<br />
Während des zweiten Teils arbeiteten wir an unserem Experiment weiter, welches wir am Vortag begonnen haben.<br />
Dazu mussten wir die elektronischen Bauteile mit unserem Laptop verbinden und einen vorgefertigten Sketch laufen lassen.<br />
<br />
Nachdem wir den ersten Versuch erfolgreich durchführen konnten, versuchten wir mit dem Arduino einen Stepmotor anzusteuern. Dabei stiessen wir jedoch auf einige Schwierigkeiten. Da wir diese bis zur Einführung des Lasercutters und des 3D-Druckers fertig haben sollten. Siehe [[#Hack 0]]<br />
<br />
Unteranderem wurde unsere Skill-Share-Session über Arduino vorbereitet.<br />
<br />
Am Abend kam [http://chrisobrist.ch/about// Chris Obrist] zu Besuch und unterhielt uns mit einer wundervollen musikalischen Darbietung.<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/Hj1Ogr8137o<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
== Tag 3 ==<br />
Von 9:00 Uhr bis nach dem Mittag um 14:00 Uhr waren wir alle mit der [[#Skill-Share-Session]] beschäftigt.<br />
<br />
Danach hatten wir Zeit um den nächsten Hack vorzubereiten und zu planen.<br />
<br />
== Tag 4 ==<br />
Den Vormittag verbrachten wir weiter mit dem Hack 1, welchen wir dann vor der Mittagspause den Dozenten und allen Mitstudierenden präsentieren durften. Leider litten wir während des ganzen Hack 1 sehr unter Zeitdruck, was auf eine turbulente Projektphase zurückzuführen ist. Mehr dazu erfährst du im [[#Hack 1]].<br />
<br />
Nach einer kurzen Inspirationphase entschieden wir uns dafür eine kleine Spritzenpumpe zu basteln. [[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 5 ==<br />
Am Tag 5 ging es darum die Einzelteile physikalisch sowie über ein Funktionierendes Arduinoprogamm zum laufen zu bringen.<br />
[[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 6 ==<br />
Zum Abschluss durften wir alle Hacks der verschiedenen Teams begutachten. Interessant waren die spontanen Vorgehensweisen und auch die daraus entstandenen Produkte. Viele Teams suchten zuerst das Material und erst danach die Ideen. So entstanden die unterschiedlichsten Prototypen.<br />
Zudem Reflektierten wird die Blockwoche. Im Allgemeinen gefielen die Freiheit und auch der unkomplizierte Teamgeist untereinander. Besten Dank auch an die Organisatoren der Blockwoche.<br />
<br />
= Experimente =<br />
Bei den Experimenten sollte es darum gehen aus unterschiedlichsten Einzelteilen ein Produkt zu erschaffen. Dieser Prozess brachte uns dazu über die Grenzen unseres altäglichem Denken zu springen und in der Verbindung der einzelnen Bereiche solcher Produkte besser zu verstehen.<br />
<br />
== Hack 0 ==<br />
<br />
<br />
===Versuchsaufbau 1===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 1===<br />
Nach den Inputs der Dozenten verbrachten wir hauptsächlich die Zeit damit den Muscle Spiker Shield nach der Anleitung mit den dazugehörigen Teilen zusammenzulöten.[https://backyardbrains.com/products/files/MuscleSpikerShield.v.2.11.BuildingInstructions.pdf]V2.11<br />
Nebenbei machten wir unsere ersten Schritte in Arduino.<br />
Als wir unsere mechatronischen Komponenten zusammengestellt und ein Grundverständnis von Arduino angeeignet haben, verbanden wir dies in einem Experiment. <br />
Das Experiment welches wir durchführten nennt man Control Machines with your Brain und ist auf der Seite von [https://backyardbrains.com/experiments/muscleSpikerShield/ Backyard Brains] nachzusehen.<br />
<br />
Für den Versuch wurden Elektroden an den Testpersonen angeschlossen und über den Arduino ausgelesen.<br />
Der Versuch wurde mit zwei Testpersonen durchgeführt. Dabei fiel uns nebst der Kontrolle der LED's auch auf, dass der Puls gemessen wurde. Dies unabhängig von der Position der Elektroden. Vermutlich reagieren die Elektroden zu sensitiv für diese Anwendung.<br />
<br />
<br />
[[File:UeberblickVersuchTeamD.jpg|400px|thumb|none|Versuchsaufbau]]<br />
[[File:Versuchsaufbau1TeamD.jpg|400px|thumb|none|Elektrodenbefestigung]]<br />
[[File:MessungDanielGlur.jpg|400px|thumb|none|Messung von Daniels Puls]]<br />
<br />
===Versuchsaufbau 2===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 2===<br />
<br />
Als zweites Experiment versuchten wir durch das anspannen der Muskeln einen Servomotor anzusteuern. Wie es auch auf der Homepage von [https://backyardbrains.com/experiments/MuscleSpikerShield_GripperHand/ Backyard Brains] anzutreffen ist. Dieser Versuch konnte aber leider aus Zeitgründen nicht zu Ende geführt werden. Wir konnten lediglich das Arduinoprogramm laden und etwas anpassen.<br />
<br />
===Reflexion===<br />
<br />
Der Hack 0 war in der Hinsicht sehr interessant, da wir alle unsere ersten Erfahrungen mit einem Arduino machen konnten. Einige von unserem Team hatten bisher auch noch nie auf einer Printplatte irgendwelche Widerstände oder Schalter etc. gelötet. Ebenso war es erstaunlich, dass man mit so wenig so viel verschiedene Sachen machen kann. Keiner von uns hat gedacht dass wir bereits am ersten Tag irgend etwas mit unseren Muskeln kontrollieren könnten. Insgesamt kam der Hack 0 gut bei uns an und wir alle konnten einiges davon profitieren und hoffentlich auch den weiteren Hacks weiterverwenden.<br />
<br />
== Hack 1: Baseball-Cap mit Ventilator ==<br />
<br />
Der Hack 1 beschreibt die Konzept- und Testphase des ersten Prototyps.<br />
<br />
Zu Beginn waren wir uns sehr unschlüssig was wir wirklich bauen wollen. Also entschieden wir uns für ein weiteres Experiment mit einem Bausatz von Backyard Brains. Wir versuchten durch die Funktion des Heart and Brain Spiker Shield einen Ventilator anzusteuern. Der Gedanke, welcher uns auf diese Idee führte, kennt wohl jeder Student. Während einer Prüfung kommt so mancher ins Grübeln und in harten Fällen kommt es auch vor dass einem eine Schweissperle von der Stirn läuft. Um in solchen Fällen für die nötige Kühlung zu sorgen, sollen Sensoren die Hirnströme gemessen und als Signal wiedergeben werden um damit einen Ventilator anzuschalten.<br />
<br />
Zu unserem eigenen Erstaunen erhielten wir sogar ein Signal aus unserer Messung. Es stellte sich aber sehr bald heraus, dass das wohl nicht die Hirnströme waren sondern eher Bewegungen des Kopfs und der Kabel. Denn die Sensoren sind recht empfindlich gegen solche Einflüsse. Zudem kam noch, dass die Sensoren über den Haaren angebracht wurden, was das Signal der Hirnströme noch zusätzlich verschlechterte. Nach einigen Versuchen sahen wir ein, dass das wohl eine zu grosse Herausforderung war und wir uns besser an einen einfacheren Versuch versuchen sollten.<br />
<br />
[[File:heart_and_brain.jpg|300px|thumb|none|Signal aus Messung der "Hirnströme"]]<br />
[[File:EEGDanielGlur.jpg|500px|thumb|none|Daniel beim messen der "Hirnströme"]]<br />
<br />
Also beschlossen wir uns anstelle der Hirnströme den Puls zu messen. Denn während einer Prüfung kann es durchaus auch vorkommen, dass der Puls etwas ansteigt. Die Messungen sollten dann ausgelesen werden und wenn der Puls eine gewisse Frequenz übersteigt, schaltet ein Ventilator ein um den Studenten wieder etwas zu beruhigen.<br />
<br />
Für diesen Versuch platzierten wir Sensoren am Unterarm und an der Handoberfläche. Idealerweise sollten laut Assistent Christian die Sensoren aber so weit wie möglich voneinander entfernt, an einer anderen Körperstelle angebracht werden um eine gewisse Referenz zu haben und um sicherzustellen, dass man wirklich den Puls misst. Unsere Kabel waren aber leider etwas zu kurz. Wir erhielten trotzdem ein relativ gutes Signal von welchem man davon ausgehen konnte, dass es sich um den Puls handelte. Jetzt nur noch das Signal auswerten, einen Frequenzbegrenzer programmieren und mithilfe von einem Arduino UNO den Ventilator ansteuern... Dachten wir... Dies war allerdings etwas Schwieriger als erwartet und überstieg unsere Kompetenzen. Das führte uns dazu auch diesen Versuch an dieser Stelle abzubrechen und nochmal zu überdenken.<br />
<br />
<br />
[[File:puls.png|400px|thumb|none|Pulssignal]]<br />
[[File:pulsmessung.jpg|400px|thumb|none|Pulssmessung]]<br />
<br />
<br />
Nun rannte uns schon langsam die Zeit davon. Doch dann kam uns die Idee, welche wir schon zu Beginn benötigt hätten. Und zwar wollten wir einen Ventilator auf einem Baseball-Cap anbringen und diesen ansteuern wenn ein gewisses Temperaturniveau unter dem Cap überschritten wird wird. Dazu wird ein 12V Ventilator via Relais von dem Arduino angesteuert. Weil der Arduino nur eine Spannung von 5V liefert, musste ein 12V Netzgerät den Ventilator mit Strom versorgen. Damit man den Ventilator so schalten konnte, damit er den Strom über das 12V Netzgerät bezieht, mussten wir noch ein Relais einbauen. Den Code für den Arduino bezogen wir aus verschiedenen ähnlichen Projekten aus dem Internet und passten ihn spezifisch für unsere Anwendung an. Für das auslesen der Temperatur mussten wir zuerst zwei Libreries herunterladen (DallasTemperature und OneWire).<br />
<br />
[[File:Komponente.PNG|400px|thumb|none|Verbaute Komponenten]]<br />
<br />
Nun mussten wir noch den Ventilator am Baseball-Cap anbringen. Dafür wurde eine Halterung im CAD konstruiert und mit einem 3D-Drucker ausgedruckt. Die Teile wurden danach zusammengesteckt und mit dem Baseball-Cap verschraubt. Natürlich wurde zuvor ein Loch in das Cap geschnitten, damit der Ventilator auch seinen Zweck erfüllen kann und dem Studenten einen kühlen Kopf verschafft.<br />
<br />
[[File:Aufbau.PNG|350px|thumb|none|3D-Modell im CAD]]<br />
<br />
[[File:Zusammenbau1.jpg|350px]]<br />
[[File:Zusammenbau2.jpg|350px]]<br />
<br />
Nun wurde unser Prototyp getestet. Der Sensor erfüllte seinen Dienst und wir konnten erfolgreich die Temperaturen messen. Jedoch war das Relais während dem Testen ständig eingeschalten und der Ventilator lief die ganze Zeit auch wenn die Temperatur den Minimalwert unterschritten hatte. Es hat sich also irgendwo in unserem Programm einen Fehler eingeschlichen. Den galt es nun zu finden und zu beheben. Dazu bauten wir einen Druckknopf ein um zu überprüfen ob das Relais defekt war und um die Fehlerquellen etwas einzugrenzen.<br />
<br />
[[File:Temperatur.jpg|350px]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/TQnGa5WiGS4<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
Der Druckknopf funktionierte, das Relais schaltete perfekt ein und aus und der Ventilator wurde an- und abgestellt. Somit wissen wir nun wo der Fehler zu suchen ist und können versuchen das Programm an diesen Stellen zu bereinigen. Nur ist jetzt schon Donnerstag Nachmittag und der Hack 2 hat schon begonnen. Wir alle wurden aufgefordert unseren bisherigen Prototypen aufzugeben und etwas neues, anderes zu versuchen und zu testen. Also legen wir schweren Herzens unser erster Prototyp beiseite und widmen unsere Kreativität dem nächsten Hack.<br />
<br />
=== Reflexion ===<br />
Der Hack 1 hat uns gezeigt, dass es gar nicht so einfach ist beim ersten Versuch ein brauchbares Resultat zu erzielen. Jedoch konnten wir so aus zwei vorhergehenden, fehlgeschlagenen Ansätzen eine Idee weiterentwickeln. Somit konnten wir mit unseren Kompetenzen und den Erfahrungen aus dem Hack 0 ein zufriedenstellendes Resultat erzielen. Durch die zwei Versuche zuvor ging leider recht viel Zeit "verloren", welche wir sehr benötigt hätten um unser erster Prototyp fehlerfrei hinzukriegen. Es war uns auch eine Lehre, dass man nicht zu lange an einer Sache verharren sollte wenn einem nur wenig Zeit zur Verfügung steht. Manchmal ist es besser man wirft alles nochmal über den Haufen und beginnt von vorne. Trotz allen Strapazen während des Hack 1 sind wir mit unserem ersten Prototyp sehr zufrieden und konnten auch bei diesem Versuch wieder viel profitieren und mitnehmen. Nun blicken wir gespannt nach vorne auf den nächsten Hack.<br />
<br />
<br />
===Code===<br />
<br />
Wir konnten zwar die Temperatur herauslesen und das Relais über einen Butten steuern, jedoch die Steuerung anhand der Temperatur geling uns nicht.<br />
<br />
<pre><br />
/********************************************************************/<br />
// First we include the libraries<br />
#include <OneWire.h> <br />
#include <DallasTemperature.h><br />
/********************************************************************/<br />
// Data wire is plugged into pin 2 on the Arduino <br />
#define ONE_WIRE_BUS 2 <br />
<br />
float tempReading;<br />
/********************************************************************/<br />
// Setup a oneWire instance to communicate with any OneWire devices <br />
// (not just Maxim/Dallas temperature ICs) <br />
OneWire oneWire(ONE_WIRE_BUS); <br />
/********************************************************************/<br />
// Pass our oneWire reference to Dallas Temperature. <br />
DallasTemperature sensors(&oneWire);<br />
/********************************************************************/ <br />
int relayPin = 4; // Relay Singnal lead to Digital Pin [D2-D12]<br />
<br />
float maxTemperature = 30.00; // The Max Temperature allowed<br />
float minTemperature = 25.00; // The Min Temperature allowed<br />
<br />
// constants won't change. They're used here to set pin numbers:<br />
const int buttonPin = 8; // the number of the pushbutton pin<br />
const int ledPin = 4; // the number of the LED pin<br />
<br />
// variables will change:<br />
int buttonState = 0; // variable for reading the pushbutton status<br />
<br />
void setup(void) {<br />
// initialize the LED pin as an output:<br />
pinMode(ledPin, OUTPUT);<br />
// initialize the pushbutton pin as an input:<br />
pinMode(buttonPin, INPUT);<br />
<br />
Serial.begin(9600); <br />
Serial.println("Dallas Temperature IC Control Library Demo"); <br />
// Start up the library <br />
sensors.begin(); <br />
}<br />
<br />
void loop(void) <br />
{ <br />
// call sensors.requestTemperatures() to issue a global temperature <br />
// request to all devices on the bus <br />
/********************************************************************/<br />
Serial.print(" Requesting temperatures..."); <br />
sensors.requestTemperatures(); // Send the command to get temperature readings <br />
Serial.println("DONE"); <br />
/********************************************************************/<br />
Serial.print("Temperature is: "); <br />
Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"? <br />
// You can have more than one DS18B20 on the same bus. <br />
// 0 refers to the first IC on the wire <br />
delay(1000); // Check Temperature every second<br />
<br />
float temperature = getTemperature();<br />
if(temperature >= maxTemperature){<br />
powerOnRelay();<br />
} else if (temperature <= minTemperature) {<br />
powerOffRelay();<br />
}<br />
delay(1000); // Check tempertature every second<br />
<br />
} <br />
void powerOnRelay() {<br />
digitalWrite(relayPin, HIGH);<br />
Serial.println("Relay On");<br />
}<br />
<br />
void powerOffRelay() {<br />
digitalWrite(relayPin, LOW);<br />
Serial.println("Relay Off");<br />
}<br />
float getTemperature(){<br />
tempReading = digitalRead(ONE_WIRE_BUS);<br />
<br />
// read the state of the pushbutton value:<br />
buttonState = digitalRead(buttonPin);<br />
<br />
// check if the pushbutton is pressed. If it is, the buttonState is HIGH:<br />
if (buttonState == HIGH) {<br />
// turn LED on:<br />
digitalWrite(ledPin, HIGH);<br />
} else {<br />
// turn LED off:<br />
digitalWrite(ledPin, LOW);<br />
}<br />
}<br />
</pre><br />
<br />
== Hack 2: Spritzenpumpe ==<br />
<br />
Nachdem der Hack 1 abgeschlossen war, machten wir uns aufs Neue darüber Gedanken was wir für einen Prototyp für den Hack 2 bauen wollen. Urs hat nach dem Abschluss von Hack 1 gesagt, wir sollten uns ein komplett neues Produkt überlegen, welches möglicherweise auch etwas mit der Medizintechnik zu tun hat. Nach einem Brainstorming kamen wir noch nicht so richtig auf einen grünen Zweig. So kamen wir auf die Idee uns einen Kaffee zu holen und einfach mal durch das FABLAB zu laufen um alles Mögliche anzuschauen, in die Hand zu nehmen und uns von all diesen Gegenständen inspirieren zu lassen. So kamen uns diverse Gegenstände in die Finger. darunter waren Servomotoren sowie einige DC-Motoren, eine Spritze, eine Pumpe, ein Micro-Switch Schalter, ein Potentiometer und vieles mehr. Diese Gegenstände haben wir dann auf unserem Gruppentisch ausgebreitet und uns Gedanken darüber gemacht was wir damit wohl anstellen konnten zum Thema Medizintechnik. So entstanden relativ schnell einige Ideen. Wir haben uns schlussendlich dafür entschieden ein Dosiergerät für eine medizinische Spritze zu machen. Dieses sollte so funktionieren, dass wir eine Spritze in eine Vorrichtung legen und über einen DC-Motor zum Einfahren bzw. Ausfahren bringen. Dazu muss die Drehbewegung des Motors in eine Lineare Bewegung umgeleitet werden. Zudem muss ggf. auch die Drehzahl des Motors durch ein Potentiometer reguliert werden können um einen zu schnellen Aus- oder Einfahrvorgang zu verhindern. Soviel zu zu den technischen Überlegungen. <br />
<br />
Sofort nach dem Entscheid suchten wir nach einem geeigneten Motor. Dieser sollte dabei eine eher tiefe Drehzahl haben damit die Spritze nur langsam ein- und ausfährt. Zudem suchten wir im Internet nach einem geeigneten Mechanismus der die Drehbewegung in eine lineare Bewegung umwandelt. Denn wir hatten leider zu wenig zeit um alles selber zu entwerfen und zu konstruieren. So wurden wir auf auf der Hompage von [https://www.thingiverse.com/thing:2797132/ Thingiverse] schliesslich fündig. Also konnte wir die Folgenden Komponenten herunterladen und mit dem 3D-Drucker ausdrucken.<br />
<br />
Komponenten: <gallery><br />
File:Halteplatte.PNG | Halteplatte<br />
File:Zahnrad.PNG | Zahnradpaar<br />
File:Zahnradpaar.PNG | Zahnstange<br />
File:Zahnstange.PNG | Zahnrad<br />
</gallery><br />
<br />
Da wir einen anderen Motor verwendeten als für diesen Mechanismus vorgesehen wäre, mussten wir noch eine passende Adapterplatte konstruieren, damit der Motor auch auf die Vorrichtung passt.<br />
<br />
<gallery><br />
File:Adapterplatte.PNG | Adapterplatte<br />
File:Motor.PNG | Motor<br />
File:Motor_mit_Adapter.jpg | Motor mit Adapter<br />
</gallery><br />
<br />
Der Motor benötigt, wie auch der Ventilator von Hack 1, eine Spannung von 12V für den Betrieb. Also mussten wir erneut das 12V Netzgerät verwenden. Damit unser zweiter Prototyp auch die gewünschte Fördermenge fördern kann, muss die Zeitdauer, in welcher gefördert werden soll, definiert werden. Das dazugehörige Programm wird mit einem Arduino UNO implementiert. Der Zugehörige Code haben wir durch Recherche im Internet und durch persönliches erweitern und anpassen erstellt. Die Drehzahl des Motors darf nicht zu hoch sein damit man die Fördermenge auch sinnvoll einstellen kann. Für diese Anwendung wird ein Potentiometer zwischen Relais und Motor gehängt. So kann die Motorspannung reguliert und die Drehzahl anforderungsgemäss eingestellt werden. Nachfolgend wird der Prozessablauf kurz beschrieben.<br />
<br />
Mit einem Knopfdruck wird wird ein Relais geschalten und der Motor wird angesteuert. Die Drehzahl des Motors wird über ein Getriebe reduziert. Die Zahnräder greifen auf eine Zahnstange und wandeln die Drehbewegung in eine lineare Bewegung um. An der Zahnstange wird der Stössel der Spritze befestigt. Der Rest der Spritze wird mit einem Kabelbinder fest mit der Bodenplatte verbunden damit sich dieser Teil nicht bewegen kann. Die programmierte Zeitdauer bestimmt welche Menge an Flüssigkeit gefördert werden soll.<br />
<br />
[[File:Pumpe.PNG|500px|thumb|none|Aufbau der Spritzenpumpe]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/PLG_S3GtVI8<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
=== Reflexion ===<br />
<br />
Anders als beim Hack 1 kamen waren wir uns bei diesem Hack sehr schnell einig was genau wir bauen möchten. Die ganze Ideenfindung erledigte sich sehr schnell und wir konnten nach bereits wenigen Stunden mit dem programmieren des Arduinos beginnen. Wie wir bereits im Hack 1 erfahren durften, ist das bei dem gedrängten Zeitplan dieser Woche ein grosser Vorteil. Rückblickend können wir urteilen, dass der Hack 2 aus unserer Sicht ein erfreuendes Erfolgserlebnis war. Unser zweiter Prototyp funktioniert genau so wie wir uns das von Beginn an vorgestellt haben. Per Knopfdruck fördert unser Prototyp eine gewisse Menge an Flüssigkeit.<br />
<br />
=== Code ===<br />
<br />
<pre><br />
<br />
bool geschaltet = false;<br />
int RelaisPin = 10; <br />
int tasterPin = 2;<br />
int empfindlichkeit = 200;<br />
<br />
void setup() {<br />
<br />
pinMode( tasterPin, INPUT_PULLUP);<br />
pinMode( RelaisPin, OUTPUT);<br />
<br />
}<br />
<br />
void loop() {<br />
<br />
if (digitalRead(tasterPin) == LOW) <br />
{<br />
if (geschaltet == false) {<br />
geschaltet = true;<br />
}<br />
else {<br />
geschaltet = false;<br />
}<br />
}<br />
<br />
if (geschaltet == true) {<br />
digitalWrite(RelaisPin, HIGH);<br />
delay(1000);<br />
geschaltet = false; <br />
}<br />
<br />
if (geschaltet == false) {<br />
digitalWrite(RelaisPin, LOW);<br />
}<br />
<br />
delay(empfindlichkeit);<br />
}<br />
</pre><br />
<br />
== Hack 3: Zinnguss ==<br />
<br />
Für diesen Hack wurde Zinn gegossen. Dank dem tiefen Schmelzpunkt lässt sich der Gusswerkstoff in einer Stahlkanne mit einem Brenner einer Autogenschweissanlage leicht erhitzen.<br />
<br />
[[File:Kanne.jpg|400px|thumb|none|Stahlkanne mit flüssigem Zinn]]<br />
<br />
=== Versuch 1 ===<br />
<br />
Für die Gussform wurde MDF verwendet. Da die Hitzebeständigkeit von MDF unklar war, sollte ein kleiner Versuch Aufschluss geben. Eine einfache Zylinderform mit einem Überlaufbecken bestehend aus 3 Platten gemässe Bild [[:File:Versuch_1_Gussform.jpg]]Gussform, Versuch 1. Da nur eine kleine Menge an Zinn erhitzt wurde, war die Temperatur vermutlich deutlich über dem Schmelzpunkt. Es entwickelte sich Dampf, was zu einem Gussfehler im Überlauf führte. Ausserdem wurde das MDF stark verkohlt, siehe [[:File:Versuch_1_Resultat.jpg]]Resultat. Dennoch ist das Resultat zufriedenstellend, sodass für einen weiteren Versuch wieder MDF verwendet werden kann.<br />
<br />
Versuch 1: <gallery><br />
File:Versuch_1_Gussform.jpg | Gussform<br />
File:Versuch_1_Guss.jpg | Frisch gegossen<br />
File:Versuch_1_Resultat.jpg | Resultat<br />
</gallery><br />
<br />
=== Versuch 2 ===<br />
<br />
Nun konnte der eigentliche Versuch gestartet werden. Das Zinn wurde wieder in der Stahlkanne erhitzt, jedoch nicht so stark wie in Versuch 1. Jedoch wurden diesmal alle Formen mit dem Lasercutter ausgeschnitten. Auch bei dieser Gussform diente die letzte MSF Platte als Überlauf. Das flüssige Zinn konnte bei der grösseren Form kontrollierter und langsamer gegossen werden, so dass die Form gleichmässig ausgefüllt werden konnte, siehe Bild [[:File:Versuch_2_Guss.jpg]]Frisch gegossen.<br />
<br />
Versuch 2:<br />
<gallery><br />
File:Versuch_2_Gussform.jpg | Gussform<br />
File:Versuch_2_Guss.jpg | Frisch gegossen<br />
</gallery><br />
<br />
Durch den Schwund lässt sich das Gussstück relativ gut aus der Form drücken, obwohl keine Formschrägen vorhanden waren. Vorher empfiehlt es sich, den Überlauf abzufräsen (Bild [[:File:Versuch_2_Fraesen.jpg]]Überfäsen, [[:File:Versuch_2_Resultat.jpg]]Resultat), da sich Zinn nur bedingt im Schraubstock einspannen lässt. Zinn vierbiegt sich sehr leicht.<br />
<br />
Versuch 2 bearbeitung<br />
<gallery><br />
File:Versuch_2_Fraesen.jpg | Überfäsen<br />
File:Versuch_2_Resultat.jpg | Resultat<br />
</gallery><br />
<br />
= Skill-Share-Session =<br />
<br />
== Grundlagen der Arduinoprogrammierung ==<br />
<br />
Dieser Kurs wurde von unserer Gruppe angeboten und soll den Teilnehmern die Grundlage der Programierung eines Arduino UNO beibringen. Folgend werden die grundlegenden Befehle und deren Syntax vorgestellt. Der Aufbau folgt dem YouTube Tutorial von Max. Hier gelangst du zu dem Link: [https://www.youtube.com/watch?v=eaFvQG8wrGw&list=PLAB63281B90FB376E&index=3]<br />
<br />
=== Skript ===<br />
Der Code wird in einem Skript geschrieben. Dieses ist in zwei Bereiche aufgeteilt<br />
* Void setup() Dieses Skript wird einmalig ausgeführt und enthält zB. Input und output<br />
* Void loop() Dieser Teil des Skripts wird als Dauerschleife wiederholt<br />
<br />
==== Befehlseingabe ====<br />
<br />
Die Befehle werden nach folgender Syntax eingegeben:<br />
<br />
* Funktion(Parameter1, Parameter2);<br />
<br />
Dabei muss das «;» gesetzte werden, ausserdem spielen Gross- und Kleinbuchstaben eine Rolle.<br />
<br />
=== Variablen ===<br />
Übersichtshalber sollen sprechende Namen für die Bezeichnung von z.B. Outputs verwendet werden. Dabei können verschiedene Datentypen ausgewählt werden.<br />
<br />
==== Datentyp ====<br />
* int Ganze Zahlen von -32768 … 32767 z.B. 1, 48, -654<br />
* boolean Entweder true oder false<br />
* byte 8 Bit an Informationen z.B. 00010101 (=21)<br />
* char enthält 1 Byte Informationen, das ein Zeichen darstellt z.B. 65 = A<br />
* long grosse Zahlen von ca. -2.1 Milliarden bis 2.1 Milliarden z.B. 15636451<br />
* float Komazahlen z.B. 5.498<br />
* string Zeichenketten z.B. «Do it yourself»<br />
<br />
==== Deklaration Syntax ====<br />
<br />
* Datentyp Name = Wert;<br />
<br />
oder<br />
<br />
* Datentyp Name;<br />
* Name = Wert;<br />
<br />
====Ort der Deklaration====<br />
<br />
Die Variable muss immer im Teil des Skriptes deklariert sein, wo sie auch gebraucht wird. Wird die Variable im setup wie auch im loop benötigt, so kann man die Variable als sogenannte globale Variable oberhalb des Setups deklarieren.<br />
<br />
===If-Schleife===<br />
<br />
Bei der If-Schleife wird der Wert einer Variablen mit einem Vergleichswert verglichen. Falls der Vergleich positiv ist, wird der Code ausgeführt, ansonsten übersprungen. Dazu sind Vergleichsoperatoren notwendig.<br />
<br />
====Syntax====<br />
<br />
if(Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
====Vergleichsoperatoren====<br />
<br />
* == gleich<br />
* != ungleich<br />
* < kleiner<br />
* < grösser<br />
* <= kleiner gleich<br />
* >= grösser gleich<br />
<br />
===While-Schleife===<br />
<br />
Mit der While-Schleife wird die Bedingung fortlaufend geprüft. Stimmt diese, wird der Code ausgeführt, ansonsten wird der Code übersprungen. Es können die selben Vergleichsoperatoren wie bei der If-Schleife verwendet werden.<br />
<br />
====Syntax====<br />
<br />
while (Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
==Bildgebende Verfahren==<br />
<br />
Der Tag begann mit einer Einführung in die Bildgebenden Verfahren durch David Stadelmann. Hierbei erklärte er uns, verschiedene Methoden, um Bilder aus dem Körperinneren zu machen und welche Methode für die verschiedenen Gewebetypen gebraucht werden. Zudem Zeigte und erklärte er uns anhand von Beispielen was die Einzelnen Schattierungen aussagen könnten.<br />
<br />
[[DIY-MedTech Bildgebende Verfahren-Unterschiedliche Bildeindrücke - Team Frosch]]<br />
<br />
==Synths & Sound ==<br />
<br />
Danach ging es weiter mit dem Kurs Synths & Sounds. Diese Session wurde von [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] durchgeführt. Hierbei zeigte er uns, wie man mit verschieden erzeugten Schwingungen eine grosse Variation von Tönen generiert kann. Zudem auch wie man elektronisch gewisse Instrumente Simulieren könnte und durch die Aneinanderreihung verschiedenster Tonvariationen eine Melodie enstehen kann. Dies mit unterschiedlich Variationen von selbstgebauten Synthesizers.<br />
<br />
<gallery><br />
File:Sinthesizer1.jpg | Synthesizer 1<br />
File:Synthesizer2.jpg | Synthesizer 2<br />
</gallery><br />
<br />
== Schweissen ==<br />
<br />
Bei dem Skill-Share Workshop von [https://www.hackteria.org/wiki/Team_G2020/ Team G2020] konnten wir verschiedene Schweissverfahren kennenlernen und auch gleich anwenden.<br />
<br />
Es wurde uns das [https://de.wikipedia.org/wiki/Lichtbogenhandschwei%C3%9Fen/ Elektrodenschweissen], das [https://de.wikipedia.org/wiki/Schutzgasschwei%C3%9Fen/ MIG-Schweissen] und das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] nähergebracht.<br />
<br />
Dieser Workshop war für uns alle sehr interessant, da sich bisher noch keiner von uns so wirklich mit dem Schweissen und den verschiedenen Verfahren auskannte. An diesem Tag konnten wir nach einer kurzen Theorie gleich sofort selber handanlegen und die verschiedenen Schweissverfahren ausprobieren.<br />
<br />
Dabei mussten wir feststellen, dass es gar nicht so einfach ist wie es immer aussieht. Besonders das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] braucht sehr viel Übung und Geschick um wirklich schöne Schweissergebnisse zu erzielen.<br />
<br />
== Autonomes Nervensystem und das Hören in der Medizin ==<br />
<br />
Der Assistent Dr. Christian Gehringer, MSc. (ETH) hielt uns einen sehr interessanten Vortrag. Dabei ging es darum, dass wir die Anatomie kennenlernen und erkunden am Beispiel des Hörens z.B mit einem Stethoskop.<br />
<br />
[https://www.hackteria.org/wiki/Autonomes_Nervensystem_und_das_H%C3%B6ren_in_der_Medizin/ Autonomes Nervensystem und das Hören in der Medizin]</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=MedTechDIY20_Die_Profis&diff=41673MedTechDIY20 Die Profis2020-02-09T11:58:47Z<p>Tnroth: /* Versuch 1 */</p>
<hr />
<div>Hier gehts zurück auf: [[Medizintechnik DIY]]<br />
<br />
[[File:DieProfis.png|700px|right|none|Wochenplan]]<br />
<br />
= Team =<br />
<br />
'''Die Profis''' besteht aus den drei Studierenden '''Daniel Glur''', '''Lukas Roth''' und '''Daniel Zellweger''' der Hochschule Luzern. Im Rahmen der Blockwoche "DIY Medizintechnik" formierte sich das Team aus verschiedenen Studiengängen um auch interdisziplinär voneinander zu lernen und Wissen auszutauschen.<br />
<br />
'''Mitglieder:'''<br />
<br />
Maschinentechnik: <gallery><br />
File:DanielGlur.jpg | Daniel Glur<br />
File:LukasRoth.jpg | Lukas Roth<br />
</gallery><br />
<br />
Medizintechnik: <gallery><br />
File:DanielZellweger.jpg | Daniel Zellweger<br />
</gallery><br />
<br />
= Pflichtlektüre =<br />
<br />
'''How to control someone else's arm with your brain | Greg Gage'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/rSQNi5sAwuc<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
In Diesem Video wird gezeigt wie man über die Aufnahme eines Biologischen Signals, dieses an eine zweite Person weitergeleitet werden kann.<br />
Dies funktioniert jedoch nur aus verschiedenen Gründen bedingt. Nebst den allgemeinen Störeinflüsse aus der Messtechnik, kommen zusätzlich noch jene der Ansteuerung. Da das Signal nur von einzelnen Muskelfasern abgefangen wird, kann dieses nicht sämtliche Muskelfasern der zweiten Person Reizen. Dies hat zur folge, dass nur eine annähernd ähnliche Bewegung des Armes arfolgt.<br />
<br />
<br />
'''What is Open Source explained in LEGO'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/a8fHgx9mE5U<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Durch die Verwendung der Open Source Methode erhält man die Möglichkeit während des Projektes noch Erweiterungen oder Veränderungen anzustreben.<br />
<br />
'''"Why toys make good medical devices | Jose Gomez-Marquez'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/UHCT9SOBHs0<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Nebst dem Preis besitzen Spielzeuge diverse spezifische Funktionen. Da diese meist günstige Anschaffung auch einfach verändert werden kann, sind sie sehr geeignet dafür umgebaut zu werden. Somit sind Spielzeuge welche chemische oder sensorische Funktionen besitzen ein gefundenes fressen für den Hacker und eine Alternative für Regionen in welchen die finanzielle Situation teure Medizinprodukte nicht erlauben.<br />
<br />
= Einleitung =<br />
Die Blockwoche "DIY Medizintechnik" verbindet Anwendungen der Medizintechnik mit Do It Yourself (DIY) Ansätzen. Dadurch wird das tiefere Verständnis von Medizintechnischen Geräten durch einen direkten, interdisziplinären und möglichst selbstgesteuerten Zugang gefördert. Basierend auf verschiedenen elektrophysiologischen Messmodulen (EMG, EKG, EOG, EEG) entwickeln die Studierenden im Team Ideen für innovative Projekte. Erste Prototypen werden mit den Mitteln der Digitalen Fabrikation hergestellt und getestet. Tag für Tag stehen produktive "Hacks" auf dem Programm. Hacks sind sehr praxisbezogene Arbeitssequenzen wo die Studierenden Experimente durchführen sowie Prototypen entwickeln und bauen können. Dabei ist aber nicht nur die Medizintechnik zentral sondern auch der Interdisziplinäre Austausch sowie eine Skill-Share-Session wo die Studierenden ganz nach dem do it yourself Gedanken einen eigenen Workshop leiten können.<br />
Alle Erkenntnisse und Erfahrungen werden laufend in einem eigenen Wiki-Eintrag festgehalten und dokumentiert.<br />
<br />
Die Blockwoche wird von den beiden Dozenten [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] und [https://www.hackteria.org/wiki/Gaudi/ Urs Gaudenz] duchgeführt. Unterstützt wurden die Beiden von '''Dr. Christian Gehringer, MSc. (ETH)''' und [http://chrisobrist.ch/about// Chris Obrist]<br />
<br />
Maschinentechnik: <gallery><br />
File:MarkDusseiller.jpg | Dr. Marc R. Dusseiller<br />
File:UrsGaudenz.jpg | Urs Gaudenz<br />
</gallery><br />
<br />
= Planung =<br />
<br />
Die Blockwoche wird wie in folgendem Wochenplan unterteilt:<br />
<br />
[[File:Wochenplan2020.jpg|700px|thumb|none|Wochenplan]]<br />
<br />
= Wochenrückblick =<br />
== Die Woche in Bilder==<br />
[[File:ProfisInAction.PNG|400px]]<br />
[[File:Komponente.PNG|300px]]<br />
[[File:Aufbau.PNG|400px]]<br />
[[File:Motor_mit_Adapter.jpg|300px]]<br />
[[File:Pumpe.PNG|350px]]<br />
[[File:pulsmessung.jpg|450px]]<br />
[[File:Zusammenbau2.jpg|300px]]<br />
[[File:Foto 07.02.20, 11 14 53.jpg|300px]]<br />
[[File:DanielZellweger.jpg|300px]]<br />
<br />
== Tag 1==<br />
'''Einführung'''<br />
<br />
Wir traffen uns zu beginn im FABLAB, wo sich die Dozenten vorstellten und uns über Ihren bisherigen Werdegang informierten. Das interessante an der beruflichen Laufbahn der beiden ist, dass beide ein Studium abgeschlossen haben und heute einer Tätigkeit nachgehen, welche eigentlich nicht mehr viel mit dem damaligen Studium zu tun hat. Das vermittelt unserer Meinung nach, den Studenten eine etwas andere Sichtweise als die technische Hochschule. Es zeigt z.B. dass man nach einem Studium nicht gezwungen ist auf diesem Fachgebiet zu arbeiten sondern dass der Arbeitsmarkt noch sehr viele andere Möglichkeiten zu bieten hat.<br />
<br />
Nachdem sie sich Vorgestellt haben, stellten sie uns auch noch den Assistent vor. Dieser ist ein ausgebildeter Arzt welcher sich momentan für seinen zweiten Doktortitel engagiert. Von Ihm und seinem grossen medizinischen Fachwissen können wir als Studenten die ganze Woche profitieren.<br />
<br />
Danach überliessen die Dozenten uns Studenten das Wort. Es war eine etwas andere Vorstellungsrunde wie man sie noch nicht kannte. Dazu stand uns ein ganzer Tisch mit kuriosen Gegenständen, welche etwas mit dem DIY Gedanke zu tun haben, zur verfügung. Sie vorderten uns alle auf einen Gegenstand auszuwählen. Danach mussten wir uns Vorstellen und noch ein paar Worte dazu verlieren welche Gemeinsamkeiten wir mit dem ausgesuchten Gegenstand teilen.<br />
<br />
'''DIY (Do It Yourself)'''<br />
<br />
Das DIY Prinzip basiert auf eigenem experimentieren und learning by doing<br />
<br />
{{#widget:Iframe<br />
|url= https://www.youtube.com/watch?v=3zH_J12G9sQ<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
<br />
'''How to use Wiki'''<br />
<br />
Durch die 45 minütige Einführung in die Handhabung das Wiki durch Dr. Marc R. Dusseiller waren wir bereit unsere Erkenntnisse und Projekte, welche wir in dieser Woche erfahren und durchführen werden, in einer Zugänglichen Form, niederzuschreiben.<br />
<br />
== Tag 2 ==<br />
Am zweiten Tag begannen wir die Vorbereitung Skill-Share-Session. Diesbezüglich sollte jeder Teilnehmer einen Skill, welcher er erlernen möchte und einen Skill, den man beibringen könnte notieren. Diese wurden dann auf einer Tafel in Cluster aufgeteilt. Zwölf davon wurden als Skill-Share Workshops ausgewählt und die Teilnehmer konnten sich nach Belieben einschreiben.<br />
<br />
[[File:SkillSession2020.jpg|500px|thumb|none|Skill-share-session]]<br />
<br />
Während des zweiten Teils arbeiteten wir an unserem Experiment weiter, welches wir am Vortag begonnen haben.<br />
Dazu mussten wir die elektronischen Bauteile mit unserem Laptop verbinden und einen vorgefertigten Sketch laufen lassen.<br />
<br />
Nachdem wir den ersten Versuch erfolgreich durchführen konnten, versuchten wir mit dem Arduino einen Stepmotor anzusteuern. Dabei stiessen wir jedoch auf einige Schwierigkeiten. Da wir diese bis zur Einführung des Lasercutters und des 3D-Druckers fertig haben sollten. Siehe [[#Hack 0]]<br />
<br />
Unteranderem wurde unsere Skill-Share-Session über Arduino vorbereitet.<br />
<br />
Am Abend kam [http://chrisobrist.ch/about// Chris Obrist] zu Besuch und unterhielt uns mit einer wundervollen musikalischen Darbietung.<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/Hj1Ogr8137o<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
== Tag 3 ==<br />
Von 9:00 Uhr bis nach dem Mittag um 14:00 Uhr waren wir alle mit der [[#Skill-Share-Session]] beschäftigt.<br />
<br />
Danach hatten wir Zeit um den nächsten Hack vorzubereiten und zu planen.<br />
<br />
== Tag 4 ==<br />
Den Vormittag verbrachten wir weiter mit dem Hack 1, welchen wir dann vor der Mittagspause den Dozenten und allen Mitstudierenden präsentieren durften. Leider litten wir während des ganzen Hack 1 sehr unter Zeitdruck, was auf eine turbulente Projektphase zurückzuführen ist. Mehr dazu erfährst du im [[#Hack 1]].<br />
<br />
Nach einer kurzen Inspirationphase entschieden wir uns dafür eine kleine Spritzenpumpe zu basteln. [[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 5 ==<br />
Am Tag 5 ging es darum die Einzelteile physikalisch sowie über ein Funktionierendes Arduinoprogamm zum laufen zu bringen.<br />
[[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 6 ==<br />
Zum Abschluss durften wir alle Hacks der verschiedenen Teams begutachten. Interessant waren die spontanen Vorgehensweisen und auch die daraus entstandenen Produkte. Viele Teams suchten zuerst das Material und erst danach die Ideen. So entstanden die unterschiedlichsten Prototypen.<br />
Zudem Reflektierten wird die Blockwoche. Im Allgemeinen gefielen die Freiheit und auch der unkomplizierte Teamgeist untereinander. Besten Dank auch an die Organisatoren der Blockwoche.<br />
<br />
= Experimente =<br />
Bei den Experimenten sollte es darum gehen aus unterschiedlichsten Einzelteilen ein Produkt zu erschaffen. Dieser Prozess brachte uns dazu über die Grenzen unseres altäglichem Denken zu springen und in der Verbindung der einzelnen Bereiche solcher Produkte besser zu verstehen.<br />
<br />
== Hack 0 ==<br />
<br />
<br />
===Versuchsaufbau 1===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 1===<br />
Nach den Inputs der Dozenten verbrachten wir hauptsächlich die Zeit damit den Muscle Spiker Shield nach der Anleitung mit den dazugehörigen Teilen zusammenzulöten.[https://backyardbrains.com/products/files/MuscleSpikerShield.v.2.11.BuildingInstructions.pdf]V2.11<br />
Nebenbei machten wir unsere ersten Schritte in Arduino.<br />
Als wir unsere mechatronischen Komponenten zusammengestellt und ein Grundverständnis von Arduino angeeignet haben, verbanden wir dies in einem Experiment. <br />
Das Experiment welches wir durchführten nennt man Control Machines with your Brain und ist auf der Seite von [https://backyardbrains.com/experiments/muscleSpikerShield/ Backyard Brains] nachzusehen.<br />
<br />
Für den Versuch wurden Elektroden an den Testpersonen angeschlossen und über den Arduino ausgelesen.<br />
Der Versuch wurde mit zwei Testpersonen durchgeführt. Dabei fiel uns nebst der Kontrolle der LED's auch auf, dass der Puls gemessen wurde. Dies unabhängig von der Position der Elektroden. Vermutlich reagieren die Elektroden zu sensitiv für diese Anwendung.<br />
<br />
<br />
[[File:UeberblickVersuchTeamD.jpg|400px|thumb|none|Versuchsaufbau]]<br />
[[File:Versuchsaufbau1TeamD.jpg|400px|thumb|none|Elektrodenbefestigung]]<br />
[[File:MessungDanielGlur.jpg|400px|thumb|none|Messung von Daniels Puls]]<br />
<br />
===Versuchsaufbau 2===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 2===<br />
<br />
Als zweites Experiment versuchten wir durch das anspannen der Muskeln einen Servomotor anzusteuern. Wie es auch auf der Homepage von [https://backyardbrains.com/experiments/MuscleSpikerShield_GripperHand/ Backyard Brains] anzutreffen ist. Dieser Versuch konnte aber leider aus Zeitgründen nicht zu Ende geführt werden. Wir konnten lediglich das Arduinoprogramm laden und etwas anpassen.<br />
<br />
===Reflexion===<br />
<br />
Der Hack 0 war in der Hinsicht sehr interessant, da wir alle unsere ersten Erfahrungen mit einem Arduino machen konnten. Einige von unserem Team hatten bisher auch noch nie auf einer Printplatte irgendwelche Widerstände oder Schalter etc. gelötet. Ebenso war es erstaunlich, dass man mit so wenig so viel verschiedene Sachen machen kann. Keiner von uns hat gedacht dass wir bereits am ersten Tag irgend etwas mit unseren Muskeln kontrollieren könnten. Insgesamt kam der Hack 0 gut bei uns an und wir alle konnten einiges davon profitieren und hoffentlich auch den weiteren Hacks weiterverwenden.<br />
<br />
== Hack 1: Baseball-Cap mit Ventilator ==<br />
<br />
Der Hack 1 beschreibt die Konzept- und Testphase des ersten Prototyps.<br />
<br />
Zu Beginn waren wir uns sehr unschlüssig was wir wirklich bauen wollen. Also entschieden wir uns für ein weiteres Experiment mit einem Bausatz von Backyard Brains. Wir versuchten durch die Funktion des Heart and Brain Spiker Shield einen Ventilator anzusteuern. Der Gedanke, welcher uns auf diese Idee führte, kennt wohl jeder Student. Während einer Prüfung kommt so mancher ins Grübeln und in harten Fällen kommt es auch vor dass einem eine Schweissperle von der Stirn läuft. Um in solchen Fällen für die nötige Kühlung zu sorgen, sollen Sensoren die Hirnströme gemessen und als Signal wiedergeben werden um damit einen Ventilator anzuschalten.<br />
<br />
Zu unserem eigenen Erstaunen erhielten wir sogar ein Signal aus unserer Messung. Es stellte sich aber sehr bald heraus, dass das wohl nicht die Hirnströme waren sondern eher Bewegungen des Kopfs und der Kabel. Denn die Sensoren sind recht empfindlich gegen solche Einflüsse. Zudem kam noch, dass die Sensoren über den Haaren angebracht wurden, was das Signal der Hirnströme noch zusätzlich verschlechterte. Nach einigen Versuchen sahen wir ein, dass das wohl eine zu grosse Herausforderung war und wir uns besser an einen einfacheren Versuch versuchen sollten.<br />
<br />
[[File:heart_and_brain.jpg|300px|thumb|none|Signal aus Messung der "Hirnströme"]]<br />
[[File:EEGDanielGlur.jpg|500px|thumb|none|Daniel beim messen der "Hirnströme"]]<br />
<br />
Also beschlossen wir uns anstelle der Hirnströme den Puls zu messen. Denn während einer Prüfung kann es durchaus auch vorkommen, dass der Puls etwas ansteigt. Die Messungen sollten dann ausgelesen werden und wenn der Puls eine gewisse Frequenz übersteigt, schaltet ein Ventilator ein um den Studenten wieder etwas zu beruhigen.<br />
<br />
Für diesen Versuch platzierten wir Sensoren am Unterarm und an der Handoberfläche. Idealerweise sollten laut Assistent Christian die Sensoren aber so weit wie möglich voneinander entfernt, an einer anderen Körperstelle angebracht werden um eine gewisse Referenz zu haben und um sicherzustellen, dass man wirklich den Puls misst. Unsere Kabel waren aber leider etwas zu kurz. Wir erhielten trotzdem ein relativ gutes Signal von welchem man davon ausgehen konnte, dass es sich um den Puls handelte. Jetzt nur noch das Signal auswerten, einen Frequenzbegrenzer programmieren und mithilfe von einem Arduino UNO den Ventilator ansteuern... Dachten wir... Dies war allerdings etwas Schwieriger als erwartet und überstieg unsere Kompetenzen. Das führte uns dazu auch diesen Versuch an dieser Stelle abzubrechen und nochmal zu überdenken.<br />
<br />
<br />
[[File:puls.png|400px|thumb|none|Pulssignal]]<br />
[[File:pulsmessung.jpg|400px|thumb|none|Pulssmessung]]<br />
<br />
<br />
Nun rannte uns schon langsam die Zeit davon. Doch dann kam uns die Idee, welche wir schon zu Beginn benötigt hätten. Und zwar wollten wir einen Ventilator auf einem Baseball-Cap anbringen und diesen ansteuern wenn ein gewisses Temperaturniveau unter dem Cap überschritten wird wird. Dazu wird ein 12V Ventilator via Relais von dem Arduino angesteuert. Weil der Arduino nur eine Spannung von 5V liefert, musste ein 12V Netzgerät den Ventilator mit Strom versorgen. Damit man den Ventilator so schalten konnte, damit er den Strom über das 12V Netzgerät bezieht, mussten wir noch ein Relais einbauen. Den Code für den Arduino bezogen wir aus verschiedenen ähnlichen Projekten aus dem Internet und passten ihn spezifisch für unsere Anwendung an. Für das auslesen der Temperatur mussten wir zuerst zwei Libreries herunterladen (DallasTemperature und OneWire).<br />
<br />
[[File:Komponente.PNG|400px|thumb|none|Verbaute Komponenten]]<br />
<br />
Nun mussten wir noch den Ventilator am Baseball-Cap anbringen. Dafür wurde eine Halterung im CAD konstruiert und mit einem 3D-Drucker ausgedruckt. Die Teile wurden danach zusammengesteckt und mit dem Baseball-Cap verschraubt. Natürlich wurde zuvor ein Loch in das Cap geschnitten, damit der Ventilator auch seinen Zweck erfüllen kann und dem Studenten einen kühlen Kopf verschafft.<br />
<br />
[[File:Aufbau.PNG|350px|thumb|none|3D-Modell im CAD]]<br />
<br />
[[File:Zusammenbau1.jpg|350px]]<br />
[[File:Zusammenbau2.jpg|350px]]<br />
<br />
Nun wurde unser Prototyp getestet. Der Sensor erfüllte seinen Dienst und wir konnten erfolgreich die Temperaturen messen. Jedoch war das Relais während dem Testen ständig eingeschalten und der Ventilator lief die ganze Zeit auch wenn die Temperatur den Minimalwert unterschritten hatte. Es hat sich also irgendwo in unserem Programm einen Fehler eingeschlichen. Den galt es nun zu finden und zu beheben. Dazu bauten wir einen Druckknopf ein um zu überprüfen ob das Relais defekt war und um die Fehlerquellen etwas einzugrenzen.<br />
<br />
[[File:Temperatur.jpg|350px]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/TQnGa5WiGS4<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
Der Druckknopf funktionierte, das Relais schaltete perfekt ein und aus und der Ventilator wurde an- und abgestellt. Somit wissen wir nun wo der Fehler zu suchen ist und können versuchen das Programm an diesen Stellen zu bereinigen. Nur ist jetzt schon Donnerstag Nachmittag und der Hack 2 hat schon begonnen. Wir alle wurden aufgefordert unseren bisherigen Prototypen aufzugeben und etwas neues, anderes zu versuchen und zu testen. Also legen wir schweren Herzens unser erster Prototyp beiseite und widmen unsere Kreativität dem nächsten Hack.<br />
<br />
=== Reflexion ===<br />
Der Hack 1 hat uns gezeigt, dass es gar nicht so einfach ist beim ersten Versuch ein brauchbares Resultat zu erzielen. Jedoch konnten wir so aus zwei vorhergehenden, fehlgeschlagenen Ansätzen eine Idee weiterentwickeln. Somit konnten wir mit unseren Kompetenzen und den Erfahrungen aus dem Hack 0 ein zufriedenstellendes Resultat erzielen. Durch die zwei Versuche zuvor ging leider recht viel Zeit "verloren", welche wir sehr benötigt hätten um unser erster Prototyp fehlerfrei hinzukriegen. Es war uns auch eine Lehre, dass man nicht zu lange an einer Sache verharren sollte wenn einem nur wenig Zeit zur Verfügung steht. Manchmal ist es besser man wirft alles nochmal über den Haufen und beginnt von vorne. Trotz allen Strapazen während des Hack 1 sind wir mit unserem ersten Prototyp sehr zufrieden und konnten auch bei diesem Versuch wieder viel profitieren und mitnehmen. Nun blicken wir gespannt nach vorne auf den nächsten Hack.<br />
<br />
<br />
===Code===<br />
<br />
Wir konnten zwar die Temperatur herauslesen und das Relais über einen Butten steuern, jedoch die Steuerung anhand der Temperatur geling uns nicht.<br />
<br />
<pre><br />
/********************************************************************/<br />
// First we include the libraries<br />
#include <OneWire.h> <br />
#include <DallasTemperature.h><br />
/********************************************************************/<br />
// Data wire is plugged into pin 2 on the Arduino <br />
#define ONE_WIRE_BUS 2 <br />
<br />
float tempReading;<br />
/********************************************************************/<br />
// Setup a oneWire instance to communicate with any OneWire devices <br />
// (not just Maxim/Dallas temperature ICs) <br />
OneWire oneWire(ONE_WIRE_BUS); <br />
/********************************************************************/<br />
// Pass our oneWire reference to Dallas Temperature. <br />
DallasTemperature sensors(&oneWire);<br />
/********************************************************************/ <br />
int relayPin = 4; // Relay Singnal lead to Digital Pin [D2-D12]<br />
<br />
float maxTemperature = 30.00; // The Max Temperature allowed<br />
float minTemperature = 25.00; // The Min Temperature allowed<br />
<br />
// constants won't change. They're used here to set pin numbers:<br />
const int buttonPin = 8; // the number of the pushbutton pin<br />
const int ledPin = 4; // the number of the LED pin<br />
<br />
// variables will change:<br />
int buttonState = 0; // variable for reading the pushbutton status<br />
<br />
void setup(void) {<br />
// initialize the LED pin as an output:<br />
pinMode(ledPin, OUTPUT);<br />
// initialize the pushbutton pin as an input:<br />
pinMode(buttonPin, INPUT);<br />
<br />
Serial.begin(9600); <br />
Serial.println("Dallas Temperature IC Control Library Demo"); <br />
// Start up the library <br />
sensors.begin(); <br />
}<br />
<br />
void loop(void) <br />
{ <br />
// call sensors.requestTemperatures() to issue a global temperature <br />
// request to all devices on the bus <br />
/********************************************************************/<br />
Serial.print(" Requesting temperatures..."); <br />
sensors.requestTemperatures(); // Send the command to get temperature readings <br />
Serial.println("DONE"); <br />
/********************************************************************/<br />
Serial.print("Temperature is: "); <br />
Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"? <br />
// You can have more than one DS18B20 on the same bus. <br />
// 0 refers to the first IC on the wire <br />
delay(1000); // Check Temperature every second<br />
<br />
float temperature = getTemperature();<br />
if(temperature >= maxTemperature){<br />
powerOnRelay();<br />
} else if (temperature <= minTemperature) {<br />
powerOffRelay();<br />
}<br />
delay(1000); // Check tempertature every second<br />
<br />
} <br />
void powerOnRelay() {<br />
digitalWrite(relayPin, HIGH);<br />
Serial.println("Relay On");<br />
}<br />
<br />
void powerOffRelay() {<br />
digitalWrite(relayPin, LOW);<br />
Serial.println("Relay Off");<br />
}<br />
float getTemperature(){<br />
tempReading = digitalRead(ONE_WIRE_BUS);<br />
<br />
// read the state of the pushbutton value:<br />
buttonState = digitalRead(buttonPin);<br />
<br />
// check if the pushbutton is pressed. If it is, the buttonState is HIGH:<br />
if (buttonState == HIGH) {<br />
// turn LED on:<br />
digitalWrite(ledPin, HIGH);<br />
} else {<br />
// turn LED off:<br />
digitalWrite(ledPin, LOW);<br />
}<br />
}<br />
</pre><br />
<br />
== Hack 2: Spritzenpumpe ==<br />
<br />
Nachdem der Hack 1 abgeschlossen war, machten wir uns aufs Neue darüber Gedanken was wir für einen Prototyp für den Hack 2 bauen wollen. Urs hat nach dem Abschluss von Hack 1 gesagt, wir sollten uns ein komplett neues Produkt überlegen, welches möglicherweise auch etwas mit der Medizintechnik zu tun hat. Nach einem Brainstorming kamen wir noch nicht so richtig auf einen grünen Zweig. So kamen wir auf die Idee uns einen Kaffee zu holen und einfach mal durch das FABLAB zu laufen um alles Mögliche anzuschauen, in die Hand zu nehmen und uns von all diesen Gegenständen inspirieren zu lassen. So kamen uns diverse Gegenstände in die Finger. darunter waren Servomotoren sowie einige DC-Motoren, eine Spritze, eine Pumpe, ein Micro-Switch Schalter, ein Potentiometer und vieles mehr. Diese Gegenstände haben wir dann auf unserem Gruppentisch ausgebreitet und uns Gedanken darüber gemacht was wir damit wohl anstellen konnten zum Thema Medizintechnik. So entstanden relativ schnell einige Ideen. Wir haben uns schlussendlich dafür entschieden ein Dosiergerät für eine medizinische Spritze zu machen. Dieses sollte so funktionieren, dass wir eine Spritze in eine Vorrichtung legen und über einen DC-Motor zum Einfahren bzw. Ausfahren bringen. Dazu muss die Drehbewegung des Motors in eine Lineare Bewegung umgeleitet werden. Zudem muss ggf. auch die Drehzahl des Motors durch ein Potentiometer reguliert werden können um einen zu schnellen Aus- oder Einfahrvorgang zu verhindern. Soviel zu zu den technischen Überlegungen. <br />
<br />
Sofort nach dem Entscheid suchten wir nach einem geeigneten Motor. Dieser sollte dabei eine eher tiefe Drehzahl haben damit die Spritze nur langsam ein- und ausfährt. Zudem suchten wir im Internet nach einem geeigneten Mechanismus der die Drehbewegung in eine lineare Bewegung umwandelt. Denn wir hatten leider zu wenig zeit um alles selber zu entwerfen und zu konstruieren. So wurden wir auf auf der Hompage von [https://www.thingiverse.com/thing:2797132/ Thingiverse] schliesslich fündig. Also konnte wir die Folgenden Komponenten herunterladen und mit dem 3D-Drucker ausdrucken.<br />
<br />
Komponenten: <gallery><br />
File:Halteplatte.PNG | Halteplatte<br />
File:Zahnrad.PNG | Zahnradpaar<br />
File:Zahnradpaar.PNG | Zahnstange<br />
File:Zahnstange.PNG | Zahnrad<br />
</gallery><br />
<br />
Da wir einen anderen Motor verwendeten als für diesen Mechanismus vorgesehen wäre, mussten wir noch eine passende Adapterplatte konstruieren, damit der Motor auch auf die Vorrichtung passt.<br />
<br />
<gallery><br />
File:Adapterplatte.PNG | Adapterplatte<br />
File:Motor.PNG | Motor<br />
File:Motor_mit_Adapter.jpg | Motor mit Adapter<br />
</gallery><br />
<br />
Der Motor benötigt, wie auch der Ventilator von Hack 1, eine Spannung von 12V für den Betrieb. Also mussten wir erneut das 12V Netzgerät verwenden. Damit unser zweiter Prototyp auch die gewünschte Fördermenge fördern kann, muss die Zeitdauer, in welcher gefördert werden soll, definiert werden. Das dazugehörige Programm wird mit einem Arduino UNO implementiert. Der Zugehörige Code haben wir durch Recherche im Internet und durch persönliches erweitern und anpassen erstellt. Die Drehzahl des Motors darf nicht zu hoch sein damit man die Fördermenge auch sinnvoll einstellen kann. Für diese Anwendung wird ein Potentiometer zwischen Relais und Motor gehängt. So kann die Motorspannung reguliert und die Drehzahl anforderungsgemäss eingestellt werden. Nachfolgend wird der Prozessablauf kurz beschrieben.<br />
<br />
Mit einem Knopfdruck wird wird ein Relais geschalten und der Motor wird angesteuert. Die Drehzahl des Motors wird über ein Getriebe reduziert. Die Zahnräder greifen auf eine Zahnstange und wandeln die Drehbewegung in eine lineare Bewegung um. An der Zahnstange wird der Stössel der Spritze befestigt. Der Rest der Spritze wird mit einem Kabelbinder fest mit der Bodenplatte verbunden damit sich dieser Teil nicht bewegen kann. Die programmierte Zeitdauer bestimmt welche Menge an Flüssigkeit gefördert werden soll.<br />
<br />
[[File:Pumpe.PNG|500px|thumb|none|Aufbau der Spritzenpumpe]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/PLG_S3GtVI8<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
=== Reflexion ===<br />
<br />
Anders als beim Hack 1 kamen waren wir uns bei diesem Hack sehr schnell einig was genau wir bauen möchten. Die ganze Ideenfindung erledigte sich sehr schnell und wir konnten nach bereits wenigen Stunden mit dem programmieren des Arduinos beginnen. Wie wir bereits im Hack 1 erfahren durften, ist das bei dem gedrängten Zeitplan dieser Woche ein grosser Vorteil. Rückblickend können wir urteilen, dass der Hack 2 aus unserer Sicht ein erfreuendes Erfolgserlebnis war. Unser zweiter Prototyp funktioniert genau so wie wir uns das von Beginn an vorgestellt haben. Per Knopfdruck fördert unser Prototyp eine gewisse Menge an Flüssigkeit.<br />
<br />
=== Code ===<br />
<br />
<pre><br />
<br />
bool geschaltet = false;<br />
int RelaisPin = 10; <br />
int tasterPin = 2;<br />
int empfindlichkeit = 200;<br />
<br />
void setup() {<br />
<br />
pinMode( tasterPin, INPUT_PULLUP);<br />
pinMode( RelaisPin, OUTPUT);<br />
<br />
}<br />
<br />
void loop() {<br />
<br />
if (digitalRead(tasterPin) == LOW) <br />
{<br />
if (geschaltet == false) {<br />
geschaltet = true;<br />
}<br />
else {<br />
geschaltet = false;<br />
}<br />
}<br />
<br />
if (geschaltet == true) {<br />
digitalWrite(RelaisPin, HIGH);<br />
delay(1000);<br />
geschaltet = false; <br />
}<br />
<br />
if (geschaltet == false) {<br />
digitalWrite(RelaisPin, LOW);<br />
}<br />
<br />
delay(empfindlichkeit);<br />
}<br />
</pre><br />
<br />
== Hack 3: Zinnguss ==<br />
<br />
Für diesen Hack wurde Zinn gegossen. Dank dem tiefen Schmelzpunkt lässt sich der Gusswerkstoff in einer Stahlkanne mit einem Brenner einer Autogenschweissanlage leicht erhitzen.<br />
<br />
[[File:Kanne.jpg|400px|thumb|none|Stahlkanne mit flüssigem Zinn]]<br />
<br />
=== Versuch 1 ===<br />
<br />
Für die Gussform wurde MDF verwendet. Da die Hitzebeständigkeit von MDF unklar war, sollte ein kleiner Versuch Aufschluss geben. Eine einfache Zylinderform mit einem Überlaufbecken bestehend aus 3 Platten gemässe Bild [[:File:Versuch_1_Gussform.jpg]]Gussform, Versuch 1. Da nur eine kleine Menge an Zinn erhitzt wurde, war die Temperatur vermutlich deutlich über dem Schmelzpunkt. Es entwickelte sich Dampf, was zu einem Gussfehler im Überlauf führte. Ausserdem wurde das MDF stark verkohlt, siehe [[:File:Versuch_1_Resultat.jpg]]Resultat. Dennoch ist das Resultat zufriedenstellend, sodass für einen weiteren Versuch wieder MDF verwendet werden kann.<br />
<br />
Versuch 1: <gallery><br />
File:Versuch_1_Gussform.jpg | Gussform<br />
File:Versuch_1_Guss.jpg | Frisch gegossen<br />
File:Versuch_1_Resultat.jpg | Resultat<br />
</gallery><br />
<br />
=== Versuch 2 ===<br />
<br />
Nun konnte der eigentliche Versuch gestartet werden. Das Zinn wurde wieder in der Stahlkanne erhitzt, jedoch nicht so stark wie in Versuch 1. Jedoch wurden diesmal alle Formen mit dem Lasercutter ausgeschnitten. Auch bei dieser Gussform diente die letzte MSF Platte als Überlauf. Das flüssige Zinn konnte bei der grösseren Form kontrollierter und langsamer gegossen werden, so dass die Form gleichmässig ausgefüllt werden konnte, siehe Bild [[:File:Versuch_2_Guss.jpg]]Frisch gegossen.<br />
<br />
Versuch 2 giessen<br />
<gallery><br />
File:Versuch_2_Gussform.jpg|400px | Gussform<br />
File:Versuch_2_Guss.jpg|400px | Frisch gegossen<br />
</gallery><br />
<br />
Durch den Schwund lässt sich das Gussstück relativ gut aus der Form drücken, obwohl keine Formschrägen vorhanden waren. Vorher empfiehlt es sich, den Überlauf abzufräsen (Bild [[:File:Versuch_2_Fraesen.jpg]]Überfäsen, [[:File:Versuch_2_Resultat.jpg]]Resultat), da sich Zinn nur bedingt im Schraubstock einspannen lässt. Zinn vierbiegt sich sehr leicht.<br />
<br />
Versuch 2 bearbeitung<br />
<gallery><br />
File:Versuch_2_Fraesen.jpg | Überfäsen<br />
File:Versuch_2_Resultat.jpg | Resultat<br />
</gallery><br />
<br />
= Skill-Share-Session =<br />
<br />
== Grundlagen der Arduinoprogrammierung ==<br />
<br />
Dieser Kurs wurde von unserer Gruppe angeboten und soll den Teilnehmern die Grundlage der Programierung eines Arduino UNO beibringen. Folgend werden die grundlegenden Befehle und deren Syntax vorgestellt. Der Aufbau folgt dem YouTube Tutorial von Max. Hier gelangst du zu dem Link: [https://www.youtube.com/watch?v=eaFvQG8wrGw&list=PLAB63281B90FB376E&index=3]<br />
<br />
=== Skript ===<br />
Der Code wird in einem Skript geschrieben. Dieses ist in zwei Bereiche aufgeteilt<br />
* Void setup() Dieses Skript wird einmalig ausgeführt und enthält zB. Input und output<br />
* Void loop() Dieser Teil des Skripts wird als Dauerschleife wiederholt<br />
<br />
==== Befehlseingabe ====<br />
<br />
Die Befehle werden nach folgender Syntax eingegeben:<br />
<br />
* Funktion(Parameter1, Parameter2);<br />
<br />
Dabei muss das «;» gesetzte werden, ausserdem spielen Gross- und Kleinbuchstaben eine Rolle.<br />
<br />
=== Variablen ===<br />
Übersichtshalber sollen sprechende Namen für die Bezeichnung von z.B. Outputs verwendet werden. Dabei können verschiedene Datentypen ausgewählt werden.<br />
<br />
==== Datentyp ====<br />
* int Ganze Zahlen von -32768 … 32767 z.B. 1, 48, -654<br />
* boolean Entweder true oder false<br />
* byte 8 Bit an Informationen z.B. 00010101 (=21)<br />
* char enthält 1 Byte Informationen, das ein Zeichen darstellt z.B. 65 = A<br />
* long grosse Zahlen von ca. -2.1 Milliarden bis 2.1 Milliarden z.B. 15636451<br />
* float Komazahlen z.B. 5.498<br />
* string Zeichenketten z.B. «Do it yourself»<br />
<br />
==== Deklaration Syntax ====<br />
<br />
* Datentyp Name = Wert;<br />
<br />
oder<br />
<br />
* Datentyp Name;<br />
* Name = Wert;<br />
<br />
====Ort der Deklaration====<br />
<br />
Die Variable muss immer im Teil des Skriptes deklariert sein, wo sie auch gebraucht wird. Wird die Variable im setup wie auch im loop benötigt, so kann man die Variable als sogenannte globale Variable oberhalb des Setups deklarieren.<br />
<br />
===If-Schleife===<br />
<br />
Bei der If-Schleife wird der Wert einer Variablen mit einem Vergleichswert verglichen. Falls der Vergleich positiv ist, wird der Code ausgeführt, ansonsten übersprungen. Dazu sind Vergleichsoperatoren notwendig.<br />
<br />
====Syntax====<br />
<br />
if(Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
====Vergleichsoperatoren====<br />
<br />
* == gleich<br />
* != ungleich<br />
* < kleiner<br />
* < grösser<br />
* <= kleiner gleich<br />
* >= grösser gleich<br />
<br />
===While-Schleife===<br />
<br />
Mit der While-Schleife wird die Bedingung fortlaufend geprüft. Stimmt diese, wird der Code ausgeführt, ansonsten wird der Code übersprungen. Es können die selben Vergleichsoperatoren wie bei der If-Schleife verwendet werden.<br />
<br />
====Syntax====<br />
<br />
while (Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
==Bildgebende Verfahren==<br />
<br />
Der Tag begann mit einer Einführung in die Bildgebenden Verfahren durch David Stadelmann. Hierbei erklärte er uns, verschiedene Methoden, um Bilder aus dem Körperinneren zu machen und welche Methode für die verschiedenen Gewebetypen gebraucht werden. Zudem Zeigte und erklärte er uns anhand von Beispielen was die Einzelnen Schattierungen aussagen könnten.<br />
<br />
[[DIY-MedTech Bildgebende Verfahren-Unterschiedliche Bildeindrücke - Team Frosch]]<br />
<br />
==Synths & Sound ==<br />
<br />
Danach ging es weiter mit dem Kurs Synths & Sounds. Diese Session wurde von [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] durchgeführt. Hierbei zeigte er uns, wie man mit verschieden erzeugten Schwingungen eine grosse Variation von Tönen generiert kann. Zudem auch wie man elektronisch gewisse Instrumente Simulieren könnte und durch die Aneinanderreihung verschiedenster Tonvariationen eine Melodie enstehen kann. Dies mit unterschiedlich Variationen von selbstgebauten Synthesizers.<br />
<br />
<gallery><br />
File:Sinthesizer1.jpg | Synthesizer 1<br />
File:Synthesizer2.jpg | Synthesizer 2<br />
</gallery><br />
<br />
== Schweissen ==<br />
<br />
Bei dem Skill-Share Workshop von [https://www.hackteria.org/wiki/Team_G2020/ Team G2020] konnten wir verschiedene Schweissverfahren kennenlernen und auch gleich anwenden.<br />
<br />
Es wurde uns das [https://de.wikipedia.org/wiki/Lichtbogenhandschwei%C3%9Fen/ Elektrodenschweissen], das [https://de.wikipedia.org/wiki/Schutzgasschwei%C3%9Fen/ MIG-Schweissen] und das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] nähergebracht.<br />
<br />
Dieser Workshop war für uns alle sehr interessant, da sich bisher noch keiner von uns so wirklich mit dem Schweissen und den verschiedenen Verfahren auskannte. An diesem Tag konnten wir nach einer kurzen Theorie gleich sofort selber handanlegen und die verschiedenen Schweissverfahren ausprobieren.<br />
<br />
Dabei mussten wir feststellen, dass es gar nicht so einfach ist wie es immer aussieht. Besonders das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] braucht sehr viel Übung und Geschick um wirklich schöne Schweissergebnisse zu erzielen.<br />
<br />
== Autonomes Nervensystem und das Hören in der Medizin ==<br />
<br />
Der Assistent Dr. Christian Gehringer, MSc. (ETH) hielt uns einen sehr interessanten Vortrag. Dabei ging es darum, dass wir die Anatomie kennenlernen und erkunden am Beispiel des Hörens z.B mit einem Stethoskop.<br />
<br />
[https://www.hackteria.org/wiki/Autonomes_Nervensystem_und_das_H%C3%B6ren_in_der_Medizin/ Autonomes Nervensystem und das Hören in der Medizin]</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=MedTechDIY20_Die_Profis&diff=41669MedTechDIY20 Die Profis2020-02-09T11:57:51Z<p>Tnroth: /* Hack 3: Zinnguss */</p>
<hr />
<div>Hier gehts zurück auf: [[Medizintechnik DIY]]<br />
<br />
[[File:DieProfis.png|700px|right|none|Wochenplan]]<br />
<br />
= Team =<br />
<br />
'''Die Profis''' besteht aus den drei Studierenden '''Daniel Glur''', '''Lukas Roth''' und '''Daniel Zellweger''' der Hochschule Luzern. Im Rahmen der Blockwoche "DIY Medizintechnik" formierte sich das Team aus verschiedenen Studiengängen um auch interdisziplinär voneinander zu lernen und Wissen auszutauschen.<br />
<br />
'''Mitglieder:'''<br />
<br />
Maschinentechnik: <gallery><br />
File:DanielGlur.jpg | Daniel Glur<br />
File:LukasRoth.jpg | Lukas Roth<br />
</gallery><br />
<br />
Medizintechnik: <gallery><br />
File:DanielZellweger.jpg | Daniel Zellweger<br />
</gallery><br />
<br />
= Pflichtlektüre =<br />
<br />
'''How to control someone else's arm with your brain | Greg Gage'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/rSQNi5sAwuc<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
In Diesem Video wird gezeigt wie man über die Aufnahme eines Biologischen Signals, dieses an eine zweite Person weitergeleitet werden kann.<br />
Dies funktioniert jedoch nur aus verschiedenen Gründen bedingt. Nebst den allgemeinen Störeinflüsse aus der Messtechnik, kommen zusätzlich noch jene der Ansteuerung. Da das Signal nur von einzelnen Muskelfasern abgefangen wird, kann dieses nicht sämtliche Muskelfasern der zweiten Person Reizen. Dies hat zur folge, dass nur eine annähernd ähnliche Bewegung des Armes arfolgt.<br />
<br />
<br />
'''What is Open Source explained in LEGO'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/a8fHgx9mE5U<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Durch die Verwendung der Open Source Methode erhält man die Möglichkeit während des Projektes noch Erweiterungen oder Veränderungen anzustreben.<br />
<br />
'''"Why toys make good medical devices | Jose Gomez-Marquez'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/UHCT9SOBHs0<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Nebst dem Preis besitzen Spielzeuge diverse spezifische Funktionen. Da diese meist günstige Anschaffung auch einfach verändert werden kann, sind sie sehr geeignet dafür umgebaut zu werden. Somit sind Spielzeuge welche chemische oder sensorische Funktionen besitzen ein gefundenes fressen für den Hacker und eine Alternative für Regionen in welchen die finanzielle Situation teure Medizinprodukte nicht erlauben.<br />
<br />
= Einleitung =<br />
Die Blockwoche "DIY Medizintechnik" verbindet Anwendungen der Medizintechnik mit Do It Yourself (DIY) Ansätzen. Dadurch wird das tiefere Verständnis von Medizintechnischen Geräten durch einen direkten, interdisziplinären und möglichst selbstgesteuerten Zugang gefördert. Basierend auf verschiedenen elektrophysiologischen Messmodulen (EMG, EKG, EOG, EEG) entwickeln die Studierenden im Team Ideen für innovative Projekte. Erste Prototypen werden mit den Mitteln der Digitalen Fabrikation hergestellt und getestet. Tag für Tag stehen produktive "Hacks" auf dem Programm. Hacks sind sehr praxisbezogene Arbeitssequenzen wo die Studierenden Experimente durchführen sowie Prototypen entwickeln und bauen können. Dabei ist aber nicht nur die Medizintechnik zentral sondern auch der Interdisziplinäre Austausch sowie eine Skill-Share-Session wo die Studierenden ganz nach dem do it yourself Gedanken einen eigenen Workshop leiten können.<br />
Alle Erkenntnisse und Erfahrungen werden laufend in einem eigenen Wiki-Eintrag festgehalten und dokumentiert.<br />
<br />
Die Blockwoche wird von den beiden Dozenten [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] und [https://www.hackteria.org/wiki/Gaudi/ Urs Gaudenz] duchgeführt. Unterstützt wurden die Beiden von '''Dr. Christian Gehringer, MSc. (ETH)''' und [http://chrisobrist.ch/about// Chris Obrist]<br />
<br />
Maschinentechnik: <gallery><br />
File:MarkDusseiller.jpg | Dr. Marc R. Dusseiller<br />
File:UrsGaudenz.jpg | Urs Gaudenz<br />
</gallery><br />
<br />
= Planung =<br />
<br />
Die Blockwoche wird wie in folgendem Wochenplan unterteilt:<br />
<br />
[[File:Wochenplan2020.jpg|700px|thumb|none|Wochenplan]]<br />
<br />
= Wochenrückblick =<br />
== Die Woche in Bilder==<br />
[[File:ProfisInAction.PNG|400px]]<br />
[[File:Komponente.PNG|300px]]<br />
[[File:Aufbau.PNG|400px]]<br />
[[File:Motor_mit_Adapter.jpg|300px]]<br />
[[File:Pumpe.PNG|350px]]<br />
[[File:pulsmessung.jpg|450px]]<br />
[[File:Zusammenbau2.jpg|300px]]<br />
[[File:Foto 07.02.20, 11 14 53.jpg|300px]]<br />
[[File:DanielZellweger.jpg|300px]]<br />
<br />
== Tag 1==<br />
'''Einführung'''<br />
<br />
Wir traffen uns zu beginn im FABLAB, wo sich die Dozenten vorstellten und uns über Ihren bisherigen Werdegang informierten. Das interessante an der beruflichen Laufbahn der beiden ist, dass beide ein Studium abgeschlossen haben und heute einer Tätigkeit nachgehen, welche eigentlich nicht mehr viel mit dem damaligen Studium zu tun hat. Das vermittelt unserer Meinung nach, den Studenten eine etwas andere Sichtweise als die technische Hochschule. Es zeigt z.B. dass man nach einem Studium nicht gezwungen ist auf diesem Fachgebiet zu arbeiten sondern dass der Arbeitsmarkt noch sehr viele andere Möglichkeiten zu bieten hat.<br />
<br />
Nachdem sie sich Vorgestellt haben, stellten sie uns auch noch den Assistent vor. Dieser ist ein ausgebildeter Arzt welcher sich momentan für seinen zweiten Doktortitel engagiert. Von Ihm und seinem grossen medizinischen Fachwissen können wir als Studenten die ganze Woche profitieren.<br />
<br />
Danach überliessen die Dozenten uns Studenten das Wort. Es war eine etwas andere Vorstellungsrunde wie man sie noch nicht kannte. Dazu stand uns ein ganzer Tisch mit kuriosen Gegenständen, welche etwas mit dem DIY Gedanke zu tun haben, zur verfügung. Sie vorderten uns alle auf einen Gegenstand auszuwählen. Danach mussten wir uns Vorstellen und noch ein paar Worte dazu verlieren welche Gemeinsamkeiten wir mit dem ausgesuchten Gegenstand teilen.<br />
<br />
'''DIY (Do It Yourself)'''<br />
<br />
Das DIY Prinzip basiert auf eigenem experimentieren und learning by doing<br />
<br />
{{#widget:Iframe<br />
|url= https://www.youtube.com/watch?v=3zH_J12G9sQ<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
<br />
'''How to use Wiki'''<br />
<br />
Durch die 45 minütige Einführung in die Handhabung das Wiki durch Dr. Marc R. Dusseiller waren wir bereit unsere Erkenntnisse und Projekte, welche wir in dieser Woche erfahren und durchführen werden, in einer Zugänglichen Form, niederzuschreiben.<br />
<br />
== Tag 2 ==<br />
Am zweiten Tag begannen wir die Vorbereitung Skill-Share-Session. Diesbezüglich sollte jeder Teilnehmer einen Skill, welcher er erlernen möchte und einen Skill, den man beibringen könnte notieren. Diese wurden dann auf einer Tafel in Cluster aufgeteilt. Zwölf davon wurden als Skill-Share Workshops ausgewählt und die Teilnehmer konnten sich nach Belieben einschreiben.<br />
<br />
[[File:SkillSession2020.jpg|500px|thumb|none|Skill-share-session]]<br />
<br />
Während des zweiten Teils arbeiteten wir an unserem Experiment weiter, welches wir am Vortag begonnen haben.<br />
Dazu mussten wir die elektronischen Bauteile mit unserem Laptop verbinden und einen vorgefertigten Sketch laufen lassen.<br />
<br />
Nachdem wir den ersten Versuch erfolgreich durchführen konnten, versuchten wir mit dem Arduino einen Stepmotor anzusteuern. Dabei stiessen wir jedoch auf einige Schwierigkeiten. Da wir diese bis zur Einführung des Lasercutters und des 3D-Druckers fertig haben sollten. Siehe [[#Hack 0]]<br />
<br />
Unteranderem wurde unsere Skill-Share-Session über Arduino vorbereitet.<br />
<br />
Am Abend kam [http://chrisobrist.ch/about// Chris Obrist] zu Besuch und unterhielt uns mit einer wundervollen musikalischen Darbietung.<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/Hj1Ogr8137o<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
== Tag 3 ==<br />
Von 9:00 Uhr bis nach dem Mittag um 14:00 Uhr waren wir alle mit der [[#Skill-Share-Session]] beschäftigt.<br />
<br />
Danach hatten wir Zeit um den nächsten Hack vorzubereiten und zu planen.<br />
<br />
== Tag 4 ==<br />
Den Vormittag verbrachten wir weiter mit dem Hack 1, welchen wir dann vor der Mittagspause den Dozenten und allen Mitstudierenden präsentieren durften. Leider litten wir während des ganzen Hack 1 sehr unter Zeitdruck, was auf eine turbulente Projektphase zurückzuführen ist. Mehr dazu erfährst du im [[#Hack 1]].<br />
<br />
Nach einer kurzen Inspirationphase entschieden wir uns dafür eine kleine Spritzenpumpe zu basteln. [[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 5 ==<br />
Am Tag 5 ging es darum die Einzelteile physikalisch sowie über ein Funktionierendes Arduinoprogamm zum laufen zu bringen.<br />
[[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 6 ==<br />
Zum Abschluss durften wir alle Hacks der verschiedenen Teams begutachten. Interessant waren die spontanen Vorgehensweisen und auch die daraus entstandenen Produkte. Viele Teams suchten zuerst das Material und erst danach die Ideen. So entstanden die unterschiedlichsten Prototypen.<br />
Zudem Reflektierten wird die Blockwoche. Im Allgemeinen gefielen die Freiheit und auch der unkomplizierte Teamgeist untereinander. Besten Dank auch an die Organisatoren der Blockwoche.<br />
<br />
= Experimente =<br />
Bei den Experimenten sollte es darum gehen aus unterschiedlichsten Einzelteilen ein Produkt zu erschaffen. Dieser Prozess brachte uns dazu über die Grenzen unseres altäglichem Denken zu springen und in der Verbindung der einzelnen Bereiche solcher Produkte besser zu verstehen.<br />
<br />
== Hack 0 ==<br />
<br />
<br />
===Versuchsaufbau 1===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 1===<br />
Nach den Inputs der Dozenten verbrachten wir hauptsächlich die Zeit damit den Muscle Spiker Shield nach der Anleitung mit den dazugehörigen Teilen zusammenzulöten.[https://backyardbrains.com/products/files/MuscleSpikerShield.v.2.11.BuildingInstructions.pdf]V2.11<br />
Nebenbei machten wir unsere ersten Schritte in Arduino.<br />
Als wir unsere mechatronischen Komponenten zusammengestellt und ein Grundverständnis von Arduino angeeignet haben, verbanden wir dies in einem Experiment. <br />
Das Experiment welches wir durchführten nennt man Control Machines with your Brain und ist auf der Seite von [https://backyardbrains.com/experiments/muscleSpikerShield/ Backyard Brains] nachzusehen.<br />
<br />
Für den Versuch wurden Elektroden an den Testpersonen angeschlossen und über den Arduino ausgelesen.<br />
Der Versuch wurde mit zwei Testpersonen durchgeführt. Dabei fiel uns nebst der Kontrolle der LED's auch auf, dass der Puls gemessen wurde. Dies unabhängig von der Position der Elektroden. Vermutlich reagieren die Elektroden zu sensitiv für diese Anwendung.<br />
<br />
<br />
[[File:UeberblickVersuchTeamD.jpg|400px|thumb|none|Versuchsaufbau]]<br />
[[File:Versuchsaufbau1TeamD.jpg|400px|thumb|none|Elektrodenbefestigung]]<br />
[[File:MessungDanielGlur.jpg|400px|thumb|none|Messung von Daniels Puls]]<br />
<br />
===Versuchsaufbau 2===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 2===<br />
<br />
Als zweites Experiment versuchten wir durch das anspannen der Muskeln einen Servomotor anzusteuern. Wie es auch auf der Homepage von [https://backyardbrains.com/experiments/MuscleSpikerShield_GripperHand/ Backyard Brains] anzutreffen ist. Dieser Versuch konnte aber leider aus Zeitgründen nicht zu Ende geführt werden. Wir konnten lediglich das Arduinoprogramm laden und etwas anpassen.<br />
<br />
===Reflexion===<br />
<br />
Der Hack 0 war in der Hinsicht sehr interessant, da wir alle unsere ersten Erfahrungen mit einem Arduino machen konnten. Einige von unserem Team hatten bisher auch noch nie auf einer Printplatte irgendwelche Widerstände oder Schalter etc. gelötet. Ebenso war es erstaunlich, dass man mit so wenig so viel verschiedene Sachen machen kann. Keiner von uns hat gedacht dass wir bereits am ersten Tag irgend etwas mit unseren Muskeln kontrollieren könnten. Insgesamt kam der Hack 0 gut bei uns an und wir alle konnten einiges davon profitieren und hoffentlich auch den weiteren Hacks weiterverwenden.<br />
<br />
== Hack 1: Baseball-Cap mit Ventilator ==<br />
<br />
Der Hack 1 beschreibt die Konzept- und Testphase des ersten Prototyps.<br />
<br />
Zu Beginn waren wir uns sehr unschlüssig was wir wirklich bauen wollen. Also entschieden wir uns für ein weiteres Experiment mit einem Bausatz von Backyard Brains. Wir versuchten durch die Funktion des Heart and Brain Spiker Shield einen Ventilator anzusteuern. Der Gedanke, welcher uns auf diese Idee führte, kennt wohl jeder Student. Während einer Prüfung kommt so mancher ins Grübeln und in harten Fällen kommt es auch vor dass einem eine Schweissperle von der Stirn läuft. Um in solchen Fällen für die nötige Kühlung zu sorgen, sollen Sensoren die Hirnströme gemessen und als Signal wiedergeben werden um damit einen Ventilator anzuschalten.<br />
<br />
Zu unserem eigenen Erstaunen erhielten wir sogar ein Signal aus unserer Messung. Es stellte sich aber sehr bald heraus, dass das wohl nicht die Hirnströme waren sondern eher Bewegungen des Kopfs und der Kabel. Denn die Sensoren sind recht empfindlich gegen solche Einflüsse. Zudem kam noch, dass die Sensoren über den Haaren angebracht wurden, was das Signal der Hirnströme noch zusätzlich verschlechterte. Nach einigen Versuchen sahen wir ein, dass das wohl eine zu grosse Herausforderung war und wir uns besser an einen einfacheren Versuch versuchen sollten.<br />
<br />
[[File:heart_and_brain.jpg|300px|thumb|none|Signal aus Messung der "Hirnströme"]]<br />
[[File:EEGDanielGlur.jpg|500px|thumb|none|Daniel beim messen der "Hirnströme"]]<br />
<br />
Also beschlossen wir uns anstelle der Hirnströme den Puls zu messen. Denn während einer Prüfung kann es durchaus auch vorkommen, dass der Puls etwas ansteigt. Die Messungen sollten dann ausgelesen werden und wenn der Puls eine gewisse Frequenz übersteigt, schaltet ein Ventilator ein um den Studenten wieder etwas zu beruhigen.<br />
<br />
Für diesen Versuch platzierten wir Sensoren am Unterarm und an der Handoberfläche. Idealerweise sollten laut Assistent Christian die Sensoren aber so weit wie möglich voneinander entfernt, an einer anderen Körperstelle angebracht werden um eine gewisse Referenz zu haben und um sicherzustellen, dass man wirklich den Puls misst. Unsere Kabel waren aber leider etwas zu kurz. Wir erhielten trotzdem ein relativ gutes Signal von welchem man davon ausgehen konnte, dass es sich um den Puls handelte. Jetzt nur noch das Signal auswerten, einen Frequenzbegrenzer programmieren und mithilfe von einem Arduino UNO den Ventilator ansteuern... Dachten wir... Dies war allerdings etwas Schwieriger als erwartet und überstieg unsere Kompetenzen. Das führte uns dazu auch diesen Versuch an dieser Stelle abzubrechen und nochmal zu überdenken.<br />
<br />
<br />
[[File:puls.png|400px|thumb|none|Pulssignal]]<br />
[[File:pulsmessung.jpg|400px|thumb|none|Pulssmessung]]<br />
<br />
<br />
Nun rannte uns schon langsam die Zeit davon. Doch dann kam uns die Idee, welche wir schon zu Beginn benötigt hätten. Und zwar wollten wir einen Ventilator auf einem Baseball-Cap anbringen und diesen ansteuern wenn ein gewisses Temperaturniveau unter dem Cap überschritten wird wird. Dazu wird ein 12V Ventilator via Relais von dem Arduino angesteuert. Weil der Arduino nur eine Spannung von 5V liefert, musste ein 12V Netzgerät den Ventilator mit Strom versorgen. Damit man den Ventilator so schalten konnte, damit er den Strom über das 12V Netzgerät bezieht, mussten wir noch ein Relais einbauen. Den Code für den Arduino bezogen wir aus verschiedenen ähnlichen Projekten aus dem Internet und passten ihn spezifisch für unsere Anwendung an. Für das auslesen der Temperatur mussten wir zuerst zwei Libreries herunterladen (DallasTemperature und OneWire).<br />
<br />
[[File:Komponente.PNG|400px|thumb|none|Verbaute Komponenten]]<br />
<br />
Nun mussten wir noch den Ventilator am Baseball-Cap anbringen. Dafür wurde eine Halterung im CAD konstruiert und mit einem 3D-Drucker ausgedruckt. Die Teile wurden danach zusammengesteckt und mit dem Baseball-Cap verschraubt. Natürlich wurde zuvor ein Loch in das Cap geschnitten, damit der Ventilator auch seinen Zweck erfüllen kann und dem Studenten einen kühlen Kopf verschafft.<br />
<br />
[[File:Aufbau.PNG|350px|thumb|none|3D-Modell im CAD]]<br />
<br />
[[File:Zusammenbau1.jpg|350px]]<br />
[[File:Zusammenbau2.jpg|350px]]<br />
<br />
Nun wurde unser Prototyp getestet. Der Sensor erfüllte seinen Dienst und wir konnten erfolgreich die Temperaturen messen. Jedoch war das Relais während dem Testen ständig eingeschalten und der Ventilator lief die ganze Zeit auch wenn die Temperatur den Minimalwert unterschritten hatte. Es hat sich also irgendwo in unserem Programm einen Fehler eingeschlichen. Den galt es nun zu finden und zu beheben. Dazu bauten wir einen Druckknopf ein um zu überprüfen ob das Relais defekt war und um die Fehlerquellen etwas einzugrenzen.<br />
<br />
[[File:Temperatur.jpg|350px]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/TQnGa5WiGS4<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
Der Druckknopf funktionierte, das Relais schaltete perfekt ein und aus und der Ventilator wurde an- und abgestellt. Somit wissen wir nun wo der Fehler zu suchen ist und können versuchen das Programm an diesen Stellen zu bereinigen. Nur ist jetzt schon Donnerstag Nachmittag und der Hack 2 hat schon begonnen. Wir alle wurden aufgefordert unseren bisherigen Prototypen aufzugeben und etwas neues, anderes zu versuchen und zu testen. Also legen wir schweren Herzens unser erster Prototyp beiseite und widmen unsere Kreativität dem nächsten Hack.<br />
<br />
=== Reflexion ===<br />
Der Hack 1 hat uns gezeigt, dass es gar nicht so einfach ist beim ersten Versuch ein brauchbares Resultat zu erzielen. Jedoch konnten wir so aus zwei vorhergehenden, fehlgeschlagenen Ansätzen eine Idee weiterentwickeln. Somit konnten wir mit unseren Kompetenzen und den Erfahrungen aus dem Hack 0 ein zufriedenstellendes Resultat erzielen. Durch die zwei Versuche zuvor ging leider recht viel Zeit "verloren", welche wir sehr benötigt hätten um unser erster Prototyp fehlerfrei hinzukriegen. Es war uns auch eine Lehre, dass man nicht zu lange an einer Sache verharren sollte wenn einem nur wenig Zeit zur Verfügung steht. Manchmal ist es besser man wirft alles nochmal über den Haufen und beginnt von vorne. Trotz allen Strapazen während des Hack 1 sind wir mit unserem ersten Prototyp sehr zufrieden und konnten auch bei diesem Versuch wieder viel profitieren und mitnehmen. Nun blicken wir gespannt nach vorne auf den nächsten Hack.<br />
<br />
<br />
===Code===<br />
<br />
Wir konnten zwar die Temperatur herauslesen und das Relais über einen Butten steuern, jedoch die Steuerung anhand der Temperatur geling uns nicht.<br />
<br />
<pre><br />
/********************************************************************/<br />
// First we include the libraries<br />
#include <OneWire.h> <br />
#include <DallasTemperature.h><br />
/********************************************************************/<br />
// Data wire is plugged into pin 2 on the Arduino <br />
#define ONE_WIRE_BUS 2 <br />
<br />
float tempReading;<br />
/********************************************************************/<br />
// Setup a oneWire instance to communicate with any OneWire devices <br />
// (not just Maxim/Dallas temperature ICs) <br />
OneWire oneWire(ONE_WIRE_BUS); <br />
/********************************************************************/<br />
// Pass our oneWire reference to Dallas Temperature. <br />
DallasTemperature sensors(&oneWire);<br />
/********************************************************************/ <br />
int relayPin = 4; // Relay Singnal lead to Digital Pin [D2-D12]<br />
<br />
float maxTemperature = 30.00; // The Max Temperature allowed<br />
float minTemperature = 25.00; // The Min Temperature allowed<br />
<br />
// constants won't change. They're used here to set pin numbers:<br />
const int buttonPin = 8; // the number of the pushbutton pin<br />
const int ledPin = 4; // the number of the LED pin<br />
<br />
// variables will change:<br />
int buttonState = 0; // variable for reading the pushbutton status<br />
<br />
void setup(void) {<br />
// initialize the LED pin as an output:<br />
pinMode(ledPin, OUTPUT);<br />
// initialize the pushbutton pin as an input:<br />
pinMode(buttonPin, INPUT);<br />
<br />
Serial.begin(9600); <br />
Serial.println("Dallas Temperature IC Control Library Demo"); <br />
// Start up the library <br />
sensors.begin(); <br />
}<br />
<br />
void loop(void) <br />
{ <br />
// call sensors.requestTemperatures() to issue a global temperature <br />
// request to all devices on the bus <br />
/********************************************************************/<br />
Serial.print(" Requesting temperatures..."); <br />
sensors.requestTemperatures(); // Send the command to get temperature readings <br />
Serial.println("DONE"); <br />
/********************************************************************/<br />
Serial.print("Temperature is: "); <br />
Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"? <br />
// You can have more than one DS18B20 on the same bus. <br />
// 0 refers to the first IC on the wire <br />
delay(1000); // Check Temperature every second<br />
<br />
float temperature = getTemperature();<br />
if(temperature >= maxTemperature){<br />
powerOnRelay();<br />
} else if (temperature <= minTemperature) {<br />
powerOffRelay();<br />
}<br />
delay(1000); // Check tempertature every second<br />
<br />
} <br />
void powerOnRelay() {<br />
digitalWrite(relayPin, HIGH);<br />
Serial.println("Relay On");<br />
}<br />
<br />
void powerOffRelay() {<br />
digitalWrite(relayPin, LOW);<br />
Serial.println("Relay Off");<br />
}<br />
float getTemperature(){<br />
tempReading = digitalRead(ONE_WIRE_BUS);<br />
<br />
// read the state of the pushbutton value:<br />
buttonState = digitalRead(buttonPin);<br />
<br />
// check if the pushbutton is pressed. If it is, the buttonState is HIGH:<br />
if (buttonState == HIGH) {<br />
// turn LED on:<br />
digitalWrite(ledPin, HIGH);<br />
} else {<br />
// turn LED off:<br />
digitalWrite(ledPin, LOW);<br />
}<br />
}<br />
</pre><br />
<br />
== Hack 2: Spritzenpumpe ==<br />
<br />
Nachdem der Hack 1 abgeschlossen war, machten wir uns aufs Neue darüber Gedanken was wir für einen Prototyp für den Hack 2 bauen wollen. Urs hat nach dem Abschluss von Hack 1 gesagt, wir sollten uns ein komplett neues Produkt überlegen, welches möglicherweise auch etwas mit der Medizintechnik zu tun hat. Nach einem Brainstorming kamen wir noch nicht so richtig auf einen grünen Zweig. So kamen wir auf die Idee uns einen Kaffee zu holen und einfach mal durch das FABLAB zu laufen um alles Mögliche anzuschauen, in die Hand zu nehmen und uns von all diesen Gegenständen inspirieren zu lassen. So kamen uns diverse Gegenstände in die Finger. darunter waren Servomotoren sowie einige DC-Motoren, eine Spritze, eine Pumpe, ein Micro-Switch Schalter, ein Potentiometer und vieles mehr. Diese Gegenstände haben wir dann auf unserem Gruppentisch ausgebreitet und uns Gedanken darüber gemacht was wir damit wohl anstellen konnten zum Thema Medizintechnik. So entstanden relativ schnell einige Ideen. Wir haben uns schlussendlich dafür entschieden ein Dosiergerät für eine medizinische Spritze zu machen. Dieses sollte so funktionieren, dass wir eine Spritze in eine Vorrichtung legen und über einen DC-Motor zum Einfahren bzw. Ausfahren bringen. Dazu muss die Drehbewegung des Motors in eine Lineare Bewegung umgeleitet werden. Zudem muss ggf. auch die Drehzahl des Motors durch ein Potentiometer reguliert werden können um einen zu schnellen Aus- oder Einfahrvorgang zu verhindern. Soviel zu zu den technischen Überlegungen. <br />
<br />
Sofort nach dem Entscheid suchten wir nach einem geeigneten Motor. Dieser sollte dabei eine eher tiefe Drehzahl haben damit die Spritze nur langsam ein- und ausfährt. Zudem suchten wir im Internet nach einem geeigneten Mechanismus der die Drehbewegung in eine lineare Bewegung umwandelt. Denn wir hatten leider zu wenig zeit um alles selber zu entwerfen und zu konstruieren. So wurden wir auf auf der Hompage von [https://www.thingiverse.com/thing:2797132/ Thingiverse] schliesslich fündig. Also konnte wir die Folgenden Komponenten herunterladen und mit dem 3D-Drucker ausdrucken.<br />
<br />
Komponenten: <gallery><br />
File:Halteplatte.PNG | Halteplatte<br />
File:Zahnrad.PNG | Zahnradpaar<br />
File:Zahnradpaar.PNG | Zahnstange<br />
File:Zahnstange.PNG | Zahnrad<br />
</gallery><br />
<br />
Da wir einen anderen Motor verwendeten als für diesen Mechanismus vorgesehen wäre, mussten wir noch eine passende Adapterplatte konstruieren, damit der Motor auch auf die Vorrichtung passt.<br />
<br />
<gallery><br />
File:Adapterplatte.PNG | Adapterplatte<br />
File:Motor.PNG | Motor<br />
File:Motor_mit_Adapter.jpg | Motor mit Adapter<br />
</gallery><br />
<br />
Der Motor benötigt, wie auch der Ventilator von Hack 1, eine Spannung von 12V für den Betrieb. Also mussten wir erneut das 12V Netzgerät verwenden. Damit unser zweiter Prototyp auch die gewünschte Fördermenge fördern kann, muss die Zeitdauer, in welcher gefördert werden soll, definiert werden. Das dazugehörige Programm wird mit einem Arduino UNO implementiert. Der Zugehörige Code haben wir durch Recherche im Internet und durch persönliches erweitern und anpassen erstellt. Die Drehzahl des Motors darf nicht zu hoch sein damit man die Fördermenge auch sinnvoll einstellen kann. Für diese Anwendung wird ein Potentiometer zwischen Relais und Motor gehängt. So kann die Motorspannung reguliert und die Drehzahl anforderungsgemäss eingestellt werden. Nachfolgend wird der Prozessablauf kurz beschrieben.<br />
<br />
Mit einem Knopfdruck wird wird ein Relais geschalten und der Motor wird angesteuert. Die Drehzahl des Motors wird über ein Getriebe reduziert. Die Zahnräder greifen auf eine Zahnstange und wandeln die Drehbewegung in eine lineare Bewegung um. An der Zahnstange wird der Stössel der Spritze befestigt. Der Rest der Spritze wird mit einem Kabelbinder fest mit der Bodenplatte verbunden damit sich dieser Teil nicht bewegen kann. Die programmierte Zeitdauer bestimmt welche Menge an Flüssigkeit gefördert werden soll.<br />
<br />
[[File:Pumpe.PNG|500px|thumb|none|Aufbau der Spritzenpumpe]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/PLG_S3GtVI8<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
=== Reflexion ===<br />
<br />
Anders als beim Hack 1 kamen waren wir uns bei diesem Hack sehr schnell einig was genau wir bauen möchten. Die ganze Ideenfindung erledigte sich sehr schnell und wir konnten nach bereits wenigen Stunden mit dem programmieren des Arduinos beginnen. Wie wir bereits im Hack 1 erfahren durften, ist das bei dem gedrängten Zeitplan dieser Woche ein grosser Vorteil. Rückblickend können wir urteilen, dass der Hack 2 aus unserer Sicht ein erfreuendes Erfolgserlebnis war. Unser zweiter Prototyp funktioniert genau so wie wir uns das von Beginn an vorgestellt haben. Per Knopfdruck fördert unser Prototyp eine gewisse Menge an Flüssigkeit.<br />
<br />
=== Code ===<br />
<br />
<pre><br />
<br />
bool geschaltet = false;<br />
int RelaisPin = 10; <br />
int tasterPin = 2;<br />
int empfindlichkeit = 200;<br />
<br />
void setup() {<br />
<br />
pinMode( tasterPin, INPUT_PULLUP);<br />
pinMode( RelaisPin, OUTPUT);<br />
<br />
}<br />
<br />
void loop() {<br />
<br />
if (digitalRead(tasterPin) == LOW) <br />
{<br />
if (geschaltet == false) {<br />
geschaltet = true;<br />
}<br />
else {<br />
geschaltet = false;<br />
}<br />
}<br />
<br />
if (geschaltet == true) {<br />
digitalWrite(RelaisPin, HIGH);<br />
delay(1000);<br />
geschaltet = false; <br />
}<br />
<br />
if (geschaltet == false) {<br />
digitalWrite(RelaisPin, LOW);<br />
}<br />
<br />
delay(empfindlichkeit);<br />
}<br />
</pre><br />
<br />
== Hack 3: Zinnguss ==<br />
<br />
Für diesen Hack wurde Zinn gegossen. Dank dem tiefen Schmelzpunkt lässt sich der Gusswerkstoff in einer Stahlkanne mit einem Brenner einer Autogenschweissanlage leicht erhitzen.<br />
<br />
[[File:Kanne.jpg|400px|thumb|none|Stahlkanne mit flüssigem Zinn]]<br />
<br />
=== Versuch 1 ===<br />
<br />
Für die Gussform wurde MDF verwendet. Da die Hitzebeständigkeit von MDF unklar war, sollte ein kleiner Versuch Aufschluss geben. Eine einfache Zylinderform mit einem Überlaufbecken bestehend aus 3 Platten gemässe Bild [[:File:Versuch_1_Gussform.jpg]]Gussform, Versuch 1. Da nur eine kleine Menge an Zinn erhitzt wurde, war die Temperatur vermutlich deutlich über dem Schmelzpunkt. Es entwickelte sich Dampf, was zu einem Gussfehler im Überlauf führte. Ausserdem wurde das MDF stark verkohlt, siehe [[:File:Versuch_1_Resultat.jpg]]Resultat. Dennoch ist das Resultat zufriedenstellend, sodass für einen weiteren Versuch wieder MDF verwendet werden kann.<br />
<br />
Versuch 1: <gallery><br />
File:Versuch_1_Gussform.jpg|400px | Gussform<br />
File:Versuch_1_Guss.jpg|400px | Frisch gegossen<br />
File:Versuch_1_Resultat.jpg|400px | Resultat<br />
</gallery><br />
<br />
=== Versuch 2 ===<br />
<br />
Nun konnte der eigentliche Versuch gestartet werden. Das Zinn wurde wieder in der Stahlkanne erhitzt, jedoch nicht so stark wie in Versuch 1. Jedoch wurden diesmal alle Formen mit dem Lasercutter ausgeschnitten. Auch bei dieser Gussform diente die letzte MSF Platte als Überlauf. Das flüssige Zinn konnte bei der grösseren Form kontrollierter und langsamer gegossen werden, so dass die Form gleichmässig ausgefüllt werden konnte, siehe Bild [[:File:Versuch_2_Guss.jpg]]Frisch gegossen.<br />
<br />
Versuch 2 giessen<br />
<gallery><br />
File:Versuch_2_Gussform.jpg|400px | Gussform<br />
File:Versuch_2_Guss.jpg|400px | Frisch gegossen<br />
</gallery><br />
<br />
Durch den Schwund lässt sich das Gussstück relativ gut aus der Form drücken, obwohl keine Formschrägen vorhanden waren. Vorher empfiehlt es sich, den Überlauf abzufräsen (Bild [[:File:Versuch_2_Fraesen.jpg]]Überfäsen, [[:File:Versuch_2_Resultat.jpg]]Resultat), da sich Zinn nur bedingt im Schraubstock einspannen lässt. Zinn vierbiegt sich sehr leicht.<br />
<br />
Versuch 2 bearbeitung<br />
<gallery><br />
File:Versuch_2_Fraesen.jpg | Überfäsen<br />
File:Versuch_2_Resultat.jpg | Resultat<br />
</gallery><br />
<br />
= Skill-Share-Session =<br />
<br />
== Grundlagen der Arduinoprogrammierung ==<br />
<br />
Dieser Kurs wurde von unserer Gruppe angeboten und soll den Teilnehmern die Grundlage der Programierung eines Arduino UNO beibringen. Folgend werden die grundlegenden Befehle und deren Syntax vorgestellt. Der Aufbau folgt dem YouTube Tutorial von Max. Hier gelangst du zu dem Link: [https://www.youtube.com/watch?v=eaFvQG8wrGw&list=PLAB63281B90FB376E&index=3]<br />
<br />
=== Skript ===<br />
Der Code wird in einem Skript geschrieben. Dieses ist in zwei Bereiche aufgeteilt<br />
* Void setup() Dieses Skript wird einmalig ausgeführt und enthält zB. Input und output<br />
* Void loop() Dieser Teil des Skripts wird als Dauerschleife wiederholt<br />
<br />
==== Befehlseingabe ====<br />
<br />
Die Befehle werden nach folgender Syntax eingegeben:<br />
<br />
* Funktion(Parameter1, Parameter2);<br />
<br />
Dabei muss das «;» gesetzte werden, ausserdem spielen Gross- und Kleinbuchstaben eine Rolle.<br />
<br />
=== Variablen ===<br />
Übersichtshalber sollen sprechende Namen für die Bezeichnung von z.B. Outputs verwendet werden. Dabei können verschiedene Datentypen ausgewählt werden.<br />
<br />
==== Datentyp ====<br />
* int Ganze Zahlen von -32768 … 32767 z.B. 1, 48, -654<br />
* boolean Entweder true oder false<br />
* byte 8 Bit an Informationen z.B. 00010101 (=21)<br />
* char enthält 1 Byte Informationen, das ein Zeichen darstellt z.B. 65 = A<br />
* long grosse Zahlen von ca. -2.1 Milliarden bis 2.1 Milliarden z.B. 15636451<br />
* float Komazahlen z.B. 5.498<br />
* string Zeichenketten z.B. «Do it yourself»<br />
<br />
==== Deklaration Syntax ====<br />
<br />
* Datentyp Name = Wert;<br />
<br />
oder<br />
<br />
* Datentyp Name;<br />
* Name = Wert;<br />
<br />
====Ort der Deklaration====<br />
<br />
Die Variable muss immer im Teil des Skriptes deklariert sein, wo sie auch gebraucht wird. Wird die Variable im setup wie auch im loop benötigt, so kann man die Variable als sogenannte globale Variable oberhalb des Setups deklarieren.<br />
<br />
===If-Schleife===<br />
<br />
Bei der If-Schleife wird der Wert einer Variablen mit einem Vergleichswert verglichen. Falls der Vergleich positiv ist, wird der Code ausgeführt, ansonsten übersprungen. Dazu sind Vergleichsoperatoren notwendig.<br />
<br />
====Syntax====<br />
<br />
if(Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
====Vergleichsoperatoren====<br />
<br />
* == gleich<br />
* != ungleich<br />
* < kleiner<br />
* < grösser<br />
* <= kleiner gleich<br />
* >= grösser gleich<br />
<br />
===While-Schleife===<br />
<br />
Mit der While-Schleife wird die Bedingung fortlaufend geprüft. Stimmt diese, wird der Code ausgeführt, ansonsten wird der Code übersprungen. Es können die selben Vergleichsoperatoren wie bei der If-Schleife verwendet werden.<br />
<br />
====Syntax====<br />
<br />
while (Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
==Bildgebende Verfahren==<br />
<br />
Der Tag begann mit einer Einführung in die Bildgebenden Verfahren durch David Stadelmann. Hierbei erklärte er uns, verschiedene Methoden, um Bilder aus dem Körperinneren zu machen und welche Methode für die verschiedenen Gewebetypen gebraucht werden. Zudem Zeigte und erklärte er uns anhand von Beispielen was die Einzelnen Schattierungen aussagen könnten.<br />
<br />
[[DIY-MedTech Bildgebende Verfahren-Unterschiedliche Bildeindrücke - Team Frosch]]<br />
<br />
==Synths & Sound ==<br />
<br />
Danach ging es weiter mit dem Kurs Synths & Sounds. Diese Session wurde von [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] durchgeführt. Hierbei zeigte er uns, wie man mit verschieden erzeugten Schwingungen eine grosse Variation von Tönen generiert kann. Zudem auch wie man elektronisch gewisse Instrumente Simulieren könnte und durch die Aneinanderreihung verschiedenster Tonvariationen eine Melodie enstehen kann. Dies mit unterschiedlich Variationen von selbstgebauten Synthesizers.<br />
<br />
<gallery><br />
File:Sinthesizer1.jpg | Synthesizer 1<br />
File:Synthesizer2.jpg | Synthesizer 2<br />
</gallery><br />
<br />
== Schweissen ==<br />
<br />
Bei dem Skill-Share Workshop von [https://www.hackteria.org/wiki/Team_G2020/ Team G2020] konnten wir verschiedene Schweissverfahren kennenlernen und auch gleich anwenden.<br />
<br />
Es wurde uns das [https://de.wikipedia.org/wiki/Lichtbogenhandschwei%C3%9Fen/ Elektrodenschweissen], das [https://de.wikipedia.org/wiki/Schutzgasschwei%C3%9Fen/ MIG-Schweissen] und das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] nähergebracht.<br />
<br />
Dieser Workshop war für uns alle sehr interessant, da sich bisher noch keiner von uns so wirklich mit dem Schweissen und den verschiedenen Verfahren auskannte. An diesem Tag konnten wir nach einer kurzen Theorie gleich sofort selber handanlegen und die verschiedenen Schweissverfahren ausprobieren.<br />
<br />
Dabei mussten wir feststellen, dass es gar nicht so einfach ist wie es immer aussieht. Besonders das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] braucht sehr viel Übung und Geschick um wirklich schöne Schweissergebnisse zu erzielen.<br />
<br />
== Autonomes Nervensystem und das Hören in der Medizin ==<br />
<br />
Der Assistent Dr. Christian Gehringer, MSc. (ETH) hielt uns einen sehr interessanten Vortrag. Dabei ging es darum, dass wir die Anatomie kennenlernen und erkunden am Beispiel des Hörens z.B mit einem Stethoskop.<br />
<br />
[https://www.hackteria.org/wiki/Autonomes_Nervensystem_und_das_H%C3%B6ren_in_der_Medizin/ Autonomes Nervensystem und das Hören in der Medizin]</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=MedTechDIY20_Die_Profis&diff=41665MedTechDIY20 Die Profis2020-02-09T11:55:21Z<p>Tnroth: /* Hack 3: Zinnguss */</p>
<hr />
<div>Hier gehts zurück auf: [[Medizintechnik DIY]]<br />
<br />
[[File:DieProfis.png|700px|right|none|Wochenplan]]<br />
<br />
= Team =<br />
<br />
'''Die Profis''' besteht aus den drei Studierenden '''Daniel Glur''', '''Lukas Roth''' und '''Daniel Zellweger''' der Hochschule Luzern. Im Rahmen der Blockwoche "DIY Medizintechnik" formierte sich das Team aus verschiedenen Studiengängen um auch interdisziplinär voneinander zu lernen und Wissen auszutauschen.<br />
<br />
'''Mitglieder:'''<br />
<br />
Maschinentechnik: <gallery><br />
File:DanielGlur.jpg | Daniel Glur<br />
File:LukasRoth.jpg | Lukas Roth<br />
</gallery><br />
<br />
Medizintechnik: <gallery><br />
File:DanielZellweger.jpg | Daniel Zellweger<br />
</gallery><br />
<br />
= Pflichtlektüre =<br />
<br />
'''How to control someone else's arm with your brain | Greg Gage'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/rSQNi5sAwuc<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
In Diesem Video wird gezeigt wie man über die Aufnahme eines Biologischen Signals, dieses an eine zweite Person weitergeleitet werden kann.<br />
Dies funktioniert jedoch nur aus verschiedenen Gründen bedingt. Nebst den allgemeinen Störeinflüsse aus der Messtechnik, kommen zusätzlich noch jene der Ansteuerung. Da das Signal nur von einzelnen Muskelfasern abgefangen wird, kann dieses nicht sämtliche Muskelfasern der zweiten Person Reizen. Dies hat zur folge, dass nur eine annähernd ähnliche Bewegung des Armes arfolgt.<br />
<br />
<br />
'''What is Open Source explained in LEGO'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/a8fHgx9mE5U<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Durch die Verwendung der Open Source Methode erhält man die Möglichkeit während des Projektes noch Erweiterungen oder Veränderungen anzustreben.<br />
<br />
'''"Why toys make good medical devices | Jose Gomez-Marquez'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/UHCT9SOBHs0<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Nebst dem Preis besitzen Spielzeuge diverse spezifische Funktionen. Da diese meist günstige Anschaffung auch einfach verändert werden kann, sind sie sehr geeignet dafür umgebaut zu werden. Somit sind Spielzeuge welche chemische oder sensorische Funktionen besitzen ein gefundenes fressen für den Hacker und eine Alternative für Regionen in welchen die finanzielle Situation teure Medizinprodukte nicht erlauben.<br />
<br />
= Einleitung =<br />
Die Blockwoche "DIY Medizintechnik" verbindet Anwendungen der Medizintechnik mit Do It Yourself (DIY) Ansätzen. Dadurch wird das tiefere Verständnis von Medizintechnischen Geräten durch einen direkten, interdisziplinären und möglichst selbstgesteuerten Zugang gefördert. Basierend auf verschiedenen elektrophysiologischen Messmodulen (EMG, EKG, EOG, EEG) entwickeln die Studierenden im Team Ideen für innovative Projekte. Erste Prototypen werden mit den Mitteln der Digitalen Fabrikation hergestellt und getestet. Tag für Tag stehen produktive "Hacks" auf dem Programm. Hacks sind sehr praxisbezogene Arbeitssequenzen wo die Studierenden Experimente durchführen sowie Prototypen entwickeln und bauen können. Dabei ist aber nicht nur die Medizintechnik zentral sondern auch der Interdisziplinäre Austausch sowie eine Skill-Share-Session wo die Studierenden ganz nach dem do it yourself Gedanken einen eigenen Workshop leiten können.<br />
Alle Erkenntnisse und Erfahrungen werden laufend in einem eigenen Wiki-Eintrag festgehalten und dokumentiert.<br />
<br />
Die Blockwoche wird von den beiden Dozenten [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] und [https://www.hackteria.org/wiki/Gaudi/ Urs Gaudenz] duchgeführt. Unterstützt wurden die Beiden von '''Dr. Christian Gehringer, MSc. (ETH)''' und [http://chrisobrist.ch/about// Chris Obrist]<br />
<br />
Maschinentechnik: <gallery><br />
File:MarkDusseiller.jpg | Dr. Marc R. Dusseiller<br />
File:UrsGaudenz.jpg | Urs Gaudenz<br />
</gallery><br />
<br />
= Planung =<br />
<br />
Die Blockwoche wird wie in folgendem Wochenplan unterteilt:<br />
<br />
[[File:Wochenplan2020.jpg|700px|thumb|none|Wochenplan]]<br />
<br />
= Wochenrückblick =<br />
== Die Woche in Bilder==<br />
[[File:ProfisInAction.PNG|400px]]<br />
[[File:Komponente.PNG|300px]]<br />
[[File:Aufbau.PNG|400px]]<br />
[[File:Motor_mit_Adapter.jpg|300px]]<br />
[[File:Pumpe.PNG|350px]]<br />
[[File:pulsmessung.jpg|450px]]<br />
[[File:Zusammenbau2.jpg|300px]]<br />
[[File:Foto 07.02.20, 11 14 53.jpg|300px]]<br />
[[File:DanielZellweger.jpg|300px]]<br />
<br />
== Tag 1==<br />
'''Einführung'''<br />
<br />
Wir traffen uns zu beginn im FABLAB, wo sich die Dozenten vorstellten und uns über Ihren bisherigen Werdegang informierten. Das interessante an der beruflichen Laufbahn der beiden ist, dass beide ein Studium abgeschlossen haben und heute einer Tätigkeit nachgehen, welche eigentlich nicht mehr viel mit dem damaligen Studium zu tun hat. Das vermittelt unserer Meinung nach, den Studenten eine etwas andere Sichtweise als die technische Hochschule. Es zeigt z.B. dass man nach einem Studium nicht gezwungen ist auf diesem Fachgebiet zu arbeiten sondern dass der Arbeitsmarkt noch sehr viele andere Möglichkeiten zu bieten hat.<br />
<br />
Nachdem sie sich Vorgestellt haben, stellten sie uns auch noch den Assistent vor. Dieser ist ein ausgebildeter Arzt welcher sich momentan für seinen zweiten Doktortitel engagiert. Von Ihm und seinem grossen medizinischen Fachwissen können wir als Studenten die ganze Woche profitieren.<br />
<br />
Danach überliessen die Dozenten uns Studenten das Wort. Es war eine etwas andere Vorstellungsrunde wie man sie noch nicht kannte. Dazu stand uns ein ganzer Tisch mit kuriosen Gegenständen, welche etwas mit dem DIY Gedanke zu tun haben, zur verfügung. Sie vorderten uns alle auf einen Gegenstand auszuwählen. Danach mussten wir uns Vorstellen und noch ein paar Worte dazu verlieren welche Gemeinsamkeiten wir mit dem ausgesuchten Gegenstand teilen.<br />
<br />
'''DIY (Do It Yourself)'''<br />
<br />
Das DIY Prinzip basiert auf eigenem experimentieren und learning by doing<br />
<br />
{{#widget:Iframe<br />
|url= https://www.youtube.com/watch?v=3zH_J12G9sQ<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
<br />
'''How to use Wiki'''<br />
<br />
Durch die 45 minütige Einführung in die Handhabung das Wiki durch Dr. Marc R. Dusseiller waren wir bereit unsere Erkenntnisse und Projekte, welche wir in dieser Woche erfahren und durchführen werden, in einer Zugänglichen Form, niederzuschreiben.<br />
<br />
== Tag 2 ==<br />
Am zweiten Tag begannen wir die Vorbereitung Skill-Share-Session. Diesbezüglich sollte jeder Teilnehmer einen Skill, welcher er erlernen möchte und einen Skill, den man beibringen könnte notieren. Diese wurden dann auf einer Tafel in Cluster aufgeteilt. Zwölf davon wurden als Skill-Share Workshops ausgewählt und die Teilnehmer konnten sich nach Belieben einschreiben.<br />
<br />
[[File:SkillSession2020.jpg|500px|thumb|none|Skill-share-session]]<br />
<br />
Während des zweiten Teils arbeiteten wir an unserem Experiment weiter, welches wir am Vortag begonnen haben.<br />
Dazu mussten wir die elektronischen Bauteile mit unserem Laptop verbinden und einen vorgefertigten Sketch laufen lassen.<br />
<br />
Nachdem wir den ersten Versuch erfolgreich durchführen konnten, versuchten wir mit dem Arduino einen Stepmotor anzusteuern. Dabei stiessen wir jedoch auf einige Schwierigkeiten. Da wir diese bis zur Einführung des Lasercutters und des 3D-Druckers fertig haben sollten. Siehe [[#Hack 0]]<br />
<br />
Unteranderem wurde unsere Skill-Share-Session über Arduino vorbereitet.<br />
<br />
Am Abend kam [http://chrisobrist.ch/about// Chris Obrist] zu Besuch und unterhielt uns mit einer wundervollen musikalischen Darbietung.<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/Hj1Ogr8137o<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
== Tag 3 ==<br />
Von 9:00 Uhr bis nach dem Mittag um 14:00 Uhr waren wir alle mit der [[#Skill-Share-Session]] beschäftigt.<br />
<br />
Danach hatten wir Zeit um den nächsten Hack vorzubereiten und zu planen.<br />
<br />
== Tag 4 ==<br />
Den Vormittag verbrachten wir weiter mit dem Hack 1, welchen wir dann vor der Mittagspause den Dozenten und allen Mitstudierenden präsentieren durften. Leider litten wir während des ganzen Hack 1 sehr unter Zeitdruck, was auf eine turbulente Projektphase zurückzuführen ist. Mehr dazu erfährst du im [[#Hack 1]].<br />
<br />
Nach einer kurzen Inspirationphase entschieden wir uns dafür eine kleine Spritzenpumpe zu basteln. [[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 5 ==<br />
Am Tag 5 ging es darum die Einzelteile physikalisch sowie über ein Funktionierendes Arduinoprogamm zum laufen zu bringen.<br />
[[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 6 ==<br />
Zum Abschluss durften wir alle Hacks der verschiedenen Teams begutachten. Interessant waren die spontanen Vorgehensweisen und auch die daraus entstandenen Produkte. Viele Teams suchten zuerst das Material und erst danach die Ideen. So entstanden die unterschiedlichsten Prototypen.<br />
Zudem Reflektierten wird die Blockwoche. Im Allgemeinen gefielen die Freiheit und auch der unkomplizierte Teamgeist untereinander. Besten Dank auch an die Organisatoren der Blockwoche.<br />
<br />
= Experimente =<br />
Bei den Experimenten sollte es darum gehen aus unterschiedlichsten Einzelteilen ein Produkt zu erschaffen. Dieser Prozess brachte uns dazu über die Grenzen unseres altäglichem Denken zu springen und in der Verbindung der einzelnen Bereiche solcher Produkte besser zu verstehen.<br />
<br />
== Hack 0 ==<br />
<br />
<br />
===Versuchsaufbau 1===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 1===<br />
Nach den Inputs der Dozenten verbrachten wir hauptsächlich die Zeit damit den Muscle Spiker Shield nach der Anleitung mit den dazugehörigen Teilen zusammenzulöten.[https://backyardbrains.com/products/files/MuscleSpikerShield.v.2.11.BuildingInstructions.pdf]V2.11<br />
Nebenbei machten wir unsere ersten Schritte in Arduino.<br />
Als wir unsere mechatronischen Komponenten zusammengestellt und ein Grundverständnis von Arduino angeeignet haben, verbanden wir dies in einem Experiment. <br />
Das Experiment welches wir durchführten nennt man Control Machines with your Brain und ist auf der Seite von [https://backyardbrains.com/experiments/muscleSpikerShield/ Backyard Brains] nachzusehen.<br />
<br />
Für den Versuch wurden Elektroden an den Testpersonen angeschlossen und über den Arduino ausgelesen.<br />
Der Versuch wurde mit zwei Testpersonen durchgeführt. Dabei fiel uns nebst der Kontrolle der LED's auch auf, dass der Puls gemessen wurde. Dies unabhängig von der Position der Elektroden. Vermutlich reagieren die Elektroden zu sensitiv für diese Anwendung.<br />
<br />
<br />
[[File:UeberblickVersuchTeamD.jpg|400px|thumb|none|Versuchsaufbau]]<br />
[[File:Versuchsaufbau1TeamD.jpg|400px|thumb|none|Elektrodenbefestigung]]<br />
[[File:MessungDanielGlur.jpg|400px|thumb|none|Messung von Daniels Puls]]<br />
<br />
===Versuchsaufbau 2===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 2===<br />
<br />
Als zweites Experiment versuchten wir durch das anspannen der Muskeln einen Servomotor anzusteuern. Wie es auch auf der Homepage von [https://backyardbrains.com/experiments/MuscleSpikerShield_GripperHand/ Backyard Brains] anzutreffen ist. Dieser Versuch konnte aber leider aus Zeitgründen nicht zu Ende geführt werden. Wir konnten lediglich das Arduinoprogramm laden und etwas anpassen.<br />
<br />
===Reflexion===<br />
<br />
Der Hack 0 war in der Hinsicht sehr interessant, da wir alle unsere ersten Erfahrungen mit einem Arduino machen konnten. Einige von unserem Team hatten bisher auch noch nie auf einer Printplatte irgendwelche Widerstände oder Schalter etc. gelötet. Ebenso war es erstaunlich, dass man mit so wenig so viel verschiedene Sachen machen kann. Keiner von uns hat gedacht dass wir bereits am ersten Tag irgend etwas mit unseren Muskeln kontrollieren könnten. Insgesamt kam der Hack 0 gut bei uns an und wir alle konnten einiges davon profitieren und hoffentlich auch den weiteren Hacks weiterverwenden.<br />
<br />
== Hack 1: Baseball-Cap mit Ventilator ==<br />
<br />
Der Hack 1 beschreibt die Konzept- und Testphase des ersten Prototyps.<br />
<br />
Zu Beginn waren wir uns sehr unschlüssig was wir wirklich bauen wollen. Also entschieden wir uns für ein weiteres Experiment mit einem Bausatz von Backyard Brains. Wir versuchten durch die Funktion des Heart and Brain Spiker Shield einen Ventilator anzusteuern. Der Gedanke, welcher uns auf diese Idee führte, kennt wohl jeder Student. Während einer Prüfung kommt so mancher ins Grübeln und in harten Fällen kommt es auch vor dass einem eine Schweissperle von der Stirn läuft. Um in solchen Fällen für die nötige Kühlung zu sorgen, sollen Sensoren die Hirnströme gemessen und als Signal wiedergeben werden um damit einen Ventilator anzuschalten.<br />
<br />
Zu unserem eigenen Erstaunen erhielten wir sogar ein Signal aus unserer Messung. Es stellte sich aber sehr bald heraus, dass das wohl nicht die Hirnströme waren sondern eher Bewegungen des Kopfs und der Kabel. Denn die Sensoren sind recht empfindlich gegen solche Einflüsse. Zudem kam noch, dass die Sensoren über den Haaren angebracht wurden, was das Signal der Hirnströme noch zusätzlich verschlechterte. Nach einigen Versuchen sahen wir ein, dass das wohl eine zu grosse Herausforderung war und wir uns besser an einen einfacheren Versuch versuchen sollten.<br />
<br />
[[File:heart_and_brain.jpg|300px|thumb|none|Signal aus Messung der "Hirnströme"]]<br />
[[File:EEGDanielGlur.jpg|500px|thumb|none|Daniel beim messen der "Hirnströme"]]<br />
<br />
Also beschlossen wir uns anstelle der Hirnströme den Puls zu messen. Denn während einer Prüfung kann es durchaus auch vorkommen, dass der Puls etwas ansteigt. Die Messungen sollten dann ausgelesen werden und wenn der Puls eine gewisse Frequenz übersteigt, schaltet ein Ventilator ein um den Studenten wieder etwas zu beruhigen.<br />
<br />
Für diesen Versuch platzierten wir Sensoren am Unterarm und an der Handoberfläche. Idealerweise sollten laut Assistent Christian die Sensoren aber so weit wie möglich voneinander entfernt, an einer anderen Körperstelle angebracht werden um eine gewisse Referenz zu haben und um sicherzustellen, dass man wirklich den Puls misst. Unsere Kabel waren aber leider etwas zu kurz. Wir erhielten trotzdem ein relativ gutes Signal von welchem man davon ausgehen konnte, dass es sich um den Puls handelte. Jetzt nur noch das Signal auswerten, einen Frequenzbegrenzer programmieren und mithilfe von einem Arduino UNO den Ventilator ansteuern... Dachten wir... Dies war allerdings etwas Schwieriger als erwartet und überstieg unsere Kompetenzen. Das führte uns dazu auch diesen Versuch an dieser Stelle abzubrechen und nochmal zu überdenken.<br />
<br />
<br />
[[File:puls.png|400px|thumb|none|Pulssignal]]<br />
[[File:pulsmessung.jpg|400px|thumb|none|Pulssmessung]]<br />
<br />
<br />
Nun rannte uns schon langsam die Zeit davon. Doch dann kam uns die Idee, welche wir schon zu Beginn benötigt hätten. Und zwar wollten wir einen Ventilator auf einem Baseball-Cap anbringen und diesen ansteuern wenn ein gewisses Temperaturniveau unter dem Cap überschritten wird wird. Dazu wird ein 12V Ventilator via Relais von dem Arduino angesteuert. Weil der Arduino nur eine Spannung von 5V liefert, musste ein 12V Netzgerät den Ventilator mit Strom versorgen. Damit man den Ventilator so schalten konnte, damit er den Strom über das 12V Netzgerät bezieht, mussten wir noch ein Relais einbauen. Den Code für den Arduino bezogen wir aus verschiedenen ähnlichen Projekten aus dem Internet und passten ihn spezifisch für unsere Anwendung an. Für das auslesen der Temperatur mussten wir zuerst zwei Libreries herunterladen (DallasTemperature und OneWire).<br />
<br />
[[File:Komponente.PNG|400px|thumb|none|Verbaute Komponenten]]<br />
<br />
Nun mussten wir noch den Ventilator am Baseball-Cap anbringen. Dafür wurde eine Halterung im CAD konstruiert und mit einem 3D-Drucker ausgedruckt. Die Teile wurden danach zusammengesteckt und mit dem Baseball-Cap verschraubt. Natürlich wurde zuvor ein Loch in das Cap geschnitten, damit der Ventilator auch seinen Zweck erfüllen kann und dem Studenten einen kühlen Kopf verschafft.<br />
<br />
[[File:Aufbau.PNG|350px|thumb|none|3D-Modell im CAD]]<br />
<br />
[[File:Zusammenbau1.jpg|350px]]<br />
[[File:Zusammenbau2.jpg|350px]]<br />
<br />
Nun wurde unser Prototyp getestet. Der Sensor erfüllte seinen Dienst und wir konnten erfolgreich die Temperaturen messen. Jedoch war das Relais während dem Testen ständig eingeschalten und der Ventilator lief die ganze Zeit auch wenn die Temperatur den Minimalwert unterschritten hatte. Es hat sich also irgendwo in unserem Programm einen Fehler eingeschlichen. Den galt es nun zu finden und zu beheben. Dazu bauten wir einen Druckknopf ein um zu überprüfen ob das Relais defekt war und um die Fehlerquellen etwas einzugrenzen.<br />
<br />
[[File:Temperatur.jpg|350px]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/TQnGa5WiGS4<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
Der Druckknopf funktionierte, das Relais schaltete perfekt ein und aus und der Ventilator wurde an- und abgestellt. Somit wissen wir nun wo der Fehler zu suchen ist und können versuchen das Programm an diesen Stellen zu bereinigen. Nur ist jetzt schon Donnerstag Nachmittag und der Hack 2 hat schon begonnen. Wir alle wurden aufgefordert unseren bisherigen Prototypen aufzugeben und etwas neues, anderes zu versuchen und zu testen. Also legen wir schweren Herzens unser erster Prototyp beiseite und widmen unsere Kreativität dem nächsten Hack.<br />
<br />
=== Reflexion ===<br />
Der Hack 1 hat uns gezeigt, dass es gar nicht so einfach ist beim ersten Versuch ein brauchbares Resultat zu erzielen. Jedoch konnten wir so aus zwei vorhergehenden, fehlgeschlagenen Ansätzen eine Idee weiterentwickeln. Somit konnten wir mit unseren Kompetenzen und den Erfahrungen aus dem Hack 0 ein zufriedenstellendes Resultat erzielen. Durch die zwei Versuche zuvor ging leider recht viel Zeit "verloren", welche wir sehr benötigt hätten um unser erster Prototyp fehlerfrei hinzukriegen. Es war uns auch eine Lehre, dass man nicht zu lange an einer Sache verharren sollte wenn einem nur wenig Zeit zur Verfügung steht. Manchmal ist es besser man wirft alles nochmal über den Haufen und beginnt von vorne. Trotz allen Strapazen während des Hack 1 sind wir mit unserem ersten Prototyp sehr zufrieden und konnten auch bei diesem Versuch wieder viel profitieren und mitnehmen. Nun blicken wir gespannt nach vorne auf den nächsten Hack.<br />
<br />
<br />
===Code===<br />
<br />
Wir konnten zwar die Temperatur herauslesen und das Relais über einen Butten steuern, jedoch die Steuerung anhand der Temperatur geling uns nicht.<br />
<br />
<pre><br />
/********************************************************************/<br />
// First we include the libraries<br />
#include <OneWire.h> <br />
#include <DallasTemperature.h><br />
/********************************************************************/<br />
// Data wire is plugged into pin 2 on the Arduino <br />
#define ONE_WIRE_BUS 2 <br />
<br />
float tempReading;<br />
/********************************************************************/<br />
// Setup a oneWire instance to communicate with any OneWire devices <br />
// (not just Maxim/Dallas temperature ICs) <br />
OneWire oneWire(ONE_WIRE_BUS); <br />
/********************************************************************/<br />
// Pass our oneWire reference to Dallas Temperature. <br />
DallasTemperature sensors(&oneWire);<br />
/********************************************************************/ <br />
int relayPin = 4; // Relay Singnal lead to Digital Pin [D2-D12]<br />
<br />
float maxTemperature = 30.00; // The Max Temperature allowed<br />
float minTemperature = 25.00; // The Min Temperature allowed<br />
<br />
// constants won't change. They're used here to set pin numbers:<br />
const int buttonPin = 8; // the number of the pushbutton pin<br />
const int ledPin = 4; // the number of the LED pin<br />
<br />
// variables will change:<br />
int buttonState = 0; // variable for reading the pushbutton status<br />
<br />
void setup(void) {<br />
// initialize the LED pin as an output:<br />
pinMode(ledPin, OUTPUT);<br />
// initialize the pushbutton pin as an input:<br />
pinMode(buttonPin, INPUT);<br />
<br />
Serial.begin(9600); <br />
Serial.println("Dallas Temperature IC Control Library Demo"); <br />
// Start up the library <br />
sensors.begin(); <br />
}<br />
<br />
void loop(void) <br />
{ <br />
// call sensors.requestTemperatures() to issue a global temperature <br />
// request to all devices on the bus <br />
/********************************************************************/<br />
Serial.print(" Requesting temperatures..."); <br />
sensors.requestTemperatures(); // Send the command to get temperature readings <br />
Serial.println("DONE"); <br />
/********************************************************************/<br />
Serial.print("Temperature is: "); <br />
Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"? <br />
// You can have more than one DS18B20 on the same bus. <br />
// 0 refers to the first IC on the wire <br />
delay(1000); // Check Temperature every second<br />
<br />
float temperature = getTemperature();<br />
if(temperature >= maxTemperature){<br />
powerOnRelay();<br />
} else if (temperature <= minTemperature) {<br />
powerOffRelay();<br />
}<br />
delay(1000); // Check tempertature every second<br />
<br />
} <br />
void powerOnRelay() {<br />
digitalWrite(relayPin, HIGH);<br />
Serial.println("Relay On");<br />
}<br />
<br />
void powerOffRelay() {<br />
digitalWrite(relayPin, LOW);<br />
Serial.println("Relay Off");<br />
}<br />
float getTemperature(){<br />
tempReading = digitalRead(ONE_WIRE_BUS);<br />
<br />
// read the state of the pushbutton value:<br />
buttonState = digitalRead(buttonPin);<br />
<br />
// check if the pushbutton is pressed. If it is, the buttonState is HIGH:<br />
if (buttonState == HIGH) {<br />
// turn LED on:<br />
digitalWrite(ledPin, HIGH);<br />
} else {<br />
// turn LED off:<br />
digitalWrite(ledPin, LOW);<br />
}<br />
}<br />
</pre><br />
<br />
== Hack 2: Spritzenpumpe ==<br />
<br />
Nachdem der Hack 1 abgeschlossen war, machten wir uns aufs Neue darüber Gedanken was wir für einen Prototyp für den Hack 2 bauen wollen. Urs hat nach dem Abschluss von Hack 1 gesagt, wir sollten uns ein komplett neues Produkt überlegen, welches möglicherweise auch etwas mit der Medizintechnik zu tun hat. Nach einem Brainstorming kamen wir noch nicht so richtig auf einen grünen Zweig. So kamen wir auf die Idee uns einen Kaffee zu holen und einfach mal durch das FABLAB zu laufen um alles Mögliche anzuschauen, in die Hand zu nehmen und uns von all diesen Gegenständen inspirieren zu lassen. So kamen uns diverse Gegenstände in die Finger. darunter waren Servomotoren sowie einige DC-Motoren, eine Spritze, eine Pumpe, ein Micro-Switch Schalter, ein Potentiometer und vieles mehr. Diese Gegenstände haben wir dann auf unserem Gruppentisch ausgebreitet und uns Gedanken darüber gemacht was wir damit wohl anstellen konnten zum Thema Medizintechnik. So entstanden relativ schnell einige Ideen. Wir haben uns schlussendlich dafür entschieden ein Dosiergerät für eine medizinische Spritze zu machen. Dieses sollte so funktionieren, dass wir eine Spritze in eine Vorrichtung legen und über einen DC-Motor zum Einfahren bzw. Ausfahren bringen. Dazu muss die Drehbewegung des Motors in eine Lineare Bewegung umgeleitet werden. Zudem muss ggf. auch die Drehzahl des Motors durch ein Potentiometer reguliert werden können um einen zu schnellen Aus- oder Einfahrvorgang zu verhindern. Soviel zu zu den technischen Überlegungen. <br />
<br />
Sofort nach dem Entscheid suchten wir nach einem geeigneten Motor. Dieser sollte dabei eine eher tiefe Drehzahl haben damit die Spritze nur langsam ein- und ausfährt. Zudem suchten wir im Internet nach einem geeigneten Mechanismus der die Drehbewegung in eine lineare Bewegung umwandelt. Denn wir hatten leider zu wenig zeit um alles selber zu entwerfen und zu konstruieren. So wurden wir auf auf der Hompage von [https://www.thingiverse.com/thing:2797132/ Thingiverse] schliesslich fündig. Also konnte wir die Folgenden Komponenten herunterladen und mit dem 3D-Drucker ausdrucken.<br />
<br />
Komponenten: <gallery><br />
File:Halteplatte.PNG | Halteplatte<br />
File:Zahnrad.PNG | Zahnradpaar<br />
File:Zahnradpaar.PNG | Zahnstange<br />
File:Zahnstange.PNG | Zahnrad<br />
</gallery><br />
<br />
Da wir einen anderen Motor verwendeten als für diesen Mechanismus vorgesehen wäre, mussten wir noch eine passende Adapterplatte konstruieren, damit der Motor auch auf die Vorrichtung passt.<br />
<br />
<gallery><br />
File:Adapterplatte.PNG | Adapterplatte<br />
File:Motor.PNG | Motor<br />
File:Motor_mit_Adapter.jpg | Motor mit Adapter<br />
</gallery><br />
<br />
Der Motor benötigt, wie auch der Ventilator von Hack 1, eine Spannung von 12V für den Betrieb. Also mussten wir erneut das 12V Netzgerät verwenden. Damit unser zweiter Prototyp auch die gewünschte Fördermenge fördern kann, muss die Zeitdauer, in welcher gefördert werden soll, definiert werden. Das dazugehörige Programm wird mit einem Arduino UNO implementiert. Der Zugehörige Code haben wir durch Recherche im Internet und durch persönliches erweitern und anpassen erstellt. Die Drehzahl des Motors darf nicht zu hoch sein damit man die Fördermenge auch sinnvoll einstellen kann. Für diese Anwendung wird ein Potentiometer zwischen Relais und Motor gehängt. So kann die Motorspannung reguliert und die Drehzahl anforderungsgemäss eingestellt werden. Nachfolgend wird der Prozessablauf kurz beschrieben.<br />
<br />
Mit einem Knopfdruck wird wird ein Relais geschalten und der Motor wird angesteuert. Die Drehzahl des Motors wird über ein Getriebe reduziert. Die Zahnräder greifen auf eine Zahnstange und wandeln die Drehbewegung in eine lineare Bewegung um. An der Zahnstange wird der Stössel der Spritze befestigt. Der Rest der Spritze wird mit einem Kabelbinder fest mit der Bodenplatte verbunden damit sich dieser Teil nicht bewegen kann. Die programmierte Zeitdauer bestimmt welche Menge an Flüssigkeit gefördert werden soll.<br />
<br />
[[File:Pumpe.PNG|500px|thumb|none|Aufbau der Spritzenpumpe]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/PLG_S3GtVI8<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
=== Reflexion ===<br />
<br />
Anders als beim Hack 1 kamen waren wir uns bei diesem Hack sehr schnell einig was genau wir bauen möchten. Die ganze Ideenfindung erledigte sich sehr schnell und wir konnten nach bereits wenigen Stunden mit dem programmieren des Arduinos beginnen. Wie wir bereits im Hack 1 erfahren durften, ist das bei dem gedrängten Zeitplan dieser Woche ein grosser Vorteil. Rückblickend können wir urteilen, dass der Hack 2 aus unserer Sicht ein erfreuendes Erfolgserlebnis war. Unser zweiter Prototyp funktioniert genau so wie wir uns das von Beginn an vorgestellt haben. Per Knopfdruck fördert unser Prototyp eine gewisse Menge an Flüssigkeit.<br />
<br />
=== Code ===<br />
<br />
<pre><br />
<br />
bool geschaltet = false;<br />
int RelaisPin = 10; <br />
int tasterPin = 2;<br />
int empfindlichkeit = 200;<br />
<br />
void setup() {<br />
<br />
pinMode( tasterPin, INPUT_PULLUP);<br />
pinMode( RelaisPin, OUTPUT);<br />
<br />
}<br />
<br />
void loop() {<br />
<br />
if (digitalRead(tasterPin) == LOW) <br />
{<br />
if (geschaltet == false) {<br />
geschaltet = true;<br />
}<br />
else {<br />
geschaltet = false;<br />
}<br />
}<br />
<br />
if (geschaltet == true) {<br />
digitalWrite(RelaisPin, HIGH);<br />
delay(1000);<br />
geschaltet = false; <br />
}<br />
<br />
if (geschaltet == false) {<br />
digitalWrite(RelaisPin, LOW);<br />
}<br />
<br />
delay(empfindlichkeit);<br />
}<br />
</pre><br />
<br />
== Hack 3: Zinnguss ==<br />
<br />
Für diesen Hack wurde Zinn gegossen. Dank dem tiefen Schmelzpunkt lässt sich der Gusswerkstoff in einer Stahlkanne mit einem Brenner einer Autogenschweissanlage leicht erhitzen.<br />
<br />
[[File:Kanne.jpg|400px|thumb|none|Stahlkanne mit flüssigem Zinn]]<br />
<br />
=== Versuch 1 ===<br />
<br />
Für die Gussform wurde MDF verwendet. Da die Hitzebeständigkeit von MDF unklar war, sollte ein kleiner Versuch Aufschluss geben. Eine einfache Zylinderform mit einem Überlaufbecken bestehend aus 3 Platten gemässe Bild [[:File:Versuch_1_Gussform.jpg]]Gussform, Versuch 1. Da nur eine kleine Menge an Zinn erhitzt wurde, war die Temperatur vermutlich deutlich über dem Schmelzpunkt. Es entwickelte sich Dampf, was zu einem Gussfehler im Überlauf führte. Ausserdem wurde das MDF stark verkohlt, siehe [[:File:Versuch_1_Resultat.jpg]]Resultat. Dennoch ist das Resultat zufriedenstellend, sodass für einen weiteren Versuch wieder MDF verwendet werden kann.<br />
<br />
Versuch 1<br />
<gallery><br />
[[File:Versuch_1_Gussform.jpg|400px]] | Gussform<br />
[[File:Versuch_1_Guss.jpg|400px]] | Frisch gegossen<br />
[[File:Versuch_1_Resultat.jpg|400px]] | Resultat<br />
</gallery><br />
<br />
=== Versuch 2 ===<br />
<br />
Nun konnte der eigentliche Versuch gestartet werden. Das Zinn wurde wieder in der Stahlkanne erhitzt, jedoch nicht so stark wie in Versuch 1. Jedoch wurden diesmal alle Formen mit dem Lasercutter ausgeschnitten. Auch bei dieser Gussform diente die letzte MSF Platte als Überlauf. Das flüssige Zinn konnte bei der grösseren Form kontrollierter und langsamer gegossen werden, so dass die Form gleichmässig ausgefüllt werden konnte, siehe Bild [[:File:Versuch_2_Guss.jpg]]Frisch gegossen.<br />
<br />
Versuch 2 giessen<br />
<gallery><br />
[[File:Versuch_2_Gussform.jpg|400px]] | Gussform<br />
[[File:Versuch_2_Guss.jpg|400px]] | Frisch gegossen<br />
</gallery><br />
<br />
Durch den Schwund lässt sich das Gussstück relativ gut aus der Form drücken, obwohl keine Formschrägen vorhanden waren. Vorher empfiehlt es sich, den Überlauf abzufräsen (Bild [[:File:Versuch_2_Fraesen.jpg]]Überfäsen, [[:File:Versuch_2_Resultat.jpg]]Resultat), da sich Zinn nur bedingt im Schraubstock einspannen lässt. Zinn vierbiegt sich sehr leicht.<br />
<br />
Versuch 2 bearbeitung<br />
<gallery><br />
[[File:Versuch_2_Fraesen.jpg|400px]] | Überfäsen<br />
[[File:Versuch_2_Resultat.jpg|400px]] | Resultat<br />
</gallery><br />
<br />
= Skill-Share-Session =<br />
<br />
== Grundlagen der Arduinoprogrammierung ==<br />
<br />
Dieser Kurs wurde von unserer Gruppe angeboten und soll den Teilnehmern die Grundlage der Programierung eines Arduino UNO beibringen. Folgend werden die grundlegenden Befehle und deren Syntax vorgestellt. Der Aufbau folgt dem YouTube Tutorial von Max. Hier gelangst du zu dem Link: [https://www.youtube.com/watch?v=eaFvQG8wrGw&list=PLAB63281B90FB376E&index=3]<br />
<br />
=== Skript ===<br />
Der Code wird in einem Skript geschrieben. Dieses ist in zwei Bereiche aufgeteilt<br />
* Void setup() Dieses Skript wird einmalig ausgeführt und enthält zB. Input und output<br />
* Void loop() Dieser Teil des Skripts wird als Dauerschleife wiederholt<br />
<br />
==== Befehlseingabe ====<br />
<br />
Die Befehle werden nach folgender Syntax eingegeben:<br />
<br />
* Funktion(Parameter1, Parameter2);<br />
<br />
Dabei muss das «;» gesetzte werden, ausserdem spielen Gross- und Kleinbuchstaben eine Rolle.<br />
<br />
=== Variablen ===<br />
Übersichtshalber sollen sprechende Namen für die Bezeichnung von z.B. Outputs verwendet werden. Dabei können verschiedene Datentypen ausgewählt werden.<br />
<br />
==== Datentyp ====<br />
* int Ganze Zahlen von -32768 … 32767 z.B. 1, 48, -654<br />
* boolean Entweder true oder false<br />
* byte 8 Bit an Informationen z.B. 00010101 (=21)<br />
* char enthält 1 Byte Informationen, das ein Zeichen darstellt z.B. 65 = A<br />
* long grosse Zahlen von ca. -2.1 Milliarden bis 2.1 Milliarden z.B. 15636451<br />
* float Komazahlen z.B. 5.498<br />
* string Zeichenketten z.B. «Do it yourself»<br />
<br />
==== Deklaration Syntax ====<br />
<br />
* Datentyp Name = Wert;<br />
<br />
oder<br />
<br />
* Datentyp Name;<br />
* Name = Wert;<br />
<br />
====Ort der Deklaration====<br />
<br />
Die Variable muss immer im Teil des Skriptes deklariert sein, wo sie auch gebraucht wird. Wird die Variable im setup wie auch im loop benötigt, so kann man die Variable als sogenannte globale Variable oberhalb des Setups deklarieren.<br />
<br />
===If-Schleife===<br />
<br />
Bei der If-Schleife wird der Wert einer Variablen mit einem Vergleichswert verglichen. Falls der Vergleich positiv ist, wird der Code ausgeführt, ansonsten übersprungen. Dazu sind Vergleichsoperatoren notwendig.<br />
<br />
====Syntax====<br />
<br />
if(Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
====Vergleichsoperatoren====<br />
<br />
* == gleich<br />
* != ungleich<br />
* < kleiner<br />
* < grösser<br />
* <= kleiner gleich<br />
* >= grösser gleich<br />
<br />
===While-Schleife===<br />
<br />
Mit der While-Schleife wird die Bedingung fortlaufend geprüft. Stimmt diese, wird der Code ausgeführt, ansonsten wird der Code übersprungen. Es können die selben Vergleichsoperatoren wie bei der If-Schleife verwendet werden.<br />
<br />
====Syntax====<br />
<br />
while (Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
==Bildgebende Verfahren==<br />
<br />
Der Tag begann mit einer Einführung in die Bildgebenden Verfahren durch David Stadelmann. Hierbei erklärte er uns, verschiedene Methoden, um Bilder aus dem Körperinneren zu machen und welche Methode für die verschiedenen Gewebetypen gebraucht werden. Zudem Zeigte und erklärte er uns anhand von Beispielen was die Einzelnen Schattierungen aussagen könnten.<br />
<br />
[[DIY-MedTech Bildgebende Verfahren-Unterschiedliche Bildeindrücke - Team Frosch]]<br />
<br />
==Synths & Sound ==<br />
<br />
Danach ging es weiter mit dem Kurs Synths & Sounds. Diese Session wurde von [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] durchgeführt. Hierbei zeigte er uns, wie man mit verschieden erzeugten Schwingungen eine grosse Variation von Tönen generiert kann. Zudem auch wie man elektronisch gewisse Instrumente Simulieren könnte und durch die Aneinanderreihung verschiedenster Tonvariationen eine Melodie enstehen kann. Dies mit unterschiedlich Variationen von selbstgebauten Synthesizers.<br />
<br />
<gallery><br />
File:Sinthesizer1.jpg | Synthesizer 1<br />
File:Synthesizer2.jpg | Synthesizer 2<br />
</gallery><br />
<br />
== Schweissen ==<br />
<br />
Bei dem Skill-Share Workshop von [https://www.hackteria.org/wiki/Team_G2020/ Team G2020] konnten wir verschiedene Schweissverfahren kennenlernen und auch gleich anwenden.<br />
<br />
Es wurde uns das [https://de.wikipedia.org/wiki/Lichtbogenhandschwei%C3%9Fen/ Elektrodenschweissen], das [https://de.wikipedia.org/wiki/Schutzgasschwei%C3%9Fen/ MIG-Schweissen] und das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] nähergebracht.<br />
<br />
Dieser Workshop war für uns alle sehr interessant, da sich bisher noch keiner von uns so wirklich mit dem Schweissen und den verschiedenen Verfahren auskannte. An diesem Tag konnten wir nach einer kurzen Theorie gleich sofort selber handanlegen und die verschiedenen Schweissverfahren ausprobieren.<br />
<br />
Dabei mussten wir feststellen, dass es gar nicht so einfach ist wie es immer aussieht. Besonders das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] braucht sehr viel Übung und Geschick um wirklich schöne Schweissergebnisse zu erzielen.<br />
<br />
== Autonomes Nervensystem und das Hören in der Medizin ==<br />
<br />
Der Assistent Dr. Christian Gehringer, MSc. (ETH) hielt uns einen sehr interessanten Vortrag. Dabei ging es darum, dass wir die Anatomie kennenlernen und erkunden am Beispiel des Hörens z.B mit einem Stethoskop.<br />
<br />
[https://www.hackteria.org/wiki/Autonomes_Nervensystem_und_das_H%C3%B6ren_in_der_Medizin/ Autonomes Nervensystem und das Hören in der Medizin]</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=MedTechDIY20_Die_Profis&diff=41660MedTechDIY20 Die Profis2020-02-09T11:51:58Z<p>Tnroth: /* Hack 3: Zinnguss */</p>
<hr />
<div>Hier gehts zurück auf: [[Medizintechnik DIY]]<br />
<br />
[[File:DieProfis.png|700px|right|none|Wochenplan]]<br />
<br />
= Team =<br />
<br />
'''Die Profis''' besteht aus den drei Studierenden '''Daniel Glur''', '''Lukas Roth''' und '''Daniel Zellweger''' der Hochschule Luzern. Im Rahmen der Blockwoche "DIY Medizintechnik" formierte sich das Team aus verschiedenen Studiengängen um auch interdisziplinär voneinander zu lernen und Wissen auszutauschen.<br />
<br />
'''Mitglieder:'''<br />
<br />
Maschinentechnik: <gallery><br />
File:DanielGlur.jpg | Daniel Glur<br />
File:LukasRoth.jpg | Lukas Roth<br />
</gallery><br />
<br />
Medizintechnik: <gallery><br />
File:DanielZellweger.jpg | Daniel Zellweger<br />
</gallery><br />
<br />
= Pflichtlektüre =<br />
<br />
'''How to control someone else's arm with your brain | Greg Gage'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/rSQNi5sAwuc<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
In Diesem Video wird gezeigt wie man über die Aufnahme eines Biologischen Signals, dieses an eine zweite Person weitergeleitet werden kann.<br />
Dies funktioniert jedoch nur aus verschiedenen Gründen bedingt. Nebst den allgemeinen Störeinflüsse aus der Messtechnik, kommen zusätzlich noch jene der Ansteuerung. Da das Signal nur von einzelnen Muskelfasern abgefangen wird, kann dieses nicht sämtliche Muskelfasern der zweiten Person Reizen. Dies hat zur folge, dass nur eine annähernd ähnliche Bewegung des Armes arfolgt.<br />
<br />
<br />
'''What is Open Source explained in LEGO'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/a8fHgx9mE5U<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Durch die Verwendung der Open Source Methode erhält man die Möglichkeit während des Projektes noch Erweiterungen oder Veränderungen anzustreben.<br />
<br />
'''"Why toys make good medical devices | Jose Gomez-Marquez'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/UHCT9SOBHs0<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Nebst dem Preis besitzen Spielzeuge diverse spezifische Funktionen. Da diese meist günstige Anschaffung auch einfach verändert werden kann, sind sie sehr geeignet dafür umgebaut zu werden. Somit sind Spielzeuge welche chemische oder sensorische Funktionen besitzen ein gefundenes fressen für den Hacker und eine Alternative für Regionen in welchen die finanzielle Situation teure Medizinprodukte nicht erlauben.<br />
<br />
= Einleitung =<br />
Die Blockwoche "DIY Medizintechnik" verbindet Anwendungen der Medizintechnik mit Do It Yourself (DIY) Ansätzen. Dadurch wird das tiefere Verständnis von Medizintechnischen Geräten durch einen direkten, interdisziplinären und möglichst selbstgesteuerten Zugang gefördert. Basierend auf verschiedenen elektrophysiologischen Messmodulen (EMG, EKG, EOG, EEG) entwickeln die Studierenden im Team Ideen für innovative Projekte. Erste Prototypen werden mit den Mitteln der Digitalen Fabrikation hergestellt und getestet. Tag für Tag stehen produktive "Hacks" auf dem Programm. Hacks sind sehr praxisbezogene Arbeitssequenzen wo die Studierenden Experimente durchführen sowie Prototypen entwickeln und bauen können. Dabei ist aber nicht nur die Medizintechnik zentral sondern auch der Interdisziplinäre Austausch sowie eine Skill-Share-Session wo die Studierenden ganz nach dem do it yourself Gedanken einen eigenen Workshop leiten können.<br />
Alle Erkenntnisse und Erfahrungen werden laufend in einem eigenen Wiki-Eintrag festgehalten und dokumentiert.<br />
<br />
Die Blockwoche wird von den beiden Dozenten [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] und [https://www.hackteria.org/wiki/Gaudi/ Urs Gaudenz] duchgeführt. Unterstützt wurden die Beiden von '''Dr. Christian Gehringer, MSc. (ETH)''' und [http://chrisobrist.ch/about// Chris Obrist]<br />
<br />
Maschinentechnik: <gallery><br />
File:MarkDusseiller.jpg | Dr. Marc R. Dusseiller<br />
File:UrsGaudenz.jpg | Urs Gaudenz<br />
</gallery><br />
<br />
= Planung =<br />
<br />
Die Blockwoche wird wie in folgendem Wochenplan unterteilt:<br />
<br />
[[File:Wochenplan2020.jpg|700px|thumb|none|Wochenplan]]<br />
<br />
= Wochenrückblick =<br />
== Die Woche in Bilder==<br />
[[File:ProfisInAction.PNG|400px]]<br />
[[File:Komponente.PNG|300px]]<br />
[[File:Aufbau.PNG|400px]]<br />
[[File:Motor_mit_Adapter.jpg|300px]]<br />
[[File:Pumpe.PNG|350px]]<br />
[[File:pulsmessung.jpg|450px]]<br />
[[File:Zusammenbau2.jpg|300px]]<br />
[[File:Foto 07.02.20, 11 14 53.jpg|300px]]<br />
[[File:DanielZellweger.jpg|300px]]<br />
<br />
== Tag 1==<br />
'''Einführung'''<br />
<br />
Wir traffen uns zu beginn im FABLAB, wo sich die Dozenten vorstellten und uns über Ihren bisherigen Werdegang informierten. Das interessante an der beruflichen Laufbahn der beiden ist, dass beide ein Studium abgeschlossen haben und heute einer Tätigkeit nachgehen, welche eigentlich nicht mehr viel mit dem damaligen Studium zu tun hat. Das vermittelt unserer Meinung nach, den Studenten eine etwas andere Sichtweise als die technische Hochschule. Es zeigt z.B. dass man nach einem Studium nicht gezwungen ist auf diesem Fachgebiet zu arbeiten sondern dass der Arbeitsmarkt noch sehr viele andere Möglichkeiten zu bieten hat.<br />
<br />
Nachdem sie sich Vorgestellt haben, stellten sie uns auch noch den Assistent vor. Dieser ist ein ausgebildeter Arzt welcher sich momentan für seinen zweiten Doktortitel engagiert. Von Ihm und seinem grossen medizinischen Fachwissen können wir als Studenten die ganze Woche profitieren.<br />
<br />
Danach überliessen die Dozenten uns Studenten das Wort. Es war eine etwas andere Vorstellungsrunde wie man sie noch nicht kannte. Dazu stand uns ein ganzer Tisch mit kuriosen Gegenständen, welche etwas mit dem DIY Gedanke zu tun haben, zur verfügung. Sie vorderten uns alle auf einen Gegenstand auszuwählen. Danach mussten wir uns Vorstellen und noch ein paar Worte dazu verlieren welche Gemeinsamkeiten wir mit dem ausgesuchten Gegenstand teilen.<br />
<br />
'''DIY (Do It Yourself)'''<br />
<br />
Das DIY Prinzip basiert auf eigenem experimentieren und learning by doing<br />
<br />
{{#widget:Iframe<br />
|url= https://www.youtube.com/watch?v=3zH_J12G9sQ<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
<br />
'''How to use Wiki'''<br />
<br />
Durch die 45 minütige Einführung in die Handhabung das Wiki durch Dr. Marc R. Dusseiller waren wir bereit unsere Erkenntnisse und Projekte, welche wir in dieser Woche erfahren und durchführen werden, in einer Zugänglichen Form, niederzuschreiben.<br />
<br />
== Tag 2 ==<br />
Am zweiten Tag begannen wir die Vorbereitung Skill-Share-Session. Diesbezüglich sollte jeder Teilnehmer einen Skill, welcher er erlernen möchte und einen Skill, den man beibringen könnte notieren. Diese wurden dann auf einer Tafel in Cluster aufgeteilt. Zwölf davon wurden als Skill-Share Workshops ausgewählt und die Teilnehmer konnten sich nach Belieben einschreiben.<br />
<br />
[[File:SkillSession2020.jpg|500px|thumb|none|Skill-share-session]]<br />
<br />
Während des zweiten Teils arbeiteten wir an unserem Experiment weiter, welches wir am Vortag begonnen haben.<br />
Dazu mussten wir die elektronischen Bauteile mit unserem Laptop verbinden und einen vorgefertigten Sketch laufen lassen.<br />
<br />
Nachdem wir den ersten Versuch erfolgreich durchführen konnten, versuchten wir mit dem Arduino einen Stepmotor anzusteuern. Dabei stiessen wir jedoch auf einige Schwierigkeiten. Da wir diese bis zur Einführung des Lasercutters und des 3D-Druckers fertig haben sollten. Siehe [[#Hack 0]]<br />
<br />
Unteranderem wurde unsere Skill-Share-Session über Arduino vorbereitet.<br />
<br />
Am Abend kam [http://chrisobrist.ch/about// Chris Obrist] zu Besuch und unterhielt uns mit einer wundervollen musikalischen Darbietung.<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/Hj1Ogr8137o<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
== Tag 3 ==<br />
Von 9:00 Uhr bis nach dem Mittag um 14:00 Uhr waren wir alle mit der [[#Skill-Share-Session]] beschäftigt.<br />
<br />
Danach hatten wir Zeit um den nächsten Hack vorzubereiten und zu planen.<br />
<br />
== Tag 4 ==<br />
Den Vormittag verbrachten wir weiter mit dem Hack 1, welchen wir dann vor der Mittagspause den Dozenten und allen Mitstudierenden präsentieren durften. Leider litten wir während des ganzen Hack 1 sehr unter Zeitdruck, was auf eine turbulente Projektphase zurückzuführen ist. Mehr dazu erfährst du im [[#Hack 1]].<br />
<br />
Nach einer kurzen Inspirationphase entschieden wir uns dafür eine kleine Spritzenpumpe zu basteln. [[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 5 ==<br />
Am Tag 5 ging es darum die Einzelteile physikalisch sowie über ein Funktionierendes Arduinoprogamm zum laufen zu bringen.<br />
[[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 6 ==<br />
Zum Abschluss durften wir alle Hacks der verschiedenen Teams begutachten. Interessant waren die spontanen Vorgehensweisen und auch die daraus entstandenen Produkte. Viele Teams suchten zuerst das Material und erst danach die Ideen. So entstanden die unterschiedlichsten Prototypen.<br />
Zudem Reflektierten wird die Blockwoche. Im Allgemeinen gefielen die Freiheit und auch der unkomplizierte Teamgeist untereinander. Besten Dank auch an die Organisatoren der Blockwoche.<br />
<br />
= Experimente =<br />
Bei den Experimenten sollte es darum gehen aus unterschiedlichsten Einzelteilen ein Produkt zu erschaffen. Dieser Prozess brachte uns dazu über die Grenzen unseres altäglichem Denken zu springen und in der Verbindung der einzelnen Bereiche solcher Produkte besser zu verstehen.<br />
<br />
== Hack 0 ==<br />
<br />
<br />
===Versuchsaufbau 1===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 1===<br />
Nach den Inputs der Dozenten verbrachten wir hauptsächlich die Zeit damit den Muscle Spiker Shield nach der Anleitung mit den dazugehörigen Teilen zusammenzulöten.[https://backyardbrains.com/products/files/MuscleSpikerShield.v.2.11.BuildingInstructions.pdf]V2.11<br />
Nebenbei machten wir unsere ersten Schritte in Arduino.<br />
Als wir unsere mechatronischen Komponenten zusammengestellt und ein Grundverständnis von Arduino angeeignet haben, verbanden wir dies in einem Experiment. <br />
Das Experiment welches wir durchführten nennt man Control Machines with your Brain und ist auf der Seite von [https://backyardbrains.com/experiments/muscleSpikerShield/ Backyard Brains] nachzusehen.<br />
<br />
Für den Versuch wurden Elektroden an den Testpersonen angeschlossen und über den Arduino ausgelesen.<br />
Der Versuch wurde mit zwei Testpersonen durchgeführt. Dabei fiel uns nebst der Kontrolle der LED's auch auf, dass der Puls gemessen wurde. Dies unabhängig von der Position der Elektroden. Vermutlich reagieren die Elektroden zu sensitiv für diese Anwendung.<br />
<br />
<br />
[[File:UeberblickVersuchTeamD.jpg|400px|thumb|none|Versuchsaufbau]]<br />
[[File:Versuchsaufbau1TeamD.jpg|400px|thumb|none|Elektrodenbefestigung]]<br />
[[File:MessungDanielGlur.jpg|400px|thumb|none|Messung von Daniels Puls]]<br />
<br />
===Versuchsaufbau 2===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 2===<br />
<br />
Als zweites Experiment versuchten wir durch das anspannen der Muskeln einen Servomotor anzusteuern. Wie es auch auf der Homepage von [https://backyardbrains.com/experiments/MuscleSpikerShield_GripperHand/ Backyard Brains] anzutreffen ist. Dieser Versuch konnte aber leider aus Zeitgründen nicht zu Ende geführt werden. Wir konnten lediglich das Arduinoprogramm laden und etwas anpassen.<br />
<br />
===Reflexion===<br />
<br />
Der Hack 0 war in der Hinsicht sehr interessant, da wir alle unsere ersten Erfahrungen mit einem Arduino machen konnten. Einige von unserem Team hatten bisher auch noch nie auf einer Printplatte irgendwelche Widerstände oder Schalter etc. gelötet. Ebenso war es erstaunlich, dass man mit so wenig so viel verschiedene Sachen machen kann. Keiner von uns hat gedacht dass wir bereits am ersten Tag irgend etwas mit unseren Muskeln kontrollieren könnten. Insgesamt kam der Hack 0 gut bei uns an und wir alle konnten einiges davon profitieren und hoffentlich auch den weiteren Hacks weiterverwenden.<br />
<br />
== Hack 1: Baseball-Cap mit Ventilator ==<br />
<br />
Der Hack 1 beschreibt die Konzept- und Testphase des ersten Prototyps.<br />
<br />
Zu Beginn waren wir uns sehr unschlüssig was wir wirklich bauen wollen. Also entschieden wir uns für ein weiteres Experiment mit einem Bausatz von Backyard Brains. Wir versuchten durch die Funktion des Heart and Brain Spiker Shield einen Ventilator anzusteuern. Der Gedanke, welcher uns auf diese Idee führte, kennt wohl jeder Student. Während einer Prüfung kommt so mancher ins Grübeln und in harten Fällen kommt es auch vor dass einem eine Schweissperle von der Stirn läuft. Um in solchen Fällen für die nötige Kühlung zu sorgen, sollen Sensoren die Hirnströme gemessen und als Signal wiedergeben werden um damit einen Ventilator anzuschalten.<br />
<br />
Zu unserem eigenen Erstaunen erhielten wir sogar ein Signal aus unserer Messung. Es stellte sich aber sehr bald heraus, dass das wohl nicht die Hirnströme waren sondern eher Bewegungen des Kopfs und der Kabel. Denn die Sensoren sind recht empfindlich gegen solche Einflüsse. Zudem kam noch, dass die Sensoren über den Haaren angebracht wurden, was das Signal der Hirnströme noch zusätzlich verschlechterte. Nach einigen Versuchen sahen wir ein, dass das wohl eine zu grosse Herausforderung war und wir uns besser an einen einfacheren Versuch versuchen sollten.<br />
<br />
[[File:heart_and_brain.jpg|300px|thumb|none|Signal aus Messung der "Hirnströme"]]<br />
[[File:EEGDanielGlur.jpg|500px|thumb|none|Daniel beim messen der "Hirnströme"]]<br />
<br />
Also beschlossen wir uns anstelle der Hirnströme den Puls zu messen. Denn während einer Prüfung kann es durchaus auch vorkommen, dass der Puls etwas ansteigt. Die Messungen sollten dann ausgelesen werden und wenn der Puls eine gewisse Frequenz übersteigt, schaltet ein Ventilator ein um den Studenten wieder etwas zu beruhigen.<br />
<br />
Für diesen Versuch platzierten wir Sensoren am Unterarm und an der Handoberfläche. Idealerweise sollten laut Assistent Christian die Sensoren aber so weit wie möglich voneinander entfernt, an einer anderen Körperstelle angebracht werden um eine gewisse Referenz zu haben und um sicherzustellen, dass man wirklich den Puls misst. Unsere Kabel waren aber leider etwas zu kurz. Wir erhielten trotzdem ein relativ gutes Signal von welchem man davon ausgehen konnte, dass es sich um den Puls handelte. Jetzt nur noch das Signal auswerten, einen Frequenzbegrenzer programmieren und mithilfe von einem Arduino UNO den Ventilator ansteuern... Dachten wir... Dies war allerdings etwas Schwieriger als erwartet und überstieg unsere Kompetenzen. Das führte uns dazu auch diesen Versuch an dieser Stelle abzubrechen und nochmal zu überdenken.<br />
<br />
<br />
[[File:puls.png|400px|thumb|none|Pulssignal]]<br />
[[File:pulsmessung.jpg|400px|thumb|none|Pulssmessung]]<br />
<br />
<br />
Nun rannte uns schon langsam die Zeit davon. Doch dann kam uns die Idee, welche wir schon zu Beginn benötigt hätten. Und zwar wollten wir einen Ventilator auf einem Baseball-Cap anbringen und diesen ansteuern wenn ein gewisses Temperaturniveau unter dem Cap überschritten wird wird. Dazu wird ein 12V Ventilator via Relais von dem Arduino angesteuert. Weil der Arduino nur eine Spannung von 5V liefert, musste ein 12V Netzgerät den Ventilator mit Strom versorgen. Damit man den Ventilator so schalten konnte, damit er den Strom über das 12V Netzgerät bezieht, mussten wir noch ein Relais einbauen. Den Code für den Arduino bezogen wir aus verschiedenen ähnlichen Projekten aus dem Internet und passten ihn spezifisch für unsere Anwendung an. Für das auslesen der Temperatur mussten wir zuerst zwei Libreries herunterladen (DallasTemperature und OneWire).<br />
<br />
[[File:Komponente.PNG|400px|thumb|none|Verbaute Komponenten]]<br />
<br />
Nun mussten wir noch den Ventilator am Baseball-Cap anbringen. Dafür wurde eine Halterung im CAD konstruiert und mit einem 3D-Drucker ausgedruckt. Die Teile wurden danach zusammengesteckt und mit dem Baseball-Cap verschraubt. Natürlich wurde zuvor ein Loch in das Cap geschnitten, damit der Ventilator auch seinen Zweck erfüllen kann und dem Studenten einen kühlen Kopf verschafft.<br />
<br />
[[File:Aufbau.PNG|350px|thumb|none|3D-Modell im CAD]]<br />
<br />
[[File:Zusammenbau1.jpg|350px]]<br />
[[File:Zusammenbau2.jpg|350px]]<br />
<br />
Nun wurde unser Prototyp getestet. Der Sensor erfüllte seinen Dienst und wir konnten erfolgreich die Temperaturen messen. Jedoch war das Relais während dem Testen ständig eingeschalten und der Ventilator lief die ganze Zeit auch wenn die Temperatur den Minimalwert unterschritten hatte. Es hat sich also irgendwo in unserem Programm einen Fehler eingeschlichen. Den galt es nun zu finden und zu beheben. Dazu bauten wir einen Druckknopf ein um zu überprüfen ob das Relais defekt war und um die Fehlerquellen etwas einzugrenzen.<br />
<br />
[[File:Temperatur.jpg|350px]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/TQnGa5WiGS4<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
Der Druckknopf funktionierte, das Relais schaltete perfekt ein und aus und der Ventilator wurde an- und abgestellt. Somit wissen wir nun wo der Fehler zu suchen ist und können versuchen das Programm an diesen Stellen zu bereinigen. Nur ist jetzt schon Donnerstag Nachmittag und der Hack 2 hat schon begonnen. Wir alle wurden aufgefordert unseren bisherigen Prototypen aufzugeben und etwas neues, anderes zu versuchen und zu testen. Also legen wir schweren Herzens unser erster Prototyp beiseite und widmen unsere Kreativität dem nächsten Hack.<br />
<br />
=== Reflexion ===<br />
Der Hack 1 hat uns gezeigt, dass es gar nicht so einfach ist beim ersten Versuch ein brauchbares Resultat zu erzielen. Jedoch konnten wir so aus zwei vorhergehenden, fehlgeschlagenen Ansätzen eine Idee weiterentwickeln. Somit konnten wir mit unseren Kompetenzen und den Erfahrungen aus dem Hack 0 ein zufriedenstellendes Resultat erzielen. Durch die zwei Versuche zuvor ging leider recht viel Zeit "verloren", welche wir sehr benötigt hätten um unser erster Prototyp fehlerfrei hinzukriegen. Es war uns auch eine Lehre, dass man nicht zu lange an einer Sache verharren sollte wenn einem nur wenig Zeit zur Verfügung steht. Manchmal ist es besser man wirft alles nochmal über den Haufen und beginnt von vorne. Trotz allen Strapazen während des Hack 1 sind wir mit unserem ersten Prototyp sehr zufrieden und konnten auch bei diesem Versuch wieder viel profitieren und mitnehmen. Nun blicken wir gespannt nach vorne auf den nächsten Hack.<br />
<br />
<br />
===Code===<br />
<br />
Wir konnten zwar die Temperatur herauslesen und das Relais über einen Butten steuern, jedoch die Steuerung anhand der Temperatur geling uns nicht.<br />
<br />
<pre><br />
/********************************************************************/<br />
// First we include the libraries<br />
#include <OneWire.h> <br />
#include <DallasTemperature.h><br />
/********************************************************************/<br />
// Data wire is plugged into pin 2 on the Arduino <br />
#define ONE_WIRE_BUS 2 <br />
<br />
float tempReading;<br />
/********************************************************************/<br />
// Setup a oneWire instance to communicate with any OneWire devices <br />
// (not just Maxim/Dallas temperature ICs) <br />
OneWire oneWire(ONE_WIRE_BUS); <br />
/********************************************************************/<br />
// Pass our oneWire reference to Dallas Temperature. <br />
DallasTemperature sensors(&oneWire);<br />
/********************************************************************/ <br />
int relayPin = 4; // Relay Singnal lead to Digital Pin [D2-D12]<br />
<br />
float maxTemperature = 30.00; // The Max Temperature allowed<br />
float minTemperature = 25.00; // The Min Temperature allowed<br />
<br />
// constants won't change. They're used here to set pin numbers:<br />
const int buttonPin = 8; // the number of the pushbutton pin<br />
const int ledPin = 4; // the number of the LED pin<br />
<br />
// variables will change:<br />
int buttonState = 0; // variable for reading the pushbutton status<br />
<br />
void setup(void) {<br />
// initialize the LED pin as an output:<br />
pinMode(ledPin, OUTPUT);<br />
// initialize the pushbutton pin as an input:<br />
pinMode(buttonPin, INPUT);<br />
<br />
Serial.begin(9600); <br />
Serial.println("Dallas Temperature IC Control Library Demo"); <br />
// Start up the library <br />
sensors.begin(); <br />
}<br />
<br />
void loop(void) <br />
{ <br />
// call sensors.requestTemperatures() to issue a global temperature <br />
// request to all devices on the bus <br />
/********************************************************************/<br />
Serial.print(" Requesting temperatures..."); <br />
sensors.requestTemperatures(); // Send the command to get temperature readings <br />
Serial.println("DONE"); <br />
/********************************************************************/<br />
Serial.print("Temperature is: "); <br />
Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"? <br />
// You can have more than one DS18B20 on the same bus. <br />
// 0 refers to the first IC on the wire <br />
delay(1000); // Check Temperature every second<br />
<br />
float temperature = getTemperature();<br />
if(temperature >= maxTemperature){<br />
powerOnRelay();<br />
} else if (temperature <= minTemperature) {<br />
powerOffRelay();<br />
}<br />
delay(1000); // Check tempertature every second<br />
<br />
} <br />
void powerOnRelay() {<br />
digitalWrite(relayPin, HIGH);<br />
Serial.println("Relay On");<br />
}<br />
<br />
void powerOffRelay() {<br />
digitalWrite(relayPin, LOW);<br />
Serial.println("Relay Off");<br />
}<br />
float getTemperature(){<br />
tempReading = digitalRead(ONE_WIRE_BUS);<br />
<br />
// read the state of the pushbutton value:<br />
buttonState = digitalRead(buttonPin);<br />
<br />
// check if the pushbutton is pressed. If it is, the buttonState is HIGH:<br />
if (buttonState == HIGH) {<br />
// turn LED on:<br />
digitalWrite(ledPin, HIGH);<br />
} else {<br />
// turn LED off:<br />
digitalWrite(ledPin, LOW);<br />
}<br />
}<br />
</pre><br />
<br />
== Hack 2: Spritzenpumpe ==<br />
<br />
Nachdem der Hack 1 abgeschlossen war, machten wir uns aufs Neue darüber Gedanken was wir für einen Prototyp für den Hack 2 bauen wollen. Urs hat nach dem Abschluss von Hack 1 gesagt, wir sollten uns ein komplett neues Produkt überlegen, welches möglicherweise auch etwas mit der Medizintechnik zu tun hat. Nach einem Brainstorming kamen wir noch nicht so richtig auf einen grünen Zweig. So kamen wir auf die Idee uns einen Kaffee zu holen und einfach mal durch das FABLAB zu laufen um alles Mögliche anzuschauen, in die Hand zu nehmen und uns von all diesen Gegenständen inspirieren zu lassen. So kamen uns diverse Gegenstände in die Finger. darunter waren Servomotoren sowie einige DC-Motoren, eine Spritze, eine Pumpe, ein Micro-Switch Schalter, ein Potentiometer und vieles mehr. Diese Gegenstände haben wir dann auf unserem Gruppentisch ausgebreitet und uns Gedanken darüber gemacht was wir damit wohl anstellen konnten zum Thema Medizintechnik. So entstanden relativ schnell einige Ideen. Wir haben uns schlussendlich dafür entschieden ein Dosiergerät für eine medizinische Spritze zu machen. Dieses sollte so funktionieren, dass wir eine Spritze in eine Vorrichtung legen und über einen DC-Motor zum Einfahren bzw. Ausfahren bringen. Dazu muss die Drehbewegung des Motors in eine Lineare Bewegung umgeleitet werden. Zudem muss ggf. auch die Drehzahl des Motors durch ein Potentiometer reguliert werden können um einen zu schnellen Aus- oder Einfahrvorgang zu verhindern. Soviel zu zu den technischen Überlegungen. <br />
<br />
Sofort nach dem Entscheid suchten wir nach einem geeigneten Motor. Dieser sollte dabei eine eher tiefe Drehzahl haben damit die Spritze nur langsam ein- und ausfährt. Zudem suchten wir im Internet nach einem geeigneten Mechanismus der die Drehbewegung in eine lineare Bewegung umwandelt. Denn wir hatten leider zu wenig zeit um alles selber zu entwerfen und zu konstruieren. So wurden wir auf auf der Hompage von [https://www.thingiverse.com/thing:2797132/ Thingiverse] schliesslich fündig. Also konnte wir die Folgenden Komponenten herunterladen und mit dem 3D-Drucker ausdrucken.<br />
<br />
Komponenten: <gallery><br />
File:Halteplatte.PNG | Halteplatte<br />
File:Zahnrad.PNG | Zahnradpaar<br />
File:Zahnradpaar.PNG | Zahnstange<br />
File:Zahnstange.PNG | Zahnrad<br />
</gallery><br />
<br />
Da wir einen anderen Motor verwendeten als für diesen Mechanismus vorgesehen wäre, mussten wir noch eine passende Adapterplatte konstruieren, damit der Motor auch auf die Vorrichtung passt.<br />
<br />
<gallery><br />
File:Adapterplatte.PNG | Adapterplatte<br />
File:Motor.PNG | Motor<br />
File:Motor_mit_Adapter.jpg | Motor mit Adapter<br />
</gallery><br />
<br />
Der Motor benötigt, wie auch der Ventilator von Hack 1, eine Spannung von 12V für den Betrieb. Also mussten wir erneut das 12V Netzgerät verwenden. Damit unser zweiter Prototyp auch die gewünschte Fördermenge fördern kann, muss die Zeitdauer, in welcher gefördert werden soll, definiert werden. Das dazugehörige Programm wird mit einem Arduino UNO implementiert. Der Zugehörige Code haben wir durch Recherche im Internet und durch persönliches erweitern und anpassen erstellt. Die Drehzahl des Motors darf nicht zu hoch sein damit man die Fördermenge auch sinnvoll einstellen kann. Für diese Anwendung wird ein Potentiometer zwischen Relais und Motor gehängt. So kann die Motorspannung reguliert und die Drehzahl anforderungsgemäss eingestellt werden. Nachfolgend wird der Prozessablauf kurz beschrieben.<br />
<br />
Mit einem Knopfdruck wird wird ein Relais geschalten und der Motor wird angesteuert. Die Drehzahl des Motors wird über ein Getriebe reduziert. Die Zahnräder greifen auf eine Zahnstange und wandeln die Drehbewegung in eine lineare Bewegung um. An der Zahnstange wird der Stössel der Spritze befestigt. Der Rest der Spritze wird mit einem Kabelbinder fest mit der Bodenplatte verbunden damit sich dieser Teil nicht bewegen kann. Die programmierte Zeitdauer bestimmt welche Menge an Flüssigkeit gefördert werden soll.<br />
<br />
[[File:Pumpe.PNG|500px|thumb|none|Aufbau der Spritzenpumpe]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/PLG_S3GtVI8<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
=== Reflexion ===<br />
<br />
Anders als beim Hack 1 kamen waren wir uns bei diesem Hack sehr schnell einig was genau wir bauen möchten. Die ganze Ideenfindung erledigte sich sehr schnell und wir konnten nach bereits wenigen Stunden mit dem programmieren des Arduinos beginnen. Wie wir bereits im Hack 1 erfahren durften, ist das bei dem gedrängten Zeitplan dieser Woche ein grosser Vorteil. Rückblickend können wir urteilen, dass der Hack 2 aus unserer Sicht ein erfreuendes Erfolgserlebnis war. Unser zweiter Prototyp funktioniert genau so wie wir uns das von Beginn an vorgestellt haben. Per Knopfdruck fördert unser Prototyp eine gewisse Menge an Flüssigkeit.<br />
<br />
=== Code ===<br />
<br />
<pre><br />
<br />
bool geschaltet = false;<br />
int RelaisPin = 10; <br />
int tasterPin = 2;<br />
int empfindlichkeit = 200;<br />
<br />
void setup() {<br />
<br />
pinMode( tasterPin, INPUT_PULLUP);<br />
pinMode( RelaisPin, OUTPUT);<br />
<br />
}<br />
<br />
void loop() {<br />
<br />
if (digitalRead(tasterPin) == LOW) <br />
{<br />
if (geschaltet == false) {<br />
geschaltet = true;<br />
}<br />
else {<br />
geschaltet = false;<br />
}<br />
}<br />
<br />
if (geschaltet == true) {<br />
digitalWrite(RelaisPin, HIGH);<br />
delay(1000);<br />
geschaltet = false; <br />
}<br />
<br />
if (geschaltet == false) {<br />
digitalWrite(RelaisPin, LOW);<br />
}<br />
<br />
delay(empfindlichkeit);<br />
}<br />
</pre><br />
<br />
== Hack 3: Zinnguss ==<br />
<br />
Für diesen Hack wurde Zinn gegossen. Dank dem tiefen Schmelzpunkt lässt sich der Gusswerkstoff in einer Stahlkanne mit einem Brenner einer Autogenschweissanlage leicht erhitzen.<br />
<br />
[[File:Kanne.jpg|400px]]<br />
Stahlkanne mit flüssigem Zinn<br />
<br />
=== Versuch 1 ===<br />
<br />
Für die Gussform wurde MDF verwendet. Da die Hitzebeständigkeit von MDF unklar war, sollte ein kleiner Versuch Aufschluss geben. Eine einfache Zylinderform mit einem Überlaufbecken bestehend aus 3 Platten gemässe Bild [[:File:Versuch_1_Gussform.jpg]]Gussform, Versuch 1. Da nur eine kleine Menge an Zinn erhitzt wurde, war die Temperatur vermutlich deutlich über dem Schmelzpunkt. Es entwickelte sich Dampf, was zu einem Gussfehler im Überlauf führte. Ausserdem wurde das MDF stark verkohlt, siehe [[:File:Versuch_1_Resultat.jpg]]Resultat. Dennoch ist das Resultat zufriedenstellend, sodass für einen weiteren Versuch wieder MDF verwendet werden kann.<br />
<br />
Versuch 1<br />
<gallery><br />
[[File:Versuch_1_Gussform.jpg|400px]] | Gussform<br />
[[File:Versuch_1_Guss.jpg|400px]] | Frisch gegossen<br />
[[File:Versuch_1_Resultat.jpg|400px]] | Resultat<br />
</gallery><br />
<br />
=== Versuch 2 ===<br />
<br />
Nun konnte der eigentliche Versuch gestartet werden. Das Zinn wurde wieder in der Stahlkanne erhitzt, jedoch nicht so stark wie in Versuch 1. Jedoch wurden diesmal alle Formen mit dem Lasercutter ausgeschnitten. Auch bei dieser Gussform diente die letzte MSF Platte als Überlauf. Das flüssige Zinn konnte bei der grösseren Form kontrollierter und langsamer gegossen werden, so dass die Form gleichmässig ausgefüllt werden konnte, siehe Bild [[:File:Versuch_2_Guss.jpg]]Frisch gegossen.<br />
<br />
Versuch 2 giessen<br />
<gallery><br />
[[File:Versuch_2_Gussform.jpg|400px]] | Gussform<br />
[[File:Versuch_2_Guss.jpg|400px]] | Frisch gegossen<br />
</gallery><br />
<br />
Durch den Schwund lässt sich das Gussstück relativ gut aus der Form drücken, obwohl keine Formschrägen vorhanden waren. Vorher empfiehlt es sich, den Überlauf abzufräsen (Bild [[:File:Versuch_2_Fraesen.jpg]]Überfäsen, [[:File:Versuch_2_Resultat.jpg]]Resultat), da sich Zinn nur bedingt im Schraubstock einspannen lässt. Zinn vierbiegt sich sehr leicht.<br />
<br />
Versuch 2 bearbeitung<br />
<gallery><br />
[[File:Versuch_2_Fraesen.jpg|400px]] | Überfäsen<br />
[[File:Versuch_2_Resultat.jpg|400px]] | Resultat<br />
</gallery><br />
<br />
= Skill-Share-Session =<br />
<br />
== Grundlagen der Arduinoprogrammierung ==<br />
<br />
Dieser Kurs wurde von unserer Gruppe angeboten und soll den Teilnehmern die Grundlage der Programierung eines Arduino UNO beibringen. Folgend werden die grundlegenden Befehle und deren Syntax vorgestellt. Der Aufbau folgt dem YouTube Tutorial von Max. Hier gelangst du zu dem Link: [https://www.youtube.com/watch?v=eaFvQG8wrGw&list=PLAB63281B90FB376E&index=3]<br />
<br />
=== Skript ===<br />
Der Code wird in einem Skript geschrieben. Dieses ist in zwei Bereiche aufgeteilt<br />
* Void setup() Dieses Skript wird einmalig ausgeführt und enthält zB. Input und output<br />
* Void loop() Dieser Teil des Skripts wird als Dauerschleife wiederholt<br />
<br />
==== Befehlseingabe ====<br />
<br />
Die Befehle werden nach folgender Syntax eingegeben:<br />
<br />
* Funktion(Parameter1, Parameter2);<br />
<br />
Dabei muss das «;» gesetzte werden, ausserdem spielen Gross- und Kleinbuchstaben eine Rolle.<br />
<br />
=== Variablen ===<br />
Übersichtshalber sollen sprechende Namen für die Bezeichnung von z.B. Outputs verwendet werden. Dabei können verschiedene Datentypen ausgewählt werden.<br />
<br />
==== Datentyp ====<br />
* int Ganze Zahlen von -32768 … 32767 z.B. 1, 48, -654<br />
* boolean Entweder true oder false<br />
* byte 8 Bit an Informationen z.B. 00010101 (=21)<br />
* char enthält 1 Byte Informationen, das ein Zeichen darstellt z.B. 65 = A<br />
* long grosse Zahlen von ca. -2.1 Milliarden bis 2.1 Milliarden z.B. 15636451<br />
* float Komazahlen z.B. 5.498<br />
* string Zeichenketten z.B. «Do it yourself»<br />
<br />
==== Deklaration Syntax ====<br />
<br />
* Datentyp Name = Wert;<br />
<br />
oder<br />
<br />
* Datentyp Name;<br />
* Name = Wert;<br />
<br />
====Ort der Deklaration====<br />
<br />
Die Variable muss immer im Teil des Skriptes deklariert sein, wo sie auch gebraucht wird. Wird die Variable im setup wie auch im loop benötigt, so kann man die Variable als sogenannte globale Variable oberhalb des Setups deklarieren.<br />
<br />
===If-Schleife===<br />
<br />
Bei der If-Schleife wird der Wert einer Variablen mit einem Vergleichswert verglichen. Falls der Vergleich positiv ist, wird der Code ausgeführt, ansonsten übersprungen. Dazu sind Vergleichsoperatoren notwendig.<br />
<br />
====Syntax====<br />
<br />
if(Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
====Vergleichsoperatoren====<br />
<br />
* == gleich<br />
* != ungleich<br />
* < kleiner<br />
* < grösser<br />
* <= kleiner gleich<br />
* >= grösser gleich<br />
<br />
===While-Schleife===<br />
<br />
Mit der While-Schleife wird die Bedingung fortlaufend geprüft. Stimmt diese, wird der Code ausgeführt, ansonsten wird der Code übersprungen. Es können die selben Vergleichsoperatoren wie bei der If-Schleife verwendet werden.<br />
<br />
====Syntax====<br />
<br />
while (Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
==Bildgebende Verfahren==<br />
<br />
Der Tag begann mit einer Einführung in die Bildgebenden Verfahren durch David Stadelmann. Hierbei erklärte er uns, verschiedene Methoden, um Bilder aus dem Körperinneren zu machen und welche Methode für die verschiedenen Gewebetypen gebraucht werden. Zudem Zeigte und erklärte er uns anhand von Beispielen was die Einzelnen Schattierungen aussagen könnten.<br />
<br />
[[DIY-MedTech Bildgebende Verfahren-Unterschiedliche Bildeindrücke - Team Frosch]]<br />
<br />
==Synths & Sound ==<br />
<br />
Danach ging es weiter mit dem Kurs Synths & Sounds. Diese Session wurde von [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] durchgeführt. Hierbei zeigte er uns, wie man mit verschieden erzeugten Schwingungen eine grosse Variation von Tönen generiert kann. Zudem auch wie man elektronisch gewisse Instrumente Simulieren könnte und durch die Aneinanderreihung verschiedenster Tonvariationen eine Melodie enstehen kann. Dies mit unterschiedlich Variationen von selbstgebauten Synthesizers.<br />
<br />
<gallery><br />
File:Sinthesizer1.jpg | Synthesizer 1<br />
File:Synthesizer2.jpg | Synthesizer 2<br />
</gallery><br />
<br />
== Schweissen ==<br />
<br />
Bei dem Skill-Share Workshop von [https://www.hackteria.org/wiki/Team_G2020/ Team G2020] konnten wir verschiedene Schweissverfahren kennenlernen und auch gleich anwenden.<br />
<br />
Es wurde uns das [https://de.wikipedia.org/wiki/Lichtbogenhandschwei%C3%9Fen/ Elektrodenschweissen], das [https://de.wikipedia.org/wiki/Schutzgasschwei%C3%9Fen/ MIG-Schweissen] und das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] nähergebracht.<br />
<br />
Dieser Workshop war für uns alle sehr interessant, da sich bisher noch keiner von uns so wirklich mit dem Schweissen und den verschiedenen Verfahren auskannte. An diesem Tag konnten wir nach einer kurzen Theorie gleich sofort selber handanlegen und die verschiedenen Schweissverfahren ausprobieren.<br />
<br />
Dabei mussten wir feststellen, dass es gar nicht so einfach ist wie es immer aussieht. Besonders das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] braucht sehr viel Übung und Geschick um wirklich schöne Schweissergebnisse zu erzielen.<br />
<br />
== Autonomes Nervensystem und das Hören in der Medizin ==<br />
<br />
Der Assistent Dr. Christian Gehringer, MSc. (ETH) hielt uns einen sehr interessanten Vortrag. Dabei ging es darum, dass wir die Anatomie kennenlernen und erkunden am Beispiel des Hörens z.B mit einem Stethoskop.<br />
<br />
[https://www.hackteria.org/wiki/Autonomes_Nervensystem_und_das_H%C3%B6ren_in_der_Medizin/ Autonomes Nervensystem und das Hören in der Medizin]</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=MedTechDIY20_Die_Profis&diff=41658MedTechDIY20 Die Profis2020-02-09T11:50:43Z<p>Tnroth: /* Hack 3: Zinnguss */</p>
<hr />
<div>Hier gehts zurück auf: [[Medizintechnik DIY]]<br />
<br />
[[File:DieProfis.png|700px|right|none|Wochenplan]]<br />
<br />
= Team =<br />
<br />
'''Die Profis''' besteht aus den drei Studierenden '''Daniel Glur''', '''Lukas Roth''' und '''Daniel Zellweger''' der Hochschule Luzern. Im Rahmen der Blockwoche "DIY Medizintechnik" formierte sich das Team aus verschiedenen Studiengängen um auch interdisziplinär voneinander zu lernen und Wissen auszutauschen.<br />
<br />
'''Mitglieder:'''<br />
<br />
Maschinentechnik: <gallery><br />
File:DanielGlur.jpg | Daniel Glur<br />
File:LukasRoth.jpg | Lukas Roth<br />
</gallery><br />
<br />
Medizintechnik: <gallery><br />
File:DanielZellweger.jpg | Daniel Zellweger<br />
</gallery><br />
<br />
= Pflichtlektüre =<br />
<br />
'''How to control someone else's arm with your brain | Greg Gage'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/rSQNi5sAwuc<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
In Diesem Video wird gezeigt wie man über die Aufnahme eines Biologischen Signals, dieses an eine zweite Person weitergeleitet werden kann.<br />
Dies funktioniert jedoch nur aus verschiedenen Gründen bedingt. Nebst den allgemeinen Störeinflüsse aus der Messtechnik, kommen zusätzlich noch jene der Ansteuerung. Da das Signal nur von einzelnen Muskelfasern abgefangen wird, kann dieses nicht sämtliche Muskelfasern der zweiten Person Reizen. Dies hat zur folge, dass nur eine annähernd ähnliche Bewegung des Armes arfolgt.<br />
<br />
<br />
'''What is Open Source explained in LEGO'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/a8fHgx9mE5U<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Durch die Verwendung der Open Source Methode erhält man die Möglichkeit während des Projektes noch Erweiterungen oder Veränderungen anzustreben.<br />
<br />
'''"Why toys make good medical devices | Jose Gomez-Marquez'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/UHCT9SOBHs0<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Nebst dem Preis besitzen Spielzeuge diverse spezifische Funktionen. Da diese meist günstige Anschaffung auch einfach verändert werden kann, sind sie sehr geeignet dafür umgebaut zu werden. Somit sind Spielzeuge welche chemische oder sensorische Funktionen besitzen ein gefundenes fressen für den Hacker und eine Alternative für Regionen in welchen die finanzielle Situation teure Medizinprodukte nicht erlauben.<br />
<br />
= Einleitung =<br />
Die Blockwoche "DIY Medizintechnik" verbindet Anwendungen der Medizintechnik mit Do It Yourself (DIY) Ansätzen. Dadurch wird das tiefere Verständnis von Medizintechnischen Geräten durch einen direkten, interdisziplinären und möglichst selbstgesteuerten Zugang gefördert. Basierend auf verschiedenen elektrophysiologischen Messmodulen (EMG, EKG, EOG, EEG) entwickeln die Studierenden im Team Ideen für innovative Projekte. Erste Prototypen werden mit den Mitteln der Digitalen Fabrikation hergestellt und getestet. Tag für Tag stehen produktive "Hacks" auf dem Programm. Hacks sind sehr praxisbezogene Arbeitssequenzen wo die Studierenden Experimente durchführen sowie Prototypen entwickeln und bauen können. Dabei ist aber nicht nur die Medizintechnik zentral sondern auch der Interdisziplinäre Austausch sowie eine Skill-Share-Session wo die Studierenden ganz nach dem do it yourself Gedanken einen eigenen Workshop leiten können.<br />
Alle Erkenntnisse und Erfahrungen werden laufend in einem eigenen Wiki-Eintrag festgehalten und dokumentiert.<br />
<br />
Die Blockwoche wird von den beiden Dozenten [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] und [https://www.hackteria.org/wiki/Gaudi/ Urs Gaudenz] duchgeführt. Unterstützt wurden die Beiden von '''Dr. Christian Gehringer, MSc. (ETH)''' und [http://chrisobrist.ch/about// Chris Obrist]<br />
<br />
Maschinentechnik: <gallery><br />
File:MarkDusseiller.jpg | Dr. Marc R. Dusseiller<br />
File:UrsGaudenz.jpg | Urs Gaudenz<br />
</gallery><br />
<br />
= Planung =<br />
<br />
Die Blockwoche wird wie in folgendem Wochenplan unterteilt:<br />
<br />
[[File:Wochenplan2020.jpg|700px|thumb|none|Wochenplan]]<br />
<br />
= Wochenrückblick =<br />
== Die Woche in Bilder==<br />
[[File:ProfisInAction.PNG|400px]]<br />
[[File:Komponente.PNG|300px]]<br />
[[File:Aufbau.PNG|400px]]<br />
[[File:Motor_mit_Adapter.jpg|300px]]<br />
[[File:Pumpe.PNG|350px]]<br />
[[File:pulsmessung.jpg|450px]]<br />
[[File:Zusammenbau2.jpg|300px]]<br />
[[File:Foto 07.02.20, 11 14 53.jpg|300px]]<br />
[[File:DanielZellweger.jpg|300px]]<br />
<br />
== Tag 1==<br />
'''Einführung'''<br />
<br />
Wir traffen uns zu beginn im FABLAB, wo sich die Dozenten vorstellten und uns über Ihren bisherigen Werdegang informierten. Das interessante an der beruflichen Laufbahn der beiden ist, dass beide ein Studium abgeschlossen haben und heute einer Tätigkeit nachgehen, welche eigentlich nicht mehr viel mit dem damaligen Studium zu tun hat. Das vermittelt unserer Meinung nach, den Studenten eine etwas andere Sichtweise als die technische Hochschule. Es zeigt z.B. dass man nach einem Studium nicht gezwungen ist auf diesem Fachgebiet zu arbeiten sondern dass der Arbeitsmarkt noch sehr viele andere Möglichkeiten zu bieten hat.<br />
<br />
Nachdem sie sich Vorgestellt haben, stellten sie uns auch noch den Assistent vor. Dieser ist ein ausgebildeter Arzt welcher sich momentan für seinen zweiten Doktortitel engagiert. Von Ihm und seinem grossen medizinischen Fachwissen können wir als Studenten die ganze Woche profitieren.<br />
<br />
Danach überliessen die Dozenten uns Studenten das Wort. Es war eine etwas andere Vorstellungsrunde wie man sie noch nicht kannte. Dazu stand uns ein ganzer Tisch mit kuriosen Gegenständen, welche etwas mit dem DIY Gedanke zu tun haben, zur verfügung. Sie vorderten uns alle auf einen Gegenstand auszuwählen. Danach mussten wir uns Vorstellen und noch ein paar Worte dazu verlieren welche Gemeinsamkeiten wir mit dem ausgesuchten Gegenstand teilen.<br />
<br />
'''DIY (Do It Yourself)'''<br />
<br />
Das DIY Prinzip basiert auf eigenem experimentieren und learning by doing<br />
<br />
{{#widget:Iframe<br />
|url= https://www.youtube.com/watch?v=3zH_J12G9sQ<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
<br />
'''How to use Wiki'''<br />
<br />
Durch die 45 minütige Einführung in die Handhabung das Wiki durch Dr. Marc R. Dusseiller waren wir bereit unsere Erkenntnisse und Projekte, welche wir in dieser Woche erfahren und durchführen werden, in einer Zugänglichen Form, niederzuschreiben.<br />
<br />
== Tag 2 ==<br />
Am zweiten Tag begannen wir die Vorbereitung Skill-Share-Session. Diesbezüglich sollte jeder Teilnehmer einen Skill, welcher er erlernen möchte und einen Skill, den man beibringen könnte notieren. Diese wurden dann auf einer Tafel in Cluster aufgeteilt. Zwölf davon wurden als Skill-Share Workshops ausgewählt und die Teilnehmer konnten sich nach Belieben einschreiben.<br />
<br />
[[File:SkillSession2020.jpg|500px|thumb|none|Skill-share-session]]<br />
<br />
Während des zweiten Teils arbeiteten wir an unserem Experiment weiter, welches wir am Vortag begonnen haben.<br />
Dazu mussten wir die elektronischen Bauteile mit unserem Laptop verbinden und einen vorgefertigten Sketch laufen lassen.<br />
<br />
Nachdem wir den ersten Versuch erfolgreich durchführen konnten, versuchten wir mit dem Arduino einen Stepmotor anzusteuern. Dabei stiessen wir jedoch auf einige Schwierigkeiten. Da wir diese bis zur Einführung des Lasercutters und des 3D-Druckers fertig haben sollten. Siehe [[#Hack 0]]<br />
<br />
Unteranderem wurde unsere Skill-Share-Session über Arduino vorbereitet.<br />
<br />
Am Abend kam [http://chrisobrist.ch/about// Chris Obrist] zu Besuch und unterhielt uns mit einer wundervollen musikalischen Darbietung.<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/Hj1Ogr8137o<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
== Tag 3 ==<br />
Von 9:00 Uhr bis nach dem Mittag um 14:00 Uhr waren wir alle mit der [[#Skill-Share-Session]] beschäftigt.<br />
<br />
Danach hatten wir Zeit um den nächsten Hack vorzubereiten und zu planen.<br />
<br />
== Tag 4 ==<br />
Den Vormittag verbrachten wir weiter mit dem Hack 1, welchen wir dann vor der Mittagspause den Dozenten und allen Mitstudierenden präsentieren durften. Leider litten wir während des ganzen Hack 1 sehr unter Zeitdruck, was auf eine turbulente Projektphase zurückzuführen ist. Mehr dazu erfährst du im [[#Hack 1]].<br />
<br />
Nach einer kurzen Inspirationphase entschieden wir uns dafür eine kleine Spritzenpumpe zu basteln. [[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 5 ==<br />
Am Tag 5 ging es darum die Einzelteile physikalisch sowie über ein Funktionierendes Arduinoprogamm zum laufen zu bringen.<br />
[[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 6 ==<br />
Zum Abschluss durften wir alle Hacks der verschiedenen Teams begutachten. Interessant waren die spontanen Vorgehensweisen und auch die daraus entstandenen Produkte. Viele Teams suchten zuerst das Material und erst danach die Ideen. So entstanden die unterschiedlichsten Prototypen.<br />
Zudem Reflektierten wird die Blockwoche. Im Allgemeinen gefielen die Freiheit und auch der unkomplizierte Teamgeist untereinander. Besten Dank auch an die Organisatoren der Blockwoche.<br />
<br />
= Experimente =<br />
Bei den Experimenten sollte es darum gehen aus unterschiedlichsten Einzelteilen ein Produkt zu erschaffen. Dieser Prozess brachte uns dazu über die Grenzen unseres altäglichem Denken zu springen und in der Verbindung der einzelnen Bereiche solcher Produkte besser zu verstehen.<br />
<br />
== Hack 0 ==<br />
<br />
<br />
===Versuchsaufbau 1===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 1===<br />
Nach den Inputs der Dozenten verbrachten wir hauptsächlich die Zeit damit den Muscle Spiker Shield nach der Anleitung mit den dazugehörigen Teilen zusammenzulöten.[https://backyardbrains.com/products/files/MuscleSpikerShield.v.2.11.BuildingInstructions.pdf]V2.11<br />
Nebenbei machten wir unsere ersten Schritte in Arduino.<br />
Als wir unsere mechatronischen Komponenten zusammengestellt und ein Grundverständnis von Arduino angeeignet haben, verbanden wir dies in einem Experiment. <br />
Das Experiment welches wir durchführten nennt man Control Machines with your Brain und ist auf der Seite von [https://backyardbrains.com/experiments/muscleSpikerShield/ Backyard Brains] nachzusehen.<br />
<br />
Für den Versuch wurden Elektroden an den Testpersonen angeschlossen und über den Arduino ausgelesen.<br />
Der Versuch wurde mit zwei Testpersonen durchgeführt. Dabei fiel uns nebst der Kontrolle der LED's auch auf, dass der Puls gemessen wurde. Dies unabhängig von der Position der Elektroden. Vermutlich reagieren die Elektroden zu sensitiv für diese Anwendung.<br />
<br />
<br />
[[File:UeberblickVersuchTeamD.jpg|400px|thumb|none|Versuchsaufbau]]<br />
[[File:Versuchsaufbau1TeamD.jpg|400px|thumb|none|Elektrodenbefestigung]]<br />
[[File:MessungDanielGlur.jpg|400px|thumb|none|Messung von Daniels Puls]]<br />
<br />
===Versuchsaufbau 2===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 2===<br />
<br />
Als zweites Experiment versuchten wir durch das anspannen der Muskeln einen Servomotor anzusteuern. Wie es auch auf der Homepage von [https://backyardbrains.com/experiments/MuscleSpikerShield_GripperHand/ Backyard Brains] anzutreffen ist. Dieser Versuch konnte aber leider aus Zeitgründen nicht zu Ende geführt werden. Wir konnten lediglich das Arduinoprogramm laden und etwas anpassen.<br />
<br />
===Reflexion===<br />
<br />
Der Hack 0 war in der Hinsicht sehr interessant, da wir alle unsere ersten Erfahrungen mit einem Arduino machen konnten. Einige von unserem Team hatten bisher auch noch nie auf einer Printplatte irgendwelche Widerstände oder Schalter etc. gelötet. Ebenso war es erstaunlich, dass man mit so wenig so viel verschiedene Sachen machen kann. Keiner von uns hat gedacht dass wir bereits am ersten Tag irgend etwas mit unseren Muskeln kontrollieren könnten. Insgesamt kam der Hack 0 gut bei uns an und wir alle konnten einiges davon profitieren und hoffentlich auch den weiteren Hacks weiterverwenden.<br />
<br />
== Hack 1: Baseball-Cap mit Ventilator ==<br />
<br />
Der Hack 1 beschreibt die Konzept- und Testphase des ersten Prototyps.<br />
<br />
Zu Beginn waren wir uns sehr unschlüssig was wir wirklich bauen wollen. Also entschieden wir uns für ein weiteres Experiment mit einem Bausatz von Backyard Brains. Wir versuchten durch die Funktion des Heart and Brain Spiker Shield einen Ventilator anzusteuern. Der Gedanke, welcher uns auf diese Idee führte, kennt wohl jeder Student. Während einer Prüfung kommt so mancher ins Grübeln und in harten Fällen kommt es auch vor dass einem eine Schweissperle von der Stirn läuft. Um in solchen Fällen für die nötige Kühlung zu sorgen, sollen Sensoren die Hirnströme gemessen und als Signal wiedergeben werden um damit einen Ventilator anzuschalten.<br />
<br />
Zu unserem eigenen Erstaunen erhielten wir sogar ein Signal aus unserer Messung. Es stellte sich aber sehr bald heraus, dass das wohl nicht die Hirnströme waren sondern eher Bewegungen des Kopfs und der Kabel. Denn die Sensoren sind recht empfindlich gegen solche Einflüsse. Zudem kam noch, dass die Sensoren über den Haaren angebracht wurden, was das Signal der Hirnströme noch zusätzlich verschlechterte. Nach einigen Versuchen sahen wir ein, dass das wohl eine zu grosse Herausforderung war und wir uns besser an einen einfacheren Versuch versuchen sollten.<br />
<br />
[[File:heart_and_brain.jpg|300px|thumb|none|Signal aus Messung der "Hirnströme"]]<br />
[[File:EEGDanielGlur.jpg|500px|thumb|none|Daniel beim messen der "Hirnströme"]]<br />
<br />
Also beschlossen wir uns anstelle der Hirnströme den Puls zu messen. Denn während einer Prüfung kann es durchaus auch vorkommen, dass der Puls etwas ansteigt. Die Messungen sollten dann ausgelesen werden und wenn der Puls eine gewisse Frequenz übersteigt, schaltet ein Ventilator ein um den Studenten wieder etwas zu beruhigen.<br />
<br />
Für diesen Versuch platzierten wir Sensoren am Unterarm und an der Handoberfläche. Idealerweise sollten laut Assistent Christian die Sensoren aber so weit wie möglich voneinander entfernt, an einer anderen Körperstelle angebracht werden um eine gewisse Referenz zu haben und um sicherzustellen, dass man wirklich den Puls misst. Unsere Kabel waren aber leider etwas zu kurz. Wir erhielten trotzdem ein relativ gutes Signal von welchem man davon ausgehen konnte, dass es sich um den Puls handelte. Jetzt nur noch das Signal auswerten, einen Frequenzbegrenzer programmieren und mithilfe von einem Arduino UNO den Ventilator ansteuern... Dachten wir... Dies war allerdings etwas Schwieriger als erwartet und überstieg unsere Kompetenzen. Das führte uns dazu auch diesen Versuch an dieser Stelle abzubrechen und nochmal zu überdenken.<br />
<br />
<br />
[[File:puls.png|400px|thumb|none|Pulssignal]]<br />
[[File:pulsmessung.jpg|400px|thumb|none|Pulssmessung]]<br />
<br />
<br />
Nun rannte uns schon langsam die Zeit davon. Doch dann kam uns die Idee, welche wir schon zu Beginn benötigt hätten. Und zwar wollten wir einen Ventilator auf einem Baseball-Cap anbringen und diesen ansteuern wenn ein gewisses Temperaturniveau unter dem Cap überschritten wird wird. Dazu wird ein 12V Ventilator via Relais von dem Arduino angesteuert. Weil der Arduino nur eine Spannung von 5V liefert, musste ein 12V Netzgerät den Ventilator mit Strom versorgen. Damit man den Ventilator so schalten konnte, damit er den Strom über das 12V Netzgerät bezieht, mussten wir noch ein Relais einbauen. Den Code für den Arduino bezogen wir aus verschiedenen ähnlichen Projekten aus dem Internet und passten ihn spezifisch für unsere Anwendung an. Für das auslesen der Temperatur mussten wir zuerst zwei Libreries herunterladen (DallasTemperature und OneWire).<br />
<br />
[[File:Komponente.PNG|400px|thumb|none|Verbaute Komponenten]]<br />
<br />
Nun mussten wir noch den Ventilator am Baseball-Cap anbringen. Dafür wurde eine Halterung im CAD konstruiert und mit einem 3D-Drucker ausgedruckt. Die Teile wurden danach zusammengesteckt und mit dem Baseball-Cap verschraubt. Natürlich wurde zuvor ein Loch in das Cap geschnitten, damit der Ventilator auch seinen Zweck erfüllen kann und dem Studenten einen kühlen Kopf verschafft.<br />
<br />
[[File:Aufbau.PNG|350px|thumb|none|3D-Modell im CAD]]<br />
<br />
[[File:Zusammenbau1.jpg|350px]]<br />
[[File:Zusammenbau2.jpg|350px]]<br />
<br />
Nun wurde unser Prototyp getestet. Der Sensor erfüllte seinen Dienst und wir konnten erfolgreich die Temperaturen messen. Jedoch war das Relais während dem Testen ständig eingeschalten und der Ventilator lief die ganze Zeit auch wenn die Temperatur den Minimalwert unterschritten hatte. Es hat sich also irgendwo in unserem Programm einen Fehler eingeschlichen. Den galt es nun zu finden und zu beheben. Dazu bauten wir einen Druckknopf ein um zu überprüfen ob das Relais defekt war und um die Fehlerquellen etwas einzugrenzen.<br />
<br />
[[File:Temperatur.jpg|350px]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/TQnGa5WiGS4<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
Der Druckknopf funktionierte, das Relais schaltete perfekt ein und aus und der Ventilator wurde an- und abgestellt. Somit wissen wir nun wo der Fehler zu suchen ist und können versuchen das Programm an diesen Stellen zu bereinigen. Nur ist jetzt schon Donnerstag Nachmittag und der Hack 2 hat schon begonnen. Wir alle wurden aufgefordert unseren bisherigen Prototypen aufzugeben und etwas neues, anderes zu versuchen und zu testen. Also legen wir schweren Herzens unser erster Prototyp beiseite und widmen unsere Kreativität dem nächsten Hack.<br />
<br />
=== Reflexion ===<br />
Der Hack 1 hat uns gezeigt, dass es gar nicht so einfach ist beim ersten Versuch ein brauchbares Resultat zu erzielen. Jedoch konnten wir so aus zwei vorhergehenden, fehlgeschlagenen Ansätzen eine Idee weiterentwickeln. Somit konnten wir mit unseren Kompetenzen und den Erfahrungen aus dem Hack 0 ein zufriedenstellendes Resultat erzielen. Durch die zwei Versuche zuvor ging leider recht viel Zeit "verloren", welche wir sehr benötigt hätten um unser erster Prototyp fehlerfrei hinzukriegen. Es war uns auch eine Lehre, dass man nicht zu lange an einer Sache verharren sollte wenn einem nur wenig Zeit zur Verfügung steht. Manchmal ist es besser man wirft alles nochmal über den Haufen und beginnt von vorne. Trotz allen Strapazen während des Hack 1 sind wir mit unserem ersten Prototyp sehr zufrieden und konnten auch bei diesem Versuch wieder viel profitieren und mitnehmen. Nun blicken wir gespannt nach vorne auf den nächsten Hack.<br />
<br />
<br />
===Code===<br />
<br />
Wir konnten zwar die Temperatur herauslesen und das Relais über einen Butten steuern, jedoch die Steuerung anhand der Temperatur geling uns nicht.<br />
<br />
<pre><br />
/********************************************************************/<br />
// First we include the libraries<br />
#include <OneWire.h> <br />
#include <DallasTemperature.h><br />
/********************************************************************/<br />
// Data wire is plugged into pin 2 on the Arduino <br />
#define ONE_WIRE_BUS 2 <br />
<br />
float tempReading;<br />
/********************************************************************/<br />
// Setup a oneWire instance to communicate with any OneWire devices <br />
// (not just Maxim/Dallas temperature ICs) <br />
OneWire oneWire(ONE_WIRE_BUS); <br />
/********************************************************************/<br />
// Pass our oneWire reference to Dallas Temperature. <br />
DallasTemperature sensors(&oneWire);<br />
/********************************************************************/ <br />
int relayPin = 4; // Relay Singnal lead to Digital Pin [D2-D12]<br />
<br />
float maxTemperature = 30.00; // The Max Temperature allowed<br />
float minTemperature = 25.00; // The Min Temperature allowed<br />
<br />
// constants won't change. They're used here to set pin numbers:<br />
const int buttonPin = 8; // the number of the pushbutton pin<br />
const int ledPin = 4; // the number of the LED pin<br />
<br />
// variables will change:<br />
int buttonState = 0; // variable for reading the pushbutton status<br />
<br />
void setup(void) {<br />
// initialize the LED pin as an output:<br />
pinMode(ledPin, OUTPUT);<br />
// initialize the pushbutton pin as an input:<br />
pinMode(buttonPin, INPUT);<br />
<br />
Serial.begin(9600); <br />
Serial.println("Dallas Temperature IC Control Library Demo"); <br />
// Start up the library <br />
sensors.begin(); <br />
}<br />
<br />
void loop(void) <br />
{ <br />
// call sensors.requestTemperatures() to issue a global temperature <br />
// request to all devices on the bus <br />
/********************************************************************/<br />
Serial.print(" Requesting temperatures..."); <br />
sensors.requestTemperatures(); // Send the command to get temperature readings <br />
Serial.println("DONE"); <br />
/********************************************************************/<br />
Serial.print("Temperature is: "); <br />
Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"? <br />
// You can have more than one DS18B20 on the same bus. <br />
// 0 refers to the first IC on the wire <br />
delay(1000); // Check Temperature every second<br />
<br />
float temperature = getTemperature();<br />
if(temperature >= maxTemperature){<br />
powerOnRelay();<br />
} else if (temperature <= minTemperature) {<br />
powerOffRelay();<br />
}<br />
delay(1000); // Check tempertature every second<br />
<br />
} <br />
void powerOnRelay() {<br />
digitalWrite(relayPin, HIGH);<br />
Serial.println("Relay On");<br />
}<br />
<br />
void powerOffRelay() {<br />
digitalWrite(relayPin, LOW);<br />
Serial.println("Relay Off");<br />
}<br />
float getTemperature(){<br />
tempReading = digitalRead(ONE_WIRE_BUS);<br />
<br />
// read the state of the pushbutton value:<br />
buttonState = digitalRead(buttonPin);<br />
<br />
// check if the pushbutton is pressed. If it is, the buttonState is HIGH:<br />
if (buttonState == HIGH) {<br />
// turn LED on:<br />
digitalWrite(ledPin, HIGH);<br />
} else {<br />
// turn LED off:<br />
digitalWrite(ledPin, LOW);<br />
}<br />
}<br />
</pre><br />
<br />
== Hack 2: Spritzenpumpe ==<br />
<br />
Nachdem der Hack 1 abgeschlossen war, machten wir uns aufs Neue darüber Gedanken was wir für einen Prototyp für den Hack 2 bauen wollen. Urs hat nach dem Abschluss von Hack 1 gesagt, wir sollten uns ein komplett neues Produkt überlegen, welches möglicherweise auch etwas mit der Medizintechnik zu tun hat. Nach einem Brainstorming kamen wir noch nicht so richtig auf einen grünen Zweig. So kamen wir auf die Idee uns einen Kaffee zu holen und einfach mal durch das FABLAB zu laufen um alles Mögliche anzuschauen, in die Hand zu nehmen und uns von all diesen Gegenständen inspirieren zu lassen. So kamen uns diverse Gegenstände in die Finger. darunter waren Servomotoren sowie einige DC-Motoren, eine Spritze, eine Pumpe, ein Micro-Switch Schalter, ein Potentiometer und vieles mehr. Diese Gegenstände haben wir dann auf unserem Gruppentisch ausgebreitet und uns Gedanken darüber gemacht was wir damit wohl anstellen konnten zum Thema Medizintechnik. So entstanden relativ schnell einige Ideen. Wir haben uns schlussendlich dafür entschieden ein Dosiergerät für eine medizinische Spritze zu machen. Dieses sollte so funktionieren, dass wir eine Spritze in eine Vorrichtung legen und über einen DC-Motor zum Einfahren bzw. Ausfahren bringen. Dazu muss die Drehbewegung des Motors in eine Lineare Bewegung umgeleitet werden. Zudem muss ggf. auch die Drehzahl des Motors durch ein Potentiometer reguliert werden können um einen zu schnellen Aus- oder Einfahrvorgang zu verhindern. Soviel zu zu den technischen Überlegungen. <br />
<br />
Sofort nach dem Entscheid suchten wir nach einem geeigneten Motor. Dieser sollte dabei eine eher tiefe Drehzahl haben damit die Spritze nur langsam ein- und ausfährt. Zudem suchten wir im Internet nach einem geeigneten Mechanismus der die Drehbewegung in eine lineare Bewegung umwandelt. Denn wir hatten leider zu wenig zeit um alles selber zu entwerfen und zu konstruieren. So wurden wir auf auf der Hompage von [https://www.thingiverse.com/thing:2797132/ Thingiverse] schliesslich fündig. Also konnte wir die Folgenden Komponenten herunterladen und mit dem 3D-Drucker ausdrucken.<br />
<br />
Komponenten: <gallery><br />
File:Halteplatte.PNG | Halteplatte<br />
File:Zahnrad.PNG | Zahnradpaar<br />
File:Zahnradpaar.PNG | Zahnstange<br />
File:Zahnstange.PNG | Zahnrad<br />
</gallery><br />
<br />
Da wir einen anderen Motor verwendeten als für diesen Mechanismus vorgesehen wäre, mussten wir noch eine passende Adapterplatte konstruieren, damit der Motor auch auf die Vorrichtung passt.<br />
<br />
<gallery><br />
File:Adapterplatte.PNG | Adapterplatte<br />
File:Motor.PNG | Motor<br />
File:Motor_mit_Adapter.jpg | Motor mit Adapter<br />
</gallery><br />
<br />
Der Motor benötigt, wie auch der Ventilator von Hack 1, eine Spannung von 12V für den Betrieb. Also mussten wir erneut das 12V Netzgerät verwenden. Damit unser zweiter Prototyp auch die gewünschte Fördermenge fördern kann, muss die Zeitdauer, in welcher gefördert werden soll, definiert werden. Das dazugehörige Programm wird mit einem Arduino UNO implementiert. Der Zugehörige Code haben wir durch Recherche im Internet und durch persönliches erweitern und anpassen erstellt. Die Drehzahl des Motors darf nicht zu hoch sein damit man die Fördermenge auch sinnvoll einstellen kann. Für diese Anwendung wird ein Potentiometer zwischen Relais und Motor gehängt. So kann die Motorspannung reguliert und die Drehzahl anforderungsgemäss eingestellt werden. Nachfolgend wird der Prozessablauf kurz beschrieben.<br />
<br />
Mit einem Knopfdruck wird wird ein Relais geschalten und der Motor wird angesteuert. Die Drehzahl des Motors wird über ein Getriebe reduziert. Die Zahnräder greifen auf eine Zahnstange und wandeln die Drehbewegung in eine lineare Bewegung um. An der Zahnstange wird der Stössel der Spritze befestigt. Der Rest der Spritze wird mit einem Kabelbinder fest mit der Bodenplatte verbunden damit sich dieser Teil nicht bewegen kann. Die programmierte Zeitdauer bestimmt welche Menge an Flüssigkeit gefördert werden soll.<br />
<br />
[[File:Pumpe.PNG|500px|thumb|none|Aufbau der Spritzenpumpe]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/PLG_S3GtVI8<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
=== Reflexion ===<br />
<br />
Anders als beim Hack 1 kamen waren wir uns bei diesem Hack sehr schnell einig was genau wir bauen möchten. Die ganze Ideenfindung erledigte sich sehr schnell und wir konnten nach bereits wenigen Stunden mit dem programmieren des Arduinos beginnen. Wie wir bereits im Hack 1 erfahren durften, ist das bei dem gedrängten Zeitplan dieser Woche ein grosser Vorteil. Rückblickend können wir urteilen, dass der Hack 2 aus unserer Sicht ein erfreuendes Erfolgserlebnis war. Unser zweiter Prototyp funktioniert genau so wie wir uns das von Beginn an vorgestellt haben. Per Knopfdruck fördert unser Prototyp eine gewisse Menge an Flüssigkeit.<br />
<br />
=== Code ===<br />
<br />
<pre><br />
<br />
bool geschaltet = false;<br />
int RelaisPin = 10; <br />
int tasterPin = 2;<br />
int empfindlichkeit = 200;<br />
<br />
void setup() {<br />
<br />
pinMode( tasterPin, INPUT_PULLUP);<br />
pinMode( RelaisPin, OUTPUT);<br />
<br />
}<br />
<br />
void loop() {<br />
<br />
if (digitalRead(tasterPin) == LOW) <br />
{<br />
if (geschaltet == false) {<br />
geschaltet = true;<br />
}<br />
else {<br />
geschaltet = false;<br />
}<br />
}<br />
<br />
if (geschaltet == true) {<br />
digitalWrite(RelaisPin, HIGH);<br />
delay(1000);<br />
geschaltet = false; <br />
}<br />
<br />
if (geschaltet == false) {<br />
digitalWrite(RelaisPin, LOW);<br />
}<br />
<br />
delay(empfindlichkeit);<br />
}<br />
</pre><br />
<br />
== Hack 3: Zinnguss ==<br />
<br />
= Skill-Share-Session =<br />
<br />
== Grundlagen der Arduinoprogrammierung ==<br />
<br />
Dieser Kurs wurde von unserer Gruppe angeboten und soll den Teilnehmern die Grundlage der Programierung eines Arduino UNO beibringen. Folgend werden die grundlegenden Befehle und deren Syntax vorgestellt. Der Aufbau folgt dem YouTube Tutorial von Max. Hier gelangst du zu dem Link: [https://www.youtube.com/watch?v=eaFvQG8wrGw&list=PLAB63281B90FB376E&index=3]<br />
<br />
=== Skript ===<br />
Der Code wird in einem Skript geschrieben. Dieses ist in zwei Bereiche aufgeteilt<br />
* Void setup() Dieses Skript wird einmalig ausgeführt und enthält zB. Input und output<br />
* Void loop() Dieser Teil des Skripts wird als Dauerschleife wiederholt<br />
<br />
==== Befehlseingabe ====<br />
<br />
Die Befehle werden nach folgender Syntax eingegeben:<br />
<br />
* Funktion(Parameter1, Parameter2);<br />
<br />
Dabei muss das «;» gesetzte werden, ausserdem spielen Gross- und Kleinbuchstaben eine Rolle.<br />
<br />
=== Variablen ===<br />
Übersichtshalber sollen sprechende Namen für die Bezeichnung von z.B. Outputs verwendet werden. Dabei können verschiedene Datentypen ausgewählt werden.<br />
<br />
==== Datentyp ====<br />
* int Ganze Zahlen von -32768 … 32767 z.B. 1, 48, -654<br />
* boolean Entweder true oder false<br />
* byte 8 Bit an Informationen z.B. 00010101 (=21)<br />
* char enthält 1 Byte Informationen, das ein Zeichen darstellt z.B. 65 = A<br />
* long grosse Zahlen von ca. -2.1 Milliarden bis 2.1 Milliarden z.B. 15636451<br />
* float Komazahlen z.B. 5.498<br />
* string Zeichenketten z.B. «Do it yourself»<br />
<br />
==== Deklaration Syntax ====<br />
<br />
* Datentyp Name = Wert;<br />
<br />
oder<br />
<br />
* Datentyp Name;<br />
* Name = Wert;<br />
<br />
====Ort der Deklaration====<br />
<br />
Die Variable muss immer im Teil des Skriptes deklariert sein, wo sie auch gebraucht wird. Wird die Variable im setup wie auch im loop benötigt, so kann man die Variable als sogenannte globale Variable oberhalb des Setups deklarieren.<br />
<br />
===If-Schleife===<br />
<br />
Bei der If-Schleife wird der Wert einer Variablen mit einem Vergleichswert verglichen. Falls der Vergleich positiv ist, wird der Code ausgeführt, ansonsten übersprungen. Dazu sind Vergleichsoperatoren notwendig.<br />
<br />
====Syntax====<br />
<br />
if(Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
====Vergleichsoperatoren====<br />
<br />
* == gleich<br />
* != ungleich<br />
* < kleiner<br />
* < grösser<br />
* <= kleiner gleich<br />
* >= grösser gleich<br />
<br />
===While-Schleife===<br />
<br />
Mit der While-Schleife wird die Bedingung fortlaufend geprüft. Stimmt diese, wird der Code ausgeführt, ansonsten wird der Code übersprungen. Es können die selben Vergleichsoperatoren wie bei der If-Schleife verwendet werden.<br />
<br />
====Syntax====<br />
<br />
while (Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
==Bildgebende Verfahren==<br />
<br />
Der Tag begann mit einer Einführung in die Bildgebenden Verfahren durch David Stadelmann. Hierbei erklärte er uns, verschiedene Methoden, um Bilder aus dem Körperinneren zu machen und welche Methode für die verschiedenen Gewebetypen gebraucht werden. Zudem Zeigte und erklärte er uns anhand von Beispielen was die Einzelnen Schattierungen aussagen könnten.<br />
<br />
[[DIY-MedTech Bildgebende Verfahren-Unterschiedliche Bildeindrücke - Team Frosch]]<br />
<br />
==Synths & Sound ==<br />
<br />
Danach ging es weiter mit dem Kurs Synths & Sounds. Diese Session wurde von [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] durchgeführt. Hierbei zeigte er uns, wie man mit verschieden erzeugten Schwingungen eine grosse Variation von Tönen generiert kann. Zudem auch wie man elektronisch gewisse Instrumente Simulieren könnte und durch die Aneinanderreihung verschiedenster Tonvariationen eine Melodie enstehen kann. Dies mit unterschiedlich Variationen von selbstgebauten Synthesizers.<br />
<br />
<gallery><br />
File:Sinthesizer1.jpg | Synthesizer 1<br />
File:Synthesizer2.jpg | Synthesizer 2<br />
</gallery><br />
<br />
== Schweissen ==<br />
<br />
Bei dem Skill-Share Workshop von [https://www.hackteria.org/wiki/Team_G2020/ Team G2020] konnten wir verschiedene Schweissverfahren kennenlernen und auch gleich anwenden.<br />
<br />
Es wurde uns das [https://de.wikipedia.org/wiki/Lichtbogenhandschwei%C3%9Fen/ Elektrodenschweissen], das [https://de.wikipedia.org/wiki/Schutzgasschwei%C3%9Fen/ MIG-Schweissen] und das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] nähergebracht.<br />
<br />
Dieser Workshop war für uns alle sehr interessant, da sich bisher noch keiner von uns so wirklich mit dem Schweissen und den verschiedenen Verfahren auskannte. An diesem Tag konnten wir nach einer kurzen Theorie gleich sofort selber handanlegen und die verschiedenen Schweissverfahren ausprobieren.<br />
<br />
Dabei mussten wir feststellen, dass es gar nicht so einfach ist wie es immer aussieht. Besonders das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] braucht sehr viel Übung und Geschick um wirklich schöne Schweissergebnisse zu erzielen.<br />
<br />
== Autonomes Nervensystem und das Hören in der Medizin ==<br />
<br />
Der Assistent Dr. Christian Gehringer, MSc. (ETH) hielt uns einen sehr interessanten Vortrag. Dabei ging es darum, dass wir die Anatomie kennenlernen und erkunden am Beispiel des Hörens z.B mit einem Stethoskop.<br />
<br />
[https://www.hackteria.org/wiki/Autonomes_Nervensystem_und_das_H%C3%B6ren_in_der_Medizin/ Autonomes Nervensystem und das Hören in der Medizin]</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=MedTechDIY20_Die_Profis&diff=41657MedTechDIY20 Die Profis2020-02-09T11:50:14Z<p>Tnroth: /* Hack 3: Zinnguss */</p>
<hr />
<div>Hier gehts zurück auf: [[Medizintechnik DIY]]<br />
<br />
[[File:DieProfis.png|700px|right|none|Wochenplan]]<br />
<br />
= Team =<br />
<br />
'''Die Profis''' besteht aus den drei Studierenden '''Daniel Glur''', '''Lukas Roth''' und '''Daniel Zellweger''' der Hochschule Luzern. Im Rahmen der Blockwoche "DIY Medizintechnik" formierte sich das Team aus verschiedenen Studiengängen um auch interdisziplinär voneinander zu lernen und Wissen auszutauschen.<br />
<br />
'''Mitglieder:'''<br />
<br />
Maschinentechnik: <gallery><br />
File:DanielGlur.jpg | Daniel Glur<br />
File:LukasRoth.jpg | Lukas Roth<br />
</gallery><br />
<br />
Medizintechnik: <gallery><br />
File:DanielZellweger.jpg | Daniel Zellweger<br />
</gallery><br />
<br />
= Pflichtlektüre =<br />
<br />
'''How to control someone else's arm with your brain | Greg Gage'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/rSQNi5sAwuc<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
In Diesem Video wird gezeigt wie man über die Aufnahme eines Biologischen Signals, dieses an eine zweite Person weitergeleitet werden kann.<br />
Dies funktioniert jedoch nur aus verschiedenen Gründen bedingt. Nebst den allgemeinen Störeinflüsse aus der Messtechnik, kommen zusätzlich noch jene der Ansteuerung. Da das Signal nur von einzelnen Muskelfasern abgefangen wird, kann dieses nicht sämtliche Muskelfasern der zweiten Person Reizen. Dies hat zur folge, dass nur eine annähernd ähnliche Bewegung des Armes arfolgt.<br />
<br />
<br />
'''What is Open Source explained in LEGO'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/a8fHgx9mE5U<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Durch die Verwendung der Open Source Methode erhält man die Möglichkeit während des Projektes noch Erweiterungen oder Veränderungen anzustreben.<br />
<br />
'''"Why toys make good medical devices | Jose Gomez-Marquez'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/UHCT9SOBHs0<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Nebst dem Preis besitzen Spielzeuge diverse spezifische Funktionen. Da diese meist günstige Anschaffung auch einfach verändert werden kann, sind sie sehr geeignet dafür umgebaut zu werden. Somit sind Spielzeuge welche chemische oder sensorische Funktionen besitzen ein gefundenes fressen für den Hacker und eine Alternative für Regionen in welchen die finanzielle Situation teure Medizinprodukte nicht erlauben.<br />
<br />
= Einleitung =<br />
Die Blockwoche "DIY Medizintechnik" verbindet Anwendungen der Medizintechnik mit Do It Yourself (DIY) Ansätzen. Dadurch wird das tiefere Verständnis von Medizintechnischen Geräten durch einen direkten, interdisziplinären und möglichst selbstgesteuerten Zugang gefördert. Basierend auf verschiedenen elektrophysiologischen Messmodulen (EMG, EKG, EOG, EEG) entwickeln die Studierenden im Team Ideen für innovative Projekte. Erste Prototypen werden mit den Mitteln der Digitalen Fabrikation hergestellt und getestet. Tag für Tag stehen produktive "Hacks" auf dem Programm. Hacks sind sehr praxisbezogene Arbeitssequenzen wo die Studierenden Experimente durchführen sowie Prototypen entwickeln und bauen können. Dabei ist aber nicht nur die Medizintechnik zentral sondern auch der Interdisziplinäre Austausch sowie eine Skill-Share-Session wo die Studierenden ganz nach dem do it yourself Gedanken einen eigenen Workshop leiten können.<br />
Alle Erkenntnisse und Erfahrungen werden laufend in einem eigenen Wiki-Eintrag festgehalten und dokumentiert.<br />
<br />
Die Blockwoche wird von den beiden Dozenten [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] und [https://www.hackteria.org/wiki/Gaudi/ Urs Gaudenz] duchgeführt. Unterstützt wurden die Beiden von '''Dr. Christian Gehringer, MSc. (ETH)''' und [http://chrisobrist.ch/about// Chris Obrist]<br />
<br />
Maschinentechnik: <gallery><br />
File:MarkDusseiller.jpg | Dr. Marc R. Dusseiller<br />
File:UrsGaudenz.jpg | Urs Gaudenz<br />
</gallery><br />
<br />
= Planung =<br />
<br />
Die Blockwoche wird wie in folgendem Wochenplan unterteilt:<br />
<br />
[[File:Wochenplan2020.jpg|700px|thumb|none|Wochenplan]]<br />
<br />
= Wochenrückblick =<br />
== Die Woche in Bilder==<br />
[[File:ProfisInAction.PNG|400px]]<br />
[[File:Komponente.PNG|300px]]<br />
[[File:Aufbau.PNG|400px]]<br />
[[File:Motor_mit_Adapter.jpg|300px]]<br />
[[File:Pumpe.PNG|350px]]<br />
[[File:pulsmessung.jpg|450px]]<br />
[[File:Zusammenbau2.jpg|300px]]<br />
[[File:Foto 07.02.20, 11 14 53.jpg|300px]]<br />
[[File:DanielZellweger.jpg|300px]]<br />
<br />
== Tag 1==<br />
'''Einführung'''<br />
<br />
Wir traffen uns zu beginn im FABLAB, wo sich die Dozenten vorstellten und uns über Ihren bisherigen Werdegang informierten. Das interessante an der beruflichen Laufbahn der beiden ist, dass beide ein Studium abgeschlossen haben und heute einer Tätigkeit nachgehen, welche eigentlich nicht mehr viel mit dem damaligen Studium zu tun hat. Das vermittelt unserer Meinung nach, den Studenten eine etwas andere Sichtweise als die technische Hochschule. Es zeigt z.B. dass man nach einem Studium nicht gezwungen ist auf diesem Fachgebiet zu arbeiten sondern dass der Arbeitsmarkt noch sehr viele andere Möglichkeiten zu bieten hat.<br />
<br />
Nachdem sie sich Vorgestellt haben, stellten sie uns auch noch den Assistent vor. Dieser ist ein ausgebildeter Arzt welcher sich momentan für seinen zweiten Doktortitel engagiert. Von Ihm und seinem grossen medizinischen Fachwissen können wir als Studenten die ganze Woche profitieren.<br />
<br />
Danach überliessen die Dozenten uns Studenten das Wort. Es war eine etwas andere Vorstellungsrunde wie man sie noch nicht kannte. Dazu stand uns ein ganzer Tisch mit kuriosen Gegenständen, welche etwas mit dem DIY Gedanke zu tun haben, zur verfügung. Sie vorderten uns alle auf einen Gegenstand auszuwählen. Danach mussten wir uns Vorstellen und noch ein paar Worte dazu verlieren welche Gemeinsamkeiten wir mit dem ausgesuchten Gegenstand teilen.<br />
<br />
'''DIY (Do It Yourself)'''<br />
<br />
Das DIY Prinzip basiert auf eigenem experimentieren und learning by doing<br />
<br />
{{#widget:Iframe<br />
|url= https://www.youtube.com/watch?v=3zH_J12G9sQ<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
<br />
'''How to use Wiki'''<br />
<br />
Durch die 45 minütige Einführung in die Handhabung das Wiki durch Dr. Marc R. Dusseiller waren wir bereit unsere Erkenntnisse und Projekte, welche wir in dieser Woche erfahren und durchführen werden, in einer Zugänglichen Form, niederzuschreiben.<br />
<br />
== Tag 2 ==<br />
Am zweiten Tag begannen wir die Vorbereitung Skill-Share-Session. Diesbezüglich sollte jeder Teilnehmer einen Skill, welcher er erlernen möchte und einen Skill, den man beibringen könnte notieren. Diese wurden dann auf einer Tafel in Cluster aufgeteilt. Zwölf davon wurden als Skill-Share Workshops ausgewählt und die Teilnehmer konnten sich nach Belieben einschreiben.<br />
<br />
[[File:SkillSession2020.jpg|500px|thumb|none|Skill-share-session]]<br />
<br />
Während des zweiten Teils arbeiteten wir an unserem Experiment weiter, welches wir am Vortag begonnen haben.<br />
Dazu mussten wir die elektronischen Bauteile mit unserem Laptop verbinden und einen vorgefertigten Sketch laufen lassen.<br />
<br />
Nachdem wir den ersten Versuch erfolgreich durchführen konnten, versuchten wir mit dem Arduino einen Stepmotor anzusteuern. Dabei stiessen wir jedoch auf einige Schwierigkeiten. Da wir diese bis zur Einführung des Lasercutters und des 3D-Druckers fertig haben sollten. Siehe [[#Hack 0]]<br />
<br />
Unteranderem wurde unsere Skill-Share-Session über Arduino vorbereitet.<br />
<br />
Am Abend kam [http://chrisobrist.ch/about// Chris Obrist] zu Besuch und unterhielt uns mit einer wundervollen musikalischen Darbietung.<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/Hj1Ogr8137o<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
== Tag 3 ==<br />
Von 9:00 Uhr bis nach dem Mittag um 14:00 Uhr waren wir alle mit der [[#Skill-Share-Session]] beschäftigt.<br />
<br />
Danach hatten wir Zeit um den nächsten Hack vorzubereiten und zu planen.<br />
<br />
== Tag 4 ==<br />
Den Vormittag verbrachten wir weiter mit dem Hack 1, welchen wir dann vor der Mittagspause den Dozenten und allen Mitstudierenden präsentieren durften. Leider litten wir während des ganzen Hack 1 sehr unter Zeitdruck, was auf eine turbulente Projektphase zurückzuführen ist. Mehr dazu erfährst du im [[#Hack 1]].<br />
<br />
Nach einer kurzen Inspirationphase entschieden wir uns dafür eine kleine Spritzenpumpe zu basteln. [[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 5 ==<br />
Am Tag 5 ging es darum die Einzelteile physikalisch sowie über ein Funktionierendes Arduinoprogamm zum laufen zu bringen.<br />
[[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 6 ==<br />
Zum Abschluss durften wir alle Hacks der verschiedenen Teams begutachten. Interessant waren die spontanen Vorgehensweisen und auch die daraus entstandenen Produkte. Viele Teams suchten zuerst das Material und erst danach die Ideen. So entstanden die unterschiedlichsten Prototypen.<br />
Zudem Reflektierten wird die Blockwoche. Im Allgemeinen gefielen die Freiheit und auch der unkomplizierte Teamgeist untereinander. Besten Dank auch an die Organisatoren der Blockwoche.<br />
<br />
= Experimente =<br />
Bei den Experimenten sollte es darum gehen aus unterschiedlichsten Einzelteilen ein Produkt zu erschaffen. Dieser Prozess brachte uns dazu über die Grenzen unseres altäglichem Denken zu springen und in der Verbindung der einzelnen Bereiche solcher Produkte besser zu verstehen.<br />
<br />
== Hack 0 ==<br />
<br />
<br />
===Versuchsaufbau 1===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 1===<br />
Nach den Inputs der Dozenten verbrachten wir hauptsächlich die Zeit damit den Muscle Spiker Shield nach der Anleitung mit den dazugehörigen Teilen zusammenzulöten.[https://backyardbrains.com/products/files/MuscleSpikerShield.v.2.11.BuildingInstructions.pdf]V2.11<br />
Nebenbei machten wir unsere ersten Schritte in Arduino.<br />
Als wir unsere mechatronischen Komponenten zusammengestellt und ein Grundverständnis von Arduino angeeignet haben, verbanden wir dies in einem Experiment. <br />
Das Experiment welches wir durchführten nennt man Control Machines with your Brain und ist auf der Seite von [https://backyardbrains.com/experiments/muscleSpikerShield/ Backyard Brains] nachzusehen.<br />
<br />
Für den Versuch wurden Elektroden an den Testpersonen angeschlossen und über den Arduino ausgelesen.<br />
Der Versuch wurde mit zwei Testpersonen durchgeführt. Dabei fiel uns nebst der Kontrolle der LED's auch auf, dass der Puls gemessen wurde. Dies unabhängig von der Position der Elektroden. Vermutlich reagieren die Elektroden zu sensitiv für diese Anwendung.<br />
<br />
<br />
[[File:UeberblickVersuchTeamD.jpg|400px|thumb|none|Versuchsaufbau]]<br />
[[File:Versuchsaufbau1TeamD.jpg|400px|thumb|none|Elektrodenbefestigung]]<br />
[[File:MessungDanielGlur.jpg|400px|thumb|none|Messung von Daniels Puls]]<br />
<br />
===Versuchsaufbau 2===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 2===<br />
<br />
Als zweites Experiment versuchten wir durch das anspannen der Muskeln einen Servomotor anzusteuern. Wie es auch auf der Homepage von [https://backyardbrains.com/experiments/MuscleSpikerShield_GripperHand/ Backyard Brains] anzutreffen ist. Dieser Versuch konnte aber leider aus Zeitgründen nicht zu Ende geführt werden. Wir konnten lediglich das Arduinoprogramm laden und etwas anpassen.<br />
<br />
===Reflexion===<br />
<br />
Der Hack 0 war in der Hinsicht sehr interessant, da wir alle unsere ersten Erfahrungen mit einem Arduino machen konnten. Einige von unserem Team hatten bisher auch noch nie auf einer Printplatte irgendwelche Widerstände oder Schalter etc. gelötet. Ebenso war es erstaunlich, dass man mit so wenig so viel verschiedene Sachen machen kann. Keiner von uns hat gedacht dass wir bereits am ersten Tag irgend etwas mit unseren Muskeln kontrollieren könnten. Insgesamt kam der Hack 0 gut bei uns an und wir alle konnten einiges davon profitieren und hoffentlich auch den weiteren Hacks weiterverwenden.<br />
<br />
== Hack 1: Baseball-Cap mit Ventilator ==<br />
<br />
Der Hack 1 beschreibt die Konzept- und Testphase des ersten Prototyps.<br />
<br />
Zu Beginn waren wir uns sehr unschlüssig was wir wirklich bauen wollen. Also entschieden wir uns für ein weiteres Experiment mit einem Bausatz von Backyard Brains. Wir versuchten durch die Funktion des Heart and Brain Spiker Shield einen Ventilator anzusteuern. Der Gedanke, welcher uns auf diese Idee führte, kennt wohl jeder Student. Während einer Prüfung kommt so mancher ins Grübeln und in harten Fällen kommt es auch vor dass einem eine Schweissperle von der Stirn läuft. Um in solchen Fällen für die nötige Kühlung zu sorgen, sollen Sensoren die Hirnströme gemessen und als Signal wiedergeben werden um damit einen Ventilator anzuschalten.<br />
<br />
Zu unserem eigenen Erstaunen erhielten wir sogar ein Signal aus unserer Messung. Es stellte sich aber sehr bald heraus, dass das wohl nicht die Hirnströme waren sondern eher Bewegungen des Kopfs und der Kabel. Denn die Sensoren sind recht empfindlich gegen solche Einflüsse. Zudem kam noch, dass die Sensoren über den Haaren angebracht wurden, was das Signal der Hirnströme noch zusätzlich verschlechterte. Nach einigen Versuchen sahen wir ein, dass das wohl eine zu grosse Herausforderung war und wir uns besser an einen einfacheren Versuch versuchen sollten.<br />
<br />
[[File:heart_and_brain.jpg|300px|thumb|none|Signal aus Messung der "Hirnströme"]]<br />
[[File:EEGDanielGlur.jpg|500px|thumb|none|Daniel beim messen der "Hirnströme"]]<br />
<br />
Also beschlossen wir uns anstelle der Hirnströme den Puls zu messen. Denn während einer Prüfung kann es durchaus auch vorkommen, dass der Puls etwas ansteigt. Die Messungen sollten dann ausgelesen werden und wenn der Puls eine gewisse Frequenz übersteigt, schaltet ein Ventilator ein um den Studenten wieder etwas zu beruhigen.<br />
<br />
Für diesen Versuch platzierten wir Sensoren am Unterarm und an der Handoberfläche. Idealerweise sollten laut Assistent Christian die Sensoren aber so weit wie möglich voneinander entfernt, an einer anderen Körperstelle angebracht werden um eine gewisse Referenz zu haben und um sicherzustellen, dass man wirklich den Puls misst. Unsere Kabel waren aber leider etwas zu kurz. Wir erhielten trotzdem ein relativ gutes Signal von welchem man davon ausgehen konnte, dass es sich um den Puls handelte. Jetzt nur noch das Signal auswerten, einen Frequenzbegrenzer programmieren und mithilfe von einem Arduino UNO den Ventilator ansteuern... Dachten wir... Dies war allerdings etwas Schwieriger als erwartet und überstieg unsere Kompetenzen. Das führte uns dazu auch diesen Versuch an dieser Stelle abzubrechen und nochmal zu überdenken.<br />
<br />
<br />
[[File:puls.png|400px|thumb|none|Pulssignal]]<br />
[[File:pulsmessung.jpg|400px|thumb|none|Pulssmessung]]<br />
<br />
<br />
Nun rannte uns schon langsam die Zeit davon. Doch dann kam uns die Idee, welche wir schon zu Beginn benötigt hätten. Und zwar wollten wir einen Ventilator auf einem Baseball-Cap anbringen und diesen ansteuern wenn ein gewisses Temperaturniveau unter dem Cap überschritten wird wird. Dazu wird ein 12V Ventilator via Relais von dem Arduino angesteuert. Weil der Arduino nur eine Spannung von 5V liefert, musste ein 12V Netzgerät den Ventilator mit Strom versorgen. Damit man den Ventilator so schalten konnte, damit er den Strom über das 12V Netzgerät bezieht, mussten wir noch ein Relais einbauen. Den Code für den Arduino bezogen wir aus verschiedenen ähnlichen Projekten aus dem Internet und passten ihn spezifisch für unsere Anwendung an. Für das auslesen der Temperatur mussten wir zuerst zwei Libreries herunterladen (DallasTemperature und OneWire).<br />
<br />
[[File:Komponente.PNG|400px|thumb|none|Verbaute Komponenten]]<br />
<br />
Nun mussten wir noch den Ventilator am Baseball-Cap anbringen. Dafür wurde eine Halterung im CAD konstruiert und mit einem 3D-Drucker ausgedruckt. Die Teile wurden danach zusammengesteckt und mit dem Baseball-Cap verschraubt. Natürlich wurde zuvor ein Loch in das Cap geschnitten, damit der Ventilator auch seinen Zweck erfüllen kann und dem Studenten einen kühlen Kopf verschafft.<br />
<br />
[[File:Aufbau.PNG|350px|thumb|none|3D-Modell im CAD]]<br />
<br />
[[File:Zusammenbau1.jpg|350px]]<br />
[[File:Zusammenbau2.jpg|350px]]<br />
<br />
Nun wurde unser Prototyp getestet. Der Sensor erfüllte seinen Dienst und wir konnten erfolgreich die Temperaturen messen. Jedoch war das Relais während dem Testen ständig eingeschalten und der Ventilator lief die ganze Zeit auch wenn die Temperatur den Minimalwert unterschritten hatte. Es hat sich also irgendwo in unserem Programm einen Fehler eingeschlichen. Den galt es nun zu finden und zu beheben. Dazu bauten wir einen Druckknopf ein um zu überprüfen ob das Relais defekt war und um die Fehlerquellen etwas einzugrenzen.<br />
<br />
[[File:Temperatur.jpg|350px]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/TQnGa5WiGS4<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
Der Druckknopf funktionierte, das Relais schaltete perfekt ein und aus und der Ventilator wurde an- und abgestellt. Somit wissen wir nun wo der Fehler zu suchen ist und können versuchen das Programm an diesen Stellen zu bereinigen. Nur ist jetzt schon Donnerstag Nachmittag und der Hack 2 hat schon begonnen. Wir alle wurden aufgefordert unseren bisherigen Prototypen aufzugeben und etwas neues, anderes zu versuchen und zu testen. Also legen wir schweren Herzens unser erster Prototyp beiseite und widmen unsere Kreativität dem nächsten Hack.<br />
<br />
=== Reflexion ===<br />
Der Hack 1 hat uns gezeigt, dass es gar nicht so einfach ist beim ersten Versuch ein brauchbares Resultat zu erzielen. Jedoch konnten wir so aus zwei vorhergehenden, fehlgeschlagenen Ansätzen eine Idee weiterentwickeln. Somit konnten wir mit unseren Kompetenzen und den Erfahrungen aus dem Hack 0 ein zufriedenstellendes Resultat erzielen. Durch die zwei Versuche zuvor ging leider recht viel Zeit "verloren", welche wir sehr benötigt hätten um unser erster Prototyp fehlerfrei hinzukriegen. Es war uns auch eine Lehre, dass man nicht zu lange an einer Sache verharren sollte wenn einem nur wenig Zeit zur Verfügung steht. Manchmal ist es besser man wirft alles nochmal über den Haufen und beginnt von vorne. Trotz allen Strapazen während des Hack 1 sind wir mit unserem ersten Prototyp sehr zufrieden und konnten auch bei diesem Versuch wieder viel profitieren und mitnehmen. Nun blicken wir gespannt nach vorne auf den nächsten Hack.<br />
<br />
<br />
===Code===<br />
<br />
Wir konnten zwar die Temperatur herauslesen und das Relais über einen Butten steuern, jedoch die Steuerung anhand der Temperatur geling uns nicht.<br />
<br />
<pre><br />
/********************************************************************/<br />
// First we include the libraries<br />
#include <OneWire.h> <br />
#include <DallasTemperature.h><br />
/********************************************************************/<br />
// Data wire is plugged into pin 2 on the Arduino <br />
#define ONE_WIRE_BUS 2 <br />
<br />
float tempReading;<br />
/********************************************************************/<br />
// Setup a oneWire instance to communicate with any OneWire devices <br />
// (not just Maxim/Dallas temperature ICs) <br />
OneWire oneWire(ONE_WIRE_BUS); <br />
/********************************************************************/<br />
// Pass our oneWire reference to Dallas Temperature. <br />
DallasTemperature sensors(&oneWire);<br />
/********************************************************************/ <br />
int relayPin = 4; // Relay Singnal lead to Digital Pin [D2-D12]<br />
<br />
float maxTemperature = 30.00; // The Max Temperature allowed<br />
float minTemperature = 25.00; // The Min Temperature allowed<br />
<br />
// constants won't change. They're used here to set pin numbers:<br />
const int buttonPin = 8; // the number of the pushbutton pin<br />
const int ledPin = 4; // the number of the LED pin<br />
<br />
// variables will change:<br />
int buttonState = 0; // variable for reading the pushbutton status<br />
<br />
void setup(void) {<br />
// initialize the LED pin as an output:<br />
pinMode(ledPin, OUTPUT);<br />
// initialize the pushbutton pin as an input:<br />
pinMode(buttonPin, INPUT);<br />
<br />
Serial.begin(9600); <br />
Serial.println("Dallas Temperature IC Control Library Demo"); <br />
// Start up the library <br />
sensors.begin(); <br />
}<br />
<br />
void loop(void) <br />
{ <br />
// call sensors.requestTemperatures() to issue a global temperature <br />
// request to all devices on the bus <br />
/********************************************************************/<br />
Serial.print(" Requesting temperatures..."); <br />
sensors.requestTemperatures(); // Send the command to get temperature readings <br />
Serial.println("DONE"); <br />
/********************************************************************/<br />
Serial.print("Temperature is: "); <br />
Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"? <br />
// You can have more than one DS18B20 on the same bus. <br />
// 0 refers to the first IC on the wire <br />
delay(1000); // Check Temperature every second<br />
<br />
float temperature = getTemperature();<br />
if(temperature >= maxTemperature){<br />
powerOnRelay();<br />
} else if (temperature <= minTemperature) {<br />
powerOffRelay();<br />
}<br />
delay(1000); // Check tempertature every second<br />
<br />
} <br />
void powerOnRelay() {<br />
digitalWrite(relayPin, HIGH);<br />
Serial.println("Relay On");<br />
}<br />
<br />
void powerOffRelay() {<br />
digitalWrite(relayPin, LOW);<br />
Serial.println("Relay Off");<br />
}<br />
float getTemperature(){<br />
tempReading = digitalRead(ONE_WIRE_BUS);<br />
<br />
// read the state of the pushbutton value:<br />
buttonState = digitalRead(buttonPin);<br />
<br />
// check if the pushbutton is pressed. If it is, the buttonState is HIGH:<br />
if (buttonState == HIGH) {<br />
// turn LED on:<br />
digitalWrite(ledPin, HIGH);<br />
} else {<br />
// turn LED off:<br />
digitalWrite(ledPin, LOW);<br />
}<br />
}<br />
</pre><br />
<br />
== Hack 2: Spritzenpumpe ==<br />
<br />
Nachdem der Hack 1 abgeschlossen war, machten wir uns aufs Neue darüber Gedanken was wir für einen Prototyp für den Hack 2 bauen wollen. Urs hat nach dem Abschluss von Hack 1 gesagt, wir sollten uns ein komplett neues Produkt überlegen, welches möglicherweise auch etwas mit der Medizintechnik zu tun hat. Nach einem Brainstorming kamen wir noch nicht so richtig auf einen grünen Zweig. So kamen wir auf die Idee uns einen Kaffee zu holen und einfach mal durch das FABLAB zu laufen um alles Mögliche anzuschauen, in die Hand zu nehmen und uns von all diesen Gegenständen inspirieren zu lassen. So kamen uns diverse Gegenstände in die Finger. darunter waren Servomotoren sowie einige DC-Motoren, eine Spritze, eine Pumpe, ein Micro-Switch Schalter, ein Potentiometer und vieles mehr. Diese Gegenstände haben wir dann auf unserem Gruppentisch ausgebreitet und uns Gedanken darüber gemacht was wir damit wohl anstellen konnten zum Thema Medizintechnik. So entstanden relativ schnell einige Ideen. Wir haben uns schlussendlich dafür entschieden ein Dosiergerät für eine medizinische Spritze zu machen. Dieses sollte so funktionieren, dass wir eine Spritze in eine Vorrichtung legen und über einen DC-Motor zum Einfahren bzw. Ausfahren bringen. Dazu muss die Drehbewegung des Motors in eine Lineare Bewegung umgeleitet werden. Zudem muss ggf. auch die Drehzahl des Motors durch ein Potentiometer reguliert werden können um einen zu schnellen Aus- oder Einfahrvorgang zu verhindern. Soviel zu zu den technischen Überlegungen. <br />
<br />
Sofort nach dem Entscheid suchten wir nach einem geeigneten Motor. Dieser sollte dabei eine eher tiefe Drehzahl haben damit die Spritze nur langsam ein- und ausfährt. Zudem suchten wir im Internet nach einem geeigneten Mechanismus der die Drehbewegung in eine lineare Bewegung umwandelt. Denn wir hatten leider zu wenig zeit um alles selber zu entwerfen und zu konstruieren. So wurden wir auf auf der Hompage von [https://www.thingiverse.com/thing:2797132/ Thingiverse] schliesslich fündig. Also konnte wir die Folgenden Komponenten herunterladen und mit dem 3D-Drucker ausdrucken.<br />
<br />
Komponenten: <gallery><br />
File:Halteplatte.PNG | Halteplatte<br />
File:Zahnrad.PNG | Zahnradpaar<br />
File:Zahnradpaar.PNG | Zahnstange<br />
File:Zahnstange.PNG | Zahnrad<br />
</gallery><br />
<br />
Da wir einen anderen Motor verwendeten als für diesen Mechanismus vorgesehen wäre, mussten wir noch eine passende Adapterplatte konstruieren, damit der Motor auch auf die Vorrichtung passt.<br />
<br />
<gallery><br />
File:Adapterplatte.PNG | Adapterplatte<br />
File:Motor.PNG | Motor<br />
File:Motor_mit_Adapter.jpg | Motor mit Adapter<br />
</gallery><br />
<br />
Der Motor benötigt, wie auch der Ventilator von Hack 1, eine Spannung von 12V für den Betrieb. Also mussten wir erneut das 12V Netzgerät verwenden. Damit unser zweiter Prototyp auch die gewünschte Fördermenge fördern kann, muss die Zeitdauer, in welcher gefördert werden soll, definiert werden. Das dazugehörige Programm wird mit einem Arduino UNO implementiert. Der Zugehörige Code haben wir durch Recherche im Internet und durch persönliches erweitern und anpassen erstellt. Die Drehzahl des Motors darf nicht zu hoch sein damit man die Fördermenge auch sinnvoll einstellen kann. Für diese Anwendung wird ein Potentiometer zwischen Relais und Motor gehängt. So kann die Motorspannung reguliert und die Drehzahl anforderungsgemäss eingestellt werden. Nachfolgend wird der Prozessablauf kurz beschrieben.<br />
<br />
Mit einem Knopfdruck wird wird ein Relais geschalten und der Motor wird angesteuert. Die Drehzahl des Motors wird über ein Getriebe reduziert. Die Zahnräder greifen auf eine Zahnstange und wandeln die Drehbewegung in eine lineare Bewegung um. An der Zahnstange wird der Stössel der Spritze befestigt. Der Rest der Spritze wird mit einem Kabelbinder fest mit der Bodenplatte verbunden damit sich dieser Teil nicht bewegen kann. Die programmierte Zeitdauer bestimmt welche Menge an Flüssigkeit gefördert werden soll.<br />
<br />
[[File:Pumpe.PNG|500px|thumb|none|Aufbau der Spritzenpumpe]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/PLG_S3GtVI8<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
=== Reflexion ===<br />
<br />
Anders als beim Hack 1 kamen waren wir uns bei diesem Hack sehr schnell einig was genau wir bauen möchten. Die ganze Ideenfindung erledigte sich sehr schnell und wir konnten nach bereits wenigen Stunden mit dem programmieren des Arduinos beginnen. Wie wir bereits im Hack 1 erfahren durften, ist das bei dem gedrängten Zeitplan dieser Woche ein grosser Vorteil. Rückblickend können wir urteilen, dass der Hack 2 aus unserer Sicht ein erfreuendes Erfolgserlebnis war. Unser zweiter Prototyp funktioniert genau so wie wir uns das von Beginn an vorgestellt haben. Per Knopfdruck fördert unser Prototyp eine gewisse Menge an Flüssigkeit.<br />
<br />
=== Code ===<br />
<br />
<pre><br />
<br />
bool geschaltet = false;<br />
int RelaisPin = 10; <br />
int tasterPin = 2;<br />
int empfindlichkeit = 200;<br />
<br />
void setup() {<br />
<br />
pinMode( tasterPin, INPUT_PULLUP);<br />
pinMode( RelaisPin, OUTPUT);<br />
<br />
}<br />
<br />
void loop() {<br />
<br />
if (digitalRead(tasterPin) == LOW) <br />
{<br />
if (geschaltet == false) {<br />
geschaltet = true;<br />
}<br />
else {<br />
geschaltet = false;<br />
}<br />
}<br />
<br />
if (geschaltet == true) {<br />
digitalWrite(RelaisPin, HIGH);<br />
delay(1000);<br />
geschaltet = false; <br />
}<br />
<br />
if (geschaltet == false) {<br />
digitalWrite(RelaisPin, LOW);<br />
}<br />
<br />
delay(empfindlichkeit);<br />
}<br />
</pre><br />
<br />
== Hack 3: Zinnguss ==<br />
<br />
== Hack 3: Zinnguss==<br />
<br />
Für diesen Hack wurde Zinn gegossen. Dank dem tiefen Schmelzpunkt lässt sich der Gusswerkstoff in einer Stahlkanne mit einem Brenner einer Autogenschweissanlage leicht erhitzen.<br />
<br />
[[File:Kanne.jpg|400px]]<br />
Stahlkanne mit flüssigem Zinn<br />
<br />
=== Versuch 1 ===<br />
<br />
Für die Gussform wurde MDF verwendet. Da die Hitzebeständigkeit von MDF unklar war, sollte ein kleiner Versuch Aufschluss geben. Eine einfache Zylinderform mit einem Überlaufbecken bestehend aus 3 Platten gemässe Bild [[:File:Versuch_1_Gussform.jpg]]Gussform, Versuch 1. Da nur eine kleine Menge an Zinn erhitzt wurde, war die Temperatur vermutlich deutlich über dem Schmelzpunkt. Es entwickelte sich Dampf, was zu einem Gussfehler im Überlauf führte. Ausserdem wurde das MDF stark verkohlt, siehe [[:File:Versuch_1_Resultat.jpg]]Resultat. Dennoch ist das Resultat zufriedenstellend, sodass für einen weiteren Versuch wieder MDF verwendet werden kann.<br />
<br />
Versuch 1<br />
<gallery><br />
[[File:Versuch_1_Gussform.jpg|400px]] | Gussform<br />
[[File:Versuch_1_Guss.jpg|400px]] | Frisch gegossen<br />
[[File:Versuch_1_Resultat.jpg|400px]] | Resultat<br />
<gallery><br />
<br />
=== Versuch 2 ===<br />
<br />
Nun konnte der eigentliche Versuch gestartet werden. Das Zinn wurde wieder in der Stahlkanne erhitzt, jedoch nicht so stark wie in Versuch 1. Jedoch wurden diesmal alle Formen mit dem Lasercutter ausgeschnitten. Auch bei dieser Gussform diente die letzte MSF Platte als Überlauf. Das flüssige Zinn konnte bei der grösseren Form kontrollierter und langsamer gegossen werden, so dass die Form gleichmässig ausgefüllt werden konnte, siehe Bild [[:File:Versuch_2_Guss.jpg]]Frisch gegossen.<br />
<br />
Versuch 2 giessen<br />
<gallery><br />
[[File:Versuch_2_Gussform.jpg|400px]] | Gussform<br />
[[File:Versuch_2_Guss.jpg|400px]] | Frisch gegossen<br />
<gallery><br />
<br />
Durch den Schwund lässt sich das Gussstück relativ gut aus der Form drücken, obwohl keine Formschrägen vorhanden waren. Vorher empfiehlt es sich, den Überlauf abzufräsen (Bild [[:File:Versuch_2_Fraesen.jpg]]Überfäsen, [[:File:Versuch_2_Resultat.jpg]]Resultat), da sich Zinn nur bedingt im Schraubstock einspannen lässt. Zinn vierbiegt sich sehr leicht.<br />
<br />
Versuch 2 bearbeitung<br />
<gallery><br />
[[File:Versuch_2_Fraesen.jpg|400px]] | Überfäsen<br />
[[File:Versuch_2_Resultat.jpg|400px]] | Resultat<br />
<gallery><br />
<br />
= Skill-Share-Session =<br />
<br />
== Grundlagen der Arduinoprogrammierung ==<br />
<br />
Dieser Kurs wurde von unserer Gruppe angeboten und soll den Teilnehmern die Grundlage der Programierung eines Arduino UNO beibringen. Folgend werden die grundlegenden Befehle und deren Syntax vorgestellt. Der Aufbau folgt dem YouTube Tutorial von Max. Hier gelangst du zu dem Link: [https://www.youtube.com/watch?v=eaFvQG8wrGw&list=PLAB63281B90FB376E&index=3]<br />
<br />
=== Skript ===<br />
Der Code wird in einem Skript geschrieben. Dieses ist in zwei Bereiche aufgeteilt<br />
* Void setup() Dieses Skript wird einmalig ausgeführt und enthält zB. Input und output<br />
* Void loop() Dieser Teil des Skripts wird als Dauerschleife wiederholt<br />
<br />
==== Befehlseingabe ====<br />
<br />
Die Befehle werden nach folgender Syntax eingegeben:<br />
<br />
* Funktion(Parameter1, Parameter2);<br />
<br />
Dabei muss das «;» gesetzte werden, ausserdem spielen Gross- und Kleinbuchstaben eine Rolle.<br />
<br />
=== Variablen ===<br />
Übersichtshalber sollen sprechende Namen für die Bezeichnung von z.B. Outputs verwendet werden. Dabei können verschiedene Datentypen ausgewählt werden.<br />
<br />
==== Datentyp ====<br />
* int Ganze Zahlen von -32768 … 32767 z.B. 1, 48, -654<br />
* boolean Entweder true oder false<br />
* byte 8 Bit an Informationen z.B. 00010101 (=21)<br />
* char enthält 1 Byte Informationen, das ein Zeichen darstellt z.B. 65 = A<br />
* long grosse Zahlen von ca. -2.1 Milliarden bis 2.1 Milliarden z.B. 15636451<br />
* float Komazahlen z.B. 5.498<br />
* string Zeichenketten z.B. «Do it yourself»<br />
<br />
==== Deklaration Syntax ====<br />
<br />
* Datentyp Name = Wert;<br />
<br />
oder<br />
<br />
* Datentyp Name;<br />
* Name = Wert;<br />
<br />
====Ort der Deklaration====<br />
<br />
Die Variable muss immer im Teil des Skriptes deklariert sein, wo sie auch gebraucht wird. Wird die Variable im setup wie auch im loop benötigt, so kann man die Variable als sogenannte globale Variable oberhalb des Setups deklarieren.<br />
<br />
===If-Schleife===<br />
<br />
Bei der If-Schleife wird der Wert einer Variablen mit einem Vergleichswert verglichen. Falls der Vergleich positiv ist, wird der Code ausgeführt, ansonsten übersprungen. Dazu sind Vergleichsoperatoren notwendig.<br />
<br />
====Syntax====<br />
<br />
if(Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
====Vergleichsoperatoren====<br />
<br />
* == gleich<br />
* != ungleich<br />
* < kleiner<br />
* < grösser<br />
* <= kleiner gleich<br />
* >= grösser gleich<br />
<br />
===While-Schleife===<br />
<br />
Mit der While-Schleife wird die Bedingung fortlaufend geprüft. Stimmt diese, wird der Code ausgeführt, ansonsten wird der Code übersprungen. Es können die selben Vergleichsoperatoren wie bei der If-Schleife verwendet werden.<br />
<br />
====Syntax====<br />
<br />
while (Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
==Bildgebende Verfahren==<br />
<br />
Der Tag begann mit einer Einführung in die Bildgebenden Verfahren durch David Stadelmann. Hierbei erklärte er uns, verschiedene Methoden, um Bilder aus dem Körperinneren zu machen und welche Methode für die verschiedenen Gewebetypen gebraucht werden. Zudem Zeigte und erklärte er uns anhand von Beispielen was die Einzelnen Schattierungen aussagen könnten.<br />
<br />
[[DIY-MedTech Bildgebende Verfahren-Unterschiedliche Bildeindrücke - Team Frosch]]<br />
<br />
==Synths & Sound ==<br />
<br />
Danach ging es weiter mit dem Kurs Synths & Sounds. Diese Session wurde von [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] durchgeführt. Hierbei zeigte er uns, wie man mit verschieden erzeugten Schwingungen eine grosse Variation von Tönen generiert kann. Zudem auch wie man elektronisch gewisse Instrumente Simulieren könnte und durch die Aneinanderreihung verschiedenster Tonvariationen eine Melodie enstehen kann. Dies mit unterschiedlich Variationen von selbstgebauten Synthesizers.<br />
<br />
<gallery><br />
File:Sinthesizer1.jpg | Synthesizer 1<br />
File:Synthesizer2.jpg | Synthesizer 2<br />
</gallery><br />
<br />
== Schweissen ==<br />
<br />
Bei dem Skill-Share Workshop von [https://www.hackteria.org/wiki/Team_G2020/ Team G2020] konnten wir verschiedene Schweissverfahren kennenlernen und auch gleich anwenden.<br />
<br />
Es wurde uns das [https://de.wikipedia.org/wiki/Lichtbogenhandschwei%C3%9Fen/ Elektrodenschweissen], das [https://de.wikipedia.org/wiki/Schutzgasschwei%C3%9Fen/ MIG-Schweissen] und das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] nähergebracht.<br />
<br />
Dieser Workshop war für uns alle sehr interessant, da sich bisher noch keiner von uns so wirklich mit dem Schweissen und den verschiedenen Verfahren auskannte. An diesem Tag konnten wir nach einer kurzen Theorie gleich sofort selber handanlegen und die verschiedenen Schweissverfahren ausprobieren.<br />
<br />
Dabei mussten wir feststellen, dass es gar nicht so einfach ist wie es immer aussieht. Besonders das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] braucht sehr viel Übung und Geschick um wirklich schöne Schweissergebnisse zu erzielen.<br />
<br />
== Autonomes Nervensystem und das Hören in der Medizin ==<br />
<br />
Der Assistent Dr. Christian Gehringer, MSc. (ETH) hielt uns einen sehr interessanten Vortrag. Dabei ging es darum, dass wir die Anatomie kennenlernen und erkunden am Beispiel des Hörens z.B mit einem Stethoskop.<br />
<br />
[https://www.hackteria.org/wiki/Autonomes_Nervensystem_und_das_H%C3%B6ren_in_der_Medizin/ Autonomes Nervensystem und das Hören in der Medizin]</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=MedTechDIY20_Die_Profis&diff=41655MedTechDIY20 Die Profis2020-02-09T11:48:26Z<p>Tnroth: </p>
<hr />
<div>Hier gehts zurück auf: [[Medizintechnik DIY]]<br />
<br />
[[File:DieProfis.png|700px|right|none|Wochenplan]]<br />
<br />
= Team =<br />
<br />
'''Die Profis''' besteht aus den drei Studierenden '''Daniel Glur''', '''Lukas Roth''' und '''Daniel Zellweger''' der Hochschule Luzern. Im Rahmen der Blockwoche "DIY Medizintechnik" formierte sich das Team aus verschiedenen Studiengängen um auch interdisziplinär voneinander zu lernen und Wissen auszutauschen.<br />
<br />
'''Mitglieder:'''<br />
<br />
Maschinentechnik: <gallery><br />
File:DanielGlur.jpg | Daniel Glur<br />
File:LukasRoth.jpg | Lukas Roth<br />
</gallery><br />
<br />
Medizintechnik: <gallery><br />
File:DanielZellweger.jpg | Daniel Zellweger<br />
</gallery><br />
<br />
= Pflichtlektüre =<br />
<br />
'''How to control someone else's arm with your brain | Greg Gage'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/rSQNi5sAwuc<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
In Diesem Video wird gezeigt wie man über die Aufnahme eines Biologischen Signals, dieses an eine zweite Person weitergeleitet werden kann.<br />
Dies funktioniert jedoch nur aus verschiedenen Gründen bedingt. Nebst den allgemeinen Störeinflüsse aus der Messtechnik, kommen zusätzlich noch jene der Ansteuerung. Da das Signal nur von einzelnen Muskelfasern abgefangen wird, kann dieses nicht sämtliche Muskelfasern der zweiten Person Reizen. Dies hat zur folge, dass nur eine annähernd ähnliche Bewegung des Armes arfolgt.<br />
<br />
<br />
'''What is Open Source explained in LEGO'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/a8fHgx9mE5U<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Durch die Verwendung der Open Source Methode erhält man die Möglichkeit während des Projektes noch Erweiterungen oder Veränderungen anzustreben.<br />
<br />
'''"Why toys make good medical devices | Jose Gomez-Marquez'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/UHCT9SOBHs0<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Nebst dem Preis besitzen Spielzeuge diverse spezifische Funktionen. Da diese meist günstige Anschaffung auch einfach verändert werden kann, sind sie sehr geeignet dafür umgebaut zu werden. Somit sind Spielzeuge welche chemische oder sensorische Funktionen besitzen ein gefundenes fressen für den Hacker und eine Alternative für Regionen in welchen die finanzielle Situation teure Medizinprodukte nicht erlauben.<br />
<br />
= Einleitung =<br />
Die Blockwoche "DIY Medizintechnik" verbindet Anwendungen der Medizintechnik mit Do It Yourself (DIY) Ansätzen. Dadurch wird das tiefere Verständnis von Medizintechnischen Geräten durch einen direkten, interdisziplinären und möglichst selbstgesteuerten Zugang gefördert. Basierend auf verschiedenen elektrophysiologischen Messmodulen (EMG, EKG, EOG, EEG) entwickeln die Studierenden im Team Ideen für innovative Projekte. Erste Prototypen werden mit den Mitteln der Digitalen Fabrikation hergestellt und getestet. Tag für Tag stehen produktive "Hacks" auf dem Programm. Hacks sind sehr praxisbezogene Arbeitssequenzen wo die Studierenden Experimente durchführen sowie Prototypen entwickeln und bauen können. Dabei ist aber nicht nur die Medizintechnik zentral sondern auch der Interdisziplinäre Austausch sowie eine Skill-Share-Session wo die Studierenden ganz nach dem do it yourself Gedanken einen eigenen Workshop leiten können.<br />
Alle Erkenntnisse und Erfahrungen werden laufend in einem eigenen Wiki-Eintrag festgehalten und dokumentiert.<br />
<br />
Die Blockwoche wird von den beiden Dozenten [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] und [https://www.hackteria.org/wiki/Gaudi/ Urs Gaudenz] duchgeführt. Unterstützt wurden die Beiden von '''Dr. Christian Gehringer, MSc. (ETH)''' und [http://chrisobrist.ch/about// Chris Obrist]<br />
<br />
Maschinentechnik: <gallery><br />
File:MarkDusseiller.jpg | Dr. Marc R. Dusseiller<br />
File:UrsGaudenz.jpg | Urs Gaudenz<br />
</gallery><br />
<br />
= Planung =<br />
<br />
Die Blockwoche wird wie in folgendem Wochenplan unterteilt:<br />
<br />
[[File:Wochenplan2020.jpg|700px|thumb|none|Wochenplan]]<br />
<br />
= Wochenrückblick =<br />
== Die Woche in Bilder==<br />
[[File:ProfisInAction.PNG|400px]]<br />
[[File:Komponente.PNG|300px]]<br />
[[File:Aufbau.PNG|400px]]<br />
[[File:Motor_mit_Adapter.jpg|300px]]<br />
[[File:Pumpe.PNG|350px]]<br />
[[File:pulsmessung.jpg|450px]]<br />
[[File:Zusammenbau2.jpg|300px]]<br />
[[File:Foto 07.02.20, 11 14 53.jpg|300px]]<br />
[[File:DanielZellweger.jpg|300px]]<br />
<br />
== Tag 1==<br />
'''Einführung'''<br />
<br />
Wir traffen uns zu beginn im FABLAB, wo sich die Dozenten vorstellten und uns über Ihren bisherigen Werdegang informierten. Das interessante an der beruflichen Laufbahn der beiden ist, dass beide ein Studium abgeschlossen haben und heute einer Tätigkeit nachgehen, welche eigentlich nicht mehr viel mit dem damaligen Studium zu tun hat. Das vermittelt unserer Meinung nach, den Studenten eine etwas andere Sichtweise als die technische Hochschule. Es zeigt z.B. dass man nach einem Studium nicht gezwungen ist auf diesem Fachgebiet zu arbeiten sondern dass der Arbeitsmarkt noch sehr viele andere Möglichkeiten zu bieten hat.<br />
<br />
Nachdem sie sich Vorgestellt haben, stellten sie uns auch noch den Assistent vor. Dieser ist ein ausgebildeter Arzt welcher sich momentan für seinen zweiten Doktortitel engagiert. Von Ihm und seinem grossen medizinischen Fachwissen können wir als Studenten die ganze Woche profitieren.<br />
<br />
Danach überliessen die Dozenten uns Studenten das Wort. Es war eine etwas andere Vorstellungsrunde wie man sie noch nicht kannte. Dazu stand uns ein ganzer Tisch mit kuriosen Gegenständen, welche etwas mit dem DIY Gedanke zu tun haben, zur verfügung. Sie vorderten uns alle auf einen Gegenstand auszuwählen. Danach mussten wir uns Vorstellen und noch ein paar Worte dazu verlieren welche Gemeinsamkeiten wir mit dem ausgesuchten Gegenstand teilen.<br />
<br />
'''DIY (Do It Yourself)'''<br />
<br />
Das DIY Prinzip basiert auf eigenem experimentieren und learning by doing<br />
<br />
{{#widget:Iframe<br />
|url= https://www.youtube.com/watch?v=3zH_J12G9sQ<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
<br />
'''How to use Wiki'''<br />
<br />
Durch die 45 minütige Einführung in die Handhabung das Wiki durch Dr. Marc R. Dusseiller waren wir bereit unsere Erkenntnisse und Projekte, welche wir in dieser Woche erfahren und durchführen werden, in einer Zugänglichen Form, niederzuschreiben.<br />
<br />
== Tag 2 ==<br />
Am zweiten Tag begannen wir die Vorbereitung Skill-Share-Session. Diesbezüglich sollte jeder Teilnehmer einen Skill, welcher er erlernen möchte und einen Skill, den man beibringen könnte notieren. Diese wurden dann auf einer Tafel in Cluster aufgeteilt. Zwölf davon wurden als Skill-Share Workshops ausgewählt und die Teilnehmer konnten sich nach Belieben einschreiben.<br />
<br />
[[File:SkillSession2020.jpg|500px|thumb|none|Skill-share-session]]<br />
<br />
Während des zweiten Teils arbeiteten wir an unserem Experiment weiter, welches wir am Vortag begonnen haben.<br />
Dazu mussten wir die elektronischen Bauteile mit unserem Laptop verbinden und einen vorgefertigten Sketch laufen lassen.<br />
<br />
Nachdem wir den ersten Versuch erfolgreich durchführen konnten, versuchten wir mit dem Arduino einen Stepmotor anzusteuern. Dabei stiessen wir jedoch auf einige Schwierigkeiten. Da wir diese bis zur Einführung des Lasercutters und des 3D-Druckers fertig haben sollten. Siehe [[#Hack 0]]<br />
<br />
Unteranderem wurde unsere Skill-Share-Session über Arduino vorbereitet.<br />
<br />
Am Abend kam [http://chrisobrist.ch/about// Chris Obrist] zu Besuch und unterhielt uns mit einer wundervollen musikalischen Darbietung.<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/Hj1Ogr8137o<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
== Tag 3 ==<br />
Von 9:00 Uhr bis nach dem Mittag um 14:00 Uhr waren wir alle mit der [[#Skill-Share-Session]] beschäftigt.<br />
<br />
Danach hatten wir Zeit um den nächsten Hack vorzubereiten und zu planen.<br />
<br />
== Tag 4 ==<br />
Den Vormittag verbrachten wir weiter mit dem Hack 1, welchen wir dann vor der Mittagspause den Dozenten und allen Mitstudierenden präsentieren durften. Leider litten wir während des ganzen Hack 1 sehr unter Zeitdruck, was auf eine turbulente Projektphase zurückzuführen ist. Mehr dazu erfährst du im [[#Hack 1]].<br />
<br />
Nach einer kurzen Inspirationphase entschieden wir uns dafür eine kleine Spritzenpumpe zu basteln. [[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 5 ==<br />
Am Tag 5 ging es darum die Einzelteile physikalisch sowie über ein Funktionierendes Arduinoprogamm zum laufen zu bringen.<br />
[[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 6 ==<br />
Zum Abschluss durften wir alle Hacks der verschiedenen Teams begutachten. Interessant waren die spontanen Vorgehensweisen und auch die daraus entstandenen Produkte. Viele Teams suchten zuerst das Material und erst danach die Ideen. So entstanden die unterschiedlichsten Prototypen.<br />
Zudem Reflektierten wird die Blockwoche. Im Allgemeinen gefielen die Freiheit und auch der unkomplizierte Teamgeist untereinander. Besten Dank auch an die Organisatoren der Blockwoche.<br />
<br />
= Experimente =<br />
Bei den Experimenten sollte es darum gehen aus unterschiedlichsten Einzelteilen ein Produkt zu erschaffen. Dieser Prozess brachte uns dazu über die Grenzen unseres altäglichem Denken zu springen und in der Verbindung der einzelnen Bereiche solcher Produkte besser zu verstehen.<br />
<br />
== Hack 0 ==<br />
<br />
<br />
===Versuchsaufbau 1===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 1===<br />
Nach den Inputs der Dozenten verbrachten wir hauptsächlich die Zeit damit den Muscle Spiker Shield nach der Anleitung mit den dazugehörigen Teilen zusammenzulöten.[https://backyardbrains.com/products/files/MuscleSpikerShield.v.2.11.BuildingInstructions.pdf]V2.11<br />
Nebenbei machten wir unsere ersten Schritte in Arduino.<br />
Als wir unsere mechatronischen Komponenten zusammengestellt und ein Grundverständnis von Arduino angeeignet haben, verbanden wir dies in einem Experiment. <br />
Das Experiment welches wir durchführten nennt man Control Machines with your Brain und ist auf der Seite von [https://backyardbrains.com/experiments/muscleSpikerShield/ Backyard Brains] nachzusehen.<br />
<br />
Für den Versuch wurden Elektroden an den Testpersonen angeschlossen und über den Arduino ausgelesen.<br />
Der Versuch wurde mit zwei Testpersonen durchgeführt. Dabei fiel uns nebst der Kontrolle der LED's auch auf, dass der Puls gemessen wurde. Dies unabhängig von der Position der Elektroden. Vermutlich reagieren die Elektroden zu sensitiv für diese Anwendung.<br />
<br />
<br />
[[File:UeberblickVersuchTeamD.jpg|400px|thumb|none|Versuchsaufbau]]<br />
[[File:Versuchsaufbau1TeamD.jpg|400px|thumb|none|Elektrodenbefestigung]]<br />
[[File:MessungDanielGlur.jpg|400px|thumb|none|Messung von Daniels Puls]]<br />
<br />
===Versuchsaufbau 2===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 2===<br />
<br />
Als zweites Experiment versuchten wir durch das anspannen der Muskeln einen Servomotor anzusteuern. Wie es auch auf der Homepage von [https://backyardbrains.com/experiments/MuscleSpikerShield_GripperHand/ Backyard Brains] anzutreffen ist. Dieser Versuch konnte aber leider aus Zeitgründen nicht zu Ende geführt werden. Wir konnten lediglich das Arduinoprogramm laden und etwas anpassen.<br />
<br />
===Reflexion===<br />
<br />
Der Hack 0 war in der Hinsicht sehr interessant, da wir alle unsere ersten Erfahrungen mit einem Arduino machen konnten. Einige von unserem Team hatten bisher auch noch nie auf einer Printplatte irgendwelche Widerstände oder Schalter etc. gelötet. Ebenso war es erstaunlich, dass man mit so wenig so viel verschiedene Sachen machen kann. Keiner von uns hat gedacht dass wir bereits am ersten Tag irgend etwas mit unseren Muskeln kontrollieren könnten. Insgesamt kam der Hack 0 gut bei uns an und wir alle konnten einiges davon profitieren und hoffentlich auch den weiteren Hacks weiterverwenden.<br />
<br />
== Hack 1: Baseball-Cap mit Ventilator ==<br />
<br />
Der Hack 1 beschreibt die Konzept- und Testphase des ersten Prototyps.<br />
<br />
Zu Beginn waren wir uns sehr unschlüssig was wir wirklich bauen wollen. Also entschieden wir uns für ein weiteres Experiment mit einem Bausatz von Backyard Brains. Wir versuchten durch die Funktion des Heart and Brain Spiker Shield einen Ventilator anzusteuern. Der Gedanke, welcher uns auf diese Idee führte, kennt wohl jeder Student. Während einer Prüfung kommt so mancher ins Grübeln und in harten Fällen kommt es auch vor dass einem eine Schweissperle von der Stirn läuft. Um in solchen Fällen für die nötige Kühlung zu sorgen, sollen Sensoren die Hirnströme gemessen und als Signal wiedergeben werden um damit einen Ventilator anzuschalten.<br />
<br />
Zu unserem eigenen Erstaunen erhielten wir sogar ein Signal aus unserer Messung. Es stellte sich aber sehr bald heraus, dass das wohl nicht die Hirnströme waren sondern eher Bewegungen des Kopfs und der Kabel. Denn die Sensoren sind recht empfindlich gegen solche Einflüsse. Zudem kam noch, dass die Sensoren über den Haaren angebracht wurden, was das Signal der Hirnströme noch zusätzlich verschlechterte. Nach einigen Versuchen sahen wir ein, dass das wohl eine zu grosse Herausforderung war und wir uns besser an einen einfacheren Versuch versuchen sollten.<br />
<br />
[[File:heart_and_brain.jpg|300px|thumb|none|Signal aus Messung der "Hirnströme"]]<br />
[[File:EEGDanielGlur.jpg|500px|thumb|none|Daniel beim messen der "Hirnströme"]]<br />
<br />
Also beschlossen wir uns anstelle der Hirnströme den Puls zu messen. Denn während einer Prüfung kann es durchaus auch vorkommen, dass der Puls etwas ansteigt. Die Messungen sollten dann ausgelesen werden und wenn der Puls eine gewisse Frequenz übersteigt, schaltet ein Ventilator ein um den Studenten wieder etwas zu beruhigen.<br />
<br />
Für diesen Versuch platzierten wir Sensoren am Unterarm und an der Handoberfläche. Idealerweise sollten laut Assistent Christian die Sensoren aber so weit wie möglich voneinander entfernt, an einer anderen Körperstelle angebracht werden um eine gewisse Referenz zu haben und um sicherzustellen, dass man wirklich den Puls misst. Unsere Kabel waren aber leider etwas zu kurz. Wir erhielten trotzdem ein relativ gutes Signal von welchem man davon ausgehen konnte, dass es sich um den Puls handelte. Jetzt nur noch das Signal auswerten, einen Frequenzbegrenzer programmieren und mithilfe von einem Arduino UNO den Ventilator ansteuern... Dachten wir... Dies war allerdings etwas Schwieriger als erwartet und überstieg unsere Kompetenzen. Das führte uns dazu auch diesen Versuch an dieser Stelle abzubrechen und nochmal zu überdenken.<br />
<br />
<br />
[[File:puls.png|400px|thumb|none|Pulssignal]]<br />
[[File:pulsmessung.jpg|400px|thumb|none|Pulssmessung]]<br />
<br />
<br />
Nun rannte uns schon langsam die Zeit davon. Doch dann kam uns die Idee, welche wir schon zu Beginn benötigt hätten. Und zwar wollten wir einen Ventilator auf einem Baseball-Cap anbringen und diesen ansteuern wenn ein gewisses Temperaturniveau unter dem Cap überschritten wird wird. Dazu wird ein 12V Ventilator via Relais von dem Arduino angesteuert. Weil der Arduino nur eine Spannung von 5V liefert, musste ein 12V Netzgerät den Ventilator mit Strom versorgen. Damit man den Ventilator so schalten konnte, damit er den Strom über das 12V Netzgerät bezieht, mussten wir noch ein Relais einbauen. Den Code für den Arduino bezogen wir aus verschiedenen ähnlichen Projekten aus dem Internet und passten ihn spezifisch für unsere Anwendung an. Für das auslesen der Temperatur mussten wir zuerst zwei Libreries herunterladen (DallasTemperature und OneWire).<br />
<br />
[[File:Komponente.PNG|400px|thumb|none|Verbaute Komponenten]]<br />
<br />
Nun mussten wir noch den Ventilator am Baseball-Cap anbringen. Dafür wurde eine Halterung im CAD konstruiert und mit einem 3D-Drucker ausgedruckt. Die Teile wurden danach zusammengesteckt und mit dem Baseball-Cap verschraubt. Natürlich wurde zuvor ein Loch in das Cap geschnitten, damit der Ventilator auch seinen Zweck erfüllen kann und dem Studenten einen kühlen Kopf verschafft.<br />
<br />
[[File:Aufbau.PNG|350px|thumb|none|3D-Modell im CAD]]<br />
<br />
[[File:Zusammenbau1.jpg|350px]]<br />
[[File:Zusammenbau2.jpg|350px]]<br />
<br />
Nun wurde unser Prototyp getestet. Der Sensor erfüllte seinen Dienst und wir konnten erfolgreich die Temperaturen messen. Jedoch war das Relais während dem Testen ständig eingeschalten und der Ventilator lief die ganze Zeit auch wenn die Temperatur den Minimalwert unterschritten hatte. Es hat sich also irgendwo in unserem Programm einen Fehler eingeschlichen. Den galt es nun zu finden und zu beheben. Dazu bauten wir einen Druckknopf ein um zu überprüfen ob das Relais defekt war und um die Fehlerquellen etwas einzugrenzen.<br />
<br />
[[File:Temperatur.jpg|350px]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/TQnGa5WiGS4<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
Der Druckknopf funktionierte, das Relais schaltete perfekt ein und aus und der Ventilator wurde an- und abgestellt. Somit wissen wir nun wo der Fehler zu suchen ist und können versuchen das Programm an diesen Stellen zu bereinigen. Nur ist jetzt schon Donnerstag Nachmittag und der Hack 2 hat schon begonnen. Wir alle wurden aufgefordert unseren bisherigen Prototypen aufzugeben und etwas neues, anderes zu versuchen und zu testen. Also legen wir schweren Herzens unser erster Prototyp beiseite und widmen unsere Kreativität dem nächsten Hack.<br />
<br />
=== Reflexion ===<br />
Der Hack 1 hat uns gezeigt, dass es gar nicht so einfach ist beim ersten Versuch ein brauchbares Resultat zu erzielen. Jedoch konnten wir so aus zwei vorhergehenden, fehlgeschlagenen Ansätzen eine Idee weiterentwickeln. Somit konnten wir mit unseren Kompetenzen und den Erfahrungen aus dem Hack 0 ein zufriedenstellendes Resultat erzielen. Durch die zwei Versuche zuvor ging leider recht viel Zeit "verloren", welche wir sehr benötigt hätten um unser erster Prototyp fehlerfrei hinzukriegen. Es war uns auch eine Lehre, dass man nicht zu lange an einer Sache verharren sollte wenn einem nur wenig Zeit zur Verfügung steht. Manchmal ist es besser man wirft alles nochmal über den Haufen und beginnt von vorne. Trotz allen Strapazen während des Hack 1 sind wir mit unserem ersten Prototyp sehr zufrieden und konnten auch bei diesem Versuch wieder viel profitieren und mitnehmen. Nun blicken wir gespannt nach vorne auf den nächsten Hack.<br />
<br />
<br />
===Code===<br />
<br />
Wir konnten zwar die Temperatur herauslesen und das Relais über einen Butten steuern, jedoch die Steuerung anhand der Temperatur geling uns nicht.<br />
<br />
<pre><br />
/********************************************************************/<br />
// First we include the libraries<br />
#include <OneWire.h> <br />
#include <DallasTemperature.h><br />
/********************************************************************/<br />
// Data wire is plugged into pin 2 on the Arduino <br />
#define ONE_WIRE_BUS 2 <br />
<br />
float tempReading;<br />
/********************************************************************/<br />
// Setup a oneWire instance to communicate with any OneWire devices <br />
// (not just Maxim/Dallas temperature ICs) <br />
OneWire oneWire(ONE_WIRE_BUS); <br />
/********************************************************************/<br />
// Pass our oneWire reference to Dallas Temperature. <br />
DallasTemperature sensors(&oneWire);<br />
/********************************************************************/ <br />
int relayPin = 4; // Relay Singnal lead to Digital Pin [D2-D12]<br />
<br />
float maxTemperature = 30.00; // The Max Temperature allowed<br />
float minTemperature = 25.00; // The Min Temperature allowed<br />
<br />
// constants won't change. They're used here to set pin numbers:<br />
const int buttonPin = 8; // the number of the pushbutton pin<br />
const int ledPin = 4; // the number of the LED pin<br />
<br />
// variables will change:<br />
int buttonState = 0; // variable for reading the pushbutton status<br />
<br />
void setup(void) {<br />
// initialize the LED pin as an output:<br />
pinMode(ledPin, OUTPUT);<br />
// initialize the pushbutton pin as an input:<br />
pinMode(buttonPin, INPUT);<br />
<br />
Serial.begin(9600); <br />
Serial.println("Dallas Temperature IC Control Library Demo"); <br />
// Start up the library <br />
sensors.begin(); <br />
}<br />
<br />
void loop(void) <br />
{ <br />
// call sensors.requestTemperatures() to issue a global temperature <br />
// request to all devices on the bus <br />
/********************************************************************/<br />
Serial.print(" Requesting temperatures..."); <br />
sensors.requestTemperatures(); // Send the command to get temperature readings <br />
Serial.println("DONE"); <br />
/********************************************************************/<br />
Serial.print("Temperature is: "); <br />
Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"? <br />
// You can have more than one DS18B20 on the same bus. <br />
// 0 refers to the first IC on the wire <br />
delay(1000); // Check Temperature every second<br />
<br />
float temperature = getTemperature();<br />
if(temperature >= maxTemperature){<br />
powerOnRelay();<br />
} else if (temperature <= minTemperature) {<br />
powerOffRelay();<br />
}<br />
delay(1000); // Check tempertature every second<br />
<br />
} <br />
void powerOnRelay() {<br />
digitalWrite(relayPin, HIGH);<br />
Serial.println("Relay On");<br />
}<br />
<br />
void powerOffRelay() {<br />
digitalWrite(relayPin, LOW);<br />
Serial.println("Relay Off");<br />
}<br />
float getTemperature(){<br />
tempReading = digitalRead(ONE_WIRE_BUS);<br />
<br />
// read the state of the pushbutton value:<br />
buttonState = digitalRead(buttonPin);<br />
<br />
// check if the pushbutton is pressed. If it is, the buttonState is HIGH:<br />
if (buttonState == HIGH) {<br />
// turn LED on:<br />
digitalWrite(ledPin, HIGH);<br />
} else {<br />
// turn LED off:<br />
digitalWrite(ledPin, LOW);<br />
}<br />
}<br />
</pre><br />
<br />
== Hack 2: Spritzenpumpe ==<br />
<br />
Nachdem der Hack 1 abgeschlossen war, machten wir uns aufs Neue darüber Gedanken was wir für einen Prototyp für den Hack 2 bauen wollen. Urs hat nach dem Abschluss von Hack 1 gesagt, wir sollten uns ein komplett neues Produkt überlegen, welches möglicherweise auch etwas mit der Medizintechnik zu tun hat. Nach einem Brainstorming kamen wir noch nicht so richtig auf einen grünen Zweig. So kamen wir auf die Idee uns einen Kaffee zu holen und einfach mal durch das FABLAB zu laufen um alles Mögliche anzuschauen, in die Hand zu nehmen und uns von all diesen Gegenständen inspirieren zu lassen. So kamen uns diverse Gegenstände in die Finger. darunter waren Servomotoren sowie einige DC-Motoren, eine Spritze, eine Pumpe, ein Micro-Switch Schalter, ein Potentiometer und vieles mehr. Diese Gegenstände haben wir dann auf unserem Gruppentisch ausgebreitet und uns Gedanken darüber gemacht was wir damit wohl anstellen konnten zum Thema Medizintechnik. So entstanden relativ schnell einige Ideen. Wir haben uns schlussendlich dafür entschieden ein Dosiergerät für eine medizinische Spritze zu machen. Dieses sollte so funktionieren, dass wir eine Spritze in eine Vorrichtung legen und über einen DC-Motor zum Einfahren bzw. Ausfahren bringen. Dazu muss die Drehbewegung des Motors in eine Lineare Bewegung umgeleitet werden. Zudem muss ggf. auch die Drehzahl des Motors durch ein Potentiometer reguliert werden können um einen zu schnellen Aus- oder Einfahrvorgang zu verhindern. Soviel zu zu den technischen Überlegungen. <br />
<br />
Sofort nach dem Entscheid suchten wir nach einem geeigneten Motor. Dieser sollte dabei eine eher tiefe Drehzahl haben damit die Spritze nur langsam ein- und ausfährt. Zudem suchten wir im Internet nach einem geeigneten Mechanismus der die Drehbewegung in eine lineare Bewegung umwandelt. Denn wir hatten leider zu wenig zeit um alles selber zu entwerfen und zu konstruieren. So wurden wir auf auf der Hompage von [https://www.thingiverse.com/thing:2797132/ Thingiverse] schliesslich fündig. Also konnte wir die Folgenden Komponenten herunterladen und mit dem 3D-Drucker ausdrucken.<br />
<br />
Komponenten: <gallery><br />
File:Halteplatte.PNG | Halteplatte<br />
File:Zahnrad.PNG | Zahnradpaar<br />
File:Zahnradpaar.PNG | Zahnstange<br />
File:Zahnstange.PNG | Zahnrad<br />
</gallery><br />
<br />
Da wir einen anderen Motor verwendeten als für diesen Mechanismus vorgesehen wäre, mussten wir noch eine passende Adapterplatte konstruieren, damit der Motor auch auf die Vorrichtung passt.<br />
<br />
<gallery><br />
File:Adapterplatte.PNG | Adapterplatte<br />
File:Motor.PNG | Motor<br />
File:Motor_mit_Adapter.jpg | Motor mit Adapter<br />
</gallery><br />
<br />
Der Motor benötigt, wie auch der Ventilator von Hack 1, eine Spannung von 12V für den Betrieb. Also mussten wir erneut das 12V Netzgerät verwenden. Damit unser zweiter Prototyp auch die gewünschte Fördermenge fördern kann, muss die Zeitdauer, in welcher gefördert werden soll, definiert werden. Das dazugehörige Programm wird mit einem Arduino UNO implementiert. Der Zugehörige Code haben wir durch Recherche im Internet und durch persönliches erweitern und anpassen erstellt. Die Drehzahl des Motors darf nicht zu hoch sein damit man die Fördermenge auch sinnvoll einstellen kann. Für diese Anwendung wird ein Potentiometer zwischen Relais und Motor gehängt. So kann die Motorspannung reguliert und die Drehzahl anforderungsgemäss eingestellt werden. Nachfolgend wird der Prozessablauf kurz beschrieben.<br />
<br />
Mit einem Knopfdruck wird wird ein Relais geschalten und der Motor wird angesteuert. Die Drehzahl des Motors wird über ein Getriebe reduziert. Die Zahnräder greifen auf eine Zahnstange und wandeln die Drehbewegung in eine lineare Bewegung um. An der Zahnstange wird der Stössel der Spritze befestigt. Der Rest der Spritze wird mit einem Kabelbinder fest mit der Bodenplatte verbunden damit sich dieser Teil nicht bewegen kann. Die programmierte Zeitdauer bestimmt welche Menge an Flüssigkeit gefördert werden soll.<br />
<br />
[[File:Pumpe.PNG|500px|thumb|none|Aufbau der Spritzenpumpe]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/PLG_S3GtVI8<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
=== Reflexion ===<br />
<br />
Anders als beim Hack 1 kamen waren wir uns bei diesem Hack sehr schnell einig was genau wir bauen möchten. Die ganze Ideenfindung erledigte sich sehr schnell und wir konnten nach bereits wenigen Stunden mit dem programmieren des Arduinos beginnen. Wie wir bereits im Hack 1 erfahren durften, ist das bei dem gedrängten Zeitplan dieser Woche ein grosser Vorteil. Rückblickend können wir urteilen, dass der Hack 2 aus unserer Sicht ein erfreuendes Erfolgserlebnis war. Unser zweiter Prototyp funktioniert genau so wie wir uns das von Beginn an vorgestellt haben. Per Knopfdruck fördert unser Prototyp eine gewisse Menge an Flüssigkeit.<br />
<br />
=== Code ===<br />
<br />
<pre><br />
<br />
bool geschaltet = false;<br />
int RelaisPin = 10; <br />
int tasterPin = 2;<br />
int empfindlichkeit = 200;<br />
<br />
void setup() {<br />
<br />
pinMode( tasterPin, INPUT_PULLUP);<br />
pinMode( RelaisPin, OUTPUT);<br />
<br />
}<br />
<br />
void loop() {<br />
<br />
if (digitalRead(tasterPin) == LOW) <br />
{<br />
if (geschaltet == false) {<br />
geschaltet = true;<br />
}<br />
else {<br />
geschaltet = false;<br />
}<br />
}<br />
<br />
if (geschaltet == true) {<br />
digitalWrite(RelaisPin, HIGH);<br />
delay(1000);<br />
geschaltet = false; <br />
}<br />
<br />
if (geschaltet == false) {<br />
digitalWrite(RelaisPin, LOW);<br />
}<br />
<br />
delay(empfindlichkeit);<br />
}<br />
</pre><br />
<br />
== Hack 3: Zinnguss ==<br />
<br />
= Skill-Share-Session =<br />
<br />
== Grundlagen der Arduinoprogrammierung ==<br />
<br />
Dieser Kurs wurde von unserer Gruppe angeboten und soll den Teilnehmern die Grundlage der Programierung eines Arduino UNO beibringen. Folgend werden die grundlegenden Befehle und deren Syntax vorgestellt. Der Aufbau folgt dem YouTube Tutorial von Max. Hier gelangst du zu dem Link: [https://www.youtube.com/watch?v=eaFvQG8wrGw&list=PLAB63281B90FB376E&index=3]<br />
<br />
=== Skript ===<br />
Der Code wird in einem Skript geschrieben. Dieses ist in zwei Bereiche aufgeteilt<br />
* Void setup() Dieses Skript wird einmalig ausgeführt und enthält zB. Input und output<br />
* Void loop() Dieser Teil des Skripts wird als Dauerschleife wiederholt<br />
<br />
==== Befehlseingabe ====<br />
<br />
Die Befehle werden nach folgender Syntax eingegeben:<br />
<br />
* Funktion(Parameter1, Parameter2);<br />
<br />
Dabei muss das «;» gesetzte werden, ausserdem spielen Gross- und Kleinbuchstaben eine Rolle.<br />
<br />
=== Variablen ===<br />
Übersichtshalber sollen sprechende Namen für die Bezeichnung von z.B. Outputs verwendet werden. Dabei können verschiedene Datentypen ausgewählt werden.<br />
<br />
==== Datentyp ====<br />
* int Ganze Zahlen von -32768 … 32767 z.B. 1, 48, -654<br />
* boolean Entweder true oder false<br />
* byte 8 Bit an Informationen z.B. 00010101 (=21)<br />
* char enthält 1 Byte Informationen, das ein Zeichen darstellt z.B. 65 = A<br />
* long grosse Zahlen von ca. -2.1 Milliarden bis 2.1 Milliarden z.B. 15636451<br />
* float Komazahlen z.B. 5.498<br />
* string Zeichenketten z.B. «Do it yourself»<br />
<br />
==== Deklaration Syntax ====<br />
<br />
* Datentyp Name = Wert;<br />
<br />
oder<br />
<br />
* Datentyp Name;<br />
* Name = Wert;<br />
<br />
====Ort der Deklaration====<br />
<br />
Die Variable muss immer im Teil des Skriptes deklariert sein, wo sie auch gebraucht wird. Wird die Variable im setup wie auch im loop benötigt, so kann man die Variable als sogenannte globale Variable oberhalb des Setups deklarieren.<br />
<br />
===If-Schleife===<br />
<br />
Bei der If-Schleife wird der Wert einer Variablen mit einem Vergleichswert verglichen. Falls der Vergleich positiv ist, wird der Code ausgeführt, ansonsten übersprungen. Dazu sind Vergleichsoperatoren notwendig.<br />
<br />
====Syntax====<br />
<br />
if(Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
====Vergleichsoperatoren====<br />
<br />
* == gleich<br />
* != ungleich<br />
* < kleiner<br />
* < grösser<br />
* <= kleiner gleich<br />
* >= grösser gleich<br />
<br />
===While-Schleife===<br />
<br />
Mit der While-Schleife wird die Bedingung fortlaufend geprüft. Stimmt diese, wird der Code ausgeführt, ansonsten wird der Code übersprungen. Es können die selben Vergleichsoperatoren wie bei der If-Schleife verwendet werden.<br />
<br />
====Syntax====<br />
<br />
while (Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
==Bildgebende Verfahren==<br />
<br />
Der Tag begann mit einer Einführung in die Bildgebenden Verfahren durch David Stadelmann. Hierbei erklärte er uns, verschiedene Methoden, um Bilder aus dem Körperinneren zu machen und welche Methode für die verschiedenen Gewebetypen gebraucht werden. Zudem Zeigte und erklärte er uns anhand von Beispielen was die Einzelnen Schattierungen aussagen könnten.<br />
<br />
[[DIY-MedTech Bildgebende Verfahren-Unterschiedliche Bildeindrücke - Team Frosch]]<br />
<br />
==Synths & Sound ==<br />
<br />
Danach ging es weiter mit dem Kurs Synths & Sounds. Diese Session wurde von [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] durchgeführt. Hierbei zeigte er uns, wie man mit verschieden erzeugten Schwingungen eine grosse Variation von Tönen generiert kann. Zudem auch wie man elektronisch gewisse Instrumente Simulieren könnte und durch die Aneinanderreihung verschiedenster Tonvariationen eine Melodie enstehen kann. Dies mit unterschiedlich Variationen von selbstgebauten Synthesizers.<br />
<br />
<gallery><br />
File:Sinthesizer1.jpg | Synthesizer 1<br />
File:Synthesizer2.jpg | Synthesizer 2<br />
</gallery><br />
<br />
== Schweissen ==<br />
<br />
Bei dem Skill-Share Workshop von [https://www.hackteria.org/wiki/Team_G2020/ Team G2020] konnten wir verschiedene Schweissverfahren kennenlernen und auch gleich anwenden.<br />
<br />
Es wurde uns das [https://de.wikipedia.org/wiki/Lichtbogenhandschwei%C3%9Fen/ Elektrodenschweissen], das [https://de.wikipedia.org/wiki/Schutzgasschwei%C3%9Fen/ MIG-Schweissen] und das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] nähergebracht.<br />
<br />
Dieser Workshop war für uns alle sehr interessant, da sich bisher noch keiner von uns so wirklich mit dem Schweissen und den verschiedenen Verfahren auskannte. An diesem Tag konnten wir nach einer kurzen Theorie gleich sofort selber handanlegen und die verschiedenen Schweissverfahren ausprobieren.<br />
<br />
Dabei mussten wir feststellen, dass es gar nicht so einfach ist wie es immer aussieht. Besonders das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] braucht sehr viel Übung und Geschick um wirklich schöne Schweissergebnisse zu erzielen.<br />
<br />
== Autonomes Nervensystem und das Hören in der Medizin ==<br />
<br />
Der Assistent Dr. Christian Gehringer, MSc. (ETH) hielt uns einen sehr interessanten Vortrag. Dabei ging es darum, dass wir die Anatomie kennenlernen und erkunden am Beispiel des Hörens z.B mit einem Stethoskop.<br />
<br />
[https://www.hackteria.org/wiki/Autonomes_Nervensystem_und_das_H%C3%B6ren_in_der_Medizin/ Autonomes Nervensystem und das Hören in der Medizin]</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=MedTechDIY20_Die_Profis&diff=41654MedTechDIY20 Die Profis2020-02-09T11:46:49Z<p>Tnroth: /* Hack 3: Zinnguss */</p>
<hr />
<div>Hier gehts zurück auf: [[Medizintechnik DIY]]<br />
<br />
[[File:DieProfis.png|700px|right|none|Wochenplan]]<br />
<br />
= Team =<br />
<br />
'''Die Profis''' besteht aus den drei Studierenden '''Daniel Glur''', '''Lukas Roth''' und '''Daniel Zellweger''' der Hochschule Luzern. Im Rahmen der Blockwoche "DIY Medizintechnik" formierte sich das Team aus verschiedenen Studiengängen um auch interdisziplinär voneinander zu lernen und Wissen auszutauschen.<br />
<br />
'''Mitglieder:'''<br />
<br />
Maschinentechnik: <gallery><br />
File:DanielGlur.jpg | Daniel Glur<br />
File:LukasRoth.jpg | Lukas Roth<br />
</gallery><br />
<br />
Medizintechnik: <gallery><br />
File:DanielZellweger.jpg | Daniel Zellweger<br />
</gallery><br />
<br />
= Pflichtlektüre =<br />
<br />
'''How to control someone else's arm with your brain | Greg Gage'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/rSQNi5sAwuc<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
In Diesem Video wird gezeigt wie man über die Aufnahme eines Biologischen Signals, dieses an eine zweite Person weitergeleitet werden kann.<br />
Dies funktioniert jedoch nur aus verschiedenen Gründen bedingt. Nebst den allgemeinen Störeinflüsse aus der Messtechnik, kommen zusätzlich noch jene der Ansteuerung. Da das Signal nur von einzelnen Muskelfasern abgefangen wird, kann dieses nicht sämtliche Muskelfasern der zweiten Person Reizen. Dies hat zur folge, dass nur eine annähernd ähnliche Bewegung des Armes arfolgt.<br />
<br />
<br />
'''What is Open Source explained in LEGO'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/a8fHgx9mE5U<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Durch die Verwendung der Open Source Methode erhält man die Möglichkeit während des Projektes noch Erweiterungen oder Veränderungen anzustreben.<br />
<br />
'''"Why toys make good medical devices | Jose Gomez-Marquez'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/UHCT9SOBHs0<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Nebst dem Preis besitzen Spielzeuge diverse spezifische Funktionen. Da diese meist günstige Anschaffung auch einfach verändert werden kann, sind sie sehr geeignet dafür umgebaut zu werden. Somit sind Spielzeuge welche chemische oder sensorische Funktionen besitzen ein gefundenes fressen für den Hacker und eine Alternative für Regionen in welchen die finanzielle Situation teure Medizinprodukte nicht erlauben.<br />
<br />
= Einleitung =<br />
Die Blockwoche "DIY Medizintechnik" verbindet Anwendungen der Medizintechnik mit Do It Yourself (DIY) Ansätzen. Dadurch wird das tiefere Verständnis von Medizintechnischen Geräten durch einen direkten, interdisziplinären und möglichst selbstgesteuerten Zugang gefördert. Basierend auf verschiedenen elektrophysiologischen Messmodulen (EMG, EKG, EOG, EEG) entwickeln die Studierenden im Team Ideen für innovative Projekte. Erste Prototypen werden mit den Mitteln der Digitalen Fabrikation hergestellt und getestet. Tag für Tag stehen produktive "Hacks" auf dem Programm. Hacks sind sehr praxisbezogene Arbeitssequenzen wo die Studierenden Experimente durchführen sowie Prototypen entwickeln und bauen können. Dabei ist aber nicht nur die Medizintechnik zentral sondern auch der Interdisziplinäre Austausch sowie eine Skill-Share-Session wo die Studierenden ganz nach dem do it yourself Gedanken einen eigenen Workshop leiten können.<br />
Alle Erkenntnisse und Erfahrungen werden laufend in einem eigenen Wiki-Eintrag festgehalten und dokumentiert.<br />
<br />
Die Blockwoche wird von den beiden Dozenten [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] und [https://www.hackteria.org/wiki/Gaudi/ Urs Gaudenz] duchgeführt. Unterstützt wurden die Beiden von '''Dr. Christian Gehringer, MSc. (ETH)''' und [http://chrisobrist.ch/about// Chris Obrist]<br />
<br />
Maschinentechnik: <gallery><br />
File:MarkDusseiller.jpg | Dr. Marc R. Dusseiller<br />
File:UrsGaudenz.jpg | Urs Gaudenz<br />
</gallery><br />
<br />
= Planung =<br />
<br />
Die Blockwoche wird wie in folgendem Wochenplan unterteilt:<br />
<br />
[[File:Wochenplan2020.jpg|700px|thumb|none|Wochenplan]]<br />
<br />
= Wochenrückblick =<br />
== Die Woche in Bilder==<br />
[[File:ProfisInAction.PNG|400px]]<br />
[[File:Komponente.PNG|300px]]<br />
[[File:Aufbau.PNG|400px]]<br />
[[File:Motor_mit_Adapter.jpg|300px]]<br />
[[File:Pumpe.PNG|350px]]<br />
[[File:pulsmessung.jpg|450px]]<br />
[[File:Zusammenbau2.jpg|300px]]<br />
[[File:Foto 07.02.20, 11 14 53.jpg|300px]]<br />
[[File:DanielZellweger.jpg|300px]]<br />
<br />
== Tag 1==<br />
'''Einführung'''<br />
<br />
Wir traffen uns zu beginn im FABLAB, wo sich die Dozenten vorstellten und uns über Ihren bisherigen Werdegang informierten. Das interessante an der beruflichen Laufbahn der beiden ist, dass beide ein Studium abgeschlossen haben und heute einer Tätigkeit nachgehen, welche eigentlich nicht mehr viel mit dem damaligen Studium zu tun hat. Das vermittelt unserer Meinung nach, den Studenten eine etwas andere Sichtweise als die technische Hochschule. Es zeigt z.B. dass man nach einem Studium nicht gezwungen ist auf diesem Fachgebiet zu arbeiten sondern dass der Arbeitsmarkt noch sehr viele andere Möglichkeiten zu bieten hat.<br />
<br />
Nachdem sie sich Vorgestellt haben, stellten sie uns auch noch den Assistent vor. Dieser ist ein ausgebildeter Arzt welcher sich momentan für seinen zweiten Doktortitel engagiert. Von Ihm und seinem grossen medizinischen Fachwissen können wir als Studenten die ganze Woche profitieren.<br />
<br />
Danach überliessen die Dozenten uns Studenten das Wort. Es war eine etwas andere Vorstellungsrunde wie man sie noch nicht kannte. Dazu stand uns ein ganzer Tisch mit kuriosen Gegenständen, welche etwas mit dem DIY Gedanke zu tun haben, zur verfügung. Sie vorderten uns alle auf einen Gegenstand auszuwählen. Danach mussten wir uns Vorstellen und noch ein paar Worte dazu verlieren welche Gemeinsamkeiten wir mit dem ausgesuchten Gegenstand teilen.<br />
<br />
'''DIY (Do It Yourself)'''<br />
<br />
Das DIY Prinzip basiert auf eigenem experimentieren und learning by doing<br />
<br />
{{#widget:Iframe<br />
|url= https://www.youtube.com/watch?v=3zH_J12G9sQ<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
<br />
'''How to use Wiki'''<br />
<br />
Durch die 45 minütige Einführung in die Handhabung das Wiki durch Dr. Marc R. Dusseiller waren wir bereit unsere Erkenntnisse und Projekte, welche wir in dieser Woche erfahren und durchführen werden, in einer Zugänglichen Form, niederzuschreiben.<br />
<br />
== Tag 2 ==<br />
Am zweiten Tag begannen wir die Vorbereitung Skill-Share-Session. Diesbezüglich sollte jeder Teilnehmer einen Skill, welcher er erlernen möchte und einen Skill, den man beibringen könnte notieren. Diese wurden dann auf einer Tafel in Cluster aufgeteilt. Zwölf davon wurden als Skill-Share Workshops ausgewählt und die Teilnehmer konnten sich nach Belieben einschreiben.<br />
<br />
[[File:SkillSession2020.jpg|500px|thumb|none|Skill-share-session]]<br />
<br />
Während des zweiten Teils arbeiteten wir an unserem Experiment weiter, welches wir am Vortag begonnen haben.<br />
Dazu mussten wir die elektronischen Bauteile mit unserem Laptop verbinden und einen vorgefertigten Sketch laufen lassen.<br />
<br />
Nachdem wir den ersten Versuch erfolgreich durchführen konnten, versuchten wir mit dem Arduino einen Stepmotor anzusteuern. Dabei stiessen wir jedoch auf einige Schwierigkeiten. Da wir diese bis zur Einführung des Lasercutters und des 3D-Druckers fertig haben sollten. Siehe [[#Hack 0]]<br />
<br />
Unteranderem wurde unsere Skill-Share-Session über Arduino vorbereitet.<br />
<br />
Am Abend kam [http://chrisobrist.ch/about// Chris Obrist] zu Besuch und unterhielt uns mit einer wundervollen musikalischen Darbietung.<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/Hj1Ogr8137o<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
== Tag 3 ==<br />
Von 9:00 Uhr bis nach dem Mittag um 14:00 Uhr waren wir alle mit der [[#Skill-Share-Session]] beschäftigt.<br />
<br />
Danach hatten wir Zeit um den nächsten Hack vorzubereiten und zu planen.<br />
<br />
== Tag 4 ==<br />
Den Vormittag verbrachten wir weiter mit dem Hack 1, welchen wir dann vor der Mittagspause den Dozenten und allen Mitstudierenden präsentieren durften. Leider litten wir während des ganzen Hack 1 sehr unter Zeitdruck, was auf eine turbulente Projektphase zurückzuführen ist. Mehr dazu erfährst du im [[#Hack 1]].<br />
<br />
Nach einer kurzen Inspirationphase entschieden wir uns dafür eine kleine Spritzenpumpe zu basteln. [[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 5 ==<br />
Am Tag 5 ging es darum die Einzelteile physikalisch sowie über ein Funktionierendes Arduinoprogamm zum laufen zu bringen.<br />
[[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 6 ==<br />
Zum Abschluss durften wir alle Hacks der verschiedenen Teams begutachten. Interessant waren die spontanen Vorgehensweisen und auch die daraus entstandenen Produkte. Viele Teams suchten zuerst das Material und erst danach die Ideen. So entstanden die unterschiedlichsten Prototypen.<br />
Zudem Reflektierten wird die Blockwoche. Im Allgemeinen gefielen die Freiheit und auch der unkomplizierte Teamgeist untereinander. Besten Dank auch an die Organisatoren der Blockwoche.<br />
<br />
= Experimente =<br />
Bei den Experimenten sollte es darum gehen aus unterschiedlichsten Einzelteilen ein Produkt zu erschaffen. Dieser Prozess brachte uns dazu über die Grenzen unseres altäglichem Denken zu springen und in der Verbindung der einzelnen Bereiche solcher Produkte besser zu verstehen.<br />
<br />
== Hack 0 ==<br />
<br />
<br />
===Versuchsaufbau 1===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 1===<br />
Nach den Inputs der Dozenten verbrachten wir hauptsächlich die Zeit damit den Muscle Spiker Shield nach der Anleitung mit den dazugehörigen Teilen zusammenzulöten.[https://backyardbrains.com/products/files/MuscleSpikerShield.v.2.11.BuildingInstructions.pdf]V2.11<br />
Nebenbei machten wir unsere ersten Schritte in Arduino.<br />
Als wir unsere mechatronischen Komponenten zusammengestellt und ein Grundverständnis von Arduino angeeignet haben, verbanden wir dies in einem Experiment. <br />
Das Experiment welches wir durchführten nennt man Control Machines with your Brain und ist auf der Seite von [https://backyardbrains.com/experiments/muscleSpikerShield/ Backyard Brains] nachzusehen.<br />
<br />
Für den Versuch wurden Elektroden an den Testpersonen angeschlossen und über den Arduino ausgelesen.<br />
Der Versuch wurde mit zwei Testpersonen durchgeführt. Dabei fiel uns nebst der Kontrolle der LED's auch auf, dass der Puls gemessen wurde. Dies unabhängig von der Position der Elektroden. Vermutlich reagieren die Elektroden zu sensitiv für diese Anwendung.<br />
<br />
<br />
[[File:UeberblickVersuchTeamD.jpg|400px|thumb|none|Versuchsaufbau]]<br />
[[File:Versuchsaufbau1TeamD.jpg|400px|thumb|none|Elektrodenbefestigung]]<br />
[[File:MessungDanielGlur.jpg|400px|thumb|none|Messung von Daniels Puls]]<br />
<br />
===Versuchsaufbau 2===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 2===<br />
<br />
Als zweites Experiment versuchten wir durch das anspannen der Muskeln einen Servomotor anzusteuern. Wie es auch auf der Homepage von [https://backyardbrains.com/experiments/MuscleSpikerShield_GripperHand/ Backyard Brains] anzutreffen ist. Dieser Versuch konnte aber leider aus Zeitgründen nicht zu Ende geführt werden. Wir konnten lediglich das Arduinoprogramm laden und etwas anpassen.<br />
<br />
===Reflexion===<br />
<br />
Der Hack 0 war in der Hinsicht sehr interessant, da wir alle unsere ersten Erfahrungen mit einem Arduino machen konnten. Einige von unserem Team hatten bisher auch noch nie auf einer Printplatte irgendwelche Widerstände oder Schalter etc. gelötet. Ebenso war es erstaunlich, dass man mit so wenig so viel verschiedene Sachen machen kann. Keiner von uns hat gedacht dass wir bereits am ersten Tag irgend etwas mit unseren Muskeln kontrollieren könnten. Insgesamt kam der Hack 0 gut bei uns an und wir alle konnten einiges davon profitieren und hoffentlich auch den weiteren Hacks weiterverwenden.<br />
<br />
== Hack 1: Baseball-Cap mit Ventilator ==<br />
<br />
Der Hack 1 beschreibt die Konzept- und Testphase des ersten Prototyps.<br />
<br />
Zu Beginn waren wir uns sehr unschlüssig was wir wirklich bauen wollen. Also entschieden wir uns für ein weiteres Experiment mit einem Bausatz von Backyard Brains. Wir versuchten durch die Funktion des Heart and Brain Spiker Shield einen Ventilator anzusteuern. Der Gedanke, welcher uns auf diese Idee führte, kennt wohl jeder Student. Während einer Prüfung kommt so mancher ins Grübeln und in harten Fällen kommt es auch vor dass einem eine Schweissperle von der Stirn läuft. Um in solchen Fällen für die nötige Kühlung zu sorgen, sollen Sensoren die Hirnströme gemessen und als Signal wiedergeben werden um damit einen Ventilator anzuschalten.<br />
<br />
Zu unserem eigenen Erstaunen erhielten wir sogar ein Signal aus unserer Messung. Es stellte sich aber sehr bald heraus, dass das wohl nicht die Hirnströme waren sondern eher Bewegungen des Kopfs und der Kabel. Denn die Sensoren sind recht empfindlich gegen solche Einflüsse. Zudem kam noch, dass die Sensoren über den Haaren angebracht wurden, was das Signal der Hirnströme noch zusätzlich verschlechterte. Nach einigen Versuchen sahen wir ein, dass das wohl eine zu grosse Herausforderung war und wir uns besser an einen einfacheren Versuch versuchen sollten.<br />
<br />
[[File:heart_and_brain.jpg|300px|thumb|none|Signal aus Messung der "Hirnströme"]]<br />
[[File:EEGDanielGlur.jpg|500px|thumb|none|Daniel beim messen der "Hirnströme"]]<br />
<br />
Also beschlossen wir uns anstelle der Hirnströme den Puls zu messen. Denn während einer Prüfung kann es durchaus auch vorkommen, dass der Puls etwas ansteigt. Die Messungen sollten dann ausgelesen werden und wenn der Puls eine gewisse Frequenz übersteigt, schaltet ein Ventilator ein um den Studenten wieder etwas zu beruhigen.<br />
<br />
Für diesen Versuch platzierten wir Sensoren am Unterarm und an der Handoberfläche. Idealerweise sollten laut Assistent Christian die Sensoren aber so weit wie möglich voneinander entfernt, an einer anderen Körperstelle angebracht werden um eine gewisse Referenz zu haben und um sicherzustellen, dass man wirklich den Puls misst. Unsere Kabel waren aber leider etwas zu kurz. Wir erhielten trotzdem ein relativ gutes Signal von welchem man davon ausgehen konnte, dass es sich um den Puls handelte. Jetzt nur noch das Signal auswerten, einen Frequenzbegrenzer programmieren und mithilfe von einem Arduino UNO den Ventilator ansteuern... Dachten wir... Dies war allerdings etwas Schwieriger als erwartet und überstieg unsere Kompetenzen. Das führte uns dazu auch diesen Versuch an dieser Stelle abzubrechen und nochmal zu überdenken.<br />
<br />
<br />
[[File:puls.png|400px|thumb|none|Pulssignal]]<br />
[[File:pulsmessung.jpg|400px|thumb|none|Pulssmessung]]<br />
<br />
<br />
Nun rannte uns schon langsam die Zeit davon. Doch dann kam uns die Idee, welche wir schon zu Beginn benötigt hätten. Und zwar wollten wir einen Ventilator auf einem Baseball-Cap anbringen und diesen ansteuern wenn ein gewisses Temperaturniveau unter dem Cap überschritten wird wird. Dazu wird ein 12V Ventilator via Relais von dem Arduino angesteuert. Weil der Arduino nur eine Spannung von 5V liefert, musste ein 12V Netzgerät den Ventilator mit Strom versorgen. Damit man den Ventilator so schalten konnte, damit er den Strom über das 12V Netzgerät bezieht, mussten wir noch ein Relais einbauen. Den Code für den Arduino bezogen wir aus verschiedenen ähnlichen Projekten aus dem Internet und passten ihn spezifisch für unsere Anwendung an. Für das auslesen der Temperatur mussten wir zuerst zwei Libreries herunterladen (DallasTemperature und OneWire).<br />
<br />
[[File:Komponente.PNG|400px|thumb|none|Verbaute Komponenten]]<br />
<br />
Nun mussten wir noch den Ventilator am Baseball-Cap anbringen. Dafür wurde eine Halterung im CAD konstruiert und mit einem 3D-Drucker ausgedruckt. Die Teile wurden danach zusammengesteckt und mit dem Baseball-Cap verschraubt. Natürlich wurde zuvor ein Loch in das Cap geschnitten, damit der Ventilator auch seinen Zweck erfüllen kann und dem Studenten einen kühlen Kopf verschafft.<br />
<br />
[[File:Aufbau.PNG|350px|thumb|none|3D-Modell im CAD]]<br />
<br />
[[File:Zusammenbau1.jpg|350px]]<br />
[[File:Zusammenbau2.jpg|350px]]<br />
<br />
Nun wurde unser Prototyp getestet. Der Sensor erfüllte seinen Dienst und wir konnten erfolgreich die Temperaturen messen. Jedoch war das Relais während dem Testen ständig eingeschalten und der Ventilator lief die ganze Zeit auch wenn die Temperatur den Minimalwert unterschritten hatte. Es hat sich also irgendwo in unserem Programm einen Fehler eingeschlichen. Den galt es nun zu finden und zu beheben. Dazu bauten wir einen Druckknopf ein um zu überprüfen ob das Relais defekt war und um die Fehlerquellen etwas einzugrenzen.<br />
<br />
[[File:Temperatur.jpg|350px]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/TQnGa5WiGS4<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
Der Druckknopf funktionierte, das Relais schaltete perfekt ein und aus und der Ventilator wurde an- und abgestellt. Somit wissen wir nun wo der Fehler zu suchen ist und können versuchen das Programm an diesen Stellen zu bereinigen. Nur ist jetzt schon Donnerstag Nachmittag und der Hack 2 hat schon begonnen. Wir alle wurden aufgefordert unseren bisherigen Prototypen aufzugeben und etwas neues, anderes zu versuchen und zu testen. Also legen wir schweren Herzens unser erster Prototyp beiseite und widmen unsere Kreativität dem nächsten Hack.<br />
<br />
=== Reflexion ===<br />
Der Hack 1 hat uns gezeigt, dass es gar nicht so einfach ist beim ersten Versuch ein brauchbares Resultat zu erzielen. Jedoch konnten wir so aus zwei vorhergehenden, fehlgeschlagenen Ansätzen eine Idee weiterentwickeln. Somit konnten wir mit unseren Kompetenzen und den Erfahrungen aus dem Hack 0 ein zufriedenstellendes Resultat erzielen. Durch die zwei Versuche zuvor ging leider recht viel Zeit "verloren", welche wir sehr benötigt hätten um unser erster Prototyp fehlerfrei hinzukriegen. Es war uns auch eine Lehre, dass man nicht zu lange an einer Sache verharren sollte wenn einem nur wenig Zeit zur Verfügung steht. Manchmal ist es besser man wirft alles nochmal über den Haufen und beginnt von vorne. Trotz allen Strapazen während des Hack 1 sind wir mit unserem ersten Prototyp sehr zufrieden und konnten auch bei diesem Versuch wieder viel profitieren und mitnehmen. Nun blicken wir gespannt nach vorne auf den nächsten Hack.<br />
<br />
<br />
===Code===<br />
<br />
Wir konnten zwar die Temperatur herauslesen und das Relais über einen Butten steuern, jedoch die Steuerung anhand der Temperatur geling uns nicht.<br />
<br />
<pre><br />
/********************************************************************/<br />
// First we include the libraries<br />
#include <OneWire.h> <br />
#include <DallasTemperature.h><br />
/********************************************************************/<br />
// Data wire is plugged into pin 2 on the Arduino <br />
#define ONE_WIRE_BUS 2 <br />
<br />
float tempReading;<br />
/********************************************************************/<br />
// Setup a oneWire instance to communicate with any OneWire devices <br />
// (not just Maxim/Dallas temperature ICs) <br />
OneWire oneWire(ONE_WIRE_BUS); <br />
/********************************************************************/<br />
// Pass our oneWire reference to Dallas Temperature. <br />
DallasTemperature sensors(&oneWire);<br />
/********************************************************************/ <br />
int relayPin = 4; // Relay Singnal lead to Digital Pin [D2-D12]<br />
<br />
float maxTemperature = 30.00; // The Max Temperature allowed<br />
float minTemperature = 25.00; // The Min Temperature allowed<br />
<br />
// constants won't change. They're used here to set pin numbers:<br />
const int buttonPin = 8; // the number of the pushbutton pin<br />
const int ledPin = 4; // the number of the LED pin<br />
<br />
// variables will change:<br />
int buttonState = 0; // variable for reading the pushbutton status<br />
<br />
void setup(void) {<br />
// initialize the LED pin as an output:<br />
pinMode(ledPin, OUTPUT);<br />
// initialize the pushbutton pin as an input:<br />
pinMode(buttonPin, INPUT);<br />
<br />
Serial.begin(9600); <br />
Serial.println("Dallas Temperature IC Control Library Demo"); <br />
// Start up the library <br />
sensors.begin(); <br />
}<br />
<br />
void loop(void) <br />
{ <br />
// call sensors.requestTemperatures() to issue a global temperature <br />
// request to all devices on the bus <br />
/********************************************************************/<br />
Serial.print(" Requesting temperatures..."); <br />
sensors.requestTemperatures(); // Send the command to get temperature readings <br />
Serial.println("DONE"); <br />
/********************************************************************/<br />
Serial.print("Temperature is: "); <br />
Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"? <br />
// You can have more than one DS18B20 on the same bus. <br />
// 0 refers to the first IC on the wire <br />
delay(1000); // Check Temperature every second<br />
<br />
float temperature = getTemperature();<br />
if(temperature >= maxTemperature){<br />
powerOnRelay();<br />
} else if (temperature <= minTemperature) {<br />
powerOffRelay();<br />
}<br />
delay(1000); // Check tempertature every second<br />
<br />
} <br />
void powerOnRelay() {<br />
digitalWrite(relayPin, HIGH);<br />
Serial.println("Relay On");<br />
}<br />
<br />
void powerOffRelay() {<br />
digitalWrite(relayPin, LOW);<br />
Serial.println("Relay Off");<br />
}<br />
float getTemperature(){<br />
tempReading = digitalRead(ONE_WIRE_BUS);<br />
<br />
// read the state of the pushbutton value:<br />
buttonState = digitalRead(buttonPin);<br />
<br />
// check if the pushbutton is pressed. If it is, the buttonState is HIGH:<br />
if (buttonState == HIGH) {<br />
// turn LED on:<br />
digitalWrite(ledPin, HIGH);<br />
} else {<br />
// turn LED off:<br />
digitalWrite(ledPin, LOW);<br />
}<br />
}<br />
</pre><br />
<br />
== Hack 2: Spritzenpumpe ==<br />
<br />
Nachdem der Hack 1 abgeschlossen war, machten wir uns aufs Neue darüber Gedanken was wir für einen Prototyp für den Hack 2 bauen wollen. Urs hat nach dem Abschluss von Hack 1 gesagt, wir sollten uns ein komplett neues Produkt überlegen, welches möglicherweise auch etwas mit der Medizintechnik zu tun hat. Nach einem Brainstorming kamen wir noch nicht so richtig auf einen grünen Zweig. So kamen wir auf die Idee uns einen Kaffee zu holen und einfach mal durch das FABLAB zu laufen um alles Mögliche anzuschauen, in die Hand zu nehmen und uns von all diesen Gegenständen inspirieren zu lassen. So kamen uns diverse Gegenstände in die Finger. darunter waren Servomotoren sowie einige DC-Motoren, eine Spritze, eine Pumpe, ein Micro-Switch Schalter, ein Potentiometer und vieles mehr. Diese Gegenstände haben wir dann auf unserem Gruppentisch ausgebreitet und uns Gedanken darüber gemacht was wir damit wohl anstellen konnten zum Thema Medizintechnik. So entstanden relativ schnell einige Ideen. Wir haben uns schlussendlich dafür entschieden ein Dosiergerät für eine medizinische Spritze zu machen. Dieses sollte so funktionieren, dass wir eine Spritze in eine Vorrichtung legen und über einen DC-Motor zum Einfahren bzw. Ausfahren bringen. Dazu muss die Drehbewegung des Motors in eine Lineare Bewegung umgeleitet werden. Zudem muss ggf. auch die Drehzahl des Motors durch ein Potentiometer reguliert werden können um einen zu schnellen Aus- oder Einfahrvorgang zu verhindern. Soviel zu zu den technischen Überlegungen. <br />
<br />
Sofort nach dem Entscheid suchten wir nach einem geeigneten Motor. Dieser sollte dabei eine eher tiefe Drehzahl haben damit die Spritze nur langsam ein- und ausfährt. Zudem suchten wir im Internet nach einem geeigneten Mechanismus der die Drehbewegung in eine lineare Bewegung umwandelt. Denn wir hatten leider zu wenig zeit um alles selber zu entwerfen und zu konstruieren. So wurden wir auf auf der Hompage von [https://www.thingiverse.com/thing:2797132/ Thingiverse] schliesslich fündig. Also konnte wir die Folgenden Komponenten herunterladen und mit dem 3D-Drucker ausdrucken.<br />
<br />
Komponenten: <gallery><br />
File:Halteplatte.PNG | Halteplatte<br />
File:Zahnrad.PNG | Zahnradpaar<br />
File:Zahnradpaar.PNG | Zahnstange<br />
File:Zahnstange.PNG | Zahnrad<br />
</gallery><br />
<br />
Da wir einen anderen Motor verwendeten als für diesen Mechanismus vorgesehen wäre, mussten wir noch eine passende Adapterplatte konstruieren, damit der Motor auch auf die Vorrichtung passt.<br />
<br />
<gallery><br />
File:Adapterplatte.PNG | Adapterplatte<br />
File:Motor.PNG | Motor<br />
File:Motor_mit_Adapter.jpg | Motor mit Adapter<br />
</gallery><br />
<br />
Der Motor benötigt, wie auch der Ventilator von Hack 1, eine Spannung von 12V für den Betrieb. Also mussten wir erneut das 12V Netzgerät verwenden. Damit unser zweiter Prototyp auch die gewünschte Fördermenge fördern kann, muss die Zeitdauer, in welcher gefördert werden soll, definiert werden. Das dazugehörige Programm wird mit einem Arduino UNO implementiert. Der Zugehörige Code haben wir durch Recherche im Internet und durch persönliches erweitern und anpassen erstellt. Die Drehzahl des Motors darf nicht zu hoch sein damit man die Fördermenge auch sinnvoll einstellen kann. Für diese Anwendung wird ein Potentiometer zwischen Relais und Motor gehängt. So kann die Motorspannung reguliert und die Drehzahl anforderungsgemäss eingestellt werden. Nachfolgend wird der Prozessablauf kurz beschrieben.<br />
<br />
Mit einem Knopfdruck wird wird ein Relais geschalten und der Motor wird angesteuert. Die Drehzahl des Motors wird über ein Getriebe reduziert. Die Zahnräder greifen auf eine Zahnstange und wandeln die Drehbewegung in eine lineare Bewegung um. An der Zahnstange wird der Stössel der Spritze befestigt. Der Rest der Spritze wird mit einem Kabelbinder fest mit der Bodenplatte verbunden damit sich dieser Teil nicht bewegen kann. Die programmierte Zeitdauer bestimmt welche Menge an Flüssigkeit gefördert werden soll.<br />
<br />
[[File:Pumpe.PNG|500px|thumb|none|Aufbau der Spritzenpumpe]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/PLG_S3GtVI8<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
=== Reflexion ===<br />
<br />
Anders als beim Hack 1 kamen waren wir uns bei diesem Hack sehr schnell einig was genau wir bauen möchten. Die ganze Ideenfindung erledigte sich sehr schnell und wir konnten nach bereits wenigen Stunden mit dem programmieren des Arduinos beginnen. Wie wir bereits im Hack 1 erfahren durften, ist das bei dem gedrängten Zeitplan dieser Woche ein grosser Vorteil. Rückblickend können wir urteilen, dass der Hack 2 aus unserer Sicht ein erfreuendes Erfolgserlebnis war. Unser zweiter Prototyp funktioniert genau so wie wir uns das von Beginn an vorgestellt haben. Per Knopfdruck fördert unser Prototyp eine gewisse Menge an Flüssigkeit.<br />
<br />
=== Code ===<br />
<br />
<pre><br />
<br />
bool geschaltet = false;<br />
int RelaisPin = 10; <br />
int tasterPin = 2;<br />
int empfindlichkeit = 200;<br />
<br />
void setup() {<br />
<br />
pinMode( tasterPin, INPUT_PULLUP);<br />
pinMode( RelaisPin, OUTPUT);<br />
<br />
}<br />
<br />
void loop() {<br />
<br />
if (digitalRead(tasterPin) == LOW) <br />
{<br />
if (geschaltet == false) {<br />
geschaltet = true;<br />
}<br />
else {<br />
geschaltet = false;<br />
}<br />
}<br />
<br />
if (geschaltet == true) {<br />
digitalWrite(RelaisPin, HIGH);<br />
delay(1000);<br />
geschaltet = false; <br />
}<br />
<br />
if (geschaltet == false) {<br />
digitalWrite(RelaisPin, LOW);<br />
}<br />
<br />
delay(empfindlichkeit);<br />
}<br />
</pre><br />
<br />
= Skill-Share-Session =<br />
<br />
== Grundlagen der Arduinoprogrammierung ==<br />
<br />
Dieser Kurs wurde von unserer Gruppe angeboten und soll den Teilnehmern die Grundlage der Programierung eines Arduino UNO beibringen. Folgend werden die grundlegenden Befehle und deren Syntax vorgestellt. Der Aufbau folgt dem YouTube Tutorial von Max. Hier gelangst du zu dem Link: [https://www.youtube.com/watch?v=eaFvQG8wrGw&list=PLAB63281B90FB376E&index=3]<br />
<br />
=== Skript ===<br />
Der Code wird in einem Skript geschrieben. Dieses ist in zwei Bereiche aufgeteilt<br />
* Void setup() Dieses Skript wird einmalig ausgeführt und enthält zB. Input und output<br />
* Void loop() Dieser Teil des Skripts wird als Dauerschleife wiederholt<br />
<br />
==== Befehlseingabe ====<br />
<br />
Die Befehle werden nach folgender Syntax eingegeben:<br />
<br />
* Funktion(Parameter1, Parameter2);<br />
<br />
Dabei muss das «;» gesetzte werden, ausserdem spielen Gross- und Kleinbuchstaben eine Rolle.<br />
<br />
=== Variablen ===<br />
Übersichtshalber sollen sprechende Namen für die Bezeichnung von z.B. Outputs verwendet werden. Dabei können verschiedene Datentypen ausgewählt werden.<br />
<br />
==== Datentyp ====<br />
* int Ganze Zahlen von -32768 … 32767 z.B. 1, 48, -654<br />
* boolean Entweder true oder false<br />
* byte 8 Bit an Informationen z.B. 00010101 (=21)<br />
* char enthält 1 Byte Informationen, das ein Zeichen darstellt z.B. 65 = A<br />
* long grosse Zahlen von ca. -2.1 Milliarden bis 2.1 Milliarden z.B. 15636451<br />
* float Komazahlen z.B. 5.498<br />
* string Zeichenketten z.B. «Do it yourself»<br />
<br />
==== Deklaration Syntax ====<br />
<br />
* Datentyp Name = Wert;<br />
<br />
oder<br />
<br />
* Datentyp Name;<br />
* Name = Wert;<br />
<br />
====Ort der Deklaration====<br />
<br />
Die Variable muss immer im Teil des Skriptes deklariert sein, wo sie auch gebraucht wird. Wird die Variable im setup wie auch im loop benötigt, so kann man die Variable als sogenannte globale Variable oberhalb des Setups deklarieren.<br />
<br />
===If-Schleife===<br />
<br />
Bei der If-Schleife wird der Wert einer Variablen mit einem Vergleichswert verglichen. Falls der Vergleich positiv ist, wird der Code ausgeführt, ansonsten übersprungen. Dazu sind Vergleichsoperatoren notwendig.<br />
<br />
====Syntax====<br />
<br />
if(Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
====Vergleichsoperatoren====<br />
<br />
* == gleich<br />
* != ungleich<br />
* < kleiner<br />
* < grösser<br />
* <= kleiner gleich<br />
* >= grösser gleich<br />
<br />
===While-Schleife===<br />
<br />
Mit der While-Schleife wird die Bedingung fortlaufend geprüft. Stimmt diese, wird der Code ausgeführt, ansonsten wird der Code übersprungen. Es können die selben Vergleichsoperatoren wie bei der If-Schleife verwendet werden.<br />
<br />
====Syntax====<br />
<br />
while (Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
==Bildgebende Verfahren==<br />
<br />
Der Tag begann mit einer Einführung in die Bildgebenden Verfahren durch David Stadelmann. Hierbei erklärte er uns, verschiedene Methoden, um Bilder aus dem Körperinneren zu machen und welche Methode für die verschiedenen Gewebetypen gebraucht werden. Zudem Zeigte und erklärte er uns anhand von Beispielen was die Einzelnen Schattierungen aussagen könnten.<br />
<br />
[[DIY-MedTech Bildgebende Verfahren-Unterschiedliche Bildeindrücke - Team Frosch]]<br />
<br />
==Synths & Sound ==<br />
<br />
Danach ging es weiter mit dem Kurs Synths & Sounds. Diese Session wurde von [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] durchgeführt. Hierbei zeigte er uns, wie man mit verschieden erzeugten Schwingungen eine grosse Variation von Tönen generiert kann. Zudem auch wie man elektronisch gewisse Instrumente Simulieren könnte und durch die Aneinanderreihung verschiedenster Tonvariationen eine Melodie enstehen kann. Dies mit unterschiedlich Variationen von selbstgebauten Synthesizers.<br />
<br />
<gallery><br />
File:Sinthesizer1.jpg | Synthesizer 1<br />
File:Synthesizer2.jpg | Synthesizer 2<br />
</gallery><br />
<br />
== Schweissen ==<br />
<br />
Bei dem Skill-Share Workshop von [https://www.hackteria.org/wiki/Team_G2020/ Team G2020] konnten wir verschiedene Schweissverfahren kennenlernen und auch gleich anwenden.<br />
<br />
Es wurde uns das [https://de.wikipedia.org/wiki/Lichtbogenhandschwei%C3%9Fen/ Elektrodenschweissen], das [https://de.wikipedia.org/wiki/Schutzgasschwei%C3%9Fen/ MIG-Schweissen] und das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] nähergebracht.<br />
<br />
Dieser Workshop war für uns alle sehr interessant, da sich bisher noch keiner von uns so wirklich mit dem Schweissen und den verschiedenen Verfahren auskannte. An diesem Tag konnten wir nach einer kurzen Theorie gleich sofort selber handanlegen und die verschiedenen Schweissverfahren ausprobieren.<br />
<br />
Dabei mussten wir feststellen, dass es gar nicht so einfach ist wie es immer aussieht. Besonders das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] braucht sehr viel Übung und Geschick um wirklich schöne Schweissergebnisse zu erzielen.<br />
<br />
== Autonomes Nervensystem und das Hören in der Medizin ==<br />
<br />
Der Assistent Dr. Christian Gehringer, MSc. (ETH) hielt uns einen sehr interessanten Vortrag. Dabei ging es darum, dass wir die Anatomie kennenlernen und erkunden am Beispiel des Hörens z.B mit einem Stethoskop.<br />
<br />
[https://www.hackteria.org/wiki/Autonomes_Nervensystem_und_das_H%C3%B6ren_in_der_Medizin/ Autonomes Nervensystem und das Hören in der Medizin]</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=MedTechDIY20_Die_Profis&diff=41653MedTechDIY20 Die Profis2020-02-09T11:44:50Z<p>Tnroth: /* Hack 3: Zinnguss */</p>
<hr />
<div>Hier gehts zurück auf: [[Medizintechnik DIY]]<br />
<br />
[[File:DieProfis.png|700px|right|none|Wochenplan]]<br />
<br />
= Team =<br />
<br />
'''Die Profis''' besteht aus den drei Studierenden '''Daniel Glur''', '''Lukas Roth''' und '''Daniel Zellweger''' der Hochschule Luzern. Im Rahmen der Blockwoche "DIY Medizintechnik" formierte sich das Team aus verschiedenen Studiengängen um auch interdisziplinär voneinander zu lernen und Wissen auszutauschen.<br />
<br />
'''Mitglieder:'''<br />
<br />
Maschinentechnik: <gallery><br />
File:DanielGlur.jpg | Daniel Glur<br />
File:LukasRoth.jpg | Lukas Roth<br />
</gallery><br />
<br />
Medizintechnik: <gallery><br />
File:DanielZellweger.jpg | Daniel Zellweger<br />
</gallery><br />
<br />
= Pflichtlektüre =<br />
<br />
'''How to control someone else's arm with your brain | Greg Gage'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/rSQNi5sAwuc<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
In Diesem Video wird gezeigt wie man über die Aufnahme eines Biologischen Signals, dieses an eine zweite Person weitergeleitet werden kann.<br />
Dies funktioniert jedoch nur aus verschiedenen Gründen bedingt. Nebst den allgemeinen Störeinflüsse aus der Messtechnik, kommen zusätzlich noch jene der Ansteuerung. Da das Signal nur von einzelnen Muskelfasern abgefangen wird, kann dieses nicht sämtliche Muskelfasern der zweiten Person Reizen. Dies hat zur folge, dass nur eine annähernd ähnliche Bewegung des Armes arfolgt.<br />
<br />
<br />
'''What is Open Source explained in LEGO'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/a8fHgx9mE5U<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Durch die Verwendung der Open Source Methode erhält man die Möglichkeit während des Projektes noch Erweiterungen oder Veränderungen anzustreben.<br />
<br />
'''"Why toys make good medical devices | Jose Gomez-Marquez'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/UHCT9SOBHs0<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Nebst dem Preis besitzen Spielzeuge diverse spezifische Funktionen. Da diese meist günstige Anschaffung auch einfach verändert werden kann, sind sie sehr geeignet dafür umgebaut zu werden. Somit sind Spielzeuge welche chemische oder sensorische Funktionen besitzen ein gefundenes fressen für den Hacker und eine Alternative für Regionen in welchen die finanzielle Situation teure Medizinprodukte nicht erlauben.<br />
<br />
= Einleitung =<br />
Die Blockwoche "DIY Medizintechnik" verbindet Anwendungen der Medizintechnik mit Do It Yourself (DIY) Ansätzen. Dadurch wird das tiefere Verständnis von Medizintechnischen Geräten durch einen direkten, interdisziplinären und möglichst selbstgesteuerten Zugang gefördert. Basierend auf verschiedenen elektrophysiologischen Messmodulen (EMG, EKG, EOG, EEG) entwickeln die Studierenden im Team Ideen für innovative Projekte. Erste Prototypen werden mit den Mitteln der Digitalen Fabrikation hergestellt und getestet. Tag für Tag stehen produktive "Hacks" auf dem Programm. Hacks sind sehr praxisbezogene Arbeitssequenzen wo die Studierenden Experimente durchführen sowie Prototypen entwickeln und bauen können. Dabei ist aber nicht nur die Medizintechnik zentral sondern auch der Interdisziplinäre Austausch sowie eine Skill-Share-Session wo die Studierenden ganz nach dem do it yourself Gedanken einen eigenen Workshop leiten können.<br />
Alle Erkenntnisse und Erfahrungen werden laufend in einem eigenen Wiki-Eintrag festgehalten und dokumentiert.<br />
<br />
Die Blockwoche wird von den beiden Dozenten [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] und [https://www.hackteria.org/wiki/Gaudi/ Urs Gaudenz] duchgeführt. Unterstützt wurden die Beiden von '''Dr. Christian Gehringer, MSc. (ETH)''' und [http://chrisobrist.ch/about// Chris Obrist]<br />
<br />
Maschinentechnik: <gallery><br />
File:MarkDusseiller.jpg | Dr. Marc R. Dusseiller<br />
File:UrsGaudenz.jpg | Urs Gaudenz<br />
</gallery><br />
<br />
= Planung =<br />
<br />
Die Blockwoche wird wie in folgendem Wochenplan unterteilt:<br />
<br />
[[File:Wochenplan2020.jpg|700px|thumb|none|Wochenplan]]<br />
<br />
= Wochenrückblick =<br />
== Die Woche in Bilder==<br />
[[File:ProfisInAction.PNG|400px]]<br />
[[File:Komponente.PNG|300px]]<br />
[[File:Aufbau.PNG|400px]]<br />
[[File:Motor_mit_Adapter.jpg|300px]]<br />
[[File:Pumpe.PNG|350px]]<br />
[[File:pulsmessung.jpg|450px]]<br />
[[File:Zusammenbau2.jpg|300px]]<br />
[[File:Foto 07.02.20, 11 14 53.jpg|300px]]<br />
[[File:DanielZellweger.jpg|300px]]<br />
<br />
== Tag 1==<br />
'''Einführung'''<br />
<br />
Wir traffen uns zu beginn im FABLAB, wo sich die Dozenten vorstellten und uns über Ihren bisherigen Werdegang informierten. Das interessante an der beruflichen Laufbahn der beiden ist, dass beide ein Studium abgeschlossen haben und heute einer Tätigkeit nachgehen, welche eigentlich nicht mehr viel mit dem damaligen Studium zu tun hat. Das vermittelt unserer Meinung nach, den Studenten eine etwas andere Sichtweise als die technische Hochschule. Es zeigt z.B. dass man nach einem Studium nicht gezwungen ist auf diesem Fachgebiet zu arbeiten sondern dass der Arbeitsmarkt noch sehr viele andere Möglichkeiten zu bieten hat.<br />
<br />
Nachdem sie sich Vorgestellt haben, stellten sie uns auch noch den Assistent vor. Dieser ist ein ausgebildeter Arzt welcher sich momentan für seinen zweiten Doktortitel engagiert. Von Ihm und seinem grossen medizinischen Fachwissen können wir als Studenten die ganze Woche profitieren.<br />
<br />
Danach überliessen die Dozenten uns Studenten das Wort. Es war eine etwas andere Vorstellungsrunde wie man sie noch nicht kannte. Dazu stand uns ein ganzer Tisch mit kuriosen Gegenständen, welche etwas mit dem DIY Gedanke zu tun haben, zur verfügung. Sie vorderten uns alle auf einen Gegenstand auszuwählen. Danach mussten wir uns Vorstellen und noch ein paar Worte dazu verlieren welche Gemeinsamkeiten wir mit dem ausgesuchten Gegenstand teilen.<br />
<br />
'''DIY (Do It Yourself)'''<br />
<br />
Das DIY Prinzip basiert auf eigenem experimentieren und learning by doing<br />
<br />
{{#widget:Iframe<br />
|url= https://www.youtube.com/watch?v=3zH_J12G9sQ<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
<br />
'''How to use Wiki'''<br />
<br />
Durch die 45 minütige Einführung in die Handhabung das Wiki durch Dr. Marc R. Dusseiller waren wir bereit unsere Erkenntnisse und Projekte, welche wir in dieser Woche erfahren und durchführen werden, in einer Zugänglichen Form, niederzuschreiben.<br />
<br />
== Tag 2 ==<br />
Am zweiten Tag begannen wir die Vorbereitung Skill-Share-Session. Diesbezüglich sollte jeder Teilnehmer einen Skill, welcher er erlernen möchte und einen Skill, den man beibringen könnte notieren. Diese wurden dann auf einer Tafel in Cluster aufgeteilt. Zwölf davon wurden als Skill-Share Workshops ausgewählt und die Teilnehmer konnten sich nach Belieben einschreiben.<br />
<br />
[[File:SkillSession2020.jpg|500px|thumb|none|Skill-share-session]]<br />
<br />
Während des zweiten Teils arbeiteten wir an unserem Experiment weiter, welches wir am Vortag begonnen haben.<br />
Dazu mussten wir die elektronischen Bauteile mit unserem Laptop verbinden und einen vorgefertigten Sketch laufen lassen.<br />
<br />
Nachdem wir den ersten Versuch erfolgreich durchführen konnten, versuchten wir mit dem Arduino einen Stepmotor anzusteuern. Dabei stiessen wir jedoch auf einige Schwierigkeiten. Da wir diese bis zur Einführung des Lasercutters und des 3D-Druckers fertig haben sollten. Siehe [[#Hack 0]]<br />
<br />
Unteranderem wurde unsere Skill-Share-Session über Arduino vorbereitet.<br />
<br />
Am Abend kam [http://chrisobrist.ch/about// Chris Obrist] zu Besuch und unterhielt uns mit einer wundervollen musikalischen Darbietung.<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/Hj1Ogr8137o<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
== Tag 3 ==<br />
Von 9:00 Uhr bis nach dem Mittag um 14:00 Uhr waren wir alle mit der [[#Skill-Share-Session]] beschäftigt.<br />
<br />
Danach hatten wir Zeit um den nächsten Hack vorzubereiten und zu planen.<br />
<br />
== Tag 4 ==<br />
Den Vormittag verbrachten wir weiter mit dem Hack 1, welchen wir dann vor der Mittagspause den Dozenten und allen Mitstudierenden präsentieren durften. Leider litten wir während des ganzen Hack 1 sehr unter Zeitdruck, was auf eine turbulente Projektphase zurückzuführen ist. Mehr dazu erfährst du im [[#Hack 1]].<br />
<br />
Nach einer kurzen Inspirationphase entschieden wir uns dafür eine kleine Spritzenpumpe zu basteln. [[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 5 ==<br />
Am Tag 5 ging es darum die Einzelteile physikalisch sowie über ein Funktionierendes Arduinoprogamm zum laufen zu bringen.<br />
[[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 6 ==<br />
Zum Abschluss durften wir alle Hacks der verschiedenen Teams begutachten. Interessant waren die spontanen Vorgehensweisen und auch die daraus entstandenen Produkte. Viele Teams suchten zuerst das Material und erst danach die Ideen. So entstanden die unterschiedlichsten Prototypen.<br />
Zudem Reflektierten wird die Blockwoche. Im Allgemeinen gefielen die Freiheit und auch der unkomplizierte Teamgeist untereinander. Besten Dank auch an die Organisatoren der Blockwoche.<br />
<br />
= Experimente =<br />
Bei den Experimenten sollte es darum gehen aus unterschiedlichsten Einzelteilen ein Produkt zu erschaffen. Dieser Prozess brachte uns dazu über die Grenzen unseres altäglichem Denken zu springen und in der Verbindung der einzelnen Bereiche solcher Produkte besser zu verstehen.<br />
<br />
== Hack 0 ==<br />
<br />
<br />
===Versuchsaufbau 1===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 1===<br />
Nach den Inputs der Dozenten verbrachten wir hauptsächlich die Zeit damit den Muscle Spiker Shield nach der Anleitung mit den dazugehörigen Teilen zusammenzulöten.[https://backyardbrains.com/products/files/MuscleSpikerShield.v.2.11.BuildingInstructions.pdf]V2.11<br />
Nebenbei machten wir unsere ersten Schritte in Arduino.<br />
Als wir unsere mechatronischen Komponenten zusammengestellt und ein Grundverständnis von Arduino angeeignet haben, verbanden wir dies in einem Experiment. <br />
Das Experiment welches wir durchführten nennt man Control Machines with your Brain und ist auf der Seite von [https://backyardbrains.com/experiments/muscleSpikerShield/ Backyard Brains] nachzusehen.<br />
<br />
Für den Versuch wurden Elektroden an den Testpersonen angeschlossen und über den Arduino ausgelesen.<br />
Der Versuch wurde mit zwei Testpersonen durchgeführt. Dabei fiel uns nebst der Kontrolle der LED's auch auf, dass der Puls gemessen wurde. Dies unabhängig von der Position der Elektroden. Vermutlich reagieren die Elektroden zu sensitiv für diese Anwendung.<br />
<br />
<br />
[[File:UeberblickVersuchTeamD.jpg|400px|thumb|none|Versuchsaufbau]]<br />
[[File:Versuchsaufbau1TeamD.jpg|400px|thumb|none|Elektrodenbefestigung]]<br />
[[File:MessungDanielGlur.jpg|400px|thumb|none|Messung von Daniels Puls]]<br />
<br />
===Versuchsaufbau 2===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 2===<br />
<br />
Als zweites Experiment versuchten wir durch das anspannen der Muskeln einen Servomotor anzusteuern. Wie es auch auf der Homepage von [https://backyardbrains.com/experiments/MuscleSpikerShield_GripperHand/ Backyard Brains] anzutreffen ist. Dieser Versuch konnte aber leider aus Zeitgründen nicht zu Ende geführt werden. Wir konnten lediglich das Arduinoprogramm laden und etwas anpassen.<br />
<br />
===Reflexion===<br />
<br />
Der Hack 0 war in der Hinsicht sehr interessant, da wir alle unsere ersten Erfahrungen mit einem Arduino machen konnten. Einige von unserem Team hatten bisher auch noch nie auf einer Printplatte irgendwelche Widerstände oder Schalter etc. gelötet. Ebenso war es erstaunlich, dass man mit so wenig so viel verschiedene Sachen machen kann. Keiner von uns hat gedacht dass wir bereits am ersten Tag irgend etwas mit unseren Muskeln kontrollieren könnten. Insgesamt kam der Hack 0 gut bei uns an und wir alle konnten einiges davon profitieren und hoffentlich auch den weiteren Hacks weiterverwenden.<br />
<br />
== Hack 1: Baseball-Cap mit Ventilator ==<br />
<br />
Der Hack 1 beschreibt die Konzept- und Testphase des ersten Prototyps.<br />
<br />
Zu Beginn waren wir uns sehr unschlüssig was wir wirklich bauen wollen. Also entschieden wir uns für ein weiteres Experiment mit einem Bausatz von Backyard Brains. Wir versuchten durch die Funktion des Heart and Brain Spiker Shield einen Ventilator anzusteuern. Der Gedanke, welcher uns auf diese Idee führte, kennt wohl jeder Student. Während einer Prüfung kommt so mancher ins Grübeln und in harten Fällen kommt es auch vor dass einem eine Schweissperle von der Stirn läuft. Um in solchen Fällen für die nötige Kühlung zu sorgen, sollen Sensoren die Hirnströme gemessen und als Signal wiedergeben werden um damit einen Ventilator anzuschalten.<br />
<br />
Zu unserem eigenen Erstaunen erhielten wir sogar ein Signal aus unserer Messung. Es stellte sich aber sehr bald heraus, dass das wohl nicht die Hirnströme waren sondern eher Bewegungen des Kopfs und der Kabel. Denn die Sensoren sind recht empfindlich gegen solche Einflüsse. Zudem kam noch, dass die Sensoren über den Haaren angebracht wurden, was das Signal der Hirnströme noch zusätzlich verschlechterte. Nach einigen Versuchen sahen wir ein, dass das wohl eine zu grosse Herausforderung war und wir uns besser an einen einfacheren Versuch versuchen sollten.<br />
<br />
[[File:heart_and_brain.jpg|300px|thumb|none|Signal aus Messung der "Hirnströme"]]<br />
[[File:EEGDanielGlur.jpg|500px|thumb|none|Daniel beim messen der "Hirnströme"]]<br />
<br />
Also beschlossen wir uns anstelle der Hirnströme den Puls zu messen. Denn während einer Prüfung kann es durchaus auch vorkommen, dass der Puls etwas ansteigt. Die Messungen sollten dann ausgelesen werden und wenn der Puls eine gewisse Frequenz übersteigt, schaltet ein Ventilator ein um den Studenten wieder etwas zu beruhigen.<br />
<br />
Für diesen Versuch platzierten wir Sensoren am Unterarm und an der Handoberfläche. Idealerweise sollten laut Assistent Christian die Sensoren aber so weit wie möglich voneinander entfernt, an einer anderen Körperstelle angebracht werden um eine gewisse Referenz zu haben und um sicherzustellen, dass man wirklich den Puls misst. Unsere Kabel waren aber leider etwas zu kurz. Wir erhielten trotzdem ein relativ gutes Signal von welchem man davon ausgehen konnte, dass es sich um den Puls handelte. Jetzt nur noch das Signal auswerten, einen Frequenzbegrenzer programmieren und mithilfe von einem Arduino UNO den Ventilator ansteuern... Dachten wir... Dies war allerdings etwas Schwieriger als erwartet und überstieg unsere Kompetenzen. Das führte uns dazu auch diesen Versuch an dieser Stelle abzubrechen und nochmal zu überdenken.<br />
<br />
<br />
[[File:puls.png|400px|thumb|none|Pulssignal]]<br />
[[File:pulsmessung.jpg|400px|thumb|none|Pulssmessung]]<br />
<br />
<br />
Nun rannte uns schon langsam die Zeit davon. Doch dann kam uns die Idee, welche wir schon zu Beginn benötigt hätten. Und zwar wollten wir einen Ventilator auf einem Baseball-Cap anbringen und diesen ansteuern wenn ein gewisses Temperaturniveau unter dem Cap überschritten wird wird. Dazu wird ein 12V Ventilator via Relais von dem Arduino angesteuert. Weil der Arduino nur eine Spannung von 5V liefert, musste ein 12V Netzgerät den Ventilator mit Strom versorgen. Damit man den Ventilator so schalten konnte, damit er den Strom über das 12V Netzgerät bezieht, mussten wir noch ein Relais einbauen. Den Code für den Arduino bezogen wir aus verschiedenen ähnlichen Projekten aus dem Internet und passten ihn spezifisch für unsere Anwendung an. Für das auslesen der Temperatur mussten wir zuerst zwei Libreries herunterladen (DallasTemperature und OneWire).<br />
<br />
[[File:Komponente.PNG|400px|thumb|none|Verbaute Komponenten]]<br />
<br />
Nun mussten wir noch den Ventilator am Baseball-Cap anbringen. Dafür wurde eine Halterung im CAD konstruiert und mit einem 3D-Drucker ausgedruckt. Die Teile wurden danach zusammengesteckt und mit dem Baseball-Cap verschraubt. Natürlich wurde zuvor ein Loch in das Cap geschnitten, damit der Ventilator auch seinen Zweck erfüllen kann und dem Studenten einen kühlen Kopf verschafft.<br />
<br />
[[File:Aufbau.PNG|350px|thumb|none|3D-Modell im CAD]]<br />
<br />
[[File:Zusammenbau1.jpg|350px]]<br />
[[File:Zusammenbau2.jpg|350px]]<br />
<br />
Nun wurde unser Prototyp getestet. Der Sensor erfüllte seinen Dienst und wir konnten erfolgreich die Temperaturen messen. Jedoch war das Relais während dem Testen ständig eingeschalten und der Ventilator lief die ganze Zeit auch wenn die Temperatur den Minimalwert unterschritten hatte. Es hat sich also irgendwo in unserem Programm einen Fehler eingeschlichen. Den galt es nun zu finden und zu beheben. Dazu bauten wir einen Druckknopf ein um zu überprüfen ob das Relais defekt war und um die Fehlerquellen etwas einzugrenzen.<br />
<br />
[[File:Temperatur.jpg|350px]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/TQnGa5WiGS4<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
Der Druckknopf funktionierte, das Relais schaltete perfekt ein und aus und der Ventilator wurde an- und abgestellt. Somit wissen wir nun wo der Fehler zu suchen ist und können versuchen das Programm an diesen Stellen zu bereinigen. Nur ist jetzt schon Donnerstag Nachmittag und der Hack 2 hat schon begonnen. Wir alle wurden aufgefordert unseren bisherigen Prototypen aufzugeben und etwas neues, anderes zu versuchen und zu testen. Also legen wir schweren Herzens unser erster Prototyp beiseite und widmen unsere Kreativität dem nächsten Hack.<br />
<br />
=== Reflexion ===<br />
Der Hack 1 hat uns gezeigt, dass es gar nicht so einfach ist beim ersten Versuch ein brauchbares Resultat zu erzielen. Jedoch konnten wir so aus zwei vorhergehenden, fehlgeschlagenen Ansätzen eine Idee weiterentwickeln. Somit konnten wir mit unseren Kompetenzen und den Erfahrungen aus dem Hack 0 ein zufriedenstellendes Resultat erzielen. Durch die zwei Versuche zuvor ging leider recht viel Zeit "verloren", welche wir sehr benötigt hätten um unser erster Prototyp fehlerfrei hinzukriegen. Es war uns auch eine Lehre, dass man nicht zu lange an einer Sache verharren sollte wenn einem nur wenig Zeit zur Verfügung steht. Manchmal ist es besser man wirft alles nochmal über den Haufen und beginnt von vorne. Trotz allen Strapazen während des Hack 1 sind wir mit unserem ersten Prototyp sehr zufrieden und konnten auch bei diesem Versuch wieder viel profitieren und mitnehmen. Nun blicken wir gespannt nach vorne auf den nächsten Hack.<br />
<br />
<br />
===Code===<br />
<br />
Wir konnten zwar die Temperatur herauslesen und das Relais über einen Butten steuern, jedoch die Steuerung anhand der Temperatur geling uns nicht.<br />
<br />
<pre><br />
/********************************************************************/<br />
// First we include the libraries<br />
#include <OneWire.h> <br />
#include <DallasTemperature.h><br />
/********************************************************************/<br />
// Data wire is plugged into pin 2 on the Arduino <br />
#define ONE_WIRE_BUS 2 <br />
<br />
float tempReading;<br />
/********************************************************************/<br />
// Setup a oneWire instance to communicate with any OneWire devices <br />
// (not just Maxim/Dallas temperature ICs) <br />
OneWire oneWire(ONE_WIRE_BUS); <br />
/********************************************************************/<br />
// Pass our oneWire reference to Dallas Temperature. <br />
DallasTemperature sensors(&oneWire);<br />
/********************************************************************/ <br />
int relayPin = 4; // Relay Singnal lead to Digital Pin [D2-D12]<br />
<br />
float maxTemperature = 30.00; // The Max Temperature allowed<br />
float minTemperature = 25.00; // The Min Temperature allowed<br />
<br />
// constants won't change. They're used here to set pin numbers:<br />
const int buttonPin = 8; // the number of the pushbutton pin<br />
const int ledPin = 4; // the number of the LED pin<br />
<br />
// variables will change:<br />
int buttonState = 0; // variable for reading the pushbutton status<br />
<br />
void setup(void) {<br />
// initialize the LED pin as an output:<br />
pinMode(ledPin, OUTPUT);<br />
// initialize the pushbutton pin as an input:<br />
pinMode(buttonPin, INPUT);<br />
<br />
Serial.begin(9600); <br />
Serial.println("Dallas Temperature IC Control Library Demo"); <br />
// Start up the library <br />
sensors.begin(); <br />
}<br />
<br />
void loop(void) <br />
{ <br />
// call sensors.requestTemperatures() to issue a global temperature <br />
// request to all devices on the bus <br />
/********************************************************************/<br />
Serial.print(" Requesting temperatures..."); <br />
sensors.requestTemperatures(); // Send the command to get temperature readings <br />
Serial.println("DONE"); <br />
/********************************************************************/<br />
Serial.print("Temperature is: "); <br />
Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"? <br />
// You can have more than one DS18B20 on the same bus. <br />
// 0 refers to the first IC on the wire <br />
delay(1000); // Check Temperature every second<br />
<br />
float temperature = getTemperature();<br />
if(temperature >= maxTemperature){<br />
powerOnRelay();<br />
} else if (temperature <= minTemperature) {<br />
powerOffRelay();<br />
}<br />
delay(1000); // Check tempertature every second<br />
<br />
} <br />
void powerOnRelay() {<br />
digitalWrite(relayPin, HIGH);<br />
Serial.println("Relay On");<br />
}<br />
<br />
void powerOffRelay() {<br />
digitalWrite(relayPin, LOW);<br />
Serial.println("Relay Off");<br />
}<br />
float getTemperature(){<br />
tempReading = digitalRead(ONE_WIRE_BUS);<br />
<br />
// read the state of the pushbutton value:<br />
buttonState = digitalRead(buttonPin);<br />
<br />
// check if the pushbutton is pressed. If it is, the buttonState is HIGH:<br />
if (buttonState == HIGH) {<br />
// turn LED on:<br />
digitalWrite(ledPin, HIGH);<br />
} else {<br />
// turn LED off:<br />
digitalWrite(ledPin, LOW);<br />
}<br />
}<br />
</pre><br />
<br />
== Hack 2: Spritzenpumpe ==<br />
<br />
Nachdem der Hack 1 abgeschlossen war, machten wir uns aufs Neue darüber Gedanken was wir für einen Prototyp für den Hack 2 bauen wollen. Urs hat nach dem Abschluss von Hack 1 gesagt, wir sollten uns ein komplett neues Produkt überlegen, welches möglicherweise auch etwas mit der Medizintechnik zu tun hat. Nach einem Brainstorming kamen wir noch nicht so richtig auf einen grünen Zweig. So kamen wir auf die Idee uns einen Kaffee zu holen und einfach mal durch das FABLAB zu laufen um alles Mögliche anzuschauen, in die Hand zu nehmen und uns von all diesen Gegenständen inspirieren zu lassen. So kamen uns diverse Gegenstände in die Finger. darunter waren Servomotoren sowie einige DC-Motoren, eine Spritze, eine Pumpe, ein Micro-Switch Schalter, ein Potentiometer und vieles mehr. Diese Gegenstände haben wir dann auf unserem Gruppentisch ausgebreitet und uns Gedanken darüber gemacht was wir damit wohl anstellen konnten zum Thema Medizintechnik. So entstanden relativ schnell einige Ideen. Wir haben uns schlussendlich dafür entschieden ein Dosiergerät für eine medizinische Spritze zu machen. Dieses sollte so funktionieren, dass wir eine Spritze in eine Vorrichtung legen und über einen DC-Motor zum Einfahren bzw. Ausfahren bringen. Dazu muss die Drehbewegung des Motors in eine Lineare Bewegung umgeleitet werden. Zudem muss ggf. auch die Drehzahl des Motors durch ein Potentiometer reguliert werden können um einen zu schnellen Aus- oder Einfahrvorgang zu verhindern. Soviel zu zu den technischen Überlegungen. <br />
<br />
Sofort nach dem Entscheid suchten wir nach einem geeigneten Motor. Dieser sollte dabei eine eher tiefe Drehzahl haben damit die Spritze nur langsam ein- und ausfährt. Zudem suchten wir im Internet nach einem geeigneten Mechanismus der die Drehbewegung in eine lineare Bewegung umwandelt. Denn wir hatten leider zu wenig zeit um alles selber zu entwerfen und zu konstruieren. So wurden wir auf auf der Hompage von [https://www.thingiverse.com/thing:2797132/ Thingiverse] schliesslich fündig. Also konnte wir die Folgenden Komponenten herunterladen und mit dem 3D-Drucker ausdrucken.<br />
<br />
Komponenten: <gallery><br />
File:Halteplatte.PNG | Halteplatte<br />
File:Zahnrad.PNG | Zahnradpaar<br />
File:Zahnradpaar.PNG | Zahnstange<br />
File:Zahnstange.PNG | Zahnrad<br />
</gallery><br />
<br />
Da wir einen anderen Motor verwendeten als für diesen Mechanismus vorgesehen wäre, mussten wir noch eine passende Adapterplatte konstruieren, damit der Motor auch auf die Vorrichtung passt.<br />
<br />
<gallery><br />
File:Adapterplatte.PNG | Adapterplatte<br />
File:Motor.PNG | Motor<br />
File:Motor_mit_Adapter.jpg | Motor mit Adapter<br />
</gallery><br />
<br />
Der Motor benötigt, wie auch der Ventilator von Hack 1, eine Spannung von 12V für den Betrieb. Also mussten wir erneut das 12V Netzgerät verwenden. Damit unser zweiter Prototyp auch die gewünschte Fördermenge fördern kann, muss die Zeitdauer, in welcher gefördert werden soll, definiert werden. Das dazugehörige Programm wird mit einem Arduino UNO implementiert. Der Zugehörige Code haben wir durch Recherche im Internet und durch persönliches erweitern und anpassen erstellt. Die Drehzahl des Motors darf nicht zu hoch sein damit man die Fördermenge auch sinnvoll einstellen kann. Für diese Anwendung wird ein Potentiometer zwischen Relais und Motor gehängt. So kann die Motorspannung reguliert und die Drehzahl anforderungsgemäss eingestellt werden. Nachfolgend wird der Prozessablauf kurz beschrieben.<br />
<br />
Mit einem Knopfdruck wird wird ein Relais geschalten und der Motor wird angesteuert. Die Drehzahl des Motors wird über ein Getriebe reduziert. Die Zahnräder greifen auf eine Zahnstange und wandeln die Drehbewegung in eine lineare Bewegung um. An der Zahnstange wird der Stössel der Spritze befestigt. Der Rest der Spritze wird mit einem Kabelbinder fest mit der Bodenplatte verbunden damit sich dieser Teil nicht bewegen kann. Die programmierte Zeitdauer bestimmt welche Menge an Flüssigkeit gefördert werden soll.<br />
<br />
[[File:Pumpe.PNG|500px|thumb|none|Aufbau der Spritzenpumpe]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/PLG_S3GtVI8<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
=== Reflexion ===<br />
<br />
Anders als beim Hack 1 kamen waren wir uns bei diesem Hack sehr schnell einig was genau wir bauen möchten. Die ganze Ideenfindung erledigte sich sehr schnell und wir konnten nach bereits wenigen Stunden mit dem programmieren des Arduinos beginnen. Wie wir bereits im Hack 1 erfahren durften, ist das bei dem gedrängten Zeitplan dieser Woche ein grosser Vorteil. Rückblickend können wir urteilen, dass der Hack 2 aus unserer Sicht ein erfreuendes Erfolgserlebnis war. Unser zweiter Prototyp funktioniert genau so wie wir uns das von Beginn an vorgestellt haben. Per Knopfdruck fördert unser Prototyp eine gewisse Menge an Flüssigkeit.<br />
<br />
=== Code ===<br />
<br />
<pre><br />
<br />
bool geschaltet = false;<br />
int RelaisPin = 10; <br />
int tasterPin = 2;<br />
int empfindlichkeit = 200;<br />
<br />
void setup() {<br />
<br />
pinMode( tasterPin, INPUT_PULLUP);<br />
pinMode( RelaisPin, OUTPUT);<br />
<br />
}<br />
<br />
void loop() {<br />
<br />
if (digitalRead(tasterPin) == LOW) <br />
{<br />
if (geschaltet == false) {<br />
geschaltet = true;<br />
}<br />
else {<br />
geschaltet = false;<br />
}<br />
}<br />
<br />
if (geschaltet == true) {<br />
digitalWrite(RelaisPin, HIGH);<br />
delay(1000);<br />
geschaltet = false; <br />
}<br />
<br />
if (geschaltet == false) {<br />
digitalWrite(RelaisPin, LOW);<br />
}<br />
<br />
delay(empfindlichkeit);<br />
}<br />
</pre><br />
<br />
== Hack 3: Zinnguss==<br />
<br />
Für diesen Hack wurde Zinn gegossen. Dank dem tiefen Schmelzpunkt lässt sich der Gusswerkstoff in einer Stahlkanne mit einem Brenner einer Autogenschweissanlage leicht erhitzen.<br />
<br />
[[File:Kanne.jpg|400px]]| Stahlkanne mit flüssigem Zinn<br />
<br />
=== Versuch 1 ===<br />
<br />
Für die Gussform wurde MDF verwendet. Da die Hitzebeständigkeit von MDF unklar war, sollte ein kleiner Versuch Aufschluss geben. Eine einfache Zylinderform mit einem Überlaufbecken bestehend aus 3 Platten gemässe Bild [[:File:Versuch_1_Gussform.jpg]]Gussform, Versuch 1. Da nur eine kleine Menge an Zinn erhitzt wurde, war die Temperatur vermutlich deutlich über dem Schmelzpunkt. Es entwickelte sich Dampf, was zu einem Gussfehler im Überlauf führte. Ausserdem wurde das MDF stark verkohlt, siehe [[:File:Versuch_1_Resultat.jpg]]Resultat. Dennoch ist das Resultat zufriedenstellend, sodass für einen weiteren Versuch wieder MDF verwendet werden kann.<br />
<br />
Versuch 1<br />
<gallery><br />
[[File:Versuch_1_Gussform.jpg|400px]] | Gussform<br />
[[File:Versuch_1_Guss.jpg|400px]] | Frisch gegossen<br />
[[File:Versuch_1_Resultat.jpg|400px]] | Resultat<br />
<br />
=== Versuch 2 ===<br />
<br />
Nun konnte der eigentliche Versuch gestartet werden. Das Zinn wurde wieder in der Stahlkanne erhitzt, jedoch nicht so stark wie in Versuch 1. Jedoch wurden diesmal alle Formen mit dem Lasercutter ausgeschnitten. Auch bei dieser Gussform diente die letzte MSF Platte als Überlauf. Das flüssige Zinn konnte bei der grösseren Form kontrollierter und langsamer gegossen werden, so dass die Form gleichmässig ausgefüllt werden konnte, siehe Bild [[:File:Versuch_2_Guss.jpg]]Frisch gegossen.<br />
<br />
Versuch 2 giessen<br />
<gallery><br />
[[File:Versuch_2_Gussform.jpg|400px]] | Gussform<br />
[[File:Versuch_2_Guss.jpg|400px]] | Frisch gegossen<br />
<br />
Durch den Schwund lässt sich das Gussstück relativ gut aus der Form drücken, obwohl keine Formschrägen vorhanden waren. Vorher empfiehlt es sich, den Überlauf abzufräsen (Bild [[:File:Versuch_2_Fraesen.jpg]]Überfäsen, [[:File:Versuch_2_Resultat.jpg]]Resultat), da sich Zinn nur bedingt im Schraubstock einspannen lässt. Zinn vierbiegt sich sehr leicht.<br />
<br />
Versuch 2 bearbeitung<br />
<gallery><br />
[[File:Versuch_2_Fraesen.jpg|400px]] | Überfäsen<br />
[[File:Versuch_2_Resultat.jpg|400px]] | Resultat<br />
<br />
= Skill-Share-Session =<br />
<br />
== Grundlagen der Arduinoprogrammierung ==<br />
<br />
Dieser Kurs wurde von unserer Gruppe angeboten und soll den Teilnehmern die Grundlage der Programierung eines Arduino UNO beibringen. Folgend werden die grundlegenden Befehle und deren Syntax vorgestellt. Der Aufbau folgt dem YouTube Tutorial von Max. Hier gelangst du zu dem Link: [https://www.youtube.com/watch?v=eaFvQG8wrGw&list=PLAB63281B90FB376E&index=3]<br />
<br />
=== Skript ===<br />
Der Code wird in einem Skript geschrieben. Dieses ist in zwei Bereiche aufgeteilt<br />
* Void setup() Dieses Skript wird einmalig ausgeführt und enthält zB. Input und output<br />
* Void loop() Dieser Teil des Skripts wird als Dauerschleife wiederholt<br />
<br />
==== Befehlseingabe ====<br />
<br />
Die Befehle werden nach folgender Syntax eingegeben:<br />
<br />
* Funktion(Parameter1, Parameter2);<br />
<br />
Dabei muss das «;» gesetzte werden, ausserdem spielen Gross- und Kleinbuchstaben eine Rolle.<br />
<br />
=== Variablen ===<br />
Übersichtshalber sollen sprechende Namen für die Bezeichnung von z.B. Outputs verwendet werden. Dabei können verschiedene Datentypen ausgewählt werden.<br />
<br />
==== Datentyp ====<br />
* int Ganze Zahlen von -32768 … 32767 z.B. 1, 48, -654<br />
* boolean Entweder true oder false<br />
* byte 8 Bit an Informationen z.B. 00010101 (=21)<br />
* char enthält 1 Byte Informationen, das ein Zeichen darstellt z.B. 65 = A<br />
* long grosse Zahlen von ca. -2.1 Milliarden bis 2.1 Milliarden z.B. 15636451<br />
* float Komazahlen z.B. 5.498<br />
* string Zeichenketten z.B. «Do it yourself»<br />
<br />
==== Deklaration Syntax ====<br />
<br />
* Datentyp Name = Wert;<br />
<br />
oder<br />
<br />
* Datentyp Name;<br />
* Name = Wert;<br />
<br />
====Ort der Deklaration====<br />
<br />
Die Variable muss immer im Teil des Skriptes deklariert sein, wo sie auch gebraucht wird. Wird die Variable im setup wie auch im loop benötigt, so kann man die Variable als sogenannte globale Variable oberhalb des Setups deklarieren.<br />
<br />
===If-Schleife===<br />
<br />
Bei der If-Schleife wird der Wert einer Variablen mit einem Vergleichswert verglichen. Falls der Vergleich positiv ist, wird der Code ausgeführt, ansonsten übersprungen. Dazu sind Vergleichsoperatoren notwendig.<br />
<br />
====Syntax====<br />
<br />
if(Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
====Vergleichsoperatoren====<br />
<br />
* == gleich<br />
* != ungleich<br />
* < kleiner<br />
* < grösser<br />
* <= kleiner gleich<br />
* >= grösser gleich<br />
<br />
===While-Schleife===<br />
<br />
Mit der While-Schleife wird die Bedingung fortlaufend geprüft. Stimmt diese, wird der Code ausgeführt, ansonsten wird der Code übersprungen. Es können die selben Vergleichsoperatoren wie bei der If-Schleife verwendet werden.<br />
<br />
====Syntax====<br />
<br />
while (Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
==Bildgebende Verfahren==<br />
<br />
Der Tag begann mit einer Einführung in die Bildgebenden Verfahren durch David Stadelmann. Hierbei erklärte er uns, verschiedene Methoden, um Bilder aus dem Körperinneren zu machen und welche Methode für die verschiedenen Gewebetypen gebraucht werden. Zudem Zeigte und erklärte er uns anhand von Beispielen was die Einzelnen Schattierungen aussagen könnten.<br />
<br />
[[DIY-MedTech Bildgebende Verfahren-Unterschiedliche Bildeindrücke - Team Frosch]]<br />
<br />
==Synths & Sound ==<br />
<br />
Danach ging es weiter mit dem Kurs Synths & Sounds. Diese Session wurde von [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] durchgeführt. Hierbei zeigte er uns, wie man mit verschieden erzeugten Schwingungen eine grosse Variation von Tönen generiert kann. Zudem auch wie man elektronisch gewisse Instrumente Simulieren könnte und durch die Aneinanderreihung verschiedenster Tonvariationen eine Melodie enstehen kann. Dies mit unterschiedlich Variationen von selbstgebauten Synthesizers.<br />
<br />
<gallery><br />
File:Sinthesizer1.jpg | Synthesizer 1<br />
File:Synthesizer2.jpg | Synthesizer 2<br />
</gallery><br />
<br />
== Schweissen ==<br />
<br />
Bei dem Skill-Share Workshop von [https://www.hackteria.org/wiki/Team_G2020/ Team G2020] konnten wir verschiedene Schweissverfahren kennenlernen und auch gleich anwenden.<br />
<br />
Es wurde uns das [https://de.wikipedia.org/wiki/Lichtbogenhandschwei%C3%9Fen/ Elektrodenschweissen], das [https://de.wikipedia.org/wiki/Schutzgasschwei%C3%9Fen/ MIG-Schweissen] und das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] nähergebracht.<br />
<br />
Dieser Workshop war für uns alle sehr interessant, da sich bisher noch keiner von uns so wirklich mit dem Schweissen und den verschiedenen Verfahren auskannte. An diesem Tag konnten wir nach einer kurzen Theorie gleich sofort selber handanlegen und die verschiedenen Schweissverfahren ausprobieren.<br />
<br />
Dabei mussten wir feststellen, dass es gar nicht so einfach ist wie es immer aussieht. Besonders das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] braucht sehr viel Übung und Geschick um wirklich schöne Schweissergebnisse zu erzielen.<br />
<br />
== Autonomes Nervensystem und das Hören in der Medizin ==<br />
<br />
Der Assistent Dr. Christian Gehringer, MSc. (ETH) hielt uns einen sehr interessanten Vortrag. Dabei ging es darum, dass wir die Anatomie kennenlernen und erkunden am Beispiel des Hörens z.B mit einem Stethoskop.<br />
<br />
[https://www.hackteria.org/wiki/Autonomes_Nervensystem_und_das_H%C3%B6ren_in_der_Medizin/ Autonomes Nervensystem und das Hören in der Medizin]</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=File:Kanne.jpg&diff=41644File:Kanne.jpg2020-02-09T11:33:33Z<p>Tnroth: File uploaded with MsUpload</p>
<hr />
<div>File uploaded with MsUpload</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=File:Versuch_2_Resultat.jpg&diff=41643File:Versuch 2 Resultat.jpg2020-02-09T11:33:29Z<p>Tnroth: File uploaded with MsUpload</p>
<hr />
<div>File uploaded with MsUpload</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=File:Versuch_2_Gussform.jpg&diff=41642File:Versuch 2 Gussform.jpg2020-02-09T11:33:23Z<p>Tnroth: File uploaded with MsUpload</p>
<hr />
<div>File uploaded with MsUpload</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=File:Versuch_2_Guss.jpg&diff=41641File:Versuch 2 Guss.jpg2020-02-09T11:33:18Z<p>Tnroth: File uploaded with MsUpload</p>
<hr />
<div>File uploaded with MsUpload</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=File:Versuch_2_Fraesen.jpg&diff=41640File:Versuch 2 Fraesen.jpg2020-02-09T11:33:13Z<p>Tnroth: File uploaded with MsUpload</p>
<hr />
<div>File uploaded with MsUpload</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=File:Versuch_1_Resultat.jpg&diff=41639File:Versuch 1 Resultat.jpg2020-02-09T11:33:08Z<p>Tnroth: File uploaded with MsUpload</p>
<hr />
<div>File uploaded with MsUpload</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=File:Versuch_1_Gussform.jpg&diff=41638File:Versuch 1 Gussform.jpg2020-02-09T11:33:05Z<p>Tnroth: File uploaded with MsUpload</p>
<hr />
<div>File uploaded with MsUpload</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=File:Versuch_1_Guss.jpg&diff=41637File:Versuch 1 Guss.jpg2020-02-09T11:33:02Z<p>Tnroth: File uploaded with MsUpload</p>
<hr />
<div>File uploaded with MsUpload</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=MedTechDIY20_Die_Profis&diff=41635MedTechDIY20 Die Profis2020-02-09T11:30:19Z<p>Tnroth: /* Hack 3: Zinnguss */</p>
<hr />
<div>Hier gehts zurück auf: [[Medizintechnik DIY]]<br />
<br />
[[File:DieProfis.png|700px|right|none|Wochenplan]]<br />
<br />
= Team =<br />
<br />
'''Die Profis''' besteht aus den drei Studierenden '''Daniel Glur''', '''Lukas Roth''' und '''Daniel Zellweger''' der Hochschule Luzern. Im Rahmen der Blockwoche "DIY Medizintechnik" formierte sich das Team aus verschiedenen Studiengängen um auch interdisziplinär voneinander zu lernen und Wissen auszutauschen.<br />
<br />
'''Mitglieder:'''<br />
<br />
Maschinentechnik: <gallery><br />
File:DanielGlur.jpg | Daniel Glur<br />
File:LukasRoth.jpg | Lukas Roth<br />
</gallery><br />
<br />
Medizintechnik: <gallery><br />
File:DanielZellweger.jpg | Daniel Zellweger<br />
</gallery><br />
<br />
= Pflichtlektüre =<br />
<br />
'''How to control someone else's arm with your brain | Greg Gage'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/rSQNi5sAwuc<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
In Diesem Video wird gezeigt wie man über die Aufnahme eines Biologischen Signals, dieses an eine zweite Person weitergeleitet werden kann.<br />
Dies funktioniert jedoch nur aus verschiedenen Gründen bedingt. Nebst den allgemeinen Störeinflüsse aus der Messtechnik, kommen zusätzlich noch jene der Ansteuerung. Da das Signal nur von einzelnen Muskelfasern abgefangen wird, kann dieses nicht sämtliche Muskelfasern der zweiten Person Reizen. Dies hat zur folge, dass nur eine annähernd ähnliche Bewegung des Armes arfolgt.<br />
<br />
<br />
'''What is Open Source explained in LEGO'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/a8fHgx9mE5U<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Durch die Verwendung der Open Source Methode erhält man die Möglichkeit während des Projektes noch Erweiterungen oder Veränderungen anzustreben.<br />
<br />
'''"Why toys make good medical devices | Jose Gomez-Marquez'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/UHCT9SOBHs0<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Nebst dem Preis besitzen Spielzeuge diverse spezifische Funktionen. Da diese meist günstige Anschaffung auch einfach verändert werden kann, sind sie sehr geeignet dafür umgebaut zu werden. Somit sind Spielzeuge welche chemische oder sensorische Funktionen besitzen ein gefundenes fressen für den Hacker und eine Alternative für Regionen in welchen die finanzielle Situation teure Medizinprodukte nicht erlauben.<br />
<br />
= Einleitung =<br />
Die Blockwoche "DIY Medizintechnik" verbindet Anwendungen der Medizintechnik mit Do It Yourself (DIY) Ansätzen. Dadurch wird das tiefere Verständnis von Medizintechnischen Geräten durch einen direkten, interdisziplinären und möglichst selbstgesteuerten Zugang gefördert. Basierend auf verschiedenen elektrophysiologischen Messmodulen (EMG, EKG, EOG, EEG) entwickeln die Studierenden im Team Ideen für innovative Projekte. Erste Prototypen werden mit den Mitteln der Digitalen Fabrikation hergestellt und getestet. Tag für Tag stehen produktive "Hacks" auf dem Programm. Hacks sind sehr praxisbezogene Arbeitssequenzen wo die Studierenden Experimente durchführen sowie Prototypen entwickeln und bauen können. Dabei ist aber nicht nur die Medizintechnik zentral sondern auch der Interdisziplinäre Austausch sowie eine Skill-Share-Session wo die Studierenden ganz nach dem do it yourself Gedanken einen eigenen Workshop leiten können.<br />
Alle Erkenntnisse und Erfahrungen werden laufend in einem eigenen Wiki-Eintrag festgehalten und dokumentiert.<br />
<br />
Die Blockwoche wird von den beiden Dozenten [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] und [https://www.hackteria.org/wiki/Gaudi/ Urs Gaudenz] duchgeführt. Unterstützt wurden die Beiden von '''Dr. Christian Gehringer, MSc. (ETH)''' und [http://chrisobrist.ch/about// Chris Obrist]<br />
<br />
Maschinentechnik: <gallery><br />
File:MarkDusseiller.jpg | Dr. Marc R. Dusseiller<br />
File:UrsGaudenz.jpg | Urs Gaudenz<br />
</gallery><br />
<br />
= Planung =<br />
<br />
Die Blockwoche wird wie in folgendem Wochenplan unterteilt:<br />
<br />
[[File:Wochenplan2020.jpg|700px|thumb|none|Wochenplan]]<br />
<br />
= Wochenrückblick =<br />
== Die Woche in Bilder==<br />
[[File:ProfisInAction.PNG|400px]]<br />
[[File:Komponente.PNG|300px]]<br />
[[File:Aufbau.PNG|400px]]<br />
[[File:Motor_mit_Adapter.jpg|300px]]<br />
[[File:Pumpe.PNG|350px]]<br />
[[File:pulsmessung.jpg|450px]]<br />
[[File:Zusammenbau2.jpg|300px]]<br />
[[File:Foto 07.02.20, 11 14 53.jpg|300px]]<br />
[[File:DanielZellweger.jpg|300px]]<br />
<br />
== Tag 1==<br />
'''Einführung'''<br />
<br />
Wir traffen uns zu beginn im FABLAB, wo sich die Dozenten vorstellten und uns über Ihren bisherigen Werdegang informierten. Das interessante an der beruflichen Laufbahn der beiden ist, dass beide ein Studium abgeschlossen haben und heute einer Tätigkeit nachgehen, welche eigentlich nicht mehr viel mit dem damaligen Studium zu tun hat. Das vermittelt unserer Meinung nach, den Studenten eine etwas andere Sichtweise als die technische Hochschule. Es zeigt z.B. dass man nach einem Studium nicht gezwungen ist auf diesem Fachgebiet zu arbeiten sondern dass der Arbeitsmarkt noch sehr viele andere Möglichkeiten zu bieten hat.<br />
<br />
Nachdem sie sich Vorgestellt haben, stellten sie uns auch noch den Assistent vor. Dieser ist ein ausgebildeter Arzt welcher sich momentan für seinen zweiten Doktortitel engagiert. Von Ihm und seinem grossen medizinischen Fachwissen können wir als Studenten die ganze Woche profitieren.<br />
<br />
Danach überliessen die Dozenten uns Studenten das Wort. Es war eine etwas andere Vorstellungsrunde wie man sie noch nicht kannte. Dazu stand uns ein ganzer Tisch mit kuriosen Gegenständen, welche etwas mit dem DIY Gedanke zu tun haben, zur verfügung. Sie vorderten uns alle auf einen Gegenstand auszuwählen. Danach mussten wir uns Vorstellen und noch ein paar Worte dazu verlieren welche Gemeinsamkeiten wir mit dem ausgesuchten Gegenstand teilen.<br />
<br />
'''DIY (Do It Yourself)'''<br />
<br />
Das DIY Prinzip basiert auf eigenem experimentieren und learning by doing<br />
<br />
{{#widget:Iframe<br />
|url= https://www.youtube.com/watch?v=3zH_J12G9sQ<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
<br />
'''How to use Wiki'''<br />
<br />
Durch die 45 minütige Einführung in die Handhabung das Wiki durch Dr. Marc R. Dusseiller waren wir bereit unsere Erkenntnisse und Projekte, welche wir in dieser Woche erfahren und durchführen werden, in einer Zugänglichen Form, niederzuschreiben.<br />
<br />
== Tag 2 ==<br />
Am zweiten Tag begannen wir die Vorbereitung Skill-Share-Session. Diesbezüglich sollte jeder Teilnehmer einen Skill, welcher er erlernen möchte und einen Skill, den man beibringen könnte notieren. Diese wurden dann auf einer Tafel in Cluster aufgeteilt. Zwölf davon wurden als Skill-Share Workshops ausgewählt und die Teilnehmer konnten sich nach Belieben einschreiben.<br />
<br />
[[File:SkillSession2020.jpg|500px|thumb|none|Skill-share-session]]<br />
<br />
Während des zweiten Teils arbeiteten wir an unserem Experiment weiter, welches wir am Vortag begonnen haben.<br />
Dazu mussten wir die elektronischen Bauteile mit unserem Laptop verbinden und einen vorgefertigten Sketch laufen lassen.<br />
<br />
Nachdem wir den ersten Versuch erfolgreich durchführen konnten, versuchten wir mit dem Arduino einen Stepmotor anzusteuern. Dabei stiessen wir jedoch auf einige Schwierigkeiten. Da wir diese bis zur Einführung des Lasercutters und des 3D-Druckers fertig haben sollten. Siehe [[#Hack 0]]<br />
<br />
Unteranderem wurde unsere Skill-Share-Session über Arduino vorbereitet.<br />
<br />
Am Abend kam [http://chrisobrist.ch/about// Chris Obrist] zu Besuch und unterhielt uns mit einer wundervollen musikalischen Darbietung.<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/Hj1Ogr8137o<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
== Tag 3 ==<br />
Von 9:00 Uhr bis nach dem Mittag um 14:00 Uhr waren wir alle mit der [[#Skill-Share-Session]] beschäftigt.<br />
<br />
Danach hatten wir Zeit um den nächsten Hack vorzubereiten und zu planen.<br />
<br />
== Tag 4 ==<br />
Den Vormittag verbrachten wir weiter mit dem Hack 1, welchen wir dann vor der Mittagspause den Dozenten und allen Mitstudierenden präsentieren durften. Leider litten wir während des ganzen Hack 1 sehr unter Zeitdruck, was auf eine turbulente Projektphase zurückzuführen ist. Mehr dazu erfährst du im [[#Hack 1]].<br />
<br />
Nach einer kurzen Inspirationphase entschieden wir uns dafür eine kleine Spritzenpumpe zu basteln. [[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 5 ==<br />
Am Tag 5 ging es darum die Einzelteile physikalisch sowie über ein Funktionierendes Arduinoprogamm zum laufen zu bringen.<br />
[[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 6 ==<br />
Zum Abschluss durften wir alle Hacks der verschiedenen Teams begutachten. Interessant waren die spontanen Vorgehensweisen und auch die daraus entstandenen Produkte. Viele Teams suchten zuerst das Material und erst danach die Ideen. So entstanden die unterschiedlichsten Prototypen.<br />
Zudem Reflektierten wird die Blockwoche. Im Allgemeinen gefielen die Freiheit und auch der unkomplizierte Teamgeist untereinander. Besten Dank auch an die Organisatoren der Blockwoche.<br />
<br />
= Experimente =<br />
Bei den Experimenten sollte es darum gehen aus unterschiedlichsten Einzelteilen ein Produkt zu erschaffen. Dieser Prozess brachte uns dazu über die Grenzen unseres altäglichem Denken zu springen und in der Verbindung der einzelnen Bereiche solcher Produkte besser zu verstehen.<br />
<br />
== Hack 0 ==<br />
<br />
<br />
===Versuchsaufbau 1===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 1===<br />
Nach den Inputs der Dozenten verbrachten wir hauptsächlich die Zeit damit den Muscle Spiker Shield nach der Anleitung mit den dazugehörigen Teilen zusammenzulöten.[https://backyardbrains.com/products/files/MuscleSpikerShield.v.2.11.BuildingInstructions.pdf]V2.11<br />
Nebenbei machten wir unsere ersten Schritte in Arduino.<br />
Als wir unsere mechatronischen Komponenten zusammengestellt und ein Grundverständnis von Arduino angeeignet haben, verbanden wir dies in einem Experiment. <br />
Das Experiment welches wir durchführten nennt man Control Machines with your Brain und ist auf der Seite von [https://backyardbrains.com/experiments/muscleSpikerShield/ Backyard Brains] nachzusehen.<br />
<br />
Für den Versuch wurden Elektroden an den Testpersonen angeschlossen und über den Arduino ausgelesen.<br />
Der Versuch wurde mit zwei Testpersonen durchgeführt. Dabei fiel uns nebst der Kontrolle der LED's auch auf, dass der Puls gemessen wurde. Dies unabhängig von der Position der Elektroden. Vermutlich reagieren die Elektroden zu sensitiv für diese Anwendung.<br />
<br />
<br />
[[File:UeberblickVersuchTeamD.jpg|400px|thumb|none|Versuchsaufbau]]<br />
[[File:Versuchsaufbau1TeamD.jpg|400px|thumb|none|Elektrodenbefestigung]]<br />
[[File:MessungDanielGlur.jpg|400px|thumb|none|Messung von Daniels Puls]]<br />
<br />
===Versuchsaufbau 2===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 2===<br />
<br />
Als zweites Experiment versuchten wir durch das anspannen der Muskeln einen Servomotor anzusteuern. Wie es auch auf der Homepage von [https://backyardbrains.com/experiments/MuscleSpikerShield_GripperHand/ Backyard Brains] anzutreffen ist. Dieser Versuch konnte aber leider aus Zeitgründen nicht zu Ende geführt werden. Wir konnten lediglich das Arduinoprogramm laden und etwas anpassen.<br />
<br />
===Reflexion===<br />
<br />
Der Hack 0 war in der Hinsicht sehr interessant, da wir alle unsere ersten Erfahrungen mit einem Arduino machen konnten. Einige von unserem Team hatten bisher auch noch nie auf einer Printplatte irgendwelche Widerstände oder Schalter etc. gelötet. Ebenso war es erstaunlich, dass man mit so wenig so viel verschiedene Sachen machen kann. Keiner von uns hat gedacht dass wir bereits am ersten Tag irgend etwas mit unseren Muskeln kontrollieren könnten. Insgesamt kam der Hack 0 gut bei uns an und wir alle konnten einiges davon profitieren und hoffentlich auch den weiteren Hacks weiterverwenden.<br />
<br />
== Hack 1: Baseball-Cap mit Ventilator ==<br />
<br />
Der Hack 1 beschreibt die Konzept- und Testphase des ersten Prototyps.<br />
<br />
Zu Beginn waren wir uns sehr unschlüssig was wir wirklich bauen wollen. Also entschieden wir uns für ein weiteres Experiment mit einem Bausatz von Backyard Brains. Wir versuchten durch die Funktion des Heart and Brain Spiker Shield einen Ventilator anzusteuern. Der Gedanke, welcher uns auf diese Idee führte, kennt wohl jeder Student. Während einer Prüfung kommt so mancher ins Grübeln und in harten Fällen kommt es auch vor dass einem eine Schweissperle von der Stirn läuft. Um in solchen Fällen für die nötige Kühlung zu sorgen, sollen Sensoren die Hirnströme gemessen und als Signal wiedergeben werden um damit einen Ventilator anzuschalten.<br />
<br />
Zu unserem eigenen Erstaunen erhielten wir sogar ein Signal aus unserer Messung. Es stellte sich aber sehr bald heraus, dass das wohl nicht die Hirnströme waren sondern eher Bewegungen des Kopfs und der Kabel. Denn die Sensoren sind recht empfindlich gegen solche Einflüsse. Zudem kam noch, dass die Sensoren über den Haaren angebracht wurden, was das Signal der Hirnströme noch zusätzlich verschlechterte. Nach einigen Versuchen sahen wir ein, dass das wohl eine zu grosse Herausforderung war und wir uns besser an einen einfacheren Versuch versuchen sollten.<br />
<br />
[[File:heart_and_brain.jpg|300px|thumb|none|Signal aus Messung der "Hirnströme"]]<br />
[[File:EEGDanielGlur.jpg|500px|thumb|none|Daniel beim messen der "Hirnströme"]]<br />
<br />
Also beschlossen wir uns anstelle der Hirnströme den Puls zu messen. Denn während einer Prüfung kann es durchaus auch vorkommen, dass der Puls etwas ansteigt. Die Messungen sollten dann ausgelesen werden und wenn der Puls eine gewisse Frequenz übersteigt, schaltet ein Ventilator ein um den Studenten wieder etwas zu beruhigen.<br />
<br />
Für diesen Versuch platzierten wir Sensoren am Unterarm und an der Handoberfläche. Idealerweise sollten laut Assistent Christian die Sensoren aber so weit wie möglich voneinander entfernt, an einer anderen Körperstelle angebracht werden um eine gewisse Referenz zu haben und um sicherzustellen, dass man wirklich den Puls misst. Unsere Kabel waren aber leider etwas zu kurz. Wir erhielten trotzdem ein relativ gutes Signal von welchem man davon ausgehen konnte, dass es sich um den Puls handelte. Jetzt nur noch das Signal auswerten, einen Frequenzbegrenzer programmieren und mithilfe von einem Arduino UNO den Ventilator ansteuern... Dachten wir... Dies war allerdings etwas Schwieriger als erwartet und überstieg unsere Kompetenzen. Das führte uns dazu auch diesen Versuch an dieser Stelle abzubrechen und nochmal zu überdenken.<br />
<br />
<br />
[[File:puls.png|400px|thumb|none|Pulssignal]]<br />
[[File:pulsmessung.jpg|400px|thumb|none|Pulssmessung]]<br />
<br />
<br />
Nun rannte uns schon langsam die Zeit davon. Doch dann kam uns die Idee, welche wir schon zu Beginn benötigt hätten. Und zwar wollten wir einen Ventilator auf einem Baseball-Cap anbringen und diesen ansteuern wenn ein gewisses Temperaturniveau unter dem Cap überschritten wird wird. Dazu wird ein 12V Ventilator via Relais von dem Arduino angesteuert. Weil der Arduino nur eine Spannung von 5V liefert, musste ein 12V Netzgerät den Ventilator mit Strom versorgen. Damit man den Ventilator so schalten konnte, damit er den Strom über das 12V Netzgerät bezieht, mussten wir noch ein Relais einbauen. Den Code für den Arduino bezogen wir aus verschiedenen ähnlichen Projekten aus dem Internet und passten ihn spezifisch für unsere Anwendung an. Für das auslesen der Temperatur mussten wir zuerst zwei Libreries herunterladen (DallasTemperature und OneWire).<br />
<br />
[[File:Komponente.PNG|400px|thumb|none|Verbaute Komponenten]]<br />
<br />
Nun mussten wir noch den Ventilator am Baseball-Cap anbringen. Dafür wurde eine Halterung im CAD konstruiert und mit einem 3D-Drucker ausgedruckt. Die Teile wurden danach zusammengesteckt und mit dem Baseball-Cap verschraubt. Natürlich wurde zuvor ein Loch in das Cap geschnitten, damit der Ventilator auch seinen Zweck erfüllen kann und dem Studenten einen kühlen Kopf verschafft.<br />
<br />
[[File:Aufbau.PNG|350px|thumb|none|3D-Modell im CAD]]<br />
<br />
[[File:Zusammenbau1.jpg|350px]]<br />
[[File:Zusammenbau2.jpg|350px]]<br />
<br />
Nun wurde unser Prototyp getestet. Der Sensor erfüllte seinen Dienst und wir konnten erfolgreich die Temperaturen messen. Jedoch war das Relais während dem Testen ständig eingeschalten und der Ventilator lief die ganze Zeit auch wenn die Temperatur den Minimalwert unterschritten hatte. Es hat sich also irgendwo in unserem Programm einen Fehler eingeschlichen. Den galt es nun zu finden und zu beheben. Dazu bauten wir einen Druckknopf ein um zu überprüfen ob das Relais defekt war und um die Fehlerquellen etwas einzugrenzen.<br />
<br />
[[File:Temperatur.jpg|350px]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/TQnGa5WiGS4<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
Der Druckknopf funktionierte, das Relais schaltete perfekt ein und aus und der Ventilator wurde an- und abgestellt. Somit wissen wir nun wo der Fehler zu suchen ist und können versuchen das Programm an diesen Stellen zu bereinigen. Nur ist jetzt schon Donnerstag Nachmittag und der Hack 2 hat schon begonnen. Wir alle wurden aufgefordert unseren bisherigen Prototypen aufzugeben und etwas neues, anderes zu versuchen und zu testen. Also legen wir schweren Herzens unser erster Prototyp beiseite und widmen unsere Kreativität dem nächsten Hack.<br />
<br />
=== Reflexion ===<br />
Der Hack 1 hat uns gezeigt, dass es gar nicht so einfach ist beim ersten Versuch ein brauchbares Resultat zu erzielen. Jedoch konnten wir so aus zwei vorhergehenden, fehlgeschlagenen Ansätzen eine Idee weiterentwickeln. Somit konnten wir mit unseren Kompetenzen und den Erfahrungen aus dem Hack 0 ein zufriedenstellendes Resultat erzielen. Durch die zwei Versuche zuvor ging leider recht viel Zeit "verloren", welche wir sehr benötigt hätten um unser erster Prototyp fehlerfrei hinzukriegen. Es war uns auch eine Lehre, dass man nicht zu lange an einer Sache verharren sollte wenn einem nur wenig Zeit zur Verfügung steht. Manchmal ist es besser man wirft alles nochmal über den Haufen und beginnt von vorne. Trotz allen Strapazen während des Hack 1 sind wir mit unserem ersten Prototyp sehr zufrieden und konnten auch bei diesem Versuch wieder viel profitieren und mitnehmen. Nun blicken wir gespannt nach vorne auf den nächsten Hack.<br />
<br />
<br />
===Code===<br />
<br />
Wir konnten zwar die Temperatur herauslesen und das Relais über einen Butten steuern, jedoch die Steuerung anhand der Temperatur geling uns nicht.<br />
<br />
<pre><br />
/********************************************************************/<br />
// First we include the libraries<br />
#include <OneWire.h> <br />
#include <DallasTemperature.h><br />
/********************************************************************/<br />
// Data wire is plugged into pin 2 on the Arduino <br />
#define ONE_WIRE_BUS 2 <br />
<br />
float tempReading;<br />
/********************************************************************/<br />
// Setup a oneWire instance to communicate with any OneWire devices <br />
// (not just Maxim/Dallas temperature ICs) <br />
OneWire oneWire(ONE_WIRE_BUS); <br />
/********************************************************************/<br />
// Pass our oneWire reference to Dallas Temperature. <br />
DallasTemperature sensors(&oneWire);<br />
/********************************************************************/ <br />
int relayPin = 4; // Relay Singnal lead to Digital Pin [D2-D12]<br />
<br />
float maxTemperature = 30.00; // The Max Temperature allowed<br />
float minTemperature = 25.00; // The Min Temperature allowed<br />
<br />
// constants won't change. They're used here to set pin numbers:<br />
const int buttonPin = 8; // the number of the pushbutton pin<br />
const int ledPin = 4; // the number of the LED pin<br />
<br />
// variables will change:<br />
int buttonState = 0; // variable for reading the pushbutton status<br />
<br />
void setup(void) {<br />
// initialize the LED pin as an output:<br />
pinMode(ledPin, OUTPUT);<br />
// initialize the pushbutton pin as an input:<br />
pinMode(buttonPin, INPUT);<br />
<br />
Serial.begin(9600); <br />
Serial.println("Dallas Temperature IC Control Library Demo"); <br />
// Start up the library <br />
sensors.begin(); <br />
}<br />
<br />
void loop(void) <br />
{ <br />
// call sensors.requestTemperatures() to issue a global temperature <br />
// request to all devices on the bus <br />
/********************************************************************/<br />
Serial.print(" Requesting temperatures..."); <br />
sensors.requestTemperatures(); // Send the command to get temperature readings <br />
Serial.println("DONE"); <br />
/********************************************************************/<br />
Serial.print("Temperature is: "); <br />
Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"? <br />
// You can have more than one DS18B20 on the same bus. <br />
// 0 refers to the first IC on the wire <br />
delay(1000); // Check Temperature every second<br />
<br />
float temperature = getTemperature();<br />
if(temperature >= maxTemperature){<br />
powerOnRelay();<br />
} else if (temperature <= minTemperature) {<br />
powerOffRelay();<br />
}<br />
delay(1000); // Check tempertature every second<br />
<br />
} <br />
void powerOnRelay() {<br />
digitalWrite(relayPin, HIGH);<br />
Serial.println("Relay On");<br />
}<br />
<br />
void powerOffRelay() {<br />
digitalWrite(relayPin, LOW);<br />
Serial.println("Relay Off");<br />
}<br />
float getTemperature(){<br />
tempReading = digitalRead(ONE_WIRE_BUS);<br />
<br />
// read the state of the pushbutton value:<br />
buttonState = digitalRead(buttonPin);<br />
<br />
// check if the pushbutton is pressed. If it is, the buttonState is HIGH:<br />
if (buttonState == HIGH) {<br />
// turn LED on:<br />
digitalWrite(ledPin, HIGH);<br />
} else {<br />
// turn LED off:<br />
digitalWrite(ledPin, LOW);<br />
}<br />
}<br />
</pre><br />
<br />
== Hack 2: Spritzenpumpe ==<br />
<br />
Nachdem der Hack 1 abgeschlossen war, machten wir uns aufs Neue darüber Gedanken was wir für einen Prototyp für den Hack 2 bauen wollen. Urs hat nach dem Abschluss von Hack 1 gesagt, wir sollten uns ein komplett neues Produkt überlegen, welches möglicherweise auch etwas mit der Medizintechnik zu tun hat. Nach einem Brainstorming kamen wir noch nicht so richtig auf einen grünen Zweig. So kamen wir auf die Idee uns einen Kaffee zu holen und einfach mal durch das FABLAB zu laufen um alles Mögliche anzuschauen, in die Hand zu nehmen und uns von all diesen Gegenständen inspirieren zu lassen. So kamen uns diverse Gegenstände in die Finger. darunter waren Servomotoren sowie einige DC-Motoren, eine Spritze, eine Pumpe, ein Micro-Switch Schalter, ein Potentiometer und vieles mehr. Diese Gegenstände haben wir dann auf unserem Gruppentisch ausgebreitet und uns Gedanken darüber gemacht was wir damit wohl anstellen konnten zum Thema Medizintechnik. So entstanden relativ schnell einige Ideen. Wir haben uns schlussendlich dafür entschieden ein Dosiergerät für eine medizinische Spritze zu machen. Dieses sollte so funktionieren, dass wir eine Spritze in eine Vorrichtung legen und über einen DC-Motor zum Einfahren bzw. Ausfahren bringen. Dazu muss die Drehbewegung des Motors in eine Lineare Bewegung umgeleitet werden. Zudem muss ggf. auch die Drehzahl des Motors durch ein Potentiometer reguliert werden können um einen zu schnellen Aus- oder Einfahrvorgang zu verhindern. Soviel zu zu den technischen Überlegungen. <br />
<br />
Sofort nach dem Entscheid suchten wir nach einem geeigneten Motor. Dieser sollte dabei eine eher tiefe Drehzahl haben damit die Spritze nur langsam ein- und ausfährt. Zudem suchten wir im Internet nach einem geeigneten Mechanismus der die Drehbewegung in eine lineare Bewegung umwandelt. Denn wir hatten leider zu wenig zeit um alles selber zu entwerfen und zu konstruieren. So wurden wir auf auf der Hompage von [https://www.thingiverse.com/thing:2797132/ Thingiverse] schliesslich fündig. Also konnte wir die Folgenden Komponenten herunterladen und mit dem 3D-Drucker ausdrucken.<br />
<br />
Komponenten: <gallery><br />
File:Halteplatte.PNG | Halteplatte<br />
File:Zahnrad.PNG | Zahnradpaar<br />
File:Zahnradpaar.PNG | Zahnstange<br />
File:Zahnstange.PNG | Zahnrad<br />
</gallery><br />
<br />
Da wir einen anderen Motor verwendeten als für diesen Mechanismus vorgesehen wäre, mussten wir noch eine passende Adapterplatte konstruieren, damit der Motor auch auf die Vorrichtung passt.<br />
<br />
<gallery><br />
File:Adapterplatte.PNG | Adapterplatte<br />
File:Motor.PNG | Motor<br />
File:Motor_mit_Adapter.jpg | Motor mit Adapter<br />
</gallery><br />
<br />
Der Motor benötigt, wie auch der Ventilator von Hack 1, eine Spannung von 12V für den Betrieb. Also mussten wir erneut das 12V Netzgerät verwenden. Damit unser zweiter Prototyp auch die gewünschte Fördermenge fördern kann, muss die Zeitdauer, in welcher gefördert werden soll, definiert werden. Das dazugehörige Programm wird mit einem Arduino UNO implementiert. Der Zugehörige Code haben wir durch Recherche im Internet und durch persönliches erweitern und anpassen erstellt. Die Drehzahl des Motors darf nicht zu hoch sein damit man die Fördermenge auch sinnvoll einstellen kann. Für diese Anwendung wird ein Potentiometer zwischen Relais und Motor gehängt. So kann die Motorspannung reguliert und die Drehzahl anforderungsgemäss eingestellt werden. Nachfolgend wird der Prozessablauf kurz beschrieben.<br />
<br />
Mit einem Knopfdruck wird wird ein Relais geschalten und der Motor wird angesteuert. Die Drehzahl des Motors wird über ein Getriebe reduziert. Die Zahnräder greifen auf eine Zahnstange und wandeln die Drehbewegung in eine lineare Bewegung um. An der Zahnstange wird der Stössel der Spritze befestigt. Der Rest der Spritze wird mit einem Kabelbinder fest mit der Bodenplatte verbunden damit sich dieser Teil nicht bewegen kann. Die programmierte Zeitdauer bestimmt welche Menge an Flüssigkeit gefördert werden soll.<br />
<br />
[[File:Pumpe.PNG|500px|thumb|none|Aufbau der Spritzenpumpe]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/PLG_S3GtVI8<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
=== Reflexion ===<br />
<br />
Anders als beim Hack 1 kamen waren wir uns bei diesem Hack sehr schnell einig was genau wir bauen möchten. Die ganze Ideenfindung erledigte sich sehr schnell und wir konnten nach bereits wenigen Stunden mit dem programmieren des Arduinos beginnen. Wie wir bereits im Hack 1 erfahren durften, ist das bei dem gedrängten Zeitplan dieser Woche ein grosser Vorteil. Rückblickend können wir urteilen, dass der Hack 2 aus unserer Sicht ein erfreuendes Erfolgserlebnis war. Unser zweiter Prototyp funktioniert genau so wie wir uns das von Beginn an vorgestellt haben. Per Knopfdruck fördert unser Prototyp eine gewisse Menge an Flüssigkeit.<br />
<br />
=== Code ===<br />
<br />
<pre><br />
<br />
bool geschaltet = false;<br />
int RelaisPin = 10; <br />
int tasterPin = 2;<br />
int empfindlichkeit = 200;<br />
<br />
void setup() {<br />
<br />
pinMode( tasterPin, INPUT_PULLUP);<br />
pinMode( RelaisPin, OUTPUT);<br />
<br />
}<br />
<br />
void loop() {<br />
<br />
if (digitalRead(tasterPin) == LOW) <br />
{<br />
if (geschaltet == false) {<br />
geschaltet = true;<br />
}<br />
else {<br />
geschaltet = false;<br />
}<br />
}<br />
<br />
if (geschaltet == true) {<br />
digitalWrite(RelaisPin, HIGH);<br />
delay(1000);<br />
geschaltet = false; <br />
}<br />
<br />
if (geschaltet == false) {<br />
digitalWrite(RelaisPin, LOW);<br />
}<br />
<br />
delay(empfindlichkeit);<br />
}<br />
</pre><br />
<br />
== Hack 3: Zinnguss==<br />
<br />
Für diesen Hack wurde Zinn gegossen. Dank dem tiefen Schmelzpunkt lässt sich der Gusswerkstoff in einer Stahlkanne mit einem Brenner einer Autogenschweissanlage leicht erhitzen.<br />
<br />
=== Versuch 1 ===<br />
<br />
Für die Gussform wurde MDF verwendet. Da die Hitzebeständigkeit von MDF unklar war, sollte ein kleiner Versuch Aufschluss geben. Eine einfache Zylinderform mit einem Überlaufbecken bestehend aus 3 Platten gemässe Bild XYZAAAAAAAAAAAAA. Da nur eine kleine Menge an Zinn erhitzt wurde, war die Temperatur vermutlich deutlich über dem Schmelzpunkt. Es entwickelte sich Dampf, was zu einem Gussfehler im Überlauf führte. Ausserdem wurde das MDF stark verkohlt, siehe ABBBBBB. Dennoch ist das Resultat zufriedenstellend, sodass für einen weiteren Versuch wieder MDF verwendet werden kann.<br />
<br />
=== Versuch 2 ===<br />
<br />
Nun konnte der eigentliche Versuch gestartet werden. Das Zinn wurde wieder in der Stahlkanne erhitzt, jedoch nicht so stark wie in Versuch 1. Jedoch wurden diesmal alle Formen mit dem Lasercutter ausgeschnitten. Auch bei dieser Gussform diente die letzte MSF Platte als Überlauf. Das flüssige Zinn konnte bei der grösseren Form kontrollierter und langsamer gegossen werden, so dass die Form gleichmässig ausgefüllt werden konnte, siehe ABBBBBBBBB. Durch den Schwund lässt sich das Gussstück relativ gut aus der Form drücken, obwohl keine Formschrägen vorhanden waren. Vorher empfiehlt es sich, den Überlauf abzufräsen, da sich Zinn nur bedingt im Schraubstock einspannen lässt. Zinn vierbiegt sich sehr leicht.<br />
<br />
= Skill-Share-Session =<br />
<br />
== Grundlagen der Arduinoprogrammierung ==<br />
<br />
Dieser Kurs wurde von unserer Gruppe angeboten und soll den Teilnehmern die Grundlage der Programierung eines Arduino UNO beibringen. Folgend werden die grundlegenden Befehle und deren Syntax vorgestellt. Der Aufbau folgt dem YouTube Tutorial von Max. Hier gelangst du zu dem Link: [https://www.youtube.com/watch?v=eaFvQG8wrGw&list=PLAB63281B90FB376E&index=3]<br />
<br />
=== Skript ===<br />
Der Code wird in einem Skript geschrieben. Dieses ist in zwei Bereiche aufgeteilt<br />
* Void setup() Dieses Skript wird einmalig ausgeführt und enthält zB. Input und output<br />
* Void loop() Dieser Teil des Skripts wird als Dauerschleife wiederholt<br />
<br />
==== Befehlseingabe ====<br />
<br />
Die Befehle werden nach folgender Syntax eingegeben:<br />
<br />
* Funktion(Parameter1, Parameter2);<br />
<br />
Dabei muss das «;» gesetzte werden, ausserdem spielen Gross- und Kleinbuchstaben eine Rolle.<br />
<br />
=== Variablen ===<br />
Übersichtshalber sollen sprechende Namen für die Bezeichnung von z.B. Outputs verwendet werden. Dabei können verschiedene Datentypen ausgewählt werden.<br />
<br />
==== Datentyp ====<br />
* int Ganze Zahlen von -32768 … 32767 z.B. 1, 48, -654<br />
* boolean Entweder true oder false<br />
* byte 8 Bit an Informationen z.B. 00010101 (=21)<br />
* char enthält 1 Byte Informationen, das ein Zeichen darstellt z.B. 65 = A<br />
* long grosse Zahlen von ca. -2.1 Milliarden bis 2.1 Milliarden z.B. 15636451<br />
* float Komazahlen z.B. 5.498<br />
* string Zeichenketten z.B. «Do it yourself»<br />
<br />
==== Deklaration Syntax ====<br />
<br />
* Datentyp Name = Wert;<br />
<br />
oder<br />
<br />
* Datentyp Name;<br />
* Name = Wert;<br />
<br />
====Ort der Deklaration====<br />
<br />
Die Variable muss immer im Teil des Skriptes deklariert sein, wo sie auch gebraucht wird. Wird die Variable im setup wie auch im loop benötigt, so kann man die Variable als sogenannte globale Variable oberhalb des Setups deklarieren.<br />
<br />
===If-Schleife===<br />
<br />
Bei der If-Schleife wird der Wert einer Variablen mit einem Vergleichswert verglichen. Falls der Vergleich positiv ist, wird der Code ausgeführt, ansonsten übersprungen. Dazu sind Vergleichsoperatoren notwendig.<br />
<br />
====Syntax====<br />
<br />
if(Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
====Vergleichsoperatoren====<br />
<br />
* == gleich<br />
* != ungleich<br />
* < kleiner<br />
* < grösser<br />
* <= kleiner gleich<br />
* >= grösser gleich<br />
<br />
===While-Schleife===<br />
<br />
Mit der While-Schleife wird die Bedingung fortlaufend geprüft. Stimmt diese, wird der Code ausgeführt, ansonsten wird der Code übersprungen. Es können die selben Vergleichsoperatoren wie bei der If-Schleife verwendet werden.<br />
<br />
====Syntax====<br />
<br />
while (Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
==Bildgebende Verfahren==<br />
<br />
Der Tag begann mit einer Einführung in die Bildgebenden Verfahren durch David Stadelmann. Hierbei erklärte er uns, verschiedene Methoden, um Bilder aus dem Körperinneren zu machen und welche Methode für die verschiedenen Gewebetypen gebraucht werden. Zudem Zeigte und erklärte er uns anhand von Beispielen was die Einzelnen Schattierungen aussagen könnten.<br />
<br />
[[DIY-MedTech Bildgebende Verfahren-Unterschiedliche Bildeindrücke - Team Frosch]]<br />
<br />
==Synths & Sound ==<br />
<br />
Danach ging es weiter mit dem Kurs Synths & Sounds. Diese Session wurde von [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] durchgeführt. Hierbei zeigte er uns, wie man mit verschieden erzeugten Schwingungen eine grosse Variation von Tönen generiert kann. Zudem auch wie man elektronisch gewisse Instrumente Simulieren könnte und durch die Aneinanderreihung verschiedenster Tonvariationen eine Melodie enstehen kann. Dies mit unterschiedlich Variationen von selbstgebauten Synthesizers.<br />
<br />
<gallery><br />
File:Sinthesizer1.jpg | Synthesizer 1<br />
File:Synthesizer2.jpg | Synthesizer 2<br />
</gallery><br />
<br />
== Schweissen ==<br />
<br />
Bei dem Skill-Share Workshop von [https://www.hackteria.org/wiki/Team_G2020/ Team G2020] konnten wir verschiedene Schweissverfahren kennenlernen und auch gleich anwenden.<br />
<br />
Es wurde uns das [https://de.wikipedia.org/wiki/Lichtbogenhandschwei%C3%9Fen/ Elektrodenschweissen], das [https://de.wikipedia.org/wiki/Schutzgasschwei%C3%9Fen/ MIG-Schweissen] und das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] nähergebracht.<br />
<br />
Dieser Workshop war für uns alle sehr interessant, da sich bisher noch keiner von uns so wirklich mit dem Schweissen und den verschiedenen Verfahren auskannte. An diesem Tag konnten wir nach einer kurzen Theorie gleich sofort selber handanlegen und die verschiedenen Schweissverfahren ausprobieren.<br />
<br />
Dabei mussten wir feststellen, dass es gar nicht so einfach ist wie es immer aussieht. Besonders das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] braucht sehr viel Übung und Geschick um wirklich schöne Schweissergebnisse zu erzielen.<br />
<br />
== Autonomes Nervensystem und das Hören in der Medizin ==<br />
<br />
Der Assistent Dr. Christian Gehringer, MSc. (ETH) hielt uns einen sehr interessanten Vortrag. Dabei ging es darum, dass wir die Anatomie kennenlernen und erkunden am Beispiel des Hörens z.B mit einem Stethoskop.<br />
<br />
[https://www.hackteria.org/wiki/Autonomes_Nervensystem_und_das_H%C3%B6ren_in_der_Medizin/ Autonomes Nervensystem und das Hören in der Medizin]</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=MedTechDIY20_Die_Profis&diff=41633MedTechDIY20 Die Profis2020-02-09T11:28:48Z<p>Tnroth: /* Hack 3: Zinnguss */</p>
<hr />
<div>Hier gehts zurück auf: [[Medizintechnik DIY]]<br />
<br />
[[File:DieProfis.png|700px|right|none|Wochenplan]]<br />
<br />
= Team =<br />
<br />
'''Die Profis''' besteht aus den drei Studierenden '''Daniel Glur''', '''Lukas Roth''' und '''Daniel Zellweger''' der Hochschule Luzern. Im Rahmen der Blockwoche "DIY Medizintechnik" formierte sich das Team aus verschiedenen Studiengängen um auch interdisziplinär voneinander zu lernen und Wissen auszutauschen.<br />
<br />
'''Mitglieder:'''<br />
<br />
Maschinentechnik: <gallery><br />
File:DanielGlur.jpg | Daniel Glur<br />
File:LukasRoth.jpg | Lukas Roth<br />
</gallery><br />
<br />
Medizintechnik: <gallery><br />
File:DanielZellweger.jpg | Daniel Zellweger<br />
</gallery><br />
<br />
= Pflichtlektüre =<br />
<br />
'''How to control someone else's arm with your brain | Greg Gage'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/rSQNi5sAwuc<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
In Diesem Video wird gezeigt wie man über die Aufnahme eines Biologischen Signals, dieses an eine zweite Person weitergeleitet werden kann.<br />
Dies funktioniert jedoch nur aus verschiedenen Gründen bedingt. Nebst den allgemeinen Störeinflüsse aus der Messtechnik, kommen zusätzlich noch jene der Ansteuerung. Da das Signal nur von einzelnen Muskelfasern abgefangen wird, kann dieses nicht sämtliche Muskelfasern der zweiten Person Reizen. Dies hat zur folge, dass nur eine annähernd ähnliche Bewegung des Armes arfolgt.<br />
<br />
<br />
'''What is Open Source explained in LEGO'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/a8fHgx9mE5U<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Durch die Verwendung der Open Source Methode erhält man die Möglichkeit während des Projektes noch Erweiterungen oder Veränderungen anzustreben.<br />
<br />
'''"Why toys make good medical devices | Jose Gomez-Marquez'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/UHCT9SOBHs0<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Nebst dem Preis besitzen Spielzeuge diverse spezifische Funktionen. Da diese meist günstige Anschaffung auch einfach verändert werden kann, sind sie sehr geeignet dafür umgebaut zu werden. Somit sind Spielzeuge welche chemische oder sensorische Funktionen besitzen ein gefundenes fressen für den Hacker und eine Alternative für Regionen in welchen die finanzielle Situation teure Medizinprodukte nicht erlauben.<br />
<br />
= Einleitung =<br />
Die Blockwoche "DIY Medizintechnik" verbindet Anwendungen der Medizintechnik mit Do It Yourself (DIY) Ansätzen. Dadurch wird das tiefere Verständnis von Medizintechnischen Geräten durch einen direkten, interdisziplinären und möglichst selbstgesteuerten Zugang gefördert. Basierend auf verschiedenen elektrophysiologischen Messmodulen (EMG, EKG, EOG, EEG) entwickeln die Studierenden im Team Ideen für innovative Projekte. Erste Prototypen werden mit den Mitteln der Digitalen Fabrikation hergestellt und getestet. Tag für Tag stehen produktive "Hacks" auf dem Programm. Hacks sind sehr praxisbezogene Arbeitssequenzen wo die Studierenden Experimente durchführen sowie Prototypen entwickeln und bauen können. Dabei ist aber nicht nur die Medizintechnik zentral sondern auch der Interdisziplinäre Austausch sowie eine Skill-Share-Session wo die Studierenden ganz nach dem do it yourself Gedanken einen eigenen Workshop leiten können.<br />
Alle Erkenntnisse und Erfahrungen werden laufend in einem eigenen Wiki-Eintrag festgehalten und dokumentiert.<br />
<br />
Die Blockwoche wird von den beiden Dozenten [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] und [https://www.hackteria.org/wiki/Gaudi/ Urs Gaudenz] duchgeführt. Unterstützt wurden die Beiden von '''Dr. Christian Gehringer, MSc. (ETH)''' und [http://chrisobrist.ch/about// Chris Obrist]<br />
<br />
Maschinentechnik: <gallery><br />
File:MarkDusseiller.jpg | Dr. Marc R. Dusseiller<br />
File:UrsGaudenz.jpg | Urs Gaudenz<br />
</gallery><br />
<br />
= Planung =<br />
<br />
Die Blockwoche wird wie in folgendem Wochenplan unterteilt:<br />
<br />
[[File:Wochenplan2020.jpg|700px|thumb|none|Wochenplan]]<br />
<br />
= Wochenrückblick =<br />
== Die Woche in Bilder==<br />
[[File:ProfisInAction.PNG|400px]]<br />
[[File:Komponente.PNG|300px]]<br />
[[File:Aufbau.PNG|400px]]<br />
[[File:Motor_mit_Adapter.jpg|300px]]<br />
[[File:Pumpe.PNG|350px]]<br />
[[File:pulsmessung.jpg|450px]]<br />
[[File:Zusammenbau2.jpg|300px]]<br />
[[File:Foto 07.02.20, 11 14 53.jpg|300px]]<br />
[[File:DanielZellweger.jpg|300px]]<br />
<br />
== Tag 1==<br />
'''Einführung'''<br />
<br />
Wir traffen uns zu beginn im FABLAB, wo sich die Dozenten vorstellten und uns über Ihren bisherigen Werdegang informierten. Das interessante an der beruflichen Laufbahn der beiden ist, dass beide ein Studium abgeschlossen haben und heute einer Tätigkeit nachgehen, welche eigentlich nicht mehr viel mit dem damaligen Studium zu tun hat. Das vermittelt unserer Meinung nach, den Studenten eine etwas andere Sichtweise als die technische Hochschule. Es zeigt z.B. dass man nach einem Studium nicht gezwungen ist auf diesem Fachgebiet zu arbeiten sondern dass der Arbeitsmarkt noch sehr viele andere Möglichkeiten zu bieten hat.<br />
<br />
Nachdem sie sich Vorgestellt haben, stellten sie uns auch noch den Assistent vor. Dieser ist ein ausgebildeter Arzt welcher sich momentan für seinen zweiten Doktortitel engagiert. Von Ihm und seinem grossen medizinischen Fachwissen können wir als Studenten die ganze Woche profitieren.<br />
<br />
Danach überliessen die Dozenten uns Studenten das Wort. Es war eine etwas andere Vorstellungsrunde wie man sie noch nicht kannte. Dazu stand uns ein ganzer Tisch mit kuriosen Gegenständen, welche etwas mit dem DIY Gedanke zu tun haben, zur verfügung. Sie vorderten uns alle auf einen Gegenstand auszuwählen. Danach mussten wir uns Vorstellen und noch ein paar Worte dazu verlieren welche Gemeinsamkeiten wir mit dem ausgesuchten Gegenstand teilen.<br />
<br />
'''DIY (Do It Yourself)'''<br />
<br />
Das DIY Prinzip basiert auf eigenem experimentieren und learning by doing<br />
<br />
{{#widget:Iframe<br />
|url= https://www.youtube.com/watch?v=3zH_J12G9sQ<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
<br />
'''How to use Wiki'''<br />
<br />
Durch die 45 minütige Einführung in die Handhabung das Wiki durch Dr. Marc R. Dusseiller waren wir bereit unsere Erkenntnisse und Projekte, welche wir in dieser Woche erfahren und durchführen werden, in einer Zugänglichen Form, niederzuschreiben.<br />
<br />
== Tag 2 ==<br />
Am zweiten Tag begannen wir die Vorbereitung Skill-Share-Session. Diesbezüglich sollte jeder Teilnehmer einen Skill, welcher er erlernen möchte und einen Skill, den man beibringen könnte notieren. Diese wurden dann auf einer Tafel in Cluster aufgeteilt. Zwölf davon wurden als Skill-Share Workshops ausgewählt und die Teilnehmer konnten sich nach Belieben einschreiben.<br />
<br />
[[File:SkillSession2020.jpg|500px|thumb|none|Skill-share-session]]<br />
<br />
Während des zweiten Teils arbeiteten wir an unserem Experiment weiter, welches wir am Vortag begonnen haben.<br />
Dazu mussten wir die elektronischen Bauteile mit unserem Laptop verbinden und einen vorgefertigten Sketch laufen lassen.<br />
<br />
Nachdem wir den ersten Versuch erfolgreich durchführen konnten, versuchten wir mit dem Arduino einen Stepmotor anzusteuern. Dabei stiessen wir jedoch auf einige Schwierigkeiten. Da wir diese bis zur Einführung des Lasercutters und des 3D-Druckers fertig haben sollten. Siehe [[#Hack 0]]<br />
<br />
Unteranderem wurde unsere Skill-Share-Session über Arduino vorbereitet.<br />
<br />
Am Abend kam [http://chrisobrist.ch/about// Chris Obrist] zu Besuch und unterhielt uns mit einer wundervollen musikalischen Darbietung.<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/Hj1Ogr8137o<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
== Tag 3 ==<br />
Von 9:00 Uhr bis nach dem Mittag um 14:00 Uhr waren wir alle mit der [[#Skill-Share-Session]] beschäftigt.<br />
<br />
Danach hatten wir Zeit um den nächsten Hack vorzubereiten und zu planen.<br />
<br />
== Tag 4 ==<br />
Den Vormittag verbrachten wir weiter mit dem Hack 1, welchen wir dann vor der Mittagspause den Dozenten und allen Mitstudierenden präsentieren durften. Leider litten wir während des ganzen Hack 1 sehr unter Zeitdruck, was auf eine turbulente Projektphase zurückzuführen ist. Mehr dazu erfährst du im [[#Hack 1]].<br />
<br />
Nach einer kurzen Inspirationphase entschieden wir uns dafür eine kleine Spritzenpumpe zu basteln. [[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 5 ==<br />
Am Tag 5 ging es darum die Einzelteile physikalisch sowie über ein Funktionierendes Arduinoprogamm zum laufen zu bringen.<br />
[[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 6 ==<br />
Zum Abschluss durften wir alle Hacks der verschiedenen Teams begutachten. Interessant waren die spontanen Vorgehensweisen und auch die daraus entstandenen Produkte. Viele Teams suchten zuerst das Material und erst danach die Ideen. So entstanden die unterschiedlichsten Prototypen.<br />
Zudem Reflektierten wird die Blockwoche. Im Allgemeinen gefielen die Freiheit und auch der unkomplizierte Teamgeist untereinander. Besten Dank auch an die Organisatoren der Blockwoche.<br />
<br />
= Experimente =<br />
Bei den Experimenten sollte es darum gehen aus unterschiedlichsten Einzelteilen ein Produkt zu erschaffen. Dieser Prozess brachte uns dazu über die Grenzen unseres altäglichem Denken zu springen und in der Verbindung der einzelnen Bereiche solcher Produkte besser zu verstehen.<br />
<br />
== Hack 0 ==<br />
<br />
<br />
===Versuchsaufbau 1===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 1===<br />
Nach den Inputs der Dozenten verbrachten wir hauptsächlich die Zeit damit den Muscle Spiker Shield nach der Anleitung mit den dazugehörigen Teilen zusammenzulöten.[https://backyardbrains.com/products/files/MuscleSpikerShield.v.2.11.BuildingInstructions.pdf]V2.11<br />
Nebenbei machten wir unsere ersten Schritte in Arduino.<br />
Als wir unsere mechatronischen Komponenten zusammengestellt und ein Grundverständnis von Arduino angeeignet haben, verbanden wir dies in einem Experiment. <br />
Das Experiment welches wir durchführten nennt man Control Machines with your Brain und ist auf der Seite von [https://backyardbrains.com/experiments/muscleSpikerShield/ Backyard Brains] nachzusehen.<br />
<br />
Für den Versuch wurden Elektroden an den Testpersonen angeschlossen und über den Arduino ausgelesen.<br />
Der Versuch wurde mit zwei Testpersonen durchgeführt. Dabei fiel uns nebst der Kontrolle der LED's auch auf, dass der Puls gemessen wurde. Dies unabhängig von der Position der Elektroden. Vermutlich reagieren die Elektroden zu sensitiv für diese Anwendung.<br />
<br />
<br />
[[File:UeberblickVersuchTeamD.jpg|400px|thumb|none|Versuchsaufbau]]<br />
[[File:Versuchsaufbau1TeamD.jpg|400px|thumb|none|Elektrodenbefestigung]]<br />
[[File:MessungDanielGlur.jpg|400px|thumb|none|Messung von Daniels Puls]]<br />
<br />
===Versuchsaufbau 2===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 2===<br />
<br />
Als zweites Experiment versuchten wir durch das anspannen der Muskeln einen Servomotor anzusteuern. Wie es auch auf der Homepage von [https://backyardbrains.com/experiments/MuscleSpikerShield_GripperHand/ Backyard Brains] anzutreffen ist. Dieser Versuch konnte aber leider aus Zeitgründen nicht zu Ende geführt werden. Wir konnten lediglich das Arduinoprogramm laden und etwas anpassen.<br />
<br />
===Reflexion===<br />
<br />
Der Hack 0 war in der Hinsicht sehr interessant, da wir alle unsere ersten Erfahrungen mit einem Arduino machen konnten. Einige von unserem Team hatten bisher auch noch nie auf einer Printplatte irgendwelche Widerstände oder Schalter etc. gelötet. Ebenso war es erstaunlich, dass man mit so wenig so viel verschiedene Sachen machen kann. Keiner von uns hat gedacht dass wir bereits am ersten Tag irgend etwas mit unseren Muskeln kontrollieren könnten. Insgesamt kam der Hack 0 gut bei uns an und wir alle konnten einiges davon profitieren und hoffentlich auch den weiteren Hacks weiterverwenden.<br />
<br />
== Hack 1: Baseball-Cap mit Ventilator ==<br />
<br />
Der Hack 1 beschreibt die Konzept- und Testphase des ersten Prototyps.<br />
<br />
Zu Beginn waren wir uns sehr unschlüssig was wir wirklich bauen wollen. Also entschieden wir uns für ein weiteres Experiment mit einem Bausatz von Backyard Brains. Wir versuchten durch die Funktion des Heart and Brain Spiker Shield einen Ventilator anzusteuern. Der Gedanke, welcher uns auf diese Idee führte, kennt wohl jeder Student. Während einer Prüfung kommt so mancher ins Grübeln und in harten Fällen kommt es auch vor dass einem eine Schweissperle von der Stirn läuft. Um in solchen Fällen für die nötige Kühlung zu sorgen, sollen Sensoren die Hirnströme gemessen und als Signal wiedergeben werden um damit einen Ventilator anzuschalten.<br />
<br />
Zu unserem eigenen Erstaunen erhielten wir sogar ein Signal aus unserer Messung. Es stellte sich aber sehr bald heraus, dass das wohl nicht die Hirnströme waren sondern eher Bewegungen des Kopfs und der Kabel. Denn die Sensoren sind recht empfindlich gegen solche Einflüsse. Zudem kam noch, dass die Sensoren über den Haaren angebracht wurden, was das Signal der Hirnströme noch zusätzlich verschlechterte. Nach einigen Versuchen sahen wir ein, dass das wohl eine zu grosse Herausforderung war und wir uns besser an einen einfacheren Versuch versuchen sollten.<br />
<br />
[[File:heart_and_brain.jpg|300px|thumb|none|Signal aus Messung der "Hirnströme"]]<br />
[[File:EEGDanielGlur.jpg|500px|thumb|none|Daniel beim messen der "Hirnströme"]]<br />
<br />
Also beschlossen wir uns anstelle der Hirnströme den Puls zu messen. Denn während einer Prüfung kann es durchaus auch vorkommen, dass der Puls etwas ansteigt. Die Messungen sollten dann ausgelesen werden und wenn der Puls eine gewisse Frequenz übersteigt, schaltet ein Ventilator ein um den Studenten wieder etwas zu beruhigen.<br />
<br />
Für diesen Versuch platzierten wir Sensoren am Unterarm und an der Handoberfläche. Idealerweise sollten laut Assistent Christian die Sensoren aber so weit wie möglich voneinander entfernt, an einer anderen Körperstelle angebracht werden um eine gewisse Referenz zu haben und um sicherzustellen, dass man wirklich den Puls misst. Unsere Kabel waren aber leider etwas zu kurz. Wir erhielten trotzdem ein relativ gutes Signal von welchem man davon ausgehen konnte, dass es sich um den Puls handelte. Jetzt nur noch das Signal auswerten, einen Frequenzbegrenzer programmieren und mithilfe von einem Arduino UNO den Ventilator ansteuern... Dachten wir... Dies war allerdings etwas Schwieriger als erwartet und überstieg unsere Kompetenzen. Das führte uns dazu auch diesen Versuch an dieser Stelle abzubrechen und nochmal zu überdenken.<br />
<br />
<br />
[[File:puls.png|400px|thumb|none|Pulssignal]]<br />
[[File:pulsmessung.jpg|400px|thumb|none|Pulssmessung]]<br />
<br />
<br />
Nun rannte uns schon langsam die Zeit davon. Doch dann kam uns die Idee, welche wir schon zu Beginn benötigt hätten. Und zwar wollten wir einen Ventilator auf einem Baseball-Cap anbringen und diesen ansteuern wenn ein gewisses Temperaturniveau unter dem Cap überschritten wird wird. Dazu wird ein 12V Ventilator via Relais von dem Arduino angesteuert. Weil der Arduino nur eine Spannung von 5V liefert, musste ein 12V Netzgerät den Ventilator mit Strom versorgen. Damit man den Ventilator so schalten konnte, damit er den Strom über das 12V Netzgerät bezieht, mussten wir noch ein Relais einbauen. Den Code für den Arduino bezogen wir aus verschiedenen ähnlichen Projekten aus dem Internet und passten ihn spezifisch für unsere Anwendung an. Für das auslesen der Temperatur mussten wir zuerst zwei Libreries herunterladen (DallasTemperature und OneWire).<br />
<br />
[[File:Komponente.PNG|400px|thumb|none|Verbaute Komponenten]]<br />
<br />
Nun mussten wir noch den Ventilator am Baseball-Cap anbringen. Dafür wurde eine Halterung im CAD konstruiert und mit einem 3D-Drucker ausgedruckt. Die Teile wurden danach zusammengesteckt und mit dem Baseball-Cap verschraubt. Natürlich wurde zuvor ein Loch in das Cap geschnitten, damit der Ventilator auch seinen Zweck erfüllen kann und dem Studenten einen kühlen Kopf verschafft.<br />
<br />
[[File:Aufbau.PNG|350px|thumb|none|3D-Modell im CAD]]<br />
<br />
[[File:Zusammenbau1.jpg|350px]]<br />
[[File:Zusammenbau2.jpg|350px]]<br />
<br />
Nun wurde unser Prototyp getestet. Der Sensor erfüllte seinen Dienst und wir konnten erfolgreich die Temperaturen messen. Jedoch war das Relais während dem Testen ständig eingeschalten und der Ventilator lief die ganze Zeit auch wenn die Temperatur den Minimalwert unterschritten hatte. Es hat sich also irgendwo in unserem Programm einen Fehler eingeschlichen. Den galt es nun zu finden und zu beheben. Dazu bauten wir einen Druckknopf ein um zu überprüfen ob das Relais defekt war und um die Fehlerquellen etwas einzugrenzen.<br />
<br />
[[File:Temperatur.jpg|350px]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/TQnGa5WiGS4<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
Der Druckknopf funktionierte, das Relais schaltete perfekt ein und aus und der Ventilator wurde an- und abgestellt. Somit wissen wir nun wo der Fehler zu suchen ist und können versuchen das Programm an diesen Stellen zu bereinigen. Nur ist jetzt schon Donnerstag Nachmittag und der Hack 2 hat schon begonnen. Wir alle wurden aufgefordert unseren bisherigen Prototypen aufzugeben und etwas neues, anderes zu versuchen und zu testen. Also legen wir schweren Herzens unser erster Prototyp beiseite und widmen unsere Kreativität dem nächsten Hack.<br />
<br />
=== Reflexion ===<br />
Der Hack 1 hat uns gezeigt, dass es gar nicht so einfach ist beim ersten Versuch ein brauchbares Resultat zu erzielen. Jedoch konnten wir so aus zwei vorhergehenden, fehlgeschlagenen Ansätzen eine Idee weiterentwickeln. Somit konnten wir mit unseren Kompetenzen und den Erfahrungen aus dem Hack 0 ein zufriedenstellendes Resultat erzielen. Durch die zwei Versuche zuvor ging leider recht viel Zeit "verloren", welche wir sehr benötigt hätten um unser erster Prototyp fehlerfrei hinzukriegen. Es war uns auch eine Lehre, dass man nicht zu lange an einer Sache verharren sollte wenn einem nur wenig Zeit zur Verfügung steht. Manchmal ist es besser man wirft alles nochmal über den Haufen und beginnt von vorne. Trotz allen Strapazen während des Hack 1 sind wir mit unserem ersten Prototyp sehr zufrieden und konnten auch bei diesem Versuch wieder viel profitieren und mitnehmen. Nun blicken wir gespannt nach vorne auf den nächsten Hack.<br />
<br />
<br />
===Code===<br />
<br />
Wir konnten zwar die Temperatur herauslesen und das Relais über einen Butten steuern, jedoch die Steuerung anhand der Temperatur geling uns nicht.<br />
<br />
<pre><br />
/********************************************************************/<br />
// First we include the libraries<br />
#include <OneWire.h> <br />
#include <DallasTemperature.h><br />
/********************************************************************/<br />
// Data wire is plugged into pin 2 on the Arduino <br />
#define ONE_WIRE_BUS 2 <br />
<br />
float tempReading;<br />
/********************************************************************/<br />
// Setup a oneWire instance to communicate with any OneWire devices <br />
// (not just Maxim/Dallas temperature ICs) <br />
OneWire oneWire(ONE_WIRE_BUS); <br />
/********************************************************************/<br />
// Pass our oneWire reference to Dallas Temperature. <br />
DallasTemperature sensors(&oneWire);<br />
/********************************************************************/ <br />
int relayPin = 4; // Relay Singnal lead to Digital Pin [D2-D12]<br />
<br />
float maxTemperature = 30.00; // The Max Temperature allowed<br />
float minTemperature = 25.00; // The Min Temperature allowed<br />
<br />
// constants won't change. They're used here to set pin numbers:<br />
const int buttonPin = 8; // the number of the pushbutton pin<br />
const int ledPin = 4; // the number of the LED pin<br />
<br />
// variables will change:<br />
int buttonState = 0; // variable for reading the pushbutton status<br />
<br />
void setup(void) {<br />
// initialize the LED pin as an output:<br />
pinMode(ledPin, OUTPUT);<br />
// initialize the pushbutton pin as an input:<br />
pinMode(buttonPin, INPUT);<br />
<br />
Serial.begin(9600); <br />
Serial.println("Dallas Temperature IC Control Library Demo"); <br />
// Start up the library <br />
sensors.begin(); <br />
}<br />
<br />
void loop(void) <br />
{ <br />
// call sensors.requestTemperatures() to issue a global temperature <br />
// request to all devices on the bus <br />
/********************************************************************/<br />
Serial.print(" Requesting temperatures..."); <br />
sensors.requestTemperatures(); // Send the command to get temperature readings <br />
Serial.println("DONE"); <br />
/********************************************************************/<br />
Serial.print("Temperature is: "); <br />
Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"? <br />
// You can have more than one DS18B20 on the same bus. <br />
// 0 refers to the first IC on the wire <br />
delay(1000); // Check Temperature every second<br />
<br />
float temperature = getTemperature();<br />
if(temperature >= maxTemperature){<br />
powerOnRelay();<br />
} else if (temperature <= minTemperature) {<br />
powerOffRelay();<br />
}<br />
delay(1000); // Check tempertature every second<br />
<br />
} <br />
void powerOnRelay() {<br />
digitalWrite(relayPin, HIGH);<br />
Serial.println("Relay On");<br />
}<br />
<br />
void powerOffRelay() {<br />
digitalWrite(relayPin, LOW);<br />
Serial.println("Relay Off");<br />
}<br />
float getTemperature(){<br />
tempReading = digitalRead(ONE_WIRE_BUS);<br />
<br />
// read the state of the pushbutton value:<br />
buttonState = digitalRead(buttonPin);<br />
<br />
// check if the pushbutton is pressed. If it is, the buttonState is HIGH:<br />
if (buttonState == HIGH) {<br />
// turn LED on:<br />
digitalWrite(ledPin, HIGH);<br />
} else {<br />
// turn LED off:<br />
digitalWrite(ledPin, LOW);<br />
}<br />
}<br />
</pre><br />
<br />
== Hack 2: Spritzenpumpe ==<br />
<br />
Nachdem der Hack 1 abgeschlossen war, machten wir uns aufs Neue darüber Gedanken was wir für einen Prototyp für den Hack 2 bauen wollen. Urs hat nach dem Abschluss von Hack 1 gesagt, wir sollten uns ein komplett neues Produkt überlegen, welches möglicherweise auch etwas mit der Medizintechnik zu tun hat. Nach einem Brainstorming kamen wir noch nicht so richtig auf einen grünen Zweig. So kamen wir auf die Idee uns einen Kaffee zu holen und einfach mal durch das FABLAB zu laufen um alles Mögliche anzuschauen, in die Hand zu nehmen und uns von all diesen Gegenständen inspirieren zu lassen. So kamen uns diverse Gegenstände in die Finger. darunter waren Servomotoren sowie einige DC-Motoren, eine Spritze, eine Pumpe, ein Micro-Switch Schalter, ein Potentiometer und vieles mehr. Diese Gegenstände haben wir dann auf unserem Gruppentisch ausgebreitet und uns Gedanken darüber gemacht was wir damit wohl anstellen konnten zum Thema Medizintechnik. So entstanden relativ schnell einige Ideen. Wir haben uns schlussendlich dafür entschieden ein Dosiergerät für eine medizinische Spritze zu machen. Dieses sollte so funktionieren, dass wir eine Spritze in eine Vorrichtung legen und über einen DC-Motor zum Einfahren bzw. Ausfahren bringen. Dazu muss die Drehbewegung des Motors in eine Lineare Bewegung umgeleitet werden. Zudem muss ggf. auch die Drehzahl des Motors durch ein Potentiometer reguliert werden können um einen zu schnellen Aus- oder Einfahrvorgang zu verhindern. Soviel zu zu den technischen Überlegungen. <br />
<br />
Sofort nach dem Entscheid suchten wir nach einem geeigneten Motor. Dieser sollte dabei eine eher tiefe Drehzahl haben damit die Spritze nur langsam ein- und ausfährt. Zudem suchten wir im Internet nach einem geeigneten Mechanismus der die Drehbewegung in eine lineare Bewegung umwandelt. Denn wir hatten leider zu wenig zeit um alles selber zu entwerfen und zu konstruieren. So wurden wir auf auf der Hompage von [https://www.thingiverse.com/thing:2797132/ Thingiverse] schliesslich fündig. Also konnte wir die Folgenden Komponenten herunterladen und mit dem 3D-Drucker ausdrucken.<br />
<br />
Komponenten: <gallery><br />
File:Halteplatte.PNG | Halteplatte<br />
File:Zahnrad.PNG | Zahnradpaar<br />
File:Zahnradpaar.PNG | Zahnstange<br />
File:Zahnstange.PNG | Zahnrad<br />
</gallery><br />
<br />
Da wir einen anderen Motor verwendeten als für diesen Mechanismus vorgesehen wäre, mussten wir noch eine passende Adapterplatte konstruieren, damit der Motor auch auf die Vorrichtung passt.<br />
<br />
<gallery><br />
File:Adapterplatte.PNG | Adapterplatte<br />
File:Motor.PNG | Motor<br />
File:Motor_mit_Adapter.jpg | Motor mit Adapter<br />
</gallery><br />
<br />
Der Motor benötigt, wie auch der Ventilator von Hack 1, eine Spannung von 12V für den Betrieb. Also mussten wir erneut das 12V Netzgerät verwenden. Damit unser zweiter Prototyp auch die gewünschte Fördermenge fördern kann, muss die Zeitdauer, in welcher gefördert werden soll, definiert werden. Das dazugehörige Programm wird mit einem Arduino UNO implementiert. Der Zugehörige Code haben wir durch Recherche im Internet und durch persönliches erweitern und anpassen erstellt. Die Drehzahl des Motors darf nicht zu hoch sein damit man die Fördermenge auch sinnvoll einstellen kann. Für diese Anwendung wird ein Potentiometer zwischen Relais und Motor gehängt. So kann die Motorspannung reguliert und die Drehzahl anforderungsgemäss eingestellt werden. Nachfolgend wird der Prozessablauf kurz beschrieben.<br />
<br />
Mit einem Knopfdruck wird wird ein Relais geschalten und der Motor wird angesteuert. Die Drehzahl des Motors wird über ein Getriebe reduziert. Die Zahnräder greifen auf eine Zahnstange und wandeln die Drehbewegung in eine lineare Bewegung um. An der Zahnstange wird der Stössel der Spritze befestigt. Der Rest der Spritze wird mit einem Kabelbinder fest mit der Bodenplatte verbunden damit sich dieser Teil nicht bewegen kann. Die programmierte Zeitdauer bestimmt welche Menge an Flüssigkeit gefördert werden soll.<br />
<br />
[[File:Pumpe.PNG|500px|thumb|none|Aufbau der Spritzenpumpe]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/PLG_S3GtVI8<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
=== Reflexion ===<br />
<br />
Anders als beim Hack 1 kamen waren wir uns bei diesem Hack sehr schnell einig was genau wir bauen möchten. Die ganze Ideenfindung erledigte sich sehr schnell und wir konnten nach bereits wenigen Stunden mit dem programmieren des Arduinos beginnen. Wie wir bereits im Hack 1 erfahren durften, ist das bei dem gedrängten Zeitplan dieser Woche ein grosser Vorteil. Rückblickend können wir urteilen, dass der Hack 2 aus unserer Sicht ein erfreuendes Erfolgserlebnis war. Unser zweiter Prototyp funktioniert genau so wie wir uns das von Beginn an vorgestellt haben. Per Knopfdruck fördert unser Prototyp eine gewisse Menge an Flüssigkeit.<br />
<br />
=== Code ===<br />
<br />
<pre><br />
<br />
bool geschaltet = false;<br />
int RelaisPin = 10; <br />
int tasterPin = 2;<br />
int empfindlichkeit = 200;<br />
<br />
void setup() {<br />
<br />
pinMode( tasterPin, INPUT_PULLUP);<br />
pinMode( RelaisPin, OUTPUT);<br />
<br />
}<br />
<br />
void loop() {<br />
<br />
if (digitalRead(tasterPin) == LOW) <br />
{<br />
if (geschaltet == false) {<br />
geschaltet = true;<br />
}<br />
else {<br />
geschaltet = false;<br />
}<br />
}<br />
<br />
if (geschaltet == true) {<br />
digitalWrite(RelaisPin, HIGH);<br />
delay(1000);<br />
geschaltet = false; <br />
}<br />
<br />
if (geschaltet == false) {<br />
digitalWrite(RelaisPin, LOW);<br />
}<br />
<br />
delay(empfindlichkeit);<br />
}<br />
</pre><br />
<br />
== Hack 3: Zinnguss==<br />
Für diesen Hack wurde Zinn gegossen. Dank dem tiefen Schmelzpunkt lässt sich der Gusswerkstoff in einer Stahlkanne mit einem Brenner einer Autogenschweissanlage leicht erhitzen.<br />
Versuch 1<br />
Für die Gussform wurde MDF verwendet. Da die Hitzebeständigkeit von MDF unklar war, sollte ein kleiner Versuch Aufschluss geben. Eine einfache Zylinderform mit einem Überlaufbecken bestehend aus 3 Platten gemässe Bild XYZAAAAAAAAAAAAA. Da nur eine kleine Menge an Zinn erhitzt wurde, war die Temperatur vermutlich deutlich über dem Schmelzpunkt. Es entwickelte sich Dampf, was zu einem Gussfehler im Überlauf führte. Ausserdem wurde das MDF stark verkohlt, siehe ABBBBBB. Dennoch ist das Resultat zufriedenstellend, sodass für einen weiteren Versuch wieder MDF verwendet werden kann.<br />
Versuch 2<br />
Nun konnte der eigentliche Versuch gestartet werden. Das Zinn wurde wieder in der Stahlkanne erhitzt, jedoch nicht so stark wie in Versuch 1. Jedoch wurden diesmal alle Formen mit dem Lasercutter ausgeschnitten. Auch bei dieser Gussform diente die letzte MSF Platte als Überlauf. Das flüssige Zinn konnte bei der grösseren Form kontrollierter und langsamer gegossen werden, so dass die Form gleichmässig ausgefüllt werden konnte, siehe ABBBBBBBBB. Durch den Schwund lässt sich das Gussstück relativ gut aus der Form drücken, obwohl keine Formschrägen vorhanden waren. Vorher empfiehlt es sich, den Überlauf abzufräsen, da sich Zinn nur bedingt im Schraubstock einspannen lässt. Zinn vierbiegt sich sehr leicht.<br />
<br />
= Skill-Share-Session =<br />
<br />
== Grundlagen der Arduinoprogrammierung ==<br />
<br />
Dieser Kurs wurde von unserer Gruppe angeboten und soll den Teilnehmern die Grundlage der Programierung eines Arduino UNO beibringen. Folgend werden die grundlegenden Befehle und deren Syntax vorgestellt. Der Aufbau folgt dem YouTube Tutorial von Max. Hier gelangst du zu dem Link: [https://www.youtube.com/watch?v=eaFvQG8wrGw&list=PLAB63281B90FB376E&index=3]<br />
<br />
=== Skript ===<br />
Der Code wird in einem Skript geschrieben. Dieses ist in zwei Bereiche aufgeteilt<br />
* Void setup() Dieses Skript wird einmalig ausgeführt und enthält zB. Input und output<br />
* Void loop() Dieser Teil des Skripts wird als Dauerschleife wiederholt<br />
<br />
==== Befehlseingabe ====<br />
<br />
Die Befehle werden nach folgender Syntax eingegeben:<br />
<br />
* Funktion(Parameter1, Parameter2);<br />
<br />
Dabei muss das «;» gesetzte werden, ausserdem spielen Gross- und Kleinbuchstaben eine Rolle.<br />
<br />
=== Variablen ===<br />
Übersichtshalber sollen sprechende Namen für die Bezeichnung von z.B. Outputs verwendet werden. Dabei können verschiedene Datentypen ausgewählt werden.<br />
<br />
==== Datentyp ====<br />
* int Ganze Zahlen von -32768 … 32767 z.B. 1, 48, -654<br />
* boolean Entweder true oder false<br />
* byte 8 Bit an Informationen z.B. 00010101 (=21)<br />
* char enthält 1 Byte Informationen, das ein Zeichen darstellt z.B. 65 = A<br />
* long grosse Zahlen von ca. -2.1 Milliarden bis 2.1 Milliarden z.B. 15636451<br />
* float Komazahlen z.B. 5.498<br />
* string Zeichenketten z.B. «Do it yourself»<br />
<br />
==== Deklaration Syntax ====<br />
<br />
* Datentyp Name = Wert;<br />
<br />
oder<br />
<br />
* Datentyp Name;<br />
* Name = Wert;<br />
<br />
====Ort der Deklaration====<br />
<br />
Die Variable muss immer im Teil des Skriptes deklariert sein, wo sie auch gebraucht wird. Wird die Variable im setup wie auch im loop benötigt, so kann man die Variable als sogenannte globale Variable oberhalb des Setups deklarieren.<br />
<br />
===If-Schleife===<br />
<br />
Bei der If-Schleife wird der Wert einer Variablen mit einem Vergleichswert verglichen. Falls der Vergleich positiv ist, wird der Code ausgeführt, ansonsten übersprungen. Dazu sind Vergleichsoperatoren notwendig.<br />
<br />
====Syntax====<br />
<br />
if(Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
====Vergleichsoperatoren====<br />
<br />
* == gleich<br />
* != ungleich<br />
* < kleiner<br />
* < grösser<br />
* <= kleiner gleich<br />
* >= grösser gleich<br />
<br />
===While-Schleife===<br />
<br />
Mit der While-Schleife wird die Bedingung fortlaufend geprüft. Stimmt diese, wird der Code ausgeführt, ansonsten wird der Code übersprungen. Es können die selben Vergleichsoperatoren wie bei der If-Schleife verwendet werden.<br />
<br />
====Syntax====<br />
<br />
while (Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
==Bildgebende Verfahren==<br />
<br />
Der Tag begann mit einer Einführung in die Bildgebenden Verfahren durch David Stadelmann. Hierbei erklärte er uns, verschiedene Methoden, um Bilder aus dem Körperinneren zu machen und welche Methode für die verschiedenen Gewebetypen gebraucht werden. Zudem Zeigte und erklärte er uns anhand von Beispielen was die Einzelnen Schattierungen aussagen könnten.<br />
<br />
[[DIY-MedTech Bildgebende Verfahren-Unterschiedliche Bildeindrücke - Team Frosch]]<br />
<br />
==Synths & Sound ==<br />
<br />
Danach ging es weiter mit dem Kurs Synths & Sounds. Diese Session wurde von [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] durchgeführt. Hierbei zeigte er uns, wie man mit verschieden erzeugten Schwingungen eine grosse Variation von Tönen generiert kann. Zudem auch wie man elektronisch gewisse Instrumente Simulieren könnte und durch die Aneinanderreihung verschiedenster Tonvariationen eine Melodie enstehen kann. Dies mit unterschiedlich Variationen von selbstgebauten Synthesizers.<br />
<br />
<gallery><br />
File:Sinthesizer1.jpg | Synthesizer 1<br />
File:Synthesizer2.jpg | Synthesizer 2<br />
</gallery><br />
<br />
== Schweissen ==<br />
<br />
Bei dem Skill-Share Workshop von [https://www.hackteria.org/wiki/Team_G2020/ Team G2020] konnten wir verschiedene Schweissverfahren kennenlernen und auch gleich anwenden.<br />
<br />
Es wurde uns das [https://de.wikipedia.org/wiki/Lichtbogenhandschwei%C3%9Fen/ Elektrodenschweissen], das [https://de.wikipedia.org/wiki/Schutzgasschwei%C3%9Fen/ MIG-Schweissen] und das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] nähergebracht.<br />
<br />
Dieser Workshop war für uns alle sehr interessant, da sich bisher noch keiner von uns so wirklich mit dem Schweissen und den verschiedenen Verfahren auskannte. An diesem Tag konnten wir nach einer kurzen Theorie gleich sofort selber handanlegen und die verschiedenen Schweissverfahren ausprobieren.<br />
<br />
Dabei mussten wir feststellen, dass es gar nicht so einfach ist wie es immer aussieht. Besonders das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] braucht sehr viel Übung und Geschick um wirklich schöne Schweissergebnisse zu erzielen.<br />
<br />
== Autonomes Nervensystem und das Hören in der Medizin ==<br />
<br />
Der Assistent Dr. Christian Gehringer, MSc. (ETH) hielt uns einen sehr interessanten Vortrag. Dabei ging es darum, dass wir die Anatomie kennenlernen und erkunden am Beispiel des Hörens z.B mit einem Stethoskop.<br />
<br />
[https://www.hackteria.org/wiki/Autonomes_Nervensystem_und_das_H%C3%B6ren_in_der_Medizin/ Autonomes Nervensystem und das Hören in der Medizin]</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=MedTechDIY20_Die_Profis&diff=41630MedTechDIY20 Die Profis2020-02-09T11:27:14Z<p>Tnroth: /* Tag 6 */</p>
<hr />
<div>Hier gehts zurück auf: [[Medizintechnik DIY]]<br />
<br />
[[File:DieProfis.png|700px|right|none|Wochenplan]]<br />
<br />
= Team =<br />
<br />
'''Die Profis''' besteht aus den drei Studierenden '''Daniel Glur''', '''Lukas Roth''' und '''Daniel Zellweger''' der Hochschule Luzern. Im Rahmen der Blockwoche "DIY Medizintechnik" formierte sich das Team aus verschiedenen Studiengängen um auch interdisziplinär voneinander zu lernen und Wissen auszutauschen.<br />
<br />
'''Mitglieder:'''<br />
<br />
Maschinentechnik: <gallery><br />
File:DanielGlur.jpg | Daniel Glur<br />
File:LukasRoth.jpg | Lukas Roth<br />
</gallery><br />
<br />
Medizintechnik: <gallery><br />
File:DanielZellweger.jpg | Daniel Zellweger<br />
</gallery><br />
<br />
= Pflichtlektüre =<br />
<br />
'''How to control someone else's arm with your brain | Greg Gage'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/rSQNi5sAwuc<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
In Diesem Video wird gezeigt wie man über die Aufnahme eines Biologischen Signals, dieses an eine zweite Person weitergeleitet werden kann.<br />
Dies funktioniert jedoch nur aus verschiedenen Gründen bedingt. Nebst den allgemeinen Störeinflüsse aus der Messtechnik, kommen zusätzlich noch jene der Ansteuerung. Da das Signal nur von einzelnen Muskelfasern abgefangen wird, kann dieses nicht sämtliche Muskelfasern der zweiten Person Reizen. Dies hat zur folge, dass nur eine annähernd ähnliche Bewegung des Armes arfolgt.<br />
<br />
<br />
'''What is Open Source explained in LEGO'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/a8fHgx9mE5U<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Durch die Verwendung der Open Source Methode erhält man die Möglichkeit während des Projektes noch Erweiterungen oder Veränderungen anzustreben.<br />
<br />
'''"Why toys make good medical devices | Jose Gomez-Marquez'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/UHCT9SOBHs0<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Nebst dem Preis besitzen Spielzeuge diverse spezifische Funktionen. Da diese meist günstige Anschaffung auch einfach verändert werden kann, sind sie sehr geeignet dafür umgebaut zu werden. Somit sind Spielzeuge welche chemische oder sensorische Funktionen besitzen ein gefundenes fressen für den Hacker und eine Alternative für Regionen in welchen die finanzielle Situation teure Medizinprodukte nicht erlauben.<br />
<br />
= Einleitung =<br />
Die Blockwoche "DIY Medizintechnik" verbindet Anwendungen der Medizintechnik mit Do It Yourself (DIY) Ansätzen. Dadurch wird das tiefere Verständnis von Medizintechnischen Geräten durch einen direkten, interdisziplinären und möglichst selbstgesteuerten Zugang gefördert. Basierend auf verschiedenen elektrophysiologischen Messmodulen (EMG, EKG, EOG, EEG) entwickeln die Studierenden im Team Ideen für innovative Projekte. Erste Prototypen werden mit den Mitteln der Digitalen Fabrikation hergestellt und getestet. Tag für Tag stehen produktive "Hacks" auf dem Programm. Hacks sind sehr praxisbezogene Arbeitssequenzen wo die Studierenden Experimente durchführen sowie Prototypen entwickeln und bauen können. Dabei ist aber nicht nur die Medizintechnik zentral sondern auch der Interdisziplinäre Austausch sowie eine Skill-Share-Session wo die Studierenden ganz nach dem do it yourself Gedanken einen eigenen Workshop leiten können.<br />
Alle Erkenntnisse und Erfahrungen werden laufend in einem eigenen Wiki-Eintrag festgehalten und dokumentiert.<br />
<br />
Die Blockwoche wird von den beiden Dozenten [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] und [https://www.hackteria.org/wiki/Gaudi/ Urs Gaudenz] duchgeführt. Unterstützt wurden die Beiden von '''Dr. Christian Gehringer, MSc. (ETH)''' und [http://chrisobrist.ch/about// Chris Obrist]<br />
<br />
Maschinentechnik: <gallery><br />
File:MarkDusseiller.jpg | Dr. Marc R. Dusseiller<br />
File:UrsGaudenz.jpg | Urs Gaudenz<br />
</gallery><br />
<br />
= Planung =<br />
<br />
Die Blockwoche wird wie in folgendem Wochenplan unterteilt:<br />
<br />
[[File:Wochenplan2020.jpg|700px|thumb|none|Wochenplan]]<br />
<br />
= Wochenrückblick =<br />
== Die Woche in Bilder==<br />
[[File:ProfisInAction.PNG|400px]]<br />
[[File:Komponente.PNG|300px]]<br />
[[File:Aufbau.PNG|400px]]<br />
[[File:Motor_mit_Adapter.jpg|300px]]<br />
[[File:Pumpe.PNG|350px]]<br />
[[File:pulsmessung.jpg|450px]]<br />
[[File:Zusammenbau2.jpg|300px]]<br />
[[File:Foto 07.02.20, 11 14 53.jpg|300px]]<br />
[[File:DanielZellweger.jpg|300px]]<br />
<br />
== Tag 1==<br />
'''Einführung'''<br />
<br />
Wir traffen uns zu beginn im FABLAB, wo sich die Dozenten vorstellten und uns über Ihren bisherigen Werdegang informierten. Das interessante an der beruflichen Laufbahn der beiden ist, dass beide ein Studium abgeschlossen haben und heute einer Tätigkeit nachgehen, welche eigentlich nicht mehr viel mit dem damaligen Studium zu tun hat. Das vermittelt unserer Meinung nach, den Studenten eine etwas andere Sichtweise als die technische Hochschule. Es zeigt z.B. dass man nach einem Studium nicht gezwungen ist auf diesem Fachgebiet zu arbeiten sondern dass der Arbeitsmarkt noch sehr viele andere Möglichkeiten zu bieten hat.<br />
<br />
Nachdem sie sich Vorgestellt haben, stellten sie uns auch noch den Assistent vor. Dieser ist ein ausgebildeter Arzt welcher sich momentan für seinen zweiten Doktortitel engagiert. Von Ihm und seinem grossen medizinischen Fachwissen können wir als Studenten die ganze Woche profitieren.<br />
<br />
Danach überliessen die Dozenten uns Studenten das Wort. Es war eine etwas andere Vorstellungsrunde wie man sie noch nicht kannte. Dazu stand uns ein ganzer Tisch mit kuriosen Gegenständen, welche etwas mit dem DIY Gedanke zu tun haben, zur verfügung. Sie vorderten uns alle auf einen Gegenstand auszuwählen. Danach mussten wir uns Vorstellen und noch ein paar Worte dazu verlieren welche Gemeinsamkeiten wir mit dem ausgesuchten Gegenstand teilen.<br />
<br />
'''DIY (Do It Yourself)'''<br />
<br />
Das DIY Prinzip basiert auf eigenem experimentieren und learning by doing<br />
<br />
{{#widget:Iframe<br />
|url= https://www.youtube.com/watch?v=3zH_J12G9sQ<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
<br />
'''How to use Wiki'''<br />
<br />
Durch die 45 minütige Einführung in die Handhabung das Wiki durch Dr. Marc R. Dusseiller waren wir bereit unsere Erkenntnisse und Projekte, welche wir in dieser Woche erfahren und durchführen werden, in einer Zugänglichen Form, niederzuschreiben.<br />
<br />
== Tag 2 ==<br />
Am zweiten Tag begannen wir die Vorbereitung Skill-Share-Session. Diesbezüglich sollte jeder Teilnehmer einen Skill, welcher er erlernen möchte und einen Skill, den man beibringen könnte notieren. Diese wurden dann auf einer Tafel in Cluster aufgeteilt. Zwölf davon wurden als Skill-Share Workshops ausgewählt und die Teilnehmer konnten sich nach Belieben einschreiben.<br />
<br />
[[File:SkillSession2020.jpg|500px|thumb|none|Skill-share-session]]<br />
<br />
Während des zweiten Teils arbeiteten wir an unserem Experiment weiter, welches wir am Vortag begonnen haben.<br />
Dazu mussten wir die elektronischen Bauteile mit unserem Laptop verbinden und einen vorgefertigten Sketch laufen lassen.<br />
<br />
Nachdem wir den ersten Versuch erfolgreich durchführen konnten, versuchten wir mit dem Arduino einen Stepmotor anzusteuern. Dabei stiessen wir jedoch auf einige Schwierigkeiten. Da wir diese bis zur Einführung des Lasercutters und des 3D-Druckers fertig haben sollten. Siehe [[#Hack 0]]<br />
<br />
Unteranderem wurde unsere Skill-Share-Session über Arduino vorbereitet.<br />
<br />
Am Abend kam [http://chrisobrist.ch/about// Chris Obrist] zu Besuch und unterhielt uns mit einer wundervollen musikalischen Darbietung.<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/Hj1Ogr8137o<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
== Tag 3 ==<br />
Von 9:00 Uhr bis nach dem Mittag um 14:00 Uhr waren wir alle mit der [[#Skill-Share-Session]] beschäftigt.<br />
<br />
Danach hatten wir Zeit um den nächsten Hack vorzubereiten und zu planen.<br />
<br />
== Tag 4 ==<br />
Den Vormittag verbrachten wir weiter mit dem Hack 1, welchen wir dann vor der Mittagspause den Dozenten und allen Mitstudierenden präsentieren durften. Leider litten wir während des ganzen Hack 1 sehr unter Zeitdruck, was auf eine turbulente Projektphase zurückzuführen ist. Mehr dazu erfährst du im [[#Hack 1]].<br />
<br />
Nach einer kurzen Inspirationphase entschieden wir uns dafür eine kleine Spritzenpumpe zu basteln. [[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 5 ==<br />
Am Tag 5 ging es darum die Einzelteile physikalisch sowie über ein Funktionierendes Arduinoprogamm zum laufen zu bringen.<br />
[[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 6 ==<br />
Zum Abschluss durften wir alle Hacks der verschiedenen Teams begutachten. Interessant waren die spontanen Vorgehensweisen und auch die daraus entstandenen Produkte. Viele Teams suchten zuerst das Material und erst danach die Ideen. So entstanden die unterschiedlichsten Prototypen.<br />
Zudem Reflektierten wird die Blockwoche. Im Allgemeinen gefielen die Freiheit und auch der unkomplizierte Teamgeist untereinander. Besten Dank auch an die Organisatoren der Blockwoche.<br />
<br />
= Experimente =<br />
Bei den Experimenten sollte es darum gehen aus unterschiedlichsten Einzelteilen ein Produkt zu erschaffen. Dieser Prozess brachte uns dazu über die Grenzen unseres altäglichem Denken zu springen und in der Verbindung der einzelnen Bereiche solcher Produkte besser zu verstehen.<br />
<br />
== Hack 0 ==<br />
<br />
<br />
===Versuchsaufbau 1===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 1===<br />
Nach den Inputs der Dozenten verbrachten wir hauptsächlich die Zeit damit den Muscle Spiker Shield nach der Anleitung mit den dazugehörigen Teilen zusammenzulöten.[https://backyardbrains.com/products/files/MuscleSpikerShield.v.2.11.BuildingInstructions.pdf]V2.11<br />
Nebenbei machten wir unsere ersten Schritte in Arduino.<br />
Als wir unsere mechatronischen Komponenten zusammengestellt und ein Grundverständnis von Arduino angeeignet haben, verbanden wir dies in einem Experiment. <br />
Das Experiment welches wir durchführten nennt man Control Machines with your Brain und ist auf der Seite von [https://backyardbrains.com/experiments/muscleSpikerShield/ Backyard Brains] nachzusehen.<br />
<br />
Für den Versuch wurden Elektroden an den Testpersonen angeschlossen und über den Arduino ausgelesen.<br />
Der Versuch wurde mit zwei Testpersonen durchgeführt. Dabei fiel uns nebst der Kontrolle der LED's auch auf, dass der Puls gemessen wurde. Dies unabhängig von der Position der Elektroden. Vermutlich reagieren die Elektroden zu sensitiv für diese Anwendung.<br />
<br />
<br />
[[File:UeberblickVersuchTeamD.jpg|400px|thumb|none|Versuchsaufbau]]<br />
[[File:Versuchsaufbau1TeamD.jpg|400px|thumb|none|Elektrodenbefestigung]]<br />
[[File:MessungDanielGlur.jpg|400px|thumb|none|Messung von Daniels Puls]]<br />
<br />
===Versuchsaufbau 2===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 2===<br />
<br />
Als zweites Experiment versuchten wir durch das anspannen der Muskeln einen Servomotor anzusteuern. Wie es auch auf der Homepage von [https://backyardbrains.com/experiments/MuscleSpikerShield_GripperHand/ Backyard Brains] anzutreffen ist. Dieser Versuch konnte aber leider aus Zeitgründen nicht zu Ende geführt werden. Wir konnten lediglich das Arduinoprogramm laden und etwas anpassen.<br />
<br />
===Reflexion===<br />
<br />
Der Hack 0 war in der Hinsicht sehr interessant, da wir alle unsere ersten Erfahrungen mit einem Arduino machen konnten. Einige von unserem Team hatten bisher auch noch nie auf einer Printplatte irgendwelche Widerstände oder Schalter etc. gelötet. Ebenso war es erstaunlich, dass man mit so wenig so viel verschiedene Sachen machen kann. Keiner von uns hat gedacht dass wir bereits am ersten Tag irgend etwas mit unseren Muskeln kontrollieren könnten. Insgesamt kam der Hack 0 gut bei uns an und wir alle konnten einiges davon profitieren und hoffentlich auch den weiteren Hacks weiterverwenden.<br />
<br />
== Hack 1: Baseball-Cap mit Ventilator ==<br />
<br />
Der Hack 1 beschreibt die Konzept- und Testphase des ersten Prototyps.<br />
<br />
Zu Beginn waren wir uns sehr unschlüssig was wir wirklich bauen wollen. Also entschieden wir uns für ein weiteres Experiment mit einem Bausatz von Backyard Brains. Wir versuchten durch die Funktion des Heart and Brain Spiker Shield einen Ventilator anzusteuern. Der Gedanke, welcher uns auf diese Idee führte, kennt wohl jeder Student. Während einer Prüfung kommt so mancher ins Grübeln und in harten Fällen kommt es auch vor dass einem eine Schweissperle von der Stirn läuft. Um in solchen Fällen für die nötige Kühlung zu sorgen, sollen Sensoren die Hirnströme gemessen und als Signal wiedergeben werden um damit einen Ventilator anzuschalten.<br />
<br />
Zu unserem eigenen Erstaunen erhielten wir sogar ein Signal aus unserer Messung. Es stellte sich aber sehr bald heraus, dass das wohl nicht die Hirnströme waren sondern eher Bewegungen des Kopfs und der Kabel. Denn die Sensoren sind recht empfindlich gegen solche Einflüsse. Zudem kam noch, dass die Sensoren über den Haaren angebracht wurden, was das Signal der Hirnströme noch zusätzlich verschlechterte. Nach einigen Versuchen sahen wir ein, dass das wohl eine zu grosse Herausforderung war und wir uns besser an einen einfacheren Versuch versuchen sollten.<br />
<br />
[[File:heart_and_brain.jpg|300px|thumb|none|Signal aus Messung der "Hirnströme"]]<br />
[[File:EEGDanielGlur.jpg|500px|thumb|none|Daniel beim messen der "Hirnströme"]]<br />
<br />
Also beschlossen wir uns anstelle der Hirnströme den Puls zu messen. Denn während einer Prüfung kann es durchaus auch vorkommen, dass der Puls etwas ansteigt. Die Messungen sollten dann ausgelesen werden und wenn der Puls eine gewisse Frequenz übersteigt, schaltet ein Ventilator ein um den Studenten wieder etwas zu beruhigen.<br />
<br />
Für diesen Versuch platzierten wir Sensoren am Unterarm und an der Handoberfläche. Idealerweise sollten laut Assistent Christian die Sensoren aber so weit wie möglich voneinander entfernt, an einer anderen Körperstelle angebracht werden um eine gewisse Referenz zu haben und um sicherzustellen, dass man wirklich den Puls misst. Unsere Kabel waren aber leider etwas zu kurz. Wir erhielten trotzdem ein relativ gutes Signal von welchem man davon ausgehen konnte, dass es sich um den Puls handelte. Jetzt nur noch das Signal auswerten, einen Frequenzbegrenzer programmieren und mithilfe von einem Arduino UNO den Ventilator ansteuern... Dachten wir... Dies war allerdings etwas Schwieriger als erwartet und überstieg unsere Kompetenzen. Das führte uns dazu auch diesen Versuch an dieser Stelle abzubrechen und nochmal zu überdenken.<br />
<br />
<br />
[[File:puls.png|400px|thumb|none|Pulssignal]]<br />
[[File:pulsmessung.jpg|400px|thumb|none|Pulssmessung]]<br />
<br />
<br />
Nun rannte uns schon langsam die Zeit davon. Doch dann kam uns die Idee, welche wir schon zu Beginn benötigt hätten. Und zwar wollten wir einen Ventilator auf einem Baseball-Cap anbringen und diesen ansteuern wenn ein gewisses Temperaturniveau unter dem Cap überschritten wird wird. Dazu wird ein 12V Ventilator via Relais von dem Arduino angesteuert. Weil der Arduino nur eine Spannung von 5V liefert, musste ein 12V Netzgerät den Ventilator mit Strom versorgen. Damit man den Ventilator so schalten konnte, damit er den Strom über das 12V Netzgerät bezieht, mussten wir noch ein Relais einbauen. Den Code für den Arduino bezogen wir aus verschiedenen ähnlichen Projekten aus dem Internet und passten ihn spezifisch für unsere Anwendung an. Für das auslesen der Temperatur mussten wir zuerst zwei Libreries herunterladen (DallasTemperature und OneWire).<br />
<br />
[[File:Komponente.PNG|400px|thumb|none|Verbaute Komponenten]]<br />
<br />
Nun mussten wir noch den Ventilator am Baseball-Cap anbringen. Dafür wurde eine Halterung im CAD konstruiert und mit einem 3D-Drucker ausgedruckt. Die Teile wurden danach zusammengesteckt und mit dem Baseball-Cap verschraubt. Natürlich wurde zuvor ein Loch in das Cap geschnitten, damit der Ventilator auch seinen Zweck erfüllen kann und dem Studenten einen kühlen Kopf verschafft.<br />
<br />
[[File:Aufbau.PNG|350px|thumb|none|3D-Modell im CAD]]<br />
<br />
[[File:Zusammenbau1.jpg|350px]]<br />
[[File:Zusammenbau2.jpg|350px]]<br />
<br />
Nun wurde unser Prototyp getestet. Der Sensor erfüllte seinen Dienst und wir konnten erfolgreich die Temperaturen messen. Jedoch war das Relais während dem Testen ständig eingeschalten und der Ventilator lief die ganze Zeit auch wenn die Temperatur den Minimalwert unterschritten hatte. Es hat sich also irgendwo in unserem Programm einen Fehler eingeschlichen. Den galt es nun zu finden und zu beheben. Dazu bauten wir einen Druckknopf ein um zu überprüfen ob das Relais defekt war und um die Fehlerquellen etwas einzugrenzen.<br />
<br />
[[File:Temperatur.jpg|350px]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/TQnGa5WiGS4<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
Der Druckknopf funktionierte, das Relais schaltete perfekt ein und aus und der Ventilator wurde an- und abgestellt. Somit wissen wir nun wo der Fehler zu suchen ist und können versuchen das Programm an diesen Stellen zu bereinigen. Nur ist jetzt schon Donnerstag Nachmittag und der Hack 2 hat schon begonnen. Wir alle wurden aufgefordert unseren bisherigen Prototypen aufzugeben und etwas neues, anderes zu versuchen und zu testen. Also legen wir schweren Herzens unser erster Prototyp beiseite und widmen unsere Kreativität dem nächsten Hack.<br />
<br />
=== Reflexion ===<br />
Der Hack 1 hat uns gezeigt, dass es gar nicht so einfach ist beim ersten Versuch ein brauchbares Resultat zu erzielen. Jedoch konnten wir so aus zwei vorhergehenden, fehlgeschlagenen Ansätzen eine Idee weiterentwickeln. Somit konnten wir mit unseren Kompetenzen und den Erfahrungen aus dem Hack 0 ein zufriedenstellendes Resultat erzielen. Durch die zwei Versuche zuvor ging leider recht viel Zeit "verloren", welche wir sehr benötigt hätten um unser erster Prototyp fehlerfrei hinzukriegen. Es war uns auch eine Lehre, dass man nicht zu lange an einer Sache verharren sollte wenn einem nur wenig Zeit zur Verfügung steht. Manchmal ist es besser man wirft alles nochmal über den Haufen und beginnt von vorne. Trotz allen Strapazen während des Hack 1 sind wir mit unserem ersten Prototyp sehr zufrieden und konnten auch bei diesem Versuch wieder viel profitieren und mitnehmen. Nun blicken wir gespannt nach vorne auf den nächsten Hack.<br />
<br />
<br />
===Code===<br />
<br />
Wir konnten zwar die Temperatur herauslesen und das Relais über einen Butten steuern, jedoch die Steuerung anhand der Temperatur geling uns nicht.<br />
<br />
<pre><br />
/********************************************************************/<br />
// First we include the libraries<br />
#include <OneWire.h> <br />
#include <DallasTemperature.h><br />
/********************************************************************/<br />
// Data wire is plugged into pin 2 on the Arduino <br />
#define ONE_WIRE_BUS 2 <br />
<br />
float tempReading;<br />
/********************************************************************/<br />
// Setup a oneWire instance to communicate with any OneWire devices <br />
// (not just Maxim/Dallas temperature ICs) <br />
OneWire oneWire(ONE_WIRE_BUS); <br />
/********************************************************************/<br />
// Pass our oneWire reference to Dallas Temperature. <br />
DallasTemperature sensors(&oneWire);<br />
/********************************************************************/ <br />
int relayPin = 4; // Relay Singnal lead to Digital Pin [D2-D12]<br />
<br />
float maxTemperature = 30.00; // The Max Temperature allowed<br />
float minTemperature = 25.00; // The Min Temperature allowed<br />
<br />
// constants won't change. They're used here to set pin numbers:<br />
const int buttonPin = 8; // the number of the pushbutton pin<br />
const int ledPin = 4; // the number of the LED pin<br />
<br />
// variables will change:<br />
int buttonState = 0; // variable for reading the pushbutton status<br />
<br />
void setup(void) {<br />
// initialize the LED pin as an output:<br />
pinMode(ledPin, OUTPUT);<br />
// initialize the pushbutton pin as an input:<br />
pinMode(buttonPin, INPUT);<br />
<br />
Serial.begin(9600); <br />
Serial.println("Dallas Temperature IC Control Library Demo"); <br />
// Start up the library <br />
sensors.begin(); <br />
}<br />
<br />
void loop(void) <br />
{ <br />
// call sensors.requestTemperatures() to issue a global temperature <br />
// request to all devices on the bus <br />
/********************************************************************/<br />
Serial.print(" Requesting temperatures..."); <br />
sensors.requestTemperatures(); // Send the command to get temperature readings <br />
Serial.println("DONE"); <br />
/********************************************************************/<br />
Serial.print("Temperature is: "); <br />
Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"? <br />
// You can have more than one DS18B20 on the same bus. <br />
// 0 refers to the first IC on the wire <br />
delay(1000); // Check Temperature every second<br />
<br />
float temperature = getTemperature();<br />
if(temperature >= maxTemperature){<br />
powerOnRelay();<br />
} else if (temperature <= minTemperature) {<br />
powerOffRelay();<br />
}<br />
delay(1000); // Check tempertature every second<br />
<br />
} <br />
void powerOnRelay() {<br />
digitalWrite(relayPin, HIGH);<br />
Serial.println("Relay On");<br />
}<br />
<br />
void powerOffRelay() {<br />
digitalWrite(relayPin, LOW);<br />
Serial.println("Relay Off");<br />
}<br />
float getTemperature(){<br />
tempReading = digitalRead(ONE_WIRE_BUS);<br />
<br />
// read the state of the pushbutton value:<br />
buttonState = digitalRead(buttonPin);<br />
<br />
// check if the pushbutton is pressed. If it is, the buttonState is HIGH:<br />
if (buttonState == HIGH) {<br />
// turn LED on:<br />
digitalWrite(ledPin, HIGH);<br />
} else {<br />
// turn LED off:<br />
digitalWrite(ledPin, LOW);<br />
}<br />
}<br />
</pre><br />
<br />
== Hack 2: Spritzenpumpe ==<br />
<br />
Nachdem der Hack 1 abgeschlossen war, machten wir uns aufs Neue darüber Gedanken was wir für einen Prototyp für den Hack 2 bauen wollen. Urs hat nach dem Abschluss von Hack 1 gesagt, wir sollten uns ein komplett neues Produkt überlegen, welches möglicherweise auch etwas mit der Medizintechnik zu tun hat. Nach einem Brainstorming kamen wir noch nicht so richtig auf einen grünen Zweig. So kamen wir auf die Idee uns einen Kaffee zu holen und einfach mal durch das FABLAB zu laufen um alles Mögliche anzuschauen, in die Hand zu nehmen und uns von all diesen Gegenständen inspirieren zu lassen. So kamen uns diverse Gegenstände in die Finger. darunter waren Servomotoren sowie einige DC-Motoren, eine Spritze, eine Pumpe, ein Micro-Switch Schalter, ein Potentiometer und vieles mehr. Diese Gegenstände haben wir dann auf unserem Gruppentisch ausgebreitet und uns Gedanken darüber gemacht was wir damit wohl anstellen konnten zum Thema Medizintechnik. So entstanden relativ schnell einige Ideen. Wir haben uns schlussendlich dafür entschieden ein Dosiergerät für eine medizinische Spritze zu machen. Dieses sollte so funktionieren, dass wir eine Spritze in eine Vorrichtung legen und über einen DC-Motor zum Einfahren bzw. Ausfahren bringen. Dazu muss die Drehbewegung des Motors in eine Lineare Bewegung umgeleitet werden. Zudem muss ggf. auch die Drehzahl des Motors durch ein Potentiometer reguliert werden können um einen zu schnellen Aus- oder Einfahrvorgang zu verhindern. Soviel zu zu den technischen Überlegungen. <br />
<br />
Sofort nach dem Entscheid suchten wir nach einem geeigneten Motor. Dieser sollte dabei eine eher tiefe Drehzahl haben damit die Spritze nur langsam ein- und ausfährt. Zudem suchten wir im Internet nach einem geeigneten Mechanismus der die Drehbewegung in eine lineare Bewegung umwandelt. Denn wir hatten leider zu wenig zeit um alles selber zu entwerfen und zu konstruieren. So wurden wir auf auf der Hompage von [https://www.thingiverse.com/thing:2797132/ Thingiverse] schliesslich fündig. Also konnte wir die Folgenden Komponenten herunterladen und mit dem 3D-Drucker ausdrucken.<br />
<br />
Komponenten: <gallery><br />
File:Halteplatte.PNG | Halteplatte<br />
File:Zahnrad.PNG | Zahnradpaar<br />
File:Zahnradpaar.PNG | Zahnstange<br />
File:Zahnstange.PNG | Zahnrad<br />
</gallery><br />
<br />
Da wir einen anderen Motor verwendeten als für diesen Mechanismus vorgesehen wäre, mussten wir noch eine passende Adapterplatte konstruieren, damit der Motor auch auf die Vorrichtung passt.<br />
<br />
<gallery><br />
File:Adapterplatte.PNG | Adapterplatte<br />
File:Motor.PNG | Motor<br />
File:Motor_mit_Adapter.jpg | Motor mit Adapter<br />
</gallery><br />
<br />
Der Motor benötigt, wie auch der Ventilator von Hack 1, eine Spannung von 12V für den Betrieb. Also mussten wir erneut das 12V Netzgerät verwenden. Damit unser zweiter Prototyp auch die gewünschte Fördermenge fördern kann, muss die Zeitdauer, in welcher gefördert werden soll, definiert werden. Das dazugehörige Programm wird mit einem Arduino UNO implementiert. Der Zugehörige Code haben wir durch Recherche im Internet und durch persönliches erweitern und anpassen erstellt. Die Drehzahl des Motors darf nicht zu hoch sein damit man die Fördermenge auch sinnvoll einstellen kann. Für diese Anwendung wird ein Potentiometer zwischen Relais und Motor gehängt. So kann die Motorspannung reguliert und die Drehzahl anforderungsgemäss eingestellt werden. Nachfolgend wird der Prozessablauf kurz beschrieben.<br />
<br />
Mit einem Knopfdruck wird wird ein Relais geschalten und der Motor wird angesteuert. Die Drehzahl des Motors wird über ein Getriebe reduziert. Die Zahnräder greifen auf eine Zahnstange und wandeln die Drehbewegung in eine lineare Bewegung um. An der Zahnstange wird der Stössel der Spritze befestigt. Der Rest der Spritze wird mit einem Kabelbinder fest mit der Bodenplatte verbunden damit sich dieser Teil nicht bewegen kann. Die programmierte Zeitdauer bestimmt welche Menge an Flüssigkeit gefördert werden soll.<br />
<br />
[[File:Pumpe.PNG|500px|thumb|none|Aufbau der Spritzenpumpe]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/PLG_S3GtVI8<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
=== Reflexion ===<br />
<br />
Anders als beim Hack 1 kamen waren wir uns bei diesem Hack sehr schnell einig was genau wir bauen möchten. Die ganze Ideenfindung erledigte sich sehr schnell und wir konnten nach bereits wenigen Stunden mit dem programmieren des Arduinos beginnen. Wie wir bereits im Hack 1 erfahren durften, ist das bei dem gedrängten Zeitplan dieser Woche ein grosser Vorteil. Rückblickend können wir urteilen, dass der Hack 2 aus unserer Sicht ein erfreuendes Erfolgserlebnis war. Unser zweiter Prototyp funktioniert genau so wie wir uns das von Beginn an vorgestellt haben. Per Knopfdruck fördert unser Prototyp eine gewisse Menge an Flüssigkeit.<br />
<br />
=== Code ===<br />
<br />
<pre><br />
<br />
bool geschaltet = false;<br />
int RelaisPin = 10; <br />
int tasterPin = 2;<br />
int empfindlichkeit = 200;<br />
<br />
void setup() {<br />
<br />
pinMode( tasterPin, INPUT_PULLUP);<br />
pinMode( RelaisPin, OUTPUT);<br />
<br />
}<br />
<br />
void loop() {<br />
<br />
if (digitalRead(tasterPin) == LOW) <br />
{<br />
if (geschaltet == false) {<br />
geschaltet = true;<br />
}<br />
else {<br />
geschaltet = false;<br />
}<br />
}<br />
<br />
if (geschaltet == true) {<br />
digitalWrite(RelaisPin, HIGH);<br />
delay(1000);<br />
geschaltet = false; <br />
}<br />
<br />
if (geschaltet == false) {<br />
digitalWrite(RelaisPin, LOW);<br />
}<br />
<br />
delay(empfindlichkeit);<br />
}<br />
</pre><br />
<br />
== Hack 3: Zinnguss==<br />
<br />
= Skill-Share-Session =<br />
<br />
== Grundlagen der Arduinoprogrammierung ==<br />
<br />
Dieser Kurs wurde von unserer Gruppe angeboten und soll den Teilnehmern die Grundlage der Programierung eines Arduino UNO beibringen. Folgend werden die grundlegenden Befehle und deren Syntax vorgestellt. Der Aufbau folgt dem YouTube Tutorial von Max. Hier gelangst du zu dem Link: [https://www.youtube.com/watch?v=eaFvQG8wrGw&list=PLAB63281B90FB376E&index=3]<br />
<br />
=== Skript ===<br />
Der Code wird in einem Skript geschrieben. Dieses ist in zwei Bereiche aufgeteilt<br />
* Void setup() Dieses Skript wird einmalig ausgeführt und enthält zB. Input und output<br />
* Void loop() Dieser Teil des Skripts wird als Dauerschleife wiederholt<br />
<br />
==== Befehlseingabe ====<br />
<br />
Die Befehle werden nach folgender Syntax eingegeben:<br />
<br />
* Funktion(Parameter1, Parameter2);<br />
<br />
Dabei muss das «;» gesetzte werden, ausserdem spielen Gross- und Kleinbuchstaben eine Rolle.<br />
<br />
=== Variablen ===<br />
Übersichtshalber sollen sprechende Namen für die Bezeichnung von z.B. Outputs verwendet werden. Dabei können verschiedene Datentypen ausgewählt werden.<br />
<br />
==== Datentyp ====<br />
* int Ganze Zahlen von -32768 … 32767 z.B. 1, 48, -654<br />
* boolean Entweder true oder false<br />
* byte 8 Bit an Informationen z.B. 00010101 (=21)<br />
* char enthält 1 Byte Informationen, das ein Zeichen darstellt z.B. 65 = A<br />
* long grosse Zahlen von ca. -2.1 Milliarden bis 2.1 Milliarden z.B. 15636451<br />
* float Komazahlen z.B. 5.498<br />
* string Zeichenketten z.B. «Do it yourself»<br />
<br />
==== Deklaration Syntax ====<br />
<br />
* Datentyp Name = Wert;<br />
<br />
oder<br />
<br />
* Datentyp Name;<br />
* Name = Wert;<br />
<br />
====Ort der Deklaration====<br />
<br />
Die Variable muss immer im Teil des Skriptes deklariert sein, wo sie auch gebraucht wird. Wird die Variable im setup wie auch im loop benötigt, so kann man die Variable als sogenannte globale Variable oberhalb des Setups deklarieren.<br />
<br />
===If-Schleife===<br />
<br />
Bei der If-Schleife wird der Wert einer Variablen mit einem Vergleichswert verglichen. Falls der Vergleich positiv ist, wird der Code ausgeführt, ansonsten übersprungen. Dazu sind Vergleichsoperatoren notwendig.<br />
<br />
====Syntax====<br />
<br />
if(Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
====Vergleichsoperatoren====<br />
<br />
* == gleich<br />
* != ungleich<br />
* < kleiner<br />
* < grösser<br />
* <= kleiner gleich<br />
* >= grösser gleich<br />
<br />
===While-Schleife===<br />
<br />
Mit der While-Schleife wird die Bedingung fortlaufend geprüft. Stimmt diese, wird der Code ausgeführt, ansonsten wird der Code übersprungen. Es können die selben Vergleichsoperatoren wie bei der If-Schleife verwendet werden.<br />
<br />
====Syntax====<br />
<br />
while (Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
==Bildgebende Verfahren==<br />
<br />
Der Tag begann mit einer Einführung in die Bildgebenden Verfahren durch David Stadelmann. Hierbei erklärte er uns, verschiedene Methoden, um Bilder aus dem Körperinneren zu machen und welche Methode für die verschiedenen Gewebetypen gebraucht werden. Zudem Zeigte und erklärte er uns anhand von Beispielen was die Einzelnen Schattierungen aussagen könnten.<br />
<br />
[[DIY-MedTech Bildgebende Verfahren-Unterschiedliche Bildeindrücke - Team Frosch]]<br />
<br />
==Synths & Sound ==<br />
<br />
Danach ging es weiter mit dem Kurs Synths & Sounds. Diese Session wurde von [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] durchgeführt. Hierbei zeigte er uns, wie man mit verschieden erzeugten Schwingungen eine grosse Variation von Tönen generiert kann. Zudem auch wie man elektronisch gewisse Instrumente Simulieren könnte und durch die Aneinanderreihung verschiedenster Tonvariationen eine Melodie enstehen kann. Dies mit unterschiedlich Variationen von selbstgebauten Synthesizers.<br />
<br />
<gallery><br />
File:Sinthesizer1.jpg | Synthesizer 1<br />
File:Synthesizer2.jpg | Synthesizer 2<br />
</gallery><br />
<br />
== Schweissen ==<br />
<br />
Bei dem Skill-Share Workshop von [https://www.hackteria.org/wiki/Team_G2020/ Team G2020] konnten wir verschiedene Schweissverfahren kennenlernen und auch gleich anwenden.<br />
<br />
Es wurde uns das [https://de.wikipedia.org/wiki/Lichtbogenhandschwei%C3%9Fen/ Elektrodenschweissen], das [https://de.wikipedia.org/wiki/Schutzgasschwei%C3%9Fen/ MIG-Schweissen] und das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] nähergebracht.<br />
<br />
Dieser Workshop war für uns alle sehr interessant, da sich bisher noch keiner von uns so wirklich mit dem Schweissen und den verschiedenen Verfahren auskannte. An diesem Tag konnten wir nach einer kurzen Theorie gleich sofort selber handanlegen und die verschiedenen Schweissverfahren ausprobieren.<br />
<br />
Dabei mussten wir feststellen, dass es gar nicht so einfach ist wie es immer aussieht. Besonders das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] braucht sehr viel Übung und Geschick um wirklich schöne Schweissergebnisse zu erzielen.<br />
<br />
== Autonomes Nervensystem und das Hören in der Medizin ==<br />
<br />
Der Assistent Dr. Christian Gehringer, MSc. (ETH) hielt uns einen sehr interessanten Vortrag. Dabei ging es darum, dass wir die Anatomie kennenlernen und erkunden am Beispiel des Hörens z.B mit einem Stethoskop.<br />
<br />
[https://www.hackteria.org/wiki/Autonomes_Nervensystem_und_das_H%C3%B6ren_in_der_Medizin/ Autonomes Nervensystem und das Hören in der Medizin]</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=MedTechDIY20_Die_Profis&diff=41619MedTechDIY20 Die Profis2020-02-09T11:20:56Z<p>Tnroth: </p>
<hr />
<div>Hier gehts zurück auf: [[Medizintechnik DIY]]<br />
<br />
[[File:DieProfis.png|700px|right|none|Wochenplan]]<br />
<br />
= Team =<br />
<br />
'''Die Profis''' besteht aus den drei Studierenden '''Daniel Glur''', '''Lukas Roth''' und '''Daniel Zellweger''' der Hochschule Luzern. Im Rahmen der Blockwoche "DIY Medizintechnik" formierte sich das Team aus verschiedenen Studiengängen um auch interdisziplinär voneinander zu lernen und Wissen auszutauschen.<br />
<br />
'''Mitglieder:'''<br />
<br />
Maschinentechnik: <gallery><br />
File:DanielGlur.jpg | Daniel Glur<br />
File:LukasRoth.jpg | Lukas Roth<br />
</gallery><br />
<br />
Medizintechnik: <gallery><br />
File:DanielZellweger.jpg | Daniel Zellweger<br />
</gallery><br />
<br />
= Pflichtlektüre =<br />
<br />
'''How to control someone else's arm with your brain | Greg Gage'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/rSQNi5sAwuc<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
In Diesem Video wird gezeigt wie man über die Aufnahme eines Biologischen Signals, dieses an eine zweite Person weitergeleitet werden kann.<br />
Dies funktioniert jedoch nur aus verschiedenen Gründen bedingt. Nebst den allgemeinen Störeinflüsse aus der Messtechnik, kommen zusätzlich noch jene der Ansteuerung. Da das Signal nur von einzelnen Muskelfasern abgefangen wird, kann dieses nicht sämtliche Muskelfasern der zweiten Person Reizen. Dies hat zur folge, dass nur eine annähernd ähnliche Bewegung des Armes arfolgt.<br />
<br />
<br />
'''What is Open Source explained in LEGO'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/a8fHgx9mE5U<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Durch die Verwendung der Open Source Methode erhält man die Möglichkeit während des Projektes noch Erweiterungen oder Veränderungen anzustreben.<br />
<br />
'''"Why toys make good medical devices | Jose Gomez-Marquez'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/UHCT9SOBHs0<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Nebst dem Preis besitzen Spielzeuge diverse spezifische Funktionen. Da diese meist günstige Anschaffung auch einfach verändert werden kann, sind sie sehr geeignet dafür umgebaut zu werden. Somit sind Spielzeuge welche chemische oder sensorische Funktionen besitzen ein gefundenes fressen für den Hacker und eine Alternative für Regionen in welchen die finanzielle Situation teure Medizinprodukte nicht erlauben.<br />
<br />
= Einleitung =<br />
Die Blockwoche "DIY Medizintechnik" verbindet Anwendungen der Medizintechnik mit Do It Yourself (DIY) Ansätzen. Dadurch wird das tiefere Verständnis von Medizintechnischen Geräten durch einen direkten, interdisziplinären und möglichst selbstgesteuerten Zugang gefördert. Basierend auf verschiedenen elektrophysiologischen Messmodulen (EMG, EKG, EOG, EEG) entwickeln die Studierenden im Team Ideen für innovative Projekte. Erste Prototypen werden mit den Mitteln der Digitalen Fabrikation hergestellt und getestet. Tag für Tag stehen produktive "Hacks" auf dem Programm. Hacks sind sehr praxisbezogene Arbeitssequenzen wo die Studierenden Experimente durchführen sowie Prototypen entwickeln und bauen können. Dabei ist aber nicht nur die Medizintechnik zentral sondern auch der Interdisziplinäre Austausch sowie eine Skill-Share-Session wo die Studierenden ganz nach dem do it yourself Gedanken einen eigenen Workshop leiten können.<br />
Alle Erkenntnisse und Erfahrungen werden laufend in einem eigenen Wiki-Eintrag festgehalten und dokumentiert.<br />
<br />
Die Blockwoche wird von den beiden Dozenten [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] und [https://www.hackteria.org/wiki/Gaudi/ Urs Gaudenz] duchgeführt. Unterstützt wurden die Beiden von '''Dr. Christian Gehringer, MSc. (ETH)''' und [http://chrisobrist.ch/about// Chris Obrist]<br />
<br />
Maschinentechnik: <gallery><br />
File:MarkDusseiller.jpg | Dr. Marc R. Dusseiller<br />
File:UrsGaudenz.jpg | Urs Gaudenz<br />
</gallery><br />
<br />
= Planung =<br />
<br />
Die Blockwoche wird wie in folgendem Wochenplan unterteilt:<br />
<br />
[[File:Wochenplan2020.jpg|700px|thumb|none|Wochenplan]]<br />
<br />
= Wochenrückblick =<br />
== Die Woche in Bilder==<br />
[[File:ProfisInAction.PNG|400px]]<br />
[[File:Komponente.PNG|300px]]<br />
[[File:Aufbau.PNG|400px]]<br />
[[File:Motor_mit_Adapter.jpg|300px]]<br />
[[File:Pumpe.PNG|350px]]<br />
[[File:pulsmessung.jpg|450px]]<br />
[[File:Zusammenbau2.jpg|300px]]<br />
[[File:Foto 07.02.20, 11 14 53.jpg|300px]]<br />
[[File:DanielZellweger.jpg|300px]]<br />
<br />
== Tag 1==<br />
'''Einführung'''<br />
<br />
Wir traffen uns zu beginn im FABLAB, wo sich die Dozenten vorstellten und uns über Ihren bisherigen Werdegang informierten. Das interessante an der beruflichen Laufbahn der beiden ist, dass beide ein Studium abgeschlossen haben und heute einer Tätigkeit nachgehen, welche eigentlich nicht mehr viel mit dem damaligen Studium zu tun hat. Das vermittelt unserer Meinung nach, den Studenten eine etwas andere Sichtweise als die technische Hochschule. Es zeigt z.B. dass man nach einem Studium nicht gezwungen ist auf diesem Fachgebiet zu arbeiten sondern dass der Arbeitsmarkt noch sehr viele andere Möglichkeiten zu bieten hat.<br />
<br />
Nachdem sie sich Vorgestellt haben, stellten sie uns auch noch den Assistent vor. Dieser ist ein ausgebildeter Arzt welcher sich momentan für seinen zweiten Doktortitel engagiert. Von Ihm und seinem grossen medizinischen Fachwissen können wir als Studenten die ganze Woche profitieren.<br />
<br />
Danach überliessen die Dozenten uns Studenten das Wort. Es war eine etwas andere Vorstellungsrunde wie man sie noch nicht kannte. Dazu stand uns ein ganzer Tisch mit kuriosen Gegenständen, welche etwas mit dem DIY Gedanke zu tun haben, zur verfügung. Sie vorderten uns alle auf einen Gegenstand auszuwählen. Danach mussten wir uns Vorstellen und noch ein paar Worte dazu verlieren welche Gemeinsamkeiten wir mit dem ausgesuchten Gegenstand teilen.<br />
<br />
'''DIY (Do It Yourself)'''<br />
<br />
Das DIY Prinzip basiert auf eigenem experimentieren und learning by doing<br />
<br />
{{#widget:Iframe<br />
|url= https://www.youtube.com/watch?v=3zH_J12G9sQ<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
<br />
'''How to use Wiki'''<br />
<br />
Durch die 45 minütige Einführung in die Handhabung das Wiki durch Dr. Marc R. Dusseiller waren wir bereit unsere Erkenntnisse und Projekte, welche wir in dieser Woche erfahren und durchführen werden, in einer Zugänglichen Form, niederzuschreiben.<br />
<br />
== Tag 2 ==<br />
Am zweiten Tag begannen wir die Vorbereitung Skill-Share-Session. Diesbezüglich sollte jeder Teilnehmer einen Skill, welcher er erlernen möchte und einen Skill, den man beibringen könnte notieren. Diese wurden dann auf einer Tafel in Cluster aufgeteilt. Zwölf davon wurden als Skill-Share Workshops ausgewählt und die Teilnehmer konnten sich nach Belieben einschreiben.<br />
<br />
[[File:SkillSession2020.jpg|500px|thumb|none|Skill-share-session]]<br />
<br />
Während des zweiten Teils arbeiteten wir an unserem Experiment weiter, welches wir am Vortag begonnen haben.<br />
Dazu mussten wir die elektronischen Bauteile mit unserem Laptop verbinden und einen vorgefertigten Sketch laufen lassen.<br />
<br />
Nachdem wir den ersten Versuch erfolgreich durchführen konnten, versuchten wir mit dem Arduino einen Stepmotor anzusteuern. Dabei stiessen wir jedoch auf einige Schwierigkeiten. Da wir diese bis zur Einführung des Lasercutters und des 3D-Druckers fertig haben sollten. Siehe [[#Hack 0]]<br />
<br />
Unteranderem wurde unsere Skill-Share-Session über Arduino vorbereitet.<br />
<br />
Am Abend kam [http://chrisobrist.ch/about// Chris Obrist] zu Besuch und unterhielt uns mit einer wundervollen musikalischen Darbietung.<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/Hj1Ogr8137o<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
== Tag 3 ==<br />
Von 9:00 Uhr bis nach dem Mittag um 14:00 Uhr waren wir alle mit der [[#Skill-Share-Session]] beschäftigt.<br />
<br />
Danach hatten wir Zeit um den nächsten Hack vorzubereiten und zu planen.<br />
<br />
== Tag 4 ==<br />
Den Vormittag verbrachten wir weiter mit dem Hack 1, welchen wir dann vor der Mittagspause den Dozenten und allen Mitstudierenden präsentieren durften. Leider litten wir während des ganzen Hack 1 sehr unter Zeitdruck, was auf eine turbulente Projektphase zurückzuführen ist. Mehr dazu erfährst du im [[#Hack 1]].<br />
<br />
Nach einer kurzen Inspirationphase entschieden wir uns dafür eine kleine Spritzenpumpe zu basteln. [[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 5 ==<br />
Am Tag 5 ging es darum die Einzelteile physikalisch sowie über ein Funktionierendes Arduinoprogamm zum laufen zu bringen.<br />
[[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 6 ==<br />
<br />
= Experimente =<br />
Bei den Experimenten sollte es darum gehen aus unterschiedlichsten Einzelteilen ein Produkt zu erschaffen. Dieser Prozess brachte uns dazu über die Grenzen unseres altäglichem Denken zu springen und in der Verbindung der einzelnen Bereiche solcher Produkte besser zu verstehen.<br />
<br />
== Hack 0 ==<br />
<br />
<br />
===Versuchsaufbau 1===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 1===<br />
Nach den Inputs der Dozenten verbrachten wir hauptsächlich die Zeit damit den Muscle Spiker Shield nach der Anleitung mit den dazugehörigen Teilen zusammenzulöten.[https://backyardbrains.com/products/files/MuscleSpikerShield.v.2.11.BuildingInstructions.pdf]V2.11<br />
Nebenbei machten wir unsere ersten Schritte in Arduino.<br />
Als wir unsere mechatronischen Komponenten zusammengestellt und ein Grundverständnis von Arduino angeeignet haben, verbanden wir dies in einem Experiment. <br />
Das Experiment welches wir durchführten nennt man Control Machines with your Brain und ist auf der Seite von [https://backyardbrains.com/experiments/muscleSpikerShield/ Backyard Brains] nachzusehen.<br />
<br />
Für den Versuch wurden Elektroden an den Testpersonen angeschlossen und über den Arduino ausgelesen.<br />
Der Versuch wurde mit zwei Testpersonen durchgeführt. Dabei fiel uns nebst der Kontrolle der LED's auch auf, dass der Puls gemessen wurde. Dies unabhängig von der Position der Elektroden. Vermutlich reagieren die Elektroden zu sensitiv für diese Anwendung.<br />
<br />
<br />
[[File:UeberblickVersuchTeamD.jpg|400px|thumb|none|Versuchsaufbau]]<br />
[[File:Versuchsaufbau1TeamD.jpg|400px|thumb|none|Elektrodenbefestigung]]<br />
[[File:MessungDanielGlur.jpg|400px|thumb|none|Messung von Daniels Puls]]<br />
<br />
===Versuchsaufbau 2===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 2===<br />
<br />
Als zweites Experiment versuchten wir durch das anspannen der Muskeln einen Servomotor anzusteuern. Wie es auch auf der Homepage von [https://backyardbrains.com/experiments/MuscleSpikerShield_GripperHand/ Backyard Brains] anzutreffen ist. Dieser Versuch konnte aber leider aus Zeitgründen nicht zu Ende geführt werden. Wir konnten lediglich das Arduinoprogramm laden und etwas anpassen.<br />
<br />
===Reflexion===<br />
<br />
Der Hack 0 war in der Hinsicht sehr interessant, da wir alle unsere ersten Erfahrungen mit einem Arduino machen konnten. Einige von unserem Team hatten bisher auch noch nie auf einer Printplatte irgendwelche Widerstände oder Schalter etc. gelötet. Ebenso war es erstaunlich, dass man mit so wenig so viel verschiedene Sachen machen kann. Keiner von uns hat gedacht dass wir bereits am ersten Tag irgend etwas mit unseren Muskeln kontrollieren könnten. Insgesamt kam der Hack 0 gut bei uns an und wir alle konnten einiges davon profitieren und hoffentlich auch den weiteren Hacks weiterverwenden.<br />
<br />
== Hack 1: Baseball-Cap mit Ventilator ==<br />
<br />
Der Hack 1 beschreibt die Konzept- und Testphase des ersten Prototyps.<br />
<br />
Zu Beginn waren wir uns sehr unschlüssig was wir wirklich bauen wollen. Also entschieden wir uns für ein weiteres Experiment mit einem Bausatz von Backyard Brains. Wir versuchten durch die Funktion des Heart and Brain Spiker Shield einen Ventilator anzusteuern. Der Gedanke, welcher uns auf diese Idee führte, kennt wohl jeder Student. Während einer Prüfung kommt so mancher ins Grübeln und in harten Fällen kommt es auch vor dass einem eine Schweissperle von der Stirn läuft. Um in solchen Fällen für die nötige Kühlung zu sorgen, sollen Sensoren die Hirnströme gemessen und als Signal wiedergeben werden um damit einen Ventilator anzuschalten.<br />
<br />
Zu unserem eigenen Erstaunen erhielten wir sogar ein Signal aus unserer Messung. Es stellte sich aber sehr bald heraus, dass das wohl nicht die Hirnströme waren sondern eher Bewegungen des Kopfs und der Kabel. Denn die Sensoren sind recht empfindlich gegen solche Einflüsse. Zudem kam noch, dass die Sensoren über den Haaren angebracht wurden, was das Signal der Hirnströme noch zusätzlich verschlechterte. Nach einigen Versuchen sahen wir ein, dass das wohl eine zu grosse Herausforderung war und wir uns besser an einen einfacheren Versuch versuchen sollten.<br />
<br />
[[File:heart_and_brain.jpg|300px|thumb|none|Signal aus Messung der "Hirnströme"]]<br />
[[File:EEGDanielGlur.jpg|500px|thumb|none|Daniel beim messen der "Hirnströme"]]<br />
<br />
Also beschlossen wir uns anstelle der Hirnströme den Puls zu messen. Denn während einer Prüfung kann es durchaus auch vorkommen, dass der Puls etwas ansteigt. Die Messungen sollten dann ausgelesen werden und wenn der Puls eine gewisse Frequenz übersteigt, schaltet ein Ventilator ein um den Studenten wieder etwas zu beruhigen.<br />
<br />
Für diesen Versuch platzierten wir Sensoren am Unterarm und an der Handoberfläche. Idealerweise sollten laut Assistent Christian die Sensoren aber so weit wie möglich voneinander entfernt, an einer anderen Körperstelle angebracht werden um eine gewisse Referenz zu haben und um sicherzustellen, dass man wirklich den Puls misst. Unsere Kabel waren aber leider etwas zu kurz. Wir erhielten trotzdem ein relativ gutes Signal von welchem man davon ausgehen konnte, dass es sich um den Puls handelte. Jetzt nur noch das Signal auswerten, einen Frequenzbegrenzer programmieren und mithilfe von einem Arduino UNO den Ventilator ansteuern... Dachten wir... Dies war allerdings etwas Schwieriger als erwartet und überstieg unsere Kompetenzen. Das führte uns dazu auch diesen Versuch an dieser Stelle abzubrechen und nochmal zu überdenken.<br />
<br />
<br />
[[File:puls.png|400px|thumb|none|Pulssignal]]<br />
[[File:pulsmessung.jpg|400px|thumb|none|Pulssmessung]]<br />
<br />
<br />
Nun rannte uns schon langsam die Zeit davon. Doch dann kam uns die Idee, welche wir schon zu Beginn benötigt hätten. Und zwar wollten wir einen Ventilator auf einem Baseball-Cap anbringen und diesen ansteuern wenn ein gewisses Temperaturniveau unter dem Cap überschritten wird wird. Dazu wird ein 12V Ventilator via Relais von dem Arduino angesteuert. Weil der Arduino nur eine Spannung von 5V liefert, musste ein 12V Netzgerät den Ventilator mit Strom versorgen. Damit man den Ventilator so schalten konnte, damit er den Strom über das 12V Netzgerät bezieht, mussten wir noch ein Relais einbauen. Den Code für den Arduino bezogen wir aus verschiedenen ähnlichen Projekten aus dem Internet und passten ihn spezifisch für unsere Anwendung an. Für das auslesen der Temperatur mussten wir zuerst zwei Libreries herunterladen (DallasTemperature und OneWire).<br />
<br />
[[File:Komponente.PNG|400px|thumb|none|Verbaute Komponenten]]<br />
<br />
Nun mussten wir noch den Ventilator am Baseball-Cap anbringen. Dafür wurde eine Halterung im CAD konstruiert und mit einem 3D-Drucker ausgedruckt. Die Teile wurden danach zusammengesteckt und mit dem Baseball-Cap verschraubt. Natürlich wurde zuvor ein Loch in das Cap geschnitten, damit der Ventilator auch seinen Zweck erfüllen kann und dem Studenten einen kühlen Kopf verschafft.<br />
<br />
[[File:Aufbau.PNG|350px|thumb|none|3D-Modell im CAD]]<br />
<br />
[[File:Zusammenbau1.jpg|350px]]<br />
[[File:Zusammenbau2.jpg|350px]]<br />
<br />
Nun wurde unser Prototyp getestet. Der Sensor erfüllte seinen Dienst und wir konnten erfolgreich die Temperaturen messen. Jedoch war das Relais während dem Testen ständig eingeschalten und der Ventilator lief die ganze Zeit auch wenn die Temperatur den Minimalwert unterschritten hatte. Es hat sich also irgendwo in unserem Programm einen Fehler eingeschlichen. Den galt es nun zu finden und zu beheben. Dazu bauten wir einen Druckknopf ein um zu überprüfen ob das Relais defekt war und um die Fehlerquellen etwas einzugrenzen.<br />
<br />
[[File:Temperatur.jpg|350px]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/TQnGa5WiGS4<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
Der Druckknopf funktionierte, das Relais schaltete perfekt ein und aus und der Ventilator wurde an- und abgestellt. Somit wissen wir nun wo der Fehler zu suchen ist und können versuchen das Programm an diesen Stellen zu bereinigen. Nur ist jetzt schon Donnerstag Nachmittag und der Hack 2 hat schon begonnen. Wir alle wurden aufgefordert unseren bisherigen Prototypen aufzugeben und etwas neues, anderes zu versuchen und zu testen. Also legen wir schweren Herzens unser erster Prototyp beiseite und widmen unsere Kreativität dem nächsten Hack.<br />
<br />
=== Reflexion ===<br />
Der Hack 1 hat uns gezeigt, dass es gar nicht so einfach ist beim ersten Versuch ein brauchbares Resultat zu erzielen. Jedoch konnten wir so aus zwei vorhergehenden, fehlgeschlagenen Ansätzen eine Idee weiterentwickeln. Somit konnten wir mit unseren Kompetenzen und den Erfahrungen aus dem Hack 0 ein zufriedenstellendes Resultat erzielen. Durch die zwei Versuche zuvor ging leider recht viel Zeit "verloren", welche wir sehr benötigt hätten um unser erster Prototyp fehlerfrei hinzukriegen. Es war uns auch eine Lehre, dass man nicht zu lange an einer Sache verharren sollte wenn einem nur wenig Zeit zur Verfügung steht. Manchmal ist es besser man wirft alles nochmal über den Haufen und beginnt von vorne. Trotz allen Strapazen während des Hack 1 sind wir mit unserem ersten Prototyp sehr zufrieden und konnten auch bei diesem Versuch wieder viel profitieren und mitnehmen. Nun blicken wir gespannt nach vorne auf den nächsten Hack.<br />
<br />
<br />
===Code===<br />
<br />
Wir konnten zwar die Temperatur herauslesen und das Relais über einen Butten steuern, jedoch die Steuerung anhand der Temperatur geling uns nicht.<br />
<br />
<pre><br />
/********************************************************************/<br />
// First we include the libraries<br />
#include <OneWire.h> <br />
#include <DallasTemperature.h><br />
/********************************************************************/<br />
// Data wire is plugged into pin 2 on the Arduino <br />
#define ONE_WIRE_BUS 2 <br />
<br />
float tempReading;<br />
/********************************************************************/<br />
// Setup a oneWire instance to communicate with any OneWire devices <br />
// (not just Maxim/Dallas temperature ICs) <br />
OneWire oneWire(ONE_WIRE_BUS); <br />
/********************************************************************/<br />
// Pass our oneWire reference to Dallas Temperature. <br />
DallasTemperature sensors(&oneWire);<br />
/********************************************************************/ <br />
int relayPin = 4; // Relay Singnal lead to Digital Pin [D2-D12]<br />
<br />
float maxTemperature = 30.00; // The Max Temperature allowed<br />
float minTemperature = 25.00; // The Min Temperature allowed<br />
<br />
// constants won't change. They're used here to set pin numbers:<br />
const int buttonPin = 8; // the number of the pushbutton pin<br />
const int ledPin = 4; // the number of the LED pin<br />
<br />
// variables will change:<br />
int buttonState = 0; // variable for reading the pushbutton status<br />
<br />
void setup(void) {<br />
// initialize the LED pin as an output:<br />
pinMode(ledPin, OUTPUT);<br />
// initialize the pushbutton pin as an input:<br />
pinMode(buttonPin, INPUT);<br />
<br />
Serial.begin(9600); <br />
Serial.println("Dallas Temperature IC Control Library Demo"); <br />
// Start up the library <br />
sensors.begin(); <br />
}<br />
<br />
void loop(void) <br />
{ <br />
// call sensors.requestTemperatures() to issue a global temperature <br />
// request to all devices on the bus <br />
/********************************************************************/<br />
Serial.print(" Requesting temperatures..."); <br />
sensors.requestTemperatures(); // Send the command to get temperature readings <br />
Serial.println("DONE"); <br />
/********************************************************************/<br />
Serial.print("Temperature is: "); <br />
Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"? <br />
// You can have more than one DS18B20 on the same bus. <br />
// 0 refers to the first IC on the wire <br />
delay(1000); // Check Temperature every second<br />
<br />
float temperature = getTemperature();<br />
if(temperature >= maxTemperature){<br />
powerOnRelay();<br />
} else if (temperature <= minTemperature) {<br />
powerOffRelay();<br />
}<br />
delay(1000); // Check tempertature every second<br />
<br />
} <br />
void powerOnRelay() {<br />
digitalWrite(relayPin, HIGH);<br />
Serial.println("Relay On");<br />
}<br />
<br />
void powerOffRelay() {<br />
digitalWrite(relayPin, LOW);<br />
Serial.println("Relay Off");<br />
}<br />
float getTemperature(){<br />
tempReading = digitalRead(ONE_WIRE_BUS);<br />
<br />
// read the state of the pushbutton value:<br />
buttonState = digitalRead(buttonPin);<br />
<br />
// check if the pushbutton is pressed. If it is, the buttonState is HIGH:<br />
if (buttonState == HIGH) {<br />
// turn LED on:<br />
digitalWrite(ledPin, HIGH);<br />
} else {<br />
// turn LED off:<br />
digitalWrite(ledPin, LOW);<br />
}<br />
}<br />
</pre><br />
<br />
== Hack 2: Spritzenpumpe ==<br />
<br />
Nachdem der Hack 1 abgeschlossen war, machten wir uns aufs Neue darüber Gedanken was wir für einen Prototyp für den Hack 2 bauen wollen. Urs hat nach dem Abschluss von Hack 1 gesagt, wir sollten uns ein komplett neues Produkt überlegen, welches möglicherweise auch etwas mit der Medizintechnik zu tun hat. Nach einem Brainstorming kamen wir noch nicht so richtig auf einen grünen Zweig. So kamen wir auf die Idee uns einen Kaffee zu holen und einfach mal durch das FABLAB zu laufen um alles Mögliche anzuschauen, in die Hand zu nehmen und uns von all diesen Gegenständen inspirieren zu lassen. So kamen uns diverse Gegenstände in die Finger. darunter waren Servomotoren sowie einige DC-Motoren, eine Spritze, eine Pumpe, ein Micro-Switch Schalter, ein Potentiometer und vieles mehr. Diese Gegenstände haben wir dann auf unserem Gruppentisch ausgebreitet und uns Gedanken darüber gemacht was wir damit wohl anstellen konnten zum Thema Medizintechnik. So entstanden relativ schnell einige Ideen. Wir haben uns schlussendlich dafür entschieden ein Dosiergerät für eine medizinische Spritze zu machen. Dieses sollte so funktionieren, dass wir eine Spritze in eine Vorrichtung legen und über einen DC-Motor zum Einfahren bzw. Ausfahren bringen. Dazu muss die Drehbewegung des Motors in eine Lineare Bewegung umgeleitet werden. Zudem muss ggf. auch die Drehzahl des Motors durch ein Potentiometer reguliert werden können um einen zu schnellen Aus- oder Einfahrvorgang zu verhindern. Soviel zu zu den technischen Überlegungen. <br />
<br />
Sofort nach dem Entscheid suchten wir nach einem geeigneten Motor. Dieser sollte dabei eine eher tiefe Drehzahl haben damit die Spritze nur langsam ein- und ausfährt. Zudem suchten wir im Internet nach einem geeigneten Mechanismus der die Drehbewegung in eine lineare Bewegung umwandelt. Denn wir hatten leider zu wenig zeit um alles selber zu entwerfen und zu konstruieren. So wurden wir auf auf der Hompage von [https://www.thingiverse.com/thing:2797132/ Thingiverse] schliesslich fündig. Also konnte wir die Folgenden Komponenten herunterladen und mit dem 3D-Drucker ausdrucken.<br />
<br />
Komponenten: <gallery><br />
File:Halteplatte.PNG | Halteplatte<br />
File:Zahnrad.PNG | Zahnradpaar<br />
File:Zahnradpaar.PNG | Zahnstange<br />
File:Zahnstange.PNG | Zahnrad<br />
</gallery><br />
<br />
Da wir einen anderen Motor verwendeten als für diesen Mechanismus vorgesehen wäre, mussten wir noch eine passende Adapterplatte konstruieren, damit der Motor auch auf die Vorrichtung passt.<br />
<br />
<gallery><br />
File:Adapterplatte.PNG | Adapterplatte<br />
File:Motor.PNG | Motor<br />
File:Motor_mit_Adapter.jpg | Motor mit Adapter<br />
</gallery><br />
<br />
Der Motor benötigt, wie auch der Ventilator von Hack 1, eine Spannung von 12V für den Betrieb. Also mussten wir erneut das 12V Netzgerät verwenden. Damit unser zweiter Prototyp auch die gewünschte Fördermenge fördern kann, muss die Zeitdauer, in welcher gefördert werden soll, definiert werden. Das dazugehörige Programm wird mit einem Arduino UNO implementiert. Der Zugehörige Code haben wir durch Recherche im Internet und durch persönliches erweitern und anpassen erstellt. Die Drehzahl des Motors darf nicht zu hoch sein damit man die Fördermenge auch sinnvoll einstellen kann. Für diese Anwendung wird ein Potentiometer zwischen Relais und Motor gehängt. So kann die Motorspannung reguliert und die Drehzahl anforderungsgemäss eingestellt werden. Nachfolgend wird der Prozessablauf kurz beschrieben.<br />
<br />
Mit einem Knopfdruck wird wird ein Relais geschalten und der Motor wird angesteuert. Die Drehzahl des Motors wird über ein Getriebe reduziert. Die Zahnräder greifen auf eine Zahnstange und wandeln die Drehbewegung in eine lineare Bewegung um. An der Zahnstange wird der Stössel der Spritze befestigt. Der Rest der Spritze wird mit einem Kabelbinder fest mit der Bodenplatte verbunden damit sich dieser Teil nicht bewegen kann. Die programmierte Zeitdauer bestimmt welche Menge an Flüssigkeit gefördert werden soll.<br />
<br />
[[File:Pumpe.PNG|500px|thumb|none|Aufbau der Spritzenpumpe]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/PLG_S3GtVI8<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
=== Reflexion ===<br />
<br />
Anders als beim Hack 1 kamen waren wir uns bei diesem Hack sehr schnell einig was genau wir bauen möchten. Die ganze Ideenfindung erledigte sich sehr schnell und wir konnten nach bereits wenigen Stunden mit dem programmieren des Arduinos beginnen. Wie wir bereits im Hack 1 erfahren durften, ist das bei dem gedrängten Zeitplan dieser Woche ein grosser Vorteil. Rückblickend können wir urteilen, dass der Hack 2 aus unserer Sicht ein erfreuendes Erfolgserlebnis war. Unser zweiter Prototyp funktioniert genau so wie wir uns das von Beginn an vorgestellt haben. Per Knopfdruck fördert unser Prototyp eine gewisse Menge an Flüssigkeit.<br />
<br />
=== Code ===<br />
<br />
<pre><br />
<br />
bool geschaltet = false;<br />
int RelaisPin = 10; <br />
int tasterPin = 2;<br />
int empfindlichkeit = 200;<br />
<br />
void setup() {<br />
<br />
pinMode( tasterPin, INPUT_PULLUP);<br />
pinMode( RelaisPin, OUTPUT);<br />
<br />
}<br />
<br />
void loop() {<br />
<br />
if (digitalRead(tasterPin) == LOW) <br />
{<br />
if (geschaltet == false) {<br />
geschaltet = true;<br />
}<br />
else {<br />
geschaltet = false;<br />
}<br />
}<br />
<br />
if (geschaltet == true) {<br />
digitalWrite(RelaisPin, HIGH);<br />
delay(1000);<br />
geschaltet = false; <br />
}<br />
<br />
if (geschaltet == false) {<br />
digitalWrite(RelaisPin, LOW);<br />
}<br />
<br />
delay(empfindlichkeit);<br />
}<br />
</pre><br />
<br />
== Hack 3: Zinnguss==<br />
<br />
= Skill-Share-Session =<br />
<br />
== Grundlagen der Arduinoprogrammierung ==<br />
<br />
Dieser Kurs wurde von unserer Gruppe angeboten und soll den Teilnehmern die Grundlage der Programierung eines Arduino UNO beibringen. Folgend werden die grundlegenden Befehle und deren Syntax vorgestellt. Der Aufbau folgt dem YouTube Tutorial von Max. Hier gelangst du zu dem Link: [https://www.youtube.com/watch?v=eaFvQG8wrGw&list=PLAB63281B90FB376E&index=3]<br />
<br />
=== Skript ===<br />
Der Code wird in einem Skript geschrieben. Dieses ist in zwei Bereiche aufgeteilt<br />
* Void setup() Dieses Skript wird einmalig ausgeführt und enthält zB. Input und output<br />
* Void loop() Dieser Teil des Skripts wird als Dauerschleife wiederholt<br />
<br />
==== Befehlseingabe ====<br />
<br />
Die Befehle werden nach folgender Syntax eingegeben:<br />
<br />
* Funktion(Parameter1, Parameter2);<br />
<br />
Dabei muss das «;» gesetzte werden, ausserdem spielen Gross- und Kleinbuchstaben eine Rolle.<br />
<br />
=== Variablen ===<br />
Übersichtshalber sollen sprechende Namen für die Bezeichnung von z.B. Outputs verwendet werden. Dabei können verschiedene Datentypen ausgewählt werden.<br />
<br />
==== Datentyp ====<br />
* int Ganze Zahlen von -32768 … 32767 z.B. 1, 48, -654<br />
* boolean Entweder true oder false<br />
* byte 8 Bit an Informationen z.B. 00010101 (=21)<br />
* char enthält 1 Byte Informationen, das ein Zeichen darstellt z.B. 65 = A<br />
* long grosse Zahlen von ca. -2.1 Milliarden bis 2.1 Milliarden z.B. 15636451<br />
* float Komazahlen z.B. 5.498<br />
* string Zeichenketten z.B. «Do it yourself»<br />
<br />
==== Deklaration Syntax ====<br />
<br />
* Datentyp Name = Wert;<br />
<br />
oder<br />
<br />
* Datentyp Name;<br />
* Name = Wert;<br />
<br />
====Ort der Deklaration====<br />
<br />
Die Variable muss immer im Teil des Skriptes deklariert sein, wo sie auch gebraucht wird. Wird die Variable im setup wie auch im loop benötigt, so kann man die Variable als sogenannte globale Variable oberhalb des Setups deklarieren.<br />
<br />
===If-Schleife===<br />
<br />
Bei der If-Schleife wird der Wert einer Variablen mit einem Vergleichswert verglichen. Falls der Vergleich positiv ist, wird der Code ausgeführt, ansonsten übersprungen. Dazu sind Vergleichsoperatoren notwendig.<br />
<br />
====Syntax====<br />
<br />
if(Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
====Vergleichsoperatoren====<br />
<br />
* == gleich<br />
* != ungleich<br />
* < kleiner<br />
* < grösser<br />
* <= kleiner gleich<br />
* >= grösser gleich<br />
<br />
===While-Schleife===<br />
<br />
Mit der While-Schleife wird die Bedingung fortlaufend geprüft. Stimmt diese, wird der Code ausgeführt, ansonsten wird der Code übersprungen. Es können die selben Vergleichsoperatoren wie bei der If-Schleife verwendet werden.<br />
<br />
====Syntax====<br />
<br />
while (Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
==Bildgebende Verfahren==<br />
<br />
Der Tag begann mit einer Einführung in die Bildgebenden Verfahren durch David Stadelmann. Hierbei erklärte er uns, verschiedene Methoden, um Bilder aus dem Körperinneren zu machen und welche Methode für die verschiedenen Gewebetypen gebraucht werden. Zudem Zeigte und erklärte er uns anhand von Beispielen was die Einzelnen Schattierungen aussagen könnten.<br />
<br />
[[DIY-MedTech Bildgebende Verfahren-Unterschiedliche Bildeindrücke - Team Frosch]]<br />
<br />
==Synths & Sound ==<br />
<br />
Danach ging es weiter mit dem Kurs Synths & Sounds. Diese Session wurde von [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] durchgeführt. Hierbei zeigte er uns, wie man mit verschieden erzeugten Schwingungen eine grosse Variation von Tönen generiert kann. Zudem auch wie man elektronisch gewisse Instrumente Simulieren könnte und durch die Aneinanderreihung verschiedenster Tonvariationen eine Melodie enstehen kann. Dies mit unterschiedlich Variationen von selbstgebauten Synthesizers.<br />
<br />
<gallery><br />
File:Sinthesizer1.jpg | Synthesizer 1<br />
File:Synthesizer2.jpg | Synthesizer 2<br />
</gallery><br />
<br />
== Schweissen ==<br />
<br />
Bei dem Skill-Share Workshop von [https://www.hackteria.org/wiki/Team_G2020/ Team G2020] konnten wir verschiedene Schweissverfahren kennenlernen und auch gleich anwenden.<br />
<br />
Es wurde uns das [https://de.wikipedia.org/wiki/Lichtbogenhandschwei%C3%9Fen/ Elektrodenschweissen], das [https://de.wikipedia.org/wiki/Schutzgasschwei%C3%9Fen/ MIG-Schweissen] und das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] nähergebracht.<br />
<br />
Dieser Workshop war für uns alle sehr interessant, da sich bisher noch keiner von uns so wirklich mit dem Schweissen und den verschiedenen Verfahren auskannte. An diesem Tag konnten wir nach einer kurzen Theorie gleich sofort selber handanlegen und die verschiedenen Schweissverfahren ausprobieren.<br />
<br />
Dabei mussten wir feststellen, dass es gar nicht so einfach ist wie es immer aussieht. Besonders das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] braucht sehr viel Übung und Geschick um wirklich schöne Schweissergebnisse zu erzielen.<br />
<br />
== Autonomes Nervensystem und das Hören in der Medizin ==<br />
<br />
Der Assistent Dr. Christian Gehringer, MSc. (ETH) hielt uns einen sehr interessanten Vortrag. Dabei ging es darum, dass wir die Anatomie kennenlernen und erkunden am Beispiel des Hörens z.B mit einem Stethoskop.<br />
<br />
[https://www.hackteria.org/wiki/Autonomes_Nervensystem_und_das_H%C3%B6ren_in_der_Medizin/ Autonomes Nervensystem und das Hören in der Medizin]</div>Tnrothhttp://www.hackteria.org/wiki/index.php?title=MedTechDIY20_Die_Profis&diff=41618MedTechDIY20 Die Profis2020-02-09T11:20:26Z<p>Tnroth: </p>
<hr />
<div>Hier gehts zurück auf: [[Medizintechnik DIY]]<br />
<br />
[[File:DieProfis.png|700px|right|none|Wochenplan]]<br />
<br />
= Team =<br />
<br />
'''Die Profis''' besteht aus den drei Studierenden '''Daniel Glur''', '''Lukas Roth''' und '''Daniel Zellweger''' der Hochschule Luzern. Im Rahmen der Blockwoche "DIY Medizintechnik" formierte sich das Team aus verschiedenen Studiengängen um auch interdisziplinär voneinander zu lernen und Wissen auszutauschen.<br />
<br />
'''Mitglieder:'''<br />
<br />
Maschinentechnik: <gallery><br />
File:DanielGlur.jpg | Daniel Glur<br />
File:LukasRoth.jpg | Lukas Roth<br />
</gallery><br />
<br />
Medizintechnik: <gallery><br />
File:DanielZellweger.jpg | Daniel Zellweger<br />
</gallery><br />
<br />
= Pflichtlektüre =<br />
<br />
'''How to control someone else's arm with your brain | Greg Gage'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/rSQNi5sAwuc<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
In Diesem Video wird gezeigt wie man über die Aufnahme eines Biologischen Signals, dieses an eine zweite Person weitergeleitet werden kann.<br />
Dies funktioniert jedoch nur aus verschiedenen Gründen bedingt. Nebst den allgemeinen Störeinflüsse aus der Messtechnik, kommen zusätzlich noch jene der Ansteuerung. Da das Signal nur von einzelnen Muskelfasern abgefangen wird, kann dieses nicht sämtliche Muskelfasern der zweiten Person Reizen. Dies hat zur folge, dass nur eine annähernd ähnliche Bewegung des Armes arfolgt.<br />
<br />
<br />
'''What is Open Source explained in LEGO'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/a8fHgx9mE5U<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Durch die Verwendung der Open Source Methode erhält man die Möglichkeit während des Projektes noch Erweiterungen oder Veränderungen anzustreben.<br />
<br />
'''"Why toys make good medical devices | Jose Gomez-Marquez'''<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/UHCT9SOBHs0<br />
|width=476<br />
|height=357<br />
|border=0<br />
}}<br />
<br />
Nebst dem Preis besitzen Spielzeuge diverse spezifische Funktionen. Da diese meist günstige Anschaffung auch einfach verändert werden kann, sind sie sehr geeignet dafür umgebaut zu werden. Somit sind Spielzeuge welche chemische oder sensorische Funktionen besitzen ein gefundenes fressen für den Hacker und eine Alternative für Regionen in welchen die finanzielle Situation teure Medizinprodukte nicht erlauben.<br />
<br />
= Einleitung =<br />
Die Blockwoche "DIY Medizintechnik" verbindet Anwendungen der Medizintechnik mit Do It Yourself (DIY) Ansätzen. Dadurch wird das tiefere Verständnis von Medizintechnischen Geräten durch einen direkten, interdisziplinären und möglichst selbstgesteuerten Zugang gefördert. Basierend auf verschiedenen elektrophysiologischen Messmodulen (EMG, EKG, EOG, EEG) entwickeln die Studierenden im Team Ideen für innovative Projekte. Erste Prototypen werden mit den Mitteln der Digitalen Fabrikation hergestellt und getestet. Tag für Tag stehen produktive "Hacks" auf dem Programm. Hacks sind sehr praxisbezogene Arbeitssequenzen wo die Studierenden Experimente durchführen sowie Prototypen entwickeln und bauen können. Dabei ist aber nicht nur die Medizintechnik zentral sondern auch der Interdisziplinäre Austausch sowie eine Skill-Share-Session wo die Studierenden ganz nach dem do it yourself Gedanken einen eigenen Workshop leiten können.<br />
Alle Erkenntnisse und Erfahrungen werden laufend in einem eigenen Wiki-Eintrag festgehalten und dokumentiert.<br />
<br />
Die Blockwoche wird von den beiden Dozenten [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] und [https://www.hackteria.org/wiki/Gaudi/ Urs Gaudenz] duchgeführt. Unterstützt wurden die Beiden von '''Dr. Christian Gehringer, MSc. (ETH)''' und [http://chrisobrist.ch/about// Chris Obrist]<br />
<br />
Maschinentechnik: <gallery><br />
File:MarkDusseiller.jpg | Dr. Marc R. Dusseiller<br />
File:UrsGaudenz.jpg | Urs Gaudenz<br />
</gallery><br />
<br />
= Planung =<br />
<br />
Die Blockwoche wird wie in folgendem Wochenplan unterteilt:<br />
<br />
[[File:Wochenplan2020.jpg|700px|thumb|none|Wochenplan]]<br />
<br />
= Wochenrückblick =<br />
== Die Woche in Bilder==<br />
[[File:ProfisInAction.PNG|400px]]<br />
[[File:Komponente.PNG|300px]]<br />
[[File:Aufbau.PNG|400px]]<br />
[[File:Motor_mit_Adapter.jpg|300px]]<br />
[[File:Pumpe.PNG|350px]]<br />
[[File:pulsmessung.jpg|450px]]<br />
[[File:Zusammenbau2.jpg|300px]]<br />
[[File:Foto 07.02.20, 11 14 53.jpg|300px]]<br />
[[File:DanielZellweger.jpg|300px]]<br />
<br />
== Tag 1==<br />
'''Einführung'''<br />
<br />
Wir traffen uns zu beginn im FABLAB, wo sich die Dozenten vorstellten und uns über Ihren bisherigen Werdegang informierten. Das interessante an der beruflichen Laufbahn der beiden ist, dass beide ein Studium abgeschlossen haben und heute einer Tätigkeit nachgehen, welche eigentlich nicht mehr viel mit dem damaligen Studium zu tun hat. Das vermittelt unserer Meinung nach, den Studenten eine etwas andere Sichtweise als die technische Hochschule. Es zeigt z.B. dass man nach einem Studium nicht gezwungen ist auf diesem Fachgebiet zu arbeiten sondern dass der Arbeitsmarkt noch sehr viele andere Möglichkeiten zu bieten hat.<br />
<br />
Nachdem sie sich Vorgestellt haben, stellten sie uns auch noch den Assistent vor. Dieser ist ein ausgebildeter Arzt welcher sich momentan für seinen zweiten Doktortitel engagiert. Von Ihm und seinem grossen medizinischen Fachwissen können wir als Studenten die ganze Woche profitieren.<br />
<br />
Danach überliessen die Dozenten uns Studenten das Wort. Es war eine etwas andere Vorstellungsrunde wie man sie noch nicht kannte. Dazu stand uns ein ganzer Tisch mit kuriosen Gegenständen, welche etwas mit dem DIY Gedanke zu tun haben, zur verfügung. Sie vorderten uns alle auf einen Gegenstand auszuwählen. Danach mussten wir uns Vorstellen und noch ein paar Worte dazu verlieren welche Gemeinsamkeiten wir mit dem ausgesuchten Gegenstand teilen.<br />
<br />
'''DIY (Do It Yourself)'''<br />
<br />
Das DIY Prinzip basiert auf eigenem experimentieren und learning by doing<br />
<br />
{{#widget:Iframe<br />
|url= https://www.youtube.com/watch?v=3zH_J12G9sQ<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
<br />
'''How to use Wiki'''<br />
<br />
Durch die 45 minütige Einführung in die Handhabung das Wiki durch Dr. Marc R. Dusseiller waren wir bereit unsere Erkenntnisse und Projekte, welche wir in dieser Woche erfahren und durchführen werden, in einer Zugänglichen Form, niederzuschreiben.<br />
<br />
== Tag 2 ==<br />
Am zweiten Tag begannen wir die Vorbereitung Skill-Share-Session. Diesbezüglich sollte jeder Teilnehmer einen Skill, welcher er erlernen möchte und einen Skill, den man beibringen könnte notieren. Diese wurden dann auf einer Tafel in Cluster aufgeteilt. Zwölf davon wurden als Skill-Share Workshops ausgewählt und die Teilnehmer konnten sich nach Belieben einschreiben.<br />
<br />
[[File:SkillSession2020.jpg|500px|thumb|none|Skill-share-session]]<br />
<br />
Während des zweiten Teils arbeiteten wir an unserem Experiment weiter, welches wir am Vortag begonnen haben.<br />
Dazu mussten wir die elektronischen Bauteile mit unserem Laptop verbinden und einen vorgefertigten Sketch laufen lassen.<br />
<br />
Nachdem wir den ersten Versuch erfolgreich durchführen konnten, versuchten wir mit dem Arduino einen Stepmotor anzusteuern. Dabei stiessen wir jedoch auf einige Schwierigkeiten. Da wir diese bis zur Einführung des Lasercutters und des 3D-Druckers fertig haben sollten. Siehe [[#Hack 0]]<br />
<br />
Unteranderem wurde unsere Skill-Share-Session über Arduino vorbereitet.<br />
<br />
Am Abend kam [http://chrisobrist.ch/about// Chris Obrist] zu Besuch und unterhielt uns mit einer wundervollen musikalischen Darbietung.<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/Hj1Ogr8137o<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
== Tag 3 ==<br />
Von 9:00 Uhr bis nach dem Mittag um 14:00 Uhr waren wir alle mit der [[#Skill-Share-Session]] beschäftigt.<br />
<br />
Danach hatten wir Zeit um den nächsten Hack vorzubereiten und zu planen.<br />
<br />
== Tag 4 ==<br />
Den Vormittag verbrachten wir weiter mit dem Hack 1, welchen wir dann vor der Mittagspause den Dozenten und allen Mitstudierenden präsentieren durften. Leider litten wir während des ganzen Hack 1 sehr unter Zeitdruck, was auf eine turbulente Projektphase zurückzuführen ist. Mehr dazu erfährst du im [[#Hack 1]].<br />
<br />
Nach einer kurzen Inspirationphase entschieden wir uns dafür eine kleine Spritzenpumpe zu basteln. [[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 5 ==<br />
Am Tag 5 ging es darum die Einzelteile physikalisch sowie über ein Funktionierendes Arduinoprogamm zum laufen zu bringen.<br />
[[#Hack 2: Spritzenpumpe]]<br />
<br />
== Tag 6 ==<br />
<br />
= Experimente =<br />
Bei den Experimenten sollte es darum gehen aus unterschiedlichsten Einzelteilen ein Produkt zu erschaffen. Dieser Prozess brachte uns dazu über die Grenzen unseres altäglichem Denken zu springen und in der Verbindung der einzelnen Bereiche solcher Produkte besser zu verstehen.<br />
<br />
== Hack 0 ==<br />
<br />
<br />
===Versuchsaufbau 1===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 1===<br />
Nach den Inputs der Dozenten verbrachten wir hauptsächlich die Zeit damit den Muscle Spiker Shield nach der Anleitung mit den dazugehörigen Teilen zusammenzulöten.[https://backyardbrains.com/products/files/MuscleSpikerShield.v.2.11.BuildingInstructions.pdf]V2.11<br />
Nebenbei machten wir unsere ersten Schritte in Arduino.<br />
Als wir unsere mechatronischen Komponenten zusammengestellt und ein Grundverständnis von Arduino angeeignet haben, verbanden wir dies in einem Experiment. <br />
Das Experiment welches wir durchführten nennt man Control Machines with your Brain und ist auf der Seite von [https://backyardbrains.com/experiments/muscleSpikerShield/ Backyard Brains] nachzusehen.<br />
<br />
Für den Versuch wurden Elektroden an den Testpersonen angeschlossen und über den Arduino ausgelesen.<br />
Der Versuch wurde mit zwei Testpersonen durchgeführt. Dabei fiel uns nebst der Kontrolle der LED's auch auf, dass der Puls gemessen wurde. Dies unabhängig von der Position der Elektroden. Vermutlich reagieren die Elektroden zu sensitiv für diese Anwendung.<br />
<br />
<br />
[[File:UeberblickVersuchTeamD.jpg|400px|thumb|none|Versuchsaufbau]]<br />
[[File:Versuchsaufbau1TeamD.jpg|400px|thumb|none|Elektrodenbefestigung]]<br />
[[File:MessungDanielGlur.jpg|400px|thumb|none|Messung von Daniels Puls]]<br />
<br />
===Versuchsaufbau 2===<br />
<br />
* Mucle Spike Shield<br />
* Arduino<br />
* 3 Elektroden<br />
* Elektrodenkabel<br />
* USB Kabel<br />
* Sketch (led_strip2014_highergain.ino)<br />
<br />
===Durchführung 2===<br />
<br />
Als zweites Experiment versuchten wir durch das anspannen der Muskeln einen Servomotor anzusteuern. Wie es auch auf der Homepage von [https://backyardbrains.com/experiments/MuscleSpikerShield_GripperHand/ Backyard Brains] anzutreffen ist. Dieser Versuch konnte aber leider aus Zeitgründen nicht zu Ende geführt werden. Wir konnten lediglich das Arduinoprogramm laden und etwas anpassen.<br />
<br />
===Reflexion===<br />
<br />
Der Hack 0 war in der Hinsicht sehr interessant, da wir alle unsere ersten Erfahrungen mit einem Arduino machen konnten. Einige von unserem Team hatten bisher auch noch nie auf einer Printplatte irgendwelche Widerstände oder Schalter etc. gelötet. Ebenso war es erstaunlich, dass man mit so wenig so viel verschiedene Sachen machen kann. Keiner von uns hat gedacht dass wir bereits am ersten Tag irgend etwas mit unseren Muskeln kontrollieren könnten. Insgesamt kam der Hack 0 gut bei uns an und wir alle konnten einiges davon profitieren und hoffentlich auch den weiteren Hacks weiterverwenden.<br />
<br />
== Hack 1: Baseball-Cap mit Ventilator ==<br />
<br />
Der Hack 1 beschreibt die Konzept- und Testphase des ersten Prototyps.<br />
<br />
Zu Beginn waren wir uns sehr unschlüssig was wir wirklich bauen wollen. Also entschieden wir uns für ein weiteres Experiment mit einem Bausatz von Backyard Brains. Wir versuchten durch die Funktion des Heart and Brain Spiker Shield einen Ventilator anzusteuern. Der Gedanke, welcher uns auf diese Idee führte, kennt wohl jeder Student. Während einer Prüfung kommt so mancher ins Grübeln und in harten Fällen kommt es auch vor dass einem eine Schweissperle von der Stirn läuft. Um in solchen Fällen für die nötige Kühlung zu sorgen, sollen Sensoren die Hirnströme gemessen und als Signal wiedergeben werden um damit einen Ventilator anzuschalten.<br />
<br />
Zu unserem eigenen Erstaunen erhielten wir sogar ein Signal aus unserer Messung. Es stellte sich aber sehr bald heraus, dass das wohl nicht die Hirnströme waren sondern eher Bewegungen des Kopfs und der Kabel. Denn die Sensoren sind recht empfindlich gegen solche Einflüsse. Zudem kam noch, dass die Sensoren über den Haaren angebracht wurden, was das Signal der Hirnströme noch zusätzlich verschlechterte. Nach einigen Versuchen sahen wir ein, dass das wohl eine zu grosse Herausforderung war und wir uns besser an einen einfacheren Versuch versuchen sollten.<br />
<br />
[[File:heart_and_brain.jpg|300px|thumb|none|Signal aus Messung der "Hirnströme"]]<br />
[[File:EEGDanielGlur.jpg|500px|thumb|none|Daniel beim messen der "Hirnströme"]]<br />
<br />
Also beschlossen wir uns anstelle der Hirnströme den Puls zu messen. Denn während einer Prüfung kann es durchaus auch vorkommen, dass der Puls etwas ansteigt. Die Messungen sollten dann ausgelesen werden und wenn der Puls eine gewisse Frequenz übersteigt, schaltet ein Ventilator ein um den Studenten wieder etwas zu beruhigen.<br />
<br />
Für diesen Versuch platzierten wir Sensoren am Unterarm und an der Handoberfläche. Idealerweise sollten laut Assistent Christian die Sensoren aber so weit wie möglich voneinander entfernt, an einer anderen Körperstelle angebracht werden um eine gewisse Referenz zu haben und um sicherzustellen, dass man wirklich den Puls misst. Unsere Kabel waren aber leider etwas zu kurz. Wir erhielten trotzdem ein relativ gutes Signal von welchem man davon ausgehen konnte, dass es sich um den Puls handelte. Jetzt nur noch das Signal auswerten, einen Frequenzbegrenzer programmieren und mithilfe von einem Arduino UNO den Ventilator ansteuern... Dachten wir... Dies war allerdings etwas Schwieriger als erwartet und überstieg unsere Kompetenzen. Das führte uns dazu auch diesen Versuch an dieser Stelle abzubrechen und nochmal zu überdenken.<br />
<br />
<br />
[[File:puls.png|400px|thumb|none|Pulssignal]]<br />
[[File:pulsmessung.jpg|400px|thumb|none|Pulssmessung]]<br />
<br />
<br />
Nun rannte uns schon langsam die Zeit davon. Doch dann kam uns die Idee, welche wir schon zu Beginn benötigt hätten. Und zwar wollten wir einen Ventilator auf einem Baseball-Cap anbringen und diesen ansteuern wenn ein gewisses Temperaturniveau unter dem Cap überschritten wird wird. Dazu wird ein 12V Ventilator via Relais von dem Arduino angesteuert. Weil der Arduino nur eine Spannung von 5V liefert, musste ein 12V Netzgerät den Ventilator mit Strom versorgen. Damit man den Ventilator so schalten konnte, damit er den Strom über das 12V Netzgerät bezieht, mussten wir noch ein Relais einbauen. Den Code für den Arduino bezogen wir aus verschiedenen ähnlichen Projekten aus dem Internet und passten ihn spezifisch für unsere Anwendung an. Für das auslesen der Temperatur mussten wir zuerst zwei Libreries herunterladen (DallasTemperature und OneWire).<br />
<br />
[[File:Komponente.PNG|400px|thumb|none|Verbaute Komponenten]]<br />
<br />
Nun mussten wir noch den Ventilator am Baseball-Cap anbringen. Dafür wurde eine Halterung im CAD konstruiert und mit einem 3D-Drucker ausgedruckt. Die Teile wurden danach zusammengesteckt und mit dem Baseball-Cap verschraubt. Natürlich wurde zuvor ein Loch in das Cap geschnitten, damit der Ventilator auch seinen Zweck erfüllen kann und dem Studenten einen kühlen Kopf verschafft.<br />
<br />
[[File:Aufbau.PNG|350px|thumb|none|3D-Modell im CAD]]<br />
<br />
[[File:Zusammenbau1.jpg|350px]]<br />
[[File:Zusammenbau2.jpg|350px]]<br />
<br />
Nun wurde unser Prototyp getestet. Der Sensor erfüllte seinen Dienst und wir konnten erfolgreich die Temperaturen messen. Jedoch war das Relais während dem Testen ständig eingeschalten und der Ventilator lief die ganze Zeit auch wenn die Temperatur den Minimalwert unterschritten hatte. Es hat sich also irgendwo in unserem Programm einen Fehler eingeschlichen. Den galt es nun zu finden und zu beheben. Dazu bauten wir einen Druckknopf ein um zu überprüfen ob das Relais defekt war und um die Fehlerquellen etwas einzugrenzen.<br />
<br />
[[File:Temperatur.jpg|350px]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/TQnGa5WiGS4<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
Der Druckknopf funktionierte, das Relais schaltete perfekt ein und aus und der Ventilator wurde an- und abgestellt. Somit wissen wir nun wo der Fehler zu suchen ist und können versuchen das Programm an diesen Stellen zu bereinigen. Nur ist jetzt schon Donnerstag Nachmittag und der Hack 2 hat schon begonnen. Wir alle wurden aufgefordert unseren bisherigen Prototypen aufzugeben und etwas neues, anderes zu versuchen und zu testen. Also legen wir schweren Herzens unser erster Prototyp beiseite und widmen unsere Kreativität dem nächsten Hack.<br />
<br />
=== Reflexion ===<br />
Der Hack 1 hat uns gezeigt, dass es gar nicht so einfach ist beim ersten Versuch ein brauchbares Resultat zu erzielen. Jedoch konnten wir so aus zwei vorhergehenden, fehlgeschlagenen Ansätzen eine Idee weiterentwickeln. Somit konnten wir mit unseren Kompetenzen und den Erfahrungen aus dem Hack 0 ein zufriedenstellendes Resultat erzielen. Durch die zwei Versuche zuvor ging leider recht viel Zeit "verloren", welche wir sehr benötigt hätten um unser erster Prototyp fehlerfrei hinzukriegen. Es war uns auch eine Lehre, dass man nicht zu lange an einer Sache verharren sollte wenn einem nur wenig Zeit zur Verfügung steht. Manchmal ist es besser man wirft alles nochmal über den Haufen und beginnt von vorne. Trotz allen Strapazen während des Hack 1 sind wir mit unserem ersten Prototyp sehr zufrieden und konnten auch bei diesem Versuch wieder viel profitieren und mitnehmen. Nun blicken wir gespannt nach vorne auf den nächsten Hack.<br />
<br />
<br />
===Code===<br />
<br />
Wir konnten zwar die Temperatur herauslesen und das Relais über einen Butten steuern, jedoch die Steuerung anhand der Temperatur geling uns nicht.<br />
<br />
<pre><br />
/********************************************************************/<br />
// First we include the libraries<br />
#include <OneWire.h> <br />
#include <DallasTemperature.h><br />
/********************************************************************/<br />
// Data wire is plugged into pin 2 on the Arduino <br />
#define ONE_WIRE_BUS 2 <br />
<br />
float tempReading;<br />
/********************************************************************/<br />
// Setup a oneWire instance to communicate with any OneWire devices <br />
// (not just Maxim/Dallas temperature ICs) <br />
OneWire oneWire(ONE_WIRE_BUS); <br />
/********************************************************************/<br />
// Pass our oneWire reference to Dallas Temperature. <br />
DallasTemperature sensors(&oneWire);<br />
/********************************************************************/ <br />
int relayPin = 4; // Relay Singnal lead to Digital Pin [D2-D12]<br />
<br />
float maxTemperature = 30.00; // The Max Temperature allowed<br />
float minTemperature = 25.00; // The Min Temperature allowed<br />
<br />
// constants won't change. They're used here to set pin numbers:<br />
const int buttonPin = 8; // the number of the pushbutton pin<br />
const int ledPin = 4; // the number of the LED pin<br />
<br />
// variables will change:<br />
int buttonState = 0; // variable for reading the pushbutton status<br />
<br />
void setup(void) {<br />
// initialize the LED pin as an output:<br />
pinMode(ledPin, OUTPUT);<br />
// initialize the pushbutton pin as an input:<br />
pinMode(buttonPin, INPUT);<br />
<br />
Serial.begin(9600); <br />
Serial.println("Dallas Temperature IC Control Library Demo"); <br />
// Start up the library <br />
sensors.begin(); <br />
}<br />
<br />
void loop(void) <br />
{ <br />
// call sensors.requestTemperatures() to issue a global temperature <br />
// request to all devices on the bus <br />
/********************************************************************/<br />
Serial.print(" Requesting temperatures..."); <br />
sensors.requestTemperatures(); // Send the command to get temperature readings <br />
Serial.println("DONE"); <br />
/********************************************************************/<br />
Serial.print("Temperature is: "); <br />
Serial.print(sensors.getTempCByIndex(0)); // Why "byIndex"? <br />
// You can have more than one DS18B20 on the same bus. <br />
// 0 refers to the first IC on the wire <br />
delay(1000); // Check Temperature every second<br />
<br />
float temperature = getTemperature();<br />
if(temperature >= maxTemperature){<br />
powerOnRelay();<br />
} else if (temperature <= minTemperature) {<br />
powerOffRelay();<br />
}<br />
delay(1000); // Check tempertature every second<br />
<br />
} <br />
void powerOnRelay() {<br />
digitalWrite(relayPin, HIGH);<br />
Serial.println("Relay On");<br />
}<br />
<br />
void powerOffRelay() {<br />
digitalWrite(relayPin, LOW);<br />
Serial.println("Relay Off");<br />
}<br />
float getTemperature(){<br />
tempReading = digitalRead(ONE_WIRE_BUS);<br />
<br />
// read the state of the pushbutton value:<br />
buttonState = digitalRead(buttonPin);<br />
<br />
// check if the pushbutton is pressed. If it is, the buttonState is HIGH:<br />
if (buttonState == HIGH) {<br />
// turn LED on:<br />
digitalWrite(ledPin, HIGH);<br />
} else {<br />
// turn LED off:<br />
digitalWrite(ledPin, LOW);<br />
}<br />
}<br />
</pre><br />
<br />
== Hack 2: Spritzenpumpe ==<br />
<br />
Nachdem der Hack 1 abgeschlossen war, machten wir uns aufs Neue darüber Gedanken was wir für einen Prototyp für den Hack 2 bauen wollen. Urs hat nach dem Abschluss von Hack 1 gesagt, wir sollten uns ein komplett neues Produkt überlegen, welches möglicherweise auch etwas mit der Medizintechnik zu tun hat. Nach einem Brainstorming kamen wir noch nicht so richtig auf einen grünen Zweig. So kamen wir auf die Idee uns einen Kaffee zu holen und einfach mal durch das FABLAB zu laufen um alles Mögliche anzuschauen, in die Hand zu nehmen und uns von all diesen Gegenständen inspirieren zu lassen. So kamen uns diverse Gegenstände in die Finger. darunter waren Servomotoren sowie einige DC-Motoren, eine Spritze, eine Pumpe, ein Micro-Switch Schalter, ein Potentiometer und vieles mehr. Diese Gegenstände haben wir dann auf unserem Gruppentisch ausgebreitet und uns Gedanken darüber gemacht was wir damit wohl anstellen konnten zum Thema Medizintechnik. So entstanden relativ schnell einige Ideen. Wir haben uns schlussendlich dafür entschieden ein Dosiergerät für eine medizinische Spritze zu machen. Dieses sollte so funktionieren, dass wir eine Spritze in eine Vorrichtung legen und über einen DC-Motor zum Einfahren bzw. Ausfahren bringen. Dazu muss die Drehbewegung des Motors in eine Lineare Bewegung umgeleitet werden. Zudem muss ggf. auch die Drehzahl des Motors durch ein Potentiometer reguliert werden können um einen zu schnellen Aus- oder Einfahrvorgang zu verhindern. Soviel zu zu den technischen Überlegungen. <br />
<br />
Sofort nach dem Entscheid suchten wir nach einem geeigneten Motor. Dieser sollte dabei eine eher tiefe Drehzahl haben damit die Spritze nur langsam ein- und ausfährt. Zudem suchten wir im Internet nach einem geeigneten Mechanismus der die Drehbewegung in eine lineare Bewegung umwandelt. Denn wir hatten leider zu wenig zeit um alles selber zu entwerfen und zu konstruieren. So wurden wir auf auf der Hompage von [https://www.thingiverse.com/thing:2797132/ Thingiverse] schliesslich fündig. Also konnte wir die Folgenden Komponenten herunterladen und mit dem 3D-Drucker ausdrucken.<br />
<br />
Komponenten: <gallery><br />
File:Halteplatte.PNG | Halteplatte<br />
File:Zahnrad.PNG | Zahnradpaar<br />
File:Zahnradpaar.PNG | Zahnstange<br />
File:Zahnstange.PNG | Zahnrad<br />
</gallery><br />
<br />
Da wir einen anderen Motor verwendeten als für diesen Mechanismus vorgesehen wäre, mussten wir noch eine passende Adapterplatte konstruieren, damit der Motor auch auf die Vorrichtung passt.<br />
<br />
<gallery><br />
File:Adapterplatte.PNG | Adapterplatte<br />
File:Motor.PNG | Motor<br />
File:Motor_mit_Adapter.jpg | Motor mit Adapter<br />
</gallery><br />
<br />
Der Motor benötigt, wie auch der Ventilator von Hack 1, eine Spannung von 12V für den Betrieb. Also mussten wir erneut das 12V Netzgerät verwenden. Damit unser zweiter Prototyp auch die gewünschte Fördermenge fördern kann, muss die Zeitdauer, in welcher gefördert werden soll, definiert werden. Das dazugehörige Programm wird mit einem Arduino UNO implementiert. Der Zugehörige Code haben wir durch Recherche im Internet und durch persönliches erweitern und anpassen erstellt. Die Drehzahl des Motors darf nicht zu hoch sein damit man die Fördermenge auch sinnvoll einstellen kann. Für diese Anwendung wird ein Potentiometer zwischen Relais und Motor gehängt. So kann die Motorspannung reguliert und die Drehzahl anforderungsgemäss eingestellt werden. Nachfolgend wird der Prozessablauf kurz beschrieben.<br />
<br />
Mit einem Knopfdruck wird wird ein Relais geschalten und der Motor wird angesteuert. Die Drehzahl des Motors wird über ein Getriebe reduziert. Die Zahnräder greifen auf eine Zahnstange und wandeln die Drehbewegung in eine lineare Bewegung um. An der Zahnstange wird der Stössel der Spritze befestigt. Der Rest der Spritze wird mit einem Kabelbinder fest mit der Bodenplatte verbunden damit sich dieser Teil nicht bewegen kann. Die programmierte Zeitdauer bestimmt welche Menge an Flüssigkeit gefördert werden soll.<br />
<br />
[[File:Pumpe.PNG|500px|thumb|none|Aufbau der Spritzenpumpe]]<br />
<br />
{{#widget:Iframe<br />
|url=https://www.youtube.com/embed/PLG_S3GtVI8<br />
|width=650<br />
|height=360<br />
|border=0<br />
}}<br />
<br />
=== Reflexion ===<br />
<br />
Anders als beim Hack 1 kamen waren wir uns bei diesem Hack sehr schnell einig was genau wir bauen möchten. Die ganze Ideenfindung erledigte sich sehr schnell und wir konnten nach bereits wenigen Stunden mit dem programmieren des Arduinos beginnen. Wie wir bereits im Hack 1 erfahren durften, ist das bei dem gedrängten Zeitplan dieser Woche ein grosser Vorteil. Rückblickend können wir urteilen, dass der Hack 2 aus unserer Sicht ein erfreuendes Erfolgserlebnis war. Unser zweiter Prototyp funktioniert genau so wie wir uns das von Beginn an vorgestellt haben. Per Knopfdruck fördert unser Prototyp eine gewisse Menge an Flüssigkeit.<br />
<br />
=== Code ===<br />
<br />
<pre><br />
<br />
bool geschaltet = false;<br />
int RelaisPin = 10; <br />
int tasterPin = 2;<br />
int empfindlichkeit = 200;<br />
<br />
void setup() {<br />
<br />
pinMode( tasterPin, INPUT_PULLUP);<br />
pinMode( RelaisPin, OUTPUT);<br />
<br />
}<br />
<br />
void loop() {<br />
<br />
if (digitalRead(tasterPin) == LOW) <br />
{<br />
if (geschaltet == false) {<br />
geschaltet = true;<br />
}<br />
else {<br />
geschaltet = false;<br />
}<br />
}<br />
<br />
if (geschaltet == true) {<br />
digitalWrite(RelaisPin, HIGH);<br />
delay(1000);<br />
geschaltet = false; <br />
}<br />
<br />
if (geschaltet == false) {<br />
digitalWrite(RelaisPin, LOW);<br />
}<br />
<br />
delay(empfindlichkeit);<br />
}<br />
</pre><br />
<br />
== Hack 3 Zinnguss==<br />
<br />
= Skill-Share-Session =<br />
<br />
== Grundlagen der Arduinoprogrammierung ==<br />
<br />
Dieser Kurs wurde von unserer Gruppe angeboten und soll den Teilnehmern die Grundlage der Programierung eines Arduino UNO beibringen. Folgend werden die grundlegenden Befehle und deren Syntax vorgestellt. Der Aufbau folgt dem YouTube Tutorial von Max. Hier gelangst du zu dem Link: [https://www.youtube.com/watch?v=eaFvQG8wrGw&list=PLAB63281B90FB376E&index=3]<br />
<br />
=== Skript ===<br />
Der Code wird in einem Skript geschrieben. Dieses ist in zwei Bereiche aufgeteilt<br />
* Void setup() Dieses Skript wird einmalig ausgeführt und enthält zB. Input und output<br />
* Void loop() Dieser Teil des Skripts wird als Dauerschleife wiederholt<br />
<br />
==== Befehlseingabe ====<br />
<br />
Die Befehle werden nach folgender Syntax eingegeben:<br />
<br />
* Funktion(Parameter1, Parameter2);<br />
<br />
Dabei muss das «;» gesetzte werden, ausserdem spielen Gross- und Kleinbuchstaben eine Rolle.<br />
<br />
=== Variablen ===<br />
Übersichtshalber sollen sprechende Namen für die Bezeichnung von z.B. Outputs verwendet werden. Dabei können verschiedene Datentypen ausgewählt werden.<br />
<br />
==== Datentyp ====<br />
* int Ganze Zahlen von -32768 … 32767 z.B. 1, 48, -654<br />
* boolean Entweder true oder false<br />
* byte 8 Bit an Informationen z.B. 00010101 (=21)<br />
* char enthält 1 Byte Informationen, das ein Zeichen darstellt z.B. 65 = A<br />
* long grosse Zahlen von ca. -2.1 Milliarden bis 2.1 Milliarden z.B. 15636451<br />
* float Komazahlen z.B. 5.498<br />
* string Zeichenketten z.B. «Do it yourself»<br />
<br />
==== Deklaration Syntax ====<br />
<br />
* Datentyp Name = Wert;<br />
<br />
oder<br />
<br />
* Datentyp Name;<br />
* Name = Wert;<br />
<br />
====Ort der Deklaration====<br />
<br />
Die Variable muss immer im Teil des Skriptes deklariert sein, wo sie auch gebraucht wird. Wird die Variable im setup wie auch im loop benötigt, so kann man die Variable als sogenannte globale Variable oberhalb des Setups deklarieren.<br />
<br />
===If-Schleife===<br />
<br />
Bei der If-Schleife wird der Wert einer Variablen mit einem Vergleichswert verglichen. Falls der Vergleich positiv ist, wird der Code ausgeführt, ansonsten übersprungen. Dazu sind Vergleichsoperatoren notwendig.<br />
<br />
====Syntax====<br />
<br />
if(Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
====Vergleichsoperatoren====<br />
<br />
* == gleich<br />
* != ungleich<br />
* < kleiner<br />
* < grösser<br />
* <= kleiner gleich<br />
* >= grösser gleich<br />
<br />
===While-Schleife===<br />
<br />
Mit der While-Schleife wird die Bedingung fortlaufend geprüft. Stimmt diese, wird der Code ausgeführt, ansonsten wird der Code übersprungen. Es können die selben Vergleichsoperatoren wie bei der If-Schleife verwendet werden.<br />
<br />
====Syntax====<br />
<br />
while (Bedingung)<br />
{<br />
CODE;<br />
}<br />
<br />
==Bildgebende Verfahren==<br />
<br />
Der Tag begann mit einer Einführung in die Bildgebenden Verfahren durch David Stadelmann. Hierbei erklärte er uns, verschiedene Methoden, um Bilder aus dem Körperinneren zu machen und welche Methode für die verschiedenen Gewebetypen gebraucht werden. Zudem Zeigte und erklärte er uns anhand von Beispielen was die Einzelnen Schattierungen aussagen könnten.<br />
<br />
[[DIY-MedTech Bildgebende Verfahren-Unterschiedliche Bildeindrücke - Team Frosch]]<br />
<br />
==Synths & Sound ==<br />
<br />
Danach ging es weiter mit dem Kurs Synths & Sounds. Diese Session wurde von [https://www.hackteria.org/wiki/Dusjagr/ Dr. Marc R. Dusseiller] durchgeführt. Hierbei zeigte er uns, wie man mit verschieden erzeugten Schwingungen eine grosse Variation von Tönen generiert kann. Zudem auch wie man elektronisch gewisse Instrumente Simulieren könnte und durch die Aneinanderreihung verschiedenster Tonvariationen eine Melodie enstehen kann. Dies mit unterschiedlich Variationen von selbstgebauten Synthesizers.<br />
<br />
<gallery><br />
File:Sinthesizer1.jpg | Synthesizer 1<br />
File:Synthesizer2.jpg | Synthesizer 2<br />
</gallery><br />
<br />
== Schweissen ==<br />
<br />
Bei dem Skill-Share Workshop von [https://www.hackteria.org/wiki/Team_G2020/ Team G2020] konnten wir verschiedene Schweissverfahren kennenlernen und auch gleich anwenden.<br />
<br />
Es wurde uns das [https://de.wikipedia.org/wiki/Lichtbogenhandschwei%C3%9Fen/ Elektrodenschweissen], das [https://de.wikipedia.org/wiki/Schutzgasschwei%C3%9Fen/ MIG-Schweissen] und das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] nähergebracht.<br />
<br />
Dieser Workshop war für uns alle sehr interessant, da sich bisher noch keiner von uns so wirklich mit dem Schweissen und den verschiedenen Verfahren auskannte. An diesem Tag konnten wir nach einer kurzen Theorie gleich sofort selber handanlegen und die verschiedenen Schweissverfahren ausprobieren.<br />
<br />
Dabei mussten wir feststellen, dass es gar nicht so einfach ist wie es immer aussieht. Besonders das [https://de.wikipedia.org/wiki/Wolfram-Inertgas-Schwei%C3%9Fen/ TIG-Schweissen] braucht sehr viel Übung und Geschick um wirklich schöne Schweissergebnisse zu erzielen.<br />
<br />
== Autonomes Nervensystem und das Hören in der Medizin ==<br />
<br />
Der Assistent Dr. Christian Gehringer, MSc. (ETH) hielt uns einen sehr interessanten Vortrag. Dabei ging es darum, dass wir die Anatomie kennenlernen und erkunden am Beispiel des Hörens z.B mit einem Stethoskop.<br />
<br />
[https://www.hackteria.org/wiki/Autonomes_Nervensystem_und_das_H%C3%B6ren_in_der_Medizin/ Autonomes Nervensystem und das Hören in der Medizin]</div>Tnroth