communication entre un API premium et une imprimante zébra en Ethernet

Forum traitant des automates industriels de marque Schneider - Telemecanique
Avatar de l’utilisateur
Bruce33
Créateur de langage
Créateur de langage
Messages : 716
Inscription : 28 oct. 2015, 06:54
Localisation : Pas-de-Calais

Re: communication entre un API premium et une imprimante zébra en Ethernet

Message par Bruce33 »

Bonjour,

Si je comprends bien, le but est d"imprimer une étiquette à partir d'un automate en envoyant une trame ZPL (Zebra Programming Language) par Ethernet.
Sans dévoiler la modèle d'imprimante Zebra c'est plus compliqué de répondre.
A priori il n'y a pas de protocole de type ModbusTCP, EthernetIP, etc. Il faut envoyer de manière "brute" le code ZPL.
Pour cela je crois qu'il faut se connecter à l'imprimante avec son adresse IP et le port 9100 puis envoyer les caractères de la trame ZPL.
C'est réalisable avec PL7 Pro à condition d'utiliser un coupleur ETY5103 et d'utiliser la librairie de blocs fonctions TCP Open (malheureusement il faut l'acheter en plus de PL7 Pro).
Ce serait peut-être plus simple/moins coûteux de communiquer par liaison série ou d'utiliser un afficheur intermédiaire pour traiter l'impression.

L'automate a-t-il vraiment besoin d'envoyer le contenu de l'étiquette ? Un top d'impression ne suffirait-il pas ?
Avatar de l’utilisateur
itasoft
Mi homme - Mi automate
Mi homme - Mi automate
Messages : 7037
Inscription : 20 oct. 2015, 10:15
Localisation : Lyon
Contact :

Re: communication entre un API premium et une imprimante zébra en Ethernet

Message par itasoft »

slts,
de toute façon on ne peut pas ajouter d'autre coupleur sur cette référence d'automate,
il faut envoyer la trame en RS232 sur TSXSCP111 avec PRINT_CHAR , du bestial en quelque sorte
Automaticien privé (de tout)
itasoft@free.fr
Greg60
Apprend le binaire
Apprend le binaire
Messages : 9
Inscription : 08 févr. 2018, 16:11

Re: communication entre un API premium et une imprimante zébra en Ethernet

Message par Greg60 »

Bruce33 a écrit : 11 mars 2019, 07:58 Bonjour,

Si je comprends bien, le but est d"imprimer une étiquette à partir d'un automate en envoyant une trame ZPL (Zebra Programming Language) par Ethernet.
C'est bien le but que je recherche. Le code ZPL est contenu dans des bytes que je souhaite envoyer à l'imprimante.
Bruce33 a écrit : 11 mars 2019, 07:58 Sans dévoiler la modèle d'imprimante Zebra c'est plus compliqué de répondre.
C'est une ZT230 200DPI ZPL
Bruce33 a écrit : 11 mars 2019, 07:58 L'automate a-t-il vraiment besoin d'envoyer le contenu de l'étiquette ? Un top d'impression ne suffirait-il pas ?
Non, car l'étiquette est évolutive (en fonction de la recette)
Bruce33 a écrit : 11 mars 2019, 07:58 A priori il n'y a pas de protocole de type ModbusTCP, EthernetIP, etc. Il faut envoyer de manière "brute" le code ZPL.
Pour cela je crois qu'il faut se connecter à l'imprimante avec son adresse IP et le port 9100 puis envoyer les caractères de la trame ZPL.
C'est réalisable avec PL7 Pro à condition d'utiliser un coupleur ETY5103 et d'utiliser la librairie de blocs fonctions TCP Open (malheureusement il faut l'acheter en plus de PL7 Pro).
Zebra m'a envoyé un document qui montrait la COM entre de l'Allen Bradley et une zébra via de l’Ethernet/IP.
Je pensais essayer avec un M340 + NOC401 cela pourrait être plus facile qu'avec du pl7 pro
Mon soucis je pense ne vient pas des objets à travailler (octets, code ZPL) mais plutôt de comment envoyer une chaîne de caractère en MODBUS/TCP.

Dans l'option avec ETY5103, tu utilise la partie serveur WEB intégré c'est cela ?

Merci
Avatar de l’utilisateur
Bruce33
Créateur de langage
Créateur de langage
Messages : 716
Inscription : 28 oct. 2015, 06:54
Localisation : Pas-de-Calais

Re: communication entre un API premium et une imprimante zébra en Ethernet

Message par Bruce33 »

Le coupleur Ethernet ETY5103 (mais également ETY110WS, plus ancien) permet effectivement d'intégrer des pages WEB, mais ce n'est pas l'intérêt ici. Il permet surtout, avec l'utilisation de la bibliothèque TCP Open dans PL7 Pro ou Unity Pro, de programmer son propre protocole de communication, en gérant directement la communication au niveau de la couche TCP (gestion de socket, du port...).
Cependant cette solution n'est pas pérenne puisque le matériel Premium n'est plus commercialisé et, à ma connaissance, il n'y a pas de solution équivalente avec la gamme M340 ou M580.

Côté M241/M251, je ne sais pas si l'on peut programmer son propre procotole Ethernet. Mais en tous cas il est possible d'écrire des fichiers via FTP. Or c'est une autre technique pour déposer du code ZPL dans une imprimante Zebra.

Le protocole Modbus TCP doit être oublié. Il n'est pas compris par le matériel Zebra. Une trame Modbus est constituée d'une adresse, d'un code fonction, de données et d'un checksum ; tout cela, Zebra ne le décrypte pas.

Je ne connaissais pas la solution Ethernet/IP de Zebra. Enfin Zebra essaie de proposer une interface pour l'automatisme ! Apparemment cette solution "Network Connect" est récente.
(Des infos se trouvent là : https://www.zebra.com/us/en/products/so ... tware.html)
L'imprimante ZT230 fait partie de la liste des imprimantes compatibles. Mais cela nécessite un firmware particulier (qui n'est pas gratuit, et chez Zebra tout est cher !)
Malheureusement cette solution a été développée et validée exclusivement pour Rockwell.
En cherchant sur la Toile, j'ai vu que des américains ont eu beaucoup de difficultés à mettre en oeuvre cette solution. (Voir par là http://www.plctalk.net/qanda/showthread ... 4&t=111789)
Rien ne permet de dire si cela fonctionnera avec le M340 + NOC401. Il faudrait déjà récupérer le fichier EDS nécessaire pour la configuration des échanges Ethernet/IP. Je n'ai pas trouvé ce fichier EDS sur Internet, il est apparemment embarqué dans l'imprimante et il peut être récupéré avec le logiciel RSLinx...
Greg60
Apprend le binaire
Apprend le binaire
Messages : 9
Inscription : 08 févr. 2018, 16:11

Re: communication entre un API premium et une imprimante zébra en Ethernet

Message par Greg60 »

Bonjour,
J'ai bien compris le message.
Après, je peux faire cela avec un serveur OPC pour aller chercher mes données dans l'automate, et les utiliser vient un PC ?
C'est une solution dont j'ai déjà entendue parler mais que je n'ai jamais exploité...
Avatar de l’utilisateur
Bruce33
Créateur de langage
Créateur de langage
Messages : 716
Inscription : 28 oct. 2015, 06:54
Localisation : Pas-de-Calais

Re: communication entre un API premium et une imprimante zébra en Ethernet

Message par Bruce33 »

Trouver la solution adéquate dépend de beaucoup de facteurs : moyens à disposition, compétences, temps, argent, cahier des charges précis (ou pas), etc.

Le serveur OPC à lui seul ne résout pas grand chose, puisqu'il ne s'occuperait que de la communication avec l'automate en Modbus TCP. Il est possible de communiquer assez facilement en Modbus TCP, un serveur OPC n'est pas indispensable.
Tout dépend de ce qui est déjà disponible : si vous avez déjà un serveur OPC en fonctionnement, si vous avez un logiciel de supervision, la réalisation peut aller vite.
Il faut savoir aussi si vous comptez déployer cette solution pour plusieurs automates et plusieurs imprimantes.

Il ne faut tout de même pas négliger la solution du port série. Un afficheur pas trop cher peut très bien dialoguer avec l'automate en Ethernet et avec Zebra sur le port série. Il existe aussi des passerelles Ethernet/série qui pourraient répondre au besoin.
Avatar de l’utilisateur
pach30
Générateur de blocs fonctions
Générateur de blocs fonctions
Messages : 116
Inscription : 26 mars 2019, 14:20
Localisation : ben le Sud de ?

Re: communication entre un API premium et une imprimante zébra en Ethernet

Message par pach30 »

j'ai eu à aborder ce problème (mais pas eu le temps de le finir) . Zebra a un protocole spécifique , comme le décrit Bruce33, difficilement compatible avec les automates Schneider ). Nous voulions mettre en oeuvre cette config avec un M340 + NOc401 mais l'obtention d'info de la part de Zebra n'était pas convaincante . Nous avions envisagé à l'époque d'intercaler un TM251 pour faire la com avec celle-ci car le TM251 est très ouvert en terme de comm avec en particulier un TCP OPEN , ce qui permet d'utiliser la com ethernet "native" Zebra , la com entre le TM251 et un M340 étant on ne peut plus triviale .

Nous utilisons de maniere habituelle le TM251 pour servir de paserelle entre les TSX premium en PL7 pro et des équipements sous EtherNet/IP.
Répondre