Daftar Isi:
- Perlengkapan
- Langkah 1: Pengantar Raspberry Pi GPIO
- Langkah 2: Memahami Resistor
- Langkah 3: Menghubungkan LED
- Langkah 4: Menghubungkan LED ke GPIO
- Langkah 5: Menggunakan Relay untuk Menggerakkan LED
- Langkah 6: Menambahkan Resistor Pull-Up
- Langkah 7: Sensor Saklar Buluh
- Langkah 8: Menghubungkan Reed Switch ke Pi
- Langkah 9: Membuat Solusi Permanen pada Papan Prototyping
- Langkah 10: Referensi
Video: Perangkat Keras Pembuka Pintu Garasi Nol Raspberry Pi: 10 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:55
Salah satu inspirasi untuk proyek ini adalah instruksi bagus di Pembuka Pintu Garasi Raspberry Pi 3, bersama dengan beberapa lainnya yang ditemukan di Internet. Tidak menjadi orang elektronik berpengalaman, saya melakukan banyak penelitian tambahan tentang cara untuk berinteraksi dengan Raspberry Pi dan belajar banyak tentang pentingnya resistor dengan lampu LED dan dengan semua kabel GPIO. Saya juga belajar tentang manfaat sirkuit perangkat keras pull-up dan pull-down vs. fungsionalitas Pi bawaan.
Karena proyek pintu garasi ini benar-benar merupakan proses multi-bagian yang terdiri dari perangkat keras, perangkat lunak, dan pemasangan Pi dengan pembuka pintu garasi Anda, saya pikir saya akan fokus terlebih dahulu pada perangkat keras Pi, karena dibutuhkan untuk setiap langkah lainnya.
Pendekatan saya adalah menjadi sangat mendasar, bertindak sebagai ringkasan dari pembelajaran yang saya lakukan untuk dapat menyelesaikan perangkat keras. Ini akan dimulai dengan beberapa informasi, dan kemudian kita akan membangun sirkuit di papan tempat memotong roti. Setiap langkah akan menyempurnakan desain dan pengetahuan kami, yang berpuncak pada pembuatan solusi perangkat keras permanen untuk menghubungkan Pi dengan sensor relai dan buluh.
Selain itu, tidak seperti beberapa proyek lain, saya memutuskan untuk menggunakan Raspberry Pi Zero W, yang saya jual beberapa waktu lalu tetapi masih tidak terpakai di meja saya. Keuntungannya adalah, saat membuat prototipe, jika saya merusak salah satu sirkuit GPIO, itu murah dan mudah untuk mengganti dan mempertahankan prototipe. Kelemahannya adalah ia hanya memiliki prosesor ARMv6 sehingga beberapa hal, seperti Java, tidak akan dapat digunakan.
Hal lain yang saya putuskan untuk lakukan adalah membuat papan tambahan saya sendiri untuk sirkuit, jadi jika saya perlu mengubah atau mengganti Pi saya, selama pinoutnya sama, papan harus dengan mudah dicolokkan ke Pi baru. Ini diharapkan akan meminimalkan sarang tikus kabel.
Asumsi saya adalah:
- Anda nyaman menyolder
- Anda sudah tahu cara menggunakan perintah terminal dasar pada Raspberry Pi
- Anda menggunakan Raspbian Buster atau yang lebih baru.
- Anda memiliki beberapa antarmuka ke baris perintah Pi; baik dengan monitor khusus, keyboard, dll. DAN/ATAU menggunakan SSH.
- Anda sudah familiar dengan konsep dasar desain rangkaian listrik; misalnya, Anda mengetahui perbedaan antara daya dan arde dan Anda memahami konsep korsleting. Jika Anda dapat menempatkan outlet baru di rumah Anda, Anda harus dapat mengikutinya.
Perlengkapan
Bergantung pada seberapa berdedikasi Anda terhadap proyek ini, Anda dapat memulai hanya dengan hal-hal yang diperlukan di setiap langkah dan mulai dari sana. Banyak dari suku cadang ini tersedia di toko elektronik atau DIY/Maker lokal Anda, tetapi saya telah menyertakan tautan Amazon untuk meningkatkan deskripsi.
- MakerSpot RPi Raspberry Pi Zero W Protoboard (untuk membuat HAT terakhir untuk Pi)
- Modul Relay DC 5V 2 Saluran (dapatkan 1 saluran jika Anda memiliki satu pintu, 2 untuk 2 pintu, dll.)
- Sakelar Pintu Overhead, Biasanya Terbuka (TIDAK) (Jika saat ini Anda hanya membuat prototipe dan ingin menggunakan beberapa sakelar buluh murah untuk memulai, tidak apa-apa)
- Bundel Electronic Fun Kit (ini berisi semua resistor yang saya butuhkan, ditambah papan tempat memotong roti dan unit daya untuk membantu prototipe dan pengujian dan pembelajaran sebelum saya membuat papan permanen). Jika Anda sudah memiliki semua ini, pastikan Anda memiliki beberapa resistor 10K, 1K, dan 330 ohm.
- Kabel Jumper Breadboard (apa saja bisa)
- Solder besi dengan ujung kecil
- Solder inti rosin
- Pembersih ujung besi solder
- Catu daya 9v cadangan (untuk memberi daya pada papan tempat memotong roti)
- Papan prototipe murah untuk praktik menyolder (opsional)
- Berfungsi Raspberry Pi Zero atau Pi pilihan Anda
- Pin header untuk Raspberry Pi (jika milik Anda belum memiliki header tersebut)
- Penumpukan header untuk digunakan pada protoboard HAT.
- Tang hidung jarum kecil
- Paket obeng perhiasan
- Pemotong sisi kecil (untuk memotong kawat setelah disolder)
- Pinset
- Beberapa kawat pengukur kecil (saya lebih suka inti padat) untuk digunakan pada protoboard
- Sedikit silikon (jika Anda memilih untuk menggunakan LED pemasangan permukaan 1,8mm daripada yang disediakan dalam bundel kit)
- Saya menemukan bahwa lampu pembesar sangat membantu untuk melihat pekerjaan penyolderan kecil
Langkah 1: Pengantar Raspberry Pi GPIO
Antarmuka utama yang akan kita gunakan dengan Raspberry Pi adalah GPIO (General Purpose Input/Output).
Temukan diagram pin yang tepat untuk Pi Anda di sini. Instruksi ini akan fokus pada Pi Zero W v1.1.
Kami hanya akan menggunakan pin GPIO hijau, menghindari pin SDA, SCL, MOSI, MISO, dll. (Saya menemukan bahwa beberapa pin GPIO memiliki tujuan khusus, salah satu manfaat membuat prototipe pada papan tempat memotong roti, jadi saya tetap menggunakan pin GPIO 17 (pin #11), 27 (pin #13), dan 12 (#32) sebagaimana adanya dalam posisi yang baik untuk papan tempat memotong roti saya.
Pin GPIO dirancang untuk beroperasi sebagai sakelar digital (biner); mereka ada secara logis sebagai salah satu dari dua keadaan: 1 atau nol. Status ini bergantung pada apakah pin mensuplai atau menerima tegangan di atas ambang tertentu (1) atau memasok atau menerima tegangan di bawah ambang tertentu. (Kita akan berbicara tentang ambang batas nanti.)
Penting untuk dicatat bahwa, sementara Raspberry Pi dapat memasok 5V dan 3.3V (3V3), pin GPIO beroperasi menggunakan hingga 3.3V. Lebih dari itu dan Anda merusak GPIO dan mungkin seluruh pengontrol. (Inilah sebabnya kami membuat prototipe di papan tempat memotong roti, dan menggunakan Pi termurah!)
Status pin dapat dimanipulasi baik oleh perangkat lunak (output) atau oleh perangkat lain yang memasukkan status (input).
Mari kita coba ini menggunakan beberapa perintah SYSFS dasar. Saya tidak yakin apakah ini memerlukan WiringPi, tetapi jika Anda mengalami masalah, Anda mungkin ingin menginstalnya jika Anda menggunakan gambar Raspbian minimal.
Pertama, mari kita beri diri kita akses ke GPIO 17:
sudo echo "17" > /sys/class/gpio/export
Sekarang mari kita periksa nilai GPIO:
sudo cat /sys/class/gpio/gpio17/value
Nilainya harus nol.
Pada titik ini, GPIO tidak tahu apakah itu input atau output. Dengan demikian, jika Anda mencoba memanipulasi nilai GPIO, Anda akan menerima "kesalahan penulisan: Operasi tidak diizinkan". Jadi mari kita beri tahu pin itu adalah output:
sudo echo "keluar" > /sys/class/gpio/gpio17/direction
Dan sekarang atur nilainya menjadi 1:
sudo echo "1" > /sys/class/gpio/gpio17/value
Periksa nilainya lagi untuk melihat … dan nilainya harus 1.
Selamat, Anda baru saja membuat GPIO keluaran dan mengubah statusnya!
Sekarang, ada sedikit lagi, tapi mari kita pelajari beberapa hal terlebih dahulu.
Langkah 2: Memahami Resistor
Jadi, Anda dapat mencari resistor di Wikipedia, tetapi apa artinya bagi kami? Terutama mereka melindungi komponen kami.
Ingat ketika kita berbicara tentang GPIO yang beroperasi hingga 3.3V? Artinya, jika Anda memberikan pin GPIO lebih dari itu, Anda bisa menggorengnya. Mengapa ini penting? Terkadang ada lonjakan kecil di sirkuit mana pun dan jika maksimumnya adalah 3,3V, cegukan kecil apa pun dapat menyebabkan masalah. Beroperasi pada tegangan maksimum adalah proposisi yang berisiko.
Ini terutama berlaku untuk LED. LED akan menarik daya sebanyak mungkin. Pada akhirnya LED akan terbakar, tetapi penarikan arus yang signifikan dapat menghabiskan semua daya yang tersedia di sirkuit, menyebabkannya tidak berfungsi.
Misalnya: apa yang akan terjadi jika Anda memasukkan garpu ke kedua cabang outlet listrik? Ada sedikit atau tidak ada hambatan, dan Anda akan meledakkan pemutus sirkuit. (Dan mungkin melukai diri sendiri dalam prosesnya.) Mengapa pemanggang roti tidak melakukan ini? Karena elemen pemanasnya memberikan resistansi, dan dengan demikian tidak menarik seluruh beban rangkaian.
Jadi bagaimana kita mencegah hal ini terjadi pada LED? Dengan membatasi jumlah arus yang digunakan untuk menggerakkan LED menggunakan resistor.
Tapi resistor ukuran berapa? Ya, saya membaca beberapa artikel web dan akhirnya memilih resistor 330Ω untuk 3.3V dengan LED. Anda dapat membaca semua perhitungan mereka dan mencari tahu sendiri, tetapi saya menguji beberapa di papan tempat memotong roti dan 330 bekerja dengan baik. Satu referensi yang saya periksa ada di forum Raspberry Pi, tetapi pencarian Google akan menemukan lebih banyak lagi.
Demikian juga, pin Pi GPIO membutuhkan perlindungan dari tegangan lebih. Ingat bagaimana saya mengatakan bahwa mereka menggunakan HINGGA 3.3V? Yah, sedikit kurang tidak akan sakit. Sebagian besar proyek menggunakan resistor 1KΩ dan saya melakukan hal yang sama. Sekali lagi, Anda dapat menghitungnya sendiri tetapi ini adalah pilihan yang sangat populer. Sekali lagi, forum Raspberry Pi menyediakan beberapa informasi.
Jika Anda tidak memahami ini sepenuhnya, lakukan lebih banyak membaca. Atau ikuti saja petunjuknya. Apapun yang bekerja untuk Anda.
Banyak resistor diberi label dalam kemasannya tetapi begitu Anda melepasnya, bagaimana Anda bisa membedakannya? Garis-garis kecil berwarna pada resistor dapat memberi tahu Anda.
Selanjutnya, kita akan memasang LED sederhana pada papan tempat memotong roti dengan kekuatan untuk memulai sesuatu.
Langkah 3: Menghubungkan LED
Langkah pertama adalah memasang LED di papan tempat memotong roti. Setelah kami membuatnya bekerja dengan aman, kami akan menghubungkannya ke Raspberry Pi dan mengontrolnya dari pin GPIO.
Semoga papan tempat memotong roti Anda dilengkapi dengan sumber daya untuk 3.3v. Jika tidak, Anda dapat menyambungkan semuanya dan menghubungkannya langsung ke Pi.
Temukan LED dan hubungkan ke papan tempat memotong roti seperti yang ditunjukkan menggunakan resistor 330Ω. Kaki LED yang lebih panjang adalah anoda, kaki yang lebih pendek adalah katoda. Anoda terhubung ke daya 3.3V sementara katoda terhubung kembali ke ground. Resistor dapat berupa sebelum LED; itu tidak masalah. Warna kawat standar adalah:
- Merah = 5V
- Oranye = 3.3V
- Hitam = tanah
Setelah Anda memiliki kabel papan tempat memotong roti dan memasok daya, LED akan menyala. Jangan lanjutkan kecuali Anda berhasil.
Langkah 4: Menghubungkan LED ke GPIO
Jadi sekarang kita memiliki LED yang berfungsi dengan resistor. Sekarang saatnya menghubungkan LED itu ke Raspberry Pi. Tujuan kami adalah untuk membuat output GPIO dan menghubungkan GPIO tersebut ke LED sehingga ketika kami MENGAKTIFKAN GPIO, LED akan menyala. Sebaliknya, ketika kita MENONAKTIFKAN GPIO, LED akan mati. (Ini akan digunakan nanti sebagai sirkuit yang akan "menekan" tombol untuk membuka pintu garasi.)
Lepaskan daya dari papan tempat memotong roti dan sambungkan Pi seperti yang ditunjukkan. (Sebaiknya lakukan ini saat Pi dimatikan juga.) Kami telah menghubungkan suplai 3.3V dari GPIO 17 dan ground ke salah satu pin ground.
Sekarang boot Pi dan LED harus mati. Jalankan perintah yang sama yang kita lakukan sebelumnya untuk mengatur pin GPIO dan menampilkan nilainya:
sudo echo "17" > /sys/class/gpio/export
sudo echo "keluar" > /sys/class/gpio/gpio17/direction Sudo cat /sys/class/gpio/gpio17/value
Nilainya harus nol.
Sekarang mari kita aktifkan GPIO:
sudo echo "1" > /sys/class/gpio/gpio17/value
Ini harus menyalakan LED. Untuk mematikan LED, cukup nonaktifkan GPIO sebagai berikut:
sudo echo "0" > /sys/class/gpio/gpio17/value
Salah satu hal yang MUNGKIN terjadi adalah, dengan gangguan yang cukup atau siklus hidup/mati LED, Anda mungkin memperhatikan bahwa LED tetap menyala sedikit. Ada alasan untuk ini, dan kita akan membicarakannya di langkah mendatang.
Langkah 5: Menggunakan Relay untuk Menggerakkan LED
Seperti yang dinyatakan pada langkah sebelumnya, LED adalah stand-in untuk "tombol" pintu garasi. Namun, sementara GPIO dapat menyalakan LED kami, GPIO tidak dapat "menekan" tombol pintu garasi kami. Menekan tombol pada dasarnya hanya menghubungkan dua terminal tombol, yang pada dasarnya melakukan penekanan tombol. Apa yang Anda butuhkan untuk melakukan "tekan" ini adalah relai.
Relai tidak lebih dari sakelar yang ditenagai oleh sesuatu. Dalam hal ini, Raspberry Pi kami dapat memberi tahu relai untuk "menekan" tombol pintu garasi. Untuk prototipe kami, Raspberry Pi akan memberi tahu relai untuk menyalakan LED…agar kami dapat menguji sirkuit kami.
Apa yang perlu kita ketahui tentang relai kita:
- Relay beroperasi pada 5V. Ini adalah daya hanya untuk mengoperasikan relai dan tidak digunakan di bagian lain dari rangkaian.
- Kami ingin memasang relai kami sebagai "biasanya terbuka." Itu berarti relai tetap terbuka (tidak menghubungkan dua kabel, atau "menekan tombol", hingga diaktifkan.
- Relai khusus ini diaktifkan ketika GPIO memasok daya nol ke konektor relai 3.3V. Memang, ini tampak terbelakang. Ketika 3.3V disuplai, relai dilepaskan. Tetap bersama kami dalam proyek ini dan Anda akan melihat cara kerjanya.
- Dua koneksi terminal relai benar-benar terpisah dari Raspberry Pi. Artinya, Anda dapat mengganti kabel dengan arus pengenal apa pun karena menerima arusnya dari sumber daya lain. Raspberry Pi kecil sederhana dengan 3.3V dan 5V memang dapat mengoperasikan relai yang mengontrol tegangan yang jauh lebih besar. Ini adalah bagaimana tombol kecil kecil di dasbor Anda dapat menjalankan kursi berpemanas dengan arus listrik besar.
Jadi mari kita mulai.
Pertama, pasang kembali (tetapi matikan) unit daya eksternal untuk papan tempat memotong roti Anda. Daya ini akan menjalankan rangkaian LED, sedangkan Raspberry Pi mengontrol relai.
Selanjutnya, buat jeda di saluran 3.3V yang memberi daya pada LED. (Dengan sakelar dan relai, kami selalu ingin mengganti "panas", bukan tanah.) Ini ditunjukkan dengan warna oranye dan biru pada diagram.
Hubungkan Raspberry Pi seperti yang ditunjukkan dengan 5V menyalakan relai, 3.3V bertindak sebagai sakelar, dan ground kembali ke Raspberry Pi. Dalam contoh ini saya telah menghubungkan 3.3V ke GPIO 17. Saya sarankan menghubungkan resistor 1KΩ ke kabel GPIO seperti yang ditunjukkan, untuk melindungi GPIO dari masalah. (Ini disebutkan dalam langkah Resistor.)
Nyalakan papan tempat memotong roti dan sekarang nyalakan Pi Anda. LED harus menyala.
Sekarang jalankan perintah berikut di Pi:
sudo echo "17" > /sys/class/gpio/export
sudo echo "keluar" > /sys/class/gpio/gpio17/direction Sudo cat /sys/class/gpio/gpio17/value
Nilainya harus nol.
Sekarang mari kita aktifkan GPIO:
sudo echo "1" > /sys/class/gpio/gpio17/value
Ini harus mematikan LED.
Langkah 6: Menambahkan Resistor Pull-Up
Pada titik ini, semua barang Anda seharusnya berfungsi. Tapi ada satu hal yang belum kita bahas tentang GPIO, dan itu adalah tegangan "mengambang" yang dimungkinkan berdasarkan ambang batas yang kami sebutkan sebelumnya.
Sementara GPIO umumnya memiliki dua status logis (1 dan nol), GPIO menentukan status ini berdasarkan apakah ia memiliki tegangan di atas atau di bawah ambang tegangan, seperti yang kami sebutkan di bagian GPIO. Tetapi masalah di sebagian besar GPIO adalah kemungkinan tegangan "mengambang"; dalam kasus Raspberry Pi, di suatu tempat antara nol dan 3.3V. Hal ini dapat terjadi dari gangguan atau dari kenaikan/penurunan tegangan pada rangkaian.
Kami tidak ingin situasi di mana relai tombol pintu garasi kami hanya dapat diaktifkan dari tegangan mengambang. Memang, kami ingin mengaktifkannya hanya ketika kami menyuruhnya.
Situasi seperti ini diselesaikan dengan menggunakan resistor pull-up dan pull-down untuk menegakkan tegangan tertentu dan menghindari tegangan mengambang. Dalam kasus kami, kami ingin memastikan untuk memasok tegangan untuk mencegah relai aktif. Jadi kita membutuhkan resistor pull-up untuk menaikkan tegangan di atas ambang batas. (Ambang batas adalah hal yang lucu…Saya mencoba membaca tentangnya dan untuk melihat apakah mereka didefinisikan dengan baik dan mendapatkan banyak informasi yang ada di atas kepala saya, dan beberapa di antaranya tampak terlalu sederhana. Cukuplah untuk mengatakan bahwa dengan multimeter saya dapat melihatnya tegangannya lebih rendah dari 3,3V, tetapi karena semuanya berfungsi saat saya membuat prototipe, saya baru saja melanjutkan. Jarak tempuh Anda mungkin berbeda, dan inilah mengapa kami membuat papan tempat memotong roti sebelum menyolder produk akhir kami.)
Tentu, Raspberry Pi memiliki resistor pull-up dan pull-down internal yang dapat Anda atur dalam kode atau saat boot. Namun, sangat rentan terhadap gangguan. Meskipun dimungkinkan untuk menggunakannya, karena kita sudah bekerja dengan resistor di sebuah rangkaian, mungkin ada baiknya stabilitas untuk menggunakan eksternal.
Lebih penting lagi, ini menciptakan pull-up dan menambahkan tegangan yang cukup sehingga status pin GPIO default ke 1 sebelum Pi diinisialisasi. Ingat bagaimana relay kami mengaktifkan LED menyala ketika kami pertama kali menginisialisasi Pi sampai kami mematikannya? Menggunakan pull-up mencegah relai aktif saat startup karena input 3.3V relai menerima tegangan pada saat yang sama input 5V menerima tegangan. Kami juga dapat melakukan ini dalam konfigurasi Pi jika kami mau, tetapi sekali lagi, karena kami tetap memasang kabel dengan resistor, tampaknya kurang rentan terhadap pembaruan dan distribusi sistem operasi.
Konfigurasi yang berbeda mungkin memerlukan resistor yang berbeda, tetapi resistor 10kΩ bekerja dengan relai yang saya miliki. LED pada relai saya sangat redup saat boot, tetapi pull-up memberikan tegangan yang cukup untuk mencegah aktivasi relai.
Mari tambahkan resistor pull-up ke sirkuit kita. Dalam diagram papan tempat memotong roti, saya menambahkan resistor 10kΩ antara input 3.3V pada relai dan sumber 3.3V.
Sekarang kami memiliki sirkuit yang cocok untuk "menekan" tombol pintu garasi; mengganti LED dan resistor 330Ω dengan kabel tombol yang sebenarnya seharusnya mudah.
Langkah 7: Sensor Saklar Buluh
Hebat, kami tahu seperti apa sirkuit kami untuk mengaktifkan pembuka pintu garasi. Namun, bukankah menyenangkan mengetahui apakah pintu garasi tertutup, atau terbuka? Untuk melakukan itu, Anda memerlukan setidaknya satu saklar buluh. Beberapa proyek merekomendasikan dua, tetapi keduanya akan menggunakan desain sirkuit yang sama.
Kami menggunakan konfigurasi sakelar buluh "biasanya terbuka" (NO). Itu berarti sirkuit kami terbuka sampai saklar buluh berada dalam jarak dekat dengan magnet, yang akan menutup sirkuit dan memungkinkan listrik mengalir.
Perbedaan utama antara pengaturan sensor dan pengaturan relai adalah:
- GPIO yang terhubung ke sensor akan mendeteksi daya, sehingga menjadi GPIO input (sedangkan relay menggunakan GPIO output yang memasok tegangan)
- Karena keadaan default ada seperti biasanya terbuka, itu berarti sirkuit kita tidak akan aktif. Dengan demikian, keadaan GPIO harus 0. Berlawanan dengan konsep resistor pull-up pada rangkaian relai, kita ingin memastikan tegangan kita berada di bawah ambang batas saat rangkaian terbuka. Ini akan membutuhkan resistor pull-down. Ini pada dasarnya sama dengan pull-up, tetapi terhubung ke ground alih-alih daya.
Sama seperti rangkaian relai, kita akan memasang kabel di papan tempat memotong roti sebelum menghubungkannya ke Pi.
Mari kita gunakan papan tempat memotong roti bertenaga dan memasang LED, resistor 330Ω, dan kabel ground. Kemudian hubungkan 3.3V ke satu sisi sakelar buluh dan pelompat dari sisi lain sakelar buluh ke LED. (Jika Anda memiliki sakelar buluh yang mendukung NO dan NC, gunakan posisi NO.) Pindahkan magnet dari sakelar buluh dan nyalakan daya papan tempat memotong roti. LED harus tetap mati. Pindahkan magnet ke arah saklar buluh dan LED akan menyala. Jika sebaliknya, Anda memilikinya untuk NC (biasanya tertutup)
Langkah 8: Menghubungkan Reed Switch ke Pi
Jadi sekarang kita memiliki sirkuit yang bekerja tanpa Pi, kita dapat menghapus daya dari papan tempat memotong roti dan kita akan menghubungkan Pi.
Kami akan menggunakan GPIO17 lagi karena kami sudah tahu di mana itu.
Sama seperti rangkaian relai, kita akan melindungi pin GPIO dengan resistor 1KΩ; namun, kita akan menggunakan resistor 10kΩ ke ground untuk membuat pull-down.
Setelah kita menghubungkan semuanya, mari pindahkan magnet dari saklar buluh, boot P, i dan masuk ke baris perintah dan inisialisasi GPIO, perhatikan bahwa kali ini kita membuat input GPIO:
sudo echo "17" > /sys/class/gpio/export
sudo echo "in" > /sys/class/gpio/gpio17/direction Sudo cat /sys/class/gpio/gpio17/value
Nilainya harus nol. Pindahkan magnet ke saklar buluh. Lampu LED harus menyala, dan nilainya adalah 1.
Voila! Kami telah menghubungkan saklar buluh kami ke Pi!
Langkah 9: Membuat Solusi Permanen pada Papan Prototyping
Sekarang kita tahu seperti apa sirkuit kita, saatnya untuk menyolder versi permanen pada papan prototyping. Karena saya menggunakan Pi Zero W, saya mendapatkan papan proto kecil.
Saya pikir akan lebih baik menggunakan format Zero dan dapat menumpuk satu atau lebih papan, modul tambahan yang disebut Raspberry Pi HAT (Hardware Attached on Top). Yah, secara teknis karena tidak memiliki jenis EEPROM dan tidak mendaftar sendiri, itu bukan HAT tapi saya harus menyebutnya sesuatu. Tapi formatnya terpasang dengan baik dan menghilangkan sarang tikus dari kabel, jadi itu bagus.
Tantangannya adalah papan protonya agak kecil, jadi Anda tidak bisa muat banyak. Juga, tidak ada lubang yang terhubung dalam baris seperti papan proto yang lebih besar. Meskipun ini mungkin tampak tidak nyaman, itu sebenarnya adalah penyelamat.
Apa yang saya pikirkan adalah saya bisa membuat HAT untuk setiap pintu garasi yang ingin saya kendalikan. Dengan cara ini, Anda dapat memperluas proyek ini agar sesuai dengan kebutuhan Anda.
Di papan proto, saya menemukan bahwa ada cukup ruang untuk membuat tiga sirkuit:
- sirkuit relai
- sirkuit sensor
- sirkuit sensor kedua
Itu cukup bagus untuk proyek pintu garasi apa pun di luar sana.
Jadi yang saya lakukan adalah menggunakan GPIO17 dan 27 untuk sensornya, dan GPIO12 untuk relaynya. Hal yang sangat menyenangkan tentang papan proto ini adalah Anda dapat menyambungkan ke GPIO bahkan tanpa menyentuh header. Tapi ya, Anda perlu menyolder header susun selain resistor Anda (dan, opsional, LED).
Saya cukup banyak membuat ulang sirkuit yang kami buat di papan. Anda dapat mengatakan bahwa penyolderan saya tidak sempurna tetapi masih berfungsi. (Papan berikutnya akan lebih baik karena saya telah berlatih.) Saya memiliki Aoyue 469 dan hanya sedikit di atas pengaturan 4 adalah suhu terbaik berdasarkan rekomendasi untuk menyolder header GPIO.
Saya menggunakan baris terhubung luar untuk ground dan bagian dalam untuk 3.3V. Dan saya menggunakan kabel resistor untuk bertindak sebagai jembatan karena kami tidak memiliki baris yang terhubung. Sisanya semuanya diagonal dan menyamping karena itu adalah cara terbaik yang bisa saya temukan untuk memasangnya di papan.
Dari L-R (melihat bagian depan, sisi resistor), pin output yang saya tambahkan adalah untuk kabel sensor GPIO, kabel GPIO sensor kedua, dan kabel GPIO relai. Alih-alih menghubungkan kabel langsung ke GPIO, yang dapat kita lakukan dari header, pin ini terhubung ke semua resistor kita dan, dalam hal sensor, saya menambahkan microLED. (Perhatikan bagaimana LED berada dalam loop yang benar-benar terpisah, jadi jika terbakar, sirkuit masih berfungsi.)
Terlampir adalah file Fritzing, tetapi karena Instructables mengalami masalah dengan unggahan file, saya harus memberikan ekstensi palsu "txt" untuk menyematkannya.
Langkah 10: Referensi
Proyek Pembuka Pintu Garasi Raspberry Pi (inspirasi)
Panduan Idiot untuk Pembuka Pintu Garasi Raspberry Pi
Pembuka Pintu Garasi iPhone atau Android
Apakah saya harus menggunakan resistor atau tidak?
Menggunakan Pullup dan Pulldown Resistor pada Raspberry Pi
Menyiapkan SSH
Diagram Pin Raspberry Pi.
Perintah SYSFS
KabelPi
Resistor dan LED
Perlindungan (sic) Pin GPIO
Kalkulator dan Bagan Kode Warna Resistor
Pull-Up dan Pull Down Resistor
Ambang Tegangan GPIO
Tingkat Tegangan Input GPIO
Kontrol GPIO di config.txt
GPIO Pull Up Resisance (sic)
Mengapa kita membutuhkan resistor penarik eksternal ketika mikrokontroler memiliki resistor penarik internal?
Apa itu HAT Raspberry Pi?
Cara menyolder konektor Raspberry Pi Zero W GPIO
Direkomendasikan:
Pembuka Pintu Garasi Cerdas DIY + Integrasi Asisten Rumah: 5 Langkah
Pembuka Pintu Garasi Cerdas DIY + Integrasi Asisten Rumah: Ubah pintu garasi normal Anda menjadi pintar menggunakan proyek DIY ini. Saya akan menunjukkan cara membangun dan mengontrolnya menggunakan Home Assistant (melalui MQTT) dan memiliki kemampuan untuk membuka dan menutup pintu garasi Anda dari jarak jauh. Saya akan menggunakan papan ESP8266 yang disebut Wemos
Pembuka Pintu Garasi Cerdas Murah: 6 Langkah (Dengan Gambar)
Pembuka Pintu Garasi Cerdas Murah: KreditSaya cukup banyak menyalin implementasi Savjee tetapi alih-alih menggunakan Shelly, saya menggunakan Sonoff Basic. Lihat situs web dan Saluran YouTube-nya!https://www.savjee.be/2020/06/make-garage-door-ope…https://www.youtube.com/c/Savjee/AssumptionsYou h
Pembuka Pintu Garasi Raspberry Pi: 5 Langkah
Pembuka Pintu Garasi Raspberry Pi: Keypad kami yang berusia lima belas tahun yang memungkinkan kami untuk membuka pintu garasi perlahan-lahan mati, dengan beberapa tombol yang hampir tidak dapat didaftarkan, sehingga menyulitkan remaja (atau pengasuh anjing) kami untuk masuk ke dalam rumah ketika mereka lupa kunci. Alih-alih membalas
Pembuka Pintu Garasi Menggunakan Raspberry Pi: 5 Langkah (Dengan Gambar)
Pembuka Pintu Garasi Menggunakan Raspberry Pi: Kontrol motor garasi dari smartphone atau perangkat apa pun yang dapat menelusuri halaman web (dengan AJAX!). Proyek ini dimulai karena saya hanya memiliki satu remote untuk garasi saya. Betapa menyenangkannya membeli yang kedua? Tidak cukup. Target saya adalah untuk dapat mengontrol dan memantau
Pembuka Pintu Garasi Raspberry Pi 3: 15 Langkah (dengan Gambar)
Pembuka Pintu Garasi Raspberry Pi 3: Saya membuat instruksi ini pada tahun 2014. Banyak yang telah berubah sejak saat itu. Pada tahun 2021, saya memperbarui Pembuka Pintu Garasi Cerdas di sini. Gunakan Raspberry Pi dan smartphone untuk membuka, menutup, dan memantau pintu garasi. Membuka dan menutup pintu diamankan dengan menggunakan s