
Ajouter un schield
#1
Posté 19 février 2023 - 10:56
Voilà je controle deux moteur pas a pas avec driver popolu et arduino uno
Et ça me fait un paquet de fils (trop de fils)
Apparemment il est possible de m'être un schield pour limiter le câblage.
Mais quel schield installer ?
comment le brancher ?
Et cela vat il impacter le programme arduino actuel ?
Je n'ai pas précisé le tipe exacte des driver ni le programme et le schéma.
Si cela a une importance dite le moi je les posterai.
Merki pour votre aide les copins
#2
Posté 20 février 2023 - 04:00
Bonjour,
Oui pour t'aider il va nous falloir beaucoup plus de détails.
Quel moteurs pas à pas ? ( combien ils consomment ? ) Quels sont les drivers actuellement utilisés ?
Est ce que tu as d'autres choses de branchée sur ton arduino uno ?
En tout cas oui cela va sans doute au moins un peu impacter ton programme ... Mais à quel point cela va dépendre du shield que tu va utiliser ...
Exemple : Ce shield peut être utilisé pour piloter deux moteur pas à pas mais est ce que ça convient pour tes moteurs à toi ? ça je ne sais pas ... Et est ce qu'utiliser ce shield va impacter ton code je pense que oui ... à quel point ? Sans voir ton code je ne sais pas ...
Est ce qu'il existe d'autres shields ? Oui beaucoup ...
Si mon commentaire vous a plus laissez nous un avis !
Nouveau sur Robot Maker ?
Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope aux articles, à la boutique et aux différents services disponible !
En attendant qu'une bibliothèque de fichiers 3D soit mise en place n'hésitez pas à demander si vous avez besoin du fichier 3D d'un des produits de la boutique... On l'a peut être !
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!
#3
Posté 21 février 2023 - 08:07
Bien que ça ferait un plus joli montage ,j'ai trop galère à faire mon programme 😅.
Mais j'ai une autre question .
Est il normal que mon driver a4988 fonctionne correctement que quand je le touche 🤔 et fait sacader mon nema 17 quand je relâche le driver 😒
On dirait un problème de masse mais Pourtant toutes mes gnd sont bien relié.
J'ai lu que les 4988 étaient sensibles au décharge électrostatique.
?????
#4
Posté 22 février 2023 - 12:41
Non c'est pas normal.
Mais peut être que si tu partages ton câblage et ton code on peut trouver pourquoi tu as ce problème...
Et si jamais tu dois modifier ton programme on peut aider
Si mon commentaire vous a plus laissez nous un avis !
Nouveau sur Robot Maker ?
Jetez un oeil aux blogs, aux tutoriels, aux ouvrages, au robotscope aux articles, à la boutique et aux différents services disponible !
En attendant qu'une bibliothèque de fichiers 3D soit mise en place n'hésitez pas à demander si vous avez besoin du fichier 3D d'un des produits de la boutique... On l'a peut être !
Si vous souhaitez un robot pilotable par internet n'hésitez pas à visiter www.vigibot.com et à lire le sous forum dédié à vigibot!
#7
Posté 22 février 2023 - 07:28
#include <AccelStepper.h> #define suiviDirPin 4 #define suiviStepPin 5 #define boutonAccelererPin 6 #define boutonRalentirPin 7 #define boutonMarchePin 8 #define boutonArretPin 9 AccelStepper stepperSuivi(1, suiviStepPin, suiviDirPin); #define zoomDirPin 2 #define zoomStepPin 3 #define boutonZoomInPin 10 #define boutonZoomOutPin 11 AccelStepper stepperZoom(1, zoomStepPin, zoomDirPin); void setup() { pinMode(suiviDirPin, OUTPUT); pinMode(suiviStepPin, OUTPUT); pinMode(boutonAccelererPin, INPUT_PULLUP); // L'autre cote du bouton au GND pinMode(boutonRalentirPin, INPUT_PULLUP); // " " " pinMode(boutonMarchePin, INPUT_PULLUP); // " " " pinMode(boutonArretPin, INPUT_PULLUP); // " " " pinMode(zoomDirPin, OUTPUT); pinMode(zoomStepPin, OUTPUT); pinMode(boutonZoomInPin, INPUT_PULLUP); // L'autre cote du bouton au GND pinMode(boutonZoomOutPin, INPUT_PULLUP); // " " " } void loop() { stepperSuivi.setMaxSpeed(2000); if (digitalRead(boutonAccelererPin) == LOW) { // Si le bouton Accelerer est pressed stepperSuivi.setSpeed(1000); } else if (digitalRead(boutonRalentirPin) == LOW) { // Si le bouton Ralentir est pressed stepperSuivi.setSpeed(20); } else if (digitalRead(boutonMarchePin) == LOW) { // Si le bouton Marche est pressed stepperSuivi.setSpeed(100); } else if (digitalRead(boutonArretPin) == LOW) { // Si le bouton Arret est pressed stepperSuivi.setSpeed(0); } else { } stepperSuivi.runSpeed(); // fait tourner le moteur a vitesse réglée stepperZoom.setMaxSpeed(2000); if (digitalRead(boutonZoomInPin) == LOW) { // Si le bouton Zoom In est pressed stepperZoom.setSpeed(200); } else if (digitalRead(boutonZoomOutPin) == LOW) { // Si le bouton Zoom Out est pressed stepperZoom.setSpeed(-200); } else { stepperZoom.setSpeed(0); } stepperZoom.runSpeed();// fait tourner le moteur à la vitesse réglée. }
Modifié par Melmet, 22 février 2023 - 08:30 .
balise
Répondre à ce sujet

1 utilisateur(s) li(sen)t ce sujet
0 members, 1 guests, 0 anonymous users