Mouvement du robot en avant, en arrière. Configurations de robots à roues. Effectuer des manœuvres à proximité des intersections

9 des tortures les plus terribles du monde antique

Que dit la forme de votre nez sur votre personnalité ?

20 signes que vous avez trouvé l'homme parfait

Danser comme un robot, c'est danser dans le style popping. La danse est basée sur la technique de contraction et de relaxation musculaire rapide. Par conséquent, pendant la danse, l'effet est créé comme si le danseur frissonnait brusquement. De tels grimaces, combinés à diverses postures et mouvements, sont exécutés en continu au rythme de la musique. Les danseurs imitent les mouvements d'un mannequin ou d'un robot animé.

Instructions

  1. Si vous décidez d'apprendre cette danse, vous devriez alors écouter les recommandations suivantes. Pour les cours, vous devez choisir la musique. Cela doit être rythmé, environ 100 à 120 battements par minute. Il est important de ressentir le rythme de la musique, d'observer la musicalité. Apprenez à effectuer une forte contraction musculaire, cela peut faire vibrer et trembler votre corps. De tels mouvements sont un trait caractéristique de ce type de danse de rue. En danse, ces « frissons » sont exécutés en continu et combinés avec différents mouvements et poses.
  2. N'oubliez pas que la base de ce style est la grève. Pratiquez-le avec votre poitrine, votre cou, vos bras et vos jambes dans diverses variantes. Apprenez 10 éléments de base et 4 à 5 connecteurs typiques. Perfectionnez ensuite la technique de réalisation de la fixation. Essayez de copier les mouvements du robot, faites de petits arrêts à la fin de chaque mouvement effectué, cela soulignera la netteté de l'élément suivant.
  3. Il y a beaucoup de gestes et d'angles dans les mouvements, il faut les maîtriser. Veuillez noter que presque tous les mouvements de la danse du robot sont effectués en position debout, mais certains éléments sont exécutés à genoux et couchés.
  4. Les mouvements des mains et des bras eux-mêmes doivent être effectués très brusquement. Les mains peuvent décrire des cercles rapidement et énergiquement, comme si un pinceau coupait l'air, de tels éléments donneront à la danse détermination, sang-froid et force. Vous pouvez pointer avec votre doigt. Vous pouvez réaliser des éléments qui créent l'illusion que vous glissez ou flottez sur le sol dans différentes directions. « Envoyer » des vagues à travers les bras et le corps. Apprenez à faire glisser vos pieds sur le sol, comme pour créer l'effet de glisser dans les airs, en utilisant le roulement du pied de la pointe au talon.
  5. Tous les mouvements doivent être répétés à intervalles de temps égaux, afin que le danseur puisse créer l'effet qu'il bouge comme s'il était sous la lumière d'une lumière stroboscopique.
  6. Expérimentez en utilisant des éléments que vous avez déjà appris. Utilisez des mouvements et des éléments provenant d'autres directions, créez votre propre style, améliorez votre technique. Plus la danse est imprévisible, plus les mouvements sont variés, plus il est intéressant pour le spectateur de la regarder.
  7. Regardez les cours vidéo présentés en fin d'article pour mieux comprendre les caractéristiques de cette danse et apprendre ses mouvements.

Veuillez noter

Cette danse est apparue dans les années soixante-dix du XXe siècle. On l'a longtemps dansé sur des musiques : électro, funk et disco. Popping est originaire de Californie. Désormais, les mouvements de ce style sont adaptés aux mélodies et aux chansons modernes. Il est souvent dansé sur les dernières musiques électroniques et hip-hop. Il est très populaire auprès des jeunes. Ses éléments se retrouvent dans les vidéoclips et les films. Il existe même des concours pour ce type de danse.

Cours vidéo

15.01.2012, 18:51

Jusqu'à présent, dans les articles sur les algorithmes utilisés lors du déplacement le long d'une ligne, on envisageait une méthode où le capteur de lumière semblait surveiller son bord gauche ou droit : dès que le robot entrait dans la partie blanche du champ, le contrôleur renvoyait le robot jusqu'à la frontière, le capteur a commencé à s'enfoncer plus profondément dans la ligne noire - le régulateur l'a redressé.
Bien que l'image ci-dessus soit présentée pour un régulateur à relais, le principe général de mouvement d'un régulateur proportionnel (régulateur P) sera le même. Comme déjà mentionné, la vitesse moyenne d'un tel mouvement n'est pas très élevée, et plusieurs tentatives ont été faites pour l'augmenter en compliquant légèrement l'algorithme : dans un cas, un freinage « doux » a été utilisé, dans un autre, en plus des virages, un mouvement vers l'avant. a été introduit.
Afin de permettre au robot d'avancer dans certaines zones, une zone étroite a été allouée dans la plage de valeurs produites par le capteur de lumière, que l'on pourrait classiquement appeler « le capteur est en bordure de la ligne ».
Cette approche présente un léger inconvénient : si le robot « suit » la limite gauche de la ligne, alors dans les virages à droite, il ne détecte pas immédiatement la courbure de la trajectoire et, par conséquent, passe plus de temps à rechercher la ligne et à tourner. De plus, on peut affirmer avec certitude que plus le virage est serré, plus cette recherche est longue.
La figure suivante montre que si le capteur n'était pas du côté gauche de la bordure, mais du côté droit, il aurait déjà détecté la courbure de la trajectoire et commencerait à effectuer des manœuvres de virage.

