Étape 11 : La partie de contrôle du contrôleur.
Proportionnelle. Il s’agit d’une mesure corrective qui évolue proportionnellement à l’angle. Si le bâton se penche vers l’avant deux fois plus loin, l’action corrective est deux fois aussi grande. C’est comme la « constante du ressort » du système, application d’une force de rappel comme le bâton s’éloigne vertical.
Dérivé. Il s’agit d’une mesure corrective qui met à l’échelle proportionnelle à la dérivée de l’angle ou la vitesse angulaire. Si le bâton est en baisse deux fois plus vite, la mesure corrective est deux fois aussi grande. C’est comme la « constante d’amortissement » du système, application d’une force qui résiste à la rotation dans les deux sens.
Ensemble, cela forme un système masse-ressort-amortisseur, sauf avec amortisseurs et ressorts virtuels. La constante du ressort relative et la constante d’amortissement affectent combien le système oscille comme il corrige pour déplacement angulaire. Simple, droite ? Voici le code :
angle de sortie += * KP + taux * KD ;
Yep, simple. sortie est la commande pour être envoyé aux moteurs. KP et KD sont peaufiné jusqu'à ce qu’il les soldes (ou va va totalement instable). Une subtilité ici, c’est que la commande de sortie est incrémentée de la valeur générée par le contrôleur de PD. Ainsi, si l’angle est tenue à un décalage par rapport à la verticale, la commande moteur va continuer à augmenter. C’est comme ajouter une intégrale supplémentaire au système, comme le montre le schéma ci-dessous.
Habituellement dans les schémas de rétroaction, le chemin de rétroaction a un signe négatif, mais cela dépend vraiment de la façon dont les moteurs sont mis en place. Choisir le signe pour la sortie soit est possible dans le logiciel (= au lieu de +=) ou dans le matériel en inversant juste les fils du moteur. Si les deux roues commencent à bouger le mauvais sens en réponse à l’angle, vous pouvez inverser le signe. Si une roue met en mouvement la mauvaise façon, vous pouvez juste échanger son fils du moteur.