Turinys:

Apšviestos dovanos: 5 žingsniai (su nuotraukomis)
Apšviestos dovanos: 5 žingsniai (su nuotraukomis)

Video: Apšviestos dovanos: 5 žingsniai (su nuotraukomis)

Video: Apšviestos dovanos: 5 žingsniai (su nuotraukomis)
Video: MANE UŽPUOLĖ PIKTAS ŠUO |VLOG #3 2024, Rugsėjis
Anonim
Apšviestos dovanos
Apšviestos dovanos

Namuose turime dvi šviečiančias dovanas, kurios naudojamos Kalėdų laikotarpiu. Tai paprastos šviečiančios dovanos, kuriose naudojamos dviejų spalvų raudonai žalios spalvos šviesos diodas, kuris atsitiktinai keičia spalvą, kuri išblunka ir išnyksta. Įrenginys maitinamas 3 voltų mygtuko elementu. Pastaroji buvo šio projekto priežastis, nes baterijos išsikrauna labai greitai, kai dovanos įjungiamos ilgiau.

Siekdamas užkirsti kelią daugybei mygtukų elementų, aš sukūriau savo versiją, naudodamas tris įkraunamas AAA baterijas. Šioje versijoje naudojamas RGB šviesos diodas, todėl galima ir mėlyna spalva, tačiau tai nebuvo pradinio dizaino dalis. Mano versija turi šias funkcijas:

  • „Control 2“vienu metu pateikiamas naudojant vieną PIC12F617 mikrovaldiklį. Mikrovaldiklio programinė įranga buvo parašyta JAL programavimo kalba.
  • Įjunkite ir išjunkite dabartį naudodami mygtuką. Pradinėje versijoje šiam tikslui buvo naudojamas jungiklis, tačiau mygtukas buvo lengviau naudojamas.
  • Atsitiktinai pakeiskite dovanų spalvą įjungdami ir išblukdami raudonas ir žalias spalvas.
  • Išjunkite dovanas, kai akumuliatoriaus įtampa nukrenta žemiau 3,0 voltų. Tai neleis per daug išsikrauti įkraunamoms baterijoms.

Išblukus vienai spalvai, šviesos diodas kurį laiką šviečia nuo 3 iki 20 sekundžių. Kadangi vis dar turėjau nepanaudotą mėlyną šviesos diodą, pridėjau funkciją, kad abu paketai taps mėlyni, kai įjungimo laikas bus lygiai 10 sekundžių. Tai neįvyksta labai dažnai, nes atsitiktinis laikas sugeneruojamas 40 milisekundžių laikmačio erkėse, kaip aprašyta vėliau.

1 žingsnis: kai kurios teorijos apie išblukimą ir išblukimą naudojant impulsų pločio moduliaciją

Geriausias būdas pakeisti šviesos diodo ryškumą yra ne pakeisti šviesos diodą tekančią srovę, bet pakeisti šviesos diodo įjungimo laiką per tam tikrą laiko tarpą. Šis šviesos diodo ryškumo valdymo būdas vadinamas impulsų pločio moduliacija (PWM), kuris buvo ne kartą aprašytas internete, pvz. Vikipedija.

„PIC“ir „Arduino“turi specialią PWM aparatinę įrangą, kuri palengvina šio PWM signalo generavimą, tačiau dažnai tam turi vieną išvestį, todėl galite valdyti tik vieną šviesos diodą. Šiai versijai turėjau valdyti 5 šviesos diodus (2 raudonus, 2 žalius ir 1 kombinuotą mėlyną), todėl PWM reikėjo atlikti programinėje įrangoje naudojant laikmatį, kuris generuoja ir PWM dažnį, ir PWM veikimo ciklą.

„PIC12F617“turi įmontuotą laikmatį su automatinio perkrovimo galimybėmis. Tai reiškia, kad kai tik nustatysite laikmačio perkrovimo vertę, jis naudos šią vertę kiekvieną kartą, kai pasibaigs skirtasis laikas, ir laikmatis veiks atskirai nustatytu dažniu. Kadangi laikas yra labai svarbus stabiliam PWM signalui, laikmatis veikia pertraukimo principu, jam įtakos neturi laikas, kurį pagrindinei programai reikia kontroliuoti ir nustatyti atsitiktinį šviesos diodų laiką.

PWM dažnis turi būti pakankamai aukštas, kad nematytų mirgėjimo, todėl pasirinkau 100 Hz PWM dažnį. Norėdami pasiekti išblukimo ir išblukimo efektą, turime pakeisti veikimo ciklą, taigi ir šviesos diodo ryškumą. Aš nusprendžiau naudoti 5 žingsnių žingsnį, kad padidintumėte arba sumažintumėte ryškumą, kad gautumėte išblukimo ir išblukimo efektą, ir kadangi laikmatis naudoja 0–255 diapazoną darbo ciklui, laikmatis turi veikti 255 / 5 = 51 kartus didesnis už įprastą dažnį arba 5100 Hz. Dėl to laikmatis nutraukiamas kas 196 mus.

2 žingsnis: mechaninis darbas

Mechaninis darbas
Mechaninis darbas
Mechaninis darbas
Mechaninis darbas
Mechaninis darbas
Mechaninis darbas

Dovanoms gaminti naudoju pieno baltumo akrilinį plastiką, o likusiam laikui-MDF. Kad įjungus šviesos diodą pakuotėje nematytumėte šviesos diodo formos, ant šviesos diodų uždėjau dangtelį, kuris išsklaido šviesos diodą. Šis dangtelis buvo iš kai kurių senų elektroninių žvakių, kurias turėjau, bet jūs taip pat galite sukurti dangtelį naudodami tą patį akrilinį plastiką. Nuotraukose matote, ką naudojau kaip įrangą ir medžiagą.

3 žingsnis: Elektronika

Elektronika
Elektronika
Elektronika
Elektronika
Elektronika
Elektronika
Elektronika
Elektronika

Schemoje pavaizduoti jums reikalingi elektroniniai komponentai. Kaip minėta anksčiau, 5 šviesos diodai valdomi nepriklausomai, kai mėlynas šviesos diodas yra sujungtas. Kadangi PIC negali valdyti dviejų šviesos diodų viename prievado kaištyje, pridėjau tranzistorių, skirtą valdyti kombinuotus mėlynus šviesos diodus. Elektronika maitinama iš 3 AAA įkraunamų baterijų ir gali būti įjungta arba išjungta paspaudus atstatymo jungiklį.

Šiam projektui jums reikalingi šie elektroniniai komponentai:

  • 1 PIC mikrovaldiklis 12F617 su lizdu
  • 2 keraminiai kondensatoriai: 2 * 100nF
  • Rezistoriai: 1 * 33k, 1 * 4k7, 2 * 68 omai, 4 * 22 omai
  • 2 RGB šviesos diodai, didelis ryškumas
  • 1 BC557 tranzistorius arba lygiavertis
  • 1 mygtuko jungiklis

Galite sukurti grandinę ant duonos lentos ir nereikalauja daug vietos, kaip matyti paveikslėlyje. Jums gali kilti klausimas, kodėl rezistoriaus vertės, skirtos maksimaliai srovei valdyti per šviesos diodus, yra tokios mažos. Taip yra dėl žemos 3,6 voltų maitinimo įtampos kartu su įtampos kritimu, kurį turi kiekvienas šviesos diodas, kuris priklauso nuo šviesos diodo spalvos, taip pat žr. „Wikepedia“. Dėl rezistorių verčių didžiausia srovė yra apie 15 mA vienam šviesos diodui, kai maksimali visos sistemos srovė yra apie 30 mA.

4 žingsnis: programinė įranga

Programinė įranga atlieka šias užduotis:

Kai prietaisas iš naujo nustatomas mygtuku, jis įjungia įrenginį, jei jis buvo išjungtas, arba išjungia įrenginį, jei jis buvo įjungtas. Išjungta reiškia PIC12F617 įjungimą į miego režimą, kuriame jis beveik nevartoja jokios energijos.

Sukurkite PWM signalą, kad valdytumėte šviesos diodų ryškumą. Tai atliekama naudojant laikmatį ir pertraukos aptarnavimo tvarką, kuri valdo PIC12F617 kaiščius, kurie įjungia ir išjungia šviesos diodus.

Įjunkite ir išjunkite šviesos diodus ir laikykite juos įjungtus atsitiktine tvarka nuo 3 iki 20 sekundžių. Jei atsitiktinis laikas yra lygus 10 sekundžių, abu šviesos diodai mirksi 10 sekundžių, po to naudojamas įprastas raudonai žalios spalvos išblukimo ir išblukimo modelis.

Eksploatacijos metu PIC matuos maitinimo įtampą naudodamas įmontuotą analoginį-skaitmeninį keitiklį (ADC). Kai ši įtampa nukris žemiau 3,0 V, ji išjungs šviesos diodus ir vėl įjungs PIC į miego režimą. PIC vis dar gali gerai veikti esant 3,0 V įtampai, tačiau nėra gerai, kad įkraunamos baterijos būtų visiškai išsekusios.

Kaip minėta anksčiau, PWM signalas sukuriamas naudojant laikmatį, kuris naudoja pertraukimo paslaugų rutiną, kad išlaikytų stabilų PWM signalą. Šviesos diodų išblukimą ir išblukimą, įskaitant šviesos diodų įjungimo laiką, valdo pagrindinė programa. Ši pagrindinė programa naudoja 40 milisekundžių laikmačio varnelę, gautą iš to paties laikmačio, kuris sukuria PWM signalą.

Kadangi šiam projektui nenaudojau jokių konkrečių JAL bibliotekų, šį kartą turėjau sukurti atsitiktinį generatorių, naudojant linijinio grįžtamojo ryšio poslinkio registrą, kad būtų sukurtas šviesos diodų atsitiktinis ir atsitiktinis išjungimo laikas.

5 žingsnis: galutinis rezultatas

Image
Image
Galutinis rezultatas
Galutinis rezultatas

Yra 2 vaizdo įrašai, rodantys tarpinį rezultatą. Mano žmonai vis tiek reikia pakeisti kubelius į tikras dovanas. Viename vaizdo įraše rodomas rezultatas iš arti, o kitame vaizdo įraše - originali dovana, kuri paskatino šį projektą.

Kaip jūs galite tikėtis, kai manote, kad baigėte, pasirodo nauji reikalavimai. Mano žmona klausė, ar šviesos diodų ryškumas taip pat gali skirtis po to, kai jie išnyks. Žinoma, tai įmanoma, nes aš sunaudojau tik apie pusę programos PIC12F617 atminties.

Pridedamas JAL šaltinio failas ir „Intel Hex“failas PIC programavimui. Jei jus domina PIC mikrovaldiklio naudojimas su JAL - Paskalio tipo programavimo kalba - apsilankykite JAL svetainėje.

Smagiai sukurkite šią instrukciją ir laukite jūsų reakcijos bei rezultatų.

Rekomenduojamas: