Orodha ya maudhui:

Goggles za kupumzika - ITTT: Hatua 5 (na Picha)
Goggles za kupumzika - ITTT: Hatua 5 (na Picha)

Video: Goggles za kupumzika - ITTT: Hatua 5 (na Picha)

Video: Goggles za kupumzika - ITTT: Hatua 5 (na Picha)
Video: Маленький лисенок вышел к людям за помощью 2024, Novemba
Anonim
Goggles za kupumzika - ITTT
Goggles za kupumzika - ITTT
Goggles za kupumzika - ITTT
Goggles za kupumzika - ITTT
Goggles za kupumzika - ITTT
Goggles za kupumzika - ITTT

Mradi wa HKU - ITTT (Ikiwa Hii Basi Hiyo) - Julia Berkouwer, 1B

Je! Umewahi kujisikia kuwa na wasiwasi na haujui jinsi ya kutuliza mwenyewe, basi unapaswa kujaribu miwani hii ya kupumzika! Unaziweka na kufunga macho yako, kisha muundo wa kupumua utacheza. Kwa kufuata mtindo huu wa kupumua, wimbo wako wa kupumua utashuka hadi kupumua na kutoka mara 6 kwa dakika. Kufanya hivi kunatoa mkazo wa kila siku.

Unaweza pia kufuatilia kiwango cha kupumua kwako kwa kubonyeza swichi, ukitumia sensa ya fsr.

Kwa jumla hii nitakuongoza kupitia kujenga miwani yako ya kupumzika kwa hatua kwa hatua.

Hatua ya 1: Vifaa na Sehemu Zinahitajika:

Vifaa na Sehemu zinahitajika
Vifaa na Sehemu zinahitajika
Vifaa na Sehemu zinahitajika
Vifaa na Sehemu zinahitajika
Vifaa na Sehemu zinahitajika
Vifaa na Sehemu zinahitajika

Vifaa:

1x arduino uno;

1xbreadboard au PCV;

Vipimo 3x 10k

Waya (Ikiwezekana rangi tofauti kwa hivyo ni rahisi kujua ni vitu gani vinaenda chini na ni vipi vinaenda kwenye pini tofauti, nk);

Baadhi ya zilizopo za kupungua kwa joto;

Gonga la 2x NeoPixel - 16 x 5050 RGB LED na Dereva Zilizounganishwa;

Kubadilisha 1x;

Sensor ya 1x FSR;

Vikombe vya SteamPunk vya 1x (Unaweza kununua kwenye duka la sherehe, ni rahisi kutumia kwa sababu pete ya neopixel inafaa kabisa kwenye glasi. Daima unajaribu kutumia miwani mingine au tengeneza yako mwenyewe.);

1x aina fulani ya bendi (elastick) ya kuweka karibu na kifua chako.

Zana: -Laptop

-Utengenezaji chuma

-Arduino IDE programu

Utaona vifungo viwili na swichi kwenye pvc yangu, ninatumia tu kitufe cha kushoto kuiunganisha kwa swichi, situmii kitufe cha pili kulia kwa picha. Ninaweka vifungo kwenye pvc kabla ya kugundua sizihitaji na nilihitaji kutumia swichi badala yake.

Chini hapa utaona picha za kila kitu nilichotumia:

Hatua ya 2: Pete za Neopikseli

Pete za Neopikseli
Pete za Neopikseli

Waya nyeupe imeunganishwa chini nyuma ya pete ya neopixel.

Waya ya machungwa imeunganishwa na 5V.

Na waya ya kahawia imeunganishwa na uingizaji wa data

Hatua ya 3: Uunganisho

Miunganisho
Miunganisho
Miunganisho
Miunganisho

Hivi ndivyo bodi yangu ya mkate ilionekana wakati wa kuiga, unaweza kutumia hii kama kumbukumbu.

Pia nilifanya mpangilio wa wiring wa kile kinachopaswa kuonekana kama na kitufe kimoja tu.

Hatua ya 4: Kanuni:

Labda sio nambari inayofaa zaidi, lakini inanifanyia kazi. Jibadilishe na ujaribu kuifanya ifanikiwe zaidi;

# pamoja

// Ipi

pini kwenye Arduino imeunganishwa na NeoPixels?

#fafanua

PIN 6

// Ipi

pini kwenye Arduino imeunganishwa na kitufe

#fafanua

BUTTON_PIN 9

// Vipi

NeoPixels nyingi zimeambatanishwa na Arduino?

#fafanua

NUMPIXELS 16

// Lini

tunaanzisha maktaba ya NeoPixel, tunaiambia saizi ngapi, na ni pini gani ya kutumia kutuma ishara.

// Kumbuka

kwamba kwa vipande vya zamani vya NeoPixel unaweza kuhitaji kubadilisha parameter ya tatu - tazama strandtest

//

mfano kwa habari zaidi juu ya maadili yanayowezekana.

Adafruit_NeoPixel

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

pa pa

= 1; // kuchelewa2

int

pa22 = 80; // kwenda chini wakati fsr inatumiwa

int

pause3 = 150; // kufanya wakati fsr inatumiwa

int

kuchelewesha = 4; // kuchelewa1

int

fsrPin = 0; // mtaro wa FSR na 10K umeunganishwa na a0

int

fsr Kusoma;

utupu

kuanzisha () {

pinMode (BUTTON_PIN, INPUT);

Serial. Kuanza (9600);

saizi. anza (); // Hii inaanzisha

Maktaba ya NeoPixel.

saizi. onyesha ();

}

bool

bonyeza kitufe (pini) {

kurudi digitalRead (pini);

}

utupu

kitanzi () {// inasomeka ikiwa pembejeo ya pini ni kweli au si kweli

fsrReading = AnalogRead (fsrPin);

Serial.print ("Analog kusoma =");

Serial.print (fsrReading);

ikiwa (kushinikizwa kwa kifungo (BUTTON_PIN) == kweli) {

// athari nyepesi wakati wa kutumia fsr sensor

ikiwa (fsrKusoma> 50) {

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

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

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

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

saizi. onyesha ();

kuchelewesha (pause3);

}

ikiwa (fsrKusoma <52) {

saizi.setPixelColor (0, 0, 0, 0);

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

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

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

saizi. onyesha ();

kuchelewesha (pause2);

}

ikiwa (fsrReading> 57) {

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

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

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

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

saizi. onyesha ();

kuchelewesha (pause3);

}

ikiwa (fsrKusoma <59) {

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

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

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

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

saizi. onyesha ();

kuchelewesha (pause2);

}

ikiwa (fsrReading> 65) {

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

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

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

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

saizi. onyesha ();

kuchelewesha (pause3);

}

ikiwa (fsrKusoma <67) {

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

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

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

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

saizi. onyesha ();

kuchelewesha (40);

}

ikiwa (fsrKusoma> 79) {

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

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

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

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

saizi. onyesha ();

kuchelewesha (pause3);

}

ikiwa (fsrKusoma <85) {

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

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

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

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

saizi. onyesha ();

kuchelewesha (20);

}

}

mwingine {

pumua_blue (20, 100, 0, 1, 1); // kawaida

athari

}

}

// Sitisha

= kuchelewa kati ya mabadiliko

// Hatua

= idadi ya hatua

// R, G, B = Maadili kamili ya RGB

// Pumzi ya utupu ni athari ya licht als de

fsrsensor niet gebruikt nenot. Deze batili neno katika kitanzi batili () weer aangeroepen.

pumzi_blue (int pause, hatua za int, byte R, byte G, baiti B) {

int

tmpR, tmpG, tmpB; // Thamani za muda

// Kufifia

kwa (int s = 1; s <= hatua; s ++) {

tmpR = (R * s) /

hatua; // Zidisha kwanza ili kuepusha makosa ya kukata

tmpG = (G * s) / hatua;

tmpB = (B * s) / hatua;

kwa (int i = 0;

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

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

}

saizi. onyesha ();

kuchelewesha (4);

}

// Kufifia

kwa (int s = 1; s <= hatua; s ++) {

tmpR = (R * s) /

hatua; // Zidisha kwanza ili kuepusha makosa ya kukata

tmpG = (G * s) / hatua;

tmpB = (B * s) / hatua;

kwa (int i = 0;

isaizi.setPixelColor (1, tmpR, tmpG + 1, tmpB);saizi.setPixelColor (14, tmpR, tmpG + 1, tmpB);

}

saizi. onyesha ();

kuchelewesha (4);

}

// Kufifia

kwa (int s = 1; s <= hatua; s ++) {

tmpR = (R * s) /

hatua; // Zidisha kwanza ili kuepusha makosa ya kukata

tmpG = (G * s) / hatua;

tmpB = (B * s) / hatua;

kwa (int i = 0;

isaizi.setPixelColor (2, tmpR, tmpG + 2, tmpB);saizi.setPixelColor (13, tmpR, tmpG + 2, tmpB);

}

saizi. onyesha ();

kuchelewesha (3.5);

}

// Kufifia

kwa (int s = 1; s <= hatua; s ++) {

tmpR = (R * s) /

hatua; // Zidisha kwanza ili kuepusha makosa ya kukata

tmpG = (G * s) / hatua;

tmpB = (B * s) / hatua;

kwa (int i = 0;

isaizi.setPixelColor (3, tmpR, tmpG + 3, tmpB + 5);saizi.setPixelColor (12, tmpR, tmpG + 3, tmpB + 5);

}

saizi. onyesha ();

kuchelewesha (3);

}

kwa (int i = 0;

isaizi.setPixelColor (0, 0, 0, 0);saizi.setPixelColor (15, 0, 0, 0);

}

// Kufifia

kwa (int s = 1; s <= hatua; s ++) {

tmpR = (R * s) /

hatua; // Zidisha kwanza ili kuepusha makosa ya kukata

tmpG = (G * s) / hatua;

tmpB = (B * s) / hatua;

kwa (int i = 0;

i

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

}

saizi. onyesha ();

kuchelewesha (3);

}

// Kufifia

kwa (int s = 1; s <= hatua; s ++) {

tmpR = (R * s) /

hatua; // Zidisha kwanza ili kuepusha makosa ya mkato

tmpG = (G * s) / hatua;

tmpB = (B * s) / hatua;

kwa (int i = 0;

isaizi.setPixelColor (5, tmpR, tmpG + 4, tmpB + 20);saizi.setPixelColor (10, tmpR, tmpG + 4, tmpB + 20);

}

saizi. onyesha ();

kuchelewesha (2);

}

kwa (int i = 0;

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

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

}

// Kufifia

kwa (int s = 1; s <= hatua; s ++) {

tmpR = (R * s) /

hatua; // Zidisha kwanza ili kuepusha makosa ya mkato

tmpG = (G * s) / hatua;

tmpB = (B * s) / hatua;

kwa (int i = 0;

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

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

}

saizi. onyesha ();

kuchelewesha (kuchelewesha);

}

kwa (int i = 0;

isaizi.setPixelColor (2, 0, 0, 0);saizi.setPixelColor (13, 0, 0, 0);

}

// Kufifia

kwa (int s = 1; s <= hatua; s ++) {

tmpR = (R * s) /

hatua; // Zidisha kwanza ili kuepusha makosa ya kukata

tmpG = (G * s) / hatua;

tmpB = (B * s) / hatua;

kwa (int i = 0;

i

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

}

saizi. onyesha ();

kuchelewesha (kuchelewesha);

}

// Fifia chini

kwa (int s = hatua; s> 0; s-) {

tmpR = (R * s) / hatua; // Zidisha kwanza kuzuia upunguzaji

makosa

tmpG = (G * s) / hatua;

tmpB = (B * s) / hatua;

kwa (int i = 0; i

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

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

}

saizi. onyesha ();

kuchelewesha (1);

}

// Fifia chini

kwa (int s = hatua; s> 0; s-) {

tmpR = (R * s) / hatua; // Zidisha kwanza kuzuia upunguzaji

makosa

tmpG = (G * s) / hatua;

tmpB = (B * s) / hatua;

kwa (int i = 0; i

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

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

}

saizi. onyesha ();

kuchelewesha (1);

}

// Fifia chini

kwa (int s = hatua; s> 0; s-) {

tmpR = (R * s) / hatua; // Zidisha kwanza kuzuia upunguzaji

makosa

tmpG = (G * s) / hatua;

tmpB = (B * s) / hatua;

kwa (int i = 0; i

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

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

}

saizi. onyesha ();

kuchelewesha (2);

}

// Fifia chini

kwa (int s = hatua; s> 0; s-) {

tmpR = (R * s) / hatua; // Zidisha kwanza kuzuia upunguzaji

makosa

tmpG = (G * s) / hatua;

tmpB = (B * s) / hatua;

kwa (int i = 0; i

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

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

}

saizi. onyesha ();

kuchelewesha (2);

}

// Fifia chini

kwa (int s = hatua; s> 0; s-) {

tmpR = (R * s) / hatua; // Zidisha kwanza kuzuia upunguzaji

makosa

tmpG = (G * s) / hatua;

tmpB = (B * s) / hatua;

kwa (int i = 0; i

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

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

}

saizi. onyesha ();

kuchelewesha (3);

}

// Fifia chini

kwa (int s = hatua; s> 0; s-) {

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

Zidisha kwanza ili kuepusha makosa ya kukata

tmpG = (G * s) / hatua;

tmpB = (B * s) / hatua;

kwa (int i = 0; i

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

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

}

saizi. onyesha ();

kuchelewesha (3);

}

// Fifia chini

kwa (int s = hatua; s> 0; s-) {

tmpR = (R * s) / hatua; // Zidisha kwanza kuzuia upunguzaji

makosa

tmpG = (G * s) / hatua;

tmpB = (B * s) / hatua;

kwa (int i = 0; i

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

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

}

saizi. onyesha ();

kuchelewesha (4);

}

// Fifia chini

kwa (int s = hatua; s> 0; s-) {

tmpR = (R * s) / hatua; // Zidisha kwanza kuzuia upunguzaji

makosa

tmpG = (G * s) / hatua;

tmpB = (B * s) / hatua;

kwa (int i = 0; i

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

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

}

saizi. onyesha ();

kuchelewesha (4);

}

}

Hatua ya 5: Kuweka Kila kitu Pamoja:

Kuweka Kila kitu Pamoja
Kuweka Kila kitu Pamoja

Unaweza kuacha waya zako zote zilizounganishwa na ubao wako wa mkate au PVC, hiyo ni juu yako (nilichagua kuweka PVC juu ya arduino ni nzuri na nadhifu kwa njia hiyo).

Hatua inayofuata ni kuweka zilizopo zinazopungua kwa joto kuzunguka waya zote kwa hivyo sio fujo.

Ikiwa ulichagua kutumia PVC basi unapaswa kuwa umeuza kila kitu pamoja kwa sasa.

Baada ya hapo unaweka pete za neopixel nje ya miwani (hakikisha viongozo vimepangiliwa kwenye kitako) na uilinde mahali na mkanda au gundi (nilitumia mkanda).

Unaweza kuchagua kushikilia sensa ya fsr kwenye bendi ya elastic na mkanda fulani au uiache peke yake.

Furahiya miwani yako:)

Ilipendekeza: