modelisation
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
modelisation [2025/05/05 08:35] – mistert | modelisation [2025/05/20 06:24] (Version actuelle) – mistert | ||
---|---|---|---|
Ligne 31: | Ligne 31: | ||
**Robot Quincy** | **Robot Quincy** | ||
- | code pour la cinematique de alpha,beta vers x,y | + | {{ https:// |
+ | |||
+ | Bien régler dans model Settings la fonction de callback stopFunction et placer ceci: | ||
+ | |||
+ | {{ https:// | ||
+ | |||
+ | |||
+ | code Matlab | ||
<code matlab> | <code matlab> | ||
Ligne 61: | Ligne 68: | ||
</ | </ | ||
+ | Code pour la cinématique inverse: | ||
+ | |||
+ | <code matlab> | ||
+ | function [alpha, | ||
+ | |||
+ | a_x = -d/2.0; a_y = 0.0; | ||
+ | b_x = d/2.0; b_y = 0.0; | ||
+ | |||
+ | L_a = ((x-a_x)^2+(y-a_y)^2)^0.5 ; | ||
+ | L_b = ((x-b_x)^2+(y-b_y)^2)^0.5 ; | ||
+ | |||
+ | phi_a = atan2(y-a_y, | ||
+ | phi_b = atan2(y-b_y, | ||
+ | |||
+ | delta_a = acos(L_a/ | ||
+ | delta_b = acos(L_b/ | ||
+ | |||
+ | alpha=rad2deg(phi_a+delta_a); | ||
+ | beta=rad2deg(phi_b-delta_b); | ||
+ | </ | ||
+ | |||
+ | Admirez le résultat ! | ||
+ | |||
+ | {{ https:// | ||
+ | |||
+ | Il était aussi possible de faire la simulation su Excel: {{ https:// | ||
+ | |||
+ | **TRAVAIL ATTENDU** | ||
+ | Faire trois modèles: | ||
+ | - Un modèle qui teste les fonctions Matlab données ci-dessus avec les angles min,max pour $\alpha$ et $\beta$ | ||
+ | - Un modèle qui dessine la carte des positions pour le robot Quincy | ||
+ | - Un modèle qui montre sur un graphe XY le dessin d'un d'une ligne de (-50,150) à (50,150). | ||
+ | - Pour les plus motivés: représenter sur SolidWorks les bras en 3D les importer dans Matlab les commander ensuite angulairement pour dessiner un trait ou un cercle. | ||
modelisation.1746434143.txt.gz · Dernière modification : 2025/05/05 08:35 de mistert