Introduzione
Lo step successivo all'installazione di octprint è quello di configurare il software in modo che sia possibile accendere la stampante e una luce direttamente dall'interfaccia web del software, in questa maniera sarà possibile effettuare le seguenti operazioni:
- accedere allinterfaccia di octoprint
- alimentare la stampante
- alimentare un faretto che illumina il piatto di stampa
- avviare la stampa
Inoltre è possibile far si che al terine della stampa l'alimentazione della stampante sia rimossa in automatico.
Questo obbiettivo sarà raggiunto usando le uscite GPIO del raspberry che esegue octoprint e alcuni relays che devono essere collegati tra i device e le loro alimentazioni.
Intallazione e Configurazione
Questo articolo è riportato solo a scopo illustrativo, ed è distribuito
SENZA NESSUNA GARANZIA, senza nemmeno la garanzia implicita di
COMMERCIABILITÀ o IDONEITÀ PER UNO SCOPO PARTICOLARE.
L'autore declina ogni responsabilità per danni derivanti da quanto di seguito riportato
Circuiti Elettrrici
Ecco lo schema di come andare a collegare i vari componenti.
Intallazione del software per GPIO
Per accedere poter utilizzare gli io ho installato:
yay aur/python-raspberry-gpio # suggerito dalla guida di archarm
yay alarm/wiringpi # ncessario per poter pilotare i pin da bash
Installazione dei plugin su Octoptrint
Il plugin necessario alla scopo è : System Command Editor; è presente nell'elenco dei plugin ufficiali, quindi suggerisco di installarlo direttamente dal plugin manager di octoprint.
Creazione degli script di gestione
Durante questo step ho creato i due script che andranno a controllare i pin collegati ai relay.
lo script per controllare la luce è:
::::::::::::::
/opt/3dprintcrlt/lightctl.sh
::::::::::::::
#!/bin/bash
MODE=$1
PIN=23
gpio mode $PIN out
if [[ $MODE == on ]]; then
gpio write $PIN 1
elif [[ $MODE == off ]]; then
gpio write $PIN 0
else
echo -e "usage:\n$1 [ on | off ]"
fi
exit 0
lo script per controllare l'alimentazione della stampante è:
::::::::::::::
/opt/3dprintcrlt/printerctl.sh
::::::::::::::
#!/bin/bash
MODE=$1
PIN=24
gpio mode $PIN out
if [[ $MODE == on ]]; then
gpio write $PIN 1
elif [[ $MODE == off ]]; then
gpio write $PIN 0
else
echo -e "usage:\n$1 [ on | off ]"
fi
exit 0
Configurazione di Octoprint
Consiglio di eidtare direttamente il file di conf:
::::::::::::::
/home/octo/.octoprint/config.yaml
::::::::::::::
.
.
.
system:
actions:
- action: printeron
command: /opt/3dprintcrlt/printerctl.sh on
name: PrinterOn
- action: printeroff
command: /opt/3dprintcrlt/printerctl.sh off
name: PrinterOff
- action: lightoff
command: /opt/3dprintcrlt/lightctl.sh off
name: LightOff
- action: lighton
command: /opt/3dprintcrlt/lightctl.sh on
name: LightOn
.
.
.
L'effeto di questo sarà la comparsa di nuove voci nel menù delle azioni: