How to create a custom hardware_interface? [closed]

asked 2018-07-16 23:14:52 -0500

johnyang gravatar image

updated 2018-07-16 23:16:30 -0500

I have created my own joint_trajectory_controller and hardware interface. When I launch my driver with it, it complains that "This controller requires a hardware interface of type 'hardware_interface::PosVelAccErrJointInterface'. Make sure this is registered in the hardware_interface::RobotHW class." PosVelAccErrJointInterface is the name of my own hardware interface.

So the controller seems to be loaded fine (controller manager can finds it) but it's complaining it's not able to find its corresponding hardware interface. I have put my own custom hardware interface inside the hardware_interface package. In driver, I have following code inside my own hardware_interface::RobotHW class:

hardware_interface::PosVelAccErrJointInterface pvaeji; 
registerInterface(&pvaeji);

Everything builds fine, but I don't see what else is missing. Do I have to code somewhere to ensure the plugin lib adds my own hardware interface?

Any clue here?

edit retag flag offensive reopen merge delete

Closed for the following reason question is not relevant or outdated by tfoote
close date 2019-04-08 00:33:52.107730