Comment empêcher du code généré de bloquer une boucle de commande robotique ?

Réponse rapide

Un code généré ne doit pas bloquer une boucle de commande : analysez complexité et allocations, imposez deadline, watchdog, exécuteur dédié, timeout, non-blocage et mode de repli.

Avertissement de sécurité

Une boucle bloquée peut empêcher freinage ou arrêt. Mesurez le pire cas sous surcharge, utilisez watchdog et gardez une commande locale indépendante.

Contraindre

Définissez budget CPU, mémoire, latence, fréquence et fonctions interdites dans l’interface. Séparez I/O lente, réseau et logs de la boucle critique.

Mesurer

Testez pire entrée, cache froid, contention, exception, perte réseau et surcharge avec profiler et timestamps. Rapportez percentile élevé et durée maximale.

Replier

Un timeout ou watchdog arrête, limite ou passe à une consigne locale connue. Le code généré ne désactive ni arrêt ni diagnostic.

Sources et références

  1. [1] Robotics and Autonomous Systems — NIST

Cette réponse vous a-t-elle été utile ?