Par conséquent, c'est une bonne idée d'équiper le robot de deux capteurs à la fois, situés sur les côtés opposés de la ligne et, par conséquent, aideraient le robot à réagir plus rapidement aux changements de direction de mouvement.
Nous devons maintenant déterminer comment ce changement de conception affectera le programme. Pour plus de simplicité, il faut repartir avec le contrôleur de relais le plus simple et donc, tout d'abord, on s'intéresse aux positions possibles des capteurs par rapport à la ligne :

En fait, une autre condition acceptable peut être identifiée - sur des itinéraires complexes, ce sera l'intersection d'une intersection ou une sorte d'épaississement sur le chemin.
Les autres positions des capteurs ne seront pas prises en compte, car soit elles sont dérivées de celles présentées ci-dessus, soit ce sont les positions du robot lorsqu'il aura quitté la ligne et ne pourra plus y revenir grâce aux informations des capteurs. . En conséquence, toutes les dispositions ci-dessus peuvent être réduites à la classification suivante :
  • le capteur gauche, comme celui de droite, est au-dessus d'une surface lumineuse
  • capteur gauche sur une surface claire, capteur droit sur une surface sombre
  • capteur gauche sur surface sombre, capteur droit sur surface claire
  • les deux capteurs sont situés au-dessus d'une surface sombre
Si à un moment donné le programme du robot détecte une de ces positions, il devra réagir en conséquence :
    Si les deux capteurs sont au-dessus de la surface blanche, il s'agit d'une situation normale dans laquelle la ligne se trouve entre les capteurs, donc le robot doit aller tout droit si le capteur gauche est toujours au-dessus de la surface lumineuse et que le capteur droit est déjà au-dessus de la surface blanche. sombre, alors le robot a poussé son côté droit sur la ligne, ce qui signifie qu'il doit tourner vers la droite pour que la ligne soit à nouveau entre les capteurs. Si le capteur gauche est au-dessus d'une surface sombre et que celui de droite est toujours. au-dessus d'une surface claire, alors pour aligner, le robot doit tourner à gauche. Si les deux capteurs sont au-dessus d'une surface sombre, alors en général, le robot continue de se déplacer tout droit.

Le diagramme ci-dessus montre immédiatement comment exactement le comportement des moteurs doit changer dans le programme. Maintenant, écrire un programme ne devrait pas être difficile. Vous devez commencer par choisir quel capteur sera interrogé en premier. Cela n’a pas vraiment d’importance, alors laissez tomber. Il faut déterminer s'il se trouve au-dessus d'une surface claire ou sombre :
Cette action ne permet pas encore de dire dans quelle direction le robot doit aller. Mais il divisera les états listés ci-dessus en deux groupes : (I, II) pour la branche supérieure et (III, IV) pour la branche inférieure. Chaque groupe a désormais deux états, vous devez donc en choisir un. Si vous regardez attentivement les deux premiers états I et II, ils diffèrent par la position du capteur droit - dans un cas, il se trouve au-dessus d'une surface claire, dans l'autre - au-dessus d'une surface sombre. C’est ce qui déterminera le choix des actions à entreprendre :
Vous pouvez maintenant insérer des blocs qui définissent le comportement des moteurs selon les tableaux ci-dessus : la branche supérieure de la condition imbriquée définit la combinaison « les deux capteurs sur la lumière », la branche supérieure - « gauche sur la lumière, droite sur l'obscurité » :
La branche inférieure de la condition principale est responsable d'un autre groupe de conditions III et IV. Les deux états diffèrent également par le niveau de lumière détecté par le capteur droit. Cela signifie qu'il déterminera le choix de chacun d'eux :
Les deux branches résultantes sont remplies de blocs de mouvement. La branche supérieure est responsable de l'état « gauche dans l'obscurité, droite dans la lumière », et la branche inférieure est responsable des « deux capteurs dans l'obscurité ».
Il convient de noter que cette conception détermine uniquement la manière d'allumer les moteurs en fonction des lectures des capteurs à un certain endroit du champ ; naturellement, après un moment, le programme doit vérifier si les lectures ont changé afin d'ajuster le comportement des moteurs en conséquence, et après un moment encore, encore, etc. .d. Par conséquent, il doit être placé dans une boucle qui fournira cette vérification répétée :

