Logo STMicroelectronics

Capteur de micrologiciel en 32 étapes SDK de contrôle de moteur STM6, sans paramètres

STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter-produit
Caractéristiques
  • Nom du produit : SDK de commande de moteur STM32 – Optimisation des paramètres sans capteur du micrologiciel en 6 étapes
  • Numéro de modèle : UM3259
  • Révision : Rév. 1 – novembre 2023
  • Fabricant : STMicroelectronics
  • Website: www.st.com

Surview

Le produit est conçu pour les applications de contrôle de moteur où la position du rotor doit être déterminée sans utiliser de capteurs. Le micrologiciel optimise les paramètres pour un fonctionnement sans capteur, permettant la synchronisation de la commutation par étapes avec la position du rotor.
Détection du passage à zéro BEMF :
La forme d'onde de la force contre-électromotrice (BEMF) change avec la position et la vitesse du rotor. Deux stratégies sont disponibles pour la détection du passage à zéro :
Détection EMF arrière pendant le temps d'arrêt PWM : acquérir le volume de phase flottantetage par ADC lorsqu'aucun courant ne circule, identifiant le passage à zéro en fonction du seuil.
Détection EMF arrière pendant le temps d'activation PWM : Centre = appuyez sur voltage atteint la moitié du volume du bustage, identification du passage à zéro en fonction du seuil (VS/2).
SDK de commande de moteur STM32 – optimisation des paramètres sans capteur du micrologiciel en 6 étapes

Introduction

Ce document décrit comment optimiser les paramètres de configuration pour un algorithme en 6 étapes sans capteur. L’objectif est d’obtenir une procédure de démarrage fluide et rapide, mais également un comportement stable en boucle fermée. De plus, le document explique également comment atteindre un commutateur approprié entre la détection du passage à zéro de la FEM arrière pendant le temps d'arrêt PWM et le temps d'activation PWM lors de la rotation du moteur à grande vitesse avec un vol.tage technique du mode conduite. Pour plus de détails sur l'algorithme du micrologiciel en 6 étapes et le voltagPour la technique de conduite actuelle, reportez-vous au manuel d'utilisation associé inclus dans le package de documentation X-CUBE-MCSDK.

Acronymes et abréviations

Acronyme Description
MCSDK Kit de développement logiciel de contrôle moteur (X-CUBE-MCSDK)
HW Matériel
IDE Environnement de développement intégré
MCU Unité de microcontrôleur
GPIO Entrée/sortie à usage général
ADC Convertisseur analogique-numérique
VM Voltagmode e
SL Sans capteur
BEMF Force électromotrice arrière
FW Micrologiciel
ZC Passage à zéro
Interface utilisateur graphique Interface utilisateur graphique
MC Contrôle moteur
OCP Protection contre les surintensités
PID Proportionnel-intégral-dérivé (contrôleur)
Kit de développement logiciel (SDK) Kit de développement logiciel
UI Interface utilisateur
Établi MC Outil d'atelier de commande de moteur, partie du MCSDK
Pilote moteur Outil pilote de moteur, partie du MCSDK

Surview

