Mundarija:
- 1 -qadam: Ishga kirishish
- 2 -qadam: tartib
- 3 -qadam: tikish bo'yicha maslahatlar
- 4 -qadam: Komponentlarni tikish
- 5 -qadam: Arduino IDE
- 6 -qadam: Test skriptlari
- 7 -qadam: Yakuniy skript
- 8 -qadam: Batareya to'plami
- 9 -qadam: Xulosa
Video: Arduino Light Up kozok: 9 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:25
Chiroyli kozok partiyalari bayramning asosiy qismidir. Har yili siz o'z o'yiningizni yaxshilashingiz va topishingiz mumkin bo'lgan eng yaxshi sviterni kiyishingiz kerak. Lekin bu yil siz bittasini yaxshiroq qilishingiz va eng yaxshi kozok qilishingiz mumkin. Biz Adafruit Wearables -dan foydalanib, do'stlaringiz va oilangizni hayratda qoldiradigan, chiroyli yoritilgan sviter yaratamiz.
Adafruit Wearables atrofida ajoyib loyihalarni yaratdi, shuning uchun biz ularning loyihasini Sparkle yubka loyihasidan amalga oshirish uchun o'zgartirilgan kodidan foydalanmoqdamiz.
Ushbu qo'llanmada siz:
- Qo'l kiyimlarini ishlatishni o'rganing
- Flora -ning asosiy kartasini, akselerometrni va NeoPixel -ni kodlash orqali Arduino -dan foydalaning
1 -qadam: Ishga kirishish
Biz Adafruit Flora Wearables, batareya to'plami, o'tkazgichli ip va bayram kozokidan foydalanamiz. Sizga oddiy ip, igna va lak kerak bo'ladi. Vaqt o'tishi bilan hammasi mantiqiy bo'ladi. Bizning versiyamiz Qorboboga ko'zlarini ochadi, lekin biz barcha dinlarni, bayramlarni va e'tiqodlarni qo'llab -quvvatlaymiz, shuning uchun ijodiy bo'ling!
- Adafruit Flora Bosh Kengashi (https://www.adafruit.com/product/659)
- Flora akselerometri (https://www.adafruit.com/product/1247)
- Flora RGB NeoPixels (https://www.adafruit.com/product/1260)
- Batareya to'plami (https://www.adafruit.com/product/727)
- Supero'tkazuvchilar mavzu (https://www.adafruit.com/product/641)
2 -qadam: tartib
Biz tikuv jarayonini boshlashdan oldin piksellar, asosiy karta va akselerometrni joylashtirishimiz kerak. Piksellar ma'lumot ulanishiga ega bo'ladi, + quvvat uchun va - er uchun. Akselerometr 3V, SCL, SDA va er uchun ulanishga muhtoj.
Kozokni tikishni rejalashtirganingizda, piksellar, asosiy karta va akselerometrni joylashtiring. Hech qanday tikuvni kesib o'tmasligingizga ishonch hosil qiling, chunki bu qisqa bo'lishga olib keladi. Biz taxtamiz yuzini va NeoPixellarini tashqariga qaratganimiz uchun, biz NeoPixellarni ulash uchun 3V, Pin 9 va Ground -dan foydalanamiz.
NeoPixels -da o'q bor, u Flora asosiy kartasidan keyingi NeoPixel -ga qanday ulanish kerakligini ko'rsatadi. NeoPixellarning hammasi bir xil tarzda joylashtirilganligiga ishonch hosil qiling.
3 -qadam: tikish bo'yicha maslahatlar
Tikuvning muhim qismi uchta narsadir; qisqa chiziqlar/choklarning kesishishi, tikuv tugaganda qattiq tugunlar va taqiladigan kiyimlar bilan yaxshi aloqa.
Qisqa kiyimlar/tikuv o'tish joyi yo'q
Sizning tikuvlaringiz kesilmasligi uchun taqiladigan kiyimlarni joylashtiring. Ko'rinib turibdiki, chiziqlar kesishmasligi kerak. Agar siz barcha tikuvlarning alohida bo'lib qolishini ta'minlaydigan sxemaga ega bo'lsangiz, tikilganingizda uning qattiq ekanligiga ishonch hosil qilishingiz kerak. Agar siz juda ko'p bo'shashsangiz, bu ipga tegishi mumkin. Tikuvni tugatgandan so'ng, ortiqcha uchlarini kesib oling, shunda hech qanday ip yo'q.
Qattiq tugunlar
Tikuv chizig'ini tugatganda, qattiq tugun tikuv bo'shashmasligini ta'minlaydi. Hiyla -nayrang - bu kichkina qo'g'irchoq shaffof lakni tugunga qo'yish va uni quritib yuborish. Bu tugunni elim kabi ushlab turishga yordam beradi. Supero'tkazuvchi ip oddiy ip kabi tugunni ushlab turmaydi, shuning uchun men lakdan foydalanishni tavsiya qilaman, aks holda siz tikuv bo'shashib qolishi mumkin.
Yaxshi ulanishlar
Pimlarning ilmoqlari qattiq ekanligiga ishonch hosil qiling. Bu sizning sxemangiz ishlamayotganligini bilishga yordam beradi, biz bilamizki, muammo ulanishlarda emas. Siz har doim yaxshi aloqa bo'lishiga ishonch hosil qilish uchun 2-3 marta pin orqali o'tishingiz mumkin.
Maslahatlar/fokuslar
Kiyim -kechakni kiyish va o'chirish paytida uning yoqilmaganligiga ishonch hosil qiling. Bu iplarni tekkizish va qisqa tutashishning eng oson yo'li. Kiyim -kechak qulay tarzda yoqilmaguncha batareya to'plamini yoqmang.
4 -qadam: Komponentlarni tikish
Biz biriktirishimiz kerak bo'lgan birinchi qism - Flora Bosh taxtasi. Siz ishlatmoqchi bo'lmagan ikkita pim orqali oddiy ip yordamida taxtani kozokingizga tikib qo'ying. Bu taxtani joyida ushlab turadi va o'tkazuvchi ip yordamida tikishni osonlashtiradi. Uning harakatlanmasligi uchun bir nechta oddiy halqalar etarli.
Keyinchalik, Flora bosh paneli va akselerometrdan to'rtta ulanishni tikishingiz kerak. Bu Power, Ground, SCL va SDA bo'ladi. Agar siz akselerometrni asosiy taxtaning chap yuqori qismiga joylashtirsangiz, ulanish to'g'ridan -to'g'ri to'g'ri keladi. Shunday qilib, siz ikkita taxtani ulash uchun to'rtta alohida tikuvga ega bo'lasiz. Ikkala tugunni ham ochilmasligi uchun ozgina shaffof lakdan foydalaning. Taxtadagi ozgina lak ularga zarar bermaydi.
Nihoyat, Flora Main platasidan 3V, topraklama va ma'lumotlar ulanishlarini NeoPixellarga ulashingiz kerak. Siz er va quvvat uchun ikkita uzun, uzluksiz tikuv qilishingiz mumkin, chunki ular NeoPixelning pastki va yuqori qismida. Pin 9 -dan ma'lumotlar ulanishi uchun siz har bir NeoPixel -dan boshqasiga alohida tikuv qilishingiz kerak.
5 -qadam: Arduino IDE
Flora asosiy kartasi Arduino-ga mos keladi, shuning uchun biz o'z kodimiz uchun Arduino IDE-dan foydalanamiz. Siz ushbu havola orqali oxirgi versiyani yuklab olishingiz mumkin.
Ushbu havola orqali veb -versiyasi ham mavjud.
NeoPixels va Accelerometer -dan foydalanish uchun to'rtta kutubxona qo'shilishi kerak. Sketch -ga o'ting, kutubxonani qo'shing, kutubxonalarni boshqaring. Har biri uchun siz uni nom bo'yicha qidirishingiz, oxirgi versiyasini tanlashingiz va o'rnatishni bosishingiz kerak bo'ladi.
- Adafruit NeoPixel
- Adafruit yagona sensori
- Adafruit TSL2561
- Adafruit LSM303DLHC
Ular o'rnatilgach va tikuv tugallangach, biz hamma narsaning ishlayotganiga ishonch hosil qilish uchun sviterimizni sinovdan o'tkazishga tayyormiz.
6 -qadam: Test skriptlari
Loyihamizni sinab ko'rish uchun biz Adafruit asosiy kartasini kompyuterga USB kabeli yordamida ulashimiz kerak. Keyin Tools, Port -ga o'ting va ro'yxatdagi Flora Main -ni tanlang.
Biz tekshiradigan birinchi narsa - akselerometr to'g'ri ishlayaptimi. Fayl, misollar, Adafruit LSM303DLHC, accensensor -ga o'ting. Bu sensorning ulanganligini va koordinata qiymatlarini o'qishini tekshiradigan skriptni ochadi. Kengashga yuklang va Arduino IDE -ning yuqori o'ng burchagidagi Serial monitorni oching. Agar siz akselerometrni harakatlantirayotganda, fotosuratda bo'lgani kabi, ketma -ket monitorda qiymatlar o'zgarayotganini ko'rsangiz, u ishlaydi!
Biz sinab ko'radigan ikkinchi narsa, agar NeoPixels ishlayotgan bo'lsa. Fayl, misollar, Adafruit NeoPixels -ga o'ting, strandtest. Bu skriptni ishga tushirishdan oldin, Pinni 9 ga o'zgartiring va piksellar sonini 6 ga o'zgartiring (yoki loyihangiz uchun nima ishlatayotgan bo'lsangiz). O'zingizning taxtangizga yuklang va agar piksellar yonib tursa, siz oxirgi skriptga tayyormiz!
7 -qadam: Yakuniy skript
Endi oxirgi kodni yuklash vaqti keldi. Quyidagi kodni yangi loyiha fayliga nusxalash. Pin 9 ga, NeoPixellar soni esa 6 ga o'rnatilgan. Agar siz boshqasini ishlatayotgan bo'lsangiz, ushbu skriptni ishga tushirishdan oldin ularni o'zgartiring. R, G va B qiymatlarini 0-255 gacha o'zgartirish orqali siz sevimli ranglarni sozlashingiz mumkin. Yangi qator qo'shish orqali siz ko'proq sevimli ranglarni qo'shishingiz mumkin. Harakatlanish chegarasi ham sozlanishi mumkin. Raqam qanchalik past bo'lsa, harakatni aniqlash va NeoPixel -ni yoqish osonroq bo'ladi. O'zingiz xohlagan o'zgarishlarni kiritganingizdan so'ng, saqlang va Flora Bosh kartasiga yuklang. Agar siz akselerometrni aylantirsangiz, piksellar yonayotganini ko'rishingiz kerak. Siz kompyuterni elektr tarmog'idan uzib qo'yishingiz mumkinligini ko'rsangiz, biz batareyalar to'plamiga ulanishimiz mumkin.
#include #include #include #include #define PIN 9 #PIXELCOUNT 6 ni belgilang // 1 -parametr = chiziqdagi piksellar soni // 2 -parametr = pin raqami (ko'pchiligi yaxshi, lekin biz 9dan foydalanmoqdamiz) // 3 -parametr = piksel turi bayroqlar, kerak bo'lganda qo'shing: // NEO_RGB piksellari RGB bit oqimi uchun ulangan (v1 FLORA piksel, v2 emas) // NEO_GRB piksellari GRB bit oqimi uchun ulangan (biz foydalanayotgan NeoPixel mahsulotlarining aksariyati) // NEO_KHZ400 400 KHz (klassik 'v1' (v2 emas) FLORA piksellari, WS2811 drayverlari) // NEO_KHZ800 800 KHz bitstream (NeoPixel mahsulotlarining ko'pchiligi WS2812 LEDli. biz ishlatadigan mahsulot) Adafruit_NeoPixel strip = Adafruit_NeoPixel (PIXELCOUNT, PIN, NEOO_GRB) Adafruit_LSM303_Accel_Unified accel = Adafruit_LSM303_Accel_Unified (54321); // R, G, B ni 0-255 gacha sozlang va // ko'proq ranglar uchun yangi {nnn, nnn, nnn} qo'shing // RGB uint8_t myFavoriteColors {] [3] 255, 255, 255}, // oq {255, 0, 0}, // qizil {0, 255, 0}, // yashil}; // pastdagi qatorni tahrir qilmang #FAVCOLORS sizeof (myFavoriteColors) /3 // bu raqam harakat sezgirligini rostlaydi // pastki son = sezgir #define MOVE_THRESHOLD 5 // super sezgir hozirda void setup () {Serial.begin (9600); // Agar biz chipni aniqlay olmasak, ishga tushirishga va ogohlantirishga harakat qiling // Chop etish uchun Serial Monitor -dan foydalaning, agar (! Accel.begin ()) {Serial.println ("Bizda muammo bor. Bu siz emas, men emas … LSM303 -ni ishga tushirib bo'lmadi. Men simlarni tez tekshirishdan boshlayman "); vaqt (1); } strip.begin (); strip.show (); // "o'chirilgan" piksellarni belgilang} void loop () {/ * Yangi sensor hodisasini olish */ sensors_event_t hodisasi; accel.getEvent (& hodisa); // Serial.print ("Accel X:"); Serial.print (event.acceleration.x); Serial.print (""); // Serial.print ("Y:"); Serial.print (hodisa. tezlashishi.y); Serial.print (""); // Serial.print ("Z:"); Serial.print (event.acceleration.z); Serial.print (""); // 3 o'qli vektorning kattaligini (uzunligini) ikki marta saqlashVector = event.acceleration.x*hodisa.acceleration.x; saqlanganVektor += hodisa. tezlashishi.y*hodisa. tezlashishi.y; storageVector += hodisa. tezlashishi.z*hodisa. tezlashishi.z; saqlanganVektor = sqrt (saqlanganVektor); // Serial.print ("Len:"); Serial.println (storedVector); // biroz kechikishni kuting (250); // yangi ma'lumotlarni oling! accel.getEvent (& hodisa); double newVector = event.acceleration.x*hodisa.acceleration.x; newVector += hodisa. tezlashishi.y*hodisa. tezlashishi.y; newVector += hodisa.acceleration.z*hodisa.acceleration.z; newVector = sqrt (newVector); // Serial.print ("Yangi Len:"); Serial.println (newVector); // biz hali ham harakat qilyapmizmi? if (abs (newVector - storedVector)> MOVE_THRESHOLD) {Serial.println ("Yorqin! Flash! Flash! McFlash!"); fleshRandom (10, 2); // birinchi raqam - "kutish" kechikishi, qisqa raqam == qisqa milt -milt fleshRandom (10, 4); // ikkinchi raqam - bu bir vaqtning o'zida fleshRandom (10, 6) ni yoqish uchun qancha neopixel; }} void flashRandom (int wait, uint8_t howmany) {for (uint16_t i = 0; i <howmany; i ++) {// tasodifiy tanlangan ranglardan int c = random (FAVCOLORS); int oq = myFavoriteColors [c] [0]; int qizil = myFavoriteColors [c] [1]; int green = myFavoriteColors [c] [2]; // tartibda yoqiladigan piksellar (int i = 0; i <6; i ++) int j = strip.numPixels (); Serial.print ("Piksel yoqilgan"); Serial.println (i); // endi biz uni 3 bosqichda "so'ndiramiz" (int x = 0; x = 0; x--) {int w = white * x; w /= 3; int r = qizil * x; r /= 3; int g = yashil * x; g /= 3; strip.setPixelColor (i, strip. Color (w, r, g)); strip.show (); kechiktirish (kutish); }} // LEDlar tugagandan so'ng o'chadi (ular 0gacha o'chadi)}
8 -qadam: Batareya to'plami
Kozokingizni doimiy quvvat bilan ta'minlash uchun biz batareyalar to'plamidan foydalanamiz. Biz faqat taxtaga osib qo'yilmasligi uchun, to'plam uchun jabduqlar yasashimiz kerak. Men batareyaning cho'ntagi sifatida eski yostiqsimon sumkaning burchagidan foydalandim. Men ochiq tomonni tikdim va tepaning bir tomonini asosiy taxtaga etarlicha yaqin bo'lgan sviterga tikdim, u osongina ulanishi va tortilmasligi mumkin.
Batareya to'plamini asosiy kartaga ulang, asosiy kartadagi kichik kalitni yoqing va yoqing. Sizning kozokingiz hozir ishlayotgan va kiyishga tayyor bo'lishi kerak.
9 -qadam: Xulosa
Siz hozir barcha do'stlaringiz va oilangizni hayratda qoldiradigan engil kozok tikdingiz! Ammo bu shunchaki bayram loyihasi emas. Aziz Valentin kuni uchun sevgilingizni yurakdan yengil kozok qiling yoki shamrok ko'ylakni yoqing. O'z tasavvuringizdan foydalaning va bizga nima yaratganingizni ayting!
Tavsiya:
BookWorm Light-Up Book Light va Bookmark: 13 qadam (rasmlar bilan)
BookWorm Light-Up Kitob nuri va xatcho'p: Kitob chirog'iga aylanadigan bu qiziqarli kitob qurti xatcho'pini yarating! Biz uni chop etamiz, kesib tashlaymiz, bo'yaymiz va bezaymiz va ular uni qorong'uda o'qishingiz uchun tunni yoqish uchun ishlatadilar. U bir nechta materiallardan yasalgan va birinchi darajali tasvirni yaratgan
Arduino va Neopixel Coke Bottle Rainbow Party Light: 7 qadam (rasmlar bilan)
Arduino & Neopixel Coca Bottle Rainbow Party Light: Shunday qilib, o'g'lim Doon eski koka shishalaridan va Glow Sticks -ning baquvvat ichki qismlaridan yasalgan juda zo'r ziyofatni ko'radi va biz uning bo'lajak maktab imtihonlari uchun PartAYYY tugashini so'raymizmi? ! Men aniq aytaman, lekin siz ulardan bir nechtasini olmaysiz
Miltillovchi kozok: 5 qadam
Yonayotgan kozok: Ushbu loyihada men shimoliy uslubda odatiy yulduz tasviri bo'lgan an'anaviy kozok to'qdim. Bu kichkina kozok, shuning uchun ortiqcha oro bermaslik ko'p vaqtni oladi. Agar ikkita rang bilan to'qish qiyin bo'lsa, ulardan birini ishlatishingiz mumkin. Trikotajdan keyin men tikdim
Shaxsiy "shamlar" bilan yoritilgan Chanukah kozok: 7 qadam (rasmlar bilan)
Individual "shamlar" bilan yoritilgan Chanukah kozok: uning bayram bayrami mavsumi va bu yil siz menorali sviter bilan partiyaning yorqin yulduzi bo'lishingiz mumkin! Bu Internetda va hunarmandchilik do'konida osongina topiladigan nisbatan arzon materiallardan foydalangan holda tikilgan sxemasi. Bundan ham yaxshiroq
Elektr isitgichli kozok: 7 qadam
Elektr isitgichli sviter: Salom bolalar, tikuvchilik tanloviga qo'shilamiz. Biz sviterni isitish uchun 9v batareyadan foydalanadigan elektr isitiladigan kozok yasadik. Bu juda yaxshi ishlaydi, uni urish kerak. Ko'rsatmalarga amal qilganingizga ishonch hosil qiling va siz kozok ishlatasiz