Given a structure as input to your function with the following fields: * robot.links(L1,L2,L3) * robot.jointangles(alfa1,alfa2,alfa3) * robot.attitude(x,y,tht) Return the same struct with the correct end effector position and orientation in "robot.attitude". In a stretched out posture, the end effector angle is 0. In other words calculate the end effector x,y and alfa.
When the robot arm is aligned with the positive x-axis of the robot's base coordinate system, the end-effector angle is defined to be zero.
You can easily modify this function to generate xdata and ydata for plotting the robot arm. Check the testcases for the requested accuracy.
Tip: calculate the x,y position of the heart of the orange end-effector as a function of the angles alfa1...3 and link lengths L1...3. L1 is the length of the first link (connected to the base of the robot). good luck.
Tip2: alfa1 in the picture is negative.
Tip3: make a little drawing on a piece of paper to see how the end effector coordinate system relates to the angles of the hinges (joints)/jointspace.
As a visual reference, check the picture below.