• Spécifications—Les tâches d'E/S ne supportent pas les opérations à cadencement matériel.
  • Solution—Appliquez un cadencement logiciel à votre boucle à priorité critique en utilisant une boucle cadencée dans LabVIEW ou des timers asynchrones dans LabWindows/CVI. Configurez vos tâches NI-DAQmx pour qu'elles utilisent un cadencement sur demande.

    Avantages

    • Vous pouvez utiliser des boucles de contrôle d'E/S avec des opérations qui n'ont pas de cadencement matériel.
    • Les opérations de lecture, de traitement et d'écriture sont limitées à la période de cadencement logiciel que vous définissez avec la boucle cadencée ou les timers asynchrones.

    Restrictions

    Les échantillons en E/S sont sujets aux fluctuations logicielles.

  • Exemple d'application : E/S à cadencement logiciel

    Un exemple de ce genre d'application est une boucle de contrôle d'E/S. L'application surveille l'état de plusieurs entrées discrètes et passe à la sortie correspondante suivant l'algorithme de contrôle. Le cadencement matériel n'est pas disponible pour les tâches d'E/S numériques point par point dans NI-DAQmx.

    Diagramme de cadencement



    Exemple LabVIEW : E/S à cadencement logiciel

    Remarque Bien que cet exemple soit écrit pour les utilisateurs de LabVIEW, les principes sont les mêmes si vous utilisez un autre logiciel de développement d'applications, comme LabWindows/CVI.
    • Une boucle cadencée avec les sources de temps du système (résolution de l'ordre des millisecondes ou microsecondes) accomplit la tâche. Configurez la boucle cadencée pour qu'elle s'exécute à la fréquence désirée.
    • Configurez toutes les tâches pour qu'elles aient un cadencement logiciel (sur demande).
    • La boucle cadencée rapporte à l'application si l'itération précédente s'est terminée dans les délais alloués. Pour cela, elle utilise le nœud "Terminé en retard [i-1]".

    Exemple de diagramme



    Remarque
    • La boucle cadencée permet à l'application d'ajuster sa période depuis l'intérieur de la boucle, ce qui permet d'implémenter des algorithmes de cadencement dynamique pour le contrôle.
    • Les processus à plus basse priorité peuvent s'exécuter pendant que la boucle cadencée attend sa prochaine itération.
    • D'autres méthodes de cadencement logiciel utilisent les VIs Attendre et Attendre un multiple de ms (avec une résolution de l'ordre de microsecondes ou millisecondes). Ces méthodes ne donnent aucune information lorsque l'application prend du retard.