Latar Belakang:
Saya seorang Insinyur Sipil yang berspesialisasi dalam perangkat kontrol lalu lintas dan saya memiliki proyek hobi kecil untuk membangun sistem lampu lalu lintas model skala. Saya dapat mengelola dan mengendalikan pemrograman pola lampu lalu lintas saya sendiri menggunakan Raspberry Pi (ditambah ini memberi saya kemampuan untuk menerapkan kontrol dinamis dan terprogram, dan antarmuka dengan skema kontrol lalu lintas yang serius dan mungkin data lalu lintas nyata). Saya hanya butuh bantuan dengan memasang banyak LED di sisi perangkat keras :)
Saya mengikuti tutorial ini http://www.raspberrypi-spy.co.uk/2012/06/control-led- using-gpio-output-pin/ baik-baik saja (termasuk menggunakan sumber daya eksternal, bukan Pin 2), tetapi Saya mungkin akan mengalami masalah koneksi GPIO terlalu sedikit untuk semua lampu lalu lintas.
Selanjutnya saya mencoba multiplexing dengan LED Matrix http://www.appelsiini.net/2011/how-does-led-matrix-work . Multiplexing bekerja, bagaimanapun, lampu biasanya redup, saya ragu ini akan berskala baik, dan ini cenderung memperbesar kompleksitas kontrol.
Pertanyaan inti:
Kurang mendapatkan kartu ekspansi pada Raspberry Pi, apakah ada trik lain yang bisa saya gunakan untuk mengontrol beberapa LED dengan lebih sedikit sinyal 0/1?
Satu hal tentang lampu lalu lintas adalah bahwa mereka biasanya datang dalam blok tiga, hanya satu yang pernah aktif pada suatu waktu. Apakah ada beberapa rangkaian yang relatif sederhana di luar sana yang akan memungkinkan saya untuk 'beralih' blok LED menggunakan sinyal 0/1 tunggal?
sumber
Jawaban:
Apakah Anda terbiasa dengan register geser seperti 74HC595? Dibutuhkan 3 pin dari RPI Anda dan Anda dapat mengontrol 8 jalur output. Anda dapat dengan mudah membuat mereka secara efektif mengendalikan garis keluaran n × 8.
Data secara serial dimasukkan ke register geser dan setelah semua 8 bit output ditransfer, Anda menempelkan bit ke output.
Saya akan menambahkan datasheet di sini, tetapi https://www.sparkfun.com/products/733 menunjukkan video yang bagus dan juga memiliki tautan ke datasheet.
sumber
Shift register karena jippie menyarankan berfungsi dengan baik. Tapi, multiplexing juga bisa dibuat bekerja untuk lebih banyak LED daripada yang Anda harapkan. Solusi untuk mengurangi kecerahan adalah dengan meningkatkan arus puncak sehingga arus rata-rata tetap sama. Anda dapat melakukan ini dengan meningkatkan tegangan atau mengurangi resistor pembatas arus.
Alasan arus berlebih merusak LED adalah karena sambungannya terlalu panas. Jika diberi waktu untuk mendinginkan di antara pulsa, pulsa bisa lebih kuat. Lembar data untuk LED Anda harus menentukan arus rata-rata maksimum, dan arus puncak maksimum yang tidak boleh dilampaui. Jika Anda tidak terlalu khawatir tentang keandalan yang tinggi (proyek hobi, bukan kapal ruang angkasa) dan Anda tidak keberatan merokok beberapa LED atau sedikit membengkokkan aturan, Anda selalu dapat menguji batasnya sendiri.
Juga, cari di charlieplexing cara untuk multiplex lebih banyak LED dari jumlah pin yang lebih kecil. Batas atas berapa banyak LED yang dapat dihubungkan dengan metode ini biasanya kecerahan dapat dicapai dengan arus yang tersedia dari pin GPIO, bukan jumlah pin.
Bacaan lebih lanjut: Apakah mengeluarkan LED pada arus yang lebih tinggi menghasilkan kecerahan yang lebih jelas?
sumber
Gunakan USB atau Ethernet untuk mengontrol lampu melalui papan relai yang menempel seperti ini
http://www.robot-electronics.co.uk/acatalog/Relay_Modules.html
Saya telah menggunakan papan ini untuk aplikasi lain dan sangat bagus
sumber