$24
Prerequisites
In order to deepen your understanding of motion planning for serial robot arms, we continue using the V-REP simulation environment [1]. A predefined V-REP scene is provided on MarkUs. The scene is depicted in Figure 1. Copy the V-REP scene to ’/{V-REP-Installation-Destination}/scenes/’. Throughout this assignment, you will implement a motion planner for a serial robot arm.
Part I: Probabilistic Complete Motion Planning
(80 points)
The task is to implement a probabilistic complete motion planner as presented in the lecture, which determines a sequence of configurations to move the robot from a start position to a desired goal position in the provided V-REP scene AssignmentIII.ttt (see Figure 1). You can decide which probabilistic complete motion planner you want to implement. Please note, that even though the scene is static, you are also welcome to implement a motion planner which is typically used for dynamic environments (single-query).
You can build upon your code framework from Assignment II to implement the following additional functions for this
Assignment:
planMotion gets a start and goal robot configuration as input and determines a sequence of collision free robot configurations using the probabilistic complete motion planning method of your choice
isCollisionFree checks whether the input robot configuration is collision free and returns true if no collision is detected and false otherwise. Hint: The V-REP API provides functionalities to check distances between objects in the scene that you can use to realize your collision checker.
sampleRobotConfiguration returns a randomly sampled robot configuration respecting its joint limits
runConfigurationSequence sends a sequence of robot configurations (determined by planMotion) to V-REP using the API
Figure 1: Scene with Mico robot from Kinova Robotics Inc. in its home position in an environment with target positions.
2 of 3
To test your motion planner, a set of five color-coded desired robot positions is provided in Table 1. You can choose any pair to query the motion planner, where one acts as the start configuration and one acts as the goal configuration. Choose as least five distinct pairs to demonstrate that your motion planner works.
In the provided V-REP scene (AssignmentIII.ttt) you will find multiple objects in addition to the target positions: a shelf with two targets, i.e. Position_4 and Position_5, a pedestal with the blue target, i.e. Position_3, and a box with remaining targets Position_1 and Position_2. The robot is the Mico robot from Kinova Robotics Inc. which you already familiarized yourself with in the course of Assignment II. The scene is depicted in Figure 1. Table 1 lists the position of all targets.
Table 1: Positions of each target and a corresponding robot configuration. Note, that all listed robot configurations consider the offset stated in Table 2.
name
color
position in metres
joint values in degrees
x
y
z
1
2
3
4
5
6
Position_1
red
0:35
0:25
0:15
111:8
43:8
92
173:5
390
142:4
Position_2
green
0:4
0:15
0:15
59:4
53:4
55
204:6
445
348:1
Position_3
blue
0:225
0:25
0:55
90:9
1:7
76:6
126:2
110:8
42:19
Position_4
yellow
0:35
0:2
0:215
83:2
59:6
87:9
413:1
252:8
246:6
Position_5
purple
0:15
0:275
0:6
6:55
14:7
74
618:1
60:1
573:3
Note, that you have to respect the range of each joint angle, if joint angles are randomly generated. These are stated in Table 2. Furthermore, our defined home position depicted in Figure 1 (the robot is completely straight) differs from the simulated robot’s home position in V-REP. To align our defined home position with V-REP, we have to consider the offset for each joint stated in Table 2. Note, that the defined joint limits have to be adjusted accordingly.
Table 2: Offsets to align the defined home position of this Assignment (robot straight) with the home position of the simulated robot in V-REP. Joint limits for each joint of the simulated robot in V-REP. Adjusted joint limits for the robot with our defined home position (robot is straight) which take the offsets for each joint into account. If no joint
limits are stated, the corresponding joint can realize a full rotation from
to .
joint
offset in rad
joint range in rad
adjusted joint range in rad
1
–
–
2
2
[0:82; 5:46]
[
2:32; 2:31]
3
[0:33; 5:95]
[ 2:81; 2:80]
4
0
–
–
5
0
–
–
6
0
–
–
Part II: Short report
(20 points)
Write a concise report summarizing your approach, encountered difficulties, and results. Which probabilistic complete motion planner did you implement and why? Include a table indicating at the pairs of target positions and screen shots of the motion sequences determined with your motion planner.
References
Rohmer, E., Singh, S.P. and Freese, M., "V-REP: A versatile and scalable robot simulation framework." In IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 1321–1326, 2013.
3 of 3