Dans le mode de conduite sans capteur en 6 étapes, le micrologiciel exploite la force contre-électromotrice (BEMF) détectée lors de la phase flottante. La position du rotor est obtenue en détectant le passage par zéro du BEMF. Cela se fait généralement à l'aide d'un CAN, comme le montre la figure 1. En particulier, lorsque le champ magnétique du rotor traverse la phase à Z élevé, le volume BEMF correspondanttage change de signe (passage par zéro). Le BEMF vol.tage peut être mis à l'échelle à l'entrée ADC, grâce à un réseau de résistances qui divise le voltage provenant de la phase moteur.
Cependant, le signal BEMF étant proportionnel à la vitesse, la position du rotor ne peut pas être déterminée au démarrage, ni à très faible vitesse. Par conséquent, le moteur doit être accéléré en boucle ouverte jusqu'à ce qu'un volume BEMF suffisant soit atteint.tage est atteint. Ce BEMF vol.tage permet la synchronisation de la commutation pas à pas avec la position du rotor.
Dans les paragraphes suivants, la procédure de démarrage et le fonctionnement en boucle fermée, ainsi que les paramètres permettant de les régler, sont décrits.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (2)
Détection du passage à zéro BEMF
La forme d'onde de la force électromagnétique arrière d'un moteur sans balais change avec la position et la vitesse du rotor et a une forme trapézoïdale. La figure 2 montre la forme d'onde du courant et de la force contre-électromotrice pour une période électrique, où la ligne continue désigne le courant (les ondulations sont ignorées par souci de simplicité), la ligne pointillée représente la force contre-électromotrice et la coordonnée horizontale représente la force électrique. perspective de rotation du moteur.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (3)
Le milieu de tous les deux points de commutation de phase correspond à un point dont la polarité de la force rétro-électromotrice est modifiée : le point de passage à zéro. Une fois le passage à zéro identifié, le moment de commutation de phase est réglé après un retard électrique de 30°. Pour détecter le passage à zéro du BEMF, le robinet central voltagIl faut qu'on le connaisse. La prise centrale est égale au point où les trois phases du moteur sont connectées entre elles. Certains moteurs proposent le robinet central. Dans d'autres cas, il peut être reconstruit grâce au voltage phases. L'algorithme en 6 étapes décrit ici prend des avancéestage de la présence d'un réseau de détection BEMF connecté aux phases du moteur qui permet de calculer le vol de prise centraletage.
  • Deux stratégies différentes sont disponibles pour l'identification du point de passage à zéro
  • Détection EMF arrière pendant le temps d'arrêt PWM
  • Détection EMF arrière pendant le temps d'activation PWM (actuellement pris en charge dans le voltagmode e uniquement)
Pendant le temps d'arrêt PWM, le volume de la phase flottantetage est acquis par l’ADC. Comme aucun courant ne circule dans la phase flottante, et que les deux autres sont connectés à la terre, lorsque le BEMF passe par zéro dans la phase flottante, il a une polarité égale et opposée sur les autres phases : la prise centrale voltage est donc nul. Par conséquent, le point de passage à zéro est identifié lorsque la conversion ADC dépasse ou tombe en dessous d’un seuil défini.
Par contre, pendant le temps PWM ON, une phase est connectée au bus voltage, et un autre au sol (Figure 3). Dans cet état, le robinet central voltage atteint la moitié du vol du bustagLa valeur lorsque le BEMF en phase flottante est nul. Comme précédemment, le point de passage à zéro est identifié lorsque la conversion ADC dépasse (ou tombe en dessous) un seuil défini. Ce dernier correspond à VS/2.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (4)
Conception du réseau de détection BEMF
La figure 4 montre le réseau couramment utilisé pour détecter le BEMF. Son but est de diviser le volume de phase du moteurtage doit être correctement acquis par l’ADC. Les valeurs R2 et R1 doivent être choisies en fonction du volume du bustage niveau. L'utilisateur doit être conscient qu'en mettant en œuvre un rapport R1 / (R2 + R1) bien inférieur à celui nécessaire, le signal BEMF peut s'avérer trop faible et la commande pas assez robuste.
En revanche, un rapport supérieur à celui nécessaire entraînerait des allumages/extinctions fréquents des diodes de protection D1 dont le courant de récupération pourrait injecter du bruit. La valeur recommandée est :
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (5)
Des valeurs très faibles pour R1 et R2 doivent être évitées pour limiter le courant prélevé sur la phase du moteur.
R1 est parfois connecté à un GPIO au lieu de GND. Il permet au réseau d'être activé ou désactivé lors de l'exécution.
Dans le firmware en 6 étapes, le GPIO est toujours en état de réinitialisation et le réseau est activé. Cependant, la présence éventuelle de D3 doit être prise en compte lors du réglage des seuils BEMF pour la détection pendant le temps d'activation PWM : elle ajoute généralement 0.5÷0.7 V au seuil idéal.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (6)
C1 est destiné à des fins de filtrage et ne doit pas limiter la bande passante du signal dans la plage de fréquences PWM.
D4 et R3 sont destinés à une décharge rapide du nœud BEMF_SENSING_ADC lors des commutations PWM, notamment en haute vol.tage planches.
Les diodes D1 et D2 sont facultatives et doivent être ajoutées uniquement en cas de risque de violation des valeurs nominales maximales du canal CAN de détection BEMF.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (7)
Optimisation des paramètres de l'algorithme de contrôle
Procédure de démarrage
La procédure de démarrage est généralement composée d'une séquence de trois stagen:
  1. Alignement. Le rotor est aligné à une position prédéterminée.
  2. Accélération en boucle ouverte. Le voltagLes impulsions sont appliquées dans une séquence prédéterminée pour créer un champ magnétique qui fait commencer à tourner le rotor. La cadence de la séquence est progressivement augmentée pour permettre au rotor d'atteindre une certaine vitesse.
  3.  Basculement. Une fois que le rotor a atteint une certaine vitesse, l'algorithme passe à une séquence de contrôle en boucle fermée en 6 étapes pour maintenir le contrôle de la vitesse et de la direction du moteur.
Comme le montre la figure 5, l'utilisateur peut personnaliser les paramètres de démarrage dans MC Workbench avant de générer le code. Deux modes de conduite différents sont disponibles :
  • Voltagle mode. L'algorithme contrôle la vitesse en faisant varier le rapport cyclique du PWM appliqué aux phases du moteur : un Vol de Phase cibletage est défini pour chaque segment du startup profile
  • Mode actuel. L'algorithme contrôle la vitesse en faisant varier le courant qui circule dans les phases du moteur : une cible de courant est définie pour chaque segment du démarrage pro.file
Figure 5. Paramètres de démarrage dans l'atelier MC
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (8)
Alignement
Sur la figure 5, la Phase 1 correspond toujours à l'étape d'alignement. Le rotor est aligné sur la position en 6 étapes la plus proche de « l’angle électrique initial ».
Il est important de noter que par défaut la durée de la Phase 1 est de 200 ms. Au cours de cette étape, le cycle de service est augmenté linéairement pour atteindre la cible Phase Vol.tage (Phase Current, si le mode de conduite actuel est sélectionné). Cependant, dans le cas de moteurs volumineux ou en cas de forte inertie, la durée proposée, voire la Phase Vol cibletage/Le courant peut ne pas être suffisant pour démarrer correctement la rotation.
Sur la figure 6, une comparaison entre une condition d'alignement incorrecte et une condition correcte est fournie.
Si la valeur cible ou la durée de la Phase 1 ne suffisent pas à forcer le rotor en position de démarrage, l'utilisateur peut voir le moteur vibrer sans commencer à tourner. Pendant ce temps, l’absorption actuelle augmente. Durant la première période de la procédure de démarrage, le courant augmente, mais le couple n'est pas suffisant pour vaincre l'inertie du moteur. En haut de la figure 6 (A), l'utilisateur peut voir le courant augmenter. Cependant, il n'y a aucune trace de BEMF : le moteur cale alors. Une fois l’étape d’accélération démarrée, la position incertaine du rotor empêche l’algorithme de terminer la procédure de démarrage et de faire tourner le moteur.
Augmenter le volumetagLa phase e/actuelle pendant la phase 1 peut résoudre le problème.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (9)
En voltage mode, le volume cibletagLe code au démarrage peut être personnalisé avec le Motor Pilot sans avoir besoin de régénérer le code. Dans le Motor Pilot, dans la section rev-up, le même pro d'accélérationfile de la figure 1 est rapporté (voir figure 7). Notez qu'ici le voltagLa phase peut être affichée comme l'impulsion réglée dans le registre de minuterie (unité S16A), ou comme correspondant au volume de sortie.tage (unité Vrms).
Une fois que l'utilisateur a trouvé les valeurs appropriées qui conviennent le mieux au moteur, ces valeurs peuvent être implémentées dans le projet MC Workbench. Il permet de régénérer le code pour appliquer la valeur par défaut. La formule ci-dessous explique la corrélation entre voltage phase dans les unités Vrms et S16A.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (10)
En mode courant, dans l'interface graphique de Motor Pilot, le courant cible est uniquement affiché dans S16A. Sa conversion en ampCela dépend de la valeur du shunt et du ampgain de lification utilisé dans les circuits du limiteur de courant.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (11)
Accélération en boucle ouverte
Sur la figure 5, la Phase 2 correspond à la phase d'accélération. La séquence en 6 étapes est appliquée pour accélérer le moteur en boucle ouverte, par conséquent, la position du rotor n'est pas synchronisée avec la séquence en 6 étapes. Les phases de courant sont alors supérieures à l'optimum et le couple est plus faible.
Dans l'atelier MC (Figure 5), l'utilisateur peut définir un ou plusieurs segments d'accélération. En particulier, pour un moteur volumineux, il est recommandé de l'accélérer avec une vitesse plus lente.amp pour vaincre l'inertie avant d'effectuer un r plus raideamp. Au cours de chaque segment, le rapport cyclique est augmenté linéairement pour atteindre l'objectif final du vol.tage/phase actuelle de ce segment. Ainsi, il force la commutation des phases à la vitesse correspondante indiquée dans le même tableau de configuration.
Dans la figure 8, une comparaison entre une accélération avec un voltagLa phase (A) est trop basse et une phase (B) appropriée est fournie.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (12)
Si le volume cibletagLe courant électrique d'une phase ou sa durée n'est pas suffisant pour permettre au moteur d'atteindre la vitesse correspondante, l'utilisateur peut voir le moteur arrêter de tourner et commencer à vibrer. En haut de la figure 8, le courant augmente soudainement lorsque le moteur cale tandis que, lorsqu'il est correctement accéléré, le courant augmente sans discontinuités. Une fois le moteur arrêté, la procédure de démarrage échoue.
Augmenter le volumetagLa phase e/actuelle peut résoudre le problème.
En revanche, si le voltagLa phase e/courant définie est trop élevée, car le moteur fonctionne de manière inefficace en boucle ouverte, le courant peut augmenter et atteindre la surintensité. Le moteur s'arrête soudainement et une alarme de surintensité est affichée par le Motor Pilot. Le comportement du courant est représenté sur la figure 9.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (13)
Diminuer le volumetagLa phase e/actuelle peut résoudre le problème.
Comme l'étape d'alignement, le vol cibletage/current peut être personnalisé lors du démarrage avec le Motor Pilot sans qu'il soit nécessaire de régénérer le code. Ensuite, il peut être implémenté dans le projet MC Workbench lorsque le paramètre approprié est identifié.
Commutation
La dernière étape de la procédure de démarrage est le basculement. Au cours de cette étape, l'algorithme exploite le BEMF détecté pour synchroniser la séquence de 6 étapes avec la position du rotor. Le basculement commence dans le segment indiqué dans le paramètre souligné sur la figure 10. Il est configurable dans la section des paramètres de démarrage sans capteur de l'atelier MC.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (14)
Après un signal de détection de passage à zéro BEMF valide (pour remplir cette condition, voir la section 2.1), l'algorithme passe à un fonctionnement en boucle fermée. L'étape de basculement peut échouer pour les raisons suivantes :
  • La vitesse de commutation n'est pas correctement configurée
  • Les gains PI de la boucle de vitesse sont trop élevés
  • Les seuils pour détecter l'événement de passage à zéro BEMF ne sont pas correctement définis
