@@ -355,9 +355,18 @@ auto IKController::update_system_state_values() -> controller_interface::return_
355
355
}
356
356
}
357
357
358
- if (common::math::has_nan (position_state_values_) || common::math::has_nan (velocity_state_values_)) {
359
- RCLCPP_DEBUG (logger_, " Received system states with NaN value." ); // NOLINT
360
- return controller_interface::return_type::ERROR;
358
+ if (use_position_states_) {
359
+ if (common::math::has_nan (position_state_values_)) {
360
+ RCLCPP_DEBUG (logger_, " Received position states with NaN value." ); // NOLINT
361
+ return controller_interface::return_type::ERROR;
362
+ }
363
+ }
364
+
365
+ if (use_velocity_states_) {
366
+ if (common::math::has_nan (velocity_state_values_)) {
367
+ RCLCPP_DEBUG (logger_, " Received velocity states with NaN value." ); // NOLINT
368
+ return controller_interface::return_type::ERROR;
369
+ }
361
370
}
362
371
363
372
return controller_interface::return_type::OK;
@@ -366,11 +375,11 @@ auto IKController::update_system_state_values() -> controller_interface::return_
366
375
auto IKController::update_and_validate_interfaces () -> controller_interface::return_type
367
376
{
368
377
if (update_system_state_values () != controller_interface::return_type::OK) {
369
- RCLCPP_INFO (logger_, " Failed to update system state values" ); // NOLINT
378
+ RCLCPP_DEBUG (logger_, " Failed to update system state values" ); // NOLINT
370
379
return controller_interface::return_type::ERROR;
371
380
}
372
381
if (common::math::has_nan (reference_interfaces_)) {
373
- RCLCPP_INFO (logger_, " Received reference with NaN value." ); // NOLINT
382
+ RCLCPP_DEBUG (logger_, " Received reference with NaN value." ); // NOLINT
374
383
return controller_interface::return_type::ERROR;
375
384
}
376
385
return controller_interface::return_type::OK;
@@ -381,7 +390,7 @@ auto IKController::update_and_write_commands(const rclcpp::Time & /*time*/, cons
381
390
-> controller_interface::return_type
382
391
{
383
392
if (update_and_validate_interfaces () != controller_interface::return_type::OK) {
384
- RCLCPP_INFO (logger_, " Skipping controller update. Failed to update and validate interfaces" ); // NOLINT
393
+ RCLCPP_DEBUG (logger_, " Skipping controller update. Failed to update and validate interfaces" ); // NOLINT
385
394
return controller_interface::return_type::OK;
386
395
}
387
396
0 commit comments