Un programme aussi simple fournira une vitesse de déplacement assez élevée du robot le long de la ligne sans dépasser ses limites, si vous définissez correctement la vitesse maximale lors du déplacement dans les états I et IV, ainsi que la méthode optimale de freinage dans les états II et III - plus les virages sur la piste sont raides, plus le freinage doit être « dur » - la vitesse doit être réduite plus rapidement, et vice versa - avec des virages en douceur, il est tout à fait possible d'appliquer un freinage en coupant l'énergie ou même en en réduisant légèrement la vitesse.

Il convient également de dire quelques mots distincts concernant l'emplacement des capteurs sur le robot. Bien évidemment, les mêmes recommandations pour l'emplacement de ces deux capteurs par rapport aux roues s'appliqueront comme pour un capteur, seul le sommet du triangle est pris comme milieu du segment reliant les deux capteurs. La distance entre les capteurs elle-même doit également être choisie à partir des caractéristiques de la piste : plus les capteurs sont proches les uns des autres, plus le robot se stabilisera souvent (effectuera des virages relativement lents), mais si les capteurs sont suffisamment espacés , alors il y a un risque de sortir de la piste, il faudra donc effectuer des virages plus « durs » et réduire la vitesse sur les sections droites.



Comment danser comme un robot ?



Robot ou roboting est un style de danse de rue apparu en 1967. La danse implique une imitation artistique des mouvements d'un robot ou d'un mannequin, dont les éléments sont populaires dans les boîtes de nuit, sur scène et dans la rue. À partir de notre article, vous apprendrez à danser comme des œuvres.

La danse est devenue populaire grâce au légendaire Michael Jackson. Le robotisme est basé sur une contraction musculaire suivie d'une relaxation. Les danseurs de ce style utilisent des mouvements linéaires et des fixations de points.

Technique de danse robotique

  1. Avant d'apprendre à danser, choisissez une musique rythmée.
  2. Un robot est une machine. Débarrassez-vous des expressions faciales, donnez à votre visage un regard froid, dirigé vers un point donné.
  3. Contractez votre corps et étirez le haut de votre tête, les pieds écartés à la largeur des épaules, les orteils pointés vers les côtés, les mains vers le bas.
  4. Considérez le mouvement de la tête. Imaginez que vous êtes sur une image et que vous devez regarder ses coins. D'un mouvement fluide, commencez à tourner la tête vers la droite, puis fixez la position, fixez-la vers le bas, fixez-la à gauche, et terminez le mouvement en levant la tête.
  5. Apprendre à s'arrêter. Remplissez vos poumons d'air en inspirant profondément par le nez, et lorsque votre poitrine se soulève, figez et après quelques secondes, expirez l'air. Répétez ce mouvement plusieurs fois.
  6. Imaginez ensuite que vous êtes un ballon rempli d’air. Après l'étape 5 des instructions, connectez vos mains. Imaginez que vous êtes une marionnette et que vos ficelles sont tirées. Changez la position de vos bras en tournant votre corps dans différentes directions. Faites des mouvements lentement et avec des pauses. Terminez le mouvement en vous tenant droit et en joignant les mains, comme si vous étiez assis à un bureau.
  7. Sans supprimer la position de vos mains jointes, tournez-vous vers la gauche et pliez votre corps. Vous pouvez balancer lentement votre corps au rythme, puis redresser vos bras sur les côtés et les replier.
  8. Ensuite, travaillez votre poitrine. Fixez votre tête en place et pliez votre corps de haut en bas.
  9. Le prochain mouvement est un tour. Lorsque vous tournez à droite, placez-vous sur la pointe de votre pied gauche et pliez légèrement le genou. Lorsque vous tournez à gauche, faites de même avec votre pied droit. Faites pivoter vos épaules avec vos jambes.
  10. Pratiquons les tours demi-assis. Pliez vos genoux et tournez votre corps de gauche à droite comme si vous étiez sur un cercle en rotation.
  11. L'élément suivant consiste à bouger les bras et le corps. Tournez-vous à gauche et imaginez que vous voulez soulever la boîte. À l’aide des bras tendus, saisissez une boîte imaginaire, tournez tout droit, fixez la position, puis tournez vers la gauche et posez la boîte.
  12. Faisons une vague. Dans ce mouvement, la plasticité et la souplesse du corps sont importantes. Commencez la vague avec votre bras droit, puis engagez votre épaule, votre corps et terminez par une vague sur votre bras gauche. Entraînez-vous également à faire une vague régulière en utilisant votre ventre.
  13. Pratiquez plusieurs fois les mouvements décrits en musique devant un miroir. En combinant les éléments, vous obtenez une danse. Après avoir pratiqué les mouvements, vous pouvez les classer par ordre chronologique à votre goût. Créez vos propres éléments de danse.

