• Spécifications—Utilisez des opérations d'entrée de compteur à cadencement matériel pour contrôler une boucle de contrôle.
  • Solution—Utilisez la fonction ou le VI Attendre la prochaine horloge d'échantillonnage pour synchroniser les opérations de compteur avec l'horloge d'échantillonnage.

    Avantages

    • Les tâches de compteur permettent un cadencement flexible et des opérations de détection d'événement capables de contrôler le traitement logiciel de la boucle de contrôle. Autrement dit, la boucle de contrôle peut avoir une fréquence d'horloge dynamique.
    • NI-DAQmx renvoie une erreur si la fonction ou le VI Attendre la prochaine horloge d'échantillonnage n'a pas démarré quand le front suivant de l'horloge d'échantillonnage arrive.

    Restrictions

    Les opérations de lecture, de traitement et d'écriture sont limitées au temps disponible entre le moment où le périphérique commence l'acquisition des données et celui où le front suivant de l'horloge d'échantillonnage survient.

  • Exemple d'application : Tâches de compteur à cadencement matériel

    Un exemple de ce genre d'application est une boucle de contrôle qui utilise une tâche d'entrée de compteur, comme un comptage de fronts, tout en contrôlant des lignes numériques en se basant sur une logique de contrôle prédéfinie. Cet exemple d'application effectue les communications en utilisant les FIFO temps réel. Dans LabWindows/CVI, vous pouvez utiliser une file d'attente thread-safe au lieu des FIFO temps réel.

    Diagramme de cadencement



    Exemple d'application 2 : Tâches de compteur à cadencement matériel

    Un autre exemple d'application est une boucle de contrôle qui surveille les entrées discrètes et utilise les valeurs pour mettre une tâche de sortie de compteur à jour, en utilisant le mode fréquence d'impulsion pour générer des signaux de contrôle à largeur d'impulsion modulée. Cet exemple d'application effectue les communications en utilisant les FIFO temps réel. Dans LabWindows/CVI, vous pouvez utiliser une file d'attente thread-safe au lieu des FIFO temps réel.

    Diagramme de cadencement



    Exemple LabVIEW : Tâches de compteur à cadencement matériel

    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.
    • Câblez le VI Attendre la prochaine horloge d'échantillonnage à la tâche d'entrée de compteur.
    • Si le VI Attendre la prochaine horloge d'échantillonnage ne s'exécute pas avant l'arrivée du front suivant de l'horloge d'échantillonnage, il renvoie une erreur.

    Exemple de diagramme



    Exemple 2

    • Câblez le VI Attendre la prochaine horloge d'échantillonnage à la tâche d'entrée de compteur.
    • Si le VI Attendre la prochaine horloge d'échantillonnage ne s'exécute pas avant l'arrivée du front suivant de l'horloge d'échantillonnage, il renvoie une erreur.

    Exemple de diagramme



    Remarque
    • N'utilisez qu'un seul VI Attendre la prochaine horloge d'échantillonnage dans une boucle LabVIEW. Si vous avez plusieurs tâches d'E/S à cadencement matériel dans la même boucle LabVIEW, vous pouvez connecter le VI Attendre la prochaine horloge d'échantillonnage à n'importe quelle tâche point par point à cadencement matériel de la boucle.
    • Si vous préférez recevoir une mise en garde plutôt qu'une erreur en cas de dépassement de cycle, définissez la propriété DAQmx - Temps-réel»Convertir les erreurs de retard en mises en garde à Vrai.
    • Les opérations de compteur à cadencement matériel n'ont pas de période de conversion comme les entrées analogiques multiplexées. Par conséquent, la FIFO temps réel peut être placée n'importe où dans la boucle LabVIEW.
    • NI-DAQmx fournit un mécanisme qui permet de récupérer d'un front d'horloge d'échantillonnage manqué pendant les écritures de compteur. Si ce mécanisme de récupération d'écriture échoue, NI-DAQmx renvoie une erreur et les opérations suivantes sur cette tâche n'ont plus de cadencement matériel.
    • La propriété DAQmx - Temps réel»Mode de récupération des écritures vous permet de choisir entre les modes Attendre une interruption et Interrogation pour le mécanisme de récupération. Attendre une interruption, le mode par défaut, permet aux processus à priorité plus basse de s'exécuter pendant que NI-DAQmx essaie de récupérer. Par contre, le mode Interrogation permet des fréquences d'échantillonnage plus élevées.