Lampu berjalan do-it-yourself. Lampu berjalan DIY pada LED - sirkuit pada mikrokontroler ATtiny2313

Salah satu opsi untuk menggunakan sumber cahaya solid-state untuk tujuan dekoratif adalah lampu berjalan LED. Ada banyak cara untuk membuat perangkat sederhana ini. Mari kita lihat beberapa di antaranya.

Skema paling sederhana dari lampu berjalan untuk 12 volt

Di Internet, sirkuit "kuno" sederhana yang paling umum menggunakan penghitung dan generator (Gambar 1).

Gambar 1

Pengoperasian rangkaian ini sangat sederhana dan mudah. Generator dibangun berdasarkan timer pulsa, dan penghitung melakukan fungsi utamanya - menghitung pulsa dan menghasilkan level logika yang sesuai pada outputnya. LED terhubung ke output, yang menyala ketika unit logis muncul dan, karenanya, padam pada nol, sehingga menciptakan efek lampu yang menyala. Kecepatan switching tergantung pada frekuensi generator, yang pada gilirannya tergantung pada nilai resistor R1 dan kapasitor C1.

Nama-nama sirkuit mikro adalah Soviet, tetapi mereka memiliki rekanan impor yang tersedia. Jika perlu untuk meningkatkan, maka untuk meningkatkan arus, Anda harus menghubungkannya melalui transistor penyangga, karena keluaran meteran itu sendiri memiliki kapasitas beban yang agak sederhana.

Kami menghubungkan "otak"

Untuk mendapatkan efek yang lebih kompleks, rangkaian harus dibangun di atas mikrokontroler (selanjutnya disebut MC). Meskipun ada banyak rangkaian lampu berjalan pada mikrokontroler di Internet, dibangun di atas logika biasa, menerapkan urutan pencahayaan LED yang berbeda, penggunaannya tidak dapat dibenarkan dan tidak praktis akhir-akhir ini.

Sirkuit lebih rumit dan lebih mahal. MK juga memungkinkan Anda untuk secara fleksibel mengontrol masing-masing LED atau grupnya, menyimpan dalam memori banyak program efek pencahayaan dan, jika perlu, menggantinya sesuai dengan urutan yang telah ditentukan atau dengan perintah eksternal (misalnya, dari tombol). Dalam hal ini, skemanya ternyata sangat kompak dan agak murah.

Mari kita perhatikan prinsip dasar membangun rangkaian lampu berjalan pada LED menggunakan mikrokontroler.

Misalnya, ambil ATtiny2313, MCU 8-bit yang harganya sekitar $1. Rangkaian paling sederhana dapat diimplementasikan dengan menghubungkan langsung LED ke pin I/O (Gambar 2). Pin MK ini mampu mengalirkan arus hingga 20mA, yang lebih dari cukup untuk LED indikator.

Nilai arus yang diperlukan diatur oleh resistor yang dihubungkan secara seri dengan dioda. Nilai arus dihitung dengan rumus I = (U pit -U LED) / R. Catu daya dan rangkaian reset MC tidak ditunjukkan pada gambar agar tidak mengacaukan rangkaian. Sirkuit ini standar dan dibuat sesuai dengan rekomendasi pabrikan di Lembar Data. Jika Anda perlu mengatur interval waktu secara akurat (durasi penyalaan LED individu atau siklus penuh), Anda dapat menggunakan resonator kuarsa yang terhubung ke pin 4 dan 5 MK.

Jika tidak ada kebutuhan seperti itu, Anda dapat menggunakan osilator RC built-in, dan menetapkan pin yang dikosongkan sebagai output standar dan menghubungkan beberapa LED lagi. Jumlah maksimum LED yang dapat dihubungkan ke MK ini adalah 17 (Gambar 2 menunjukkan varian penyambungan 10 LED). Tetapi lebih baik meninggalkan satu atau dua output untuk tombol kontrol sehingga Anda dapat mengganti mode tembakan.

Gambar 2

