This package handles packages related to the robot’s joints controller.
It provides an interface to ros_control.

Joints interface node

The ROS Node is made to:
  • Interface robot’s motors to joint trajectory controller, from ros_control package.
  • Create a controller manager, from controller_manager package, to provides the infrastructure to load, unload, start and stop controllers.
  • Interface with motors calibration.
  • Initialize motors parameters.

Parameters - joints interface

Joint Interface’s Parameters
Name Description
control loop frequency.
Default: ‘100.0’
Publish rate for learning mode state.
Default: ‘2.0’
Waiting time between 2 commands during the calibration process.
Default: ‘30’
File directory where is saved motors calibration value.
Default: ‘/home/niryo/niryo_robot_saved_files/stepper_motor_calibration_offsets.txt’

Published topics - joints interface

Joint Interface’s Published Topics
Name Message Type Description
/niryo_robot/learning_mode/state std_msgs/Bool Learning mode state

Services - joints interface

Joint Interface Package Services
Name Message Type Description
/niryo_robot/joints_interface/calibrate_motors SetInt Start motors calibration - value can be 1 for auto calibration, 2 for manual
/niryo_robot/joints_interface/request_new_calibration Trigger Unset motors calibration
niryo_robot/learning_mode/activate Trigger Either activate or deactivate learning mode