Dans cette notice, je vous propose d’explorer la mise en place du variateur de vitesse ATV320 de chez Schneider pour piloter un moteur électrique triphasé SEW.
Montage électrique
Mon montage électrique fait parti d’une installation plus large pour un essai plus complexe comprenant plusieurs automates. La manière dont j’ai câblé est très clairement une insulte à la figure de tous les électriciens de par sa désorganisation flagrante. Ma foi, tant que ça marche…

Note : Comparé à certains variateurs, il n’y a pas besoin de toucher à de la très basse tension et la shunt du STO est déjà présente de base sur l’ATV.
Très important, il faut impérativement disposer d’un module internet et le placer à cette endroit pour raccorder l’ATV à un réseau. Sans celui-ci, une connexion via Modbus RTU reste possible, mais ce n’est pas l’objet de cette note.

Configuration de l’ATV320 (ATV320U15N4B)
Il y a plusieurs paramètres qu’il faut changer sur l’ATV. Certains concernent un volet plus physique, d’autres vont nous permettre de créer un canal de communication entre l’ATV et le M221.
Configuration de la connexion
Il est possible de procéder de 2 façons la première fois :
- Utiliser la roue de sélection sur le dessus du variateur et naviguer à travers les options en utilisant le petit écran.
Photo variateur
- Utiliser un câble spécial pour directement paramétrer depuis SoMove par Modbus Série.

Dans les deux cas, à la fin, le but est de terminer la configuration sur SoMove qui est quand même plus confortable.
Directement sur le variateur
Il faut dans un premier temps donner une IPv4 au variateur :
Conf > FULL > CON- > Cbd- > IPC-.
IPC1 correspond alors au premier octet de l’adresse IP envisagée, IPC2 au deuxième, etc.
Ex : Pour l’IP 10.140.52.44 ; IPC1 = 10, IPC2 = 140, IPC3 = 52, IPC4 = 44.
Ensuite, il faut configurer le masque du réseau sur lequel se trouve notre variateur :
Conf > FULL > CON- > Cbd- > IPN-.
Même principe que pour IPC, IPN1 correspond au premier octet du masque, IPN2 au deuxième, etc.
Ex : pour le masque 255.255.255.128 ; IPN1 = 255, IPN2 = 255, IPN3 = 255, IPN4 = 128.
Optionnellement, il est possible de mettre en place une gateway pour le réseau :
Conf > FULL > CON- > Cbd- > IPG-.
C’est sur le même principe que les deux premiers.
Dans un dernier temps, il faut activer Modbus TCP :
Conf > FULL > CON- > Cbd- > EtHN > MbtP.
Plus d’info sur la documentation officielle.
Par Modbus Serie
On commence à raccorder notre PC en USB à l’ATV sur la prise Modbus VP10S. Puis on ouvre SoMove :

Le logiciel va directement se connecter à l’ATV. Il faut ignorer tous les messages d’avertissement.
Puis pour configurer l’adresse IP, il faut se rendre dans Liste des paramètres > Configuration Réseau > IP configuration :

Dans un deuxième temps, il faut activer Modbus TCP :

Et le tour est joué !
Terminer la configuration via Modbus TCP
D’abord on lance la connexion par SoMove :

Tous les paramètres pour mettre en place votre moteur se trouvent alors dans l’onglet “Complet” :

Pour permettre la communication entre le M221 et l’ATV, il faudra quand même a minima changer l’option AMOC sur cette page dans Communication > Modbus Reseau > AMOC :

Il faut la mettre à un nombre unique sur le réseau qui ne soit pas 1. La valeur maximale est 247 pour ce paramètre.
Il faut également changer l’ordre de priorité des instructions reçues par le variateur dans Complet > COMMANDE. Les paramètres sont FR1, CD1 et CD2 :

Sur un autre volet, il faut aussi dicter à l’ATV quels paramètres il va exposer sur le réseau :

Pour ce simplifier la vie, il est préférable de cocher la case IOSA. Mais il est tout à fait possible de la décocher et de remplir les tableaux d’E/S par deçà pour bénéficier d’options customisées.
Une fois toutes les options modifiées, il faut les transférer sur le variateur, car actuellement, elles ne sont stockées qu’en local sur SoMove. Pour ce variateur, il faut d’abord se déconnecter (bouton en forme de prise barrée) puis ensuite seulement transférer :

Configuration du STO
Parmi les fonctions de sécurité les plus importantes, il y a la configuration du Safe Torque Off (STO). Pour y procéder, il faut passer par SoMove et posséder impérativement la dernière version du firmware côté ordinateur. Il s’agit d’un exécutable que j’ai pu trouver sur une page du site de Schneider.
Une fois télécharger, on peut se rendre dans l’onglet fonction de sécurité sans avoir de message d’erreur :

À la première configuration, il faudra créer un mot de passe (attention à ne pas l’oublier, sinon il faudra passer par le service client de Schneider). Puis vous aurez accès à cette page avec l’onglet STO :

Dans la boîte de sélection, il y a 4 options :
- NO : map le STO sur l’entrée STO seule.
- L34 : map le STO sur les entrées 3 et 4.
- L56 : map le STO sur les entrées 5 et 6.
- L3PW : map le STO sur les entrées 3 et STO.
Quand le STO est placé sur deux entrées, les deux doivent être en même temps à l’état 1.
Aussi, il est possible de câbler de deux manières différentes. Soit vous utilisez une source de tension extérieure au variateur, et dans ces cas là vos entrées seront sur le +24V (ou autre Vdc) de cette alimentation, et un port COM devra être sur le neutre de l’alimentation. Soit vous utilisez le +24 présent sur variateur.
Programmation du M221
Dans un premier temps, il va falloir rentrer les paramètres réseaux de notre M221, avec en tête de liste l’IP et le masque + les options :

Ajout de l’ATV
Dans un deuxième temps, il faut ajouter le variateur à l’IO Scanner :
- Activer le mappage modbus avec un ID unique quelconque pour le M221
- Activer l’IO Scanner
- Ajouter le variateur en ETH_DIRECT pour se simplifier la vie

Avec cette présélection, on a la requête d’initialisation qui est déjà rentrée (c’est toujours ça de moins à gérer) :

Le canal a aussi déjà été renseigné, pas besoin de le toucher :

Programmation
Ici programme simple, tous les blocs que nous allons utiliser se trouvent dans DRV :

Nous n’avons pas besoin de mettre les mains dans le camboui à base de requête custom sur Modbus, le scrutateur s’occupe de tout à notre place nous laissant comme seule tâche l’écriture de la logique.
Pour démarrer le moteur depuis l’automate, il faut donc MC_POWER_ATV constamment allumé :

(%M0 c’est pour activer / désactiver lors de l’exécution, %Q0.0 c’est pour visualiser sur l’automate, ça aurait été mieux d’utiliser %M10 ceci dit).
Puis pour tourner le moteur, il faut utiliser MC_JOG_ATV :

Il est aussi possible d’utiliser les autres fonctions dans DRV.
Pour ce simplifier la vie, la sélection de la vitesse est faite à la volée à l’aide d’une variable modifiée en live dans une table d’animations :

En cas d’erreur en sortie d’un des blocs, il est plus facile de reset directement la connexion en désactivant MC_POWER_STATE et en activant momentanément MC_RESET_ATV :

Avec ceci, lors de l’exécution, il faut d’abord activer %M0, puis %M1 ou %M2 pour faire avancer ou reculer simplement le moteur à la vitesse placée dans %MW0. Bon à savoir, comme c’est le scrutateur d’E/S Modbus qui gère la communication, on peut avoir plusieurs variateurs qui fonctionne en même temps sur un seul et même automate. La seule limite devient l’espace mémoire pris par les objets, et la bande passante du réseau dans une certaine mesure. Il faut juste bien penser à d’abord renommer le bloc en ATV1, ATV2, etc. avant de l’associer à un %DRV, car sinon, les blocs déjà présents portant le même numéro changeront également de %DRV.
Astuce :
Si le block de variateur se met en erreur d’IO scanner, c’est assez ennuyeux de devoir reset l’automate. Avec ce jeu d’instructions logiques, il ne remettra à zéro que l’IO scan :

Lire le courant et la puissance
Pour pouvoir surveiller et mettre en défaut le moteur, il peut être nécessaire d’avoir à lire le courant et la puissance injectés dans le moteur par l’ATV. SoMove nous propose de surveiller ces paramètres en temps réel :

Mais malheureusement, Ecostruxure ne nous permet que de récupérer la vitesse du moteur avec le bloc MC_ReadMotionState_ATV.
Il faut alors retourner dans les paramètres de l’ATV pour exposer plus de variables au scrutateur d’E/S Modbus TCP. Ces paramètres pourront ensuite être récupérés automatiquement par le même procédé côté automate.
Dans un premier temps, il faut aller dans Liste des paramètres > Input Output Scanner dans la section Input :

En appuyant sur le bouton plus, un popup s’ouvre et nous laisse renseigner le nom de la variable que l’on veut récupérer (ici LCR pour le courant moteur et OPR pour la puissance moteur) :

Le logiciel va alors automatiquement renseigner les adresses Modbus des paramètres avec un commentaire. On sauvegarde la paramétrisation et on redémarre le variateur. Puis, dans Ecostruxure MEB, on pourra accéder aux grandeurs à l’aide des registres.
On doit donc modifier le scrutateur côté M221 en ajoutant 2 mots de 16 bits, ce qui nous rend à 6 mots en lecture au total dans notre cas :

On envoie à l’automate et on lance la procédure. Puis, avec une table d’animation, on peut observer le résultat :

Ici, tous les registres %IWN300.0.0 à %IWN300.0.5 sont issus de la communication et sont présents dans l’ordre de la section Input Scanner de SoMove (i.e : %IWN300.0.0 = OMA1, …, %IWN300.0.5 = OMA6).
On remarque alors que le courant qui est de 0.3 est noté 3, et que la puissance est en pourcentage. Il faut donc effectuer un léger travail numérique pour rendre tout cela utilisable en fonction du cas d’usage.