# COMP 417 Assignment 1: Kinematics and Path Planning

\$30.00

## Description

Question #1: 2D Rotation Transform (3 points)
In the lectures, we stated a matrix form to express the kinematics of a body rotating in 2D
about the ICC with rotation rate π radians per second for πΏπ‘ seconds is:
π₯(π‘ + 1) = π(ππΏπ‘)π₯(π‘) + [
0
0
ππΏπ‘
]
Where the state vector, x, has 3 components:
π₯(π‘) = [
π₯
π¦
π
]
The 3×3 βrotation matrixβ π(π) that represents the change in x,y position after rotating π
π(π) = [
cos(π) βsin(π) 0
sin(π) cos(π) 0
0 0 1
]
Explain in words, with back-up from drawings or math where possible why this is correct.
Hint: there are many good explanations for this online (e.g., the recommended text, Wikipedia,
and hundreds more). You may use any of these resources to inform yourself. This question is
mainly just to prompt you to spend some time reading/thinking on this topic if youβve not seen
it before. Once you find an explanation that makes sense to you, try to re-state it in your own
words to make sure you really understood.
For challenge/honor: First try to derive this yourself from basic geometry without help!
Question #2: Forward and Inverse Kinematics (4 points)
β’ the origin of the global frame is at the armβs anchor point with the table (thicker blue
rectangle), with y-axis upwards and x-axis pointing to the right,
β’ the arm has one motor in each joint (indexed by theta one and two as shown),
β’ the joint angles have zero angles for their respective theta when the arm is straight
upwards,
β’ the joints have limits,
o the first link cannot rotate through the table (max π1 =
π
2
, min π1 =
βπ
2
),
o the second link cannot rotate through the first link (max π2 = π, min π2 = βπ),
β’ collisions are not allowed (the arm cannot poke into or through the table),
β’ the tasks all involve the end-effector, that is the orange/yellow ball at the end of the
arm, and
β’ each βlinkβ in the arm has length one.
Write the:
a) state space,
b) action space,
c) forward kinematics function and,
d) inverse kinematics function
for this robot. For spaces, use vector notation. For the functions, give the βspecsβ (return value
and function arguments), as well as pseudo-code or some simple equations for the function
body.
Recommended reference: The recommended textbooks by Craig (starting from Chapter 2
onwards) or Lavalle (Chapter 3).
π2
π1
Question #3: Choose the Algorithm (5 points)
Consider the map and plan shown here, with green
indicating start, red indicating end, the blue line
showing the states along the path and the
black/white background showing free space and
obstacles in the map.
Could this path have been produced by:
a) The Bug #1 Algorithm (with right-hand rule)?
b)The Bug #2 Algorithm (with right-hand rule)?
c) Dijkstraβs algorithm?
d)The A* algorithm?
e) The RRT algorithm?
For each, briefly state (in 1-2 key sentences, maybe a quick sketch) why you believe the planner
is (or is not) likely to be the source of this path. Note, weβll cover RRTs on Tuesday Sept 22nd
.