Vitesse de commutation mal configurée
La vitesse à laquelle démarre la commutation est par défaut la même que la vitesse cible initiale qui peut être configurée dans la section de réglage du variateur du MC workbench. L'utilisateur doit être conscient que dès que la boucle de vitesse est fermée, le moteur accélère instantanément de la vitesse de commutation à la vitesse cible. Si ces deux valeurs sont très éloignées, une panne de surintensité peut survenir.
Gains PI de la boucle de vitesse trop élevés
Lors de la commutation, l'algorithme passe du forçage d'une séquence prédéfinie à la mesure de la vitesse et calcule les valeurs de sortie en conséquence. Ainsi, il compense la vitesse réelle résultant de l’accélération en boucle ouverte. Si les gains PI sont trop élevés, une instabilité temporaire peut survenir, mais elle peut conduire à une défaillance par surintensité si elle est exagérée.
La figure 11 montre et example d'une telle instabilité lors du passage du fonctionnement en boucle ouverte au fonctionnement en boucle fermée.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (15)
Mauvais seuils BEMF
  • Si de mauvais seuils BEMF sont définis, le passage à zéro est détecté soit à l'avance, soit tardivement. Cela provoque deux effets principaux :
  • Les formes d'onde sont asymétriques et le contrôle inefficace, ce qui entraîne des ondulations de couple élevées (Figure 12).
  • La boucle de vitesse devient instable en essayant de compenser les ondulations du couple
  • L'utilisateur serait confronté à un contrôle de vitesse instable et, dans le pire des cas, à une désynchronisation de l'entraînement du moteur avec le contrôle, entraînant un événement de surintensité.
  • Le réglage approprié des seuils BEMF est crucial pour de bonnes performances de l'algorithme. Les seuils dépendent également du volume du bustage valeur et le réseau de détection. Il est recommandé de se référer à la section 2.1 pour vérifier comment aligner le voltage niveaux à celui nominal défini dans l'établi MC.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (16)