Itu saja yang ada pada perangkat kerasnya. Maka itu semua tergantung pada perangkat lunak. Algoritma bisa apa saja. Misalnya, Anda dapat menulis beberapa mode ke dalam memori dan menyesuaikan interval pengulangan masing-masing, atau menghubungkan dua tombol: satu untuk beralih mode, yang lain untuk menyesuaikan kecepatan. Menulis program semacam itu adalah tugas yang cukup sederhana bahkan untuk orang yang belum pernah bekerja dengan MK sebelumnya, tetapi jika Anda terlalu malas atau tidak punya waktu untuk belajar pemrograman, dan Anda benar-benar ingin "menghidupkan kembali" nyala api pada LED, Anda selalu dapat mengunduh perangkat lunak yang sudah jadi.

Membuat strip LED yang berjalan adalah penggunaan sumber cahaya dekoratif yang bagus. Sangat mudah untuk membuat api yang menyala dengan tangan Anda sendiri, terutama karena, sebagai hasilnya, produk dapat memiliki efek yang berbeda, termasuk memudarnya cahaya dan operasi elemen yang bergantian.

Mikrokontroler ATtiny2313 untuk lampu berjalan

Perangkat ini termasuk dalam rangkaian mikrokontroler AVR merek Atmel. Di bawah kendalinya, strip lampu berjalan paling sering dibuat, karena karakteristik operasional modelnya cukup tinggi. Mikrokontroler mudah diprogram, multifungsi dan mendukung implementasi berbagai perangkat elektronik.

ATtiny2313 memiliki desain sederhana di mana port untuk output dan input memiliki arti yang sama. Sangat mudah untuk memilih program (salah satu dari 12) pada mikrokontroler seperti itu, karena tidak kelebihan beban dengan opsi yang tidak perlu. Model ini tersedia dalam dua kasus - SOIC dan PDIP, dan setiap versi memiliki karakteristik yang identik:

  • 32 register umum 8-bit;
  • kemungkinan 120 operasi per siklus clock;
  • memori flash di dalam sistem untuk 2 kB dengan dukungan untuk 10 ribu siklus hapus dan tulis;
  • EEPROM dalam sistem untuk 128 byte dengan dukungan untuk 100 ribu siklus;
  • 128 byte RAM internal;
  • 4 saluran PWM;
  • penghitung waktu untuk 8 dan 16 bit;
  • generator bawaan;
  • antarmuka yang ramah pengguna dan fungsi lainnya.

Mikrokontroler memiliki dua jenis sesuai dengan parameter energinya:

  • model ATtiny2313 klasik memiliki tegangan dari 2,7 hingga 5,5 V dan kekuatan arus hingga 300 A pada frekuensi 1 MHz dalam mode aktif;
  • ATtiny2313A versi (4313) memiliki karakteristik 1,8-5,5 V dan 190 A pada frekuensi yang sama.

Dalam mode siaga, perangkat memiliki konsumsi daya kurang dari 1 A.

Seperti yang telah disebutkan, memori mikrokontroler dilengkapi dengan 11 kombinasi skema cahaya, dan kemampuan untuk memilih semua kombinasi LED secara berurutan - ini adalah program ke-12.

Skema lampu berjalan dan prinsip operasinya

Skema lampu berjalan yang dibuat pada LED didasarkan pada penempatan mikrokontroler di tengah. Semua port outputnya terhubung ke LED:

  • port B atau PB0-PB7 sepenuhnya digunakan untuk kontrol cahaya;
  • maksimum tiga pin dari port D (PD4-PD6) digunakan;
  • PA0 dan PA1 juga berfungsi, karena mereka bebas karena osilator internal yang diterapkan.

Pin # 1 - PA2 atau Reset - bukan tautan aktif di sirkuit, jadi resistor R1 terhubung ke sirkuit daya ATtiny2313. Bagian positif dari suplai 5V masuk ke pin # 20 - VCC, dan bagian negatif - # 10 (GND). Kapasitor kutub C1 dipasang untuk mencegah malfungsi dan menekan gangguan dalam pengoperasian MK.

Mempertimbangkan bahwa setiap pin memiliki kapasitas beban yang rendah, disarankan untuk memasang LED dengan peringkat hingga 20 mA.

