L’angle avec le sol est d’env. 87 degrés;

Cette ROLL la valeur est d’env. 3;

La valeur d’erreur est égale à 0;

Les moteurs sont immobiles.

  • Le robot s’écarte vers la droite.

L’angle avec le sol est dans la zone [0,87] degrés;

Cette ROLL la valeur est dans la plage [3,89];

La valeur d’erreur est négative;

Les moteurs tournent dans le sens antihoraire.

  • Le robot s’écarte vers la gauche.

L’angle avec le sol est dans la zone [87,180] degrés;

Cette ROLL la valeur est dans la plage [-89,3];

La valeur d’erreur est positive;

Les moteurs tournent dans le sens des aiguilles d’une montre.

Maintenant, terminez le patch. ajouter pid-controller nœud.

nœud de contrôleur pid

Relier ROLL broche avec entrée de pid-controller. N’oubliez pas de supprimer watch nœud car nous n’en avons plus besoin. Relier UPD broche sur le contrôleur avec DONE broche sur le capteur à faire pid-controller calculer la sortie uniquement lorsque les nouvelles données arrivent.

Nous ne configurons pas encore les coefficients du régulateur PID, mais nous pouvons déjà définir le point de consigne dans TARG broche à 3.

Avec la dernière étape, nous nous connectons pid-controller avec les moteurs. Nous connectons la sortie de pid-controller à mbot-motors nœud à travers clip nœud. Cette clip Le nœud contrôle la sortie et conserve sa valeur dans [-1,1] gamme.

nœud mbot-motors

Si les moteurs de votre cas tournent dans le mauvais sens, commutez les connexions entre les moteurs M1 et M2 sur la carte mCore. Vous pouvez également modifier le caractère de la valeur en utilisant subtract nœud. Le patch est terminé. Il est temps d’ajuster le contrôleur pid et de voir le comportement du robot.

Quoi Kp, Ki et Kd valeurs signifient pour le robot tumbler?

Pour le robot tumbler, le processus de réglage du contrôleur PID peut être très fastidieux. Il est plus précis que dans nos exemples précédents et vous pouvez passer beaucoup de temps à le configurer. Soyez patient et vous trouverez certainement les bons coefficients.

Facteur Kp

Cette Kp Le coefficient détermine la force avec laquelle le robot revient en position d’équilibrage. Avec un faible Kp valeur, les moteurs n’ont pas assez de puissance pour ramener le robot à l’état d’équilibrage. Une colline Kp La valeur augmente considérablement l’oscillation du robot à partir de l’état d’équilibrage. Pour une oscillation douce Kp ne doit pas être trop élevé en même temps Kp ne doit pas être trop bas pour permettre au robot de se déplacer.

Mettons Kp à 0,05 et voir le comportement du robot.

La valeur 0,05 de Kp

Nous tenons un peu le robot avec notre main et essayons de sentir la vitesse du moteur. Cette valeur semble trop petite. Les moteurs ne tournent presque pas. Le robot n’a pas assez de force pour se corriger. Nous fixons Kp à 1.5.

La valeur 1,5 de Kp

Sur 1.5 Kp la valeur est trop élevée. Une telle oscillation de fluide est difficile à contrôler. Comme précédemment, nous sélectionnons la valeur moyenne en utilisant la méthode des essais et erreurs. Nous nous sommes assis Kp à 0,155.

La valeur de 0,155 de Kp

Facteur Ki

Dans nos articles précédents, les plus importants étaient les paramètres du contrôleur PID Kp et Kd, Pour des hommes Ki le potentiel n’a pas été entièrement libéré. Pour un robot auto-équilibré, les coefficients les plus importants sont Kp et Ki. Il est possible d’atteindre le mode balance en utilisant uniquement ces deux paramètres.

Ki détermine combien de temps le robot doit se corriger. Plus le robot dévie, plus la valeur d’erreur s’accumule et plus de force est nécessaire pour ramener le robot dans une position équilibrée. Physiquement parlant Ki n’affecte pas le régime du moteur, mais il affecte l’accélération du moteur. Plus la masse centrale est élevée, plus l’accélération doit être élevée, sinon la force pour corriger la position du robot n’est pas suffisante.

Mettons Ki à 0,05 et arrêtez de tenir le robot dans votre main.

La valeur 0,05 de Ki

mBot est en baisse et nous devons augmenter Ki pour aller plus vite. Nous l’avons mis à 0,5.

La valeur 0,5 de Ki

C’est mieux, mais nous ne sommes toujours pas heureux. Nous augmentons progressivement Ki valeur jusqu’à ce que le robot revienne en position d’équilibre. Alors Ki la valeur de notre robot est de 1 195.

La valeur de 1195 Ki

Facteur Kd

En changeant Kd facteur, vous pouvez affiner la sensibilité du robot à l’erreur. Il est utilisé pour faire pivoter le robot rapidement ou lentement. Notre robot maintient l’équilibre assez bien avec la valeur 0 de Kd. Cependant, nous l’augmentons légèrement de 0 à 0,0075 pour accentuer les oscillations.

Pour montrer comment les oscillations changent lorsque Kd changements de valeur, nous avons décidé d’augmenter Kd deux fois. Regardez le comportement du robot quand Kd est de 0,015.

La valeur 0,015 de Kd

Une forte augmentation des fluctuations peut entraîner une perte d’équilibre. Nous gardons Kd égal à 0,0075.

En conclusion, nous ne pouvons que vous montrer comment le nouveau robot auto-équilibré tourne autour de nous.

MBot auto-équilibré

Vous pouvez voir qu’il tourne parfois à droite ou à gauche. Cela se produit parce que les moteurs ne sont pas synchronisés. Si vous souhaitez répéter l’expérience, vous pouvez l’organiser vous-même, mais ce n’est pas nécessaire pour notre leçon.

La tâche inhabituelle était simple. Merci au contrôleur PID, XOD et le constructeur Makeblock! À plus tard.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *