Tabla de contenido:

Controlar una placa de relés desde Octoprint en una Raspberry Pi: 5 pasos
Controlar una placa de relés desde Octoprint en una Raspberry Pi: 5 pasos

Video: Controlar una placa de relés desde Octoprint en una Raspberry Pi: 5 pasos

Video: Controlar una placa de relés desde Octoprint en una Raspberry Pi: 5 pasos
Video: 🟢Aprende FÁCIL ►OCTOPRINT | TUTORIAL en 5 PASOS (Octoprint español) 2024, Noviembre
Anonim
Controlar una placa de relés desde Octoprint en una Raspberry Pi
Controlar una placa de relés desde Octoprint en una Raspberry Pi

Entonces tienes una frambuesa pi con Octoprint e incluso tienes una configuración de cámara. Lo último que necesita es una forma de encender y apagar su impresora 3D y tal vez controlar una luz. ¡Este instructivo es para ti!

Esto está inspirado y simplificado de:

Asegúrese de revisar mi instructable anterior donde construí una caja de cerramiento / campana extractora para mi impresora 3D, ya que esta es la secuela.

Probado con:

Linux octopi 4.14.79-v7 + # 1159 SMP Dom 4 de noviembre 17:50:20 GMT 2018 armv7l GNU / Linux

Versión de OctoPrint: 1.3.11 Versión de OctoPi: 0.16.0

Descargo de responsabilidad: No asumo ninguna responsabilidad por cualquier daño que pueda suceder si sigue estas instrucciones.

Suministros

  • Tablero de relés de 5V con optoacoplador (ebay)
  • Algunos cables de puente
  • Una caja eléctrica con enchufes (opcional)

Paso 1: Conexión de la placa de relés a su Raspberry Pi

Conexión de la placa de relés a su Raspberry Pi
Conexión de la placa de relés a su Raspberry Pi

Aunque los tableros de relés están hechos para lógica de 5 V, se dispararán correctamente a 3.3 V. Sabiendo esto, pude evitar cualquier modificación a la placa original.

Escudo relé Frambuesa

------------ --------- Bobinas: JD-VCC - 5V VCC - No conectado GND - GND Lógica: GND - No conectado IN1 - GPIO # 23 IN2 - GPIO # 18 VCC - 3,3 V

Es importante quitar el puente entre JD-VCC y VCC si tiene uno. Esto permitirá alimentar 5 V para las bobinas mientras alimenta 3.3 V para las entradas lógicas. Y dado que ambos GND están conectados entre sí internamente, solo conectamos uno de ellos.

Paso 2: SSH a tu Raspberry Pi y configúralo

SSH a tu Raspberry Pi y configúralo
SSH a tu Raspberry Pi y configúralo

Usando putty o su cliente ssh favorito, conéctese a su raspberry pi usando la misma dirección IP que usa para acceder a Octoprint. El nombre de usuario predeterminado es pi y la contraseña es frambuesa.

Lo primero que haría es verificar que los relés respondan correctamente. Para hacer esto, emita estos comandos

gpio -g modo 18 salidas

gpio -g modo 23 out gpio -g escritura 18 0 gpio -g escritura 23 0 gpio -g escritura 18 1 gpio -g escritura 23 1

Las primeras 2 líneas permiten configurar el GPIO como salida. Luego, activa y desactiva las salidas. Eso debería hacer que el relé haga clic. Cuando las entradas son bajas (0), el relé debe encenderse y cuando las entradas son altas (1) deben apagarse. Así que sí, esto es un poco contradictorio, ¡pero así es!

Paso 3: agregue nuevas opciones de menú a Octoprint para controlar sus relés

Agregue nuevas opciones de menú a Octoprint para controlar sus relés
Agregue nuevas opciones de menú a Octoprint para controlar sus relés
Agregue nuevas opciones de menú a Octoprint para controlar sus relés
Agregue nuevas opciones de menú a Octoprint para controlar sus relés

Deberá editar el archivo config.yaml:

sudo nano.octoprint / config.yaml

Dentro de ese archivo, ubique la sección "sistema" y agregue lo siguiente:

sistema:

acciones: - acción: comando de impresora encendida: gpio -g escribir 18 0 nombre: encender la impresora - acción: comando de apagado de impresora: gpio -g escribir 18 1 confirmar: está a punto de apagar la impresora. nombre: Apague la impresora - acción: comando lon: gpio -g write 23 0 nombre: LightOn - acción: comando loff: gpio -g write 23 1 nombre: LightOff

Después de guardar el archivo (ctrl + x), reinicie la raspberry pi:

sudo reiniciar

¡Ahora debería poder controlar los relés desde la interfaz web de Octoprint!

Paso 4: Cableado de alto voltaje (tenga cuidado)

Cableado de alto voltaje (tenga cuidado)
Cableado de alto voltaje (tenga cuidado)

Un relé actúa como un interruptor, solo que lo activa un controlador, en este caso una frambuesa pi. El interruptor consta de un electroimán que conectará los pines, ese es el clic que escuchará.

Para cablearlo tiene dos opciones. O cortas uno de los cables de la fuente de alimentación de tu impresora 3D y conectas los extremos al relé, o haces una toma de corriente para eso. Prefiero la segunda forma, ya que esto permitirá mover la impresora con mayor facilidad. También usaré la segunda salida para conectar mi extractor de aire (vea mi otro instructivo: Campana extractora de humos de impresora 3D fácil y barata).

Ahora el otro relé es controlar una luz. Es el mismo principio, pero en este caso recomiendo que simplemente corte uno de los cables del cable de alimentación y conecte los extremos al relé, lo más probable es que no sea necesario moverlo.

Paso 5: Configure las salidas GPIO y evite que sus relés se enciendan cuando se reinicia la Raspberry Pi

Para resumir el problema, GPIO se establece bajo cuando raspbian se reinicia (al menos para ciertas versiones del kernel). Aparentemente, no hay mucho que podamos hacer… ¡bueno! Entonces, la idea es llamar a un script que revertirá eso una vez que termine de arrancar configurando las salidas altas.

Consulte este hilo del foro para obtener más información: https://www.raspberrypi.org/forums/viewtopic.php? T = 35321

Pero lo más importante es que este script establece los GPIO como salidas; de lo contrario, los elementos del menú no funcionarán en Octoprint.

Crea un script usando nano:

nano /home/pi/setupgpio.sh

Pegue este código y guarde el archivo.

#! / bin / sh

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

Haga que el archivo sea ejecutable:

chmod + x /home/pi/setupgpio.sh

Edite el archivo rc.local:

sudo nano /etc/rc.local

Y llame al script que acaba de crear agregando estas líneas:

# configurar los pines gpio para el control de la puerta

/home/pi/setupgpio.sh

Reinicia tu frambuesa y verifica que esté funcionando correctamente.

Recomendado: