hello,
i want to command stepper motor on the two directions. I follow this tutorial:
https://learn.adafruit.com/adafruit-dc- ... per-motors
My problem is the motor turn just on one direction. what can i do please?
this is my code:
#!/usr/bin/env python
from Tkinter import *
from Adafruit_MotorHAT import Adafruit_MotorHAT, Adafruit_DCMotor, Adafruit_StepperMotor
import time
import atexit
mh = Adafruit_MotorHAT()
myStepper = mh.getStepper(200, 1) # 200 steps/rev, motor port #1
myStepper.setSpeed(30)
# recommended for auto-disabling motors on shutdown
def turnOffMotors():
mh.getMotor(1).run(Adafruit_MotorHAT.RELEASE)
mh.getMotor(2).run(Adafruit_MotorHAT.RELEASE)
mh.getMotor(3).run(Adafruit_MotorHAT.RELEASE)
mh.getMotor(4).run(Adafruit_MotorHAT.RELEASE)
atexit.register(turnOffMotors)
def call_btn_gauche():
myStepper.step(100, Adafruit_MotorHAT.FORWARD, Adafruit_MotorHAT.DOUBLE)
def call_btn_droite():
myStepper.step(100, Adafruit_MotorHAT.BACKWARD, Adafruit_MotorHAT.DOUBLE)
def verification():
if motdepasse.get() =='test':
fenetre1.destroy()
fenetre2 = Tk()
fenetre2.title ( 'Bras robot' )
label2 = Label(fenetre2)
label2.pack(side = RIGHT, padx = 10, pady = 10)
btn_exit = Button( fenetre2, text = 'Fermer' , command=fenetre2.quit )
btn_gauche = Button ( fenetre2 , text = 'Gauche', command = call_btn_gauche)
btn_droite = Button ( fenetre2 , text = 'Droite', command = call_btn_droite)
label2.grid ( row = 3, column = 3 )
btn_exit.grid ( row = 7, column = 5 )
btn_gauche.grid ( row = 1, column = 6 )
btn_droite.grid ( row = 2, column = 6 )
fenetre2.mainloop()
else:
showwarning('mot de passe incorrect, veuillez recommencer')
motdepasse.set('')
fenetre1 = Tk()
fenetre1.title ( 'Identification requise' )
label1 = Label(fenetre1)
label1.pack(side = LEFT, padx = 5, pady = 5)
motdepasse=StringVar()
Champ = Entry(fenetre1, textvariable=motdepasse, show='*', bg='bisque', fg='maroon')
Champ.focus_set()
Champ.pack(side = LEFT, padx = 5, pady = 5)
Bouton = Button(fenetre1, text = 'Valider', command = verification)
Bouton.pack(side = LEFT, padx = 5, pady = 5)
fenetre1.mainloop()