6.5.3.1
Launch file and URDF model
The .launch files included in qbchain package are built in a very similar way to the one reported
in Figure 6-13, and you can also inspect it by opening one of the files included in
"~/catkin_ws/src/qbchain-ros/qb_chain_control/launch".
As mentioned before, these .launch files expect four qbmoves with IDs from 1 to 4 linked to the
specific kinematic structure URDF, and equip the chosen system with a dedicated ROS controller.
To launch one of the proposed robot configurations, you just need to execute the following
command from a terminal:
roslaunch qb_chain_control <robot_config>_control.launch standal
one:=true activate_on_initialization:=true
Where you need to replace <robot_config> with the name of the launch file, for example
delta_control.launch if you want to run the Delta robot configuration.
In addition, you can also enable the Waypoint control mode (by passing
`use_waypoints:=true` as additional argument in the previous command). The desired waypoints
must
be
specified
"~/catkin_ws/src/qbchain-ros/qb_chain_control/config". The structure of these files will de
described in the next section.
IMPORTANT
6.5.3.2
Dedicated controller
A specific Kit controller could have not been implemented since each single qbmove controller
can be exploited to control the whole system. Anyway, controlling a kinematic structure only
w.r.t. the joint space is not the best option for the end user.
For this reason, we have created the `qb_chain_controllers/KitKinematicController` (derived by
the official `controller_interface::Controller<hardware_interface::PositionJointInterface>`).
This C++ class is a base class for the kinematic specific controller classes (that are
DeltaKinematicController,
ArmV1KinematicController,
appropriate controller is loaded automatically during startup, by selecting the correct .launch
file, and allows a more user-friendly approach.
Without digging too much into the C++ class implementation, which is publicly available under
`~/catkin_ws/src/qbchain-ros/qb_chain_controllers/`, the major improvements are the
followings:
•
By exploiting the direct and inverse kinematics of one of the proposed kinematic
structures, the user can control the end-effector position w.r.t. the cartesian space;
87
28 aprile 2021
in
the
file
It is worth noticing that this is just a state visualizer and not a simulator.
Arm1KinematicController,
ArmV2KinematicController, WristKinematicController). The
qb<robot_config>_waypoints.yaml
included
Arm2KinematicController,
in
Need help?
Do you have a question about the qbmove Advanced Kit and is the answer not in the manual?
Questions and answers