Développeur>Tutoriels>Contrôler un servomoteur avec MRPi1

Dans ce tutorial vous allez apprendre à contrôler un servomoteur avec le robot MRPi1.

servo3_robot

Besoins :

  • Un petit servomoteur (type SG90)

Préparation du servomoteur

Pour facilité la connexion du servomoteur sur le robot MRPi1, il est nécessaire d’enlever le connecteur.

Avant :

servo1

Après :

servo2

Le câblage

Un servomoteur est constitué de 3 fils :

  • Un fil pour le 0V (marron)
  • Un fil pour l’alimentation (rouge)
  • Un fil pour la commande (orange)

Connexion sur le robot MRPi1 :

Servomoteur
Fil 0V (marron) 0V (exemple pin 39 de la carte Raspberry Pi)
Fil 0V (marron) 0V (exemple pin 39 de la carte Raspberry Pi)
Fil de commande (orange)  GPIO17 de la carte Raspberry Pi

 

Le programme python

La commande est une valeur comprise entre 100 et 200 ms.

Exemple test_servo.py :

#!/usr/bin/python

import time
import RPi.GPIO as GPIO
from RPIO import PWM

GPIO.setmode(GPIO.BCM)
GPIO.setup(17,GPIO.OUT)// initialisation de la sortie GPIO17
PWM.setup()
PWM.init_channel(0)

valeur = 100
while 1:
  print "Command:"
  command = raw_input()
  PWM.add_channel_pulse(0, 17, 0, int(command) )
  time.sleep(1)

Lancement du programme :

$ sudo ./test_servo.py

servo3

Exemple :