je voudrais controler 2 moteurs pas à pas en même temps , pour faire des cycles de déplacements
cependant dans ma ligne de code "Loop" , lorsque j'envoie les commandes de déplacement de X pas "step" sur chaque moteur , ils réalisent leur déplacement chacun leur tour et non en meme temps ( ce que je souhaiterais !! )
avez vous une solution ?
cordialement
jfs:
Dites voir.... mettre le code entre les balises ça vous dirait pas...
+1
mettre des delay en plus, va avoir pour effet d'avoir des mouvements saccadés en plus.
sujet déjà évoqué il y a peu de temps pour un soucis similaire sur le forum.
donc une petite recherche s'impose.
Bonjour,
A quoi sert la fonction recherche sur le forum ?
Ce sujet a été évoqué il y a quelques jours : Par exemple ici (il y a d'autres topics sur le sujet)
Tu devrais également faire une recherche sur le net avec : algorithme de Bresenham
Et surtout n'oublie pas de mettre ton code entre balises (perso, je ne regarde même pas le code dans cette présentation).
C'est quoi les balises codes ? -> Lire les messages épinglés
un grand merci Alain , effectivement c'est mieux comme ça
c'est parfait , maintenant il faut que j'arrive à comprendre la logique de ta prog
bonne soirée
dernière chose sur lequel je ''bute'' , je ne trouve pas ma solution sur les diff postes :
sur une autre configuration avec un contrôle du moteur PAS à Pas à l'aide d'un joystick
position neutre du joystick = moteur OFF
levier à fond à gauche = moteur step 1
levier à fond à droite = moteur step -1
à l'initialisation de carte arduino ( dans le setup ) je réalise un procédure de positionnement au point ''Home ''
qui physiquement pour moi et le point ''0 '' de met déplacement avec le joystick ( déplacement en step - ou step + )
toute cette partie fonctionne comme je le souhaite , mais pour plus de sécurité , j'aimerai mettre des butées virtuel :
c'est à dire en partant toujours du point Home ( 0 ) je peux me déplacer avec le joystick de 1000 pas max en positif ou de -1000 pas max toujours par rapport à mon centre ( le fameux point Home )
du coup j'aurai une amplitude de 2000 pas ( de -1000 à 1000 )
et du fait je ne trouve pas la combine pour dire au moteur de ne plus avancer en pas positifs si je dépasse la butée de 1000 pas et idem en pas négatifs , voila ou j'en suis
cordialement
nico
#include <Stepper.h>
// initialiser la bibliotheque stepper sur les broches D8 a D11:
Stepper NemaPan(10000,8,9,10,11); //Attribution des broches tilt
int ButePan = 2 ;// entrée numérique capteur A pan
int buteStatePan = 0 ;
int sensorPin = A0;
int joystickPan = 0; // entrée analogique A0
void setup() {
pinMode(ButePan,INPUT);
NemaPan.setSpeed(6); // vitesse de rotation à l'allumlage de la machine , deplacement de la tete jusqu'a toucher la butée
while(digitalRead (ButePan)==LOW)
{NemaPan.step(-1);}
NemaPan.setSpeed(8); // vittesse de retour
NemaPan.step(7270); // nbr de pas pour reculer et se mettre en position home
}
void loop(){
int joystickPan = analogRead(sensorPin);
if (joystickPan == 0 ){
NemaPan.step(1);
NemaPan.setSpeed(10);
}
if (joystickPan ==1023 ){
NemaPan.step(-1);
NemaPan.setSpeed(10);
}
}
Faire fonctionner 2 moteurs pas à pas simultanément, position home, butée logicielle ?
Avant de ce lancer dans du développement, l'objectif c'est quoi ?