Skip to content

Commit 69abc07

Browse files
committed
[mppi] clean ackermann constraints
1 parent 3871dc7 commit 69abc07

File tree

1 file changed

+4
-8
lines changed

1 file changed

+4
-8
lines changed

nav2_mppi_controller/include/nav2_mppi_controller/motion_models.hpp

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -163,14 +163,10 @@ class AckermannMotionModel : public MotionModel
163163
*/
164164
void applyConstraints(models::ControlSequence & control_sequence) override
165165
{
166-
const auto vx_ptr = control_sequence.vx.data();
167-
auto wz_ptr = control_sequence.wz.data();
168-
int steps = control_sequence.vx.size();
169-
for(int i = 0; i < steps; i++) {
170-
float wz_constrained = fabs(*(vx_ptr + i) / min_turning_r_);
171-
float & wz_curr = *(wz_ptr + i);
172-
wz_curr = utils::clamp(-1 * wz_constrained, wz_constrained, wz_curr);
173-
}
166+
const auto wz_constrained = control_sequence.vx.abs() / min_turning_r_;
167+
control_sequence.wz = control_sequence.wz
168+
.max((-wz_constrained))
169+
.min(wz_constrained);
174170
}
175171

176172
/**

0 commit comments

Comments
 (0)