Skip to content

Commit c9ca6f7

Browse files
Update API of PID class (#1437)
1 parent cf8b96e commit c9ca6f7

File tree

4 files changed

+10
-12
lines changed

4 files changed

+10
-12
lines changed

gripper_controllers/include/gripper_controllers/hardware_interface_adapter.hpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -165,8 +165,7 @@ class HardwareInterfaceAdapter<hardware_interface::HW_IF_EFFORT>
165165
// Time since the last call to update
166166
const auto period = std::chrono::steady_clock::now() - last_update_time_;
167167
// Update PIDs
168-
double command =
169-
pid_->computeCommand(error_position, error_velocity, static_cast<uint64_t>(period.count()));
168+
double command = pid_->compute_command(error_position, error_velocity, period);
170169
command = std::min<double>(
171170
fabs(max_allowed_effort), std::max<double>(-fabs(max_allowed_effort), command));
172171
joint_handle_->get().set_value(command);

joint_trajectory_controller/src/joint_trajectory_controller.cpp

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -290,9 +290,8 @@ controller_interface::return_type JointTrajectoryController::update(
290290
for (auto i = 0ul; i < dof_; ++i)
291291
{
292292
tmp_command_[i] = (command_next_.velocities[i] * ff_velocity_scale_[i]) +
293-
pids_[i]->computeCommand(
294-
state_error_.positions[i], state_error_.velocities[i],
295-
(uint64_t)period.nanoseconds());
293+
pids_[i]->compute_command(
294+
state_error_.positions[i], state_error_.velocities[i], period);
296295
}
297296
}
298297

@@ -1582,7 +1581,7 @@ void JointTrajectoryController::update_pids()
15821581
if (pids_[i])
15831582
{
15841583
// update PIDs with gains from ROS parameters
1585-
pids_[i]->setGains(gains.p, gains.i, gains.d, gains.i_clamp, -gains.i_clamp);
1584+
pids_[i]->set_gains(gains.p, gains.i, gains.d, gains.i_clamp, -gains.i_clamp);
15861585
}
15871586
else
15881587
{

joint_trajectory_controller/test/test_trajectory_controller.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -325,7 +325,7 @@ TEST_P(TrajectoryControllerTestParameterized, update_dynamic_parameters)
325325
if (traj_controller_->use_closed_loop_pid_adapter())
326326
{
327327
EXPECT_EQ(pids.size(), 3);
328-
auto gain_0 = pids.at(0)->getGains();
328+
auto gain_0 = pids.at(0)->get_gains();
329329
EXPECT_EQ(gain_0.p_gain_, 0.0);
330330

331331
double kp = 1.0;
@@ -334,7 +334,7 @@ TEST_P(TrajectoryControllerTestParameterized, update_dynamic_parameters)
334334

335335
pids = traj_controller_->get_pids();
336336
EXPECT_EQ(pids.size(), 3);
337-
gain_0 = pids.at(0)->getGains();
337+
gain_0 = pids.at(0)->get_gains();
338338
EXPECT_EQ(gain_0.p_gain_, kp);
339339
}
340340
else

pid_controller/src/pid_controller.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ controller_interface::CallbackReturn PidController::configure_parameters()
140140
// prefix should be interpreted as parameters prefix
141141
pids_[i] =
142142
std::make_shared<control_toolbox::PidROS>(get_node(), "gains." + params_.dof_names[i], true);
143-
if (!pids_[i]->initPid())
143+
if (!pids_[i]->initialize_from_ros_parameters())
144144
{
145145
return CallbackReturn::FAILURE;
146146
}
@@ -539,19 +539,19 @@ controller_interface::return_type PidController::update_and_write_commands(
539539
!std::isnan(measured_state_values_[dof_ + i]))
540540
{
541541
// use calculation with 'error' and 'error_dot'
542-
tmp_command += pids_[i]->computeCommand(
542+
tmp_command += pids_[i]->compute_command(
543543
error, reference_interfaces_[dof_ + i] - measured_state_values_[dof_ + i], period);
544544
}
545545
else
546546
{
547547
// Fallback to calculation with 'error' only
548-
tmp_command += pids_[i]->computeCommand(error, period);
548+
tmp_command += pids_[i]->compute_command(error, period);
549549
}
550550
}
551551
else
552552
{
553553
// use calculation with 'error' only
554-
tmp_command += pids_[i]->computeCommand(error, period);
554+
tmp_command += pids_[i]->compute_command(error, period);
555555
}
556556

557557
// write calculated values

0 commit comments

Comments
 (0)