You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Current »

Robot arm kontrolleren gir ut verdier fra 0 til 1023 for 0 til 360 grader

samtidig som at RoboDk simulasjonen tar imot vinkler fra - 2*PI til 2*PI for 2 rotasjoner.

Dette gjør at vi må bruke en skaleringsfunksjon for å få outputen til robot arm kontrolleren tilpasset inputen til UR-roboten.



Skalering funskjonen



For dette prosjektet blir det brukt 3 skalerings fonksjoner for hver encoder input for å utnytte fullt at robotoen har mulighet til å gjøre 2 hele omdreininger.

Med kunn en skaleringfunksjon hadde vi fått problemer på grunn av at i tilfellet hvor robot arm kontrolleren gikk 1 posisjon fra å levere 1023 til 0, for en absolut encoder, ville UR roboten rotert fra  negativ PI til PI. 

Bildet under viser et utklipp av hvordan problemet blir håndtert i CodeSys.

Vi oppretter en initialtilstand og tilstand for når encoderen har gått fra 1023 til 0 og en annen tilstand for når encoderen har blitt rotert den andre veien og går fra 1023 til 0.


Hver av disse tilstandene har egen skaleringfunksjon for posisjonssignal fra encoder.


I initialtilstanden blir 0 til 1023 skalert til negativ PI til PI.

I tilstanden, for etter en utført omdreinging fra 1023 til 0, blir 0 til 511 skalert til PI til 2 PI. 

I tilstanden, for etter en utført omdreinging fra 0 til 1023, blir 512 til 1023 skalert fra negativ 2 PI til negativ PI .


Det er også blitt laget endestoppfunksjon ettersom at UR5e roboten ikke går lenger enn fra -2 PI til 2 PI . 







  • No labels