Inhoudsopgave:
- Stap 1: Hoe werkt het?
- Stap 2: Elektronica
- Stap 3: Elektronica-assemblage
- Stap 4: Overzicht van haarhardware
- Stap 5: Montage van de haardraden
- Stap 6: Vlechten en krijten
- Stap 7: Het dragen van de Tech
- Stap 8: Software-overzicht
- Stap 9: De code laden en wijzigen
- Stap 10: Toekomstige ontwerpen: ideeën en richtlijnen voor aanpassingen
- Stap 11: Veiligheidsopmerkingen
- Stap 12: Referenties en links
Video: HairIO: Haar als interactief materiaal: 12 stappen (met afbeeldingen)
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:18
HairIO: mensenhaar als interactief materiaal
Haar is een uniek en weinig onderzocht materiaal voor nieuwe draagbare technologieën. De lange geschiedenis van culturele en individuele expressie maakt het een vruchtbare plek voor nieuwe interacties. In deze Instructable laten we je zien hoe je interactieve hair extensions maakt die van vorm en kleur veranderen, aanraking voelen en communiceren via bluetooth. We gebruiken een aangepast circuit, een Arduino Nano, een Adafruit Bluetooth-bord, een vormgeheugenlegering en thermochrome pigmenten.
Deze Instructable is gemaakt door Sarah Sterman, Molly Nicholas en Christine Dierk en documenteert het werk dat is gedaan in het Hybrid Ecologies Lab aan de UC Berkeley met Eric Paulos. Een analyse van deze technologie en volledige studie is te vinden in onze paper, gepresenteerd op TEI 2018. In deze Instructable vindt u uitgebreide documentatie over hardware, software en elektronica, evenals informatie over de ontwerpbeslissingen die we hebben genomen en de problemen waarmee we te maken hebben gehad.
We beginnen met een kort systeemoverzicht en voorbeelden van het gebruik van HairIO. Vervolgens zullen we de betrokken elektronica bespreken, dan gaan we naar de hardware en het maken van de hair extensions. De laatste secties behandelen de code en enkele tips voor het aanbrengen van wijzigingen.
Links naar bepaalde bronnen zullen in elke sectie worden gegeven en ook aan het einde worden verzameld.
Veel plezier met maken!
Stap 1: Hoe werkt het?
Overzicht
Het HairIO-systeem werkt volgens twee basisprincipes: capacitieve aanraking en resistieve verwarming. Door aanraking te voelen, kunnen we de hair extensions laten reageren op aanrakingen. En door de verlenging te verwarmen, kunnen we kleurverandering veroorzaken met thermochrome pigmenten en vormverandering met een vormgeheugenlegering. Een bluetooth-chip stelt apparaten zoals telefoons en laptops in staat om ook met het haar te communiceren, ofwel om een vorm- of kleurverandering te veroorzaken, of om een signaal te ontvangen wanneer een aanraking van het haar wordt waargenomen.
Voorbeeldinteracties en gebruik
HairIO is een onderzoeksplatform, wat betekent dat we graag zien wat jij ermee doet! Sommige interacties die we hebben ontworpen, worden gedemonstreerd in de video's hierboven of in onze volledige video op YouTube.
Een van vorm veranderende vlecht kan de drager van een sms op de hoogte stellen door zachtjes het oor van de drager te kietelen terwijl het beweegt.
Of misschien kan het de drager aanwijzingen geven, in het gezichtsveld bewegend om aan te geven in welke richting hij moet draaien.
Het haar kan drastisch veranderen, voor stijl of een optreden. De stijl kan gedurende de dag veranderen of worden bijgewerkt voor een bepaald evenement.
Het haar kan ook sociale interacties mogelijk maken; stel je voor dat je het vergrote haar van een vriend vlecht en vervolgens de haarkleur van de vriend kunt veranderen door je eigen vlecht van ver aan te raken.
Componenten
Alle detectie, logica en controle wordt afgehandeld door een aangepast circuit en de Arduino Nano, die op het hoofd wordt gedragen. Dit circuit heeft twee hoofdcomponenten: een capacitief aanraakdetectiecircuit en een aandrijfcircuit voor het schakelen van stroom naar de vlecht. Een commerciële haarverlenging is gevlochten rond een nitinoldraad, een legering met vormgeheugen. Deze draad zal één vorm behouden als hij afkoelt en naar een tweede vorm gaan als hij wordt verwarmd. We kunnen bijna elke tweede vorm in de draad trainen (later beschreven in deze Instructable). Twee LiPo-batterijen voeden het stuurcircuit op 5V en het haar op 3.7V.
Stap 2: Elektronica
Controle en capacitieve aanraking
Het capacitieve aanraakcircuit is aangepast van Disney's Touché-project, via deze prachtige Instructable over het repliceren van Touche op Arduino. Deze opstelling ondersteunt capacitieve aanraakdetectie met geveegde frequentie en maakt complexere gebarenherkenning mogelijk dan eenvoudig aanraken/niet aanraken. Een opmerking hier is dat het capacitieve aanraakcircuit en de code uitgaan van een bepaalde Arduino-chip, de Atmega328P. Als u ervoor kiest om een alternatieve microcontroller-chip te gebruiken, moet u mogelijk de code opnieuw ontwerpen of een alternatief detectiemechanisme zoeken.
Het besturingscircuit maakt gebruik van een Arduino Nano voor de logica en een analoge multiplexer om sequentiële controle van meerdere vlechten van hetzelfde circuit en dezelfde batterijen mogelijk te maken. Capacitieve aanraking wordt bijna gelijktijdig waargenomen door snel tussen kanalen te schakelen (zo snel dat het eigenlijk is alsof we beide tegelijk voelen). Aansturing van de vlechten wordt beperkt door het beschikbare vermogen. Het opnemen van krachtigere of extra batterijen kan gelijktijdige activering mogelijk maken, maar hier beperken we het tot sequentiële activering voor de eenvoud. Het meegeleverde schakelschema kan twee vlechten aansturen (maar de multiplexer in het circuit kan er maximaal vier ondersteunen!).
Voor de eenvoudigste versie van het circuit laat u de multiplexer weg en bestuurt u een enkele vlecht rechtstreeks vanuit de Arduino.
Aandrijfcircuit en thermistor
We voeren capacitieve aanraking uit op dezelfde draad als activering (de nitinol). Dit betekent minder draden/complexiteit in de vlecht en meer in het circuit.
Het aandrijfcircuit bestaat uit een set bipolaire junctietransistoren (BJT's) om de haaractivering in en uit te schakelen. Het is belangrijk dat dit bipolaire junctietransistoren zijn, in plaats van de meer gebruikelijke (en over het algemeen betere) MOSFET's, omdat BJT's geen interne capaciteit hebben. De interne capaciteit van een MOSFET zal het aanraakdetectiecircuit overweldigen.
We moeten ook zowel aarde als stroom schakelen, in plaats van alleen stroom, opnieuw omwille van de capacitieve aanraakdetectie, omdat er geen capacitief signaal is van een geaarde elektrode.
Een alternatief ontwerp dat afzonderlijke bronnen gebruikt voor capacitieve aanraking en aandrijving kan dit circuit aanzienlijk vereenvoudigen, maar het maakt het mechanische ontwerp ingewikkelder. Als de capacitieve detectie is geïsoleerd van de voeding voor de aandrijving, kunnen we wegkomen met een enkele schakelaar voor de voeding, en het kan een FET of iets anders zijn. Dergelijke oplossingen kunnen het metalliseren van het haar zelf omvatten, zoals in Hairware van Katia Vega.
Bluetooth-chip
De bluetooth chip die we gebruikten is de Bluefruit Friend van Adafruit. Deze module is op zichzelf staand en hoeft alleen te worden aangesloten op de Arduino, die de logica rond communicatie afhandelt.
Batterijselectie
Voor batterijen wilt u oplaadbare batterijen die voldoende spanning kunnen leveren om de Arduino van stroom te voorzien en voldoende stroom om de nitinol aan te drijven. Dit hoeven niet dezelfde batterijen te zijn. Om te voorkomen dat de Arduino bruin wordt, hebben we al onze eerste prototypes gemaakt met twee batterijen: één voor besturing en één voor rijden.
De Arduino Nano vereist minimaal 5V en de nitinol trekt maximaal ongeveer 2 Ampère.
We kozen voor een 3,7 V-batterij van ValueHobby om het haar aan te drijven, en een 7,4 V-batterij van ValueHobby om de Arduino van stroom te voorzien. Probeer geen gewone 9V-batterijen te gebruiken; ze zullen binnen 15 minuten beneden hun nut zijn en veel afval veroorzaken. (We weten het, want we hebben het geprobeerd…)
Diverse details
Batterijbewaking: een weerstand van 4,7 k Ohm tussen de voedingslijn van de aandrijfbatterij en een analoge pin laat ons de lading van de aandrijfbatterij bewaken. Je hebt deze weerstand nodig om te voorkomen dat de batterij de Arduino via de analoge pin aanzet (wat erg zou zijn: dit wil je niet doen). De Arduino-batterij kan worden bewaakt met alleen code - zie de sectie over software voor code die dit demonstreert.
Jumper: Er is ruimte voor een jumper tussen de twee batterijconnectoren, als je een enkele batterij wilt gebruiken om alles van stroom te voorzien. Dit riskeert de Arduino bruin te maken, maar met de juiste batterijselectie en een aantal op software gebaseerde PWM van de schijf zou het moeten werken. (Hoewel we het nog niet hebben bereikt.) (Als je het probeert, laat ons dan weten hoe het gaat!)
Stap 3: Elektronica-assemblage
Het circuit samenbrengen
We hebben het circuit oorspronkelijk in twee delen ontworpen, waarbij de aandrijf- en stuurcircuits met een flexibele kabel zijn verbonden. In onze geïntegreerde PCB-versie zijn de circuits gecondenseerd tot een enkel bord. Het eerste schema zorgt voor een flexibelere plaatsing van vlechten op het hoofd, maar het tweede is veel eenvoudiger te monteren. U kunt het bordschema en de lay-outbestanden vinden in onze Github-repo. Er zijn twee manieren om de circuits te maken: 1) maak met de hand een perf-boardversie met doorlopende componenten volgens het schema, of 2) maak de PCB van het bordbestand dat we leveren (link hierboven) en assembleer met componenten voor opbouwmontage.
Componenten
De stuklijst voor de PCB-versie + vlechten is hier.
We freesden onze test-PCB's zelf op een Othermill en bestelden onze uiteindelijke PCB's bij de uitstekende Bay Area Circuits. Zowel de interne als de professionele productie van printplaten werkt prima, hoewel het met de hand plateren of solderen van alle via's lastig is.
Tips
- We gebruikten soldeerpasta en een reflow-oven of hete plaat voor de componenten voor opbouwmontage, en soldeerden daarna de doorlopende componenten met de hand.
- We raden de breadboard/perf board-versie aan voor snelle prototyping en de PCB voor betrouwbaarheid.
- We gebruiken korte vrouwelijke headers om de Nano op de printplaat te houden, zodat deze verwijderbaar is. Lange vrouwelijke headers kunnen niet helemaal vlak op het bord worden gesoldeerd om de bluetooth-chip hoog genoeg op te tillen om boven de Arduino te nestelen. (U wilt ook Kapton-tape toevoegen om per ongeluk kortsluiting te voorkomen).
- De bluetooth-chip moet eigenlijk ondersteboven aan de mannelijke headers worden gesoldeerd om overeen te komen met de pinvolgorde op de PCB-lay-out. (Je kunt deze lay-out natuurlijk aanpassen.) Waarom hebben we dat gedaan? Omdat het ervoor zorgt dat de pinnen beter overeenkomen met de Arduino-lay-out.
Stap 4: Overzicht van haarhardware
HairIO is een haarverlenging gevlochten rond twee verbonden stukken draad, bevestigd aan een connector en een thermistor voor het regelen van de temperatuur. Het kan na volledige montage worden gekalkt met thermochrome pigmenten. Het zelf maken van een HairIO vlecht bestaat uit verschillende fasen:
1) Train de vormgeheugenlegering in de gewenste vorm.
2) Assembleer de interne draad door een stuk vormgeheugenlegering te krimpen en te solderen aan een geïsoleerde koperdraad.
3) Krimp en isoleer een thermistor.
4) Bevestig de draad en de thermistor aan een connector.
5) Vlecht haar rond de draad.
6) Krijt het haar.
We zullen elk van de fasen in detail behandelen in de volgende secties.
Stap 5: Montage van de haardraden
De eerste fasen omvatten het monteren van de interne draden die voor vormverandering en resistieve verwarming zorgen. Hier bepaalt u de lengte van de vlecht, de gewenste vorm wanneer deze wordt verwarmd en het type connector dat u gaat gebruiken. Als alle vlechten een gemeenschappelijk type connector hebben, kunnen ze eenvoudig worden verwisseld op dezelfde printplaat voor verschillende vormen en kleuren, evenals voor soorten en lengtes van haar.
Als u geen vormverandering in een bepaald vlechtwerk wilt, kan de vormgeheugenlegering worden vervangen door een stuk gewone draad. Als u capacitieve aanraking wilt ondersteunen, moet de vervangende draad voor het beste effect niet geïsoleerd zijn.
De vormgeheugenlegering trainen
De vormgeheugenlegering die we hier gebruiken is nitinol, een nikkel-titaniumlegering. Als het afkoelt, blijft het in één vorm, maar bij verhitting keert het terug naar wat de "getrainde" staat wordt genoemd. Dus als we een vlecht willen die krult als hij wordt verwarmd, kan hij recht zijn als hij afkoelt, maar moet hij worden getraind tot een krul. U kunt bijna elke gewenste vorm creëren, hoewel het vermogen van de draad om gewicht op te tillen wordt beperkt door de diameter.
Knip de nitinol op de gewenste lengte van de vlecht, laat wat extra over voor de rondingen tijdens het vlechten, en voor verbindingen aan de boven- en onderkant.
Zie deze fantastische Instructable om nitinol te trainen.
Vlechttypes waarmee we hebben geëxperimenteerd, zijn onder meer krullen, haakse bochten om het haar rechtop te laten staan en de nitinol helemaal niet te trainen. Dit klinkt misschien lui, maar het zorgt ervoor dat het haar uit elke vorm kan worden rechtgetrokken wanneer het wordt geactiveerd. De draad behoudt een vorm waarin je hem buigt als hij afgekoeld is, b.v. een krul en trek het dan uit die vorm wanneer het wordt verwarmd. Super gaaf, en veel makkelijker!
De draden monteren
De nitinol is niet geïsoleerd en loopt maar in één richting. Om een compleet circuit te maken, hebben we een tweede, geïsoleerde draad nodig om aan de onderkant aan te sluiten en terug te keren naar de connector bovenaan. (Een niet-geïsoleerde draad veroorzaakt kortsluiting wanneer deze de nitinol raakt en voorkomt gelijkmatige verwarming.)
Knip een stuk geïsoleerd koperdraad af op dezelfde lengte als de nitinol. We gebruikten 30 AWG magneetdraad. Verwijder de isolatie aan beide uiteinden. Voor magneetdraad kan de coating worden verwijderd door de draad voorzichtig te branden met een open vlam totdat de isolatie verkoolt en kan worden weggeveegd (dat duurt ongeveer 15 seconden met een aansteker). Merk op dat dit de draad enigszins kwetsbaar maakt op de verbrande locatie.
Leuk weetje over Nitinol: Helaas hecht soldeer niet graag aan nitinol. (Het is een enorme pijn.) De beste oplossing is om een krimp te gebruiken om een mechanische verbinding met de nitinol te maken, en dan soldeer toe te voegen om een elektrische verbinding te verzekeren.
Houd het uiteinde van de nitinol en de nieuw niet-geïsoleerde koperdraad bij elkaar en steek ze in een plooi. Knijp ze stevig tegen elkaar. Als extra verbindingssterkte nodig is, voeg dan een klein beetje soldeer toe. Bedek de krimp en eventuele resterende draadstaart met krimpkous, zodat uw drager zichzelf niet prikt met de puntige uiteinden. Het maakt niet uit wat voor krimp je aan de onderkant gebruikt, het is namelijk puur om een mechanische verbinding tussen de twee draden te maken.
Aan het andere uiteinde voegen we een krimp toe aan elke draadtip. Hier is het type krimp van belang. U moet de bijpassende krimp gebruiken voor uw connector. Deze uiteinden van de draden worden aan de connector bevestigd voor aansluiting op de printplaat.
Een staande vlecht maken:
De vlechten kunnen heel subtiel of heel dramatisch zijn. Als je een dramatisch effect wilt, zoals de afbeelding van de hoofdtooi hierboven, of eerder in de performatieve situatievideo, is een extra stap nodig. De vlechten draaien liever in plaats van op te tillen, dus ze moeten worden vastgemaakt om in de juiste richting te blijven. Onze brace heeft de vorm van een uitgerekte Z (bekijk de foto). We hebben een krimp op de nitinol geschoven, vervolgens de beugel aan de krimp gesoldeerd en uiteindelijk het hele ding bedekt met krimpkous en isolatietape.
De thermistor voorbereiden
De thermistor is een warmtegevoelige weerstand waarmee we de temperatuur van de vlecht kunnen meten. We gebruiken dit om ervoor te zorgen dat de vlecht nooit te warm wordt voor de gebruiker om te dragen. We voegen de thermistor toe aan dezelfde connector waaraan de vlecht wordt bevestigd.
Schuif eerst de krimpkous op de poten van de thermistor en gebruik een heteluchtpistool om deze te verkleinen. Dit isoleert de benen, om te voorkomen dat de thermistor kortsluiting maakt naar het niet-geïsoleerde nitinol. Laat een klein stukje draad aan het einde bloot voor een krimp. Nogmaals, deze crimps moeten de juiste zijn voor uw connector.
Krimp de uiteinden van de thermistor. Als je kunt, breng dan een klein beetje van de krimpkous in de eerste tanden van de krimp als trekontlasting. Zet het echter niet te helemaal naar boven, want de draden moeten nog steeds aansluiten voor een goede elektrische verbinding.
Nu is de thermistor klaar om op de connector te worden bevestigd.
De connector monteren
U kunt elk type 4-polige connector aan de bovenkant van de vlecht gebruiken; na wat experimenteren hebben we gekozen voor Molex Nanofit-connectoren. (Dit is wat onze PCB gebruikt.) Ze hebben een laag profiel op de printplaat, een solide mechanische verbinding met een clip om ze vast te houden, maar zijn nog steeds gemakkelijk te plaatsen en te verwijderen.
De Nanofit-connectoren gaan samen in drie fasen:
Steek eerst de twee gekrompen uiteinden van de thermistor in de twee middelste houders op de mannelijke helft van de connector.
Steek vervolgens de twee gekrompen uiteinden van de gevlochten draad in de meest linkse en rechtse aansluitingen op de mannelijke helft van de connector.
Zodra deze op hun plaats zitten, steekt u de houder in de houders. Dit helpt de plooien op hun plaats te houden, zodat de vlecht niet van de connector trekt.
De vrouwelijke helft van de connector bevindt zich op de printplaat en verbindt de haarterminals met het aandrijfcircuit en het capacitieve aanraakcircuit, en de thermistorterminals met de Arduino voor temperatuurmeting.
Klaar om te gaan
Nu is de draad klaar om gevlochten te worden.
Stap 6: Vlechten en krijten
Er zijn verschillende manieren om de hair extensions rond de interne draden te vlechten. Voor capacitieve aanraakdetectie moet een draad worden blootgelegd. Om echter een volledig natuurlijk ogende vlecht te hebben en de technologie te verbergen, kan de draad volledig aan de binnenkant worden gevlochten. Dit soort vlecht kan geen effectieve aanrakingsdetectie uitvoeren, maar het kan nog steeds worden geactiveerd met dramatische kleur- en vormveranderingen.
Vlechtstijl 1: 4-strengs voor capacitieve aanraking
Deze vlecht-tutorial laat je zien hoe je de 4-strengs vlecht maakt. Houd er rekening mee dat in jouw geval een van de "strengen" eigenlijk de draden zijn! Bekijk de afbeeldingen hierboven voor onze vlechtopstelling, volgens het 4-strengs patroon met drie haarstrengen en één draad.
Vlechtstijl 2: onzichtbare draden
In deze vlecht maak je een driestrengige vlecht (dit is waar de meeste mensen aan denken als ze denken aan "een vlecht"), en je bundelt de draden gewoon in een van de strengen. Hier is een geweldige tutorial voor een driestrengige vlecht.
Krijten met thermochrome pigmenten
Als u wilt dat een vlecht van kleur verandert wanneer deze wordt geactiveerd, moet deze worden gekalkt met thermochrome pigmenten. Hang eerst de vlechten ergens op, boven een met plastic bedekte tafel (het wordt een beetje rommelig). Volg de veiligheidsinstructies voor uw thermochrome inkt (draag indien nodig handschoenen!). Draag zeker een luchtmasker - u wilt nooit fijnstof inademen. Neem nu een pijnborstel en schep wat thermochroom poeder op je vlecht, beginnend bij de bovenkant. "Beschilder" de vlecht voorzichtig en borstel het poeder zoveel mogelijk in de vlecht. Je verliest wat (maar als het op je plastic tafelkleed valt, kun je het redden voor de volgende vlecht). Je kunt de timelapse bekijken die we hierboven hebben gedeeld om te zien hoe we het hebben gedaan!
Stap 7: Het dragen van de Tech
De printplaten en batterijen kunnen op een hoofdband of haarclip worden gemonteerd. Als alternatief, voor een meer subtiele stijl, kunnen de vlechten worden gemaakt met langere draden aan de uiteinden. Deze draden kunnen onder natuurlijk haar, hoeden, sjaals of andere kenmerken naar een andere locatie op het lichaam worden geleid, zoals onder een overhemd of aan een ketting. Op deze manier valt het haar als draagbare technologie minder direct op.
Het circuit kan worden verkleind, met extra revisies en geïntegreerde logica- en bluetooth-chips. Zo'n kleiner circuit zou gemakkelijker verborgen zijn op een decoratieve haarclip, enz., Maar stroom zal een probleem blijven, aangezien batterijen op dit moment zo klein worden. Je zou hem natuurlijk in de muur kunnen steken, maar dan kom je niet ver.
Je kunt een super vroeg prototype zien dat wordt gedragen in de video hierboven. (Meer afbeeldingen van de definitieve bijlagen worden toegevoegd na een openbare demo.)
Behuizing
Je zult binnenkort een 3D-afdrukbare behuizing voor het circuit kunnen vinden in onze github-repo. Dit kan op een haarband worden geschoven of worden aangepast voor andere vormfactoren.
Stap 8: Software-overzicht
In onze github-repo vind je verschillende Arduino-schetsen die verschillende manieren demonstreren om het haar te besturen.
Schets 1: demo_timing
Dit is een basisdemo van de schijffunctionaliteit. Het haar gaat binnen een ingestelde periode van seconden aan en uit en knippert de ingebouwde LED wanneer aan.
Schets 2: demo_captouch
Dit is een demo van de capacitive touch sensing. Als u het haar aanraakt, gaat de ingebouwde LED aan. Mogelijk moet u de capacitieve aanraakdrempels aanpassen, afhankelijk van uw omgeving en circuit.
Schets 3: demo_pcb_bluetooth_with_drive_captouch
Een geïntegreerde demo van bluetooth-communicatie, capacitive touch sensing en drive. Download de Bluefruit LE Connect-app op een smartphone. De code stuurt een bluetooth-signaal wanneer de vlecht wordt aangeraakt en het resultaat wordt naar de app afgedrukt. Door op knoppen op de controller in de app te drukken, wordt de activering van de vlechten gestart en gestopt. Merk op dat de pinouts zijn ingesteld voor onze PCB-versie. Als u de INH-pin van de multiplexer hebt aangesloten op een digitale pin zoals in het PCB-schema, moet u mogelijk een regel in de code toevoegen om die pin laag te maken (we hebben hem zojuist kortgesloten naar aarde).
Deze code bevat ook een kalibratiemethode, geactiveerd door het verzenden van een "c"-teken via de UART-interface in de app.
Capacitieve aanraakkalibratie
Omdat capacitieve aanraakdetectie gevoelig is voor omgevingsfactoren zoals vochtigheid, of al dan niet aangesloten op een computer, kunt u met deze code een geschikte drempelwaarde bepalen voor nauwkeurige capacitieve aanraakdetectie. Een voorbeeld hiervan vindt u in de code demo_pcb_bluetooth_with_drive_captouch. Een opmerking is dat de capaciteit ook verandert met warmte. We hebben het probleem nog niet behandeld waarbij warmte na activering de "aangeraakte" toestand activeert.
Batterijbewaking
Voorbeelden van batterijbewaking staan in de schets demo_pcb_bluetooth_with_drive_captouch. De ingebouwde LED gaat branden wanneer de lading van een accu onder een bepaalde drempel zakt, maar maakt geen onderscheid tussen de stuuraccu en de aandrijfaccu.
Temperatuurvergrendeling (veiligheidsuitschakeling)
Door de temperatuur van de vlecht te bewaken, kunnen we de stroom uitschakelen als deze te heet wordt. Deze gegevens worden verzameld van de thermistor die in de vlecht is geweven. Een voorbeeld hiervan is te vinden in de demo_pcb_bluetooth_with_drive_captouch sketch.
Stap 9: De code laden en wijzigen
We gebruiken de standaard Arduino-omgeving om code voor HairIO te schrijven en te uploaden naar de borden.
Arduino Nano's kunnen uit verschillende bronnen worden verkregen; we hebben deze gekocht, waarvoor extra firmware nodig is om met de Arduino-omgeving te werken. U kunt deze instructies volgen om ze op uw machine in te stellen. Als u een standaard Arduino Nano (d.w.z. deze) gebruikt, hoeft u die extra stap niet te doen.
Zorg er bij het wijzigen van de code voor dat uw hardware-pinnen overeenkomen met uw circuits. Als je een pin verandert, zorg er dan voor dat je je bordontwerp en -code bijwerkt.
Het is belangrijk op te merken dat de Illutron capacitieve aanraakbibliotheek die we gebruiken, afhankelijk is van een bepaalde hardwarechip (de Atmega328p). Als u een andere microcontroller wilt gebruiken, zorg er dan voor dat deze compatibel is, anders moet u die code wijzigen. (We wilden niet ingaan op dat lage codeniveau voor dit project, dus we waarderen het werk van Illutron ten zeerste. Synchroniseren met hardwaretiming kan behoorlijk harig worden!)
Stap 10: Toekomstige ontwerpen: ideeën en richtlijnen voor aanpassingen
Warmte respons
Als je meer wilt weten over het warmteresponsgedrag van de vlechten, kun je wiskundige modellen van het haar vinden in onze paper. Het belangrijkste is dat de kleur- en vormverandering op verschillende tijdstippen en in verschillende volgordes zal plaatsvinden op basis van de hoeveelheid isolerend haar rond de draad en de hoeveelheid geleverde stroom (wat verandert hoe snel het opwarmt)
Circuitverbeteringen:
- Door de Bluetooth-module naar rechts te schuiven, kunt u de stapelhoogte mogelijk korter maken, omdat deze niet tegen de Arduino USB-connector aanloopt. Er zijn ook Arduino-kaarten met geïntegreerde Bluetooth-modules (maar de meeste hebben een andere chip, dus het gebruik ervan zou codewijzigingen met zich meebrengen).
- De voetafdruk van de batterijconnector kan veranderen, afhankelijk van het type batterijen dat u gebruikt.
- De footprint van de switch is generiek en moet waarschijnlijk worden vervangen door de footprint van wat u wilt gebruiken.
- Misschien wilt u het aandrijfcircuit PWM kunnen regelen om de stroom door de vlecht te regelen; om dit te doen, moet de drive-signaalpin worden geschakeld naar D3 of een andere hardware-PWM-pin.
- Als u de multiplexer-paren omkeert (bijv. braid1 drive en braid2 touch op kanaal 0, en braid2 drive en braid1 touch op kanaal 1, in plaats van zowel touch als drive voor dezelfde omvlechting op één kanaal), kunt u capacitieve raak de ene vlecht aan terwijl je de andere vlecht aandrijft, in plaats van te worden verhinderd om enige capacitieve detectie uit te voeren terwijl er iets aan het rijden is.
-
Sommige aanpassingen kunnen het mogelijk maken dat één batterij zowel de logica als de aandrijving bestuurt. Een aantal overwegingen zijn onder meer:
- Hoogspanning (bijvoorbeeld een 7,4 LiPo-batterij) zal de Arduino terugsturen via het capacitieve detectiecircuit en de digitale pin. Dit is op de lange termijn niet goed voor de Arduino. Dit kan worden opgelost door een andere transistor op te nemen tussen het capacitieve detectiecircuit en het haar.
- Te veel stroomverbruik door het haar kan de Arduino bruin maken. Dit kan worden opgelost door het stuursignaal te PWMen.
Softwareverbeteringen
Swept frequency capacitive touch sensing kan worden gebruikt om vele soorten aanrakingen te detecteren, b.v. een vinger of twee, knijpen, draaien… Dit vereist een ingewikkelder classificatieschema dan de basisdrempels die we hier demonstreren. Capaciteit verandert met de temperatuur. Door de aanraakdetectiecode te verbeteren om hiermee rekening te houden, wordt de detectie betrouwbaarder
Als je een versie van HairIO maakt, horen we dat natuurlijk graag
Stap 11: Veiligheidsopmerkingen
HairIO is een onderzoeksplatform en is niet bedoeld als een commercieel of dagelijks gebruiksproduct. Houd bij het maken en dragen van uw eigen HairIO rekening met de volgende overwegingen:
Warmte
Aangezien HairIO werkt door middel van resistieve verwarming, bestaat de mogelijkheid van oververhitting. Als de thermistor faalt of niet dicht genoeg bij de vlecht is, kan deze de temperatuur mogelijk niet goed lezen. Als u de temperatuuruitschakelcode niet opneemt, kan deze verder opwarmen dan bedoeld. Hoewel we nog nooit brandwonden hebben gehad met HairIO, is het een belangrijke overweging.
Batterijen
In HairIO gebruiken we LiPo-batterijen als onze energiebronnen. LiPo's zijn geweldige hulpmiddelen, omdat ze oplaadbaar zijn en een hoge stroomsterkte kunnen leveren in een klein pakket. Ze moeten ook zorgvuldig worden behandeld; als ze niet goed worden opgeladen of doorboord, kunnen ze vlam vatten. Raadpleeg deze referenties voor meer informatie over de zorg voor uw LiPo's: grondige gids; snelle tips.
Thermochrome pigmenten
Degene die we gebruiken zijn niet giftig, maar eet ze alsjeblieft niet op. Lees de veiligheidsgidsen voor wat u ook koopt.
Stap 12: Referenties en links
Hier verzamelen we de referenties en links in deze Instructable voor gemakkelijke toegang:
HaarIO
HairIO: Human Hair as Interactive Material - Dit is de academische paper waarin HairIO voor het eerst werd gepresenteerd.
HairIO Github-repo - Hier vindt u een git-repo van alle schema's en code die voor deze demo zijn gebruikt, evenals enkele datasheets voor belangrijke componenten.
Youtube - Zie het haar in actie!
Stuklijst voor HairIO PCB
Capacitieve aanraking
Touché: verbeterde aanraakinteractie op mensen, schermen, vloeistoffen en alledaagse voorwerpen
Instructable voor Arduino-versie van Touche + Illutron Github repo voor Arduino-code
Bluetooth
Bluetooth-module
Bluetooth-app
LiPo-batterijveiligheid
Grondige gids
Snelle tips
Andere haargerelateerde technologie
Haaraccessoires, Katia Vega
Vuur, het onzichtbare
De auteurs
Hybride Ecologie Lab
Christine Dierk
Molly Nicholas
Sarah Sterman
Aanbevolen:
Kindle als GPS met hoog contrast (werkt voor elk e-boek): 5 stappen (met afbeeldingen)
Kindle als GPS met hoog contrast (werkt voor elk e-boek): ik laat zien hoe je je e-boek (Kindle, Kobo, Sony, ipad, tablet) als GPS kunt gebruiken. Alle software draait op je telefoon (Android is nodig), dus het e-boek is ongewijzigd. Je hoeft alleen maar een paar apps op je telefoon te installeren. Het e-boek gebruikt alleen de interne
Interactief licht zonder aanraking: 7 stappen (met afbeeldingen)
Interactief Touchless Light: Hallo allemaal! Ik wil het project waar ik aan heb gewerkt hier delen. Ik raakte geïnspireerd om te experimenteren met capacitieve aanrakingsdetectie door een project op mijn universiteit. Ik hoorde over deze technologie via instructables en gebruikte de dingen die ik leer
Geheugenspel met aanraking (Simon Says) - Als dit dan dat: 6 stappen (met afbeeldingen)
Geheugenspel met aanraking (Simon Says) - Als dit dan dat: ik heb een geheugenspel gemaakt met zelfgemaakte touchpads en een neopixelring voor een schoolproject. Deze game is vergelijkbaar met Simon Says, behalve dat veel vormen van input en feedback (geluiden en lichteffecten) in de game anders zijn. Ik heb geluiden geprogrammeerd van Su
Ingangen: Responsief materiaal: 12 stappen (met afbeeldingen)
Ingangen: Responsief Materiaal: Capaciteit is het vermogen van een object om een elektrische lading op te slaan. In deze tutorial zullen we textielsensoren ontwerpen en weven die reageren op de capaciteit van ons lichaam en die elektriciteit gebruiken om een circuit te voltooien.In deze tutorial leer je ba
PSP gebruiken als computerjoystick en vervolgens uw computer bedienen met de PSP: 5 stappen (met afbeeldingen)
PSP gebruiken als computerjoystick en vervolgens je computer bedienen met de PSP: je kunt veel coole dingen doen met PSP homebrew, en in deze instructable leer ik je hoe je je PSP als joystick kunt gebruiken voor het spelen van games, maar er is ook een programma waarmee je je joystick als muis kunt gebruiken. Hier zijn de zaken