Remarque pour les débutants

  • Apprenez les connecteurs de base. N'oubliez pas qu'une bonne improvisation est une improvisation bien préparée.
  • Faites plus attention au collage des ligaments. La transition d'un mouvement à un autre doit paraître harmonieuse.
  • Enregistrez vos activités en vidéo. Cela vous aidera à évaluer les mouvements de l'extérieur et à apprendre les erreurs sur lesquelles vous devrez travailler.

L’une des tâches clés de la robotique mobile consiste à trouver un itinéraire de déplacement et à l’optimiser. En se déplaçant dans la zone de travail, le robot doit constamment évaluer son environnement, déterminer sa position et celle des objets qui l'entourent. Il existe de nombreuses façons différentes pour un robot de déterminer sa propre position et de construire un itinéraire entre des destinations. Lors de déplacements dans la rue, la technologie de navigation par satellite est utilisée et les objets environnants sont détectés à l'aide de caméras ou de télémètres. Dans le cas d'un déplacement à l'intérieur, à l'aide de caméras et de télémètres, un modèle virtuel de l'espace est construit, selon lequel le robot est guidé dans le futur. Les méthodes ci-dessus sont de nature générale et applicables dans des situations arbitraires, mais de ce fait, elles sont très difficiles à mettre en œuvre et ne sont pas encore largement utilisées dans la vie quotidienne.


En règle générale, les systèmes robotiques autonomes sont conçus pour des tâches spécifiques. Cette approche permet de formaliser les exigences du système et de développer tous les algorithmes possibles pour répondre aux changements de l'état de l'environnement.

Par exemple, l'une des tâches plutôt strictement formalisées peut être le déplacement d'objets à l'intérieur d'une installation de production. En règle générale, lors du transport de marchandises dans des entrepôts ou des ateliers de production, les robots parcourent toujours le même itinéraire. En conséquence, cet itinéraire est connu à l’avance et un système de contrôle du mouvement du robot peut être développé pour celui-ci.

Auparavant, les véhicules d'atelier étaient des chariots se déplaçant sur des rails. Avec le développement de la science et de la technologie, ils ont été remplacés par des robocars - des robots mobiles de différents types et pour diverses tâches, et les rails posés le long de l'atelier ont été remplacés par un réseau de lignes de guidage tracées au sol.


Les robots mobiles évoluant dans les ateliers le long de la ligne, comme les robots issus de précédents travaux en laboratoire, sont équipés de différents dispositifs sensoriels pour percevoir l'environnement : capteurs IR, caméras, capteurs de sécurité, etc. Mais contrairement aux robots évoqués précédemment, les vrais robots ne fonctionnent pas dans des conditions de laboratoire - souvent la ligne de guidage peut être endommagée ou cachée derrière un objet, certains itinéraires peuvent se croiser ou être partiellement interrompus.


L'itinéraire lui-même peut être soumis à diverses restrictions, par exemple : certaines sections de l'itinéraire peuvent être interdites à la circulation, et certaines ne peuvent être atteintes qu'après en avoir traversé d'autres.

Il devient évident que les méthodes de déplacement le long d’une ligne, qui est une trajectoire fermée, ne sont pas tout à fait acceptables dans un tel cas. Des exemples de divers algorithmes de déplacement le long d'une ligne peuvent être trouvés dans des travaux antérieurs, mais on peut immédiatement conclure qu'aucun d'entre eux ne prend en compte l'intermittence de la trajectoire de mouvement ou la présence d'intersections sur celle-ci.

Si, pendant le mouvement, le programme de contrôle d'un robot mobile est incapable de déterminer la présence d'intersection de lignes de guidage, cela peut conduire à une ambiguïté dans la prise de décision.

Lors du franchissement de l'intersection des lignes, le système de contrôle du robot mobile recevra des données indiquant que la ligne de guidage est située à la fois à droite et à gauche par rapport au robot. En conséquence, le processus décisionnel sur les manœuvres ultérieures sera perturbé.



Pour reconnaître les intersections des lignes de guidage, de nombreuses méthodes différentes peuvent être utilisées ; par exemple, des caméras sont souvent utilisées à ces fins. Mais le traitement des images nécessite des performances élevées de l’ordinateur embarqué du robot, de telles solutions ne sont donc pas toujours applicables. Cet article présente une méthode de contrôle d'un robot mobile à l'aide d'informations provenant d'un ensemble de capteurs infrarouges. À l'aide d'un réseau de sept capteurs S1 à S7, il devient possible de déterminer l'emplacement des intersections de lignes. Puisqu'il existe de nombreuses options pour les intersections les plus probables, vous devez configurer le programme de contrôle du robot sur le nombre maximum possible d'options acceptables, déterminées sur la base des lectures des capteurs IR.

