UPJV, Département EEA Master 2 EEAII
Parcours ViRob
Fabio MORBIDI
Laboratoire MIS !
Équipe Perception et Robotique!
E-mail: [email protected]!
Semestre 9, 2015/2016
Salle TP101
Plan du cours
1ère partie: Perception avancée
2ème partie: Robotique mobile
Ch. 1: Introduction Ch. 2: Locomotion
Ch. 3: Décision et contrôle
Ch. 1: Perception pour la robotique
Ch. 2: Modélisation d’incertitudes
Ch. 3: Traitement des mesures
Ch. 2: Locomotion
Effecteurs et actionneurs
Partie 3
Partie 4 Partie 2 Partie 1
• Robots mobiles à jambes
• Robots mobiles à roues
• Robots mobiles aériens
Partie 3: Robots mobiles à roues
Contraintes non holonômes
Condition de roulement sans glissement (r.s.g.) d’une roue fixe
La roue roule sur le sol sans glisser (longitudinalement) ni déraper (latéralement), c.-à-d. la vitesse relative de la roue par rapport au sol au point de contact est nulle
Théoriquement, pour vérifier la condition de r.s.g.
il faut réunir les hypothèses suivantes:
• Le contact entre la roue et le sol est ponctuel
• Les roues sont indéformables, de rayon fixe r
• Le sol est parfaitement plan Remarques
•
En pratique, le contact se fait sur une surface• Hypothèse d’indéformabilité: fausse avec roues équipées de pneus
• Contact continu avec le sol: essentiel pour l’odometrie d’un robot
r
´oλoς ν ´oµ-oς
: holos “entière”
: nomos “loi”
Contraintes non holonômes
Condition de r.s.g.:
• La composante de la vitesse dans la direction de mouvement de la roue = la vitesse de roulement
• La composante de la vitesse dans la direction perpendiculaire au mouvement de la roue est zéro
v
n= 0
ϕ � ω
Q
� x
� y
� v
PP
OQ θ
x y
−
→ v
Q= − → v
P+ − → ω × −→
PQ = 0
: centre de la roue : point de contact de la roue avec le sol
�
ω
: vecteur vitesse de rotation de la rouer
P−
→ 0
: angle de rotation propre de la roue
Q = (x, y, 0) ϕ
P = (x, y, r)
Contraintes non holonômes
Condition de r.s.g.:
Si on utilize l’expression des points P et Q, on trouve:
Si on calcule le produit vectoriel, on a que:
( ˙ x + r ϕ ˙ cos θ) − → x + ( ˙ y + r ϕ ˙ sin θ) − → y = − → 0
Ceci nous donne le système de contraintes scalaires suivant:
˙
x + r ϕ ˙ cos θ = 0
˙
y + r ϕ ˙ sin θ = 0
On peut transformer ces contraintes pour faire apparaître les composantes de vitesse dans le plan de la roue d’une part et perpendiculairement à la roue d’autre part
˙
x − → x + ˙ y − → y + ( ˙ θ − → z + ˙ ϕ( − → x sin θ − − → y cos θ)) × ( − r − → z ) = − → 0
Contraintes non holonômes
(1) et (2) traduisent le fait que soit dans le plan de la roue et ait pour module : ils s’appellent contraintes non holonômes
En général, si on a un système de configuration
soumis à des contraintes indépendentes sur les vitesses, on peut les regrouper sous la forme (pfaffienne):
− x ˙ sin θ + ˙ y cos θ = 0
˙
x cos θ + ˙ y sin θ = − r ϕ ˙
S’il n’est pas possible d’intégrer l’une de ces contraintes, la contrainte est dite non intégrable ou non holonôme
A
T(q) ˙ q = 0 r ϕ ˙
−
→ v
Pq ∈ R
n(1)
(2)
Johann F. Pfaff (1765-1825)
“Contrainte de roulement”
“Contrainte de glissement”
Contraintes non holonômes
Remarques
• De manière concrète, l’existence de contraintes non holonômes implique que le système ne peut pas effectuer certains mouvements instantanément
• Par exemple, pour la roue fixe, pas de translation instantanée
parallèlement à l’axe de la roue: pour tel déplacement il faut faire des manoeuvres
• Il n’est pas possible de dire à priori si une contrainte est intégrable ou non.
Pour cela on recours au Théorème de Frobenius: en pratique, seul l’étude des “crochets de Lie” des colonnes de la matrice orthogonale à sur tout l’espace des configurations (c’est-à-dire, tel que ),
nous permet de déterminer le nombre de contraintes intégrables Ex. pour la roue fixe, le vecteur de configuration:
A(q) =
− sin θ cos θ cos θ sin θ
0 0
0 r
q = [x, y, θ, ϕ]
T,
[ · , · ]
B(q)A(q)
A
T(q) B(q) = 0
etr
v
n= 0
v
tan= r ϕ ˙
Centre instantané de rotation
Le Centre Instantané de Rotation (CIR) d’un robot mobile est le point d’intersection des lignes joignant les axes de rotation des roues
Le CIR est un point de vitesse nulle autour duquel turne le robot de façon instantanée
Pour toute disposition de roues, il est nécessaire que le CIR soit unique: pour cette raison, il existe en pratique 3 catégories principales de robots à roues
CIR
3 catégories principales de robots à roues
Robot mobile de type unicycle
◦ 2 roues fixes motorisées indépendantes
◦ 1 ou plusieurs roues folles (« castor » ou « caster ») pour assurer la stabilité
• Simplicité de construction
• Propriétés cinématiques intéressantes
• Très utilisé: ex. Pioneer P3, Khepera II, E-puck, Amigobot
θ
x y
� x
� y
q = [x, y, θ]
TVecteur de configuration:
Modèle cinématique en posture du robot de type unicycle
•
Vehicule Dubins:• Robot à conduite différentielle:
θ
: commande du robot (vitesse longitudinale et vitesse angulaire du robot)
˙
x = v cos θ
˙
y = v sin θ θ ˙ = ω
(v, ω)
x y
v = 1, ω ∈ [ − 1, 1]
r
: entre-axe des roues : rayon des roues : vit. angulaire roue droite
: vit. angulaire roue gauche
� x
� y
L
˙ ϕ
d˙
ϕ
gv
O’
˙ ϕ
d˙ ϕ
gv = r( ˙ϕg − ϕ˙d)
2 , ω = −r( ˙ϕg + ˙ϕd) 2L
3 catégories principales de robots à roues
2L
Robot à conduite différentielle et CIR
3 catégories principales de robots à roues
Rayon de courbure de la trajectoire du robot
Vitesse de rotation autour du CIR
Vitesse longitudinale
de la roue droite et gauche:
ce qui permet de determiner:
v
d= − r ϕ ˙
d= (ρ + L) ω
ρ = L
� ϕ ˙
d− ϕ ˙
g˙
ϕ
d+ ˙ ϕ
g�
Cette équation nous permet de situer le CIR sur l’axe des roues
Si le robot se déplace en ligne droite le robot fait une rotation sur lui-même Si
˙
ϕd = −ϕ˙g
˙
ϕd = ˙ϕg
ρ ω
Noter que:
v
g= r ϕ ˙
g= (ρ − L) ω
Robot mobile de type tricycle
◦ 2 roues fixes sur le même axe
◦ 1 roue centrée orientable
θ
ψ
• Angle de braquage (du train avant) limité
• Propriétés cinématiques similaires au robot unicycle
x y
� x
� y
O’
3 catégories principales de robots à roues
Vecteur de configuration:
q = [x, y, θ, ψ]
T
Modèle cinématique en posture du robot de type tricycle motorisé à l’avant
θ
ψ
x y
: commande du robot (vitesse longitudinale et
vitesse angulaire imposée à la roue orientable)
: distance entre le centre de la roue orientable et le centre de l’axe à l’arrière
D
D
� x
� y
O’
(u
1, u
2)
˙
x = u
1cos θ cos ψ
˙
y = u
1sin θ cos ψ θ ˙ = u
1sin ψ
ψ ˙ = u
23 catégories principales de robots à roues
u
1sin ψ
D
Dérivation du modèle cinématique en posture du robot de type tricycle motorisé à l’avant, à partir des contraintes de r.s.g.
θ
ψ
x y
Schéma simplifié (“Modèle télescopique”)
D
� x
� y
O’
3 catégories principales de robots à roues
� x
� y
(xf, yf)
v
n= 0
vnf = 0
Deux contraintes (de glissement):
�
� x ˙
˙ y
� ,
� − sin θ cos θ
�
� = ˙ y cos θ − x ˙ sin θ = 0
˙
y
fcos(θ + ψ) − x ˙
fsin(θ + ψ) = 0
“Roue” à l’arrière
Roue à l’avant (−sinθ, cosθ)
O’
θ
ψ
x
y D
� x
� y
O’
3 catégories principales de robots à roues
(xf, yf) Si on utilise les relations géométriques:
dans l’équation précédente, nous trouvons que:
(forme pfaffienne)
� x
f= x + D cos θ y
f= y + D sin θ
AT(q) ˙q =
� −sinθ cosθ 0 0
−sin(θ + ψ) cos(θ + ψ) Dcosψ 0
�
˙ x
˙ y θ˙ ψ˙
=
� 0 0
�
On remarque que les directions de mouvement instantanées réalisables sont les directions:
q ˙ ∈ ker(A
T(q))
ker(AT(q))
où indique le noyau de la matrice . Rappel que en général, pour une matrice : AT(q)
ker(M) � { x ∈ R
n: M x = 0 }
M ∈ Rm×n
(−sinθ, cosθ)
3 catégories principales de robots à roues
Si les colonnes de la matrice forment une base pour le noyau de la matrice , on peut écrire:
où est le vecteur des vitesses (commande), car dans l’espace des configurations du robot.
, en fait
On peut choisir par exemple (il n’y a pas une solution unique):
Donc on trouve le modèle cinématique pour le robot de type tricycle motorisé à l’avant:
AT(q)
˙
q = B(q) u
Im(B(q)) = ker(AT(q)), ∀q
B(q) =
cosθcosψ 0 sinθcosψ 0
sinψ
D 0
0 1
AT(q)B(q) = 0
˙ q =
˙ x
˙ y θ˙ ψ˙
=
cosθcosψ 0 sinθcosψ 0
sinψ
D 0
0 1
� u1 u2
� B
u
3 catégories principales de robots à roues
Exercice
1. Répéter les calculs précédents en considerant un robot tricycle motorisé à l’arrière.
Ça veut dire que la commande est maintenant:
a) u1 = 1 m/s, u2 = π/6 rad/s
b) u1 = 1 m/s, u2 = 0 rad/s
c) u1 = 0 m/s, u2 = π/6 rad/s
: vitesse longitudinale de la “roue” à l’arrière (centre de l’axe à l’arrière)
u = [u1, u2]T
u
1u
2 : vitesse angulaire imposée à la roue orientable2. Le modèle est valable partour dans l’espace des configurations ? q˙ = B(q)u
3. Créer un script Matlab (ou Matlab Simulink) qui fait déplacer le robot de la
configuration initiale en applicant les commandes suivantes pour 30 secondes (fixer D = 0.5 m dans tous les cas):
Solution q0 = [0, 0, π/4, 0]T
˙ q =
˙ x
˙ y θ˙ ψ˙
=
cosθ 0 sinθ 0 tanψ
D 0
0 1
� u1 u2
�
Deux roues avant: système de braquage différentiel
Les trajectories des roues du train avant n’ont pas le même rayon de courbure et les vitesses des roues sont aussi différentes (et liées, évidemment)
Faible manœuvrabilité
• Le robot de type tricycle n’est que rarement utilisé comme tel, car il n’est pas très stable
� x
� y
Braquage différentiel
3 catégories principales de robots à roues
• Plus répandu: robot mobile de type voiture (ou Ackerman)
Ex. Robot “Stanley”, 4 x 4 Volkswagen Touareg (Stanford Univ.)
O’
Equivalence entre le modèle de type voiture et tricycle
Pour l’existence d’un CIR unique, les roues du train avant nedoivent pas avoir la même orientation (ils ne doivent pas être parallèles)
Il faut figurer une roue virtuelle en plaçant la roue orientable du tricycle au centre de l’axe des roues avant de la voiture, orientée de sorte que le CIR reste inchangé
Noter que:
2L D
et que:
ψ
trψ
oψ
icot ψ
0− cot ψ
i= 2L D
cot ψ
tr= cot ψ
i+ L
D = cot ψ
0− L D
3 catégories principales de robots à roues
Roue virtuelle du tricycle
Robot omnidirectionnel: on peut agir indépendamment sur les vitesses (de translation selon les axes x , y , et de rotation
autour de l’axe z ) . Mouvement possible à tout moment en toute direction dans le plan du sol quelque soit l’orientation du robot autour de son axe vertical principal
◦ Par exemple 3 roues motrices décentrées orientables ou 3 roues sphériques disposées aux sommets d’un triangle équilatéral (voir la figure ci-dessous)
◦ D’un point de vue cinématique n’est pas possible avoir un robot omnidirectionnel avec des roues fixes ou des roues centrées orientables
θ
x y
� x
�
y
Modèle cinématique:
˙
x = u
1˙
y = u
2θ ˙ = u
3O’
: commande du robot
3 catégories principales de robots à roues
L
u = [u
1, u
2, u
3]
TRobots omnidirectionnels – cas d’étude
• 3 roues motrices décentrées orientables
Excellente manœuvrabilité
Nomad XR4000 Nomadic Tech.
(disparu en 2000)
Synchro drive: actionnement synchronisé des roues
◦ 3 roues orientables
◦ 2 moteurs pour:
Roulement des roues
Orientation des roues
moteur
« translation »
moteur
« orientation » roue
poulie « translation » poulie « orientation »
axe d’orientation de la roue
Axe de roulement
Robots omnidirectionnels – cas d’étude
Problème: l’orientation
du châssis du robot
n’est pas contrôlable
3 roues sphériques motorisées: robot « Tribolo » (EPFL)
◦ Manœuvrabilité excellente, conception simple
◦ Limité aux surfaces lisses et plates, et à une faible charge
Robots omnidirectionnels – cas d’étude
Tribolo sans les roues sphériques Les roues sphériques sont suspendues
par trois points de contact: deux par des maintiens sphériques et un par une roue connectée à un moteur
Moteur
• Quatre roues suédoises motorisées (robot « Uranus », CMU)
Robots omnidirectionnels – cas d’étude
4 roues suédoises 45o
Manœuvrabilité d’un robot
δ
M= δ
m+ δ
sDegré de
manœuvrabilité d’un robot
Degré de
mobilité Degré de dirigeabilité (“steerability”)
Degré de mobilité : nombre de DDL du châssis du robot qui peuvent être directement manipulés à travers des changements de vitesse des roues (contraintes de r.s.g. sur les roues)
δ
mDegré de dirigeabilité : nombre de DDL qui sont manipulés indirectement par le robot grâce au braquage des roues δ
sPlus la manœuvrabilité d’un robot mobile est élevée, plus il peut
réaliser de mouvements différents en un minimum d’étapes
Manœuvrabilité d’un robot: préliminaires
Pour relier le mouvement dans le repère global au mouvement dans le repère locale du robot, on a besoin de la matrice de rotation:
θ
x y
: position et orientation du robot dans le repère global
q
I= [x, y, θ]
Tx
Ix
Ry
Ry
IO
IO
R{ O
R, x
R, y
R}
: repère local du robot{ O
I, x
I, y
I}
: repère global (ou inertiel)R(θ) =
cos θ − sin θ 0 sin θ cos θ 0
0 0 1
(rotation élémentaire autour de l’axe z)On a donc:
˙
q
R= R
T(θ) ˙ q
IVitesse du robot dans le repère global Composants du mouvement
du robot le long des axes châssis du robot
xR, yR
Roue fixe ou centrée orientable
θ
x
Ix
Ry
Ry
I• Pour la roue fixe, , l’angle entre le bras et l’axe de la roue, est costante Remarque 1
Axe de la roue
Contrainte de roulement:
Contrainte de glissement:
[cos(α +β), sin(α + β), �sinβ]RT(θ) ˙qI = 0
[sin(α+β), −cos(α+β), −�cosβ]RT(θ) ˙qI − rϕ˙ = 0
α β
�
β
• Pour la roue centrée orientable, change au fil du temps ( )
β
β = β(t)Remarque 2
• Pour on retrouve les contraints de glissement et roulement de la rue fixe vues auparavant, à savoir
− x ˙ sin θ + ˙ y cos θ = 0
˙
x cos θ + ˙ y sin θ = − r ϕ ˙
α = π/2, � = 0, β = 0θ
x
Ry
R� = 0 r
˙ ϕ
Roue décentrée orientable
θ
x
Ix
Ry
Ry
ILe contrainte de roulement est le même que pour la roue fixe Remarque
Axe de la roue
Contrainte de roulement:
Contrainte de glissement:
[sin(α +β), −cos(α +β), −�cosβ]RT(θ) ˙qI − rϕ˙ = 0
α β
�
d
[cos(α+β), sin(α+β), d+�sinβ]RT(θ) ˙qI +dβ˙ = 0
d
r ϕ ˙
β ˙
Roue suédoise
Contrainte de roulement:
Contrainte de glissement:
θ
x
Ix
Ry
Ry
IIl n’y a pas un axe vertical de rotation
α β
�
[cos(α + β + γ ), sin(α + β + γ ), � sin(β + γ )] R
T(θ) ˙ q
I− r ϕ ˙ sin γ − r
swϕ ˙
sw= 0
[sin(α + β + γ ), − cos(α + β + γ ), − � cos(β + γ )] R
T(θ) ˙ q
I− r ϕ ˙ cos γ = 0
: angle de rotation entre le plan principal de la roue et l’axe de rotation des roulettes ( pour une roue suédoise à 45o)
γ
γ
γ = π/4
r
˙ ϕ
swr
sw: vitesse de rotation des roulettes : rayon des roulettes
˙
ϕsw
r
swZoom de la roue suédoise
r
: rayon de la roueRoue suédoise
• ; rue suédoise à 90o. La contrainte de roulement devient la contrainte de roulement de la roue standard fixe. Il n’y a pas des contraintes de glissement
Remarque (comportement variable en fonction de )
θ
x
Ix
Ry
Ry
Iα β
�
γ γ = 0
γ = π/2
• ; les axes des roulettes sont parallèles à l’axe de rotation de la roue. La contrainte de glissement devient la
contrainte de glissement de la roue standard fixe. La roue ne doit pas rouler car il y a les roulettes: la contrainte de roulement
disparâit. C’est un cas dégénéré: nous supposerons que
γ � = π/2
roue
roue roulette
Contraintes de glissement et roulement
• On peut écrire d’une façon compacte les contraintes de glissement et roulement pour toutes les roues standards d’un robot. Soit
Contraintes de glissement
N = N
f+ N
soNombre de roues fixes Nombre de roues centrées/décentrées orientables : Nso = Ns +No
avec
où
C
1(β
so) R
T(θ) ˙ q
I= 0
C1(βso) =
� C1f C1so(βso)
�
C
1f∈ R
Nf×3, C
1so(β
so) ∈ R
Nso×3β
so∈ R
Nso : vecteur des angles des roues orientablesContraintes de glissement et roulement
Remarque
• Seulement les roues standards ont un impact sur le calcul de la cinématique du châssis d’un robot
• Les roues suédoises ou sphériques n’imposent pas des contraintes cinématiques sur le châssis
Contraintes de roulement
où
J
1(β
so) R
T(θ) ˙ q
I− J
2ϕ ˙ = 0
J
1(β
so) =
� J
1fJ
1so(β
so)
�
avec J1f ∈ RNf×3, J1so(βso) ∈ RNso×3
J
2∈ R
N×N : matrice diagonale avec les rayons des rouesϕ = [ϕ
Tf, ϕ
Tso]
T∈ R
N : vecteur des angles de rotation propres des rouesManœuvrabilité d’un robot: formules
δ
M= δ
m+ δ
sDegré de
manœuvrabilité Degré de mobilité
Degré de dirigeabilité
• On peut montrer que:
δ
m= dim[ker(C
1(β
so))] = 3 − rank(C
1(β
so)) δ
s= rank(C
1so(β
so))
• Nous avons:
0 ≤ δ
m≤ 3 0 ≤ δ
s≤ 2
δ
s= 0 δ
s= 2
: pas des roues orientables
: possible seulement avec robots sans roues fixes
(Nso = 0)
(Nf = 0)
• Pour robots d’intérêt pratique, seulement 5 couples sont acceptables (elles assurent le mouvement du robot dans le plan):
• On parle alors de type de robot
Types base de robots avec 3 roues
(δ
m, δ
s)
3 2 2 1 1
0 0 1 1 2
δ
mδ
s(δ
m, δ
s)
2 ≤ δm +δs ≤ 3
En effet:
À cond. différentielle
Omnidirectionnel
Remarque: On peut replacer les roues sphériques avec des roues décentrées orientables
Manœuvrabilité d’un robot
Manœuvrabilité d’un robot
• Deux roues standards fixes de rayon
r
• N.B. La roue folle on peut l’ignorer dans notre analyse
Exemple 1 (robot à conduite différentielle)
x
Ix
Ry
Ry
IRoue folle
�
� ϕ
gϕ
d• Roue droite:
(note que un roulement positif produce un mouvement dans la direction )
• Roue gauche:
α = −π/2, β = π
α = π/2, β = 0
+x
R• Pas de roues orientables, donc:
J
1(β
so) = J
1f, C
1(β
so) = C
1f, ϕ = [ϕ
d, ϕ
g]
TVecteur des angles de rotation propres des roues (droite et gauche)
Manœuvrabilité d’un robot
• Les deux roues sont parallèles: on obtient seulement une équation indipéndante pour la contrainte de glissement
Exemple 1 (robot à conduite différentielle)
Donc, en conclusion:
(2 DDL du robot sont manipulables à travers des changements de la vitesse des roues)
Matrice diagonale 2 x 2 avec les rayon des roues
• La contrainte de roulement est:
C
1fR
T(θ) ˙ q
I= [0 1 0] R
T(θ) ˙ q
I= 0
δ
m= 3 − rank(C
1f) = 3 − 1 = 2 δ
s= rank(C
1so(β
so)) = rank(0) = 0 δ
M= δ
m+ δ
s= 2
J1f RT(θ) ˙qI −J2 ϕ˙ =
�1 0 � 1 0 −�
�
RT(θ) ˙qI −
�r 0 0 r
� �ϕ˙d
˙ ϕg
�
=
�0 0
�
Manœuvrabilité d’un robot
Exemple 2 (vélo à roues fixes)
ou de façon équivalente
• Deux roues standards fixes de rayon
r
x
Ix
Ry
Ry
I�
• Roue à l’avant:• Roue à l’arrière:
ϕa
ϕ
r�
α = 0, β = π/2 α = π, β = −π/2 α = −π, β = 3π/2
• Pas de roues orientables, donc:
Vecteur des angles de rotation propres des roues (à l’avant et à l’arrière)
J
1(β
so) = J
1f, C
1(β
so) = C
1f, ϕ = [ϕ
a, ϕ
r]
TManœuvrabilité d’un robot
Exemple 2 (vélo à roues fixes)
•
Contrainte de glissementRoue à l’avant:
[cos(α +β), sin(α +β), �sinβ]RT(θ) ˙qI = [cos(π/2), sin(π/2), �sin(π/2)]RT(θ) ˙qI
= [0 1 �]RT(θ) ˙qI = 0
Roue à l’arrière:
[cos(α +β), sin(α +β), �sinβ]RT(θ) ˙qI = [cos(π/2), sin(π/2), �sin(−π/2)]RT(θ) ˙qI
= [0 1 − �]RT(θ) ˙qI = 0
Conclusion:
C
1fR
T(θ) ˙ q
I=
� 0 1 � 0 1 − �
�
R
T(θ) ˙ q
I=
� 0 0
�
Manœuvrabilité d’un robot
Exemple 2 (vélo à roues fixes)
•
Contrainte de roulement Roue à l’avant:Roue à l’arrière:
Conclusion:
J1f RT(θ) ˙qI − J2ϕ˙ =
� 1 0 0 1 0 0
�
RT(θ) ˙qI −
� r 0 0 r
� � ϕ˙a
˙ ϕr
�
=
� 0 0
� [sin(α +β), −cos(α +β), −�cosβ]RT(θ) ˙qI − rϕ˙a
= [sin(π/2), −cos(π/2), −�cos(π/2)]RT(θ) ˙qI − rϕ˙a
= [1 0 0]RT(θ) ˙qI − rϕ˙a = 0
[sin(α +β), −cos(α + β), −�cosβ]RT(θ) ˙qI − rϕ˙r
= [sin(π/2), −cos(π/2), �cos(π/2)]RT(θ) ˙qI − rϕ˙r
= [1 0 0]RT(θ) ˙qI − rϕ˙r = 0
Manœuvrabilité d’un robot
Exemple 2 (vélo à roues fixes)
Donc on trouve que:
δ
m= 3 − rank(C
1f) = 3 − rank
�� 0 1 � 0 1 − �
��
= 3 − 2 = 1
δ
s= rank(C
1so(β
so)) = rank(0) = 0 δ
M= δ
m+ δ
s= 1 + 0 = 1
• Seulement 1 DDL du robot peut être directement manipulé à travers des changements de vitesse des roues
• Degré de mobilité plus petit par rapport au robot à conduite différentielle
0 comme pour le robot à conduite
différentielle: pas de braquage des roues !
Manœuvrabilité d’un robot
Exercice (vélo avec roue à l’avant orientable)
x
Ix
Ry
Ry
I�
ϕaϕ
r�
1. Montrer que
et commenter ce résultat en rapport avec l’Exemple 2
δ
m= δ
s= 1
2. Déterminer le degré de manœuvrabilité d’un vélo avec roue à l’avant fixe et roue à l’arrière orientable
β = βa(t)
◦ Relation inverse entre commandabilité et manœuvrabilité Exemple I : robot omnidirectionnel à 3 roues
décentrées orientables
La conversion des vitesses de rotation et de translation du robot en commande individuelle des roues demande un traitement important
Le robot est très manœuvrable, mais il est peu commandable
Commandabilité d’un robot
◦ Exemple II : déplacement rectiligne
Robot de type tricycle ou Ackerman
◦ Simple: bloquer les roues orientables et rouler
Robot unicycle (à conduite différentielle)
◦ Les deux moteurs des deux roues doivent fournir exactement le même profil de vitesse
◦ Difficile: variantes entre les roues et moteurs
Robot à 4 roues omnidirectionnelles (ex. Uranus)
◦ Très difficile: les quatre roues suédoises doivent avoir exactement la même vitesse pour que le robot suive une ligne droite parfaite
Commandabilité d’un robot
•
D’une manière générale, plus un robot mobile est manœuvrable, plus l’estimation de trajectoire à partir de la rotation des roues sera imprécise à cause des dérapages, glissements, etc.
• Plus la manœuvrabilité d’un robot mobile est élevée, moins le robot est commandable aisément, ne serait-ce que pour un
mouvement simple
• En résumé, il n’y a pas une configuration idéale pour la
locomotion à roues qui maximise simultanément la stabilité, la manœuvrabilité et la commandabilité
• Des tendances claires existent réalisant un compromis de ces trois problèmes
Stabilité, manœuvrabilité et commandabilité
Locomotion hybride
Jambes à roues
◦ Jambes
Meilleure manœuvrabilité en terrain brut
Inefficaces sur sol plat: commande sophistiquée
◦ Roues au bout des jambes pour combiner les avantages
Adaptation passive au terrain Ex. Suspension “rocker-bogie” des rovers d’exploration sur Mars Ex. Shrimp, EPFL
Six roues motorisées
Franchit de « grands » obstacles (ex. marches) Ex. Personal Rover, CMU
Franchit les obstacles en déplaçant le
centre de gravité avec un balancier
Shrimp
Personal Rover
Ch. 2: Locomotion
Effecteurs et actionneurs
Partie 3
Partie 4 Partie 2 Partie 1
• Robots mobiles à jambes
• Robots mobiles à roues
• Robots mobiles aériens
Partie 4: Robots mobiles aériens
Classification générale des engins aériens
Engin aérien
Plus léger que l’air Plus lourd que l’air
Non motorisé Motorisé
Ballon libre Dirigeable
Non motorisé Motorisé
Planeur
Voilure tournante Voilure battante
Autogire Multi-rotor
Autogire ou gyrocopter Quadrirotor
Voilure fixe (avion)
Quadrirotors
•
Très agile et manœuvrable• Robuste
• Autonomie limitée (15-25 min)
• Batteries spéciales (LiPo)
• Charge utile très limitée (max. 1 kg)
Quadrirotor: micro hélicoptère à quatre hélices
• Entrée de contrôle: vitesse angulaire des quatre hélices
• Configuration des moteurs: cross-flyer ou X-flyer.
Systèmes sur-actionnés ont été aussi recemment proposés (“holocopters” or “omnicopters”)
• Capteurs standards: gyroscopes, accéléromètres, magnétomètres à 3 axes
• Lois de contrôle non linèaires
“Quad Rotorcraft Control: Vision-Based Hovering and Navigation"
L. Carrillo, A. López, R. Lozano, C. Pégard, Springer, 2013
ω1
ω2
ω3
ω4
ω
iConfiguration cross-flyer
Pitch Roll
Quadrirotors
• Prix: 300 €
• Taille: 451 x 517 mm
• Moteurs: 4 brushless, 14.5W, 28500 RMP
• Poids à vide: 420 g
• No charge utile
• 2 cameras (avant et vers le bas)
• Max. vitesse enregistrée: 11 m/s
• Max. altitude enregistrée: 200 m
• Contrôle: smartphone
• Autonomie: 12 min
Parrot, AR.drone
Pelican, AscTec
• Prix: à partir de 5000 €
• Taille: 651 x 651 x 188 mm
• Moteurs: 4 brushless (sensorless), max. 160 W
• Poids à vide: 620 g
• Max. poids au décollage: 1650 g
• Rayon d'action: 1 km2
• Max. charge utile: 650 g
• Max. vitesse: 3-16 m/s
• Max. taux de montée: 8 m/s
• Autonomie: 15-20 min
• Prix: 600 €
• Longueur de la diagonale: 350 mm
• Batterie: 5200mAh LiPo
• Poids (batterie et hélices comprises): 1030 g
• Max. vitesse montée/descente: 6 m/s et 2 m/s
• Max. vitesse de vol: 15 m/s
• Autonomie: 25 min
Phantom 2, DJI
Quadrirotors
Vidéo DJI Phantom 2
Engins aériens à voilure fixe et dirigeables
• Pas très agiles
• Très fiables et robustes
• Bonne autonomie
• Charge utile elevée
• Contrôle relativement simple
• Lents et peu manœuvrables
• Stables (peu de vibrations: ok pour la surveillance)
• Bonne autonomie
• Contrôle facile
• Vent et turbulences peuvent être critiques
Predator, General Atomics
Dirigeable
Voilure
fixe Multi-rotor Voilure
battante Autogire Dirigeable
Coût énergétique 2 1 2 2 3
Coût du contrôle 2 1 1 2 3
Charge utile/volume 3 2 2 2 1
Manœuvrabilité 2 3 3 2 1
Vol stationnaire 1 3 2 1 3
Vol à basse vitesse 1 3 2 2 3
Vulnérabilité 2 2 3 2 2
VTOL (Vertical Take-off
and Landing) 1 3 2 1 3
Endurance 2 1 2 1 3
Miniaturisation 2 3 3 2 1
Usage à l’intérieur 1 3 2 1 2
Total 19 25 24 18 25
1 = mauvais, 3 = bon