blender-edutech-tutoriels/labyrinthe/6-jumeaux/test/servo-test.py

30 lines
1.3 KiB
Python
Raw Normal View History

2023-10-07 08:28:28 +02:00
import pyfirmata
###############################################################################
# servo-test.py :
# @title: Test de pilotage d'un servomoteur par pyFirmata
# @project: Blender-EduTech - Tutoriel : Tutoriel 6 : Labyrinthe à bille - Développement de jumeau numérique
# @lang: fr
# @authors: Philippe Roy <philippe.roy@ac-grenoble.fr>, Andre Nicolas <Nicolas.Andre@ac-grenoble.fr>
# @copyright: Copyright (C) 2023 Philippe Roy
# @license: GNU GPL
###############################################################################
# Communication avec la carte Arduino
carte = pyfirmata.Arduino('COM3') # Windows
carte = pyfirmata.Arduino('/dev/ttyACM0') # GNU/Linux
print("Communication Carte Arduino établie")
servo = board.get_pin('d:9:s') # Servo sur broche D9
try :
while True: # Boucle infinie
angle = int(input("Entrer un angle entre 10 et 170):")) # Demande à lutilisateur dentrer la valeur de langle
if angle < 10 : # Si la valeur entrée est inférieure à 10° on bloque le servo moteur à 10°
angle = 10
elif angle > 170 : # Si la valeur entrée est supérieur à 170° on bloque le servo moteur à 170°
angle = 170
servo.write(angle) # Ecrit cette valeur dans le pin du servo moteur
except :
carte.exit()