Démarrer avec PEController en utilisant STM32CubeIDE

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 :

  1. STM32CubeIDE 1.9 ou plus récent
  2. STM32Cube_FW_H7_V1.7.0 ou plus récent
  3. STM32CubeMX 6.0.0 ou plus récent
  4. Paquet de support de la carte PEController

Vue d'ensemble du matériel #

Module contrôleur ARM double cœur PEController

Préparez le PEController pour l'exécution de l'application de démonstration en suivant les étapes suivantes.

  1. Mettez le PEController sous tension. (Dans le cas d'un PEController autonome, utilisez l'adaptateur 15V pour alimenter le PEController).
  2. 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.

PEControllerBSP Github télécharger

É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 :

Aperçu du répertoire PEControllerBSP

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.
  • 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.

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.

Projet Open Vf PEControllerBSP

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

PEControllerBSP Afficher l'explorateur de projet

É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 :

PEControllerBSP Afficher la barre d'outils

É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 :

Vue du projet PEControllerBSP

É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.
PEControllerBSP user config

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

Construction du PEControllerBSP

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 :

Configurations d'exécution PEControllerBSP

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

Configurations d'exécution PEControllerBSP 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 :

Configurations d'exécution PEControllerBSP CM7

É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.

  1. PELab avec contrôleur PEC intégré
  2. Charge triphasée (moteur à induction ou inducteurs)
  3. 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ÈTREVALEUR
Fréquence PWM40 KHz
Sortie Fréquence requise25 Hz
Sortie Fréquence initiale1 Hz
Tension de liaison DC50 V
Inductance2,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.

PEControllerBSP Résultats V/f

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 :

Configurations de débogage du PEControllerBSP

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

PEControllerBSP debug CM7

É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:

PEControllerBSP debug CM4

É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 :

Vue de débogage du PEControllerBSP

É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 :

PEControllerBSP expressions en direct

É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.

Développé par BetterDocs