Fonctionnement en boucle fermée
Si le moteur termine la phase d'accélération, le passage à zéro BEMF est détecté. Le rotor est synchronisé avec la séquence de 6 étapes et un fonctionnement en boucle fermée est obtenu. Cependant, une optimisation supplémentaire des paramètres peut être effectuée pour améliorer les performances.
Par exemple, comme décrit dans la section 3.1.3 précédente (« Mauvais seuils BEMF »), la boucle de vitesse, même si elle fonctionne, peut sembler instable et les seuils BEMF peuvent nécessiter quelques affinements.
De plus, les aspects suivants doivent être pris en compte si un moteur doit fonctionner à grande vitesse ou être entraîné avec un cycle de service PWM élevé :
Fréquence PWM
  • Gains PI de la boucle de vitesse
  • Phase de suppression de démagnétisation
  • Délai entre le passage à zéro et la commutation par étapes
  • Basculer entre la détection du temps d'arrêt PWM et du temps d'activation
Fréquence PWM
L'algorithme en 6 étapes sans capteur effectue une acquisition du BEMF à chaque cycle PWM. Pour détecter correctement l’événement de passage à zéro, un nombre suffisant d’acquisitions est nécessaire. En règle générale, pour un fonctionnement correct, au moins 10 acquisitions sur 60 angles électriques garantissent une synchronisation du rotor bonne et stable.
Donc
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (17)
Gains PI de la boucle de vitesse
Les gains PI de la boucle de vitesse affectent la réactivité du moteur à toute commande d'accélération ou de décélération. Une description théorique du fonctionnement d'un régulateur PID dépasse le cadre de ce document. Cependant, l'utilisateur doit être conscient que les gains du régulateur de boucle de vitesse peuvent être modifiés pendant le fonctionnement via le Motor Pilot et ajustés à volonté.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (18)
Phase de suppression de démagnétisation
La démagnétisation de la phase flottante est une période après le changement de phase d'excitation pendant laquelle, en raison de la décharge de courant (Figure 14), la lecture de la force contre-électromotrice n'est pas fiable. L’algorithme doit donc ignorer le signal avant qu’il ne soit écoulé. Cette période est définie dans l'atelier MC en pourcentage.tage d'un pas (60 degrés électriques) et peut être modifié via le pilote moteur comme indiqué sur la figure 15. Plus la vitesse du moteur est élevée, plus la période de démagnétisation est rapide. La démagnétisation, par défaut, atteint une limite inférieure fixée à trois cycles PWM aux 2/3 de la vitesse nominale maximale. Si la phase d'inductance du moteur est faible et ne nécessite pas beaucoup de temps pour se démagnétiser, l'utilisateur peut réduire la période de masquage ou la vitesse à laquelle la période minimale est définie. Cependant, il n'est pas recommandé de réduire la période de masquage en dessous de 2 à 3 cycles PWM car la commande peut subir une instabilité soudaine lors de la commutation par étapes.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (19)
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (20)
Délai entre le passage à zéro BEMF et la commutation par étapes
Une fois que l'événement de passage à zéro BEMF a été détecté, l'algorithme attend normalement 30 degrés électriques jusqu'à une commutation de séquence d'étapes (Figure 16). De cette manière, le passage à zéro est positionné à mi-étape pour viser l’efficacité maximale.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (21)
Puisque la précision de la détection du passage à zéro dépend du nombre d’acquisitions, donc de la fréquence PWM (voir section 3.2.1), la précision de sa détection peut devenir pertinente à grande vitesse. Il génère alors une asymétrie évidente des formes d'onde et une distorsion du courant (voir Figure 17). Ceci peut être compensé en réduisant le délai entre la détection du passage à zéro et la commutation par étapes. Le délai de passage à zéro peut être modifié par l'utilisateur via le Motor Pilot, comme indiqué dans la Figure 18.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (22)
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (23)
Basculer entre la détection du temps d'arrêt PWM et du temps d'activation
En augmentant la vitesse ou le courant de charge (c'est-à-dire le couple de sortie du moteur), le rapport cyclique du pilotage PWM augmente. Ainsi, le temps pour sampLe fonctionnement du BEMF pendant le temps d'arrêt est réduit. Pour atteindre 100 % du cycle de service, la conversion ADC est déclenchée pendant le temps d'activation du PWM, passant ainsi de la détection BEMF pendant le temps d'arrêt du PWM au temps d'activation du PWM.
Une mauvaise configuration des seuils BEMF pendant le temps de marche entraîne les mêmes problèmes décrits dans la Section 3.1.3 (« Mauvais seuils BEMF »).
Par défaut, les seuils de détection BEMF ON sont définis sur la moitié du volume du bus.tage (voir section 2.1). L'utilisateur doit considérer que les seuils réels dépendent du volume du bus.tagLe réseau de valeurs et de détection. Suivez les indications de la section 2.1 et assurez-vous d'aligner le voltagLe niveau est égal à celui nominal défini dans l'établi MC.
Les valeurs des seuils et du cycle de service PWM auxquels l'algorithme bascule entre la détection OFF et ON sont configurables au moment de l'exécution via Motor Pilot (Figure 19) et disponibles dans Vol.tagMode de conduite e uniquement.
STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (24)

Dépannage

De quoi dois-je faire attention pour faire tourner correctement un moteur avec un algorithme en 6 étapes sans capteur ?Faire tourner un moteur avec un algorithme en 6 étapes sans capteur implique d'être capable de détecter correctement le signal BEMF, d'accélérer le moteur et synchroniser le rotor avec l'algorithme de contrôle. La mesure appropriée des signaux BEMF réside dans la conception efficace du réseau de détection BEMF (voir section 2.1). Le volume cibletage (voltage mode de conduite) ou le courant (mode de conduite actuel) pendant la séquence de démarrage dépend des paramètres du moteur. La définition (et éventuellement la durée) du voltagLa phase e/courant pendant les étapes d’alignement, d’accélération et de commutation est cruciale pour une procédure réussie (voir section 3).
En fin de compte, la synchronisation du rotor et la capacité d'augmenter la vitesse du moteur jusqu'à la vitesse nominale dépendent de l'optimisation de la fréquence PWM, des seuils BEMF, de la période de démagnétisation et du délai entre la détection du passage à zéro et la commutation par étapes, comme décrit dans Section 3.2.
Quelle est la bonne valeur du diviseur de résistance BEMF ?
L'utilisateur doit être conscient qu'une valeur erronée du diviseur de résistance BEMF peut supprimer toute chance de piloter correctement le moteur. Pour plus de détails sur la façon de concevoir le réseau de détection BEMF, reportez-vous à la section 2.1.
Comment configurer la procédure de démarrage ?
  • Pour optimiser le processus de démarrage, il est recommandé d'augmenter la durée de chaque étape de la phase de montée en régime à plusieurs secondes. Il est alors possible de comprendre si le moteur accélère correctement ou à quelle vitesse/étape de la procédure en boucle ouverte il échoue.
  • Il n'est pas conseillé d'accélérer un moteur à forte inertie avec une vitesse trop raide.amp.
  • Si le vol configurétagLa phase ou la phase de courant est trop faible, le moteur cale. S'il est trop élevé, la surintensité se déclenche. Augmenter progressivement le volumetage phase (voltage mode conduite) ou courant (mode courant conduite) pendant les étapes d'alignement et d'accélération permettent à l'utilisateur de comprendre la plage de fonctionnement du moteur. En effet, cela aide à trouver l’optimum.
  • Lorsqu'il s'agit de passer à un fonctionnement en boucle fermée, les gains du PI doivent d'abord être réduits pour exclure qu'une perte de contrôle ou une instabilité soit due à la boucle de vitesse. À ce stade, il est crucial de s'assurer que le réseau de détection BEMF est correctement conçu (voir section 2.1) et que le signal BEMF est correctement acquis. L'utilisateur peut accéder à la lecture du BEMF et la tracer dans le Motor Pilot (voir Figure 20) en sélectionnant les registres disponibles BEMF_U, BEMF_V et BEMF_U dans la section ASYNC plot de l'outil. Une fois que le moteur est à l'état Run, les gains du contrôleur de boucle de vitesse peuvent être optimisés. Pour plus de détails ou l’optimisation des paramètres, voir la Section 3 et la Section 3.2.
    STMicroelectronics-STM32-Motor-Control-SDK-6-Step-Firmware-Sensor-Less-Parameter- (1)
 Que puis-je faire si le moteur ne bouge pas au démarrage ?
  • Au démarrage, un vol croissant linéairementtage (voltage mode de conduite) ou du courant (mode de conduite actuel) est fourni aux phases du moteur. Le but est de l'aligner à une position connue et prédéfinie. Si le voltage n'est pas assez élevé (surtout avec des moteurs à forte constante d'inertie), le moteur ne bouge pas et la procédure échoue. Pour plus d'informations sur les solutions possibles, reportez-vous à la section 3.1.1.

Que puis-je faire si le moteur ne termine pas la phase d'accélération ?
Comme pour la phase d'alignement, le moteur est accéléré en boucle ouverte en appliquant un vol croissant linéairement.tage (voltage mode conduite) ou courant (mode courant conduite) aux phases du moteur. Les valeurs par défaut ne tiennent pas compte de la charge mécanique éventuellement appliquée, ou les constantes du moteur ne sont pas précises et/ou connues. Par conséquent, la procédure d'accélération peut échouer en raison d'un calage du moteur ou d'un événement de surintensité. Pour plus d'informations sur les solutions possibles, reportez-vous à la section 3.1.2.

Pourquoi le moteur ne passe-t-il pas en boucle de vitesse fermée ?
Si le moteur accélère correctement jusqu'à la vitesse cible mais s'arrête brusquement, il se peut qu'il y ait un problème dans la configuration du seuil BEMF ou dans les gains du contrôleur PI. Reportez-vous à la section 3.1.3 pour plus de détails.

Pourquoi la boucle de vitesse semble-t-elle instable ?
Une augmentation du bruit de la mesure avec la vitesse est attendue puisque plus la vitesse est élevée, plus le nombre de BEMF est faible.amples pour la détection du passage par zéro et, par conséquent, la précision de son calcul. Cependant, une instabilité excessive de la boucle de vitesse peut également être le symptôme d'un mauvais seuil BEMF ou de gains PI mal configurés, comme souligné dans la section 3.1.3.

  • Comment puis-je augmenter la vitesse maximale accessible ?

La vitesse maximale atteignable est généralement limitée par plusieurs facteurs : fréquence PWM, perte de synchronisation (due à une période de démagnétisation excessive ou à un délai incorrect entre la détection du passage à zéro et la commutation par étapes), des seuils BEMF inexacts. Pour plus de détails sur la façon d'optimiser ces éléments, reportez-vous à la section 3.2.1, à la section 3.2.3, à la section 3.2.4 et à la section 3.2.5.

Pourquoi le moteur s’arrête-t-il soudainement à une certaine vitesse ?
Cela est probablement dû à une configuration inexacte du seuil BEMF de détection PWM. Reportez-vous à la section 3.2.5 pour plus de détails.

Historique des révisions
Tableau 2. Historique des révisions du document
Date Version Changements
24er novembre 2023 1 Version initiale.

AVIS IMPORTANT – À LIRE ATTENTIVEMENT

STMicroelectronics NV et ses filiales (« ST ») se réservent le droit d'apporter des modifications, des corrections, des améliorations et des perfectionnements aux produits ST et/ou au présent document à tout moment et sans préavis. Les acheteurs doivent se procurer les dernières informations pertinentes sur les produits ST avant de passer commande. Les produits ST sont vendus conformément aux conditions générales de vente de ST en vigueur au moment de l'accusé de réception de la commande.
Les acheteurs sont seuls responsables du choix, de la sélection et de l'utilisation des produits ST et ST n'assume aucune responsabilité pour l'assistance à l'application ou la conception des produits des acheteurs.
Aucune licence, expresse ou implicite, sur aucun droit de propriété intellectuelle n'est accordée par ST ici.
La revente de produits ST avec des dispositions différentes des informations énoncées dans le présent document annulera toute garantie accordée par ST pour ce produit.
ST et le logo ST sont des marques déposées de ST. Pour plus d'informations sur les marques déposées de ST, consultez www.st.com/marques. Tous les autres noms de produits ou de services sont la propriété de leurs propriétaires respectifs.
Les informations contenues dans ce document remplacent et annulent les informations précédemment fournies dans toutes les versions antérieures de ce document.
© 2023 STMicroelectronics – Tous droits réservés

Documents / Ressources

STMicroelectronics STM32 SDK de contrôle de moteur Capteur de micrologiciel en 6 étapes sans paramètre [pdf] Manuel de l'utilisateur
STM32 SDK de commande de moteur 6 étapes de capteur de micrologiciel sans paramètre, SDK de commande de moteur 6 étapes de capteur de micrologiciel sans paramètre, capteur de micrologiciel d'étape sans paramètre, capteur de micrologiciel sans paramètre, capteur sans paramètre, moins de paramètre, paramètre

Références

Laisser un commentaire

Votre adresse email ne sera pas publiée. Les champs obligatoires sont marqués *