Neopixel Pink Ribbon Wearable bevingade fötter (1 / 3 steg)
Steg 1: Firewalker mod...
Wrap runt fotleden eller armbåga vingar tänds med Adafruit Neopixel lysdioder. Detta projekt bygger på den Adafruit Firewalkers lyser upp skon handledning.
I stället för en FLORA, detta drivs av en Adafruit prydnadssak, lite mindre Attiny85 baserade mikrokontroller - samma som en GEMMA som är den sewable bärbara formfaktorn en. Jag använde en liten del av Neopixel strip 60 lysdioder/m täthet av 30 Neopixels och 16 Neopixel Ring. Eftersom detta projekt är inte att mod en sko, men för att skapa en bärbar att linda runt någon del av fotleder, händer, bara fötter eller ben, jag antar att du kan göra en stor pannband behövde jag komma med en annan typ av sensor switch att utlösa ljuset upp effekten. Detta sker genom att använda en tilt-ball sensor växla att ersätta velostat trycksensor.
Det finns några ändringar i koden. Du kan hämta Firewalker koden från Adafruit lärande System handledning.
Jag vill bara peka på enkla mods måste du se till koden. Tilt-ball växeln används som en direkt replacment för trycksensor velostat fot. Jag har aldrig tittat på den seriella produktionen men jag vet att det borde gå från full av till full högt och rent analog 0 och 1023. Du kan optimera koden för att ta bort känsligheten och allt men det fungerar fortfarande att veta att vi har antingen en fullständig steg på eller av. Som alltid är signalerade roligt att använda Arduinos eller kodning är att se motsatsen av vad du förväntar dig, jag tror att när växeln var på, det låg.
Observera att pin 1 analog pinne 1 som egentligen är den fysiska stift märkt # 2 på fasad. LED strip styrs av digital pin 1 som är fysiska stift märkt # 1 på fasad.
Jag hade faktiskt 29 arbetar Neopixels på mitt band. Jag tror jag hade hamlade bort en från en lödning fuskverk i slutet av remsan som användes på ett tidigare projekt. Neopixel ringen lägger till en annan 16 element i mitten av kedjan. Jag hade skarvas i ledningarna till den mellersta 14 Neopixel. DATA ut från den 13: e Neopixel på remsan är kopplad till DATA IN på Neopixel Ring. DATA ut på Neopixel Ring är kopplad till DATA IN på den 15: e Neopixel på remsan. DATA ut / DATA i bridge pad är skär med en vass rakhyvel kniv mellan den 14 och 15 Neopixels på remsan. Detta är att skarva i Neopixel ringen som i mitten av den långa Neopixel remsan och ha den återstående Neopixels på remsan lagen sekventiellt. GRD och Vcc eller + 5v är kopplad till deras respektive kuddar på strip. Neopixel Ring är att få makt och marken som en parallell krets.
Tin kuddar med en klump av lödtenn och tenn ändarna av connector kablar först. Så du har bara röra anslutningen för lite så att det lödpunkter snabbt. Mylar substratet Neopixel Strip är lätt skadas av värme från en lödkolv.
----------------------------------------
Inställningarna kan vara olika beroende på vad du använder. Det totala antalet lysdioder och antalet ner varje sida kan ändras. Jag tror att jag spelade med förändrade bakersta LED på skon variabel för att få alla min Neopixels att lysa upp. Observera att steg PIN är analog nåla fast antal som kan vara annorlunda än vad är märkt på den faktiska ombord.
#define N_LEDS 45 / / totalt antal lysdioder i remsa
#define SHOE_LEN_LEDS 22 / / nummer för lysdioder ner ena sidan av skon
#define SHOE_LED_BACK 1 / / Index av bak-mest LED på sko
#define STEP_PIN 1 / / Analog ingång för fotsteg
#define LED_PIN 1 / / NeoPixel band är ansluten här
----------------------------------------
Leta efter denna linje att se till att du ändrar numret analoga ingångsstift att matcha det som du använder. Inställningen inre pullup motstånd gör det så vi slipper tråd en ytterligare motstånd till växeln för att få det att fungera i kretsen.
void setup() {
pinMode (1, INPUT_PULLUP); Ställ in inre pullup motstånd för givarstaven
----------------------------------------
Jag har alltid har problem med ett dekrement slinga i-- så jag modded denna linje i stället för att få flash sekvensen att börja i mitten och stråla ut till ändarna på remsan.
strip.setPixelColor (jag + SHOE_LED_BACK, r, g, b);
strip.setPixelColor (SHOE_LEN_LEDS-i, r, g, b).
strip.setPixelColor (SHOE_LEN_LEDS + jag, r, g, b);
----------------------------------------