Introduction
Cet article décrit comment démarrer le développement embarqué sur PEController.
Pré-requis #
Les outils suivants sont indispensables pour comprendre et mettre en œuvre l'exemple donné dans cet article :
- STM32CubeIDE 1.9 ou plus récent
- STM32Cube_FW_H7_V1.7.0 ou plus récent
- STM32CubeMX 6.0.0 ou plus récent
- Paquet de support de la carte PEController
Vue d'ensemble du matériel #

Préparez le PEController pour l'exécution de l'application de démonstration en suivant les étapes suivantes.
- Mettez le PEController sous tension. (Dans le cas d'un PEController autonome, utilisez l'adaptateur 15V pour alimenter le PEController).
- Connectez l'ICP USB à l'ordinateur via un câble USB de type A.
Support de la carte PEController Package #
Le PEController est supporté par des bibliothèques C embarquées open-source sur GitHub. Le paquet open-source est appelé PEController Board Support Package (BSP). Ces bibliothèques comprennent également des exemples d'application qui peuvent accélérer le développement. Ces bibliothèques sont un prérequis pour cet article.
Téléchargement de la BSP du PEController
Téléchargez la version actuelle du BSP de PEController en suivant les étapes suivantes :
Étape 1 : Allez sur le lien https://github.com/Taraz-Technologies/PEControllerBSP.
Étape 2 : Appuyez sur le bouton "Code" comme indiqué dans l'image ci-dessous et cliquez sur "Download ZIP" pour obtenir la version la plus récente de PEController BSP.

Étape 3 : Extraire le dossier du fichier zip téléchargé.
Étape 4 : Cliquez ici pour accéder à la documentation de PEControllerBSP
PEController BSP Brief #
Vue d'ensemble de l'annuaire
La section suivante décrit la structure actuelle des répertoires du BSP du PEController :

Conducteurs #
Ce dossier contient les pilotes de périphériques pour PEController.
- BSP : Contient les pilotes BSP fournis par Taraz Technologies.
- PEController
- ADC : contient les pilotes de périphériques liés à l'ADC.
- Commun : contient le partage général et les définitions relatives aux pilotes de périphériques.
- Composants : Contient les différents pilotes de composants.
- DigitalPins : Contient les pilotes de périphériques liés aux E/S numériques.
- Affichage : Contient les pilotes de périphériques liés à l'affichage.
- intelliSENS : Contient les pilotes de périphériques pour l'intégration du logiciel intelliSENS.
- PWM : Contient les pilotes de périphériques liés au PWM.
- PEController
- CMSIS : Contient les pilotes de périphériques standard Common Microcontroller Software Interface Standard (CMSIS).
- STM32H7xx_HAL_Driver : Il contient le dispositif fourni par STMicroelectronics.
Logiciels intermédiaires
Ce dossier contient les bibliothèques de support pour les pilotes.
- ST : Contient les bibliothèques de support pour l'USB, le réseau, etc. fournies par STMicroelectronics.
- Taraz : Contient les bibliothèques d'aide à la conception de systèmes de contrôle (telles que les conversions Clarke/Park, le filtrage numérique, la génération de PLL, etc.) fournies par Taraz Technologies.
- Third_party : Contient des bibliothèques tierces telles que LWIP, FreeRTOS et FatFS.
Projets #
Ce dossier contient les exemples d'application fournis dans le BSP.
- PEController
- Applications.
- PEController_Template: Projet modèle pour la création de nouveaux projets rapides.
- PELab_OpenLoopVFD: Implémentation de base du contrôle V/f en boucle ouverte Implémenté pour différentes variantes de PELab ainsi que pour des cartes PEController indépendantes.
- Applications.
Exécution de l'exemple V/f en boucle ouverte
Cet article utilise le projet d'exemple PELab_OpenLoopVFD pour démontrer l'utilisation avec PEController. Veillez à installer tous les outils prérequis avant de poursuivre.
Etape 1 : Ouvrez le répertoire contenant le BSP PEController téléchargé depuis GitHub.
Step 2: Open the “.project” file in {Project_path}/ Projects/PEController/Applications/PELab_OpenLoopVFD. This will add the project with its two nested projects in the STM32CubeIDE workspace.

Étape 3 : Ouvrez l'explorateur de projets à partir de l'élément de menu Fenêtre comme indiqué dans l'image ci-dessous :

Étape 4 : Assurez-vous d'activer la barre d'outils à partir de la fenêtre dans l'élément de menu, comme indiqué ci-dessous :

Étape 5 : Développez le projet PELab_OpenLoopVFD. Il est visible dans le projet, que le projet a deux projets imbriqués, l'un pour le noyau CM4 tandis que l'autre est pour le noyau CM7 comme on le voit dans l'image ci-dessous :

