Class TankModel

Inheritance Relationships

Base Type

Class Documentation

class squiggles::TankModel : public squiggles::PhysicalModel

Public Functions

TankModel(double itrack_width, Constraints ilinear_constraints)

Defines a model of a tank drive or differential drive robot.

  • itrack_width – The distance between the the wheels on each side of the robot in meters.

  • ilinear_constraints – The maximum values for the robot’s movement.

virtual Constraints constraints(const Pose pose, double curvature, double vel) override

Calculate a set of stricter constraints for the path at the given state than the general constraints based on the robot’s kinematics.

  • pose – The 2D pose for this state in the path.

  • curvature – The change in heading at this state in the path in 1 / meters.

  • vel – The linear velocity at this state in the path in meters per second.

virtual std::vector<double> linear_to_wheel_vels(double lin_vel, double curvature) override

Converts a linear velocity and desired curvature into the component for each wheel of the robot.

  • linear – The linear velocity for the robot in meters per second.

  • curvature – The change in heading for the robot in 1 / meters.

virtual std::string to_string() const override