Daftar Isi:

Lampu Lava Mini Terkendali USB: 9 Langkah
Lampu Lava Mini Terkendali USB: 9 Langkah

Video: Lampu Lava Mini Terkendali USB: 9 Langkah

Video: Lampu Lava Mini Terkendali USB: 9 Langkah
Video: Miniature Ultrasonic Humidifier - Mist Maker #shorts 2024, November
Anonim
Lampu Lava Mini Terkendali USB
Lampu Lava Mini Terkendali USB
Lampu Lava Mini Terkendali USB
Lampu Lava Mini Terkendali USB
Lampu Lava Mini Terkendali USB
Lampu Lava Mini Terkendali USB

Instruksi ini menjelaskan pembuatan satu set lampu lava bertenaga dan dikendalikan USB dari keyboard USB dan dua lampu lava USB Think Geek menggunakan rangkaian sakelar relai transistor sederhana yang digerakkan oleh LED keyboard. Ini menggambarkan cara sederhana untuk mengontrol hingga tiga sakelar latensi tinggi (hingga 120 volt, 0,5 amp) melalui koneksi USB, dengan jumlah uang minimal (0$ hingga 40$ tergantung pada koleksi sampah Anda), dan tanpa harus untuk memprogram driver kontrol serial USB atau mikrokontroler. Kemungkinan Anda juga dapat menggunakan tombol keyboard untuk menambahkan lebih dari 100 input yang akan mengetik karakter yang dapat digunakan untuk mengontrol suatu program (seperti yang dijelaskan oleh randofo dan oleh David Merrill, tetapi pendekatan ini tidak digunakan untuk proyek ini. Proyek ini disusun sebagai hadiah untuk teman saya Chris Lasher untuk memperingati kepindahannya dan memulai program pascasarjana di bidang bioinformatika. Chris akan melakukan banyak pemrograman, dan merupakan penganut Pragmatic / Agile Programing, salah satu prinsipnya adalah unit testing. unit test dari suatu program sedang berjalan, senang mengetahui apakah mereka berhasil atau gagal, dan mana yang dominan. Terkenal, beberapa programmer pragmatis membuat sistem umpan balik dengan mengendalikan lampu lava berukuran penuh dari kerangka pengujian unit dengan menghubungkan beberapa perangkat kontrol rumah yang tidak tersedia (harganya lebih dari $60). Lampu memungkinkan mereka untuk melihat apakah tes lulus atau gagal, dan pemanasan bertahap pada satu lampu memungkinkan mereka untuk melihat ts yang dominan. Ini adalah ide yang keren, tetapi saya ingin membuat Chris sesuatu yang: 1) akan mengontrol dua lampu lava kecil bertenaga USB, 2) akan dimatikan dari laptop baru Chris yang mewah, dan antarmuka melalui USB (tidak ada port lama pada komputer yang lebih baru, khususnya laptop), 3) akan sedikit lebih buatan sendiri dan ramah hacker, 4) akan lebih murah. Mengemudi relay dari USB ke port serial converter tampaknya menjadi solusi sederhana. Ada banyak sirkuit yang tersedia on-line untuk proyek kontrol port serial. Salah satu proyek luar biasa yang saya adaptasi adalah di https://www.windmeadow.com/node/4. Sayangnya, hampir semua perangkat USB ke serial tidak memungkinkan terjadinya bit banging tingkat rendah (pengalihan jalur kontrol secara manual) yang diperlukan untuk menggunakan sirkuit ini. Pendekatan lain adalah dengan membeli rangkaian antarmuka USB, atau membuatnya dari mikrokontroler. Either way, proyek akan memerlukan banyak kode mikrokontroler dan driver (bahkan menggunakan driver antarmuka manusia yang sudah ada sebelumnya atau pengontrol yang sudah dibuat sebelumnya). Saya memilih untuk menyelesaikan masalah ini dengan keyboard USB yang diselamatkan, karena harganya relatif murah, dan berisi semua yang diperlukan untuk tiga keluaran hidup/mati sederhana, dalam bentuk LED angka, huruf besar, dan kunci gulir. Di Linux ada sejumlah mekanisme untuk mengaktifkan LED Anda dari program atau baris perintah (salah satunya dirujuk di Cryptonomicon). Setled adalah yang paling sederhana, dan sudah diinstal sebelumnya di hampir semua mesin, ledd dibangun pada model client-server, dan bahkan ada modul dalam bahasa pemrograman Ruby. Windows dan Mac OS, dan bahasa pemrograman lainnya, harus memiliki mekanisme yang sebanding - posting di komentar jika Anda tahu cara mengaktifkan LED keyboard di OS atau bahasa pemrograman lain! Saya memberi Chris hadiahnya, dan sekarang dia tidak hanya dapat melihat apakah miliknya tes unit berlalu, semua programmer di departemen barunya dapat mengetahui betapa kerennya dia sebagai pembuat DIY.

