Table des matières:
- Étape 1: Obtenir des matériaux
- Étape 2: préparer le matériel
- Étape 3: Assembler les matériaux
- Étape 4: Programmation
- Étape 5: Testez
- Étape 6: affinez et amusez-vous
Vidéo: Plateforme Stewart à équilibrage de balle contrôlé par PID : 6 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:08
Motivation et concept général:
En tant que physicien en formation, je suis naturellement attiré et cherche à comprendre les systèmes physiques. J'ai été formé pour résoudre des problèmes complexes en les décomposant en leurs ingrédients les plus basiques et essentiels, puis en reconstruisant le problème à partir de là. Bien que j'aie appris la mécanique et l'électromagnétisme à partir des premiers principes, je ne les ai pas encore utilisés dans une application physique. J'aurai enfin cette opportunité en créant un robot qui utilise la théorie des commandes automatiques pour équilibrer de manière autonome une balle sur une plate-forme plate et entièrement contrôlée, tout seul !
Dans ce mode d'emploi; qui est destiné au hacker, programmeur ou ingénieur techniquement averti, nous utiliserons un Arduino Uno comme plate-forme de microcontrôleur. La boucle de rétroaction fermée commence d'abord lorsqu'elle détecte la position d'un roulement à billes en métal solide posé sur un écran plat résistif tactile, qui renvoie la position immédiate des billes. Cette position est ensuite introduite dans un contrôleur proportionnel-intégral-dérivé (PID), que nous avons programmé dans l'Arduino Uno. J'ai rendu ce code open source et lié dans le projet. Le contrôleur est chargé de restaurer la balle dans n'importe quelle position choisie par l'utilisateur sur la table, même lorsqu'elle est considérablement perturbée. La plate-forme de support structurelle que nous utiliserons est connue sous le nom de « plate-forme Stewart » et est soutenue par six bielles indépendantes entraînées par des servomoteurs qui fourniront jusqu'à six degrés de liberté; Translations X, Y et Z, roulis, tangage et lacet (rotations autour des axes X, Y et Z respectivement). Construire et programmer une plate-forme aussi hautement mobile présente ses propres défis, donc pour ce projet, nous n'utiliserons que les degrés de liberté de tangage et de roulis, laissant les autres comme des mises à niveau facultatives de fonctionnalités, si l'utilisateur le souhaite. Avec la plate-forme déplaçant la balle vers n'importe laquelle d'un ensemble de positions statiques définies par l'utilisateur, les programmeurs avancés trouveront facile d'améliorer le programme et d'ajouter du panache en remplaçant notre position statique définie par l'utilisateur, par une trace semi-continue d'un utilisateur chemin défini, comme un huit, une trajectoire circulaire, votre nom en cursive, ou mon préféré un flux en direct du stylet ou du doigt de quelqu'un sur son propre appareil mobile ! Bon piratage !
Étape 1: Obtenir des matériaux
Les matériaux nécessaires:
1. Quelques feuilles d'acrylique 1/4" et 1/8"
2. 6 - Servomoteurs (nous avons utilisé les servomoteurs HS5485HB)
3. 6 - Bielles filetées (réglables)
4. 6 - Servo-bras usinés CNC avec plusieurs trous pour l'ajustement
5. 12 - Embouts à rotule Heim Joint
6. 6 - Tiges (Réglables)
7. 1- Kit USB de panneau d'écran tactile résistif à cinq fils de 17 pouces (détection de la position du roulement à billes)
Étape 2: préparer le matériel
La meilleure façon d'obtenir la coupe acrylique est d'utiliser une caméra laser. L'accès à l'un peut être difficile, de sorte que l'acrylique peut également être facilement coupé à l'aide des outils de coupe que vous connaissez, correctement formés et que vous pouvez utiliser en toute sécurité. Si je faisais cela à la maison, par exemple, j'utiliserais une scie à chantourner à main. La forme générale de la plate-forme Stewart n'a pas besoin de correspondre exactement au modèle que j'ai construit. Cependant, je tiens à souligner quelques possibilités de simplification. Premièrement, il est beaucoup plus facile de mapper les degrés de liberté de tangage et de roulis en utilisant trois bases, au lieu des deux standards. cela se fait en faisant de la fixation des bielles à la plate-forme elle-même un triangle équilatéral. Cela vous permet de négliger toutes les complications liées à la recherche des degrés de liberté (DOF) en tangage et en roulis (DOF) à partir de zéro, à la place, nous utilisons 3 "bases" non linéairement indépendantes qui sont simplement la carte de ce coin du triangle qui monte. Ce serait difficile pour vous ou moi d'écrire des coordonnées dans cette base, mais l'interdépendance de ces bases est facilement gérée par le code. Cette hypothèse simplificatrice est essentielle pour négliger toutes les subtilités de la géométrie. Voir l'image graphique MS Paint et l'image du tableau blanc pour plus de détails.
Une fois les pièces coupées, vous devrez percer tous les trous, là où vos bielles et rotules se connectent. Veillez à faire correspondre la taille du trou au matériel approprié que vous utilisez. Ceci est essentiel pour que les fixations que vous avez choisies fonctionnent. Les tailles de trous sont basées sur la taille de taraud dont vous aurez besoin pour votre fixation. Pour ce faire, recherchez une référence en ligne pour la taille de taraud, le pas et le type de filetage spécifiques (fin vs cours). Je recommande bien sûr des fils pour l'acrylique, mais si vous devez utiliser du fil fin, cela devrait fonctionner, puisque c'est ce que nous avons utilisé de toute façon. Il est maintenant temps de passer à l'assemblage.
Étape 3: Assembler les matériaux
Assemblez soigneusement les matériaux selon les spécifications. Faites particulièrement attention à ne pas dénuder les vis. Une fois cela fait, vous devrez soit changer le matériel en dimensionnant et en perçant des trous plus gros et en les tapotant, soit vous devrez couper un tout nouveau morceau d'acrylique. A noter également de faire attention à l'écran tactile résistif. C'est fragile !!! C'est une fine couche de verre après tout. Notez que nous avons eu un accident nous-mêmes.
Étape 4: Programmation
La programmation peut prendre un certain temps. C'est là que vos compétences en programmation peuvent vraiment porter leurs fruits. Vous n'avez pas besoin d'être capable d'écrire le code à partir de zéro, mais si vous pouvez trouver un code source bien commenté et organisé à modifier, cela rend la vie beaucoup plus facile. Voici le lien vers notre code source: https://github.com/a6guerre/Ball-balanced-on-Stew…, servez-vous ! Il n'est certainement pas optimisé, mais a fait le travail ! N'oubliez pas que nous utilisons trois bases distinctes non orthogonales et non linéairement indépendantes pour la carte des contrôles. Nous lisons simplement tout en x, y et mappons sur A, B et C. Cette réponse est ensuite réglée globalement pour ajuster à quel point nous voulons que le système réponde plus ou moins.
Étape 5: Testez
Ici, nous testons les degrés de liberté. Notez maintenant comment nos trois bases rapportent ! Par exemple, pour obtenir le DOF en roulis, on descend simplement d'une unité à gauche, en remontant d'une unité à droite, et inversement pour l'autre sens. Il est également important d'avoir suffisamment bien filtré le bruit de votre écran tactile. Ceci est vital pour avoir de bonnes données à alimenter dans votre PID.
Étape 6: affinez et amusez-vous
La phase de test était vraiment juste pour éliminer les bugs. Ici, nous nous concentrons sur le réglage fin du système de contrôle. cela se fait mieux avec un algorithme prédéfini. Mon préféré est de l'aborder comme un problème d'amortissement critique, Ahem ! Je suis physicien ! Donc, vous désactivez le terme d'amortissement ! C'est-à-dire le terme dérivé, qui agit comme un terme de traînée. Maintenant, la balle va osciller sauvagement ! Cependant, l'objectif est d'obtenir des oscillations aussi proches que possible de l'harmonique, sans croître ni décroître, du mieux que vous le pouvez. Une fois cela fait, vous activez le terme dérivé et ajustez jusqu'à ce qu'il revienne à l'équilibre le plus rapidement possible. C'est à ce moment-là que l'amortissement critique est atteint. Cependant, si cela ne fonctionne pas, il existe de nombreux autres schémas de réglage bien éprouvés pour les systèmes contrôlés par PID. J'ai trouvé ceci sur wikipedia, sous le contrôleur PID. Merci beaucoup d'avoir jeté un coup d'œil à mon projet, et s'il vous plaît contactez-nous pour toutes vos questions, je serai heureux de répondre à toutes vos questions. Note spéciale: je tiens à souligner que ce projet du début à la fin a été réalisé par le Miracle Max Guerrro, et moi-même en un peu moins de quatre semaines, dont deux semaines d'attente pour un nouvel écran qui était coincé dans les douanes, après notre premier fauché. Alors s'il vous plaît excusez-vous, c'est loin d'être une performance parfaite. Bon piratage !
Conseillé:
Balle-balle de tennis de table à LED : 16 étapes (avec photos)
Balle de tennis de table à LED : histoire Après avoir construit un panneau plat de balles de tennis de table il y a quelque temps, j'ai commencé à me demander s'il serait possible de faire un panneau 3D à partir de balles de tennis de table. Combiné avec mon intérêt pour la création "art" à partir de formes géométriques récurrentes je
Plateforme 6DOF Stewart : 5 étapes
Plate-forme 6DOF Stewart : La plate-forme 6DOF Stewart est une plate-forme robotique qui peut s'articuler en 6 degrés de liberté. Généralement construit avec 6 actionneurs linéaires, cette mini version réduite utilise 6 servos pour simuler le mouvement d'actionnement linéaire. Il y a les trois lignes
Robot à équilibrage automatique utilisant l'algorithme PID (STM MC): 9 étapes
Robot à équilibrage automatique utilisant l'algorithme PID (STM MC) : Récemment, de nombreux travaux ont été effectués sur l'équilibrage automatique des objets. Le concept d'auto-équilibrage a commencé avec l'équilibrage du pendule inversé. Ce concept s'est également étendu à la conception d'avions. Dans ce projet, nous avons conçu un petit mod
Plateforme Stewart - Flight Simulator X : 4 étapes
Plate-forme Stewart - Flight Simulator X : El proyecto consta del control de movimiento de una plateforma Stewart, el cual está dictado por los movimientos de un avión dentro de un juego de video llamado Flight Simulator X. Mediante el enlace de estos dos a través de un
Jeu de plateforme contrôlé par Arduino avec joystick et récepteur IR : 3 étapes (avec photos)
Jeu de plateforme contrôlé par Arduino avec joystick et récepteur IR : aujourd'hui, nous allons utiliser un microcontrôleur Arduino pour contrôler un simple jeu de plateforme basé sur C#. J'utilise l'Arduino pour prendre l'entrée d'un module de manette de jeu et envoyer cette entrée à l'application C # qui écoute et décode l'entrée sur un Serial c