@@ -13,13 +13,13 @@ HWI::CallbackReturn RobotiqHandeHardwareInterface::on_init(const HWI::HardwareIn
1313 return HWI::CallbackReturn::ERROR;
1414 }
1515
16- state_position_ = 0.0025 ;
17- cmd_position_ = 0.0025 ;
16+ state_position_ = 0.025 ;
17+ state_velocity_ = 0.0 ;
18+ cmd_position_ = 0.025 ;
1819 tty_port_ = info_.hardware_parameters [" tty" ];
1920
2021 logger_ = std::make_shared<rclcpp::Logger>(
2122 rclcpp::get_logger (" controller_manager.resource_manager.hardware_component.system.RobotiqHandeHardwareInterface" ));
22- clock_ = std::make_shared<rclcpp::Clock>(rclcpp::Clock ());
2323
2424 // TODO: Set parameters for the modbus communication
2525
@@ -43,7 +43,9 @@ std::vector<HWI::StateInterface> RobotiqHandeHardwareInterface::export_state_int
4343 std::vector<HWI::StateInterface> state_interfaces;
4444
4545 state_interfaces.emplace_back (hardware_interface::StateInterface (
46- info_.joints [HANDE_LEFT_FINGER_JOINT_ID].name , hardware_interface::HW_IF_POSITION, &state_position_));
46+ info_.joints [LEFT_FINGER_JOINT_ID].name , hardware_interface::HW_IF_POSITION, &state_position_));
47+ state_interfaces.emplace_back (hardware_interface::StateInterface (
48+ info_.joints [LEFT_FINGER_JOINT_ID].name , hardware_interface::HW_IF_VELOCITY, &state_velocity_));
4749
4850 RCLCPP_INFO (get_logger (), " export_state_interfaces()" );
4951 return state_interfaces;
@@ -53,7 +55,7 @@ std::vector<HWI::CommandInterface> RobotiqHandeHardwareInterface::export_command
5355 std::vector<hardware_interface::CommandInterface> command_interfaces;
5456
5557 command_interfaces.emplace_back (hardware_interface::CommandInterface (
56- info_.joints [HANDE_LEFT_FINGER_JOINT_ID ].name , hardware_interface::HW_IF_POSITION, &cmd_position_));
58+ info_.joints [LEFT_FINGER_JOINT_ID ].name , hardware_interface::HW_IF_POSITION, &cmd_position_));
5759
5860 RCLCPP_INFO (get_logger (), " export_command_interfaces()" );
5961 return command_interfaces;
@@ -85,30 +87,12 @@ HWI::CallbackReturn RobotiqHandeHardwareInterface::on_error(const rlccp_lc::Stat
8587
8688HWI::return_type RobotiqHandeHardwareInterface::read (const rclcpp::Time& /* time*/ ,
8789 const rclcpp::Duration& /* period*/ ) {
88- std::stringstream ss;
89- ss << " Reading states:" ;
90-
91- // TODO: auto data = driver_->receive_data();
92- auto data = true ;
93- if (data) {
94- state_position_ = 0.015 ;
95- }
96-
97- ss << std::fixed << std::setprecision (2 ) << std::endl
98- << " \t Position: " << state_position_ << " m for joint '" << info_.joints [HANDE_LEFT_FINGER_JOINT_ID].name << " '" ;
99- RCLCPP_INFO_THROTTLE (get_logger (), *get_clock (), 500 , " %s" , ss.str ().c_str ());
90+ // TODO: data = driver_->receive_data();
10091 return hardware_interface::return_type::OK;
10192}
10293HWI::return_type RobotiqHandeHardwareInterface::write (const rclcpp::Time& /* time*/ ,
10394 const rclcpp::Duration& /* period*/ ) {
104- std::stringstream ss;
105- ss << " Writing commands:" ;
106-
10795 // TODO: driver_->send_data(cmd_position_);
108- ss << std::fixed << std::setprecision (2 ) << std::endl
109- << " \t Target position:" << cmd_position_ << " m for joint '" << info_.joints [HANDE_LEFT_FINGER_JOINT_ID].name << " '" ;
110-
111- RCLCPP_INFO_THROTTLE (get_logger (), *get_clock (), 500 , " %s" , ss.str ().c_str ());
11296 return hardware_interface::return_type::OK;
11397}
11498
0 commit comments