Langkah 1: Daftar Bagian

2 lampu lava USB (dari Thinkgeek atau froogle ~$10 masing-masing)1 keyboard USB (keyboard apel juga memungkinkan Anda untuk menyelamatkan dua jack USB, membuat peretasan yang tercantum dalam langkah "soket USB orang miskin" tidak diperlukan)$0 untuk keyboard yang tergores dengan satu atau dua kunci mati, hingga $4 on-line (https://froogle.google.com/froogle?q=usb%20keyboard) hingga $30 dengan pembelian terbaik)2 relai sakelar buluh (Radio Shack #275-233 $3,00, Mouser #677-OMR-112H $1,54) semua komponen listrik lainnya hanya berharga beberapa dolar. 2 transistor (seperti 2N2222) (Radio Shack #276-1617, Mouser #511-2N2222A)2 resistor (Radio Shack #271-1124, Mouser #291-4.7k, pita kuning-ungu-merah-emas)4 dioda, sesuatu seperti 1N404 (Radio Shack #276-1103, Mouser #512-1N414B)1 saklar daya (SPST)sedikit kabel1 perfboard (Radio Shack #276-1395)1 Altoids karton tipis, selembar film transparansi/overhead Alat: besi solder dan / atau alat pembungkus kawat dan alat wiredremel atau alat tangan dan kesabaranbor dan bitsa digital multimeter spidol tajam dan hijauPengetahuan dan keterampilan:Pengetahuan dasar menyolder dan elektronik. Saya sangat merekomendasikan buku Forest Mimm jika Anda seorang pemula elektronik dan ingin mengetahui cara kerja sirkuit. Waktu: Proyek ini memakan waktu dua malam dan satu sore, termasuk pemecahan masalah.

Langkah 2: Pengeluaran Isi Keyboard

Penghapusan Isi Keyboard
Penghapusan Isi Keyboard
Penghapusan Isi Keyboard
Penghapusan Isi Keyboard
Penghapusan Isi Keyboard
Penghapusan Isi Keyboard

Pisahkan keyboard Anda setidak merusak mungkin. Keyboard yang saya miliki adalah keyboard USB multimedia Dynex, nomor model DX-MKB101. Saat Anda membongkar, berhati-hatilah agar tidak merusak kabel tipis yang sering digunakan. Anda akan melihat sesuatu seperti gambar kedua setelah membuka keyboard. Anda ingin menyelamatkan badan sirkuit dan papan dengan LED (seringkali pada papan sirkuit yang sama) dan kehilangan keyboard besar. Semoga Anda dapat melepaskan film plastik tipis yang berfungsi sebagai sakelar tombol untuk keyboard, atau dengan cara lain memotong sakelar keyboard tanpa merusak sirkuit utama. Saya harus memotong beberapa plastik untuk membebaskan papan, tetapi setelah selesai Anda harus dapat mencolokkan keyboard, membuatnya dikenali, dan mengaktifkan LED telanjang dengan tombol kunci keyboard fungsional lain yang dicolokkan ke komputer yang sama. Anda dapat memiliki beberapa keyboard, USB dan tidak, dicolokkan secara bersamaan dengan sebagian besar sistem operasi modern dan mereka akan saling memicu caps lock dan tombol kunci lainnya. Pada titik ini saya harus mengatakan bahwa adalah mungkin untuk merusak atau menghancurkan komputer Anda dengan mencolokkan sirkuit kosong ke dalamnya. Gunakan hati-hati dan lanjutkan dengan hati-hati. Jika Anda khawatir tes dengan hub USB murah. Di sisi lain, saya mencoba segala macam hal saat memecahkan masalah sirkuit ini, termasuk memasang kembali sirkuit hidup, dan laptop saya tetap tidak digoreng.

Langkah 3: Colokan Usb Orang Miskin

Colokan Usb Orang Miskin
Colokan Usb Orang Miskin
Colokan Usb Orang Miskin
Colokan Usb Orang Miskin

Saya tidak ingin menghancurkan colokan USB pada lampu lava sehingga dapat digunakan secara terpisah, dan agar pengontrol lampu lava USB bersifat modular (perangkat lain dapat digunakan dalam keadaan hidup dan mati sebagai pengganti lampu). Jika Anda membongkar keyboard apel pada langkah terakhir, Anda akan memiliki dua jack USB-A wanita yang dapat Anda gunakan, dan karenanya dapat melewati langkah ini. Anda juga dapat membeli jack USB-A wanita dari mouser atau jack cadangan dari hub USB cadangan. Namun saya memilih untuk menggunakan opsi yang murah dan sederhana - jack USB sederhana yang terbuat dari beberapa bungkus kawat bergaris (kawat tipis apa pun sudah cukup), sedikit papan berlubang, dan beberapa kertas dan film transparansi untuk isolasi. Cukup potong sedikit perfboard untuk masuk ke DALAM colokan USB, tambahkan kabel melalui lubang sehingga memasukkan steker tidak akan menariknya keluar dan akan memungkinkan mereka untuk menghubungi +5V dan konektor ground di steker (lihat pinout pada " Buat sirkuit" langkah untuk koneksi yang mana). Kemudian potong beberapa film transparansi untuk menutupi satu sisi papan sehingga kabel perfboard tidak akan korslet ke badan logam steker. Masukkan papan berinsulasi ini ke dalam colokan USB, dan konfirmasikan dengan multimeter Anda bahwa kabel membuat kontak yang baik dan tidak korslet. Ini adalah bagaimana lampu lava USB terhubung ke sirkuit. Untuk proyek ini, buat dua colokan orang malang ini saling berhadapan pada papan perf yang sama (lihat gambar). Selama langkah perakitan, Anda akan melihat bagaimana casing menahan kedua colokan USB pada konektor ini.

Langkah 4: Potong Enclosure dan Perfboard

Potong Enclosure dan Perfboard
Potong Enclosure dan Perfboard
Potong Enclosure dan Perfboard
Potong Enclosure dan Perfboard

Cari tahu tata letak proyek Anda di dalam enklosurnya. Saya menggunakan kaleng Altoids yang populer. Bor lubang di bagian belakang kaleng Altoids untuk sakelar SPST on/off besar, satu di depan untuk kabel USB keyboard, dan dua lubang di samping untuk colokan lampu lava USB. Potong celah lubang kunci dengan roda pemotong dremel atau gergaji tangan ke bawah ke lubang depan dan samping sehingga kabel USB dapat masuk (lihat gambar). Garis lubang dengan lakban untuk mencegah pemotongan kabel. Tentukan bentuk perfboard Anda untuk sirkuit Anda dan potong bentuk itu dengan alat dremel. Ini akan menjadi fit yang cukup ketat…

Langkah 5: Buat Sirkuit

Buat Sirkuit
Buat Sirkuit
Buat Sirkuit
Buat Sirkuit
Buat Sirkuit
Buat Sirkuit

Inti dari proyek ini hanyalah menggunakan perangkat lunak untuk mengaktifkan LED keyboard, dan membajak LED untuk mengganti arus yang lebih besar. Saya harus menyebutkan di sini bahwa beberapa LED dinyalakan dengan menerapkan tegangan positif ke anoda, sementara sirkuit lain (seperti yang ada di keyboard ini) mengapungkan anoda LED tinggi (sehingga LED mati) dan mengikat katoda LED ke ground saat diaktifkan (pull-down switching). Anda bisa memodifikasi sirkuit ini untuk bekerja dengan baik, tapi saya akan diagram metode tie-down negatif. LED dimatikan (diset tinggi) menyalakan sakelar transistor, yang menutup relai, dan akhirnya lampu lava diaktifkan. Ini berarti bahwa sakelar perangkat lunak untuk lampu akan dibalik dari LED. Saya mengadaptasi rangkaian dari windmeadow, tetapi ini didasarkan pada sakelar transistor sederhana seperti yang dijelaskan di sebagian besar teks elektronik (hal. 50 dalam buku Mimm, atau di wikipedia). Saya telah menyertakan file ktechlab sehingga Anda dapat melihat cara kerja sakelar transistor, dan skema lengkap (dalam format svg dan png). Pastikan untuk menggunakan skema asli atau file svn untuk mencetak, karena gambar yang lebih kecil tidak jelas. Anda harus melepas LED dari papan sirkuit keyboard dan menentukan polaritasnya dan sisi mana yang diaktifkan dengan multimeter. Jalankan satu kabel dari setiap LED yang akan terlibat dalam rangkaian switching (ini diberi label SCROLLLOCK dan CAPSLOCK pada skema). Desolder +5v dan ground dari sirkuit keyboard untuk memberikan daya ke perfboard, dan kemudian jalankan kabel untuk mengembalikan daya ke board (ini adalah +5V dan ground pada skema). Kemudian ikuti skema untuk membuat rangkaian, menggunakan pinout komponen untuk mengidentifikasi koneksi. Rakit sirkuit ini di papan tempat memotong roti terlebih dahulu, dan uji sirkuitnya. Ini adalah langkah di mana saya menentukan bahwa LED adalah pull-up alih-alih pull-down diaktifkan, dan umumnya mencapai titik kekacauan maksimum di meja kerja saya. Saat sirkuit berfungsi (dapat diuji dengan menekan Caps Lock Key atau Scroll Lock Key dan melihat apakah lampu lava beralih), cari tahu cara mengemas komponen ke perfboard. Wirewrap dapat digunakan, tetapi metode perakitan yang paling sederhana adalah dengan memasukkan komponen melalui lubang, membungkus ujungnya bersama-sama, dan menyoldernya bersama-sama. Uji apakah sirkuit yang dirakit bekerja pada perfboard.

Langkah 6: Lampu Lava USB Warna

Lampu Lava USB Warna
Lampu Lava USB Warna

Buat lampu lava USB bening diwarnai dengan mewarnai sepetak film overhead dengan spidol merah atau hijau, lalu potong lingkaran untuk dimasukkan ke dasar lampu di antara lampu dan ruang "lava". Pasang kembali lampu lava.

Langkah 7: Majelis Akhir

Majelis Akhir
Majelis Akhir
Majelis Akhir
Majelis Akhir
Majelis Akhir
Majelis Akhir

Kaleng Altoids membuat penutup yang bagus. Mereka pandai melindungi, tetapi sayangnya mereka adalah konduktor dan akan membuat sirkuit pendek yang tidak terlindungi. Untuk mencegah hal ini, potong karton dan film transparansi seukuran kaleng, dan pas di antara papan sirkuit keyboard dan perfboard Anda. Masukkan sakelar di lubang belakang kaleng Anda. Masukkan colokan USB yang dikawinkan dengan konektor USB pria malang itu ke dalam lubang kunci di samping sehingga kaleng menahan colokan ke dalam konektor. Jejalkan di perfboard dan sirkuit keyboard yang diselamatkan, isolasi dengan karton dan film transparansi. Cobalah untuk menutup kaleng (kami hampir tidak muat).

Langkah 8: Kode

Lampu lava akan dikendalikan oleh panggilan sistem ke program "selesai" yang akan menghidupkan dan mematikan LED capslock dan scroll lock. Uji dengan menjalankan yang berikut dari baris perintah (mungkin sebagai root, tergantung pada konfigurasi Anda) untuk membuat lampu Anda berkedip:setleds -L -caps +scroll < /dev/tty0;sleep 3s;setleds -L +caps -scroll < /dev/tty0; tidur 3; setleds -L </dev/tty0menguraikannya:#Untuk menyalakan lampu merah:setleds -L -caps +scroll < /dev/tty0#untuk menyalakan lampu hijau:setleds -L +caps -scroll < /dev/ tty0#untuk kembali ke status di mana LED menampilkan pengaturan keyboardsetleds -L </dev/tty0Anda dapat menyertakan panggilan sistem ini dalam program Anda sendiri, atau menggunakan modul pengujian unit phython yang ditulis Chris berdasarkan kerangka pengujian unit PyUnit yang dibuat menjadi ular piton. Buka paket file dari arsip tar (tar -xzvf lava_unittest.tar.gz dari konsol) dan coba perintah berikut dari konsol: python lava_unittest.py test_lava_unittest-passpython lava_unittest.py test_lava_unittest-failorpython test_lava_unittest-pass.pypython test_lava fail.pyUntuk menjalankan dari emulator terminal, batalkan komentar pada baris yang ditandai peringatan dan coba jalankan root itas dari emulator terminal. Dengan kode ini, yang perlu dilakukan hanyalah menukar instance "unittest" dengan "lava_unittest" dalam skrip Python yang ditulis untuk pengujian satuan. Tidak diperlukan pengkodean ulang.

Langkah 9: Kemasan Cantik

Kemasan cantik
Kemasan cantik
Kemasan cantik
Kemasan cantik

Untuk menyelesaikan proyek ini, buat dan cetak label Anda sendiri atau gunakan gambar yang disertakan (buka gambar secong ukuran penuh atau file xcf dengan gimp). Cukup tempel di sampul lampu lava yang dikendalikan USB yang menakjubkan.

Direkomendasikan: