In this project we generate the configuration space of 2d planar arm with respect to the obstacles in its surrounding in the coordinates of each link. Initially to generate the configuration space of the robot an m by n matrix was generated where the number of rows and columns corresponded to the total degrees of freedom of the robot per joint i.e. 360 degrees. A set of obstacles with corresponding vertices and faces were generated for the path planning problem. A triangle intersection function was used to detect whether at different configurations the robot collides with any obstacles, if so the logical map is updated to 1s at those specific points. Through this process the configuration space map is fully generated. Dijkstra is then used to plan paths from the initial configuration of the robot given by theta1 and theta2 . The Dijkstra used in this project is similar to the project 8 with the main difference that in this case it is simultaneously solving for two different positions i.e. theta1 and theta2 in addition since the robot is assumed to able to rotate by 360 degrees effects of wrapping around should be considered.
Simulation results:
The animation below shows the robot moving from [2 , 2] to [150 , 200] these are the angles of rotation for each link. (click on the image below to see animation)