Étape 6 : La logique du BSP est divisée de manière à ce que l'acquisition des mesures, l'affichage LCD et d'autres fonctionnalités auxiliaires soient contrôlés par le noyau CM4, tandis que le noyau CM7 est utilisé pour la mise en œuvre de l'algorithme de contrôle afin d'améliorer les performances de ce dernier.
Étape 7 : Les deux projets contiennent la structure suivante :
- BSP : Contient les pilotes BSP.
- Common : contient les fichiers partagés tels que les configurations qui sont partagées par les noyaux CM4 et CM7.
- Core : Contient le fichier principal et les autres fichiers générés par le logiciel STM32CubeMX.
- Pilotes : Contient les pilotes de STMicroelectronics.
- UserFiles : Contient les fichiers liés au projet.
Étape 8 : Modifier les informations suivantes dans le fichier "user_config.h" dans Common/Inc :
- Sélectionnez le type de matériel à partir du paramètre PECONTROLLER_CONFIG. Sélectionnez PEC_CUSTOM pour un PEController indépendant, tandis que pour PELab, sélectionnez la configuration PELab appropriée.
- Si le contrôleur PEC est monté dans le PELab, sélectionnez la valeur appropriée de PELAB_VERSION et CURRENT_SENSITIVITY_mVA. Les informations pertinentes sont disponibles dans la fiche technique du PELab.
- Sélectionnez le module d'affichage approprié pour votre PEController.

Étape 9 : Cliquez avec le bouton droit de la souris sur PELab_OpenLoopVFD_CM4 et cliquez sur "build project" :

Etape 10 : Cliquez avec le bouton droit de la souris sur PELab_OpenLoopVFD_CM7 et cliquez sur "build project".
Étape 11 : Cliquez sur Exécuter, puis sur Exécuter les configurations... dans les éléments de menu :

Étape 12 : Allez dans l'onglet Démarrage de PELab_OpenLoopVFD_CM4:

Étape 13 : La figure ci-dessus montre que le projet PELab_OpenLoopVFD_CM4 est configuré pour ne pas construire ou télécharger le code du noyau CM4. Cette option permet de déboguer les noyaux CM4 et CM7 en même temps. Le projet CM7, comme le montre la figure ci-dessous, est responsable de la programmation des noyaux CM7 et CM4 :

Étape 14 : Assurez-vous que le projet CM7 est sélectionné dans la fenêtre ci-dessus et appuyez sur Run pour télécharger le code sur les deux cœurs.
Mise en œuvre et résultats
Cette section présente la mise en œuvre pratique du contrôle V/f en boucle ouverte sur une charge inductive.
Équipement requis #
Le matériel suivant est nécessaire pour vérifier de manière pratique le fonctionnement du contrôleur V/f.
- PELab avec contrôleur PEC intégré
- Charge triphasée (moteur à induction ou inducteurs)
- Alimentation en courant continu
Détails de la mise en œuvre
La mise en œuvre est possible pour une variété de configurations de PELab. Le PEController autonome nécessite un étage de puissance externe et une charge triphasée pour la mise en œuvre de cet exemple. Ce guide traite des résultats de l'exemple V/f en boucle ouverte sur PELab (PLB-6PH) avec des inductances internes comme charge triphasée.
L'exemple démontre le contrôle de l'indice de modulation basé sur la fréquence du courant alors que la tension de la liaison CC est constante. Au début de la démonstration, la fréquence de sortie est de 1 Hz. La fréquence augmente avec un facteur d'accélération donné jusqu'à ce qu'elle atteigne la valeur de fréquence requise. Cela démontre la capacité de démarrage progressif des moteurs triphasés, ce qui permet d'éviter des exigences de courant élevées au démarrage.
Le tableau suivant présente les spécifications de mise en œuvre pertinentes :
PARAMÈTRE | VALEUR |
Fréquence PWM | 40 KHz |
Sortie Fréquence requise | 25 Hz |
Sortie Fréquence initiale | 1 Hz |
Tension de liaison DC | 50 V |
Inductance | 2,5 mH |
Résultats
Cette section fournit les formes d'ondes du courant de sortie pour les trois phases à la fréquence requise. Chaque forme d'onde de courant est représentée par une couleur différente. Les mesures pertinentes sont également disponibles dans l'image.

Débogage de l'exemple #
Cette section décrit la procédure de débogage simultané des noyaux CM7 et CM4 du projet. Suivez les étapes suivantes pour déboguer le projet v/f en boucle ouverte.
Étape 1 : Cliquez sur la flèche située à côté de l'icône Debug dans la barre d'outils et cliquez sur l'élément de menu Debug Configurations (Configurations de débogage), comme indiqué dans l'image ci-dessous :

Étape 2 : Sélectionnez la configuration de lancement PELab_OpenLoopVFD_CM7 et appuyez sur le bouton Debug:

Étape 3 : Appuyez sur le bouton de reprise dans la barre d'outils une fois que l'application est chargée. Assurez-vous que l'application est complètement chargée avant d'appuyer sur le bouton de reprise afin d'éviter toute erreur.
Étape 4 : Cliquez sur la flèche située à côté de l'icône Debug dans la barre d'outils et cliquez sur l'élément de menu Debug Configurations:

Étape 5 : Sélectionnez la configuration de lancement PELab_OpenLoopVFD_CM4 et appuyez sur le bouton Debug.
Étape 6 : La fenêtre de débogage devrait ressembler à l'image ci-dessous, où les deux projets seront en cours d'exécution :

Étape 7 : Ouvrez l'onglet Live Expressions, écrivez adcVals dans la colonne expression et appuyez sur la touche Entrée. Appuyez sur la flèche sur le côté de adcVals pour voir le retour de la valeur en direct des canaux analogiques. La structure de adcVals est définie dans adc_config.h et ses membres peuvent varier en fonction de votre configuration. L'affichage de la rétroaction en direct est similaire à l'image ci-dessous et les valeurs changent constamment :

Étape 8 : Cliquez sur le bouton "Terminer" dans la barre d'outils pour les deux projets afin de mettre fin à la session de débogage.