Professional Documents
Culture Documents
Master 1 EII
Set settings
Set checkpoints
Stopping
Obstacle avoidance
<<Actor>> Clock
R esum e
Lutilisateur saisit un parcours depuis son PDA et le robot se d eplace le long de ce parcours Acteur Utilisateur Pr econdition Le robot est sous tension et conna t sa position Description 1) Le cas commence lorsque lutilisateur s electionne saisir parcours depuis son PDA 2) Lutilisateur saisit des points de parcours 3) Lutilisateur valide son parcours 4) Le syst` eme calcule les chemins optimaux entre chaque paire de points reli es du parcours 5) Le syst` eme actionne les servomoteurs des roues pour commencer a ` se d eplacer 6) Les servomoteurs notient le syst` eme au fur et a ` mesure de leur d eplacement 7) Le syst` eme lit p eriodiquement les donn ees de ses capteurs dobstacles et calcule sa position 8) Le syst` eme d etermine quil a termin e le parcours et commande a ` ses servomoteurs de se stopper 9) Les servomoteurs notient le syst` eme de larr et complet. Le cas est termin e. Alternative 7.1) Si le syst` eme nest pas arriv e` a destination, il recommence ` a l etape 5) en ciblant le prochain point de parcours Postcondition Le syst` eme est arriv e` a destination et attend le prochain parcours
Diagramme dactivit e
User System Timer
Use system
Wait
Create checkpoints
[Activate "optimise path"] [Activate "loop"] [Delete checkpoint] [Add checkpoint]
Show plan
[Validate checkpoint]
Compute path
Start
[Obstacle detected]
Move
Notify system
Stop
[Default] [Stop]
[End of path]
[Loop]
[No loop]
Wait
Page 2
GUI
1 System 1 1 1
droit
Wheel Actuator
User
1 Collision Sensor
1 Timer
1 <<Actor>> Clock
NavigationModel +idNextCP:Integer
1 1 1 1
Position +angle:Real
1 1 2
Path +loop:Boolean
1
CollisionSensor +obstacleDetected():Boolean
1..*
Obstacle
Triangle
Circle +radius:Real
Page 3
Diagramme d etats-transitions
Idle
[Checkpoints entered / Store checkpoints] [Stopped / Stop timer]
Stopping
Computing Path
[Path computed / Store path, Start timer] [After(Elapsed Time)] [End of path]
[Stop]
Suspending
[Obstacle] [Else]
Moving
Reading Sensor
Diagramme de s equence
: GUI : NavigationController : NavigationModel : WheelActuator : Timer : CollisionSensor
Loop
update(nextCheckpoint)
setSpeed(speed)
notify()
getOdometry()
obstacleDetected()
stop()
setSpeed(0)
Page 4