Beckhoff ADS

Relier des automates Beckhoff TwinCAT sur ADS/AMS : la route AMS, le port du runtime, les chemins de symbole et les longueurs de lecture.

Afficher en Markdown

Le pilote Beckhoff ADS parle à des automates Beckhoff TwinCAT sur ADS, le protocole d'automatisation de TwinCAT porté par des routes AMS. Vous adressez les valeurs par leur chemin de symbole dans le programme de l'automate : ce que vous tapez est donc ce que déclare le projet TwinCAT. Ajoutez un équipement sous le pilote Beckhoff ADS dans le Connector; le volet ne montre que les champs que ce protocole emploie.

Connexion

Champ Sens Par défaut
Hôte L'adresse IP de l'automate. Son identifiant de réseau AMS en est déduit sous la forme {ip}.1.1. vide
Port Le port AMS du runtime visé. 0 emploie 851, le premier runtime automate de TwinCAT 3; les runtimes TwinCAT 3 suivants comptent à partir de là (852, 853, etc.). 0
IP locale (AMS) L'adresse IP propre à cette station, d'où son identifiant de réseau AMS est déduit sous la forme {ip}.1.1. Elle doit correspondre à la route AMS configurée sur l'automate. Laissée vide, la valeur de l'hôte est reprise, ce qui ne fonctionne que lorsque les deux bouts partagent l'adresse : en pratique, remplissez-la. vide
Intervalle de scrutation (ms) La période de lecture de tout l'équipement, pour les tags qui ne la remplacent pas. 1 000

L'en-tête de l'équipement montre le point de terminaison assemblé, par exemple ads://192.168.0.1:192.168.0.50:851 (IP locale, IP de l'automate, port AMS). Chaque tag peut poser son propre intervalle de scrutation (ms); une valeur de 0 sur un tag retombe sur l'intervalle de l'équipement.

ADS ne répond qu'aux stations que l'automate connaît : ajoutez une route AMS statique sur l'automate (TwinCAT Engineering, SYSTEM → Routes, ou l'icône TwinCAT de la zone de notification) dont l'adresse est l'IP de cette station et dont l'identifiant de réseau AMS est cette IP suivie de .1.1, ce qui correspond à ce que le pilote déduit de l'IP locale (AMS). Sans la route, la connexion échoue même si le chemin réseau est bon.

Adressage

Un tag Beckhoff est adressé par deux champs de la carte Source du tag :

Champ Sens Valeurs acceptées Par défaut
Symbole Le chemin de symbole de la variable dans le programme de l'automate. Obligatoire. texte libre, par exemple MAIN.fValue vide
Longueur de lecture (octets, vide = automatique) Combien d'octets transférer par lecture. Vide dimensionne la lecture d'après le type de donnée. 1 et au-delà, ou vide vide

Le chemin de symbole est exactement ce que TwinCAT montre : les variables de programme comme MAIN.fValue, les listes de variables globales comme GVL.MachineSpeed ou GVL_Settings.rSetpoint. Le pilote résout le symbole par son nom sur l'automate et lit ses octets bruts. Les longueurs de lecture automatiques sont :

Type de donnée Longueur de lecture automatique
Boolean 1 octet
Int32 4 octets
Float 4 octets
String 16 octets

Pour un texte de plus de 16 caractères, posez la longueur de lecture pour couvrir la taille déclarée (un STRING(80) de TwinCAT demande 80 octets de texte). La ligne en lecture seule Adresse source (bus) de la carte Source montre l'adresse assemblée au fil de vos modifications.

Types de donnée

Le sélecteur de type de donnée offre les quatre types que le pilote sait transporter :

Type de donnée Équivalent automate Remarques
Boolean BOOL 1 octet, tout ce qui n'est pas nul est vrai
Int32 DINT petit-boutiste, comme l'automate
Float REAL petit-boutiste, comme l'automate
String STRING le texte jusqu'au premier octet nul du tampon de lecture

L'ordre des octets est le petit-boutiste propre à l'automate et il est traité automatiquement; il n'y a pas d'option d'ordre des octets. Une lecture de texte décode le tampon renvoyé jusqu'au premier octet nul, si bien que le remplissage derrière un texte court ne fuit jamais dans la valeur. Les autres largeurs de TwinCAT (INT, LREAL, WORD, etc.) ne sont pas offertes : exposez une telle variable dans le programme de l'automate sous l'un des quatre types ci-dessus pour la lire ici.

Écritures

Les tags dont l'accès est Lecture et écriture ou Écriture seule peuvent être écrits. Une écriture résout le même symbole et écrit les octets de la valeur : 1 octet pour un booléen, 4 octets pour un Int32 et un Float. Une écriture de texte dépose toute la longueur de lecture du tag : les octets UTF-8 du texte devant et des zéros derrière, si bien qu'un texte plus court écrit par-dessus un plus long remplace toute la valeur et que rien de l'ancien ne survit. Un texte qui n'entre pas dans la longueur déclarée est refusé avec la longueur nommée dans le journal, jamais rogné à la taille. Un nouveau tag démarre en Lecture seule.

Découverte

ADS n'a pas de découverte par diffusion dans ce pilote : le Connector ne montre donc aucun bouton Découvrir. Ajoutez l'équipement et ses symboles à la main.

Bon à savoir

  • La route AMS est la raison habituelle de l'échec d'une première connexion : l'identifiant de réseau AMS de la route, sur l'automate, doit être exactement l'IP de la station suivie de .1.1.
  • Les symboles sont résolus par leur nom à chaque lecture : un téléversement d'automate qui renomme ou retire un symbole fait passer son tag en mauvaise qualité jusqu'à ce que les noms correspondent de nouveau.
  • Un automate injoignable ne coûte rien au démarrage : l'équipement continue de réessayer en arrière-plan et ses tags lisent une mauvaise qualité jusqu'à ce que la connexion aboutisse.