Chronogramme de handshake — Demande de contrôle, contrôle terminé et transmission du résultat (exemple)
Dernière mise à jour: 2026-09-23 / Catégorie: Exemples, chronogrammes
Un exemple d'un contrôle normal entre un automate et un poste de contrôle — demande, fin et résultat — dessiné par pas de 100 ms. Pour le programmeur d'automate qui ne veut pas voir à la mise en service « la fin ne revient jamais » ou « des pièces bonnes sont jugées NG ».
Ouvrir cet exemple dans l'éditeur Télécharger le JSON
L'éditeur gratuit, qui fonctionne dans le navigateur, s'ouvre dans un nouvel onglet avec ce chronogramme chargé. Ni installation ni inscription, et rien de ce que vous saisissez n'est envoyé nulle part. Vos modifications ne changent pas l'exemple de cette page. Le JSON est la donnée source pour le rouvrir dans l'éditeur ou le confier à une IA.
1. Six signaux ; demande et fin ne retombent qu'après avoir vu l'autre côté
| Signal | Émis par | Signification |
|---|---|---|
bWorkSet | PLC (interne) | La pièce est arrêtée en position de contrôle. Déclencheur de la demande |
bInspReq | PLC → poste de contrôle | Demande de contrôle. Maintenue jusqu'à ce que contrôle terminé passe ON |
bInspBusy | Poste de contrôle → PLC | Contrôle en cours. Maintenu ON tant que la demande est reçue ; il indique à l'automate que la demande est arrivée |
bInspDone | Poste de contrôle → PLC | Contrôle terminé. Maintenu jusqu'à ce que la demande passe OFF |
bResultOK / bResultNG | Poste de contrôle → PLC | Résultat. Ne change pas tant que contrôle terminé est ON |
bCarryOut | PLC (interne) | Début d'évacuation. Émis après avoir vu contrôle terminé passer OFF |
Le poste de contrôle est réglé pour maintenir la fin jusqu'à ce que la demande retombe : soit par le réglage de handshake du système de vision, soit par un automate côté poste de contrôle qui la pilote. Un poste laissé en mode « résultat en impulsion de durée fixe » ne produira pas ce chronogramme.
Contrôle en cours (bInspBusy) est l'accusé de réception de la demande. Il passe ON au cycle de scrutation qui suit la demande et reste maintenu jusqu'à ce que la demande retombe. Si la demande est émise et que contrôle en cours n'arrive jamais, le poste ne voit pas la demande, et un défaut peut être levé bien avant l'attente de 3 s de la fin.
2. Les flèches fixent l'ordre ; les seuls temps fixés sont les 0,5 s et les limites
Les changements reliés par des flèches sont espacés d'une division (100 ms) uniquement pour montrer l'ordre. Les réponses réelles reviennent dans le délai de scrutation et de communication (de quelques ms à quelques dizaines de ms). Les seuls temps fixés sont les 0,5 s de prise d'image et de décision, et les limites de la section 4.
- Quand la pièce s'arrête en position de contrôle, émettre la demande
- Le poste de contrôle émet d'abord le résultat, puis contrôle terminé 0,5 s pour la prise d'image et la décision.
- L'automate lit le résultat sur le front montant de la fin, le mémorise, puis fait retomber la demande Le poste efface ensuite le résultat. Le résultat décide la destination d'évacuation : gardez-le dans les données de la pièce (un bit de résultat dans le mot de suivi, par exemple).
- Quand la demande retombe, le poste fait retomber la fin, puis le résultat L'ordre inverse de leur émission.
- L'automate lance l'évacuation après avoir vu contrôle terminé passer OFF bWorkSet passe OFF quand la pièce s'en va.
3. Le résultat avant la fin ; demande et fin ne retombent qu'après avoir vu l'autre côté
- Émettre le résultat avant la fin et le faire retomber après L'automate lit le résultat sur le front montant de la fin. Même si le poste émet les deux au même cycle, ils n'arrivent pas forcément ensemble à l'automate par des E/S parallèles ou un réseau. Prenez une avance d'au moins l'écart des temps de réponse d'entrée en E/S parallèles, ou d'un cycle de rafraîchissement sur un réseau.
- Séparer OK et NG sur deux points, et traiter les deux à OFF comme un défaut Avec un seul point, un défaut de câblage fait de chaque pièce bonne une NG. Avec un seul « ON veut dire OK », un fil de résultat coupé fait paraître NG toutes les pièces bonnes, et on les met au rebut jusqu'à ce que quelqu'un s'en aperçoive. Avec deux points, « fin ON mais ni OK ni NG » est détecté sur-le-champ et la ligne s'arrête.
- Maintenir la demande jusqu'à l'arrivée de la fin, et la fin jusqu'à ce que la demande retombe Une impulsion est manquée par l'autre côté. Même raison que les « quatre changements de demande et réponse » de Dessiner un chronogramme : tout ce qui est plus court que le cycle de scrutation ou de rafraîchissement du récepteur disparaît avant d'être vu.
- La demande suivante et l'évacuation attendent que contrôle terminé passe OFF Pour que le résultat de la pièce précédente ne soit pas lu comme celui de la pièce actuelle. Émettez la demande suivante alors que la fin est encore ON, et la fin et le résultat précédents sont lus comme les actuels. C'est aussi une condition d'évacuation, pour qu'une fin qui ne peut pas retomber (la seconde de la section 4) soit détectée tant que la pièce est encore en position de contrôle.
4. Mettre une limite à chaque attente, et arrêter sur défaut quand elle est dépassée
Sans limite, l'automate attend indéfiniment la fin quand le poste de contrôle s'arrête, et la ligne reste immobile sans aucune raison à l'écran.
- Demande ON → fin ON — 3 s. Le contrôle de 0,5 s avec une reprise d'image fait environ 1 s, donc trois fois cela. Indiqué aussi dans la description de bInspDone sur le chronogramme
- Demande OFF → fin OFF — 1 s. Le poste n'a qu'à voir la demande retomber, donc il répond en quelques cycles de scrutation
Un résultat NG suit la même procédure avec bResultNG à ON au lieu de bResultOK. Le retour en position d'origine après un time-out ou un défaut du poste est un autre scénario, dessiné dans un chronogramme séparé ou un Dessiner un organigramme de commande d'automate.
5. Trois choses à modifier : titre, noms des signaux, temps de traitement
Après l'avoir chargé dans le Timing Chart Editor avec « Ouvrir cet exemple dans l'éditeur », modifiez dans cet ordre.
- Titre, noms des équipements, temps par Step — « Infos du chronogramme… » dans la barre d'outils (Ctrl+I). Le « (PLC et poste de contrôle) » du titre reste quand les noms des équipements changent : corrigez-le ici
- Noms des signaux et commentaires — Double-cliquez sur le nom d'une ligne. Remplacez les « 0,5 s » et « 3 s » des commentaires par vos propres valeurs. Si votre site écrit des numéros d'opérandes comme Y100, mettez-les directement dans le nom du signal
- Temps de traitement — Repeignez les plages ON de bResultOK et bInspDone. Les flèches sont attachées aux changements : retracez-les après avoir repeint. Si le chronogramme est trop court, augmentez « Steps » dans la barre d'outils ou allongez le temps par Step
Choisissez SVG dans Sortie → Exporter… pour obtenir une figure à coller dans la spécification. Appuyez sur « Organigramme → » dans la barre d'outils pour obtenir un organigramme : les flèches deviennent « quelle entrée attendre avant de changer quelle sortie ». Vous pouvez aussi télécharger le JSON et faire renommer les signaux par une IA selon votre propre convention (Structure des données JSON).
Les outils utilisés pour cet exemple
- Timing Chart Editor — La figure ci-dessus et le JSON de l'exemple ont été créés et exportés avec cet éditeur.
- Flowchart Editor — Transforme les flèches du chronogramme en une suite d'attentes et de traitements.
Articles connexes
- Chronogramme de vérin pneumatique (exemple)
- Chronogramme de convoyeur à bande (exemple)
- Chronogramme de positionnement servo (exemple)
- Dessiner un chronogramme
- Dessiner un organigramme de commande d'automate
- Structure des données JSON
yk.builds