<figure><img src="image_1.png" /></figure>

HAL
open science

# Réglage rapide de la commande d'un moteur électrique à courant continu mettant en mouvement une charge inertielle

Philippe Lemoine

► To cite this version:

Philippe Lemoine. Réglage rapide de la commande d'un moteur électrique à courant continu mettant en mouvement une charge inertielle. LS2N. 2023. hal-04085350

HAL Id: hal-04085350

https://hal.science/hal-04085350

Submitted on 28 Apr 2023

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

Public Domain
# RÉGLAGE RAPIDE DE LA COMMANDE D'UN MOTEUR ÉLECTRIQUE À COURANT CONTINU METTANT EN MOUVEMENT UNE CHARGE INERTIELLE

## 1 Moteur électrique à courant continu et à champ magnétique constant

### 1.1 Équation électrique

Représentation électrique du moteur:

<figure><img src="image_2.png" /></figure>

Mise en équation:

$$U = E' + L \frac{di}{dt} + R i, \quad E' = Ke \frac{d\theta}{dt}$$

On obtient:

$$U = Ke \frac{d\theta}{dt} + L \frac{di}{dt} + R i$$

**Paramètres:** $Ke$ correspond au coefficient de force contre-électromotrice, $L$ et $R$ correspondent respectivement à l'inductance et à la résistance de l'induit.

**Variables:** $U$ est la tension d'entrée appliquée aux bornes du moteur, $d\theta/dt$ ou $\dot{\theta}$ est la vitesse angulaire du rotor, et $i$ est le courant d'induit.

Si on s'intéresse au circuit électrique R-L de l'induit on peut écrire:

$$V = L \frac{di}{dt} + R i, \text{ ce qui donne par la transformée de Laplace, en supposant les conditions initiales nulles:}$$

$$V(s) = (Ls + R) i(s), \text{ soit: } \frac{i(s)}{V(s)} = \frac{\frac{1}{R}}{1 + \frac{L}{R}s}$$

Cette relation fait apparaître la constante de temps électrique $\frac{L}{R}$ du circuit R-L de l'induit.

Cette constante de temps est en général beaucoup plus faible que la constante de temps électromécanique prenant en compte le modèle complet du moteur. Ce constat permet de négliger l'effet de la constante de temps électrique lorsqu'on ne s'intéresse, et c'est le cas ici, qu'à l'aspect électromécanique du moteur. Dans ce cas, la bande passante du système électromécanique étant beaucoup plus faible que la bande passante du circuit électrique R-L seul, on considère que ce dernier est perçu, du point de vue électromécanique, comme un gain pur tel que:

$$V = R i$$

En négligeant le terme $L \frac{di}{dt}$ on peut donc écrire:
$$U = Ke \dot{\theta} + Ri \qquad (1)$$

Cette équation (1) représente le modèle électrique simplifié du moteur pour lequel l'influence de l'inductance de l'induit n'est pas prise en compte.

## 1.2 Équation mécanique

$$\Gamma_M = J\ddot{\theta} + F_v\dot{\theta} + F_s\text{sign}(\dot{\theta}) \qquad (2)$$

où $\Gamma_M$ correspond au couple moteur, $J$ à l'inertie totale (rotor + charge), $F_v$ et $F_s$ au frottement visqueux et au frottement sec. $\dot{\theta}$ et $\ddot{\theta}$ correspondent respectivement à la vitesse et à l'accélération angulaires du rotor.

Cette équation (2) représente le modèle dynamique du moteur muni de sa charge.

## 1.3 Équation électromécanique

$$\Gamma_M = Kt i \qquad (3)$$

où $Kt$ représente le coefficient de couple électromagnétique du moteur.

$$(2) \text{ et } (3) \Rightarrow i = \frac{1}{Kt} \left( J\ddot{\theta} + F_v\dot{\theta} + F_s\text{sign}(\dot{\theta}) \right) \qquad (4)$$

$$(1) \text{ et } (4) \Rightarrow U = \frac{RJ}{Kt}\ddot{\theta} + \frac{(KtKe + RF_v)}{Kt}\dot{\theta} + \frac{RF_s\text{sign}(\dot{\theta})}{Kt} \qquad (5)$$

