Utilisation du PID sur des cibles FPGA
- Mise à jour2023-02-21
- Temps de lecture : 4 minute(s)
Vous pouvez utiliser le VI Express PID (FPGA) pour implémenter un PID monovoie ou multivoies sur une cible LabVIEW FPGA. Le VI Express PID (FPGA) implémente un algorithme de PID à virgule fixe. Reportez-vous à la rubrique sur ce VI pour obtenir des informations complémentaires sur l'algorithme qu'il utilise.
![]() |
Remarque Le VI Express PID (FPGA) n'est disponible que si vous installez le module LabVIEW FPGA. |
Implémentation d'un PID monovoie sur des cibles FPGA
Pour configurer le VI Express PID (FPGA) pour une implémentation monovoie, indiquez 1 dans la commande Number of channels dans la boîte de dialogue de configuration. Pour des implémentations PID monovoie, toute modification apportée aux paramètres du PID dans le VI hôte prend immédiatement effet sur la cible FPGA.
(NI-RIO) Si le logiciel NI-RIO est installé, reportez-vous au projet Using Discrete PID - cRIO dans le répertoire labview\examples\CompactRIO\FPGA Fundamentals\FPGA Math and Analysis\PID Toolkit pour voir un exemple d'implémentation PID monovoie sur une cible FPGA.
(NI-RIO) Si le logiciel NI-RIO est installé, vous pouvez également vous reporter au projet Using Discrete PID - R Series dans le répertoire labview\examples\R Series\FPGA Fundamentals\FPGA Math and Analysis\PID Toolkit pour voir un exemple d'implémentation PID monovoie sur une cible FPGA.
Implémentation d'un PID multivoies sur des cibles FPGA
Pour configurer le VI Express PID (FPGA) pour une implémentation multivoies, indiquez un nombre supérieur à 1 dans la commande Number of channels dans la boîte de dialogue de configuration. Afin de gérer les valeurs pour chaque voie, le VI hôte peut inclure une boucle d'initialisation et une boucle de traitement, que vous pouvez utiliser pour modifier des paramètres ou réinitialiser des voies.
Boucle d'initialisation dans le VI hôte
Les valeurs initiales des paramètres que vous spécifiez dans la boîte de dialogue de configuration du VI Express PID (FPGA) définissent les valeurs initiales de toutes les voies. Pour spécifier des valeurs uniques à des voies individuelles, vous devez créer une boucle d'initialisation dans le VI hôte.
Dans la boucle d'initialisation, vous pouvez mettre à jour les valeurs des paramètres de certaines voies tandis que d'autres voies gardent les valeurs initiales que vous avez spécifiées dans la boîte de dialogue de configuration. Dans le diagramme représenté ci-dessous, la boucle d'initialisation initialise les paramètres de toutes les voies.
![]() |
Remarque Le diagramme suivant contient certaines fonctions qui ne sont disponibles que si vous installez le logiciel de driver de la cible FPGA ou le module LabVIEW FPGA. |

Boucle de traitement dans le VI hôte
Après avoir initialisé les paramètres du PID et alors que le VI est en cours d'exécution sur la cible FPGA, vous pourriez vouloir modifier des paramètres ou réinitialiser des voies individuellement sans pour autant gêner l'exécution des autres voies. Créez une boucle de traitement dans le VI hôte afin de pouvoir modifier des paramètres ou réinitialiser des voies de manière asynchrone pendant l'exécution du VI FPGA.
La réinitialisation d'une voie du PID entraîne la réinitialisation des états internes de la voie à 0 et relance l'algorithme de PID en utilisant soit les valeurs des paramètres en mémoire, soit les valeurs des paramètres du VI hôte. Pour modifier différents paramètres, vous devez spécifier l'indice de la voie afin d'indiquer à l'algorithme de PID le numéro de la voie à laquelle les nouvelles valeurs de paramètres doivent être appliquées. Le diagramme suivant représente un exemple de boucle de traitement.
![]() |
Remarque Le diagramme suivant contient certaines fonctions qui ne sont disponibles que si vous installez le logiciel de driver de la cible FPGA ou le module LabVIEW FPGA. |

