Comment construire un robot Tutoriels - Société de Robots

A propos de ce bras robot Tutorial
Le bras du robot est probablement le robot le plus complexe mathématiquement que vous pourriez jamais construire. En tant que tel, ce tutoriel ne peut pas vous dire tout ce que vous devez savoir. Au lieu de cela, je vais couper à la chasse et parler du strict minimum que vous devez savoir pour construire un bras de robot efficace. Prendre plaisir!







Pour commencer, voici une vidéo d'une affectation de bras de robot j'avais quand je pris la manipulation robotisée de retour au collège. Mon groupe programmé pour taper l'heure actuelle dans le clavier. (Leçon apprise, ne tombe pas en panne bras de robot dans votre clavier à pleine vitesse tout en testant devant votre professeur)


Les degrés de liberté (DOF)
Les degrés de liberté. ou ddl, est un terme très important de comprendre. Chaque degré de liberté est un joint sur le bras, un endroit où il peut se plier ou faire pivoter ou traduire. Vous pouvez généralement identifier le nombre de degrés de liberté par le nombre d'actionneurs sur le bras du robot. Maintenant, ceci est très important - lors de la construction d'un bras de robot que vous voulez que quelques degrés de liberté autorisée pour votre application. Pourquoi? Parce que chaque degré nécessite un moteur. souvent un codeur. et des algorithmes compliqués de façon exponentielle et les coûts.

