2025 Autor: John Day | [email protected]. Modificat ultima dată: 2025-01-13 06:58
Scopul meu este să-mi actualizez imprimanta 3D Anet A8 adăugând un control al sursei de alimentare prin interfața Octoprint. Cu toate acestea, vreau să pot începe „manual” imprimanta 3D, adică nu folosind interfața web, ci doar apăsând un buton.
Pasul 1: Cablarea
Alimentatorul AC-DC este conectat cu o mufă inteligentă (TP-Link) care poate fi controlată prin intermediul unui smartphone (App Kasa) sau al unui buton.
Această sursă de alimentare alimentează Raspberry Pi 3 B + cu ajutorul unui modul LM2596 DC-DC Buck Converter Module (12V - 5V). Modulul cu 4 relee 5V cu declanșator de nivel scăzut Optocoupler este conectat direct la RPI 3B + (nu este nevoie de o reglare de 3,3V).
4 butoane sunt conectate ca "rezistență de tragere" la RPI 3B +.
Pentru cablare, aruncați o privire la schiță.
Pasul 2: Software-ul
Pentru controlul prin intermediul butoanelor, am folosit Python pentru a scrie programul, inspirându-mă citind următorul fir:
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…
Pentru a asigura interacțiunea cu controlul prin Octoprint, există un test pentru a verifica starea curentă a releului și a-l modifica.
Scenariul este atașat.
Comentarii: Întrucât Relay 1 controlează placa de bază, am vrut să adaug o securitate prin oprirea cu butonul. Scopul a fost să mențină butonul apăsat timp de 5 secunde pentru a confirma oprirea. Din păcate, scenariul funcționează, dar nu în mod fiabil din cauza efectului de revenire. Dacă aveți o corecție care să sugereze, nu ezitați să o împărtășiți.
Pentru a face executabil scriptul: sudo chmod 777 /home/pi/script/Relay_board_control.py Pentru a testa scriptul:./Relay_board_control.py
Pentru a copia scriptul: sudo cp Relay_board_control.py / usr / local / bin
Pentru a rula automat scriptul la început:
sudo nano /etc/rc.local
adăugați calea la scriptul „/home/pi/scripts/Relay_board_control.py &” între fi și exit 0
Pentru controlul prin intermediul Octoprint, este bine documentat pe web.
Există doi pași:
1- Editați fișierul /etc/init.d/octoprint adăugând în blocul "do_start ()" imediat după RETVAL = "$ ?:
gpio export 6 out
gpio -g scrie 6 1
gpio export 13 out
gpio -g scrie 13 1
gpio export 19 afară
gpio -g scrie 19 1
gpio export 26 out
gpio -g scrie 26 1
2- Editați fișierul /home/pi/.octoprint/config.yaml adăugând blocul „Sistem”:
sistem: acțiuni:
- acțiune: Printer_ON
comanda: gpio -g scrie 6 0
confirm: fals
nume: Printer_ON
- acțiune: Printer_OFF
comanda: gpio -g scrie 6 1
confirm: Sunteți pe punctul de a transforma_OFF imprimanta.
nume: Printer_OFF
- acțiune: LED-String_ON
comanda: gpio -g scrie 13 0
confirm: fals
nume: LED-String_ON
- acțiune: LED-String_OFF
comanda: gpio -g scrie 13 1
confirm: fals
nume: LED-String_OFF
- acțiune: LED-Cam_ON
comanda: gpio -g scrie 19 0
confirm: fals
nume: LED-Cam_ON
- acțiune: LED-Cam_OFF
comanda: gpio -g scrie 19 1
confirm: fals
nume: LED-Cam_OFF
- acțiune: Releu-4_ON
comanda: gpio -g scrie 26 0
confirm: fals
nume: Releu-4_ON
- acțiune: Releu-4_OFF
comanda: gpio -g scrie 26 1
confirm: fals
nume: Releu-4_OFF
Pasul 3: Testul
Functioneaza!
Comportamentul butoanelor este puțin complicat, dar după câteva încercări îl obțineți.
Pasul 4: Finalizați conceptul
Acum voi lipi butoanele de pe un perfboard și voi adăuga un conector cu 5 pini.
În cele din urmă, am proiectat și tipărit 2 cazuri:
- una pentru RPI 3 B + și placa de releu
- una pentru a acoperi cablajul de la baza alimentatorului și pentru a fixa modulul LM2596 DC-DC Buck Converter.
Puteți găsi fișierele *.stl și *.gcode pe www.thingiverse.com
-
-