Cette équation (5) représente le modèle électromécanique simplifié du moteur muni de sa charge, pour lequel l'influence de l'inductance de l'induit n'est pas prise en compte.

En négligeant le terme $\frac{RF_s\text{sign}(\dot{\theta})}{Kt}$, lié au frottement sec, on obtient par la transformée de Laplace, en supposant les conditions initiales nulles:

$$\frac{\theta(s)}{U(s)} = \frac{\frac{Kt}{RJ}}{s^2 + \frac{(KtKe + RF_v)}{RJ}s}$$

Finalement la relation $RF_v \ll KtKe$ nous permet d'écrire:

$$\frac{\theta(s)}{U(s)} = \frac{\frac{Kt}{RJ}}{s^2 + \frac{KtKe}{RJ}s} = \frac{\frac{1}{Ke}}{s\left(1 + \frac{RJ}{KtKe}s\right)}$$
Par dérivation en considérant les conditions initiales nulles on obtient:

$$ \frac{\dot{\theta}(s)}{U(s)} = \frac{\frac{1}{Ke}}{1 + \frac{RJ}{KtKe}s} \qquad (6) $$

Le modèle électromécanique simplifié du moteur et de sa charge définissant la vitesse de rotation en fonction de la tension d'alimentation aux bornes du moteur est un système du 1er ordre dont $\frac{RJ}{KtKe}$ représente la constante de temps électromécanique. L'influence de l'inductance de l'induit n'est pas prise en compte et les frottements secs et visqueux ont été négligés, ce qui suppose qu'en régime établi le couple moteur nécessaire pour maintenir la rotation est négligeable ($U=Ke\dot{\theta} \le \Rightarrow U=E' \Rightarrow i=0$).

Si la chaîne d'actionnement possède un réducteur de vitesse, ces calculs peuvent être effectués en sortie de réducteur car la dynamique est bien sûr la même côté moteur ou côté charge. La position, la vitesse, l'accélération et le couple sont alors directement liés à la charge que l'on veut piloter. L'inertie et les frottements liés au rotor sont alors ramenés en sortie de réducteur et ajoutés à l'inertie et aux frottements liés à la charge. Le circuit électrique n'étant pas modifié les paramètres L et R restent inchangés. Par contre les autres paramètres du moteur doivent être convertis comme suit : les paramètres $Kt$, $Ke$ et $F_s$ sont multipliés par le rapport de réduction, alors que l'inertie du rotor et le paramètre $F_v$ sont multipliés par le rapport de réduction au carré. Le couple obtenu en sortie de réducteur est donc le couple moteur multiplié par le rapport de réduction.

Il convient également de prendre en compte le rendement du réducteur de vitesse. Il intervient dans le transfert du couple moteur vers la charge de même que dans le calcul de l'inertie du rotor ramenée à la sortie du réducteur. Ainsi les paramètres $Kt$ et $F_s$ sont multipliés par le rapport de réduction et le rendement, alors que l'inertie du rotor et le paramètre $F_v$ sont multipliés par le rapport de réduction au carré et le rendement.

Dans la suite, la tension calculée sera celle appliquée directement au moteur, alors que le couple calculé correspondra soit au couple moteur, soit au couple en sortie du réducteur selon le cas.

## 2 Commande dynamique

En robotique, une commande est appelée "commande dynamique" lorsqu'elle est élaborée à partir du modèle dynamique du système à piloter.

En fonction du module de puissance utilisé pour piloter le moteur, on pourra développer différents types de commande dynamique:

- si le moteur est piloté en tension, on pourra développer une commande utilisant le modèle électromécanique (5) faisant appel au modèle dynamique de façon implicite,

- et si le moteur est piloté en couple, on pourra mettre en œuvre une commande utilisant directement le modèle dynamique (2) du moteur. Ce type de commande est appelé "commande en couple calculé" (computed torque control).

En général, les variateurs de puissance proposés dans le commerce permettent de commander le courant du moteur. Dans ce cas, pour faire une commande en couple, il suffit de convertir le couple calculé en une consigne de courant en le divisant par le coefficient de couple électromagnétique [cf. équation (3)]. Ce dernier paramètre est souvent donné par le constructeur du moteur.

Dans tous les cas, le variateur de puissance, qu'il commande le moteur en tension ou en courant, devra présenter une bande passante telle qu'il puisse être assimilé à un gain pur dans la bande passante
du système électromécanique à piloter. Dans ces conditions l'approximation faite au paragraphe 1.1 pour établir la relation (1) reste valable.

On considère dans la suite que cette hypothèse est vérifiée.

## 2.1 Commande en tension

On reprend le modèle électromécanique du moteur décrit par l'équation (5), et on applique la commande en boucle fermée suivante:

$$U = \frac{RJ}{Kt} W(t) + \frac{(KtKe + RF_v)}{Kt} \dot{\theta} + \frac{RF_s \text{sign}(\dot{\theta})}{Kt}$$

où $U$ correspond à la tension appliquée au moteur et $W(t)$ est défini par:

$$W(t) = \ddot{\theta}_d + K_p (\theta_d - \theta) + K_v (\dot{\theta}_d - \dot{\theta}) + K_I \int_0^t (\theta_d - \theta) dv \quad (\text{avec correcteur PID})$$

où $\ddot{\theta}_d$, $\dot{\theta}_d$, $\theta_d$ représentent respectivement l'accélération angulaire désirée, la vitesse angulaire désirée et la position angulaire désirée, et $\dot{\theta}$, $\theta$ représentent respectivement la vitesse angulaire mesurée et la position angulaire mesurée.

En appliquant cette commande en boucle fermée sur le système décrit par l'équation (5) on obtient après simplification:

$$\ddot{\theta} = \ddot{\theta}_d + K_p (\theta_d - \theta) + K_v (\dot{\theta}_d - \dot{\theta}) + K_I \int_0^t (\theta_d - \theta) dv$$

(soit $\ddot{\theta} = \ddot{\theta}_d$ si l'écart en position et son intégrale sont nuls ainsi que l'écart en vitesse)

<figure><img src="image_3.png" /><figcaption>Figure 1 : commande dynamique en tension</figcaption></figure>
## 2.2 Commande en couple

On reprend le modèle dynamique du moteur décrit par l'équation (2), et on applique la commande en boucle fermée suivante:

$$ \Gamma_M = JW(t) + F_v\dot{\theta} + F_s\text{sign}(\dot{\theta}) $$

où $\Gamma_M$ correspond au couple moteur et $W(t)$ est défini par:

$$ W(t) = \ddot{\theta}_d + K_P(\theta_d - \theta) + K_V(\dot{\theta}_d - \dot{\theta}) + K_I \int_0^t (\theta_d - \theta) dv \quad (\text{avec correcteur PID}) $$

où $\ddot{\theta}_d$, $\dot{\theta}_d$, $\theta_d$ représentent respectivement l'accélération angulaire désirée, la vitesse angulaire désirée et la position angulaire désirée, et $\dot{\theta}$, $\theta$ représentent respectivement la vitesse angulaire mesurée et la position angulaire mesurée.

En appliquant cette commande en boucle fermée sur le système décrit par l'équation (2) on obtient après simplification:

$$ \ddot{\theta} = \ddot{\theta}_d + K_P(\theta_d - \theta) + K_V(\dot{\theta}_d - \dot{\theta}) + K_I \int_0^t (\theta_d - \theta) dv $$

(soit $\ddot{\theta} = \ddot{\theta}_d$ si l'écart en position et son intégrale sont nuls ainsi que l'écart en vitesse)

<figure><img src="image_4.png" /><figcaption>Figure 2 : commande dynamique en couple</figcaption></figure>

## 2.3 Propriétés de la commande dynamique

Comme le montrent les résultats ci-dessus, la commande en boucle fermée nous ramène dans les deux cas à l'équation différentielle suivante:

$$ \ddot{\theta} = \ddot{\theta}_d + K_P(\theta_d - \theta) + K_V(\dot{\theta}_d - \dot{\theta}) + K_I \int_0^t (\theta_d - \theta) dv \quad (7) $$
Ce qui correspond à l'équation d'erreur de suivi :

$$ \ddot{e} + K_p e + K_v \dot{e} + K_I \int_0^t e \, dv = 0 \qquad (8) $$

dont une solution évidente est $e(t)=0$. Ce qui signifie que si une trajectoire débute au temps t=0 avec une erreur nulle, cette erreur nulle sera conservée tout au long de cette trajectoire.

En appliquant la transformée de Laplace à l'équation (7), et en supposant les conditions initiales nulles, on obtient la fonction de transfert suivante :

$$ \frac{\theta(s)}{\theta_d(s)} = \frac{s^3 + K_v s^2 + K_p s + K_I}{s^3 + K_v s^2 + K_p s + K_I} \qquad (9) $$

Cette fonction de transfert se réduit à 1, ce qui vient corroborer la propriété énoncée ci-dessus.

**Remarque:** bien entendu cette propriété n'est que théorique, puisque le modèle est approché, il n'est en général pas parfaitement identifié, et c'est sans compter sur les diverses perturbations qui ne sont pas modélisées.

## 2.4 Réglage des gains du correcteur PID ($K_p, K_v, K_I$)

En appliquant la transformée de Laplace à l'équation différentielle d'erreur de suivi (8), et en supposant les conditions initiales nulles, on obtient :

$$ e(s)(s^3 + K_p s + K_v s^2 + K_I) = 0 \qquad (10) $$

Ce qui peut s'écrire sous la forme suivante :

$$ e(s) \left[ (s + \omega_n)(s^2 + 2\zeta\omega_n s + \omega_n^2) \right] = 0 \qquad (11) $$

En posant :

$$ K_v = (2\zeta + 1)\omega_n $$

$$ K_p = (2\zeta + 1)\omega_n^2 $$

$$ K_I = \omega_n^3 $$

Cette équation différentielle nous donne le comportement dynamique de l'erreur de suivi de la boucle fermée en réponse à une perturbation. Celui-ci correspond à un système du premier ordre suivi d'un système du second ordre. Les paramètres $\zeta$ et $\omega_n$ étant des réels strictement positifs, le système est toujours stable.

Pour obtenir la réponse la plus rapide sans oscillation on prend $\zeta=1$ et on se ramène ainsi à un système du 3ème ordre à pôle réel triple.
Dans ce cas les coefficients du correcteur PID deviennent:

$$K_V = 3\omega_n$$

$$K_P = 3\omega_n^2$$

$$K_I = \omega_n^3$$

C'est donc le choix de $\omega_n$ qui va déterminer la valeur des coefficients $K_P$, $K_V$ et $K_I$. Une méthode simple et efficace consiste à prendre dans un premier temps pour $\omega_n$ la valeur permettant d'obtenir avec le système commandé en boucle fermée la même pulsation de coupure que celle du système électromécanique à piloter dont la fonction de transfert $\frac{\dot{\theta}(s)}{\dot{u}(s)}$ est donnée dans l'équation (6). Pour mémoire nous avions obtenu une constante de temps électromécanique ayant pour expression $\frac{RJ}{KtKe}$, ce qui donne finalement $\omega_c = \frac{KtKe}{RJ}$.

Cette pulsation de coupure, correspondant à la bande passante intrinsèque du système électromécanique à piloter, va donc servir de référence pour le réglage de la dynamique de la commande en boucle fermée. Ce réglage pourra être ensuite ajusté pour obtenir la réponse souhaitée.

Pour information, la pulsation de coupure à -3dB du système du 3ème ordre à pôle réel triple de la forme $\frac{1}{(s+\omega_n)^3}$ est égale à $\approx 0.5\omega_n$ (à $\omega = 0.5\omega_n$ l'affaiblissement du module du gain par rapport au gain statique est de $\approx -3\text{dB}$ et le déphasage de la sortie par rapport à l'entrée est de $\approx -80^{\circ}$), alors que la pulsation de coupure à -45° du même système $\frac{1}{(s+\omega_n)^3}$ est égale à $\approx 0.25\omega_n$ (à $\omega = 0.25\omega_n$ le déphasage de la sortie par rapport à l'entrée est de $\approx -45^{\circ}$ et l'affaiblissement du module du gain par rapport au gain statique est de $\approx -0.8\text{dB}$).

Bien entendu à la pulsation $\omega = \omega_n$ on obtient un affaiblissement du module du gain de -9dB (3x-3dB) par rapport au gain statique et un déphasage de -135° (3x-45°) de la sortie par rapport à l'entrée.

Pour le réglage initial on pourra prendre $\omega_n = 2\omega_c$ pour obtenir avec le système commandé en boucle fermée une pulsation de coupure à -3dB proche de la pulsation $\omega_c$.

Cette réponse correspond dans notre cas à celle de la sortie $e(s)$ de notre système libre décrit par les équations (10) et (11). On peut donc dire que toute perturbation impulsionnelle (c'est-à-dire $e(t)$ non nul à un instant $t$) va être rejetée en suivant cette réponse (le système étant libre et stable, sa valeur finale tend toujours vers 0).

## 2.5 Réglage des gains du correcteur PD ($K_P$, $K_V$)

Dans le cas où le correcteur linéaire est réduit à une action proportionnelle et dérivée (pas de terme intégral), la transformée de Laplace de l'équation différentielle d'erreur de suivi (10) devient:

$$e(s)(s^2 + K_P + K_V s) = 0 \qquad (12)$$
Ce qui peut s'écrire sous la forme suivante:

$$e(s)(s^2 + 2\zeta\omega_n s + \omega_n^2) = 0 \qquad (13)$$

En posant:

$$K_v = 2\zeta\omega_n$$

$$K_p = \omega_n^2$$

Cette équation différentielle nous donne le comportement dynamique de l'erreur de suivi de la boucle fermée en réponse à une perturbation. Celui-ci correspond à un système du second ordre. Les paramètres $\zeta$ et $\omega_n$ étant des réels strictement positifs, le système est toujours stable.

Pour obtenir la réponse la plus rapide sans oscillation on prend $\zeta=1$ et on se ramène ainsi à un système du second ordre à pôle réel double.

Dans ce cas les coefficients du correcteur PD deviennent:

$$K_v = 2\omega_n$$

$$K_p = \omega_n^2$$

De la même manière que précédemment le choix de $\omega_n$ va déterminer la valeur des coefficients $K_p$ et $K_v$, et la pulsation de coupure $\omega_c = \frac{K_t K_e}{R_j}$ du système électromécanique à piloter servira de référence pour le réglage de la dynamique de la commande en boucle fermée. Ce réglage pourra être ensuite ajusté pour obtenir la réponse souhaitée.

Pour information, la pulsation de coupure à -3dB du système du second ordre à pôle réel double de la forme $\frac{1}{(s+\omega_n)^2}$ est égale à $\approx 0.64\omega_n$ (à $\omega = 0.64\omega_n$ l'affaiblissement du module du gain par rapport au gain statique est de $\approx -3$dB et le déphasage de la sortie par rapport à l'entrée est de $\approx -65^\circ$), alors que la pulsation de coupure à -45° du même système $\frac{1}{(s+\omega_n)^2}$ est égale à $\approx 0.4\omega_n$ (à $\omega = 0.4\omega_n$ le déphasage de la sortie par rapport à l'entrée est de $\approx -45^\circ$ et l'affaiblissement du module du gain par rapport au gain statique est de $\approx -1.3$dB).

Bien entendu à la pulsation $\omega = \omega_n$ on obtient un affaiblissement du module du gain de -6dB (2x-3dB) par rapport au gain statique et un déphasage de -90° (2x-45°) de la sortie par rapport à l'entrée.

Pour le réglage initial on pourra prendre $\omega_n = 1.6\omega_c$ pour obtenir avec le système commandé en boucle fermée une pulsation de coupure à -3dB proche de la pulsation $\omega_c$.

Cette réponse correspond dans notre cas à celle de la sortie $e(s)$ de notre système libre décrit par les équations (12) et (13). On peut donc dire que toute perturbation impulsionnelle (c'est-à-dire $e(t)$ non nul à un instant $t$) va être rejetée en suivant cette réponse (le système étant libre et stable, sa valeur finale tend toujours vers 0).
## 2.6 Remarques concernant la pulsation de coupure de référence

Même si en général la bande passante de la boucle de courant du variateur est largement supérieure à celle du système électromécanique à piloter, justifiant ainsi son assimilation à un gain pur pour la commande, il convient cependant de prendre quelques précautions quant à la façon de fixer la valeur de $\omega_n$. En effet l'évaluation de la bande passante intrinsèque du système électromécanique est effectuée sans considération des contraintes technologiques du système, notamment la valeur maximale du couple moteur disponible. Comme nous l'avons vu précédemment les valeurs de $\omega_n$ et $\omega_c$ sont liées; la valeur de $\omega_n$ permet donc de définir la bande passante de la commande du système bouclé en agissant sur les gains du correcteur. Or le couple moteur ne peut pas dépasser sa valeur de saturation; cette saturation sera d'autant plus facile à atteindre si les gains du correcteur sont élevés et si les accélérations de référence présentent des amplitudes et des fréquences élevées (créant ainsi des erreurs de suivi de trajectoire plus importantes). Si le couple entre en saturation, le contrôle du système est perdu. Cependant cette contrainte peut facilement être levée en limitant la valeur de $\omega_n$ ainsi que l'amplitude et la fréquence des accélérations des trajectoires de référence.

D'autre part avoir une grande bande passante du système bouclé risque d'amener les signaux de commande dans les fréquences de résonance du système mécanique qui entrera ainsi en vibration. Cette contrainte va également permettre de fixer une borne supérieure de la valeur de $\omega_c$, et par conséquent de $\omega_n$, car il faut impérativement éviter d'exciter le premier mode de vibration du système mécanique.

On peut voir que les réponses apportées aux contraintes évoquées plus haut ont pour effet de limiter les valeurs de $\omega_n$ et $\omega_c$. Une raison supplémentaire pour limiter la bande passante de la commande est l'obtention d'un système bouclé stable. En effet, les résultats théoriques sont obtenus en considérant que le modèle utilisé dans la commande correspond parfaitement au système réel, ce qui n'est pas le cas; la propriété énoncée au paragraphe 2.3 permettant de considérer le transfert de la commande en boucle fermée comme équivalent à 1 n'est donc pas vérifiée. De plus, les moteurs sont toujours commandés en tension, y compris dans les boucles de courant où ce dernier est asservi en modulant la tension appliquée aux bornes des enroulements du moteur. Dans ce contexte la constante de temps électromécanique intrinsèque du moteur muni de sa charge joue un rôle important même si elle n'apparaît pas explicitement dans les équations finales; c'est pourquoi elle est utilisée pour le réglage a priori de la dynamique de la commande en boucle fermée. À cela vient s'ajouter le fait qu'il ne soit pas tenu compte d'éventuels retards dans la branche directe et la branche de retour du transfert. Or ces retards sont présents dans tous les systèmes échantillonnés, notamment au niveau du temps de calcul de la commande et du temps de la conversion numérique/analogique pour l'envoi des consignes aux variateurs si ceux-ci ont une interface analogique, ou pire encore lors de la transmission des informations (retour des positions et vitesses, émission des consignes) si les variateurs font usage des réseaux de terrain comme c'est le cas sur les nouveaux systèmes du marché. Ces délais sont assimilés à des retards de phase et viennent réduire d'autant la marge de phase du système en boucle ouverte. La compensation de ce déphasage peut se faire en réduisant le gain de la boucle ouverte, c'est-à-dire les gains $K_p, K_v, K_I$, en réduisant la valeur de $\omega_n$. Concrètement on peut faire varier $\omega_n$ de sorte à se positionner en dessous de la limite de stabilité du système bouclé.

Enfin, d'un point de vue fréquentiel, en présence d'un système échantillonné nous devons respecter le principe de Shannon. Afin de minimiser les résidus de signaux au-delà de la fréquence de Shannon ($f_s/2$), la fréquence d'échantillonnage $f_s$ doit être nettement supérieure au double de la fréquence de coupure du système bouclé. L'expérience nous montre qu'un rapport d'une décade ($f_s = 10 f_c$) est un minimum et qu'un rapport de 2 à 2,5 décades ($f_s = 100$ à $316 f_c$) est un très bon compromis.

Il faut remarquer aussi que plus l'écart est grand entre la fréquence d'échantillonnage et la fréquence de coupure de la commande en boucle fermée, plus on se rapproche du cas continu du point de vue du traitement de la commande, ce qui est une bonne chose.
## 2.7 Remarques concernant les trajectoires de consigne

Comme il est déjà précisé dans le précédent paragraphe, afin de ne pas perdre le contrôle du système les trajectoires de consigne ($\theta_d, \dot{\theta}_d, \ddot{\theta}_d$) doivent pouvoir être suivies sans faire entrer le couple en saturation. Il conviendra donc de limiter l'amplitude et la fréquence des accélérations afin de garantir cette condition. Les positions, vitesses et accélérations doivent bien entendu être cohérentes.

## 3 Commande utilisant la boucle de vitesse intégrée au variateur de puissance

Tous les variateurs de puissance proposés dans le commerce intègrent un contrôleur de vitesse. Depuis quelques temps un utilitaire permettant d'optimiser le réglage de cette commande en vitesse est en général associé à ces variateurs. Cet utilitaire permet un réglage automatique des paramètres de la commande interne en stimulant expérimentalement l'actionneur muni de sa charge.

Lorsque cette procédure a été accomplie avec succès, on peut considérer que dans la limite de la bande passante de la boucle de vitesse celle-ci se comporte comme un gain pur. Bien entendu il ne s'agit que d'une approximation car plus on se rapproche de la fréquence de coupure de la boucle de vitesse et plus l'atténuation du gain et le retard de phase de la fonction de transfert deviennent importants; on s'éloigne donc alors de plus en plus du gain pur.

Cela étant dit, l'approximation de la boucle de vitesse à un gain pur égal à 1 (la vitesse réelle du moteur est égale à la consigne de vitesse) nous permet d'appliquer la commande suivante:

$$ \dot{\theta}_{cons} = W(t) $$

où $\dot{\theta}_{cons}$ correspond à la consigne de vitesse de rotation du moteur et $W(t)$ est défini par:

$$ W(t) = \dot{\theta}_d + K_p (\theta_d - \theta) + K_I \int_0^t (\theta_d - \theta) dv \quad (\text{avec correcteur PI}) $$

où $\dot{\theta}_d$, $\theta_d$ représentent respectivement la vitesse angulaire désirée et la position angulaire désirée, et $\theta$ représente la position angulaire mesurée.

En appliquant cette commande en boucle fermée sur le système utilisant la boucle de vitesse intégrée au variateur et en considérant cette boucle de vitesse comme un gain pur égal à 1, on obtient directement:

$$ \dot{\theta} = \dot{\theta}_d + K_p (\theta_d - \theta) + K_I \int_0^t (\theta_d - \theta) dv $$

(soit $\dot{\theta} = \dot{\theta}_d$ si l'écart en position et son intégrale sont nuls)
<figure><img src="image_5.png" /><figcaption>Figure 3 : commande utilisant la boucle de vitesse interne du variateur</figcaption></figure>

## 3.1 Propriétés de la commande

Comme le montre le résultat ci-dessus, cette commande en boucle fermée nous ramène à l'équation différentielle suivante:

$$ \dot{\theta} = \dot{\theta}_d + K_p (\theta_d - \theta) + K_I \int_0^t (\theta_d - \theta) dv \quad (14) $$

Ce qui correspond à l'équation d'erreur de suivi:

$$ \dot{e} + K_p e + K_I \int_0^t e dv = 0 \quad (15) $$

dont une solution évidente est $e(t)=0$. Ce qui signifie que si une trajectoire débute au temps t=0 avec une erreur nulle, cette erreur nulle sera conservée tout au long de cette trajectoire.

En appliquant la transformée de Laplace à l'équation (14), et en supposant les conditions initiales nulles, on obtient la fonction de transfert suivante:

$$ \frac{\theta(s)}{\theta_d(s)} = \frac{s^2 + K_p s + K_I}{s^2 + K_p s + K_I} \quad (16) $$

Cette fonction de transfert se réduit à 1, ce qui vient corroborer la propriété énoncée ci-dessus.

**Remarque:** bien entendu cette propriété n'est que théorique, puisque la fonction de transfert de la boucle de vitesse intégrée au variateur n'est pas un gain pur, et les perturbations éventuelles ne sont modélisées ni dans la boucle de vitesse interne ni dans notre commande externe au variateur.

## 3.2 Réglage des gains du correcteur PI ($K_p, K_I$)

En appliquant la transformée de Laplace à l'équation différentielle d'erreur de suivi (15), et en supposant les conditions initiales nulles, on obtient:

$$ e(s)(s^2 + K_p s + K_I) = 0 \quad (17) $$
Ce qui peut s'écrire sous la forme suivante:

$$e(s)(s^2 + 2\zeta\omega_n s + \omega_n^2) = 0 \qquad (18)$$

En posant:

$$K_p = 2\zeta\omega_n$$

$$K_I = \omega_n^2$$

Cette équation différentielle nous donne le comportement dynamique de l'erreur de suivi de la boucle fermée en réponse à une perturbation. Celui-ci correspond à un système du second ordre. Les paramètres $\zeta$ et $\omega_n$ étant des réels strictement positifs, le système est toujours stable.

Pour obtenir la réponse la plus rapide sans oscillation on prend $\zeta=1$ et on se ramène ainsi à un système du second ordre à pôle réel double.

Dans ce cas les coefficients du correcteur PI deviennent:

$$K_p = 2\omega_n$$

$$K_I = \omega_n^2$$

De la même manière que précédemment le choix de $\omega_n$ va déterminer la valeur des coefficients $K_p$ et $K_I$, et la pulsation de coupure $\omega_c = \frac{K_t K_e}{R J}$ du système électromécanique à piloter servira de référence pour le réglage de la dynamique de la commande en boucle fermée. Ce réglage pourra être ensuite ajusté pour obtenir la réponse souhaitée.

Pour information, la pulsation de coupure à -3dB du système du second ordre à pôle réel double de la forme $\frac{1}{(s+\omega_n)^2}$ est égale à $\approx 0.64\omega_n$ (à $\omega = 0.64\omega_n$ l'affaiblissement du module du gain par rapport au gain statique est de $\approx -3\text{dB}$ et le déphasage de la sortie par rapport à l'entrée est de $\approx -65^\circ$), alors que la pulsation de coupure à -45° du même système $\frac{1}{(s+\omega_n)^2}$ est égale à $\approx 0.4\omega_n$ (à $\omega = 0.4\omega_n$ le déphasage de la sortie par rapport à l'entrée est de $\approx -45^\circ$ et l'affaiblissement du module du gain par rapport au gain statique est de $\approx -1.3\text{dB}$).

Bien entendu à la pulsation $\omega = \omega_n$ on obtient un affaiblissement du module du gain de -6dB (2x-3dB) par rapport au gain statique et un déphasage de -90° (2x-45°) de la sortie par rapport à l'entrée.

Pour le réglage initial on pourra prendre $\omega_n = 1.6\omega_c$ pour obtenir avec le système commandé en boucle fermée une pulsation de coupure à -3dB proche de la pulsation $\omega_c$.

Cette réponse correspond dans notre cas à celle de la sortie $e(s)$ de notre système libre décrit par les équations (17) et (18). On peut donc dire que toute perturbation impulsionnelle (c'est-à-dire $e(t)$ non nul à un instant $t$) va être rejetée en suivant cette réponse (le système étant libre et stable, sa valeur finale tend toujours vers 0).

### 3.3 Remarques concernant la pulsation de coupure de référence

La bande passante de la commande en boucle fermée doit être inférieure ou égale à la bande passante de la boucle de vitesse intégrée au variateur. Si cela n'est pas respecté, on risque d'amener cette boucle de vitesse interne en saturation et perdre ainsi le contrôle du système. On pourra, comme indiqué
au paragraphe 2.6, faire varier $\omega_n$ de sorte à se positionner en dessous de la limite de stabilité du système bouclé.

En présence d'un système échantillonné, nous devons respecter le principe de Shannon. Comme indiqué dans le paragraphe 2.6, un rapport de 2 à 2,5 décades entre la fréquence d'échantillonnage et la bande passante de la commande en boucle fermée est un bon compromis. Toutefois, si le variateur est lui-même un système échantillonné, il est inutile de caler la fréquence d'échantillonnage de la commande en boucle fermée au-delà de la fréquence d'échantillonnage de la valeur d'entrée du variateur. Il faudra en tenir compte pour régler la bande passante de la commande en boucle fermée.

## 3.4 Remarques concernant les trajectoires de consigne

Pour ne pas perdre le contrôle du système, les trajectoires de consigne $(\theta_d, \dot{\theta}_d)$ doivent pouvoir être suivies sans faire entrer le système en saturation. Il ne faut pas perdre de vue que la boucle de vitesse interne du variateur possède systématiquement des valeurs de saturation. Il conviendra donc de limiter les accélérations (même si elles ne sont pas explicitement utilisées dans la commande) et les vitesses afin de garantir cette condition. Les positions, les vitesses (et les accélérations implicites) doivent bien entendu être cohérentes.