Projekt

Ogólne

Profil

Lab 3: Forward kinematics

Scope:

This laboratory consist of two parts:

  • A short introduction.
  • Writing your own ROS package.

The task:

  • Develop the system from the previous laboratory by either copying the package or modifying it.
  • Using C++ or Python create a ROS node NONKDL_DKIN that calculates forward kinematics of manipulator using analytical method (without KDL).
    • The node gets current position of joints from joint_state_publisher node.
    • The result (i.e. position of end effector of type geometry_msgs/PoseStamped) should be published on ROS topic and visualized in RVIZ.
    • Do not interpolate movement.
    • Please refer to RVIZ documentation http://wiki.ros.org/rviz/Tutorials
    • Read parameters (e.g. lengths of links) from ROS parameter server.
      graph a: ROS nodes for ANRO laboratory 3
  • Create a second node KDL_DKIN that uses KDL, with the same functionality as NONKDL_DKIN.
    • Connect it to existing nodes in place of NONKDL_DKIN.
      graph b: ROS nodes for ANRO laboratory 3
  • Test the results in RVIZ. Compare nodes NONKDL_DKIN and KDL_DKIN with data from robot_state_publisher.
    • Check if the calculated pose is the same as the pose calculated by robot_state_publisher. Compare the poses in RVIZ.
    • All three nodes that calculate forward kinematics should publish to different topics.
    • Reference frames of the end effector should coincide. Set different visualization parameters (e.g. width, length of arrows) to see them all.
    • The documentation of tests should be supplemented with plots of end effector position calculated using different methods and plots of configuration space position.
      graph c: ROS nodes for ANRO laboratory 3
  • Joint limits should be taken into account.
    • If joint position is outside limits, the pose of end effector should not be published and error should be published to ROS log.
  • Add wiki page to your repository (the documentation). The page should contain description of source files, instruction for launching and description of tests.
  • Use separate roslaunch files for:
    • roscore and RVIZ (it should be running until URDF file is modified).
    • The rest of the system.
  • Test the system and show it to the tutor.

lab3-scheme-b.png (6,04 KB) Dawid Seredyński, 2018-06-13 21:52

lab3-scheme-a.png (6,17 KB) Dawid Seredyński, 2018-06-13 21:52

lab3-scheme-c.png (11,1 KB) Dawid Seredyński, 2018-06-13 21:52