Daftar Isi:

Mengontrol Papan Relay Dari Octoprint di Raspberry Pi: 5 Langkah
Mengontrol Papan Relay Dari Octoprint di Raspberry Pi: 5 Langkah

Video: Mengontrol Papan Relay Dari Octoprint di Raspberry Pi: 5 Langkah

Video: Mengontrol Papan Relay Dari Octoprint di Raspberry Pi: 5 Langkah
Video: Octoprint plugins for better and safer printing - PSU relay control 2024, Juni
Anonim
Mengontrol Papan Relay Dari Octoprint pada Raspberry Pi
Mengontrol Papan Relay Dari Octoprint pada Raspberry Pi

Jadi, Anda memiliki raspberry pi dengan Octoprint dan bahkan memiliki pengaturan kamera. Hal terakhir yang Anda butuhkan adalah cara untuk menghidupkan dan mematikan printer 3d Anda dan mungkin mengontrol lampu. Instruksi ini untuk Anda!

Ini terinspirasi dan disederhanakan dari:

Pastikan untuk memeriksa instruksi saya sebelumnya di mana saya membuat kotak penutup / lemari asam untuk printer 3d saya, karena ini adalah sekuelnya.

Diuji dengan:

Linux octopi 4.14.79-v7+ #1159 SMP Minggu 4 Nov 17:50:20 GMT 2018 armv7l GNU/Linux

Versi OctoPrint: 1.3.11 Versi OctoPi: 0.16.0

Penafian: Saya tidak bertanggung jawab atas hal buruk apa pun yang dapat terjadi karena Anda mengikuti petunjuk ini.

Perlengkapan

  • Papan relai 5V dengan optocoupler (ebay)
  • Beberapa kabel jumper
  • Kotak listrik dengan stopkontak (opsional)

Langkah 1: Menghubungkan Papan Relay ke Pi Raspberry Anda

Menghubungkan Papan Relay ke Raspberry Pi
Menghubungkan Papan Relay ke Raspberry Pi

Meskipun papan relai dibuat untuk logika 5V, mereka akan memicu dengan benar pada 3.3V. Mengetahui hal ini, saya dapat menghindari modifikasi apa pun pada papan asli.

Perisai relai Raspberry

------------ --------- Kumparan: JD-VCC - 5V VCC - Tidak terhubung GND - GND Logika: GND - Tidak terhubung IN1 - GPIO #23 IN2 - GPIO # 18 VCC - 3.3V

Penting untuk menghapus jumper antara JD-VCC dan VCC jika Anda memilikinya. Ini akan memungkinkan memberi makan 5V untuk kumparan sambil memberi makan 3.3V untuk input logika. Dan karena kedua GND terhubung secara internal, kami hanya menghubungkan salah satunya.

Langkah 2: SSH ke Raspberry Pi Anda dan Konfigurasikan

SSH ke Raspberry Pi Anda dan Konfigurasikan
SSH ke Raspberry Pi Anda dan Konfigurasikan

Menggunakan dempul atau klien ssh favorit Anda, sambungkan ke raspberry pi Anda menggunakan alamat ip yang sama dengan yang Anda gunakan untuk mengakses Octoprint. Nama pengguna default adalah pi dan kata sandi adalah raspberry.

Hal pertama yang akan saya lakukan adalah memverifikasi bahwa relai merespons dengan benar. Untuk melakukan ini, keluarkan perintah ini

gpio -g mode 18 keluar

gpio -g mode 23 keluar gpio -g tulis 18 0 gpio -g tulis 23 0 gpio -g tulis 18 1 gpio -g tulis 23 1

2 baris pertama memungkinkan untuk mengatur GPIO sebagai output. Kemudian Anda mengaktifkan dan menonaktifkan output. Itu harus membuat relai klik. Ketika input rendah (0), relai harus menyala dan ketika input tinggi (1) mereka harus dimatikan. Jadi ya, ini agak berlawanan dengan intuisi, tapi begitulah adanya!

Langkah 3: Tambahkan Opsi Menu Baru ke Octoprint untuk Mengontrol Relay Anda

Tambahkan Opsi Menu Baru ke Octoprint untuk Mengontrol Relay Anda
Tambahkan Opsi Menu Baru ke Octoprint untuk Mengontrol Relay Anda
Tambahkan Opsi Menu Baru ke Octoprint untuk Mengontrol Relay Anda
Tambahkan Opsi Menu Baru ke Octoprint untuk Mengontrol Relay Anda

Anda perlu mengedit file config.yaml:

sudo nano.octoprint/config.yaml

Di dalam file itu, cari bagian "sistem" dan tambahkan yang berikut ini:

sistem:

tindakan: - tindakan: printer aktif perintah: gpio -g tulis 18 0 nama: Hidupkan printer - tindakan: printer mati perintah: gpio -g tulis 18 1 konfirmasi: Anda akan mematikan printer. nama: Matikan printer - tindakan: lon perintah: gpio -g tulis 23 0 nama: LightOn - tindakan: loff perintah: gpio -g tulis 23 1 nama: LightOff

Setelah menyimpan file (ctrl+x), reboot raspberry pi:

sudo reboot

Anda sekarang seharusnya dapat mengontrol relai dari antarmuka web Octoprint!

Langkah 4: Pengkabelan Tegangan Tinggi (Hati-hati)

Pengkabelan Tegangan Tinggi (Hati-hati)
Pengkabelan Tegangan Tinggi (Hati-hati)

Relai bertindak sebagai sakelar, hanya dipicu oleh pengontrol, dalam hal ini raspberry pi. Saklar terdiri dari elektromagnet yang akan menghubungkan pin bersama-sama, yaitu klik yang Anda dengar.

Untuk pengkabelan, Anda memiliki dua pilihan. Entah Anda memotong salah satu kabel catu daya printer 3d Anda dan Anda menghubungkan ujungnya ke relai, atau Anda membuat stopkontak untuk itu. Saya lebih suka cara kedua, karena ini akan memungkinkan pemindahan printer dengan lebih mudah. Saya juga akan menggunakan outlet kedua untuk menghubungkan kipas angin saya (lihat instruksi saya yang lain: Lemari Asam Printer 3D yang Mudah dan Murah).

Sekarang relay lainnya adalah untuk mengontrol lampu. Prinsipnya sama, tetapi dalam hal ini saya sarankan Anda hanya memotong salah satu kabel dari kabel listrik dan menghubungkan ujungnya ke relai, kemungkinan besar tidak perlu dipindahkan.

Langkah 5: Konfigurasikan Output GPIO dan Cegah Relay Anda Dari Menghidupkan Saat Raspberry Pi Reboot

Untuk meringkas masalah, GPIO disetel rendah ketika raspbian reboot (setidaknya untuk versi kernel tertentu). Ternyata, tidak banyak yang bisa kita lakukan… oh well! Jadi idenya adalah memanggil skrip yang akan mengembalikannya setelah selesai boot dengan mengatur output tinggi.

Lihat utas forum ini untuk info lebih lanjut:

Tetapi yang paling penting, skrip ini menetapkan GPIO sebagai output, jika tidak, item menu tidak akan berfungsi di Octoprint.

Buat skrip menggunakan nano:

nano /home/pi/setupgpio.sh

Rekatkan kode ini dan simpan file.

#!/bin/sh

echo 18 > /sys/class/gpio/export echo 23 > /sys/class/gpio/export udevadm setel echo high > /sys/class/gpio/gpio18/direction echo high > /sys/class/gpio/gpio23/direction

Jadikan file tersebut dapat dieksekusi:

chmod +x /home/pi/setupgpio.sh

Edit file rc.local:

sudo nano /etc/rc.local

Dan panggil skrip yang baru saja Anda buat dengan menambahkan baris ini:

# siapkan pin gpio untuk kontrol gerbang

/home/pi/setupgpio.sh

Nyalakan ulang raspberry Anda dan periksa apakah itu berfungsi dengan baik.

Direkomendasikan: