Tegangan pin GPIO terlalu rendah untuk memberi energi relai

9

Saya mencoba untuk menghidupkan dan mematikan relay kecil . Saya telah menghubungkan pin GPIO dan GND langsung ke relay. Saya bisa mendengar relai mengklik, ketika saya mengatur pin GPIO ke HIGH.

Namun, relay jarang memungkinkan sinyal masuk. Ini berfungsi beberapa kali, tetapi jarang. Jika saya mengatur pin ke HIGH, dan mengukur tegangan, hanya sekitar 1.6V - jadi saya kira kadang-kadang tidak ada daya yang cukup untuk menggerakkan relay.

Saya sebelumnya telah mengukur tegangan pada pin, dan membaca 3.3V. Ada ide tentang apa yang bisa menjadi masalah?

Andreas
sumber
Jika Anda menghubungkan relay secara langsung ke pin GPIO Pi, sayangnya sangat mungkin Anda telah merusak sesuatu. Apakah relay dipasang pada semua jenis modul PCB dengan isolator?
goobering

Jawaban:

14

Anda tidak boleh langsung mengarahkan relay dari Raspberry Pi. GPIO individu hanya dapat dengan aman menyediakan sekitar 16mA pada 3V3 yang tidak mungkin cukup untuk memberi energi kumparan dari relay elektromagnetik standar. Bahkan jika Anda bisa EMF belakang yang disebabkan oleh medan magnet yang runtuh di koil relay ketika dimatikan dapat menghancurkan GPIO dan Pi.

Anda harus menggunakan GPIO untuk mengganti sirkuit eksternal untuk mengganti relai.

Biasanya transistor (untuk memperkuat arus) dan dioda (untuk melindungi terhadap EMF kembali) akan digunakan.

Secara pribadi saya mungkin akan menggunakan chip ULN2003A karena mereka dirancang untuk tujuan ini.

Ada banyak relay yang dibangun ke papan driver yang tersedia untuk pasar hobi.

joan
sumber
Aha, jadi pada dasarnya sirkuit seperti yang ditunjukkan di sini - tetapi terhubung ke rel 3v3?
Andreas
@ Andreas Ya, meskipun Anda bisa menggunakan rel 5V jika relay puas dengan 5V. Anda menggunakan GPIO untuk menghidupkan transistor. Transistor akan cukup senang untuk beralih 5V.
joan
Baiklah, masuk akal. Terima kasih banyak. Semoga saya belum menggoreng apa pun. Ya ampun, perangkat lunak jauh lebih mudah daripada perangkat keras.
Andreas
2
@ Android Sayangnya, jika perangkat lunak lebih mudah daripada perangkat keras, kami tidak akan me-reboot komputer untuk memperbaiki masalah mereka.
Dmitry Grigoryev
Saya suka jajaran driver relay NUD31xx OnSemi. Mereka bekerja lebih baik daripada transistor dan dioda individual yang pernah saya lihat.
Jeanne Pindar
16

Jika Anda ingin menggerakkan relay bertegangan rendah tunggal, menggunakan chip driver 7-channel akan menjadi berlebihan. Anda akan baik-baik saja dengan satu transistor NPN dan dioda flyback:

skema

mensimulasikan rangkaian ini - Skema dibuat menggunakan CircuitLab

Catatan: R1 dapat diganti dengan LED dan resistor 200 - 500 Ohm secara seri jika Anda menginginkan petunjuk visual tentang status relai Anda. Inilah yang sering dilakukan pada papan estafet buatan.

Dmitry Grigoryev
sumber
(Tautan simulasi tidak ditemukan. Bisakah Anda memperbaiki ini?)
nixda
@nixda semoga diperbaiki sekarang
Dmitry Grigoryev
4
Hati-hati dengan gagasan LED tambahan itu. Jika pembaca yang tidak sadar menggunakan LED putih atau biru, penurunan voltase mungkin terlalu besar untuk menggerakkan transistor.
Ghanima
Diagram sangat bagus, sederhana dan mudah menggunakan komponen umum! Terima kasih!
RufusVS
0

Saya telah berhasil menggunakan I2C expander MCP23017 dengan relay-board murah. Saya belum sepenuhnya menulis how-to tetapi belum ada banyak, lihat saja google dan cari "RPI MCP23017".

pengguna193221
sumber
Selamat datang di Raspberry Pi! Silakan ikuti tur dan kunjungi pusat bantuan untuk melihat bagaimana berbagai hal bekerja di sini. Sementara ini secara teoritis dapat menjawab pertanyaan, akan lebih baik untuk memasukkan beberapa penjelasan di sini (tanpa meminta OP mencarinya di tempat lain)?
Ghanima