Cómo hacer funcionar un motor paso a paso con Raspberry PLC

Codifica en Python y saca el máximo partido al PLC de Raspberry para la automatización industrial
11 de octubre de 2021 por
Cómo hacer funcionar un motor paso a paso con Raspberry PLC
Boot & Work Corp. S.L., Fernandez Queralt Martinez

Introducción

Como hemos mencionado en el previous post >En el mundo de la automatización industrial, los motores paso a paso se utilizan habitualmente para hacer funcionar cintas transportadoras o impresoras 3D, entre otros.

¡En este post, vamos a mostrarte cómo ejecutar código Python para hacer funcionar tu motor paso a paso con la automatización de Raspberry Pi!

Your Dynamic Snippet will be displayed here... This message is displayed because you did not provided both a filter and a template to use.

Requisitos

Librería Python RPI.GPIO

Una vez que el driver Microstep y el motor paso a paso están bien conectados al PLC de la Raspberry Pi, vamos a proceder a hacer funcionar el motor paso a paso.

Así que, en primer lugar, vamos a configurar los pines ya que el motor paso a paso requiere una forma de transmitir una señal PWM al PLC de la Raspberry Pi industrial.

import RPi.GPIO as GPIO
from time import sleep
# Pin 10 from Raspberry Pi: Uart RX
DIR = 10
# Pin 8 from Raspberry Pi: Uart TX
STEP = 8
# 0 or 1 to set the sense of rotation: clockwise or counterclockwise.
CW = 1
CCW = 0
# Setup pin layout on PI
GPIO.setmode(GPIO.BOARD)
# Setup the GPIO mode of each pin
GPIO.setup(DIR, GPIO.OUT)
GPIO.setup(STEP, GPIO.OUT)

Señal PWM

Para configurar mejor el motor paso a paso, debes saber cuál es la potencia de tu motor, ya que si tu configuración está en 1 micropaso, entonces se necesitarán 200 pasos para hacer una revolución completa.

Por lo tanto, en el código Python de abajo, haremos lo siguiente:

1. Poner el primer sentido de giro.

2. Establece un tiempo para dormir para dejar un tiempo para cambiar la dirección.

3. Ejecuta los pasos que necesite tu microcontrolador. Y pon el pin TX en LOW. Ponlo a reposar con la velocidad para que el motor funcione. Pon el pin TX a LOW.  Ponlo a reposar con la velocidad para que el motor funcione. 

4. Establece un tiempo para dormir para dejar un tiempo para cambiar la dirección de nuevo.

5. Por último, repite el paso 3 con el sentido contrario a las agujas del reloj.

GPIO.output(DIR, CW)
try:
     while True:
                sleep(1.0)
                GPIO.output(DIR,CW)
                for x in range(200): 
                        GPIO.output(STEP,GPIO.HIGH)
                        sleep(.005) 
                        GPIO.output(STEP,GPIO.LOW)
                        sleep(.005)
                sleep(1.0)
                GPIO.output(DIR,CCW)
                for x in range(200):
                        GPIO.output(STEP,GPIO.HIGH)
                        sleep(.005)
                        GPIO.output(STEP,GPIO.LOW)
                        sleep(.005)
except KeyboardInterrupt:
        print("cleanup")
        GPIO.cleanup(

Código completo

Ahora, copia todo el código de abajo, pégalo en un archivo, ejecútalo en tu PLC industrial Raspberry Pi y ¡haz que tu motor paso a paso funcione!

import RPi.GPIO as GPIO
from time import sleep
DIR = 10
STEP = 8
CW = 1
CCW = 0
GPIO.setmode(GPIO.BOARD)
GPIO.setup(DIR, GPIO.OUT)
GPIO.setup(STEP, GPIO.OUT)
GPIO.output(DIR, CW)
try:
while True:
sleep(1.0)
GPIO.output(DIR,CW)
for x in range(200):
GPIO.output(STEP,GPIO.HIGH)
sleep(.005)
GPIO.output(STEP,GPIO.LOW)
sleep(.005)
  sleep(1.0)
GPIO.output(DIR,CCW)
for x in range(200):
GPIO.output(STEP,GPIO.HIGH)
sleep(.005)
GPIO.output(STEP,GPIO.LOW)
sleep(.005)
except KeyboardInterrupt:
print("cleanup")
GPIO.cleanup()

 
 

 Ahora, ¿te gustaría hacer un Dashboard Node-RED para tu PLC de código abierto Raspberry Pi para arrancar y parar mejor el motor paso a paso?

Leer más >>

Buscar en nuestro blog

Cómo hacer funcionar un motor paso a paso con Raspberry PLC
Boot & Work Corp. S.L., Fernandez Queralt Martinez 11 de octubre de 2021
Compartir

¿Estás buscando tu Controlador Lógico Programable ideal?

Echa un vistazo a esta comparativa de producto de varios controladores industriales basados en Arduino.

Comparamos entradas, salidas, comunicaciones y otras especificaciones con las de los equipos de otras marcas destacadas.


Industrial PLC comparison >>>