Approved Reseller
Approved Reseller
En este pequeño tutorial veremos cómo conectar un servo mediano de posición con rango de 180 grados a una tarjeta Raspberry Pi, también encontrarás un código de programación para tus primeras pruebas.
Los servomotores son dispositivos electromecánicos que tienen la capacidad de controlar la posición angular de su eje, su funcionamiento consiste en recibir la información del ángulo deseado a través del ancho de pulso de una señal PWM para llevar al eje a dicha posición, por lo regular constan de un motor de corriente directa, un tren de engranes reductores y una tarjeta de control, todo contenido en una caja de plástico.
Este ejemplo está pensado para los servos MG995 y SG5010 pero es posible que funcione para muchos modelos más, para implementar la señal de control utilizaremos el paquete de python3 . Cabe mencionar que este servomotor NO se puede alimentar directamente del Pin 5V en nuestra tarjeta ya que demanda demasiada corriente, recomendamos siempre utilizar una fuente externa.
Copiamos el siguiente código un script de Python y lo ejecutamos con Python3 para observar las diferentes posiciones angulares del eje del servo.
import RPi.GPIO as GPIO import time servoPIN = 18 GPIO.setmode(GPIO.BCM) GPIO.setup(servoPIN, GPIO.OUT) p = GPIO.PWM(servoPIN, 50) # GPIO 18 for PWM with 50Hz p.start(2.5) try: while True: p.ChangeDutyCycle(5) time.sleep(0.5) p.ChangeDutyCycle(7.5) time.sleep(0.5) p.ChangeDutyCycle(10) time.sleep(0.5) p.ChangeDutyCycle(12.5) time.sleep(0.5) p.ChangeDutyCycle(10) time.sleep(0.5) p.ChangeDutyCycle(7.5) time.sleep(0.5) p.ChangeDutyCycle(5) time.sleep(0.5) p.ChangeDutyCycle(2.5) time.sleep(0.5) except KeyboardInterrupt: p.stop() GPIO.cleanup()