Yorqin sovg'alar: 5 qadam (rasmlar bilan)
Yorqin sovg'alar: 5 qadam (rasmlar bilan)
Anonim
Yoritilgan sovg'alar
Yoritilgan sovg'alar

Uyda bizda Rojdestvo paytida ishlatiladigan ikkita yoritilgan sovg'a bor. Bu ranglarning tasodifiy o'zgarib turadigan va o'chib ketadigan 2 rangli qizil-yashil LED yordamida oddiy yoritilgan sovg'alar. Qurilma 3 voltli tugmachali uyadan ishlaydi. Ikkinchisi bu loyihaning sababi edi, chunki sovg'alar uzoq vaqt yoqilganda batareya tez zaryadsizlanadi.

Ko'p sonli tugmachali batareyalardan foydalanishni oldini olish uchun men uchta qayta zaryadlanuvchi AAA batareyasi yordamida o'z versiyamni yaratdim. Ushbu versiyada RGB LED ishlatiladi, shuning uchun ko'k rang ham mumkin, lekin bu asl dizaynning bir qismi emas edi. Mening versiyamda quyidagi funktsiyalar mavjud:

  • 2 -nazorat bir vaqtning o'zida bitta PIC12F617 mikrokontroller yordamida taqdim etiladi. Mikrokontroller dasturi JAL dasturlash tilida yozilgan.
  • Tugmani bosib sovg'ani yoqing va o'chiring. Asl versiyada shu maqsadda kalit ishlatilgan, lekin tugmani ishlatish osonroq edi.
  • Qizil va yashil ranglarning so'nishi va so'nishi bilan sovg'alarning rangini tasodifiy o'zgartiring.
  • Batareya quvvati 3,0 voltdan pastga tushganda sovg'alarni o'chiring. Bu qayta zaryadlanuvchi batareyalarning haddan tashqari zaryadsizlanishiga yo'l qo'ymaydi.

Bitta rang yo'qolgandan so'ng, LED 3 sekunddan 20 sekundgacha yonadi. Menda hali ishlatilmagan ko'k LED borligi sababli, men 10 paketdan keyin ikkala paket ham ko'k rangga aylanadigan xususiyatni qo'shdim. Bu tez -tez ro'y bermaydi, chunki tasodifiy vaqt 40 milisaniyali taymerda hosil bo'ladi, keyinroq tasvirlangan.

1-qadam: Puls kengligi modulyatsiyasidan foydalanib, so'nish va so'nish haqidagi ba'zi nazariyalar

LEDning yorqinligini o'zgartirishning eng yaxshi usuli - bu LED orqali o'tadigan tokni emas, balki LEDni ma'lum vaqt oralig'ida yoqish vaqtini o'zgartirish. LEDning yorqinligini nazorat qilishning bu usuli puls kengligi modulyatsiyasi (PWM) deb ataladi, u internetda bir necha bor tasvirlangan. Vikipediya

PIC va Arduino bortida PWM signalini ishlab chiqarishni osonlashtiradigan maxsus PWM uskunalari mavjud, lekin ular uchun ko'pincha bitta chiqish bor va shuning uchun siz faqat bitta LEDni boshqarishingiz mumkin. Ushbu versiya uchun men 5 ta LEDni (2 qizil, 2 yashil va 1 kombinatsiyalangan ko'k) boshqarishim kerak edi, shuning uchun PWM PWM chastotasini, ham PWM ish aylanishini ishlab chiqaruvchi taymer yordamida dasturiy ta'minotda bajarilishi kerak edi.

PIC12F617 avtomatik qayta yuklash imkoniyatiga ega bort taymeriga ega. Bu shuni anglatadiki, siz taymerni qayta yuklash qiymatini o'rnatganingizda, u har safar tanaffus o'tganida bu qiymatdan foydalanadi va shuning uchun taymer belgilangan chastotada yolg'iz ishlaydi. Vaqt barqaror PWM signali uchun juda muhim bo'lganligi sababli, taymer uzilish rejimida ishlaydi, asosiy dastur LEDlarning tasodifiy o'z vaqtida boshqarilishi va aniqlanishi kerak bo'lgan vaqtga ta'sir qilmaydi.

PWM chastotasi miltillashni oldini olish uchun etarlicha yuqori bo'lishi kerak, shuning uchun men 100 Gts chastotali PWM chastotasini tanladim. Yonish va pasayish effekti uchun biz ish tsiklini va shuning uchun LEDning yorqinligini o'zgartirishimiz kerak. Yorug'likni oshirish yoki kamaytirish uchun 5-qadamli qadamni ishlatishga qaror qildim, shuning uchun taymer ish aylanishi uchun 0 dan 255 gacha diapazonni ishlatadi, taymer 255 / da ishlashi kerak. Oddiy chastotadan 5 = 51 marta yoki 5100 Gts. Natijada, har 196 yilda taymer uzilib qoladi.

2 -qadam: Mexanik ish

Mexanik ish
Mexanik ish
Mexanik ish
Mexanik ish
Mexanik ish
Mexanik ish

Sovg'alar tayyorlash uchun men sutli oq akril plastmassadan, qolgan qismi esa MDFdan foydalanardim. Svetodiod yoqilganda paketdagi LEDning shaklini ko'rishingizni oldini olish uchun, men LEDni ustiga LEDni yopadigan qopqoq qo'ydim. Bu qopqoq menda mavjud bo'lgan eski elektron shamlardan olingan, lekin siz ham xuddi shu akril plastmassadan foydalanib qopqoq yaratishingiz mumkin. Rasmlarda men asbob -uskuna va material sifatida nimani ishlatganimni ko'rasiz.

3 -qadam: elektronika

Elektronika
Elektronika
Elektronika
Elektronika
Elektronika
Elektronika
Elektronika
Elektronika

Sxematik diagrammada sizga kerakli elektron komponentlar ko'rsatilgan. Yuqorida aytib o'tilganidek, ko'k LED birlashtirilgan 5 ta LED mustaqil boshqariladi. PIC ikkita LEDni bitta port piniga ulab bo'lmagani uchun men kombinatsiyalangan ko'k LEDlarni boshqarish uchun tranzistor qo'shdim. Elektronika 3 ta AAA qayta zaryadlanuvchi batareyalar bilan quvvatlanadi va reset tugmachasini bosib yoqish yoki o'chirish mumkin.

Loyihani amalga oshirish uchun sizga quyidagi elektron komponentlar kerak bo'ladi.

  • 12F617 rozetkali 1 PIC mikrokontroller
  • 2 ta sopol kondansatör: 2 * 100nF
  • Rezistorlar: 1 * 33k, 1 * 4k7, 2 * 68 Ohm, 4 * 22 Ohm
  • 2 RGB LED, yuqori nashrida
  • 1 BC557 tranzistorli yoki unga tenglashtirilgan
  • 1 tugmachali tugma

Siz sxemani non taxtasida qurishingiz mumkin va rasmda ko'rinib turganidek, ko'p joy talab qilmaydi. LEDlar orqali maksimal oqimni boshqarish uchun rezistor qiymatlari nima uchun past ekanligi sizni qiziqtirishi mumkin. Buning sababi shundaki, 3,6 voltli besleme zo'riqishida LEDning rangiga bog'liq bo'lgan har bir LEDning kuchlanish pasayishi bilan birga Vikipediyani ham ko'ring. Rezistor qiymatlari har bir LED uchun maksimal 15 mA maksimal oqimga olib keladi, bu erda butun tizimning maksimal oqimi 30 mA atrofida.

4 -qadam: dasturiy ta'minot

Dastur quyidagi vazifalarni bajaradi:

Tugma yordamida qurilmani qayta o'rnatganda, u o'chirilgan bo'lsa yoki yoqilgan bo'lsa, uni o'chirib qo'yadi. O'chirish PIC12F617 ni uyqu rejimiga o'tkazishni anglatadi, u deyarli hech qanday quvvat sarflamaydi.

LEDlarning yorqinligini boshqarish uchun PWM signalini yarating. Bu PIC12F617 pinlarini boshqaradigan taymer va uzilishlar xizmati yordamida amalga oshiriladi, ular LEDlarni yoqadi va o'chiradi.

LEDlarni o'chiring va o'chiring va ularni tasodifiy vaqt oralig'ida 3 dan 20 sekundgacha ushlab turing. Agar tasodifiy vaqt 10 sekundga teng bo'lsa, ikkala LED ham 10 soniya davomida ko'k rangga aylanadi, shundan so'ng oddiy qizil-yashil rangni o'chirish va o'chish sxemasi ishlatiladi.

Ish paytida PIC analog-raqamli konvertor (ADC) bortidagi quvvat manbai kuchlanishini o'lchaydi. Qachonki bu kuchlanish 3,0 V dan past bo'lsa, u LEDlarni o'chiradi va PICni yana uyqu holatiga o'tkazadi. PIC hali ham 3.0 V da yaxshi ishlashi mumkin edi, lekin qayta zaryadlanuvchi batareyalarning to'liq zaryadsizlanishi yaxshi emas.

Yuqorida aytib o'tilganidek, PWM signali PWM signalini barqaror ushlab turish uchun uzilish xizmatidan foydalanadigan taymer yordamida yaratiladi. LEDlarning o'chishi va o'chishi, shu jumladan LEDlarning yonish vaqti asosiy dastur tomonidan boshqariladi. Ushbu asosiy dastur PWM signalini yaratadigan bir xil taymerdan olingan 40 millisekundlik taymer belgisidan foydalanadi.

Men bu loyiha uchun hech qanday maxsus JAL kutubxonasidan foydalanmaganim uchun, bu safar LEDlarning tasodifiy o'z vaqtida va tasodifiy o'chirish vaqtini yaratish uchun chiziqli teskari aloqa registrini ishlatib, tasodifiy generator yaratishga to'g'ri keldi.

5 -qadam: Yakuniy natija

Image
Image
Yakuniy natija
Yakuniy natija

Oraliq natijani ko'rsatadigan 2 ta video bor. Xotinim hali ham kublarni haqiqiy sovg'alarga o'zgartirishi kerak. Bitta videoda natijaning yaqin qismi ko'rsatilgan, boshqa videoda bu loyihaga olib keladigan original sovg'a ko'rsatilgan.

Siz bajargan deb o'ylaganingizda kutishingiz mumkin, yangi talablar paydo bo'ladi. Xotinim svetodiodlarning yorug'ligi o'chganidan keyin ham o'zgarishi mumkinligini so'radi. Bu mumkin, chunki men PIC12F617 dastur xotirasining atigi yarmini ishlatganman.

JAL manba fayli va PIC dasturlash uchun Intel Hex fayli biriktirilgan. Agar siz PAL mikrokontrolerini JAL bilan ishlatmoqchi bo'lsangiz - Paskal kabi dasturlash tili - JAL veb -saytiga tashrif buyuring.

Buni ko'rsatmali qilishdan zavqlaning va sizdan reaktsiyalar va natijalarni kutamiz.