Effectuer des manœuvres à proximité des intersections

Lorsque vous vous déplacez le long d'un itinéraire qui est une ligne sécante, en plus du suivi de la ligne, il est nécessaire de sélectionner la direction du mouvement à chacune des intersections. Passer la bonne séquence d'intersections permet de parcourir un itinéraire donné de la bonne manière.

Dans le cadre de ce travail, il est proposé d'élaborer un programme de suivi d'un itinéraire donné. À titre d'exemple, considérons l'itinéraire de base illustré sur la figure. Pour développer un programme de déplacement le long d'un itinéraire donné, il est nécessaire d'y sélectionner des points particuliers, qui sont des intersections de l'itinéraire ou de ses ruptures. Pour que le robot atteigne la ligne d'arrivée, il doit suivre la ligne et franchir quatre points spécifiés.

Le déplacement le long d'un itinéraire donné est déterminé par une séquence algorithmique qui précise l'une des manœuvres à chaque point clé. En particulier, dans l'exemple ci-dessus, à la première intersection du parcours, le robot continue de se déplacer en ligne droite, à la deuxième il tourne à gauche et à la troisième il tourne à droite et suit jusqu'à la ligne d'arrivée.


De la même manière, vous pouvez développer un programme permettant au robot de se déplacer le long de l'un des itinéraires les plus complexes. Pour ce faire, il vous suffit de définir la séquence de déplacement du robot à travers les intersections du parcours.

Le programme de contrôle se réduit à rechercher séquentiellement chacun des points d'une séquence donnée. Chacun des points est décrit par sa propre fonction, à l'aide de laquelle il est reconnu, ainsi que par la vitesse de passage de cette section, qui est déterminée au stade de l'initialisation du programme.


Le texte du programme est une séquence d'appels de fonctions séquentiels qui spécifient le mouvement requis. Afin de faire varier la direction de déplacement du robot le long de la ligne, il suffit de changer l'ordre d'appel des fonctions.

Les fonctions ci-dessus peuvent être divisées en deux types principaux :

1) Fonctions qui font tourner le robot aux intersections en forme de T et de L.

2) Fonctions avec lesquelles le robot se déplace jusqu'à l'intersection la plus proche sans aucune action.

Dans le premier cas, la fonction consiste en deux opérations distinctes : un appel à la fonction de déplacement vers l'avant et un appel à la fonction de virage dans une direction donnée.

La fonction l_node_l_turn est conçue pour effectuer un virage à gauche à l'intersection à gauche la plus proche. La fonction se compose de deux autres fonctions : l_node_forward, qui est responsable du déplacement vers l'intersection en forme de L la plus proche avec un virage à gauche, et pivot_left, qui est responsable du virage à gauche.

La fonction l_node_forward dans une boucle infinie recherche le point d'intersection des trajectoires à l'aide de la fonction l_node_detect. Pendant la recherche, le robot suit constamment la ligne grâce à la fonction follow_line. Après avoir détecté un point d'intersection des itinéraires, le robot fait un petit bond en avant, limité par le chronomètre, afin de se décaler légèrement pour tourner davantage vers la gauche. Ce mouvement est extrêmement important pour qu'après la manœuvre le robot se retrouve au centre de la ligne de guidage. Une attention particulière doit être accordée au processus de reconnaissance des points d'intersection des itinéraires. Évidemment, au fur et à mesure que le robot se déplace le long du parcours, diverses situations peuvent survenir, mais la plupart d'entre elles peuvent être décrites par des signes formels, par exemple par l'activation de capteurs IR.


Considérons le processus par lequel le robot se déplace sur une section de l'itinéraire avec un virage à gauche. Évidemment, à mesure que le robot se déplace, certains capteurs infrarouges heurteront la ligne noire et l'une des situations illustrées ci-dessous se produira.


Sur la figure, les capteurs IR situés au-dessus de la ligne noire sont marqués en noir, et ceux situés au-dessus de la zone blanche de la surface sont marqués en blanc. Pendant que le robot est en mouvement, vous pouvez interroger chacun des capteurs et, en recherchant parmi les options, déterminer la position actuelle du robot.


La fonction ci-dessus décrit le processus de reconnaissance du virage en L à gauche. Selon l'algorithme ci-dessus, un tel point de route s'entend comme la section de la trajectoire sur laquelle les capteurs IR n°1, n°2, n°3 sont déclenchés.

