2025 Yazar: John Day | [email protected]. Son düzenleme: 2025-01-13 06:58
Amacım, Octoprint arayüzü üzerinden bir güç kaynağı kontrolü ekleyerek Anet A8 3D yazıcımı yükseltmek. Yine de, 3D yazıcımı "manuel" olarak başlatabilmek istiyorum, yani web arayüzünü kullanmamak, sadece bir düğmeye basmak.
Adım 1: Kablolama
AC-DC PSU, bir akıllı telefon (App Kasa) veya bir düğme aracılığıyla kontrol edilebilen bir Akıllı fiş (TP-Link) ile bağlanır.
Bu PSU, Raspberry Pi 3 B+'a bir LM2596 DC-DC Buck Dönüştürücü Modülü (12V - 5V) aracılığıyla güç sağlar. Optocoupler Düşük Seviye Tetikleyicili 4 Röle Modülü 5V, doğrudan RPI 3B+'ya bağlıdır (3.3V ayarlamaya gerek yoktur).
4 Butonlar, RPI 3B+'ya "pull-up direnci" olarak bağlanmıştır.
Kablolama için taslağa bir göz atın.
2. Adım: Yazılım
Butonlar aracılığıyla kontrol için, programı yazmak için Python'u kullandım ve aşağıdaki konuyu okuyarak bana ilham verdim:
www.raspberrypi.org/forums/viewtopic.php?t…https://invent.module143.com/daskal_tutorial/raspbe…
invent.module143.com/daskal_tutorial/raspbe…
www.hertaville.com/introduction-to-accessin…
www.hertaville.com/introduction-to-accessin…
Octoprint üzerinden kontrol ile etkileşimi sağlamak için rölenin mevcut durumunu kontrol etmek ve değiştirmek için bir test vardır.
Senaryo ektedir.
Yorumlar: Röle 1 anakartı kontrol ettiğinden, buton ile kapatarak bir güvenlik eklemek istedim. Amaç, kapatmayı onaylamak için düğmeyi 5 saniye boyunca basılı tutmaktı. Ne yazık ki, komut dosyası çalışıyor ancak geri tepme etkisi nedeniyle güvenilir değil. Önereceğiniz bir düzeltmeniz varsa paylaşmaktan çekinmeyin.
Komut dosyasını yürütülebilir yapmak için: sudo chmod 777 /home/pi/script/Relay_board_control.pyKomut dosyasını test etmek için:./Relay_board_control.py
Komut dosyasını kopyalamak için: sudo cp Relay_board_control.py /usr/local/bin
Komut dosyasını başlangıçta otomatik olarak çalıştırmak için:
sudo nano /etc/rc.local
fi ile çıkış 0 arasında " /home/pi/scripts/Relay_board_control.py & " betiğine yolu ekleyin
Octoprint aracılığıyla kontrol için, web'de iyi belgelenmiştir.
İki adım var:
1- /etc/init.d/octoprint dosyasını RETVAL="$?'dan hemen sonra "do_start()" bloğunu ekleyerek düzenleyin:
gpio dışa aktarma 6 dışarı
gpio -g 6 1 yaz
gpio dışa aktarma 13 dışarı
gpio -g 13 1 yaz
gpio dışa aktarma 19 dışarı
gpio -g yazma 19 1
gpio dışa aktarma 26 dışarı
gpio -g yazma 26 1
2- /home/pi/.octoprint/config.yaml dosyasını "System" bloğunu ekleyerek düzenleyin:
sistem: eylemler:
- eylem: Yazıcı_AÇIK
komut: gpio -g 6 0 yaz
onaylamak: yanlış
ad: Yazıcı_ON
- eylem: Yazıcı_KAPALI
komut: gpio -g 6 1 yaz
onayla: Yazıcıyı kapatmak üzeresiniz.
ad: Yazıcı_KAPALI
- eylem: LED-String_ON
komut: gpio -g 13 0 yaz
onaylamak: yanlış
isim: LED-String_ON
- eylem: LED-String_OFF
komut: gpio -g 13 1 yaz
onaylamak: yanlış
isim: LED-String_OFF
- eylem: LED-Cam_ON
komut: gpio -g 19 0 yaz
onaylamak: yanlış
isim: LED-Cam_ON
- eylem: LED-Cam_OFF
komut: gpio -g 19 1 yaz
onaylamak: yanlış
isim: LED-Cam_OFF
- eylem: Relay-4_ON
komut: gpio -g 26 0 yaz
onaylamak: yanlış
isim: Relay-4_ON
- eylem: Relay-4_OFF
komut: gpio -g 26 1 yaz
onaylamak: yanlış
isim: Relay-4_OFF
Adım 3: Test
İşe yarıyor!
Butonların davranışı biraz zor ama birkaç denemeden sonra anlıyorsunuz.
Adım 4: Konsepti Sonlandırın
Şimdi butonları bir perfboard üzerinde lehimleyeceğim ve 5 pinli bir konnektör ekleyeceğim.
Son olarak, 2 kasa tasarladım ve yazdırdım:
- RPI 3 B+ ve röle kartı için bir tane
- biri PSU'nun tabanındaki kabloları kapatmak ve LM2596 DC-DC Buck Dönüştürücü Modülünü sabitlemek için.
*.stl ve *.gcode dosyalarını www.thingiverse.com adresinde bulabilirsiniz.
-
-