Sisukord:

Lõõgastusprillid - ITTT: 5 sammu (piltidega)
Lõõgastusprillid - ITTT: 5 sammu (piltidega)

Video: Lõõgastusprillid - ITTT: 5 sammu (piltidega)

Video: Lõõgastusprillid - ITTT: 5 sammu (piltidega)
Video: TANTSUKINGAD - Laulupesa ja Shate tantsukooli lapsed 2024, November
Anonim
Lõõgastusprillid - ITTT
Lõõgastusprillid - ITTT
Lõõgastusprillid - ITTT
Lõõgastusprillid - ITTT
Lõõgastusprillid - ITTT
Lõõgastusprillid - ITTT

HKU projekt - ITTT (kui see siis see) - Julia Berkouwer, 1B

Kas olete kunagi tundnud stressi ja te lihtsalt ei tea, kuidas ennast rahustada, siis peaksite neid lõõgastusprille proovima! Paned need selga ja sulged silmad, siis mängib hingamismuster. Seda hingamisharjumust järgides läheb hingamisrütm 6 korda minutis sisse ja välja. Seda tehes vabaneb see igapäevasest stressist.

Hingamise intensiivsust saate jälgida ka lülitit kasutades, kasutades fsr-andurit.

Selle toturialiga juhendan teid samm -sammult oma lõõgastusprillide ehitamisel.

Samm: vajalikud materjalid ja osad:

Vajalikud materjalid ja osad
Vajalikud materjalid ja osad
Vajalikud materjalid ja osad
Vajalikud materjalid ja osad
Vajalikud materjalid ja osad
Vajalikud materjalid ja osad

Materjalid:

1x arduino uno;

1xbreadboard või PCV;

3x 10k takistid

Juhtmed (eelistatavalt erinevat värvi, et oleks lihtsam öelda, millised asjad lähevad maapinnale ja millised erinevatesse tihvtidesse jne);

Mõned termokahanevad torud;

2x NeoPixel Ring - 16 x 5050 RGB LED koos integreeritud draiveritega;

1x lüliti;

1x FSR andur;

1x SteamPunk prillid (neid saab osta peopoest, neid on lihtne kasutada, sest neopiksellrõngas sobib ideaalselt prillidele. Proovite alati kasutada teisi prille või luua oma.);

1x mingisugune (elastik) riba, mida rinnale panna.

Tööriistad: sülearvuti

-Jootekolb

-Arduino IDE tarkvara

Minu pvc -s näete kahte nuppu ja lülitit, lülitiga ühendamiseks kasutan ainult vasakpoolset nuppu, pildi paremal asuvat teist nuppu ei kasuta. Panin nupud pvc peale, enne kui sain aru, et mul pole neid vaja ja pidin kasutama lülitit.

Siin näete pilte kõigest, mida ma kasutasin:

Samm: Neopikseli sõrmused

Neopikseli sõrmused
Neopikseli sõrmused

Valge juhe on ühendatud neopikselrõnga tagaküljel oleva maaga.

Oranž juhe on ühendatud 5V -ga.

Ja pruun juhe on ühendatud sisendandmetega

Samm: ühendused

Ühendused
Ühendused
Ühendused
Ühendused

Selline nägi välja minu leivalaud prototüübi koostamise ajal, saate seda viitena kasutada.

Samuti tegin vaid ühe nupuga juhtmestiku paigutuse, milline see peaks välja nägema.

Samm: kood:

Tõenäoliselt pole see kõige tõhusam kood, kuid see töötab minu jaoks. Väljakutse ja proovige seda tõhusamaks muuta; P.

#kaasake

// Milline

Arduino tihvt on ühendatud NeoPixelitega?

#defineeri

PIN -kood 6

// Milline

Arduino tihvt on nupuga ühendatud

#defineeri

NUPP_PIN 9

// Kuidas

paljud NeoPikslid on Arduino külge kinnitatud?

#defineeri

NUMPIXELID 16

// Millal

seadistame NeoPixeli raamatukogu, ütleme sellele, mitu pikslit ja millist tihvti signaalide saatmiseks kasutada.

// Märge

et vanemate NeoPixeli ribade puhul peate võib-olla muutma kolmandat parameetrit-vaadake kiudtesti

//

näide võimalike väärtuste kohta lisateabe saamiseks.

Adafruit_NeoPixel