Denavit-Hartenberg (DH) Convention
Le bras robot corps libre (FBD)
La Convention Denavit-Hartenberg (DH) est la méthode acceptée de dessin bras de robot en FBD de. Il n'y a que deux mouvements d'une articulation pourrait faire: traduire et tourner. Il y a seulement trois axes cela pourrait se produire sur: x, y et z (hors plan). Ci-dessous je vais montrer quelques bras de robot, puis dessiner un FBD à côté de lui, de démontrer les relations ddl et des symboles. Notez que je ne comptais pas sur la ddl la pince (autrement connu comme l'effecteur terminal). La pince est souvent complexe avec de multiples degrés de liberté, de sorte que pour plus de simplicité, il est considéré comme indépendant de la conception de bras de robot de base.

Avis entre chaque ddl il y a un lien entre une longueur particulière. Parfois, un joint peut avoir plusieurs degrés de liberté dans le même endroit. Un exemple serait l'épaule humaine. L'épaule a en fait trois ddl coïncident. Si vous deviez représenter mathématiquement cela, vous dites simplement lien longueur = 0.

Notez également qu'un ddl a ses limites, connues sous le nom de l'espace de configuration. Pas tous les joints peuvent pivoter à 360 degrés! Un joint a une certaine restriction d'angle max. Par exemple, aucun joint humain ne peut tourner plus d'environ 200 degrés. Des limites pourraient provenir d'enroulement du fil, des capacités d'actionneurs, servo angle max, etc. Il est une bonne idée d'étiqueter chaque longueur de la liaison et de l'angle max joint sur la FBD.

Votre bras de robot peut aussi être sur une base mobile, en ajoutant ddl supplémentaires. Si le robot à roues peut tourner, qui est un joint de rotation, si elle peut aller de l'avant, alors c'est un joint de traduction. Ce robot manipulateur mobile est un exemple d'un bras d'une profondeur de champ sur un robot de deux degrés de liberté (3 total DOF).


Espace de travail de robot
L'espace de travail de robot (parfois appelé espace accessible) est tous les endroits que l'effecteur final (pince) peut atteindre. L'espace de travail dépend des limites angle / traduction dof, les longueurs de liaison de bras, l'angle auquel quelque chose doit être pris en charge à, etc. L'espace de travail dépend fortement de la configuration du robot.

Comme il existe de nombreuses configurations possibles pour votre bras de robot, à partir de maintenant, nous ne parlerons que de celle ci-dessous. J'ai choisi cette configuration 3 ddl car il est simple, mais isnt limitant la capacité.

permet maintenant supposer que tous les joints tournent un maximum de 180 degrés. parce que la plupart des servomoteurs ne peuvent pas dépasser ce montant. Pour déterminer l'espace de travail, tracer tous les endroits que l'effecteur terminal peut atteindre comme dans l'image ci-dessous.

Comment construire un robot Tutoriels - Société de Robots

Maintenant que la rotation par la commune, nous avons encore de base de 180 degrés pour obtenir 3D, cette image de l'espace de travail. Rappelez-vous que parce qu'il utilise servos, tous les joints sont limités à un maximum de 180 degrés. Cela crée un espace de travail d'une demi-sphère décortiquées (sa forme parce que je le dit).

Comment construire un robot Tutoriels - Société de Robots

Si vous modifiez les longueurs de lien, vous pouvez obtenir des tailles très différentes des espaces de travail, mais ce serait la forme générale. Tout endroit à l'extérieur de cet espace est un endroit de la portée de bras dévers. Si des objets de la manière du bras, l'espace de travail peut être encore plus compliquées.

Voici quelques exemples de l'espace de travail plus de robot:


Manipulateurs mobiles
Un robot mobile avec un bras de robot est une sous-classe des bras robotiques. Ils fonctionnent comme d'autres bras robotiques, mais le degré de liberté du véhicule est ajouté à la ddl du bras. Si que vous avez un robot entraînement différentiel (2 ddl) avec un bras de robot (5 ddl) attaché (voir robot de jaune ci-dessous), qui donnerait le bras de robot une somme totale de 7 degrés de liberté. Que pensez-vous l'espace de travail sur ce type de robot serait?

Comment construire un robot Tutoriels - Société de Robots


Les calculs de force des articulations
Ce tutoriel est là ce lourd commence à faire avec les mathématiques. Avant même de continuer, je vous recommande fortement de lire les tutoriels d'ingénierie mécanique pour statique et dynamique. Cela vous donnera une compréhension fondamentale des calculs de bras de moment.

Le point de faire des calculs de force est pour la sélection du moteur. Vous devez vous assurer que le moteur vous choisissez peut non seulement supporter le poids du bras de robot, mais aussi ce que le bras de robot porterez (la boule bleue dans l'image ci-dessous).

La première étape consiste à étiqueter votre FBD, avec le bras de robot étendu à sa longueur maximale.

Choisissez ces paramètres:
  • poids de chaque liaison
  • poids de chaque joint

  • poids de l'objet à lever

  • longueur de chaque liaison
  • Ensuite, vous faites un calcul de bras de levier, en multipliant les temps de force vers le bas les longueurs de liaison. Ce calcul doit être effectué pour chaque actionneur de levage. Cette conception particulière a seulement deux degrés de liberté qui exige le levage et le centre de masse de chaque liaison est supposée Longueur / 2.

    Couple INTERARMÉES 1:
      M1 = L1 / 2 * W1 + L1 * W4 + (L1 + L2 / 2) * W2 + (L1 + L3) * W3
    Couple INTERARMÉES 2:
      M2 = L2 / 2 * W2 + W3 * L3






    Comme vous pouvez le voir, pour chaque ddl vous ajoutez le calcul devient plus compliqué, et les poids communs deviennent plus lourds. Vous verrez également que la longueur des bras plus courts permettent aux petits couples de serrage.

    Trop paresseux pour calculer les forces et les couples vous-même? Essayez ma calculatrice de bras de robot pour faire le calcul pour vous.


    Cinématique
    la cinématique directe est la méthode de détermination de l'orientation et la position de l'effecteur d'extrémité, compte tenu des angles d'articulation et les longueurs de liaison du bras de robot. Pour calculer la cinématique de l'avant, tout ce que vous avez besoin est highschool TRIG et de l'algèbre.

    Pour notre exemple de bras de robot, ici on calcule l'emplacement effecteur final avec des angles communs et des longueurs de liaison donnés. Pour la visualisation plus facile pour vous, je dessinais des triangles bleus et étiquetée les angles.

    On suppose que la base se trouve à x = 0 et y = 0. La première étape consiste à localiser x et y de chaque joint.

    Joint 0 (avec x et y à la base égale à 0):
      x0 = 0
      y0 = L0
    Joint 1 (avec x et y à J1 égal à 0):
      cos (psi) = x1 / L1 => x1 = L1 * cos (psi)
      sin (psi) = y1 / L1 => y1 = L1 * sin (psi)
    Joint 2 (avec x et y à J2 égal à 0):
      sin (thêta) = X2 / L2 => x2 = L2 * sin (thêta)
      cos (thêta) = y2 / L2 => y2 = L2 * cos (thêta)
    Effecteur Lieu (assurez-vous que vos signes sont corrects):
      x0 + x1 + x2, ou 0 + L1 * cos (psi) + L2 * sin (thêta)
      y0 + y1 + y2, ou L0 + L1 * sin (psi) + L2 * cos (thêta)
      z est égal à alpha, en coordonnées cylindriques

    L'angle de l'effecteur d'extrémité, dans cet exemple, est égal à + thêta psi.

    Trop paresseux pour calculer la cinématique de l'avant vous-même?
    Regarde mes bras Robot Designer v1 dans Excel.

    Au lieu de cela, je vais vous donner les équations pour notre conception de robot spécifique:

      psi = arccos ((x ^ 2 + y ^ 2 - L1 2 ^ - L2 ^ 2) / (2 * L1 * L2))
      theta = arcsin ((y * (L1 + L2 * c2) - x * L2 * s2) / (x ^ 2 + y ^ 2))
      où c2 = (x ^ 2 + y ^ 2 - L1 2 ^ - L2 ^ 2) / (2 * L1 * L2);
      et s2 = sqrt (1 - c2 ^ 2);

    Alors, en quoi la cinématique inverse si dur? Eh bien, autre que le fait qu'il implique des équations simultanées non linéaires, il y a d'autres raisons aussi.

    Tout d'abord, il y a la possibilité très probable de multiples, parfois infinie, le nombre de solutions (comme indiqué ci-dessous). Comment votre bras choisir ce qui est optimal, en fonction des couples, avant la position du bras, l'angle de prise, etc.

    Singularités. un lieu d'accélération infinie, peut faire exploser des équations et / ou laisser des moteurs en retard (moteurs ne peuvent pas obtenir une accélération infinie).

    Enfin, les équations exponentielles prennent une éternité à calculer sur un microcontrôleur. Aucun point d'avoir des équations avancées sur un processeur qui ne peut pas suivre.

    Trop paresseux pour calculer la cinématique inverse vous-même?
    Regarde mes bras Robot Designer v1 dans Excel.


    Planification de mouvement
    la planification de mouvement sur un bras de robot est assez complexe donc je vais vous donner les bases.

    Supposons que votre bras de robot a des objets dans son espace de travail. comment le bras se déplacer dans l'espace de travail pour atteindre un certain point? Pour ce faire, supposons que votre bras de robot est un simple robot mobile naviguer dans l'espace 3D. L'effecteur traversera l'espace comme un robot mobile, sauf que maintenant il faut aussi assurer que les autres articulations et les liens ne sont pas en collision avec quoi que ce soit trop. Cela est extrêmement difficile à faire.

    Que faire si vous voulez que votre terminal effecteur du robot pour tracer des lignes droites avec un crayon? Obtenir pour aller du point A au point B en ligne droite est relativement simple à résoudre. Ce que votre robot doit faire, en utilisant la cinématique inverse, est d'aller à de nombreux points entre le point A et le point B. La motion finale sortira comme une ligne droite lisse. Vous ne pouvez pas seulement faire cette méthode avec des lignes droites, mais les courbes aussi. Sur les bras robotiques professionnels coûteux tout ce que vous devez faire est de programmer deux points, et dire au robot comment passer entre les deux points (ligne droite, plus vite possible, etc.). Pour en savoir plus, vous pouvez utiliser l'algorithme de front d'onde pour planifier cette trajectoire à deux points.


    Velocity (et plus de planification de mouvement)
    Calcul de la vitesse d'effecteur est mathématiquement complexe, donc je vais seulement dans les bases. La façon la plus simple de le faire est supposons que votre bras de robot (tenu droit) est une roue tournante de diamètre L. La joint tourne à un régime Y, donc par conséquent la vitesse est

      Vitesse d'effecteur d'extrémité sur le bras droit = ​​2 * pi * rayon * rpm

    Cependant, l'effecteur ne se contente pas de tourner autour de la base, mais peut aller dans plusieurs directions. L'effecteur final peut suivre une ligne droite ou courbe, etc.

    Dans l'image ci-dessous l'effecteur d'extrémité du bras de robot se déplace du point bleu au point rouge. Dans l'exemple haut, l'effecteur terminal se déplace sur une ligne droite. Ceci est le seul mouvement possible ce bras peut effectuer pour voyager en ligne droite. Dans l'exemple de fond, le bras est dit d'arriver au point rouge aussi vite que possible. Compte tenu de nombreuses trajectoires différentes, le bras va la méthode qui permet aux articulations de tourner le plus rapide.

    Supposons maintenant que vous voulez que votre bras de robot de fonctionner à une certaine vitesse de rotation, combien couple aurait un besoin commun? Tout d'abord, permet de revenir à notre FBD:

    Maintenant nous allons supposer que vous voulez faire tourner joint J0 180 degrés en moins de 2 secondes, ce couple ne le moteur besoin J0? Eh bien, n'est pas affectée J0 par gravité, donc tout ce que nous devons considérer est l'élan et l'inertie. Mettre ce sous forme d'équation, nous obtenons ceci:

    couple = moment_of_inertia * angular_acceleration

    briser cette équation en sous-composantes que nous obtenons:

    couple = (masse * distance ^ 2) * (change_in_angular_velocity / change_in_time)

    angular_velocity = change_in_angle / change_in_time

    Maintenant, en supposant au moment du démarrage 0 que angular_velocity0 est égal à zéro, nous obtenons

    couple = (masse * distance ^ 2) * (angular_velocity / change_in_time)

    où la distance est définie comme étant la distance entre l'axe de rotation vers le centre de masse du bras:

    centre de masse du bras = distance = 1/2 * (arm_length)
    (Utilisation de masse du bras)

    mais il faut aussi tenir compte de l'objet de votre bras tient:

    centre de masse de l'objet = distance = arm_length
    (Utilisation de masse de l'objet)

    Alors le calcul du couple pour les deux bras, puis de nouveau pour l'objet, puis ajoutez les deux couples ensemble pour le total:

    couple (of_object) + couple (of_arm) = couple (for_motor)

    Et bien sûr, si en outre a été affectée J0 par gravité, ajouter le couple nécessaire pour soulever le bras au couple nécessaire pour atteindre la vitesse dont vous avez besoin. Pour éviter de le faire à la main, il suffit d'utiliser la calculatrice de bras de robot.

    Mais il devient plus difficile. l'équation ci-dessus est pour un mouvement de rotation et non pas pour les mouvements en ligne droite. Consulter ce qu'on appelle un jacobien si vous aimez la douleur mathématique = P

    Une autre vidéo!
    Afin de mieux comprendre la dynamique du bras du robot, nous avions un bras de robot compétition de bowling en utilisant les mêmes bras de robot DENSO 6DOF comme dans la vidéo des horloges.

    Chaque programme d'équipe un bras pour faire deux tâches:
    • Essayez de placer trois de ses chevilles dans le but adverse
    • adversaire bloc piquets d'aller dans votre propre but

    Prendre plaisir! (Remarquez les différentes trajectoires de bras)

    bras affaissement
    l'affaissement du bras est une affection commune du bras de robot mal conçus. C'est quand un bras est trop long et lourd, flexion lorsque étiré vers l 'extérieur. Lors de la conception de votre bras, assurez-vous que le bras est renforcé et léger. Faites une analyse par éléments finis pour déterminer la déviation / contrainte de flexion tel que je l'ai fait sur mon robot ERP.

    Le problème est encore pire affaissement lorsque le bras oscille entre les mouvements stop-start. Le résoudre ce problème, mettre en œuvre un régulateur PID pour ralentir le bras vers le bas avant qu'il ne fasse un arrêt complet.

    Un bras de robot sans détection vidéo est comme une peinture d'artiste avec ses yeux fermés. En utilisant des algorithmes de rétroaction visuelle de base, un bras de robot pourrait aller d'un point à lui-même sans une liste des positions préprogrammées. Donner le bras une boule rouge, il pourrait en fait atteindre pour elle (suivi visuel et asservissements). Si le bras peut trouver une position dans l'espace X-Y d'une image, il pourrait alors diriger l'effecteur d'aller à ce même endroit X-Y (en utilisant la cinématique inverse). Si vous êtes intéressés à en apprendre davantage sur l'aspect de la vision des asservissements visuels, s'il vous plaît lire l'ordinateur Vision Tutoriels pour plus d'informations.

    détection haptique est un peu différent en ce qu'il est un être humain dans la boucle. L'homme contrôle les mouvements du bras de robot à distance. Cela pourrait se faire en portant un gant spécial, ou en actionnant un modèle miniature avec des capteurs de position. bras robotiques pour les amputés font une forme de détection haptique. A noter également, des bras de robots ont réinjecter des capteurs (tels que le toucher) qui obtient redirigé vers l'humain (vibrer le gant, joints de modèle de verrouillage, etc.).

    Comment construire un robot Tutoriels - Société de Robots


    Effecteur design
    Dans le futur, je vais écrire un tutoriel séparé sur la façon de concevoir des pinces du robot, car il faudra beaucoup plus de pages de documents.

    En attendant, vous pourriez être intéressé par la lecture du tutoriel pour le calcul de la friction et la force pour effecteurs terminaux robot.

    Je suis allé aussi pour des détails décrivant ma pince carte de bras de robot traitant.

    Quoi qu'il en soit, j'espère que vous avez apprécié ce tutoriel de bras de robot!

    Comment construire un robot Tutoriels - Société de Robots







    Articles Liés