Skip to content

Class evam::DirectionalMotor

template <class Driver, signed short kMaxBackward, signed short kMinBackward, signed short kMinForward, signed short kMaxForward>

ClassList > evam > DirectionalMotor

Bidirectional motor controller (forward/reverse). More...

  • #include <evamDirectionalMotor.h>

Inherits the following classes: Driver

Public Functions

Type Name
DirectionalMotor ()
DirectionalMotor (DirectionalConfig config, Args... args)
signed short GetMaxBackward () const
Get maximum reverse output value.
signed short GetMaxForward () const
Get maximum forward output value.
signed short GetMinBackward () const
Get minimum reverse output value.
signed short GetMinForward () const
Get minimum forward output value.
void Go (signed short aLevel)
Apply the control value.
void SetMaxBackward (signed short aValue)
Set maximum reverse output value.
void SetMaxForward (signed short aValue)
Set maximum forward output value.
void SetMinBackward (signed short aValue)
Set minimum reverse output value.
void SetMinForward (signed short aValue)
Set minimum forward output value.
void SetupRange (signed short maxBackward, signed short minBackward, signed short minForward, signed short maxForward)
Configure all range parameters at once.

Detailed Description

Maps a signed input range -1000..1000 to driver-specific output values. Negative values correspond to reverse, positive to forward.

Template parameters:

  • Driver Driver class (must implement actBipolar(signed short))
  • kMaxBackward Maximum reverse output value (e.g., -1000)
  • kMinBackward Minimum reverse output value (e.g., -50)
  • kMinForward Minimum forward output value (e.g., 50)
  • kMaxForward Maximum forward output value (e.g., 1000)

Public Functions Documentation

function DirectionalMotor [1/2]

inline evam::DirectionalMotor::DirectionalMotor () 

function DirectionalMotor [2/2]

template<typename... Args>
inline evam::DirectionalMotor::DirectionalMotor (
    DirectionalConfig config,
    Args... args
) 

function GetMaxBackward

Get maximum reverse output value.

inline signed short evam::DirectionalMotor::GetMaxBackward () const

Returns:

Current maximum reverse output value.


function GetMaxForward

Get maximum forward output value.

inline signed short evam::DirectionalMotor::GetMaxForward () const

Returns:

Current maximum forward output value.


function GetMinBackward

Get minimum reverse output value.

inline signed short evam::DirectionalMotor::GetMinBackward () const

Returns:

Current minimum reverse output value.


function GetMinForward

Get minimum forward output value.

inline signed short evam::DirectionalMotor::GetMinForward () const

Returns:

Current minimum forward output value.


function Go

Apply the control value.

inline void evam::DirectionalMotor::Go (
    signed short aLevel
) 

Parameters:

  • aLevel Input control value, range -1000..1000.

function SetMaxBackward

Set maximum reverse output value.

inline void evam::DirectionalMotor::SetMaxBackward (
    signed short aValue
) 

Parameters:

  • aValue Output value, clamped to -1000..1000.

function SetMaxForward

Set maximum forward output value.

inline void evam::DirectionalMotor::SetMaxForward (
    signed short aValue
) 

Parameters:

  • aValue Output value, clamped to -1000..1000.

function SetMinBackward

Set minimum reverse output value.

inline void evam::DirectionalMotor::SetMinBackward (
    signed short aValue
) 

Parameters:

  • aValue Output value, clamped to -1000..1000.

function SetMinForward

Set minimum forward output value.

inline void evam::DirectionalMotor::SetMinForward (
    signed short aValue
) 

Parameters:

  • aValue Output value, clamped to -1000..1000.

function SetupRange

Configure all range parameters at once.

inline void evam::DirectionalMotor::SetupRange (
    signed short maxBackward,
    signed short minBackward,
    signed short minForward,
    signed short maxForward
) 

Parameters:

  • aMaxBackward Maximum reverse output value (-1000..1000)
  • aMinBackward Minimum reverse output value (-1000..1000)
  • aMinForward Minimum forward output value (-1000..1000)
  • aMaxForward Maximum forward output value (-1000..1000)


The documentation for this class was generated from the following file src/evamDirectionalMotor.h