Académique Documents
Professionnel Documents
Culture Documents
rouesswervespourtouslesquipesFRC
.
(Janvier2016)
FlixThibaultGigure(secondaire5)
FlixGiffard(secondaire3)
volution2626
SminairedeSherbrooke
Questcequuneroueomnidirectionnelle(swerve)?
Uneroueomnidirectionnelle(swerve)estunerouespciale.Nonseulement
ellepeutavanceretreculer,maisellepeutgalementpivotersurellemme.Cela
permetunebasederobotdepouvoirsedplacerdavantarriremaisaussisurles
cts.Comparesauxrouesmecanums,quisontreconnuestraversFIRST
,ces
rouesontlavantagedegardertouteleuradhrence,cequinousempchedenous
fairebousculerparlesautresrobots.
Uneroueomnidirectionnelletellequ'achetechezAndyMark
(figure0.1)
,
comportedeuxmoteurs.Lundecesmoteurspermetdefaireavanceretreculerla
roueetlautrefaitpivoterlarouesurellemmeprcismentgrceunencodeur
linaire.
PendantlasaisonmorteentreRecycleRush
etStronghold
,lquipe
sm
sm
volution2626faitl'acquisitiondunensemblederouesomnidirectionnelles.Aprs
plusieursheuresderecherche,lquipenatrouvaucuneprogrammationLabView
venantdedautresquipes.Doncnousavonsessaydetrouverunefaondefaire
marchercesrouesparnousmmes.
Nousavonstravaillplusde50heuresenquipe.Nousavonsfaitune
programmationdecequenousavonsjugleplusutile,fairefonctionnerleroboten
crabeprcismentavecseulementunjoystickcommecela
:
Laprogrammation
Voicicommentfaire,sivousvoulezlutiliser.Pourcommencer,veuillez
initialiserleshuitmoteurs,sparmentidalement.Initialisezaussilamanetteetles
encodeurs.Ensuite,allerdanslemodeteleopetrappelerdabordtoutvos
encodeurs,manetteetmoteur.initipour4des8moteursuneconduiteTank.
Pourlamanette,ilfautdabordfairelaformuledepythagoredes2axespour
trouverlaforcequonveutdonnerauxmoteursquiavance(tellemontrerparlafigure
1.2)Pourcefaire,calculezlecarrdesdeuxaxesdelamanette(
axes0et1
).Puis
additionnezlersultatdesdeuxquationetfaiteslaracinedelasomme.Branchez
lersultatdanslesmoteursdanslesdeuxaxesdelaconduiteTank.(Librairie
fournieparFIRST)
2
2
((axe0)
+(axe1)
)
Pourtrouverlangle,onutiliselecosinusdansuntrianglerectangle.Dabord,
ilfautreprendre
laxe0
etlediviserparlersultatdelargledepythagoreobtenu
plustt.EnsuiteprendrelersultatetfairesonarcCosinus.Maintenant,nousavons
langle,maisenradiansetnonendegrsdonc,ilfautlemultiplierpar180etle
diviserpar
.
1
(Cos
(axe0/puissance)*180)/
Mais,maintenant,ilfautfairelesngatifs,carcetterelationnousdonne
seulementunrsultatpositif.Ilfautsimplementlemultiplierpar1si
laxe1
est
ngatifet1sicestpositif.Finalement,pourremettrelangleentre0et360aulieude
180et180ilfautadditionnerlersultatpar180.
Ensuitepourtrouverlangledelencodeur,ilsuffitdediviserparlenombrede
rayondelencodeuretlediviserparleratiodesroues.Parexemple,danslecas
delensembledeAndyMark
,lencodeura497rayonpartouretleratiodes
engrenagesestde1:1.2doncondiviselavaleurdelencodeurpar497etensuite
par1.2.Finalement,pourempcherquelerobotaiedesvaleursplusgrandesque
360,doncdesvaleursimpossiblespourlui,ilfautprendrelerestedeladivisionde
celuicipar360.
Finalement,ilfautrelierlesdeuxangles.Pourtreleplusefficace,ilfaut
trouverlecheminlemoinslongentrelavaleurdujoysticketcelledelencodeur.
PourcefaireilfautpenserquilyadeuxfaonsdallerdunpointAunpointB
(tel
quedmontrfigure1.3)
.Dabordilyalamanireenpassantpar0etcellene
passantpaspar0.Cellequinepassepaspar0estsimple.Ilfautseulement
soustrairelangledujoystickparlangledelencodeur.Maisenpassantpar0cest
pluscomplexe.Voicilaformulesilangledujoystickserait
j
etlanglede
lencodeur
e
:
4
(je)+sign((je))*360
Autrementdit,ilfautadditionnerladiffrenceentrelejoysticketlencodeurparle
signdelinversedeladiffrenceentrelejoysticketlencodeur,multiplipar360.
Signestunefonctionquitransformetoutnombrepositifen1ettoutnombrengatif
en1.
Ensuitetrouverlepluspetitchemindesdeux(nepasoublierdemettrelesrsultats
envaleursabsolues).Finalement,diviserlepluspetitparunnombre(nous
recommandons:100)etlenvoyeraumoteur.
Rpterlaprogrammationpourlestroisautresroues.(assurezvousde
mettrelesbonsnomsdencodeursetdemoteurs)
vido/animationjoystick
PS.Sivousvoulezquelesrouesrestentenplacelorsquelamanetteestaurepos,
prenezlamesuredelaloidepythagorefaitepourtrouverlapuissancedesmoteurset
mettrequesielleestentre0,25et0,25ladonneenvoyeauxmoteursquipivotentlaroue
gale0.