gennav.controllers.PID package

Submodules

gennav.controllers.PID.common module

class gennav.controllers.PID.common.PIDGains(kp=0, ki=0, kd=0)

Bases: object

Class for storing Proportional Integral Controller Gains :param kp: proportional gain (default = 0) :param ki: integral gain (default = 0) :param kd: derivative gain (default = 0)

gennav.controllers.PID.differential_pid module

class gennav.controllers.PID.differential_pid.DiffPID(maxVel=0.25, maxAng=1.5707963267948966, vel_gains=PIDGains(1, 0, 0), angle_gains=PIDGains(1, 0, 0))

Bases: gennav.controllers.base.Controller

Controller class for an OmniWheel drive robot. It inherits from the main Controller class. :param maxVel: Maximum velocity for translation(default = 0.25) :param maxAng: Maximum velocity for rotation(default = pi/2) :param vel_gains: PIDGains (default = PIDGains(1, 0, 0)) :param angle_gains: PIDGains (default = PIDGains(1, 0, 0))

Returns:(class utils.states.Velocity) with the required velocity commands
Return type:vel
compute_vel(traj)

Given the trajectory point, it returns the velocity using in differential format :param traj: Trajectory to generate velocity :type traj: gennav.utils.Trajectory

constrain(velocity)

Constrains the velocity within the given limits :param velocity: Velocity that needs to be constrained :type velocity: gennav.utils.states.velocity

parameters()
reset()

gennav.controllers.PID.omniwheel_PID module

class gennav.controllers.PID.omniwheel_PID.OmniWheelPID(maxX=0.25, maxY=0.25, xgains=PIDGains(1, 0, 0), ygains=PIDGains(1, 0, 0))

Bases: gennav.controllers.base.Controller

Controller class for an OmniWheel drive robot. It inherits from the main Controller class. :param maxX: Maximum velocity in the x-direction (default = 0.25) :param maxY: Maximum velocity in the y-direction (default = 0.25) :param xgains: PIDGains (default = PIDGains(1, 0, 0)) :param ygains: PIDGains (default = PIDGains(1, 0, 0))

Returns:(class utils.states.Velocity) with the required velocity commands
Return type:vel
compute_vel(traj)

Given the trajectory point, it returns the velocity using in differential format :param traj: Trajectory to generate velocity :type traj: gennav.utils.Trajectory

constrain(velocity)

Constrains the velocity within the given limits :param velocity: Velocity that needs to be constrained :type velocity: gennav.utils.states.velocity

parameters()
restart()

Module contents