Baik smd3258 klasik dan LED kecerahan tinggi dalam paket DIP cocok. Secara total, seharusnya ada 13 dari mereka. Fungsi pembatas arus ditetapkan ke resistor R6-R18.

Pengoperasian rangkaian dikendalikan melalui sakelar SA1, tombol SB1-SB3 dan input digital PD0-PD3, yang dihubungkan melalui resistor R2, R3, R6 dan R7. Desain ini memungkinkan Anda untuk menyalakan kedipan LED dalam 11 mode berbeda, mengatur program tertentu dengan tombol SB3. Dan dengan sakelar SA1, kecepatan kedipan berubah. Untuk ini:

  1. SA1 dipindahkan ke posisi tertutup.
  2. Kecepatan diubah dengan tombol SB1 (percepatan) dan SB2 (perlambatan).

Harap dicatat bahwa ketika Anda membuka sakelar dengan tombol-tombol ini, kecerahan LED berubah dari kedipan yang nyaris tidak terlihat menjadi daya maksimum.

Opsi pembuatan

Ada dua opsi yang terjangkau dan relatif sederhana untuk merakit lampu berjalan: pada papan sirkuit tercetak atau papan tempat memotong roti. Dalam kedua kasus, disarankan untuk mengambil rangkaian dalam paket PDIP pada soket DIP-20 sebagai dasar. Dalam hal ini, komponen lainnya juga harus ada dalam paket DIP.

Saat merakit di papan tempat memotong roti, model 50 × 50 mm dengan pitch 2,5 mm sudah cukup. LED dapat ditempatkan tidak hanya di papan itu sendiri, tetapi juga di jalur eksternal, menghubungkannya ke sirkuit menggunakan kabel fleksibel.

Papan sirkuit cetak mini adalah pilihan yang lebih praktis untuk kasus-kasus ketika lampu berjalan do-it-yourself pada LED dibuat untuk operasi lebih lanjut yang aktif.

Misalnya saat dipasang di sepeda atau mobil. Dalam hal ini, Anda memerlukan komponen berikut:

  • textolite satu sisi 55 × 55 mm;
  • kapasitor 100 F-6.3V;
  • DD1 - Attine 2313;
  • resistor 10 kOhm-0,25 W ± 5% (R1);
  • 17 resistor 1 kOhm-0,25 W ± 5% (R2-R18);
  • 13 LED dengan diameter 3 mm (warna tidak penting);
  • 3 tombol KLS7-TS6601 atau setara (SB1-SB3);
  • sakelar geser ESP1010 (SA1).

Untuk amatir radio dengan pengalaman praktis dalam merakit papan sirkuit tercetak, lebih baik menggunakan Attine2313 SOIC dengan resistor SMD untuk sirkuit ini. Karena ini, dimensi keseluruhan sirkuit akan berkurang hampir setengahnya. Anda juga dapat memasang LED SMD super terang sebagai unit terpisah.

Rangkaian lampu berjalan 12 volt ini dikenal luas di jaringan, karena memiliki desain yang sangat sederhana dan lugas. Generator mode adalah pengatur waktu impuls, dan penghitung, menghitungnya, memberi makan level logika yang sesuai ke output. Elemen LED yang terhubung ke setiap output menyala pada logika tinggi dan padam pada nol. Efek lampu yang menyala dibuat oleh kedipan yang berurutan. Kecepatan "berjalan" diatur oleh generator, yang operasinya dikendalikan oleh parameter nominal kapasitor C1 dan resistor R1.

Kecerahan LED ditingkatkan dengan meningkatkan arus yang dipasok, tetapi untuk ini mereka harus dihubungkan melalui transistor penyangga. Faktanya adalah output penghitung tidak memiliki kapasitas beban yang tinggi.

Diagram lama ini menunjukkan penunjukan komponen dan sirkuit mikro Soviet, tetapi saat ini tidak sulit untuk menemukan analog produksi asing yang sesuai dengannya.

Firmware

Skema lampu berjalan buatan rumah pada LED yang diberikan dalam artikel ini dibangun di atas skema yang agak populer. Memori program berisi hingga 12 program dengan berbagai efek pencahayaan, yang dapat dipilih sesuka hati. Ini adalah api yang menyala, bayangan yang berjalan, api yang tumbuh, dan seterusnya.

