Modifications

Sauter à la navigation Sauter à la recherche
2 303 octets ajoutés ,  13 octobre 2014 à 19:45
Ligne 34 : Ligne 34 :     
Une fois que ''git'' est installé (si ce n'est pas déjà fait) nous allons télécharger la bibliothèque Python pour cette carte DRV8835.
 
Une fois que ''git'' est installé (si ce n'est pas déjà fait) nous allons télécharger la bibliothèque Python pour cette carte DRV8835.
 +
 +
==== Installer WiringPi2 ====
 +
L'utilisation de la bibliothèque Python requière l'installation de WiringPi2.
 +
 +
Si vous n'avez pas encore installé WiringPi2, vous devez absolument passer par cette phase d'installation. 
 +
 +
[[Pi-WiringPi2-Installation|Voyez ce tutoriel pour installer WiringPi2]].
    
==== Installer la bibliothèque ====
 
==== Installer la bibliothèque ====
Ligne 47 : Ligne 54 :  
[[Fichier:RASP-DRV8835-Python-01.jpg]]
 
[[Fichier:RASP-DRV8835-Python-01.jpg]]
   −
=== Utilisation ===
+
Le répertoire contient un fichier '''setup.py''' qui permet d'enregistrer le module ''drv8835-motor-driver-rpi'' directement dans les bibliothèques python.
 +
 
 +
<nowiki>cd ~
 +
cd drv8835-motor-driver-rpi
 +
sudo python setup.py install</nowiki>
    +
ce qui produit le résultat suivant:
 +
 +
[[Fichier:RASP-DRV8835-Python-02.jpg]]
 +
 +
=== Exemple Python ===
 +
Le répertoire contient également un fichier qui se nomme '''example.py''', nous l'avons repris ci-dessous en traduisant les commentaires.
 +
 +
La valeur de la vitesse évolue entre 0 et 480.
 +
 +
<nowiki>from __future__ import print_function
 +
import time
 +
from pololu_drv8835_rpi import motors, MAX_SPEED
 +
 +
# Preparer une sequence de vitesses moteur pour la marche avant.
 +
# Pour la MARCHE AVANT, les valeurs sont POSTIVES
 +
test_forward_speeds = list(range(0, MAX_SPEED, 1)) + \
 +
  [MAX_SPEED] * 200 + list(range(MAX_SPEED, 0, -1)) + [0] 
 +
 +
# Preparer une sequence de vitesses moteur pour la marche arriere.
 +
# Pour la MARCHE ARRIERE, les valeurs sont NEGATIVES
 +
test_reverse_speeds = list(range(0, -MAX_SPEED, -1)) + \
 +
  [-MAX_SPEED] * 200 + list(range(-MAX_SPEED, 0, 1)) + [0] 
 +
 +
try:
 +
    # Mettre les deux moteurs à l'arret
 +
    motors.setSpeeds(0, 0)
 +
 +
    print("Moteur 1 marche avant")
 +
    for s in test_forward_speeds:
 +
        motors.motor1.setSpeed(s)
 +
        time.sleep(0.005)
 +
 +
    print("Moteur 1 marche arriere")
 +
    for s in test_reverse_speeds:
 +
        motors.motor1.setSpeed(s)
 +
        time.sleep(0.005)
 +
 +
    print("Moteur 2 marche avant")
 +
    for s in test_forward_speeds:
 +
        motors.motor2.setSpeed(s)
 +
        time.sleep(0.005)
 +
 +
    print("Moteur 2 marche arrière")
 +
    for s in test_reverse_speeds:
 +
        motors.motor2.setSpeed(s)
 +
        time.sleep(0.005)
 +
 +
finally:
 +
  # Arreter les moteurs, même s'il y a une exception
 +
  # ou si l'utilisateur presse Ctrl+C pour arrêter le processus.
 +
  motors.setSpeeds(0, 0)
 +
</nowiki>
 +
 +
vous pouvez le tester facilement à l'aide de la série de commande suivante:
 +
 +
<nowiki>cd ~
 +
cd rv8835-motor-driver-rpi
 +
sudo python example.py</nowiki>
    
{{RASP-DRV8835-TRAILER}}
 
{{RASP-DRV8835-TRAILER}}
29 918

modifications

Menu de navigation