De cette façon, vous pouvez reconnaître n'importe quelle partie de l'itinéraire. À première vue, cela peut sembler une tâche assez simple, mais il convient d'accorder une attention accrue à la précision de la reconnaissance de la position actuelle. La précision du programme peut être affectée par la qualité de la surface de travail et la vitesse du robot. Pour augmenter la précision du programme, la fonction l_node_detect implémente un mécanisme de protection contre les faux positifs. La même condition est vérifiée deux fois après un délai programmable.


Les mesures visant à améliorer la précision du programme de contrôle sont extrêmement importantes lors du développement d'un système de contrôle. Les négliger peut conduire à un fonctionnement incorrect de l'algorithme et de l'ensemble du système robotique dans son ensemble.

Effectuer des manœuvres complexes

Dans des situations réelles, les robots mobiles se déplacent non seulement le long de sections droites d'un itinéraire, mais également le long de trajectoires courbes et effectuent également diverses manœuvres.


Plus le système de contrôle contient des descriptions de telles manœuvres, plus le robot peut parcourir des itinéraires complexes. Par exemple, similaire à l'itinéraire indiqué ci-dessous dans la figure.


En général, le programme de contrôle est identique au programme évoqué dans la partie précédente. Comme pour tout autre programme, la séquence de passage des nœuds de trajectoire est précisée.

Par rapport à la partie précédente de l'œuvre, deux nouveaux types de mouvements ont été ajoutés : le mouvement le long d'un arc de cercle et le mouvement le long d'une diagonale, et chacun de ces mouvements diffère par sa direction.

Chacune de ces fonctions consiste en une fonction de suivi d'itinéraire - diag_corner_forward, I_curve_branch_forward et une fonction de virage dans la direction requise - pivot_left, pivot_right. Le mouvement du robot le long de la ligne selon un angle est contrôlé à l'aide des capteurs IR n°1 et n°7, qui fixent la position du robot au-dessus de la ligne. Si le robot est au-dessus de la ligne, alors la fonction follow_line est lancée, à l'aide de laquelle le robot suit sa propre position par rapport à la ligne et se centre sur elle à l'aide du capteur IR n°4.

Le suivi de ligne vise principalement à se déplacer le long de celle-ci avec le centre du robot orienté au-dessus de la ligne. Puisque le centre du robot coïncide avec le capteur IR n°4, la fonction follow_line cherche à minimiser les écarts des capteurs IR n°3 et n°5 par rapport à la ligne.


L'essence de ce processus se résume à remplir un certain nombre de conditions :

1) Si le capteur IR n°4 est au-dessus de la ligne, alors le robot roule tout droit à la vitesse maximale.

2) Si l'un des capteurs IR n°3 ou n°5 détecte une ligne, alors le robot tourne dans le sens inverse à une vitesse minimale.

En suivant la ligne, la vitesse de ses manœuvres change en fonction de la position du robot. Ceci est dû au fait que dans certaines situations, le robot doit se déplacer en douceur pour ne pas sortir de la ligne, par exemple lors des manœuvres entre les capteurs n°3 et n°5.

Si le robot s'écarte suffisamment de la ligne, il est nécessaire de corriger sa position le plus rapidement possible, afin que sa vitesse de déplacement augmente.

La fonction change_speed est chargée de modifier la vitesse du robot, qui définit la vitesse de rotation des entraînements en pourcentage de la valeur de vitesse maximale.


N'oubliez pas que le respect de la limite de vitesse est l'une des conditions les plus importantes affectant le mouvement du robot le long d'un itinéraire donné. L'une des exigences les plus importantes pour l'algorithme de contrôle d'un robot mobile est de maintenir la vitesse optimale sur une section donnée de l'itinéraire.


Le respect de la limitation de vitesse n’est pas seulement une exigence de sécurité routière ; c’est avant tout une exigence qui permet de minimiser les erreurs dans le fonctionnement du programme de contrôle du robot. Il convient de rappeler que la vitesse de déplacement du robot affecte de manière significative la qualité de la reconnaissance des nœuds d'itinéraire et l'orientation du robot lui-même par rapport à la ligne de guidage.

L'objectif principal du développeur de systèmes robotiques est de garantir un fonctionnement de haute qualité et sans problème pendant le fonctionnement. Pour cela, vous pouvez sacrifier beaucoup de choses : productivité, intensité des ressources, etc., y compris la vitesse.

Conclusion

Ce travail de laboratoire est le plus important parmi les travaux évoqués précédemment. Cela est dû non seulement à la complexité du matériel présenté, mais également aux problèmes importants soulevés, tels que la garantie de la précision et de la qualité du fonctionnement des systèmes robotiques.


