Аттиниядан жалынсыз шам 13: 4 қадам
Аттиниядан жалынсыз шам 13: 4 қадам
Anonim

Маған ұялы шамдарды жағу керек, бірақ мен биыл қарапайым шамнан жақсы нәрсені алғым келді. Мен жыпылықтағым келеді, бірақ мен жалыннан құтылғым келеді. Кез келген өрт қауіпті, әсіресе балалардың айналасында, күйдірілген еріген асқабақтар сасып кетеді, ал тұрақты шамдарды жиі ауыстыру қажет. Мен көшіру үшін жобаны іздедім, бірақ маған ұнағанын таба алмадым, сондықтан мен оны өзім жасадым. Менің тұжырымдаманың бастапқы дәлелі arduino болды, бірақ бұл қарапайым шам үшін сәл қымбат. Мен бұл жұмыс істейтінін дәлелдегеннен кейін, мен оны қалай арзан жасаудың жолын таптым. Міне, мен оны қолымдағы заттардан жасадым. Менің бірінші схемам және менің бірінші нұсқаулық.

1 -қадам: Бөлшектер

Мен қолда барды қолдандым. Бұл 1) ATtiny13 x12) Қызыл жарық x13) Сары жарық x14) 100 Ом резисторлары x25) 8 істікшелі розетка x16) саңылау қосқышы арқылы x17) 2AA аккумуляторлық ұстағыш x18) тақта резисторлары сіздің шамдарыңызға байланысты өзгеруі мүмкін. Мүмкін, меннен жақсы қосқышты табуға болады, егер сіз қаласаңыз, тақтаны өткізіп жіберіп, оны өшірілген қатемен байланыстыруға болады.

2 -қадам: Цикл

Менің негізгі схемам, оны осылай жалғаңыз.

3 -қадам: Кодекс

Міне, мен қолданған код. Мен тек шамдарды жыпылықтаймын және оған кездейсоқтық қосуға тырысамын. Код pwm мен қуатты үнемдеу мүмкіндіктерін пайдалану арқылы жақсы болуы мүмкін, бірақ мен мұны қалай істеу керектігін білмеймін. Менің бірінші емес arduino схемасы және менің бірінші нұсқаулық. Мен қалай істегеніме қарамастан, екі светодиодтың әсері қанағаттанарлық. Әр түрлі жарықтық, түс және жыпылықтау. Кішкене13 -ке кодты құрастырыңыз және жүктеңіз, сонда сіз жақсы боласыз. Жақсы кодты жіберуге болады …#include int main (void) {int thePin = 0x0; ұзақ рандВал; srandom (123); // кездейсоқ тұқым DDRB = 0x3; // B0-1 (;;) {randVal = random () үшін шығуға орнатылды; // түйреуішті таңдаңыз, егер ((randVal % 2) == 0) {thePin = 0x0; } басқа {thePin = 0x1; } randVal = кездейсоқ (); // жоғары немесе төмен, егер ((randVal % 2) == 0) {PORTB & = ~ (1 << thePin); // x & = ~ (1 << n); n -ші бит битін 0. барлық қалған биттерді жалғыз қалдырады. } else {PORTB | = (1 << thePin); // x | = (1 << n); x -тың n -битін 1. болуға мәжбүрлейді. }}}

4 -қадам: Бұл сол

Жарықты тарату үшін светодиодты құммен немесе аязды жарықдиодты қолдану арқылы, екі түсті қызыл/сары түсті жарықдиодты қолдануға болады. Оны жабыспайтын етіп сөмкеге салыңыз да, оны асқабаққа тастаңыз. шам, және ол бірнеше сағатқа созылады, және сіз онымен балалардың араласып кетуіне алаңдамайсыз.

Ұсынылған: