Rasp-Hack-Stepper-Logiciel

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche


MCHobby investit du temps et de l'argent dans la réalisation de traduction et/ou documentation. C'est un travail long et fastidieux réalisé dans l'esprit Open-Source... donc gratuit et librement accessible.
SI vous aimez nos traductions et documentations ALORS aidez nous à en produire plus en achetant vos produits chez MCHobby.

le logiciel est exactement le même si vous utilisez le circuit intégré L293D ou l'ULN2803.

Ce projet met en œuvre la librairie Rpi.GPIO. Si vous ne la possédez pas déjà, vous devrez l'installer. Voir notre article sur le GPIO du Raspberry Pi

Pour installer le code, vous pouvez vous connecter à votre Pi en utilisant SSH et ouvrir un éditeur en tapant :

 $nano stepper.py 

ensuite «collez» le code suivant dans l'éditeur et sauvez-le à l'aide de CTRL-X et puis Y.

Rasp-Hack-Stepper-Soft-01.jpg
Crédit: AdaFruit Industries www.adafruit.com

Vous pouvez également utiliser la méthode décrite dans notre tutoriel Pi-Copier/Pi-Coller.

#!/usr/bin/env python
# -*- coding: latin-1 -*-

# Traduction
#   Contrôle de moteur pas-à-pas sur
#      http://mchobby.be/wiki/index.php?title=Rasp-Hack-Stepper
#   traduction CC-BY-SA par Meurisse D. pour www.mchobby.be
#   avec autorisation d'AdaFruit Industries USA.
#
# Source:
#   AdaFruit Industries USA, Réalisé par Simon Monk.
#  
import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BCM)

enable_pin = 18
coil_A_1_pin = 4
coil_A_2_pin = 17
coil_B_1_pin = 23
coil_B_2_pin = 24

# Configuration des broches de sorties
# pour contrôle des bobines du moteur pas-à-pas
GPIO.setup(enable_pin, GPIO.OUT)
GPIO.setup(coil_A_1_pin, GPIO.OUT)
GPIO.setup(coil_A_2_pin, GPIO.OUT)
GPIO.setup(coil_B_1_pin, GPIO.OUT)
GPIO.setup(coil_B_2_pin, GPIO.OUT)

# Broche d'Activation (enabled) activée
GPIO.output(enable_pin, 1)

#
# Définir Marche AVANT
# 
# Paramètres:
# delay - Délai d'attente entre deux activation de bobine. 
#         Influence la vitesse.
# steps - Nombre de pas à réaliser.
#
def forward(delay, steps):
  for i in range(0, steps):
    setStep(1, 0, 1, 0) 
    time.sleep(delay)
    setStep(0, 1, 1, 0)
    time.sleep(delay)
    setStep(0, 1, 0, 1)
    time.sleep(delay)
    setStep(1, 0, 0, 1)
    time.sleep(delay)

#
# Définir Marche ARRIERE
# 
def backwards(delay, steps):
  for i in range(0, steps):
    setStep(1, 0, 0, 1)
    time.sleep(delay)
    setStep(0, 1, 0, 1)
    time.sleep(delay)
    setStep(0, 1, 1, 0)
    time.sleep(delay)
    setStep(1, 0, 1, 0)
    time.sleep(delay)

#
# Définir l'activation des différentes
# bobines du moteur pas-à-pas en une seule 
# instruction
#
def setStep(w1, w2, w3, w4):
    GPIO.output(coil_A_1_pin, w1)
    GPIO.output(coil_A_2_pin, w2)
    GPIO.output(coil_B_1_pin, w3)
    GPIO.output(coil_B_2_pin, w4)

#
#  Boucle principale du programme
#
while True:
  delay = raw_input("Delais entre les pas (millisecondes)?")
  steps = raw_input("Combien de pas en marche avant? ")
  forward(int(delay) / 1000.0, int(steps))
  steps = raw_input("Combien de pas en marche arrière? ")
  backwards(int(delay) / 1000.0, int(steps))



Source: Adafruits Raspberry-pi Lesson 10: Stepper-motors

Réalisé avec l'aide de Mr Carette J. à qui nous remettons tous nos remerciements.

Tutoriel créé par Simon Monk pour AdaFruit Industries. Tutorial created by Simon Monk for AdaFruit Industries

Traduit avec l'autorisation d'AdaFruit Industries - Translated with the permission from Adafruit Industries - www.adafruit.com

Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : «  Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.

L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.