Utilisation des MC_xxx

Forum traitant des automates industriels de marque Siemens.
Répondre
alexisLeCodeurLent
Code sa première boucle
Code sa première boucle
Messages : 12
Enregistré le : 30 mai 2025, 12:12

Utilisation des MC_xxx

Message par alexisLeCodeurLent »

Bonsoir tout le monde,

Je suis en pleine mise en service d'une application de positionnement d'objet sur un convoyeur à l'aide d'un S200 connecté à un 1200-G2 (via PN IRT.) (objet : to_positioning_axis)
Globalement, j'ai réussi à utiliser les fonctions de déplacement dont j'avais besoin pour mon application (MC_VELOCITY / HOME / RELATIVE etc...)

Cependant la gestion de la remise à 0 des défauts (MC_RESET) ou des fonctions pour valider/dévalider l'axe (MC_POWER / STOP) reste flou.

il m'est arrivé d'avoir certains MC_RESET qui ne passent pas, je suis obligé de faire un front sur MC_POWER après reset ... etc ... selon l'aide

Aussi, j'ai tenté de faire un test de perte du réseau PN (débrancher le câble) - impossible d'acquitter le S200 même après reboot élec...

Bref, je me perds un peu, car c'est le premier axe siemens que je touche
Comment procédez-vous pour la gestion des défauts sur un axe pour essayer de couvrir l'ensemble des cas de figures ?

autre question (peut être con) je valide en permanence MC_POWER (pour le moment) dois-je dévalider le bloc après chaque mouvement ? (peut être lié mes emmerdes sur la gestion des défauts?)

En espérant avoir été clair.

cdt,

Alexis
MiGaNuTs
Mi homme - Mi automate
Mi homme - Mi automate
Messages : 1572
Enregistré le : 12 nov. 2015, 21:02
Localisation : 45 - Loiret
Contact :

Re: Utilisation des MC_xxx

Message par MiGaNuTs »

Bonjour.
La plupart du temps, pour des applis simples sans trop de "cas particulier", je coupe le MC_Power avec l'arret d'urgence, et je le remets une poignée de millisecondes apres son retour.
Les servos n'aiment pas trop avoir les entrées STO coupées et la MC_Power actif. Et de toutes facons ca sert a rien de le laisser dans ce cas de figure.
Ensuite je fait un petit MC_Reset sur le front montant du bit qui me dit que mon MC power est OK
Et normalement apres ca, mes servos sont "ready" ou "standstill", prets a travailler.
alexisLeCodeurLent
Code sa première boucle
Code sa première boucle
Messages : 12
Enregistré le : 30 mai 2025, 12:12

Re: Utilisation des MC_xxx

Message par alexisLeCodeurLent »

Salut MiGaNuTs,

Merci pour tes conseils.

En effet c'est une machine qui va se prendre des arrêts d'urgences à tour de bras... pour le moment les STO tombent avec MC_POWER tjr actif :)
je vais déjà programmer ce qui tu m'as décris (qui était très clair :) )

Je ferai un feedback.

cdt,

Alexis
Avatar du membre
djé
Dieu du process
Dieu du process
Messages : 864
Enregistré le : 20 oct. 2015, 09:55
Localisation : Bretagne, Pays de la Loire, Nantes
Contact :

Re: Utilisation des MC_xxx

Message par djé »

Hello,
En motion il faut bien comprendre les relations qui existent entre les différents états et les bloc de fonction MC_XXX et la possibilité de passer d'un état à l'autre via ces blocs
C'est expliqué ici; c'est une page Beckhoff mais comme il s'agit du standard PLCopen c'est similaire quelque soit les plateformes.
Le monde se divise en 10 catégories:les personnes qui comprennent le binaire,et les autres.

Dans tout ce que vous apprenez, seuls 10% vont vous servir,mais vous ne savez pas lesquels ...
alexisLeCodeurLent
Code sa première boucle
Code sa première boucle
Messages : 12
Enregistré le : 30 mai 2025, 12:12

Re: Utilisation des MC_xxx

Message par alexisLeCodeurLent »

Hello
j'ai progressé sur la gestion des reset / power / stop
globalement ca se passe bien

Par contre après un arrêt d'urgence, une fois ma séquence de reset / mc_power effectué
la valeur (converti) de mon codeur part en cacahuète (elle prends plusieurs milliers de mm)
pourtant elle se fige bien à la bonne valeur (avance réelle de mon tapis)

mes blocs MC_xxx ne retourne aucune erreur

:!: Edit :

Je sais que mon problème se situe sur MC_POWER qui passe en error 8001 malgré toutes les conditions misent...
(alarme 421)
"TO".StatusDrive.InOperation est à false (devrait être dans les conditions de démarrage)
L'axe est paramétré / optimisé
Safety OK (UMAC etc...)
alexisLeCodeurLent
Code sa première boucle
Code sa première boucle
Messages : 12
Enregistré le : 30 mai 2025, 12:12

Re: Utilisation des MC_xxx

Message par alexisLeCodeurLent »

Hello tous,

Pour info :
J'ai trouvé pourquoi

MC_RESET.RESTART = True me posait problème...
il faisait un reset complet de l'objet aux valeurs initiales

Je me suis aperçu que, le codeur reprenait la valeur cumulé totale depuis le début de la mise en service ! :shock: :shock:
j'ai fouillé dans le DB du TO pour voir ou était stocké cette donnée, je n'ai rien vu de particulier...

exemple pour que ca soir plus parlant
1/je fais MC_RESET -> valeur codeur = 10000
2/j'avance de 50mm pour faire ma prise de ref --> valeur codeur = 0
3/ Arret urgence + MC_RESET -->valeur codeur 10050

depuis que j'ai mis MC_RESET.RESTART = FALSE, je ne suis plus embêté...
Répondre