Table des matières:

Robot SCARA : apprentissage de la cinématique directe et inverse !!! (Plot Twist Apprenez à créer une interface en temps réel dans ARDUINO en utilisant PROCESSING !!!!): 5 étapes (
Robot SCARA : apprentissage de la cinématique directe et inverse !!! (Plot Twist Apprenez à créer une interface en temps réel dans ARDUINO en utilisant PROCESSING !!!!): 5 étapes (

Vidéo: Robot SCARA : apprentissage de la cinématique directe et inverse !!! (Plot Twist Apprenez à créer une interface en temps réel dans ARDUINO en utilisant PROCESSING !!!!): 5 étapes (

Vidéo: Robot SCARA : apprentissage de la cinématique directe et inverse !!! (Plot Twist Apprenez à créer une interface en temps réel dans ARDUINO en utilisant PROCESSING !!!!): 5 étapes (
Vidéo: Modèle Géométrique Inverse par la Méthode de Paul 2024, Novembre
Anonim
Image
Image
Robot SCARA: apprentissage de la cinématique directe et inverse !!! (Plot Twist Apprenez à créer une interface en temps réel dans ARDUINO en utilisant PROCESSING !!!!)
Robot SCARA: apprentissage de la cinématique directe et inverse !!! (Plot Twist Apprenez à créer une interface en temps réel dans ARDUINO en utilisant PROCESSING !!!!)
Robot SCARA: apprentissage de la cinématique directe et inverse !!! (Plot Twist Apprenez à créer une interface en temps réel dans ARDUINO en utilisant PROCESSING !!!!)
Robot SCARA: apprentissage de la cinématique directe et inverse !!! (Plot Twist Apprenez à créer une interface en temps réel dans ARDUINO en utilisant PROCESSING !!!!)

Un robot SCARA est une machine très populaire dans le monde de l'industrie. Le nom signifie à la fois le bras de robot d'assemblage conforme sélectif ou le bras de robot articulé conforme à la sélection. Il s'agit essentiellement d'un robot à trois degrés de liberté, étant les deux premiers déplacements en rotation dans le plan XY et le dernier mouvement est effectué par un curseur dans l'axe Z à l'extrémité du bras. Les deux degrés de liberté ont été prévus pour offrir plus de précision; néanmoins, en raison de la qualité des servos dont nous disposons, le bras intégré n'avait pas autant de mobilité qu'on pourrait s'y attendre en raison de ses deux degrés de liberté. La partie électronique est facile à comprendre. C'est quand même difficile à construire. Comme le bras a besoin de trois actionneurs, nous avons trois canaux. Au lieu de programmer avec l'interface Arduino commune, nous avons décidé d'utiliser Processing, qui est un logiciel très similaire à celui d'Arduino.

Fournitures

Nomenclatures: Afin de construire le prototypage, plusieurs matériaux ont été utilisés, dans la liste suivante, tous ces matériaux sont mentionnés:

  • 3 servomoteurs MG 996R
  • 1 Arduino Uno
  • MDF (3 mm d'épaisseur)
  • Courroies de distribution profil GT2 (pas de 6 mm)
  • Époxy
  • Écrous et boulons
  • 3 roulements

Étape 1: Le prototype

Le Prototype
Le Prototype
Le Prototype
Le Prototype

La première étape consistait à créer le modèle dans un logiciel de CAO dans ce cas, Solid Works est un très bon logiciel pour cela, une autre option peut être Fusion 360 ou un autre logiciel de CAO de votre préférence. Les images jointes à l'étape 1 étaient le premier prototype en raison d'une erreur diverse que nous devons modifier, et nous nous retrouvons avec le Model Show dans la vidéo et l'introduction.

Laser Cut a été utilisé pour faire le prototype, je n'ai pas de vidéo du processus de fabrication, mais j'ai les fichiers que j'ai utilisés. La partie la plus importante de ce projet est le codage de l'interface afin que vous puissiez créer votre propre modèle et utiliser notre code dans votre propre robot SCARA.

Étape 2: Connexions des moteurs

Connexions moteurs
Connexions moteurs

L'électronique est simple comme cuire des céréales. Connectez simplement tout comme indiqué sur l'image (dans le code principal, le signal envoyé aux servos provient des broches (11, 10 et 11))

Étape 3: comprendre la cinématique d'avance et d'inversion

Comprendre la cinématique directe et inverse
Comprendre la cinématique directe et inverse
Comprendre la cinématique avant et inverse
Comprendre la cinématique avant et inverse
Comprendre la cinématique avant et inverse
Comprendre la cinématique avant et inverse
Comprendre la cinématique directe et inverse
Comprendre la cinématique directe et inverse

Cinématique avant

Le fonctionnement du code pour les trajectoires est le suivant: Après avoir sélectionné ce mode, vous devez sélectionner une forme à dessiner. Vous pouvez choisir entre Ligne, Triangle, Carré et Ellipse. En fonction de la sélection, une variable est modifiée qui fonctionne alors comme un argument « cas » pour un type de sélection programmé plus tard dans la séquence. Grâce à la flexibilité du traitement, nous pouvons interagir avec l'interface avec des commandes connues de Windows et d'autres systèmes d'exploitation, ce qui permet d'attribuer la position du curseur (souris) à une variable au sein du programme, qui, grâce à la connexion à Arduino, commande les servomoteurs quels angles conduire dans quel ordre.

L'algorithme de dessin peut être réduit dans le pseudocode: attribuer une valeur à x1, y1 attribuer une valeur à x2, y2 calculer la différence entre x1 et x2 calculer la différence entre y1 et y2 calculer les points par lesquels passera le bas (triangle, carré, cercle) (la géométrie est utilisée avec ces deux points) si (botondibujar == vrai) séquence complète dans le cas de l'enregistrement, les variables envoyées au servomoteur sont enregistrées dans un tableau de 60 unités, qui en appuyant sur le bouton 'enregistrer' nous permettent de sauvegarder les données obtenues avec n'importe quel mode (Manuel, Avant, Inverse, Trajectoires) puis être répliquées lorsque vous appuyez sur le bouton de démarrage avec un simple changement de variable.

Cinématique inverse

Le problème de cinématique inverse consiste à trouver les entrées nécessaires pour que le robot atteigne un point sur son espace de travail. Compte tenu du mécanisme, la quantité de solutions possibles pour une position souhaitée peut être un nombre infini. Le robot que nous avons construit est un mécanisme sériel à deux degrés de liberté. Après une analyse géométrique, deux solutions ont été trouvées pour ce mécanisme particulier. Figure 13. Exemple de cinématique inverse Où: θ1 et θ2 sont les angles d'entrée des deux robots à mécanisme série DoF et X1 et X2 sont la position dans le plan de l'outil dans le bras final. D'après l'image ci-dessus:

Il existe aussi une configuration coude UP, mais pour les besoins du programme qui a été écrit, il n'a été utilisé que la configuration coude VERS LE BAS. Une fois les angles d'entrée trouvés, cette information s'exécute sur le programme de cinématique directe et la position souhaitée est atteinte avec une erreur de moins d'un centimètre due aux servos et aux courroies.

Étape 4: Mode manuel, trajectoire et apprentissage

Mode manuel, trajectoire et apprentissage
Mode manuel, trajectoire et apprentissage
Mode manuel, trajectoire et apprentissage
Mode manuel, trajectoire et apprentissage
Mode manuel, trajectoire et apprentissage
Mode manuel, trajectoire et apprentissage

Manuel

Pour ce mode, il vous suffit de déplacer le mause dans l'interface et le robot suivra le pointeur de l'interface, vous pouvez le programmer dans une programmation qui est une plate-forme géniale

Trajectoires Pour ce modèle nous utilisons les ressources de la cinématique inverse et réalisons les figures demandées par le client qui était un: Ligne Droite Triangle carré Cercle Les figures peuvent être dessinées sur l'interface avec les formes que vous souhaitez. La trajectoire utilise le mode inverse pour calculer chaque point des lignes de chacun des chiffres afin qu'il soit facile de suivre les chiffres lorsque vous cliquez sur play après avoir dessiné le chiffre que vous avez mis en entrée dans l'interface

Mode d'apprentissage

Le mode d'apprentissage prend en compte tous les autres modes que sont le manuel, l'avant, l'inverse et les trajectoires. exactement.

Étape 5: Le code

Le code
Le code

En fait, le code est un peu difficile à expliquer, j'ai donc laissé le code pour que vous puissiez le lire. Si vous avez des doutes à ce sujet, vous pouvez demander dans les commentaires et je vous expliquerai (je mettrai à jour cette étape avec une explication complète de le code soyez patient) pour le moment vous pouvez m'envoyer un mail en cas de doute: [email protected]

Conseillé: