Contrôle de vitesse du moteur CC à l'aide de l'algorithme PID (STM32F4)
Maison » Blog » Contrôle de vitesse du moteur CC à l'aide de l'algorithme PID (STM32F4)

Contrôle de vitesse du moteur CC à l'aide de l'algorithme PID (STM32F4)

Vues: 0     Auteur: Éditeur de site Temps de publication: 2020-09-02 Origine: Site

Renseigner

Bouton de partage Facebook
Bouton de partage Twitter
bouton de partage de ligne
bouton de partage de WeChat
Bouton de partage LinkedIn
Bouton de partage Pinterest
Bouton de partage WhatsApp
bouton de partage kakao
Bouton de partage Snapchat
bouton de partage de télégramme
Bouton de partage Sharethis

Bonjour à tous, je suis Tahir Ul Haq d'un autre projet.
Cette fois, c'était le moment de faire MC qui a été utilisé d'ici 2017-11-407.
C'est la fin du programme à mi-parcours.
J'espère que vous l'aimez.
Cela nécessite beaucoup de concepts et de théories, alors laissez-le d'abord le regarder.
Avec l'émergence d'ordinateurs et le processus industrialisé, il y a eu des recherches dans l'histoire des êtres humains pour développer des méthodes pour redéfinir le processus, et plus important encore, pour utiliser des machines pour contrôler le processus de manière autonome.
L'objectif est de réduire la participation humaine à ces processus, réduisant ainsi les erreurs dans ces processus.
Par conséquent, le champ de \ 'Control System Engineering \' a vu le jour.
L'ingénierie du système de contrôle peut être définie comme l'utilisation de diverses méthodes pour contrôler le travail du processus ou la maintenance d'un environnement constant et préféré, qu'ils soient manuels ou automatiques.
Un exemple simple est de contrôler la température de la pièce.
Le contrôle manuel fait référence à la présence d'une personne qui vérifie les conditions actuelles sur le site (capteur)
, avec des attentes (traitement)
et prendre les mesures appropriées pour obtenir la valeur souhaitée (actionneur).
Le problème avec cette approche est qu'il n'est pas très fiable car on est sujet à une erreur ou à une négligence au travail.
De plus, un autre problème est que le taux du processus par l'actionneur commence n'est pas toujours uniforme, ce qui signifie que parfois il peut être plus rapide que la vitesse requise, et parfois elle peut être lente.
La solution à ce problème consiste à utiliser un micro-contrôleur pour contrôler le système.
Selon la spécification donnée, le micro-contrôleur est programmé pour contrôler le processus de connexion dans le circuit (
discuter plus tard)
la valeur ou l'état de, contrôlant ainsi le processus pour maintenir la valeur souhaitée.
L'avantage de ce processus est qu'il n'y a pas besoin d'intervention humaine dans ce processus.
De plus, la vitesse de ce processus est cohérente.
Avant de continuer, il est crucial de déterminer les différents termes à ce stade: Contrôle de rétroaction: Dans ce système, l'entrée à un certain moment dépend d'une ou plusieurs variables, y compris la sortie du système.
Rétroaction négative: Dans ce système, référence (entrée)
comme rétroaction, l'erreur est soustraite et la phase de l'entrée est de 180 degrés.
Feedback positif: Dans ce système,
des erreurs de référence (entrée) sont ajoutées lorsque les commentaires et l'entrée sont en phase.
Signal d'erreur: la différence entre la sortie souhaitée et la sortie réelle.
Capteur: un appareil utilisé pour détecter un certain nombre de dispositifs dans un circuit.
Il est généralement placé dans la sortie ou partout où nous voulons effectuer des mesures.
Processeur: partie du système de contrôle qui est traité en fonction des algorithmes de programmation.
Il prend une entrée et produit une sortie.
Actionneur: Dans le système de contrôle, l'actionneur est utilisé pour effectuer des événements basés sur le signal généré par le micro-contrôleur pour affecter la sortie.
Système en boucle fermée: un système avec une ou plusieurs boucles de rétroaction.
Système de boucle ouverte: il n'y a pas de système de boucle de rétroaction.
Temps de montée: Le temps nécessaire à la sortie passant de 10% de l'amplitude maximale du signal à 90%.
Temps de baisse: le temps requis pour que la sortie passe de 90% à 10%.
Déboursage de pointe: le dépassement de dépassement est la quantité de sortie dépassant sa valeur en régime permanent (
normal pendant la réponse transitoire du système).
Temps stable: le temps requis pour que la sortie atteigne un état stable.
Erreur à l'état d'équilibre: la différence entre la sortie réelle et la sortie attendue une fois que le système atteint l'état d'équilibre. L'image ci-dessus montre une version très simplifiée du système de contrôle.
Le micro-contrôleur est le cœur de tout système de contrôle.
Il s'agit d'un composant très important, il doit donc être soigneusement sélectionné en fonction des exigences du système.
Le micro-contrôleur reçoit les entrées de l'utilisateur.
Cette entrée définit les conditions requises pour le système.
Le micro-contrôleur reçoit également les entrées du capteur.
Le capteur est connecté à la sortie et ses informations sont renvoyées à l'entrée.
Cette entrée peut également être appelée rétroaction négative.
La rétroaction négative a été expliquée plus tôt.
Sur la base de sa programmation, le microprocesseur effectue divers calculs et sorties à l'actionneur.
L'usine de contrôle de l'actionneur basé sur la sortie tente de maintenir ces conditions.
Un exemple peut être le conducteur du moteur qui entraîne le moteur, où le conducteur du moteur est le conducteur et le moteur est l'usine.
Par conséquent, le moteur tourne à une vitesse donnée.
Le capteur connecté lit l'état de l'usine actuelle et la renvoie au micro contrôleur.
Le micro-contrôleur est à nouveau comparé et calculé, donc la boucle est répétée.
Le processus est répétitif et sans fin, et le micro-contrôleur peut maintenir les conditions souhaitées.
Voici deux principales façons de contrôler la vitesse du moteur à courant continu)
Contrôle de tension manuelle: dans les applications industrielles, le mécanisme de contrôle de la vitesse du moteur CC est critique.
Parfois, nous pouvons avoir besoin de vitesses supérieures ou inférieures à la normale.
Par conséquent, nous avons besoin d'une méthode de contrôle de vitesse efficace.
Le contrôle de la tension d'alimentation est l'une des méthodes de contrôle de vitesse les plus simples.
Nous pouvons changer la tension pour changer la vitesse. b)
Contrôler PWM à l'aide de PID: Un autre moyen plus efficace consiste à utiliser un micro-contrôleur.
Le moteur CC est connecté au micro-contrôleur via le conducteur du moteur.
Le pilote du moteur est un IC recevant une entrée PWM (
modulation de largeur d'impulsion)
du micro-contrôleur et sortie vers le moteur CC en fonction de l'entrée. Figure 1.
2: Chapitre 1 du signal PWM.
Introduction 3 Compte tenu du signal PWM, le fonctionnement de PWM peut être expliqué en premier.
Il se compose d'impulsions continues pendant une certaine période de temps.
La période est le temps passé par un point se déplaçant à une distance égale à une longueur d'onde.
Ces impulsions ne peuvent avoir que des valeurs binaires (élevées ou faibles).
Nous avons également deux autres quantités, la largeur d'impulsion et le cycle de service.
La largeur d'impulsion est le moment où la sortie PWM est élevée.
Le cycle de service est le pourcentage de la largeur d'impulsion à la période.
Pour le reste de la période, la sortie est faible.
Le cycle de service contrôle directement la vitesse du moteur.
Si le moteur CC fournit une tension positive dans un certain délai, elle se déplacera à une certaine vitesse.
Si une tension positive est fournie pendant une période plus longue, la vitesse sera plus élevée.
Par conséquent, le cycle de service de PWM peut être modifié en modifiant la largeur d'impulsion.
En modifiant le cycle de service du moteur CC, la vitesse du moteur peut être modifiée.
Contrôle de vitesse pour les problèmes de moteur CC: Le problème avec la première méthode de contrôle de vitesse est que la tension peut changer avec le temps.
Ces changements signifient une vitesse inégale.
Par conséquent, la première méthode est indésirable.
Solution: Nous utilisons la deuxième méthode pour contrôler la vitesse.
Nous utilisons l'algorithme PID pour compléter la deuxième méthode.
Le PID représente le dérivé intégral proportionnel.
Dans l'algorithme PID, la vitesse de courant du moteur est mesurée et comparée à la vitesse souhaitée.
Cette erreur est utilisée pour des calculs complexes pour modifier le cycle de service du moteur en fonction du temps.
Il y a ce processus dans chaque cycle.
Si la vitesse dépasse la vitesse souhaitée, le cycle de service est réduit et le cycle de service augmente si la vitesse est inférieure à la vitesse souhaitée.
Ce réglage n'est pas effectué tant que la meilleure vitesse n'est pas atteinte.
Vérifiez et contrôlez constamment cette vitesse.
Voici les composants système utilisés dans ce projet et une brève introduction aux détails de chaque composant.
STM 32F407: micro-contrôleur conçu par micro-section ST.
Il fonctionne sur le cortex du bras. M Architecture.
Il mène sa famille avec une fréquence d'horloge élevée de 168 MHz.
Conducteur de moteur L298N: Ce CI est utilisé pour exécuter le moteur.
Il a deux entrées externes.
Un du micro-contrôleur.
Le micro-contrôleur fournit un signal PWM pour lui.
La vitesse du moteur peut être ajustée en ajustant la largeur d'impulsion.
Sa deuxième entrée est la source de tension nécessaire pour conduire le moteur.
Moteur CC: le moteur CC fonctionne sur l'alimentation CC.
Dans cette expérience, le moteur CC est utilisé à l'aide d'un couplage photoélectrique connecté au conducteur du moteur.
Capteur infrarouge: le capteur infrarouge est en fait un émetteur-récepteur infrarouge.
Il envoie et reçoit des ondes infrarouges qui peuvent être utilisées pour effectuer diverses tâches.
Codeur IR Coupleur optique 4N35: Le coupleur optique est un dispositif utilisé pour isoler la partie basse tension du circuit et la partie haute tension.
Comme son nom l'indique, il fonctionne sur la base de la lumière.
Lorsque la pièce basse tension obtient le signal, le courant circule dans la partie haute tension.
Le système est un système de contrôle de vitesse.
Comme mentionné précédemment, le système est implémenté à l'aide d'un PID d'intégrale et de dérivé proportionnels.
Le système de contrôle de vitesse a les composants ci-dessus.
La première partie est le capteur de vitesse.
Le capteur de vitesse est un émetteur infrarouge et un circuit récepteur.
Lorsque le solide passe à travers la fente en forme de U, le capteur entre dans un état bas.
Normalement, il est à l'état élevé.
La sortie du capteur est connectée à un filtre passe-bas pour éliminer l'atténuation causée par le transitoire généré lorsque l'état du capteur change.
Le filtre passe-bas se compose de résistances et de condensateurs.
Les valeurs ont été sélectionnées au besoin.
Le condensateur utilisé est 1100NF et la résistance utilisée est d'environ 25 ohms.
Le filtre passe-bas élimine les conditions transitoires inutiles qui peuvent entraîner des lectures supplémentaires et des valeurs de déchets.
Le filtre passe-bas est ensuite sorti via le condensateur à la broche numérique d'entrée du micro-contrôleur STM.
L'autre partie est le moteur contrôlé par PWM fourni par le micro-contrôleur STM.
Ce paramètre a été fourni avec l'isolement électrique en utilisant le coupleur optique IC.
Le coupleur optique comprend une LED qui émet une lumière dans le package IC, et lorsqu'une impulsion élevée est donnée à la borne d'entrée, il court-circuité la borne de sortie.
La borne d'entrée donne PWM à travers une résistance qui limite le courant de la LED connecté au coupleur optique.
Une résistance déroulante est connectée à la sortie de sorte que lorsque la borne est court-circuitée, la tension est générée à la résistance déroulante et la broche connectée à la borne de la résistance reçoit un état élevé.
La sortie du coupleur photoélectrique est connectée à l'IN1 du moteur IC qui maintient la hauteur de la broche d'activation.
Lorsque le cycle de service PWM change à l'entrée du coupleur optique, la broche du conducteur du moteur change le moteur et contrôle la vitesse du moteur.
Après la PWM fournie au moteur, le conducteur du moteur fournit généralement une tension de 12 volts.
Le conducteur du moteur permet ensuite au moteur de fonctionner.
Soit introduire l'algorithme que nous avons utilisé dans la mise en œuvre de ce projet de régulation de la vitesse du moteur.
Le PWM du moteur est fourni par une seule minuterie.
La configuration de la minuterie est effectuée et définie pour fournir PWM.
Lorsque le moteur démarre, il tourne la fente fixée à l'arbre du moteur.
La fente passe par la cavité du capteur et produit une impulsion faible.
Aux faibles impulsions, le code commence et attend que la fente se déplace.
Une fois que la fente disparaît, le capteur fournit un état élevé et la minuterie commence à compter.
La minuterie nous donne le temps entre les deux fentes.
Maintenant, lorsqu'une autre impulsion basse apparaît, l'instruction IF s'exécute à nouveau, en attendant le bord montant suivant et en arrêtant le comptoir.
Après avoir calculé la vitesse, calculez la différence entre la vitesse et la valeur de référence réelle et donnez le PID.
PID calcule la valeur du cycle de service qui atteint la valeur de référence à un moment donné.
Cette valeur est fournie à CCR (
registre de comparaison)
en fonction de l'erreur, la vitesse de la minuterie est réduite ou augmentée.
Le code de TrueStudio atollic a été implémenté.
STM Studio peut avoir besoin d'être installé pour le débogage.
Importez le projet dans STM Studio et importez les variables que vous souhaitez afficher.
Le léger changement est sur le 2017-11-4xx.
Modifiez la fréquence d'horloge précisément en un fichier H à 168 MHz.
L'extrait de code a été fourni ci-dessus.
La conclusion est que la vitesse du moteur est contrôlée à l'aide de PID.
Cependant, la courbe n'est pas exactement une ligne lisse.
Il y a de nombreuses raisons à cela: bien que le capteur connecté au filtre passe-bas fournit toujours certains défauts, ceux-ci sont dus à certaines raisons inévitables de résistances non linéaires et de dispositifs électroniques analogiques, le moteur ne peut pas tourner en douceur à petite tension ou PWM.
Il fournit des connards qui peuvent amener le système à saisir une mauvaise valeur.
En raison de la gigue, le capteur peut manquer une fente qui fournit une valeur plus élevée, et la principale raison d'une autre erreur peut être la fréquence d'horloge centrale du STM.
L'horloge centrale de STM est de 168 MHz.
Bien que ce problème ait été résolu dans ce projet, il existe un concept holistique de ce modèle qui ne fournit pas une fréquence aussi élevée.
La vitesse de boucle ouverte fournit une ligne très fluide avec seulement quelques valeurs inattendues.
Le PID fonctionne également et offre un temps de stabilité du moteur très faible.
Le PID du moteur a été testé à différentes tensions qui ont maintenu la vitesse de référence constante.
Le changement de tension ne modifie pas la vitesse du moteur, indiquant que le PID fonctionne.
Voici quelques segments de la sortie finale du PID. a)
Boucle fermée @ 110 RPMB)
Boucle fermée à 120 RPMTHIS n'a pas pu être terminée sans l'aide des membres de mon groupe.
Je tiens à les remercier.
Merci d'avoir regardé ce projet.
J'espère vous aider.
Veuillez attendre plus.
Gardez la bénédiction avant cela :)

Hoprio Group Un fabricant professionnel de contrôleur et de moteurs, a été créé en 2000. Siège du groupe à Changzhou City, province du Jiangsu.

Liens rapides

Contactez-nous

WhatsApp: + 86 18921090987 
Tél: +86 - 18921090987 
Ajouter: No.19 Mahang South Road, district de Wujin High-Tech, City Changzhou, Province du Jiangsu, Chine 213167
Laisser un message
CONTACTEZ-NOUS
Copyright © 2024 Changzhou Hoprio E-Commerce Co., Ltd. Tous droits réservés. Sitemap | politique de confidentialité