Le but de ce travail est de démontrer que les facteurs externes ne sont pas les seuls à influencer la qualité du travail d'un robot particulier. Le robot lui-même, fonctionnant sur la base d'un programme de contrôle, peut avoir une influence significative sur le processus d'exécution de la tâche assignée.

Les programmes abordés dans les deux parties démontrent clairement l'influence de la vitesse de déplacement sur la qualité d'une trajectoire donnée. Pour consolider les résultats des travaux, vous pouvez étudier le mouvement du robot le long du parcours indiqué ci-dessous, qui combine toutes les manœuvres possibles évoquées précédemment.


Outre la complexité du parcours et la vitesse de déplacement, la qualité de la surface sur laquelle le déplacement s'effectue a un impact important sur le fonctionnement du robot. Il est fort possible que la ligne le long de laquelle le robot doit se déplacer soit endommagée ou même repeinte.

Le concepteur d'un système robotique doit considérer toutes les applications possibles de sa solution de conception. Plus les différents facteurs d'influence sont pris en compte dès la phase de conception, plus le robot fonctionnera de manière précise et efficace.

Un robot mobile se déplace pour résoudre certains problèmes, reçoit des données de capteurs externes et doit constamment contrôler son mouvement. Tous ces processus se produisent en permanence et sont étroitement liés les uns aux autres. Aujourd'hui, nous parlerons des configurations de base des robots à roues et de la manière dont leurs mouvements sont décrits mathématiquement. Ce matériel vous aidera à choisir une configuration de roues pour votre robot mobile.

Les robots mobiles peuvent se déplacer dans divers environnements : eau, air, terre et espace. Et le mouvement dans chaque environnement a ses propres caractéristiques liées à ses différentes propriétés physiques.

Dans cette publication, je m'intéresserai aux robots à roues capables de se déplacer sur des surfaces assez planes.

Lors de la conception d'un système de mouvement de robot, les points suivants doivent être pris en compte :

  • vitesse ou accélération du mouvement
  • précision de positionnement (répétabilité)
  • flexibilité et robustesse (fiabilité) dans diverses conditions
  • efficacité (faible consommation d'énergie)

Système de coordonnées

Afin de décrire mathématiquement le mouvement d’un robot mobile, nous devons définir des systèmes de coordonnées. Je vais présenter deux systèmes de coordonnées - le système de coordonnées mondial W(Je suppose qu'il est immobile dans l'espace), et le système de coordonnées du robot R., qui se déplace dans l'espace et reste immobile par rapport au robot lui-même.

Nous devons déterminer l'emplacement du robot, c'est-à-dire savoir comment convertir les coordonnées entre W Et R..

Degrés de liberté de mouvement

Le nombre de degrés de liberté détermine le nombre minimum de variables indépendantes (coordonnées généralisées) nécessaires pour décrire complètement le mouvement d'un système mécanique.

Un corps rigide qui se déplace et tourne le long d'un chemin unidimensionnel possède un degré de liberté : la translation. Un exemple serait un train se déplaçant sur des rails.

Un corps rigide qui se déplace et tourne sur un plan possède 3 degrés de liberté : 2 en translation et 1 en rotation. Exemple : robot au sol.

Un corps rigide qui se déplace et tourne dans un volume 3D possède 6 degrés de liberté : 3 en translation et 3 en rotation. Exemple : robot volant.

Un cas particulier est ce qu'on appelle holonomique un robot capable de se déplacer instantanément dans n'importe quelle direction dans l'espace de ses degrés de liberté (un robot est holonomique si le nombre de degrés de liberté contrôlés est égal au nombre total de degrés de liberté). Les robots holonomiques existent, mais ils nécessitent de nombreux moteurs et des conceptions inhabituelles, souvent très peu pratiques. Cependant, les robots holonomiques terrestres peuvent être mis en œuvre à l’aide d’omni-roues.

La vidéo montre un exemple de robot à quatre roues avec roues omnidirectionnelles.


Configurations de robots à roues

Il existe de nombreuses configurations différentes de robots mobiles.

Il y a ceux qui sont moins utilisés, par exemple, la plate-forme Segway à deux roues avec équilibre dynamique a une bonne hauteur avec une petite surface et une accélération assez élevée.

Ou encore le rover Opportunity, doté de roues sur flèches pour surmonter de gros obstacles.

Mais d'autres types de configurations sont plus souvent utilisés.

Il s’agit de mécanismes simples, fiables et robustes adaptés aux robots qui se déplacent principalement dans un avion.

Tous ces robots sont non holonomiques (deux moteurs sont utilisés, mais trois degrés de liberté de mouvement). Par exemple, il ne peut pas se déplacer instantanément sur le côté.

Robot à entraînement différentiel

Cette configuration est utilisée dans .

Un robot à entraînement différentiel possède deux moteurs, un pour chaque roue (ce sont les grandes roues sur la photo). Le changement de direction du mouvement s'effectue grâce à différentes vitesses (d'où le nom de différentiel).

  • Pour se déplacer en ligne droite, les roues doivent tourner à la même vitesse.
  • Pour que le robot fasse demi-tour sur place, il est nécessaire de régler les vitesses de manière à ce qu'elles soient de même ampleur, mais dirigées dans la direction opposée.
  • D'autres combinaisons de vitesses entraînent un mouvement d'arc

