Outils Console moteur PAP

  • Auteur de la discussion jpbbricole
  • Date de début
J

jpbbricole

Compagnon
Bonjour à tous

Au vu de l’usage fréquent de PAP dans ce forum, J’aimerai vous faire partager un utilitaire qui tourne dans un Arduino Nano (mais transférable dans un autre modèle).
Le principe est, au moyen de quelques commandes, modifier les paramètres de l’interface du moteur et avec d’autres commandes, contrôler le résultat.
Les commandes sont introduites au moyen de la ligne de commande du moniteur de l’IDE Arduino ou de tout programme d’émulation sur port série.

Les paramètres introduits sont sauvegardés en mémoire permanente.
Le programme n’est pas très compliqué et facilement adaptable à vos propres besoins.
Le PAP est drivé par un A4988 et la bibliothèque AH_Pololu.h
upload_2016-6-14_17-34-18.png

La structure des commandes est nomParametre=valeurParametre
Les commandes sont, pour les paramètres:
vitesse :
SetRpm=50 // (t/min)
SetSpeedHz=100 // (Hz)
Définition :
SetMicroSteps=0 //(0-4)

Les commandes sont, pour les essais:
PapMove=100 // Déplacements par pas, positif ou negatif
PapRotate=180 // Déplacements degrés, positif ou negatif
PapRevolve=7 // Déplacements par tours, positif ou negatif

Les commandes ne sont pas sensibles majuscule ou minuscule.
Au démarrage ou après un reset de l’Arduino, les paramètres sauvés sont listés dans le moniteur.
upload_2016-6-14_17-36-33.png

A votre disposition pour toutes questions.
Bonne soirée
jpbbricole

Je joins à cet article le nécessaire :
Source Arduino USIN_Console_PAP.ino
La bibliothèque AH_Pololu
Le programme Terminal avec les macro nécessaires.
Voir la pièce jointe Kit_USIN_Console_PAP.zip
 
Dernière édition:
P

pinou29

Compagnon
Bonjour.
Je m'incline bien bas devant un tel talent.
Merci.
Bernard.
 
J

jpbbricole

Compagnon
@lion10
c'est aussi une alternative, à voir si c'estccompatible avec la bbibliothèque AH_pololu. A première vue les broches sont les mêmes.

Cordialement
jpbbricole
 
L

lion10

Compagnon
Bonjour
Lorsque je vais les tester j'envisage de faire une modification au moins sur 1 afin de pouvoir piloter par logiciel le réglage du courant.
Mais il va falloir que je parcours le datasheet pour savoir si je peux modifier ce courant en dynamique. Autrement dit le circuit mémorise -t-il la consigne de courant lors de sa mise sous tension, à priori je ne pense pas.
L'idée ensuite est de faire une boucle de rétro-action afin de voir ce que le moteur peut tenir pour une certaine consigne de courant sans décrochage des pas et sa tenue pratique en vitesse sur un banc ou en situation sur une machine.

cdlt lion10
 
P

pinou29

Compagnon
Bonjour.
Pardon pour cette nouvelle question de débutant, où trouver la bibliothèque AH_Pololu et comment l'intégrer dans le programme.
J'ai reçu ce matin la carte Nano commandée le 7 juin (8 jours seulement pour arriver de Chine) et quand je téléverse le programme de jpbbricole donné ci-dessus, j'ai une rafale d'erreurs qui s'affichent.
Je précise que c'était juste pour voir si la carte fonctionnait, il n'y a rien d'autre de branché et avec d'autres programmes, pas de problème de téléversement.
Merci.
Bernard.
 
J

jpbbricole

Compagnon
où trouver la bibliothèque AH_Pololu
Dans le zip attaché dans le premier post
le dossier AH_pololu est à copier dans le dossier où se trouve Arduino.exe sous dossier libraries

Bonne soirée
jpbbricole
 
J

jpbbricole

Compagnon
j'envisage de faire une modification
Excellente idée, le schéma à l'air assez simple.
upload_2016-6-15_19-35-11.png

Mais je pense qu'il faudrai un DAC pour générer la tension assez propre sur la patte REF.
Je vais suivre attentivement.

Cordialement
jpbbricole
 
P

pinou29

Compagnon
Bonjour.
Un mystère pour moi.
Je "bricole" avec deux ordinateurs portables, les deux sous XP Pro SP3, et lorsque je téléverse le programme ci-dessus donné par jpbbricole, sur l'un des ordinateurs, pas de problème, sur l'autre ordinateur, j'ai ce message:
avrdude: stk500_getsync(): not in sync: resp=0x00
J'ai cherché sur la toile, j'ai trouvé tout et son contraire, "la carte est cramée, mauvais programme, mauvais câble........."etc, etc
Sauf que ma carte fonctionne mais seulement sur un seul micro.
Je suis sur le bon type de carte et le bon port.
Quelqu'un d'entre-vous a-t'il eu ce genre de problème et si oui, comment l'avez-vous réglé ?
Merci.
Bernard;
 
J

jpbbricole

Compagnon
Salut pinou29
Connecte ton Arduino sur le port USB et regarde, dans le gestionnaire de périfériques
upload_2016-6-16_19-1-58.png

Dans ce 2 sections s'il y a des points d'exclamation.
au besoin poste la copie d'écran.

jpbbricole
 
P

pinou29

Compagnon
Bonsoir.
pas de pont d'interrogation dans le gestionnaire de périphérique.
Merci.
Bernard.
upload_2016-6-16_22-21-36.png
 
J

jpbbricole

Compagnon
Si tu as plusieurs ports USB sur ce laptop, est ce que ça fait le même problème sur les autres, attention, en changeant de port USB, il est possible que le numéro de COM change.
Sinon, solution suivante, quand le câble est branché, dans le gestionnaire de perifériques, clic droite sur la connexion (sur l'image COM12), supprimer ou désinstaller en supprimant le driver. Ensuite déconnecter le câble, redémarrer le pc et reconnecter l'Arduino et réessayer.
Bonne soirée.
jpbbricole
 
J

jpbbricole

Compagnon
Salut pinou29
Un autre test à faire, sur le laptop qui fonctionne, fais un petit programme, dans l'Arduino, qui fait afficher queluque chose en boucle dans le fenêtre du moniteur de l'IDE dans le genre:

void setup()
{
Serial.begin(9600);
}
void loop()
{
Serial.println("pinou29");
delay(500);
}

Ensuite connecte l'Arduino sur l'autre laptop et regarde si le texte apparaît dans le moniteur de l'IDE.

Bonne journée
Jean-Pierre
 
J

jpbbricole

Compagnon
Bonjour
Une autre bibliothèque pour gérer mos PAP , AccelStepper, à mon avis plus riche que AH_Pololu, permet de régler l'accélération, mémorise les positions etc.

Bonne journée
jpbbricole
 
P

pinou29

Compagnon
Bonjour.
Problème résolu concernant le message d'erreur que j'avais sur mon NetBook.
Et en plus je l'avais sous les yeux et la solution avait été donnée par jpbbricole.
Par défaut lors du téléversement ça partait sur le port com7 or, si on regarde ma copie d'écran la carte est reconnue sur le port 12.
Eh oui, en changeant le n° de port, ça a marché.
Comme quoi, comme disait Brassens dans sa chanson, quand on est con, on est con.
Merci.
Bernard.
 

Sujets similaires

V
Réponses
3
Affichages
923
vibram
V
F
Réponses
6
Affichages
25 595
fraiddy
F
G
Réponses
0
Affichages
574
gaston83
G
Moi33
Réponses
3
Affichages
47 955
speedjf37
S
G
Réponses
123
Affichages
19 015
gaston83
G
vax
Réponses
11
Affichages
11 939
vax
Mcar
Réponses
65
Affichages
11 571
Mcar
V
Réponses
62
Affichages
5 195
vibram
V
L
Réponses
29
Affichages
1 369
dh42
U
Réponses
85
Affichages
7 103
Hubert86
H
T
Réponses
28
Affichages
2 912
Tristan l'apprenti
T
01power
Réponses
3
Affichages
13 742
01power
01power
G
Réponses
65
Affichages
9 195
rokag3
R
D
Réponses
9
Affichages
3 016
David80
D
Haut