Skip to content

Commit 6a6c38c

Browse files
committed
Apply suggestions from code review
1 parent 5c2620c commit 6a6c38c

File tree

3 files changed

+21
-19
lines changed

3 files changed

+21
-19
lines changed

diff_drive_controller/include/diff_drive_controller/odometry.hpp

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -40,22 +40,22 @@ class Odometry
4040
[[deprecated]]
4141
void init(const rclcpp::Time & time);
4242
[[deprecated(
43-
"Replaced by bool updateFromPos(const double left_pos, const double right_pos, const "
43+
"Replaced by bool update_from_pos(double left_pos, double right_pos, const "
4444
"rclcpp::Time & time).")]]
4545
bool update(double left_pos, double right_pos, const rclcpp::Time & time);
4646
[[deprecated(
47-
"Replaced by bool updateFromVel(const double left_vel, const double right_vel, const "
47+
"Replaced by bool update_from_vel(double left_vel, double right_vel, const "
4848
"rclcpp::Time & time).")]]
4949
bool updateFromVelocity(double left_vel, double right_vel, const rclcpp::Time & time);
5050
[[deprecated(
51-
"Replaced by bool tryUpdateOpenLoop(const double linear_vel, const double angular_vel, const "
51+
"Replaced by bool try_update_open_loop(double linear_vel, double angular_vel, const "
5252
"rclcpp::Time "
5353
"& time).")]]
5454
void updateOpenLoop(double linear, double angular, const rclcpp::Time & time);
5555

56-
bool updateFromPos(const double left_pos, const double right_pos, const double dt);
57-
bool updateFromVel(const double left_vel, const double right_vel, const double dt);
58-
bool tryUpdateOpenLoop(const double linear_vel, const double angular_vel, const double dt);
56+
bool update_from_pos(double left_pos, double right_pos, double dt);
57+
bool update_from_vel(double left_vel, double right_vel, double dt);
58+
bool try_update_open_loop(double linear_vel, double angular_vel, double dt);
5959
void resetOdometry();
6060

6161
double getX() const { return x_; }
@@ -75,12 +75,12 @@ class Odometry
7575
using RollingMeanAccumulator = rcppmath::RollingMeanAccumulator<double>;
7676
#endif
7777

78-
[[deprecated("Replaced by void integrate(const double & dx, const double & dheading).")]]
78+
[[deprecated("Replaced by void integrate(double linear_vel, double angular_vel, double dt).")]]
7979
void integrateRungeKutta2(double linear, double angular);
80-
[[deprecated("Replaced by void integrate(const double & dx, const double & dheading).")]]
80+
[[deprecated("Replaced by void integrate(double linear_vel, double angular_vel, double dt).")]]
8181
void integrateExact(double linear, double angular);
8282

83-
void integrate(const double dx, const double dheading);
83+
void integrate(double linear_vel, double angular_vel, double dt);
8484
void resetAccumulators();
8585

8686
// Current timestamp:

diff_drive_controller/src/diff_drive_controller.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ controller_interface::return_type DiffDriveController::update_and_write_commands
165165
if (params_.open_loop)
166166
{
167167
odometry_updated =
168-
odometry_.tryUpdateOpenLoop(linear_command, angular_command, period.seconds());
168+
odometry_.try_update_open_loop(linear_command, angular_command, period.seconds());
169169
}
170170
else
171171
{
@@ -204,12 +204,12 @@ controller_interface::return_type DiffDriveController::update_and_write_commands
204204
if (params_.position_feedback)
205205
{
206206
odometry_updated =
207-
odometry_.updateFromPos(left_feedback_mean, right_feedback_mean, period.seconds());
207+
odometry_.update_from_pos(left_feedback_mean, right_feedback_mean, period.seconds());
208208
}
209209
else
210210
{
211211
odometry_updated =
212-
odometry_.updateFromVel(left_feedback_mean, right_feedback_mean, period.seconds());
212+
odometry_.update_from_vel(left_feedback_mean, right_feedback_mean, period.seconds());
213213
}
214214
}
215215

diff_drive_controller/src/odometry.cpp

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ bool Odometry::update(double left_pos, double right_pos, const rclcpp::Time & ti
7373
return true;
7474
}
7575

76-
bool Odometry::updateFromPos(const double left_pos, const double right_pos, const double dt)
76+
bool Odometry::update_from_pos(double left_pos, double right_pos, double dt)
7777
{
7878
// We cannot estimate angular velocity with very small time intervals
7979
if (std::fabs(dt) < 1e-6)
@@ -89,7 +89,7 @@ bool Odometry::updateFromPos(const double left_pos, const double right_pos, cons
8989
left_wheel_old_pos_ = left_pos;
9090
right_wheel_old_pos_ = right_pos;
9191

92-
return updateFromVel(left_vel, right_vel, dt);
92+
return update_from_vel(left_vel, right_vel, dt);
9393
}
9494

9595
bool Odometry::updateFromVelocity(double left_vel, double right_vel, const rclcpp::Time & time)
@@ -119,15 +119,15 @@ bool Odometry::updateFromVelocity(double left_vel, double right_vel, const rclcp
119119
return true;
120120
}
121121

122-
bool Odometry::updateFromVel(const double left_vel, const double right_vel, const double dt)
122+
bool Odometry::update_from_vel(double left_vel, double right_vel, double dt)
123123
{
124124
// Compute linear and angular velocities of the robot:
125125
const double linear_vel = (left_vel * left_wheel_radius_ + right_vel * right_wheel_radius_) * 0.5;
126126
const double angular_vel =
127127
(right_vel * right_wheel_radius_ - left_vel * left_wheel_radius_) / wheel_separation_;
128128

129129
// Integrate odometry:
130-
integrate(linear_vel * dt, angular_vel * dt);
130+
integrate(linear_vel, angular_vel, dt);
131131

132132
// Estimate speeds using a rolling mean to filter them out:
133133
linear_accumulator_.accumulate(linear_vel);
@@ -151,10 +151,10 @@ void Odometry::updateOpenLoop(double linear, double angular, const rclcpp::Time
151151
integrateExact(linear * dt, angular * dt);
152152
}
153153

154-
bool Odometry::tryUpdateOpenLoop(const double linear_vel, const double angular_vel, const double dt)
154+
bool Odometry::try_update_open_loop(double linear_vel, double angular_vel, double dt)
155155
{
156156
// Integrate odometry:
157-
integrate(linear_vel * dt, angular_vel * dt);
157+
integrate(linear_vel, angular_vel, dt);
158158

159159
// Save last linear and angular velocity:
160160
linear_ = linear_vel;
@@ -212,8 +212,10 @@ void Odometry::integrateExact(double linear, double angular)
212212
}
213213
}
214214

215-
void Odometry::integrate(const double dx, const double dheading)
215+
void Odometry::integrate(double linear_vel, double angular_vel, double dt)
216216
{
217+
const double dx = linear_vel * dt;
218+
const double dheading = angular_vel * dt;
217219
if (fabs(dheading) < 1e-6)
218220
{
219221
// For very small dheading, approximate to linear motion

0 commit comments

Comments
 (0)