Mouvement en arc de cercle

Notons les vitesses des roues (les vitesses linéaires avec lesquelles elles « couvrent » la surface) et - pour les roues gauche et droite, respectivement, et la distance entre les roues.

Afin de trouver le rayon d'une trajectoire courbe, considérons la période de mouvement pendant laquelle le robot se déplace le long d'un arc de cercle ayant un angle.

Voiture/tricycle/entraînement à crémaillère et pignon

Ce type de robot dispose de deux moteurs : l'un pour le mouvement, l'autre pour le roulage.

  • Impossible de se retourner normalement sur place.
  • À vitesse et angle de rotation constants, il se déplace selon un arc de cercle.
  • La transmission intégrale nécessite un différentiel arrière et une liaison variable (« principe Ackermann ») aux volants.

Mouvement circulaire d'un robot à trois roues

En supposant qu’il n’y ait pas de patinage latéral des roues, nous croisons les axes des roues avant et arrière pour former un triangle rectangle, et le résultat est :

Le rayon de trajectoire décrit par les roues arrière :

Pendant le temps, la distance le long de cet arc de cercle parcourue par les roues motrices est égale à , donc l'angle dont le robot va tourner est :

Engrenage

Les moteurs à courant continu ont généralement une vitesse élevée et un faible couple, un engrenage est donc presque toujours nécessaire pour contrôler le robot.

Si Vitesse 1 a un couple, il exerce une force tangentielle

sur Transfert 2. Couple Vitesse 2 C'est pourquoi

Changement de vitesse angulaire entre Vitesse 1 Et Vitesse 2 Calculons en considérant la vitesse au point où ils se touchent :

  • Lorsqu'un petit engrenage en entraîne un plus grand, le deuxième engrenage aura un couple plus élevé et une vitesse angulaire plus faible proportionnellement au rapport des dents.
  • Pour obtenir un effet combiné, les engrenages peuvent être combinés en chaînes.

Estimation de mouvement à l'aide de capteurs

Très souvent, un robot évalue son mouvement en surveillant ses propres capteurs. Il peut s'agir par exemple de la tension du moteur et des capteurs de roue. Cette information est appelée odométrie.

Par exemple, sur la base d’une évaluation très simple :

La distance parcourue est proportionnelle à la tension et au temps. Voici une constante calculée (en utilisant les connaissances en électricité et en géométrie), mais qui peut également être obtenue en conséquence étalonnage.

Les encodeurs offrent une plus grande précision dans la mesure de la vitesse des roues. Les informations du codeur peuvent être converties en distance linéaire en multipliant par un rayon de roue constant. Mais en règle générale, pour une plus grande précision, un étalonnage est toujours effectué.

Mouvement et état du robot pour l'avion

En supposant que le robot se limite à se déplacer sur un plan, sa localisation peut être déterminée par un vecteur d'état composé de trois paramètres :

Et ils déterminent l'emplacement d'un point prédéterminé du « centre du robot » dans le système de coordonnées mondial.

Définit l'angle de rotation entre les systèmes de coordonnées (l'angle entre les axes et).

Les deux systèmes de coordonnées coïncident au moment où le centre du robot est à l'origine et .

Mouvement intégral dans un plan

En recevant les mouvements du robot à certains instants, on peut retrouver l'intégralité du chemin parcouru par le robot en additionnant ces valeurs, ou en allant à la limite (selon la tendance du nombre de dimensions) en les intégrant.

Lorsque nous nous déplaçons sur un avion, nous disposons de trois degrés de liberté pour déterminer la position, représentés par .

Considérons un robot qui ne peut qu'avancer ou tourner sur place :

Lorsque le robot se déplace rectilignement sur une distance, le nouvel état sera exprimé comme suit :

S’il y a seulement un mouvement de rotation, lors d’une rotation d’un angle :

Estimation du mouvement circulaire 2D

Pour les cas des robots différentiels et à trois roues, nous pouvons obtenir des expressions pour et pour le cas où il n'y a qu'un mouvement le long d'un arc de cercle.



Des questions ?

Signaler une faute de frappe

Texte qui sera envoyé à nos rédacteurs :