Mesin efek cahaya otomatis ini memungkinkan Anda untuk mengontrol tiga belas LED, yang terhubung melalui resistor pembatas arus langsung ke port mikrokontroler ATtiny2313. Seperti disebutkan di atas, 11 kombinasi pola cahaya independen yang berbeda dilindungi dalam memori mikrokontroler, dan itu adalah juga memungkinkan untuk secara berurutan menghitung semua kombinasi 11. sudah akan ada program ke-12.

Tombol SA3 memungkinkan Anda untuk beralih antar program.

Dengan menggunakan tombol SA1 dan SA2, Anda dapat mengontrol kecepatan pergerakan lampu atau frekuensi kedipan setiap LED (dari cahaya konstan hingga sedikit berkedip). Itu semua tergantung pada posisi sakelar SA4. Ketika sakelar SA4 berada di posisi atas sesuai dengan skema, kecepatan lampu yang menyala disesuaikan, dan di bawah, frekuensi berkedip.

Saat memasang LED dalam string, urutannya harus sama dengan nomor dalam diagram dari HL1 hingga HL11.

Mikrokontroler ATtiny2313 di-clock dari osilator internal dengan frekuensi 8 MHz.

Pekerjaan video: Lampu berjalan LED

(1.1 Mb, diunduh: 3 650)

Di sini kita akan berbicara tentang cara membuat lampu berjalan pada LED dengan tangan Anda sendiri. Rangkaian perangkat ini sederhana dan diimplementasikan pada chip logika yang disebut logika keras - chip seri TTL. Perangkat itu sendiri mencakup tiga sirkuit mikro.

Sirkuit ini terdiri dari empat node utama:

    generator pulsa persegi panjang;

    menangkal;

    dekoder;

    perangkat indikasi (16 LED).

Berikut adalah diagram skema perangkat.

Perangkat bekerja sebagai berikut. Setelah daya diterapkan, LED HL1 - HL16 mulai menyala dan padam secara berurutan. Secara visual, terlihat seperti pergerakan cahaya dari kiri ke kanan (atau sebaliknya). Efek ini disebut "running fire".

Generator pulsa persegi panjang diimplementasikan pada sirkuit mikro K155LA3... Hanya 3 elemen 2I-BUKAN dari sirkuit mikro ini yang terlibat. Dari output ke-8, pulsa persegi panjang dihilangkan. Frekuensi mereka rendah. Ini memungkinkan peralihan LED yang terlihat.

Faktanya, generator pada elemen DD1.1 - DD1.3 mengatur kecepatan pergantian LED, dan, akibatnya, kecepatan "api yang menyala". Jika diinginkan, kecepatan switching dapat disesuaikan dengan mengubah nilai resistor R1 dan C1.

Perlu diperingatkan bahwa dengan peringkat R1 dan C1 lainnya, pembangkitan mungkin terganggu - generator tidak akan berfungsi. Jadi, misalnya, generator menolak untuk bekerja dengan resistansi resistor R1 sama dengan 1 kOhm. Oleh karena itu, nilai C1 dan R1 hanya dapat diubah dalam batas-batas tertentu. Jika generator tidak menyala, maka salah satu LED HL1 - HL16 akan terus menyala.

Penghitung pada sirkuit mikro DD2 diperlukan untuk menghitung pulsa yang berasal dari generator dan memasok kode biner ke dekoder K155ID3. Menurut skema, kesimpulan 1 dan 12 dari sirkuit mikro penghitung K155IE5 terhubung. Dalam hal ini, sirkuit mikro akan menghitung yang masuk C1(pin 14) pulsa dan output pada output (1, 2, 4, 8) kode biner paralel yang sesuai dengan jumlah pulsa yang diterima dari 0 hingga 15. Yaitu, pada output (1, 2, 4, 8) Sirkuit mikro K155IE5 berturut-turut menggantikan satu sama lain 16 kombinasi kode (0000, 0001, 0010, 0011, 0100, dll.). Selanjutnya, decoder termasuk dalam pekerjaan.

