Turinys:

Keli elektroniniai žvakės: 3 žingsniai
Keli elektroniniai žvakės: 3 žingsniai

Video: Keli elektroniniai žvakės: 3 žingsniai

Video: Keli elektroniniai žvakės: 3 žingsniai
Video: НОЧЬЮ САМО ЗЛО ПРИХОДИТ В ЭТОТ ДОМ / AT NIGHT, EVIL ITSELF COMES TO THIS HOUSE 2024, Lapkritis
Anonim
Kelios elektroninės žvakės
Kelios elektroninės žvakės

Elektroninės žvakės buvo daug kartų paskelbtos „Instructables“, tad kodėl ši?

Namuose turiu šiuos mažus pusiau permatomus Kalėdų namelius, kuriuose yra šviesos diodų įžvalga ir maža baterija. Kai kuriuose namuose yra šviesos diodai su žvakės efektu, o kai kuriuose - tik šviečiantys šviesos diodai. Mažos baterijos gana greitai išsikrauna ir, kadangi norėjau visuose namuose turėti žvakių efektą, nusprendžiau padaryti tai PIC projektu. Žinoma, galite tai paversti ir „Arduino“projektu.

Taigi kuo ši elektroninė žvakė ypatinga? Visi „PIC“ir „Arduino“turi pulso pločio moduliacijos (PWM) aparatūrą, kuri gali būti naudojama žvakės efektui sukurti naudojant šviesos diodą, tačiau mano atveju norėjau turėti 5 nepriklausomas elektronines žvakes, naudojant vieną valdiklį, bet bent jau to nėra kad aš žinau. Sprendimas, kurį naudojau, yra visiškai sukurti šiuos penkis nepriklausomus PWM signalus programinėje įrangoje.

1 žingsnis: impulsų pločio moduliavimas programinėje įrangoje

Impulso pločio moduliacija buvo aprašyta kelis kartus, pvz. šiame „Arduino“straipsnyje:

„PIC“ir „Arduino“turi specialią PWM aparatinę įrangą, kuri palengvina šio PWM signalo generavimą. Jei norime programinėje įrangoje pateikti vieną ar daugiau PWM signalų, mums reikia dviejų laikmačių:

  1. Vienas laikmatis, naudojamas PWM dažniui generuoti
  2. Vienas laikmatis, naudojamas PWM darbo ciklui generuoti

Abu laikmačiai sukuria ir nutraukia, kai baigiami, todėl PWM signalas tvarkomas visiškai pertraukiant. PWM dažniui naudoju PIC laikmatį 0 ir leiskite jam perpildyti. Esant 8 MHz vidiniam osciliatoriaus laikrodžiui ir 64 skalėms, formulė yra tokia: Fosc / 4 /256 /64 = 2.000.000 / 256 /64 = 122 Hz arba 8, 2 ms. Dažnis turi būti pakankamai didelis, kad žmogaus akis negalėtų jo aptikti. Tam pakanka 122 Hz dažnio. Vienintelis dalykas, kurį daro ši laikmačio pertraukimo tvarka, yra kopijuoti naujo PWM ciklo darbo ciklą ir įjungti visus šviesos diodus. Tai daroma visiems 5 šviesos diodams atskirai.

Laikmačio, skirto PWM darbo ciklui valdyti, vertė priklauso nuo to, kaip sukuriame žvakės efektą. Savo požiūriu aš imituoju šį efektą, padidindamas veikimo ciklą 3 verte, kad padidintumėte šviesos diodo ryškumą, ir sumažinkite jį 25 reikšme, kad sumažintumėte šviesos diodo ryškumą. Tokiu būdu jūs gaunate žvakės efektą. Kadangi naudoju minimalią 3 reikšmę, viso darbo ciklo valdymas vienu baitu yra 255/3 = 85. Tai reiškia, kad PWM darbo ciklo laikmatis turi veikti 85 kartus dažniau nei PWM dažnio laikmatis, kuris yra 85 * 122 = 10,370 Hz.

PWM darbo ciklui naudoju 2 PIC laikmatį. Tai laikmatis su automatiniu perkrovimu ir naudoja šią formulę: Periodas = (iš naujo įkelti + 1) * 4 * „Tosc“* „Timer2“išankstinės skalės vertė. Kai perkrovimas yra 191 ir išankstinė skalė 1, gauname (191 + 1) * 4 * 1/8.000.000 * 1 = 96 mus arba 10.416 Hz laikotarpį. PWM darbo ciklas nutraukia įprastinius patikrinimus, jei darbo ciklas praėjo, ir išjungia šviesos diodą, kurio darbo ciklas baigtas. Jei darbo ciklas nepraeina, jis sumažina darbo ciklo skaitiklį su 3 ir užbaigia įprastą. Tai daroma visiems šviesos diodams atskirai. Mano atveju ši pertraukimo rutina užtrunka apie 25 mus ir, kadangi ji vadinama kas 96 mus, jau 26% centrinio procesoriaus sunaudojama programinės įrangos PWM darbo ciklui valdyti.

2 žingsnis: Aparatūra ir reikalingi komponentai

Aparatūra ir reikalingi komponentai
Aparatūra ir reikalingi komponentai

Schema parodo galutinį rezultatą. Nors savarankiškai valdau tik 5 šviesos diodus, pridėjau 6 -ąjį šviesos diodą, kuris veikia kartu su vienu iš 5 kitų šviesos diodų. Kadangi PIC negali valdyti dviejų šviesos diodų viename prievado kaištyje, pridėjau tranzistorių. Elektronika maitinama iš 6 voltų / 100 mA nuolatinės srovės adapterio ir naudoja žemo kritimo įtampos reguliatorių, kad sukurtų stabilų 5 voltų įtampą.

Šiam projektui jums reikia šių komponentų:

  • 1 PIC mikrovaldiklis 12F615
  • 2 keraminiai kondensatoriai: 2 * 100nF
  • Rezistoriai: 1 * 33k, 6 * 120 Ohm, 1 * 4k7
  • 6 oranžinės arba geltonos spalvos šviesos diodai, didelis ryškumas
  • 1 BC557 tranzistorius arba lygiavertis
  • 1 elektrolitinis kondensatorius 100 uF / 16 V
  • 1 žemo kritimo įtampos reguliatorius LP2950Z

Galite sukurti grandinę ant duonos lentos ir nereikalauja daug vietos, kaip matyti paveikslėlyje.

3 žingsnis: likusi programinė įranga ir rezultatas

Likusi programinės įrangos dalis yra pagrindinė kilpa. Pagrindinė kilpa padidina arba sumažina šviesos diodų ryškumą, atsitiktinai pakoreguodama darbo ciklą. Kadangi mes didiname tik esant 3 reikšmei ir mažėjame, kai vertė yra 25, turime įsitikinti, kad sumažėjimai neįvyksta taip dažnai, kaip padidėjimai.

Kadangi nenaudojau jokių bibliotekų, turėjau sukurti atsitiktinį generatorių, naudojant linijinio grįžtamojo ryšio poslinkio registrą, žr.

en.wikipedia.org/wiki/Linear-feedback_shif…

Žvakės efektui įtakos turi tai, kaip greitai keičiamas PWM darbo ciklas, todėl pagrindinė kilpa naudoja apie 10 ms delsą. Šį laiką galite pakoreguoti, kad pakeistumėte žvakės efektą pagal savo poreikius.

Pridedamame vaizdo įraše parodytas galutinis rezultatas, kai efektui pagerinti naudoju dangtelį virš šviesos diodo.

Aš naudoju JAL kaip šio projekto programavimo kalbą ir pridėjau šaltinio failą.

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

Rekomenduojamas: