Application Note AN-164 Rev 1.0 Imprimantes MTH, MRTi & MRSi avec protocole Modbus sur Série Les gammes d'imprimantes MTH-2500, MTH-3500, MRTi et MRSi peuvent être livrées en option Modbus sur support physique Série RS485 Ces produits ont été développés pour offrir une solution d'impression pour les automates ne disposant que d'une connexion « Modbus over serial » Protocole MODBUS : • Adresse Esclave : Chaque périphérique ModBus utilise une adresse esclave unique. Sur les imprimantes, l'utilisateur peut choisir une adresse esclave comprise entre 1 et 252 sélectionnable avec le menu « Connection → ModBus Slv » (se reporter au chapitre « Menu de configuration » du manuel de l'imprimante concernée) • Gestion du CRC : calculé avec le polynôme A001h • Services supportés : ◦ 06h ou 6 « Ecriture d'un mot » ◦ 10h ou 16 « Ecriture de n mots » maxi 123 mots par trame (soit 246 octets utiles) ◦ 03h ou 3 « Lecture de status » Les adresses de départ ne sont pas gérées, les octets à écrire sont directement insérés dans le tampon de réception. Tél:04.50.70.54.54 [email protected] http://www.megatron.fr AN-164 2 Couche physique : La couche physique s'appuie sur la norme RS485 en mode Half-Duplex. L'imprimante est par défaut en écoute et ne prend le contrôle de la ligne que pour répondre à une requête du maître. Paramètres : Réglables avec le menu « Connection » Baud : de 110 à 115200 Baud (dont 9600 et 19200) Databits : 8 databits ou 7 databits Parity : None, Even, Odd Xon : Inutilisé en modbus Modbus slv : Adresse de l'esclave entre 1 et 252 Connectique : Prise Sub-D 9 pins femelle Commun An.c. n.c. B+ Tél:04.50.70.54.54 1 2 3 4 5 6 7 8 9 [email protected] n.c. n.c. n.c. n.c. http://www.megatron.fr AN-164 3 Protocole : La transmission des caractères à imprimer se fait avec la fonction 06h (2 octets) ou avec la fonction 10h (de 1 à 246 octets). L'adresse de départ n'est pas gérée et peut être laissée à 0. Note : les « Mots » sont transmis sur 2 octets : MSB/LSB, excepté le CRC qui est transmis LSB/MSB. Si la trame de réponse ne retourne pas d'erreur, les données ont bien été acceptées par l'imprimante et sont stockées dans le tampon de réception. Vous pouvez continuer de transmettre les trames de données suivantes. Si la trame de réponse retourne une erreur, le code d'exception permet de choisir l'action à suivre. • S'il vaut 06h (Busy, Rejected Message), l'imprimante signale que les données de la dernière trame transmise n'ont pas pu être stockées. Il convient alors d'interroger l'état de l'imprimante avec la fonction 03h et remédier à la cause. La dernière trame pourra ensuite être retransmise. • Toute autre valeur d'exception ne permettra pas de reprendre l'impression. La fonction 03h peut aider à diagnostiquer la cause. Mais l'intervention d'un utilisateur sera sans doute nécessaire. Exemples : avec l'adresse esclave 1 Envoi de <CR> et <LF> fn 06h : 01 06 00 00 0D 0A 0D 5C fn 10h : 01 10 00 00 00 01 02 0D 0A 22 C7 Envoi de la chaîne Hello <CR><LF> fn 10h : 01 10 00 00 00 04 07 48 65 6C 6C 6F 0D 0A 00 D4 08 Notes : Les exemples de trames sont donnés en hexadécimal Remarques : En cas d'erreur de CRC, la trame est supposée corrompue et est complètement ignorée, aucune trame de réponse n'est alors retournée vers le maître. De même, si l'adresse esclave ne correspond pas, la trame est ignorée. Tél:04.50.70.54.54 [email protected] http://www.megatron.fr 4 AN-164 Connaître l'état de l'imprimante : La fonction 03h permet de lire l'état de l'imprimante. L'adresse est sans importance et peut être laissée à 0. Le nombre de registre lu doit être à 1 (soit 1 mot) , les bits 15 à 8 sont toujours à 0. Les bits 7 à 0 indiquent un état particulier lorsqu'ils sont à 1 ! • • • • • • • • Bit 7 : Information : Absence de papier. Cette information est transmise quelque soit le réglage de la gestion du papier. Bit 6 : Information : Données en attente d'impression. Bit 5 : Busy : Panne mémoire. Bit 4 : Busy : Phase d'initialisation de l'imprimante. Bit 3 : Busy : Phase de programmation de la mémoire Flash. Bit 2 : Busy : Tampon Plein Bit 1 : Busy : Menu actif. L'utilisateur a activé le menu de configuration de l'imprimante Bit 0 : Busy : Absence de papier. L'imprimante est réglée pour se mettre sur Occupé en cas de défaut de papier. Vous ne devriez utiliser que les bits marqués en gras dans une utilisation normale de l'imprimante. Exemple : Demande de Status fn 03h : 01 03 00 00 00 01 84 0A Tél:04.50.70.54.54 [email protected] http://www.megatron.fr ">

Публичная ссылка обновлена
Публичная ссылка на ваш чат обновлена.