Fitur chip K155ID3 terletak pada kenyataan bahwa ia mengubah kode empat bit biner menjadi tegangan nol logika, yang muncul pada salah satu dari 16 output yang sesuai (1-11, 13-17). Saya pikir penjelasan ini tidak jelas bagi semua orang. Mari kita coba mencari tahu.

Jika Anda memperhatikan gambar sirkuit mikro K155ID3, Anda akan melihat bahwa ia memiliki 16 output. Seperti yang Anda ketahui, 16 kombinasi dapat dikodekan dalam kode biner empat karakter. Ini tidak akan bekerja lagi. Ingatlah bahwa menggunakan kode biner empat digit, Anda dapat mengkodekan angka desimal dari 0 hingga 15 (total 16 digit).

Sangat mudah untuk memeriksa apakah Anda menaikkan 2 (basis sistem bilangan) ke pangkat 4 (jumlah digit atau angka dalam kode). Kita mendapatkan 2 4 = 16 kemungkinan kombinasi. Jadi, ketika kode biner memasuki input sirkuit mikro K155ID3 dalam kisaran dari 0000 sebelum 1111 di pintu keluar 0 - 15 nol logis akan muncul (LED akan menyala). Artinya, sirkuit mikro mengubah angka biner menjadi nol logis pada output, yang sesuai dengan angka biner. Sebenarnya, ini adalah dekoder khusus dari sistem biner ke desimal.

Mengapa LED menyala? Outputnya adalah nol logis. Diagram menunjukkan bahwa anoda dari semua LED terhubung ke plus dari catu daya, dan katoda ke output dari sirkuit mikro K155ID3. Jika outputnya "0", maka untuk LED itu seperti catu daya minus dan melaluinya p-n arus persimpangan mengalir - LED menyala. Jika outputnya adalah unit logis "1", maka arus yang melalui LED tidak akan mengalir.

Jika semua yang tertulis masih belum jelas bagi Anda, maka Anda tidak perlu marah. Cukup rakit sirkuit yang diusulkan, misalnya, pada papan tempat memotong roti tanpa solder dan nikmati pekerjaan perangkat. Sirkuit telah diverifikasi dan berfungsi dengan baik.

Jika Anda sudah memiliki catu daya yang stabil (misalnya, seperti ini) yang Anda inginkan, maka stabilizer integral DA1 ( KR142EN5A) dan elemen trim (C2, C3, C4) tidak perlu dipasang di sirkuit.

Semua peringkat elemen (kapasitor dan resistor) dapat bervariasi ± 20%... Ini tidak akan mempengaruhi pengoperasian perangkat. LED HL1 - HL16 dapat berwarna terang (merah, biru, hijau) dengan tegangan operasi 3 volt. Anda dapat, misalnya, menggunakan LED merah terang dengan diameter 10 milimeter. "Menjalankan api" dengan LED seperti itu akan terlihat sangat mengesankan.

Versi amatir radio pertama dari rangkaian lampu berjalan LED, dibangun di atas mikrokontroler ATtiny2313 yang sudah terbukti. Firmware berisi dua belas kemungkinan kombinasi dari berbagai efek pencahayaan, seperti lampu yang berubah dengan mulus, bayangan warna-warni, api yang membesar, dll. di bawah ini dianggap desain tanpa mikrokontroler, tetapi sudah pada basis elemen yang agak ketinggalan jaman.


Desain ini mampu menggerakkan tiga belas LED, yang terhubung melalui resistor pembatas arus langsung ke port mikrokontroler ATtiny2313.

Sakelar sakelar SA3 dapat digunakan untuk beralih di antara opsi yang memungkinkan untuk pengoperasian. Sakelar sakelar SA1 dan SA2 dapat digunakan untuk mengatur kecepatan lampu atau frekuensi kedipan setiap LED secara terpisah. Itu semua tergantung pada posisi sakelar sakelar SA4. Di posisi atas, itu menyesuaikan kecepatan lampu berjalan, dan di posisi bawah, frekuensi berkedip.

Saat memasang LED dalam satu garis, Anda harus mengikuti urutan seperti yang ditunjukkan pada gambar dari HL1 hingga HL11. Mikrokontroler ATtiny2313 di-clock dari osilator internal yang ada dengan frekuensi 8 MHz.

Dalam perangkat yang diusulkan, urutan pencahayaan karangan bunga untuk menciptakan efek dilakukan menggunakan tiga relai elektromagnetik dengan menggunakan nilai tegangan berbeda yang dipasok ke rangkaian belitannya.


Ketika tegangan suplai dari listrik diterapkan, itu disuplai ke belitan primer transformator jaringan T1, ke belitan sekunder di mana penyearah dihubungkan, dirakit sesuai dengan skema dengan penggandaan tegangan pada dioda VD1, VD2 dan kapasitor C2 , SZ. Tegangan efektif belitan sekunder transformator adalah 13,5 B. Oleh karena itu, tegangan yang diperbaiki sebagai hasil penggandaan ternyata sekitar 32 V. Pada keadaan awal, transistor VT1, terhubung dalam rangkaian dengan kolektor umum, terkunci, karena kapasitor C1 habis. Dalam hal ini, semua relai tidak diberi energi dan karangan bunga HL1 menyala.

Muatan dimulai, kapasitor C1. Saat kapasitor diisi, tegangan di atasnya dan pada emitor transistor meningkat. Ketika mencapai nilai di mana arus dalam kumparan relai hubung singkat melebihi arus operasi, kontak K3.1 akan beralih, lampu HL1 akan padam, dan lampu HL2 akan menyala. Peningkatan tegangan lebih lanjut pada emitor transistor mengarah pada pengoperasian relai K2, yang, dengan kontak K2.1, akan mematikan lampu HL2 dan menyalakan HL3. Akhirnya, peningkatan tegangan yang berkelanjutan mengarah pada pengoperasian relai K1, kontak di mana K1.1 melepaskan kapasitor C1.

Akibatnya, transistor terkunci, semua relai dimatikan, lampu HL1 menyala, dan kontak K1.1 dibuka. Kemudian kapasitor mulai mengisi lagi dan proses berulang. Kecepatan pengisian kapasitor dan pergerakan nyala api dapat dikendalikan oleh resistor variabel R2. Sebagai trafo jaringan, trafo keluaran pemindaian vertikal TVK-110LM dari TV hitam putih digunakan. Dari dua gulungan sekunder, satu dengan hambatan 1 ohm digunakan. Penulis menyarankan menggunakan relay elektromagnetik tipe RES9.

Namun, tidak ada relai jenis ini yang dirancang untuk sakelar 220 V AC (hanya 115). Karena itu, kami menyarankan Anda untuk memasang relai RES10, paspor RS4.524.302 (RS4.529.031-03 menurut GOST 16121-86). Arus aktuasi mereka adalah 22 mA dan hambatan belitan adalah 630 ohm. Dengan demikian, perangkat K3 akan beroperasi pada tegangan emitor VT113,9 V. Karena dimasukkannya resistor R4 dan R5, dua relai yang tersisa dipicu pada tegangan yang lebih tinggi pada emitor transistor. Relai K2 beroperasi pada tegangan 20,5 V, dan relai K1 - pada tegangan 23,3 V. Tegangan maksimum yang diizinkan pada belitan relai jenis ini adalah 36 V. memuat hingga 0,3 A. Oleh karena itu, setiap karangan bunga dapat dirakit dari 9 lampu pijar tipe MN26-0D2 yang dihubungkan secara seri, dirancang untuk tegangan nominal 26 V dan arus 0,12 A.

Desainnya adalah multivibrator yang terdiri dari tiga tahap. Pembukaan transistor dan penyalaan LED yang termasuk dalam sirkuitnya dilakukan secara berurutan satu demi satu.

Saat merakit perangkat, disarankan untuk memilih transistor dengan penguatan arus setinggi mungkin, dan kapasitor dengan kebocoran minimal.

Skema lampu berjalan pada sirkuit mikro K561LA7 dan K561IE8

Sirkuitnya cukup sederhana dan terdiri dari dua sirkuit mikro dan selusin LED, yang menyala secara bergantian.

Potensiometer R2 digunakan untuk mengatur kecepatan lampu berjalan.