Moteurs pas à pas

Paramètres de la liaison série

La communication (commandes et demandes d'informations) avec le rack électronique de commande des motorisations s'effectue via une liaison série RS232 configurée comme suit :



Syntaxe et règles de la communication

Les commandes sont envoyées sous forme de chaînes de caractères ASCII. Les informations sont lues également sous forme de chaînes de caractères.

Pour les commandes, l'emploi de caractères minuscules et/ou majuscules est indifférent. Si la commande est accompagnée d'un paramètre, le caractère séparateur entre la commande et son paramètre doit être un espace ou une tabulation ('\t').

Pour être validée par le rack de l’électronique , la chaîne de caractères envoyée doit se terminer par le caractère "Carriage Return" ('\r') ou "New Line" ('\n')

Le tampon de réception de l’électronique a une taille limitée à 16 caractères. Si la chaîne envoyée excède 16 caractères, seuls les 16 premiers seront pris en compte.

La syntaxe des informations en retour (électronique vers ordinateur maître) est identique à celle des commandes envoyées et se termine par les caractères " Carriage Return" ('\r') et "New Line"('\n').



Table des commandes 

Rappel :

Commande

Paramètre

Limites

Description

SEL

Numéro moteur

[1-6]

Sélection moteur

?SEL

Aucun


Lecture du numéro de moteur sélectionné

INIT

Aucun


Commande d’initialisation du moteur sélectionné (voir plus bas)

MVT

+- nombre de micropas

[+/- 999999]

Commande de déplacement

STOP

Aucun


Arrêt du mouvement en cours

VMIN

pas /sec

[TBC]

Paramétrage de la vitesse minimale

?VMIN

Aucun


Lecture de VMIN

VMAX

pas /sec

[TBC]

Paramétrage de la vitesse maximale

?VMAX

Aucun


Lecture de VMAX

ACC

Pas/sec2

[1-TBC]

Paramétrage de l’accélération

?ACC

Aucun


Lecture de ACC

?POS

Aucun


Lecture de POS

MPAS

Code
(voir plus bas)

[1-6]

Code du nombre de µpas/pas

?MPAS

Aucun


Lecture de MPAS

INT

Code
(voir plus bas)

[0-TBC]

Code d’intensité moteur

?INT

Aucun


Lecture de INT

JEU

pas

[0-TBC]

Valeur de rattrapage de jeu en micropas

?JEU

Aucun


Lecture de JEU

OFFSET

pas

[1-TBC]

Décalage de la position 0 par rapport au fin de course origine en micropas

?OFFSET

Aucun


Lecture de OFFSET

?ST

Aucun


Lecture de l’état en zone XRAM
(voir plus bas)

?ETAT

Aucun


Lecture de l’état en zone EEPROM
(voir plus bas)

?FDC

Aucun


Lecture de l’état des fins de course du moteur sélectionné
(voir tableau plus bas)

L

0 (éteint) à 7 (maxi)

[0-7]

Commande de luminosité de l’afficheur

?L

Aucun


Lecture de la luminosité de l’afficheur

B


[0-1]

Commande de clignotement de l’afficheur

TAB

Aucun


Réinitialisation par défaut de tous les paramètres moteurs
(voir plus bas)

? ?

Aucun


Retourne le code de retour de la dernière commande exécutée
(voir tableau ci dessous)

?INFO

Aucun


Retourne un tableau de tous les paramètres des moteurs
(voir tableau ci-dessous)


Codes de retour :

Code

Description

0

OK

1

Commande inconnue

2

Erreur de paramètres

3

Erreur de time out

4

Erreur de syntaxe

5

Commande non disponible

6

Moteur non connecté

7

Fin de course + (aller) activé

8

Fin de course – (origine) activé

9

Moteur non alimenté

10

Non utilisé

11

Erreur interne ( grosse erreur hardware)



Correspondance entre le code "INT" et l’intensité appliquée au moteur :

Code

0

1

2

3

4

5

Intensité (A)

0.25

0.50

0.75

1.00

1.25

1.50



Correspondance entre le code MPAS et le nombre de µpas/pas :

Code

1

2

3

4

5

6

µpas/pas

1

2

4

5

8

10



Commande TAB : Réinitialisation des paramètres par défaut :

Tous les paramètres moteur sont réinitialisés aux valeurs suivantes :



Informations sur les paramètres des moteurs :

La commande ?INFO permet d'afficher les paramètres de tous les moteurs :

VMIN (pas/sec)

VMAX (pas/sec)

ACC (pas/sec²)

INT (A)

MPAS (µpas)

POSITION (µpas)

OFFSET (µpas)

JEU (µpas)



Informations d’états sur les moteurs :

La lecture périodique, par le logiciel du micro-contrôleur , des informations d’états dynamiques du système va permettre de gérer l’affichage et d’exercer, si besoin est, des actions sur le comportement en cours du système lui-même.

Par exemple : si le moteur est en mouvement et qu’un fin de course est activé ; l’affichage devra être actualisé et le mouvement arrêté.

Autre exemple : quand une fin de mouvement est détectée, la position atteinte doit être réactualisée dans la table des positions en EEPROM et sur l’afficheur.

Ces informations dynamiques sont stockées en zone de mémoire RAM du micro-contrôleur.

Important : les informations de mouvement en cours, initialisation en cours, initialisation effectuée seront aussi stockées en zone EEPROM. En cas de problème (coupures de courant, plantage de la manip), ces infos pourront être lues pour savoir si un mouvement était en cours lors du plantage.


Valeur 1 : le paramètre est vrai ou actif
Valeur 0 : le paramètre est faux ou inactif

Paramètre

Valeur


Commentaires

Mouvement en cours

MVT

0-1

Dynamique

Si valeur =1 : le moteur sélectionné bouge

Fin de mouvement

FMVT

0-1

Dynamique

Si valeur =1 : fin de mouvement détectée

Initialisation en cours

INIT

0-1

Dynamique

Si valeur=1 : le moteur sélectionné est en phase d’initialisation

Initialisé

INIT OK

0-1

Statique

Si valeur = 1 : le moteur sélectionné est initialisé

Time out

0-1

Dynamique

Si valeur = 1 : le moteur sélectionné est en erreur de time out

FDC+

0-1

Dynamique

Si valeur = 1 : le fin de course + est activé

FDC-

0-1

Dynamique

Si valeur = 1 : le fin de course – (origine) est activé


Ces informations d’états sont accessibles via la commande ?ST (pour statut) et s’appliquent au moteur précédemment sélectionné par la commande SEL. La réponse est un mot de 16 bits avec la correspondance donnée ci-dessous.

Infos en mémoire XRAM (commande ?ST)

LSB

7

6

5

4

3

2

1

0

FDC+

FDC-

TIMOUT

INIT OK

NU

INIT

FMVT

MVT

MSB

15

14

13

12

11

10

9

8






Numéro moteur


Les informations contenues en EEPROM sont accessibles via la commande ?ETAT , seules sont disponibles les infos MVT, INIT et INIT_OK. La réponse est un mot de 8 bits avec la correspondance donnée ci-dessous.

Infos en mémoire EEPROM

LSB

7

6

5

4

3

2

1

0

NU

NU

TIMOUT

INIT OK

NU

INIT

NU

MVT



Infos d’états des fin de course :

Commande ?FDC

Valeur

Description

0

Aucun fin de course actif

1

Fin de course – (origine) activé

2

Fin de course + (aller) activé

3

Moteur non connecté ( 2 fins de courses activés)



Initialisation :

La commande INIT déclenche l'initialisation du moteur sélectionné. Cette initialisation s'effectue comme ceci :