Caractères ASCII

L’utilisation des caractères ASCII dans les automates industriels

02/09/2025
Vincent

Dans le monde industriel, la gestion et le traitement des données textuelles constituent un aspect souvent négligé mais essentiel du fonctionnement des installations. Les caractères ASCII représentent la base de cette communication textuelle entre automates, systèmes de supervision et équipements périphériques. Comprendre leur utilisation pratique permet d’optimiser les développements et de résoudre plus efficacement les problèmes de communication dans les installations.

Les fondamentaux de l'ASCII en environnement industriel

Le code ASCII (American Standard Code for Information Interchange) définit un ensemble de 128 caractères numérotés de 0 à 127. Dans le contexte industriel, cette standardisation garantit une communication fiable entre équipements de différents constructeurs. Les automates utilisent principalement les caractères imprimables (codes 32 à 126) pour les messages d’exploitation et les caractères de contrôle (codes 0 à 31) pour la gestion des communications.

Table des caractères ASCII standards (0-127)

Décimal Caractère Description Décimal Caractère Description
0NULCaractère nul64@Arobase
1SOHDébut d'en-tête65ALettre A majuscule
2STXDébut de texte66BLettre B majuscule
3ETXFin de texte67CLettre C majuscule
4EOTFin de transmission68DLettre D majuscule
5ENQEnquête69ELettre E majuscule
6ACKAccusé de réception70FLettre F majuscule
7BELCloche/Signal sonore71GLettre G majuscule
8BSRetour arrière72HLettre H majuscule
9HTTabulation horizontale73ILettre I majuscule
10LFSaut de ligne74JLettre J majuscule
11VTTabulation verticale75KLettre K majuscule
12FFSaut de page76LLettre L majuscule
13CRRetour chariot77MLettre M majuscule
14SOShift Out78NLettre N majuscule
15SIShift In79OLettre O majuscule
16DLEData Link Escape80PLettre P majuscule
17DC1Device Control 181QLettre Q majuscule
18DC2Device Control 282RLettre R majuscule
19DC3Device Control 383SLettre S majuscule
20DC4Device Control 484TLettre T majuscule
21NAKAccusé de réception négatif85ULettre U majuscule
22SYNSynchronisation86VLettre V majuscule
23ETBFin de bloc de transmission87WLettre W majuscule
24CANAnnulation88XLettre X majuscule
25EMFin de support89YLettre Y majuscule
26SUBSubstitution90ZLettre Z majuscule
27ESCÉchappement91[Crochet ouvrant
28FSSéparateur de fichier92\Barre oblique inverse
29GSSéparateur de groupe93]Crochet fermant
30RSSéparateur d'enregistrement94^Accent circonflexe
31USSéparateur d'unité95_Trait de soulignement
32 Espace96`Accent grave
33!Point d'exclamation97aLettre a minuscule
34"Guillemet98bLettre b minuscule
35#Dièse99cLettre c minuscule
36$Dollar100dLettre d minuscule
37%Pourcentage101eLettre e minuscule
38&Esperluette102fLettre f minuscule
39'Apostrophe103gLettre g minuscule
40(Parenthèse ouvrante104hLettre h minuscule
41)Parenthèse fermante105iLettre i minuscule
42*Astérisque106jLettre j minuscule
43+Plus107kLettre k minuscule
44,Virgule108lLettre l minuscule
45-Moins/Trait d'union109mLettre m minuscule
46.Point110nLettre n minuscule
47/Barre oblique111oLettre o minuscule
480Chiffre zéro112pLettre p minuscule
491Chiffre un113qLettre q minuscule
502Chiffre deux114rLettre r minuscule
513Chiffre trois115sLettre s minuscule
524Chiffre quatre116tLettre t minuscule
535Chiffre cinq117uLettre u minuscule
546Chiffre six118vLettre v minuscule
557Chiffre sept119wLettre w minuscule
568Chiffre huit120xLettre x minuscule
579Chiffre neuf121yLettre y minuscule
58:Deux-points122zLettre z minuscule
59;Point-virgule123{Accolade ouvrante
60<Inférieur à124|Barre verticale
61=Égal125}Accolade fermante
62>Supérieur à126~Tilde
63?Point d'interrogation127DELSuppression

Les automates programmables manipulent l’ASCII de plusieurs façons. Les chaînes de caractères stockées en mémoire occupent généralement un octet par caractère, facilitant les opérations de lecture et d’écriture. Cette approche directe simplifie la programmation tout en conservant une compatibilité universelle avec les protocoles de communication standards.

Applications concrètes dans les automatismes

Communication avec les équipements périphériques

Les échanges avec les lecteurs de codes-barres, balances industrielles ou analyseurs utilisent fréquemment des trames ASCII. Par exemple, un lecteur de codes-barres transmet typiquement ses données sous forme de chaîne ASCII suivie des caractères de contrôle CR (code 13) et LF (code 10) pour signaler la fin de lecture. Cette standardisation simplifie l’intégration de nouveaux équipements dans les installations existantes.

Difficultés à intégrer lecteurs de codes-barres ou balances industrielles ?
Bénéficiez de notre expertise pour simplifier vos connexions.

Les terminaux de pesage industriels communiquent souvent via des protocoles propriétaires basés sur l’ASCII. Une trame typique pourrait ressembler à “WT+012.345kg” où chaque caractère transporte une information spécifique : type de mesure, signe, valeur numérique et unité.

Gestion des messages d'exploitation

Les interfaces homme-machine exploitent largement l’ASCII pour afficher les messages d’alarme, les consignes opératoires et les rapports de production. Les programmes automates génèrent ces messages en assemblant des chaînes de caractères selon le contexte opérationnel. Cette approche flexible permet d’adapter dynamiquement l’information présentée aux opérateurs.

Manipulation pratique des chaînes ASCII

Fonctions de traitement essentielles

Les environnements de programmation automate proposent généralement des instructions dédiées au traitement ASCII. Les fonctions de concaténation assemblent plusieurs chaînes pour former des messages complexes. Les instructions de recherche localisent des caractères ou des sous-chaînes spécifiques, particulièrement utiles pour analyser les réponses d’équipements périphériques.

Les conversions entre formats numériques et ASCII s’avèrent indispensables. Transformer une valeur analogique en chaîne ASCII lisible nécessite des fonctions de formatage qui gèrent les décimales, les unités et la justification. Inversement, extraire des valeurs numériques depuis des trames ASCII reçues demande des fonctions de parsing robustes.

Gestion des caractères spéciaux

Certains caractères de contrôle ASCII jouent des rôles cruciaux dans les communications industrielles. Le caractère NUL (code 0) marque souvent la fin des chaînes en mémoire. Les caractères CR et LF structurent les échanges série en définissant les fins de ligne. Le caractère ESC (code 27) initialise fréquemment des séquences de commandes pour les terminaux et imprimantes industrielles.

La gestion de ces caractères spéciaux demande une attention particulière lors du développement. Les programmes doivent prévoir leur détection et leur traitement approprié pour maintenir la fiabilité des communications.

Les caractères étendus : au-delà de l'ASCII standard

Nécessité des jeux de caractères étendus

L’ASCII standard, avec ses 128 caractères, trouve rapidement ses limites dans un contexte industriel international. Les installations françaises nécessitent l’affichage de caractères accentués dans les messages opérateurs : “Température élevée”, “Arrêt d’urgence déclenché” ou “Maintenance préventive planifiée”. Cette problématique devient critique lors du déploiement d’équipements dans différents pays européens.

Les caractères étendus exploitent les codes 128 à 255 pour intégrer les spécificités linguistiques nationales. Le jeu de caractères ISO 8859-1 (Latin-1) complète l’ASCII avec les caractères européens occidentaux, tandis que l’ISO 8859-15 ajoute le symbole euro (€) particulièrement pertinent pour les applications de facturation industrielle.

Table des caractères ASCII étendus (128-255)

Décimal Caractère Description Décimal Caractère Description
128Euro192ÀA majuscule accent grave
129 Non utilisé193ÁA majuscule accent aigu
130Virgule basse simple194ÂA majuscule accent circonflexe
131ƒF avec crochet195ÃA majuscule tilde
132Virgule basse double196ÄA majuscule tréma
133Points de suspension197ÅA majuscule rond en chef
134Obèle198ÆAE ligaturé majuscule
135Double obèle199ÇC majuscule cédille
136ˆAccent circonflexe200ÈE majuscule accent grave
137Pour mille201ÉE majuscule accent aigu
138ŠS majuscule caron202ÊE majuscule accent circonflexe
139Guillemet simple gauche203ËE majuscule tréma
140ŒOE ligaturé majuscule204ÌI majuscule accent grave
141 Non utilisé205ÍI majuscule accent aigu
142ŽZ majuscule caron206ÎI majuscule accent circonflexe
143 Non utilisé207ÏI majuscule tréma
144 Non utilisé208ÐEth majuscule
145'Apostrophe courbe gauche209ÑN majuscule tilde
146'Apostrophe courbe droite210ÒO majuscule accent grave
147"Guillemet courbe gauche211ÓO majuscule accent aigu
148"Guillemet courbe droit212ÔO majuscule accent circonflexe
149Puce213ÕO majuscule tilde
150Tiret demi-cadratin214ÖO majuscule tréma
151Tiret cadratin215×Signe multiplication
152˜Tilde216ØO majuscule barré
153Marque déposée217ÙU majuscule accent grave
154šS minuscule caron218ÚU majuscule accent aigu
155Guillemet simple droit219ÛU majuscule accent circonflexe
156œOE ligaturé minuscule220ÜU majuscule tréma
157 Non utilisé221ÝY majuscule accent aigu
158žZ minuscule caron222ÞThorn majuscule
159ŸY majuscule tréma223ßEszett (s dur allemand)
160 Espace insécable224àA minuscule accent grave
161¡Point d'exclamation inversé225áA minuscule accent aigu
162¢Cent226âA minuscule accent circonflexe
163£Livre sterling227ãA minuscule tilde
164¤Symbole monétaire générique228äA minuscule tréma
165¥Yen229åA minuscule rond en chef
166¦Barre verticale brisée230æAE ligaturé minuscule
167§Paragraphe231çC minuscule cédille
168¨Tréma232èE minuscule accent grave
169©Copyright233éE minuscule accent aigu
170ªIndicateur ordinal féminin234êE minuscule accent circonflexe
171«Guillemet double gauche235ëE minuscule tréma
172¬Négation logique236ìI minuscule accent grave
173­Trait d'union conditionnel237íI minuscule accent aigu
174®Marque déposée238îI minuscule accent circonflexe
175¯Macron239ïI minuscule tréma
176°Degré240ðEth minuscule
177±Plus ou moins241ñN minuscule tilde
178²Exposant 2242òO minuscule accent grave
179³Exposant 3243óO minuscule accent aigu
180´Accent aigu244ôO minuscule accent circonflexe
181µMicro245õO minuscule tilde
182Pied de mouche246öO minuscule tréma
183·Point médian247÷Signe division
184¸Cédille248øO minuscule barré
185¹Exposant 1249ùU minuscule accent grave
186ºIndicateur ordinal masculin250úU minuscule accent aigu
187»Guillemet double droit251ûU minuscule accent circonflexe
188¼Un quart252üU minuscule tréma
189½Un demi253ýY minuscule accent aigu
190¾Trois quarts254þThorn minuscule
191¿Point d'interrogation inversé255ÿY minuscule tréma

Applications pratiques en automatisme

Les équipements de marquage industriel, imprimantes d’étiquettes et terminaux de traçabilité bénéficient particulièrement de cette extension. L’impression de codes produit incluant des caractères nationaux (“Pièce usinée à 200°C”) ou de mentions réglementaires respecte ainsi les exigences linguistiques locales.

Les systèmes de supervision SCADA modernes exploitent couramment ces caractères étendus pour personnaliser les interfaces dans la langue locale. Les écrans d’exploitation peuvent ainsi afficher “Réservoir n°3 : 85% – Qualité contrôlée” sans limitation linguistique. Cette approche améliore significativement la compréhension des opérateurs et réduit les risques d’erreurs d’interprétation.

Intégration avec les systèmes de supervision

Protocoles de communication modernes

Les réseaux industriels actuels transportent couramment des données ASCII encapsulées dans des protocoles plus complexes. Modbus TCP/IP véhicule des chaînes de caractères dans des registres spécifiques. Ethernet/IP et PROFINET intègrent nativement la gestion de données textuelles pour les échanges avec les systèmes de supervision.

Cette évolution facilite l’intégration des automatismes dans des architectures distribuées tout en conservant la simplicité de manipulation de l’ASCII au niveau applicatif.

Interfaces avec les bases de données

Les systèmes SCADA exploitent largement l’ASCII pour alimenter les bases de données historiques et les rapports de production. La structure standardisée des caractères ASCII simplifie les échanges avec les serveurs SQL et les interfaces web, créant une continuité informationnelle de l’atelier jusqu’aux systèmes de gestion.

L’utilisation des caractères ASCII dans les automates industriels