pikslit = Adafruit_NeoPixel (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

vaheajal

= 1; // viivitus2

int

paus2 = 80; // läheb alla, kui fsr on kasutusel

int

paus3 = 150; // lõpetamine, kui fsr on kasutusel

int

delayval = 4; // viivitus1

int

fsrPin = 0; // FSR ja 10K rippmenüü on ühendatud a0 -ga

int

fsrReading;

tühine

setup () {

pinMode (BUTTON_PIN, INPUT);

Seriaalne algus (9600);

pixels.begin (); // See initsialiseerib

NeoPixeli raamatukogu.

pixels.show ();

}

bool

nupule vajutatud (int pin) {

return digitalRead (pin);

}

tühine

loop () {// loeb, kas tihvti sisend on tõene või vale

fsrReading = analogRead (fsrPin);

Serial.print ("Analooglugemine =");

Serial.print (fsrReading);

if (nupule vajutatud (BUTTON_PIN) == tõsi) {

// valgusefekt fsr -anduri kasutamisel

if (fsrReading> 50) {

pixels.setPixelColor (0, 1, 0, 1);

pixels.setPixelColor (15, 1, 0, 1);

pixels.setPixelColor (1, 1, 0, 1);

pixels.setPixelColor (14, 1, 0, 1);

pixels.show ();

viivitus (paus3);

}

if (fsrReading <52) {

pixels.setPixelColor (0, 0, 0, 0);

pixels.setPixelColor (15, 0, 0, 0);

pixels.setPixelColor (1, 0, 0, 0);

pixels.setPixelColor (14, 0, 0, 0);

pixels.show ();

viivitus (paus2);

}

if (fsrReading> 57) {

pixels.setPixelColor (2, 1, 0, 1);

pixels.setPixelColor (13, 1, 0, 1);

pixels.setPixelColor (3, 1, 0, 1);

pixels.setPixelColor (12, 1, 0, 1);

pixels.show ();

viivitus (paus3);

}

if (fsrReading <59) {

pixels.setPixelColor (2, 0, 0, 0);

pixels.setPixelColor (13, 0, 0, 0);

pixels.setPixelColor (3, 0, 0, 0);

pixels.setPixelColor (12, 0, 0, 0);

pixels.show ();

viivitus (paus2);

}

if (fsrReading> 65) {

pixels.setPixelColor (4, 1, 0, 1);

pixels.setPixelColor (11, 1, 0, 1);

pixels.setPixelColor (5, 1, 0, 1);

pixels.setPixelColor (10, 1, 0, 1);

pixels.show ();

viivitus (paus3);

}

if (fsrReading <67) {

pixels.setPixelColor (4, 0, 0, 0);

pixels.setPixelColor (11, 0, 0, 0);

pixels.setPixelColor (5, 0, 0, 0);

pixels.setPixelColor (10, 0, 0, 0);

pixels.show ();

viivitus (40);

}

if (fsrReading> 79) {

pixels.setPixelColor (6, 1, 0, 1);

pixels.setPixelColor (9, 1, 0, 1);

pixels.setPixelColor (7, 1, 0, 1);

pixels.setPixelColor (8, 1, 0, 1);

pixels.show ();

viivitus (paus3);

}

if (fsrReading <85) {

pixels.setPixelColor (6, 0, 0, 0);

pixels.setPixelColor (9, 0, 0, 0);

pixels.setPixelColor (7, 0, 0, 0);

pixels.setPixelColor (8, 0, 0, 0);

pixels.show ();

viivitus (20);

}

}

muu {

hingata_sinine (20, 100, 0, 1, 1); // normaalne

mõju

}

}

// Paus

= viivitus üleminekute vahel

// Sammud

= sammude arv

R, G, B = täis-RGB väärtused

// De void hingata on voor het licht effect als de

fsrsensor niet gebruikt wordt. Deze void wordt in de void loop () weer aangeroepen.

tühi hingamine_sinine (int paus, int sammud, bait R, bait G, bait B) {

int

tmpR, tmpG, tmpB; // Temp väärtused

// Tuhmuma

jaoks (int s = 1; s <= sammud; s ++) {

tmpR = (R * s) /

sammud; // Esmalt korrutage, et vältida kärpimisvigu

tmpG = (G * s) / sammu;

tmpB = (B * s) / sammu;

jaoks (int i = 0;

ipixels.setPixelColor (0, tmpR, tmpG+1, tmpB);

pixels.setPixelColor (15, tmpR, tmpG+1, tmpB);

}

pixels.show ();

viivitus (4);

}

// Tuhmuma

jaoks (int s = 1; s <= sammud; s ++) {

tmpR = (R * s) /

sammud; // Esmalt korrutage, et vältida kärpimisvigu

tmpG = (G * s) / sammu;

tmpB = (B * s) / sammu;

jaoks (int i = 0;

ipixels.setPixelColor (1, tmpR, tmpG+1, tmpB);pixels.setPixelColor (14, tmpR, tmpG+1, tmpB);

}

pixels.show ();

viivitus (4);

}

// Tuhmuma

jaoks (int s = 1; s <= sammud; s ++) {

tmpR = (R * s) /

sammud; // Esmalt korrutage, et vältida kärpimisvigu

tmpG = (G * s) / sammu;

tmpB = (B * s) / sammu;

jaoks (int i = 0;

ipixels.setPixelColor (2, tmpR, tmpG+2, tmpB);pixels.setPixelColor (13, tmpR, tmpG+2, tmpB);

}

pixels.show ();

viivitus (3,5);

}

// Tuhmuma

jaoks (int s = 1; s <= sammud; s ++) {

tmpR = (R * s) /

sammud; // Esmalt korrutage, et vältida kärpimisvigu

tmpG = (G * s) / sammu;

tmpB = (B * s) / sammu;

jaoks (int i = 0;

ipixels.setPixelColor (3, tmpR, tmpG+3, tmpB+5);pixels.setPixelColor (12, tmpR, tmpG+3, tmpB+5);

}

pixels.show ();

viivitus (3);

}

jaoks (int i = 0;

ipixels.setPixelColor (0, 0, 0, 0);pixels.setPixelColor (15, 0, 0, 0);

}

// Tuhmuma

jaoks (int s = 1; s <= sammud; s ++) {

tmpR = (R * s) /

sammud; // Esmalt korrutage, et vältida kärpimisvigu

tmpG = (G * s) / sammu;

tmpB = (B * s) / sammu;

jaoks (int i = 0;

i

pixels.setPixelColor (4, tmpR, tmpG+3, tmpB+15);pixels.setPixelColor (11, tmpR, tmpG+3, tmpB+15);

}

pixels.show ();

viivitus (3);

}

// Tuhmuma

jaoks (int s = 1; s <= sammud; s ++) {

tmpR = (R * s) /

sammud; // Esmalt korrutage, et vältida kärpimisvigu

tmpG = (G * s) / sammu;

tmpB = (B * s) / sammu;

jaoks (int i = 0;

ipixels.setPixelColor (5, tmpR, tmpG+4, tmpB+20);pixels.setPixelColor (10, tmpR, tmpG+4, tmpB+20);

}

pixels.show ();

viivitus (2);

}

jaoks (int i = 0;

ipixels.setPixelColor (1, 0, 0, 0);

pixels.setPixelColor (14, 0, 0, 0);

}

// Tuhmuma

jaoks (int s = 1; s <= sammud; s ++) {

tmpR = (R * s) /

sammud; // Esmalt korrutage, et vältida kärpimisvigu

tmpG = (G * s) / sammu;

tmpB = (B * s) / sammu;

jaoks (int i = 0;

ipixels.setPixelColor (6, tmpR, tmpG+2, tmpB+40);

pixels.setPixelColor (9, tmpR, tmpG+2, tmpB+40);

}

pixels.show ();

viivitus (viivitus);

}

jaoks (int i = 0;

ipixels.setPixelColor (2, 0, 0, 0);pixels.setPixelColor (13, 0, 0, 0);

}

// Tuhmuma

jaoks (int s = 1; s <= sammud; s ++) {

tmpR = (R * s) /

sammud; // Esmalt korrutage, et vältida kärpimisvigu

tmpG = (G * s) / sammu;

tmpB = (B * s) / sammu;

jaoks (int i = 0;

i

pixels.setPixelColor (7, tmpR, tmpG, tmpB+44);pixels.setPixelColor (8, tmpR, tmpG, tmpB+44);

}

pixels.show ();

viivitus (viivitus);

}

// Tuhmuma

jaoks (int s = sammud; s> 0; s--) {

tmpR = (R * s) / sammu; // Kärpimise vältimiseks korrutage kõigepealt

vigu

tmpG = (G * s) / sammu;

tmpB = (B * s) / sammu;

jaoks (int i = 0; i

pixels.setPixelColor (7, tmpR, tmpG, tmpB);

pixels.setPixelColor (8, tmpR, tmpG, tmpB);

}

pixels.show ();

viivitus (1);

}

// Tuhmuma

jaoks (int s = sammud; s> 0; s--) {

tmpR = (R * s) / sammu; // Kärpimise vältimiseks korrutage kõigepealt

vigu

tmpG = (G * s) / sammu;

tmpB = (B * s) / sammu;

jaoks (int i = 0; i

pixels.setPixelColor (6, tmpR, tmpG, tmpB);

pixels.setPixelColor (9, tmpR, tmpG, tmpB);

}

pixels.show ();

viivitus (1);

}

// Tuhmuma

jaoks (int s = sammud; s> 0; s--) {

tmpR = (R * s) / sammu; // Kärpimise vältimiseks korrutage kõigepealt

vigu

tmpG = (G * s) / sammu;

tmpB = (B * s) / sammu;

jaoks (int i = 0; i

pixels.setPixelColor (5, tmpR, tmpG, tmpB);

pixels.setPixelColor (10, tmpR, tmpG, tmpB);

}

pixels.show ();

viivitus (2);

}

// Tuhmuma

jaoks (int s = sammud; s> 0; s--) {

tmpR = (R * s) / sammu; // Kärpimise vältimiseks korrutage kõigepealt

vigu

tmpG = (G * s) / sammu;

tmpB = (B * s) / sammu;

jaoks (int i = 0; i

pixels.setPixelColor (4, tmpR, tmpG, tmpB);

pixels.setPixelColor (11, tmpR, tmpG, tmpB);

}

pixels.show ();

viivitus (2);

}

// Tuhmuma

jaoks (int s = sammud; s> 0; s--) {

tmpR = (R * s) / sammu; // Kärpimise vältimiseks korrutage kõigepealt

vigu

tmpG = (G * s) / sammu;

tmpB = (B * s) / sammu;

jaoks (int i = 0; i

pixels.setPixelColor (3, tmpR, tmpG, tmpB);

pixels.setPixelColor (12, tmpR, tmpG, tmpB);

}

pixels.show ();

viivitus (3);

}

// Tuhmuma

jaoks (int s = sammud; s> 0; s--) {

tmpR = (R * s) / sammu; //

Kärpimisvigade vältimiseks korrutage kõigepealt

tmpG = (G * s) / sammu;

tmpB = (B * s) / sammu;

jaoks (int i = 0; i

pixels.setPixelColor (2, tmpR, tmpG, tmpB);

pixels.setPixelColor (13, tmpR, tmpG, tmpB);

}

pixels.show ();

viivitus (3);

}

// Tuhmuma

jaoks (int s = sammud; s> 0; s--) {

tmpR = (R * s) / sammu; // Kärpimise vältimiseks korrutage kõigepealt

vigu

tmpG = (G * s) / sammu;

tmpB = (B * s) / sammu;

jaoks (int i = 0; i

pixels.setPixelColor (1, tmpR, tmpG, tmpB);

pixels.setPixelColor (14, tmpR, tmpG, tmpB);

}

pixels.show ();

viivitus (4);

}

// Tuhmuma

jaoks (int s = sammud; s> 0; s--) {

tmpR = (R * s) / sammu; // Kärpimise vältimiseks korrutage kõigepealt

vigu

tmpG = (G * s) / sammu;

tmpB = (B * s) / sammu;

jaoks (int i = 0; i

pixels.setPixelColor (0, tmpR, tmpG, tmpB);

pixels.setPixelColor (15, tmpR, tmpG, tmpB);

}

pixels.show ();

viivitus (4);

}

}

Samm: kõik kokku panemine:

Kõike kokku pannes
Kõike kokku pannes

Võite jätta kõik oma juhtmed leivaplaadi või PVC -ga ühendatuks, see on teie otsustada (ma otsustasin panna arduino peale PVC, see on nii kena ja puhas).

Järgmine samm on panna termokahanevad torud ümber kõik juhtmed, nii et see oleks vähem jama.

Kui valisite PVC kasutamise, oleksite pidanud juba kõik jootma.

Pärast seda asetate prillide välisküljele neopikselrõngad (veenduge, et valgusdioodid on tagumikuga joondatud) ja kinnitage need mõne lindi või liimiga (mina kasutasin teipi).

Võite fsr-anduri kleepida kleeplindiga elastse riba külge või jätta see iseenesest välja.

Nautige prille:)

Soovitan: