Skip to content

Namespace evam

Namespace List > evam

Classes

Type Name
struct AdaptiveSmoothConfig
Configuration structure for AdaptiveSmoothDecor .
class AdaptiveSmoothDecor <class TMotor, tMinTimeConstantMs, tMaxTimeConstantMs>
Decorator with adaptive smoothing based on input rate of change.
struct CurveConfig
Configuration structure for CurveDecor .
class CurveDecor <class TMotor, tBend>
Decorator that applies an S-curve (nonlinear) transformation to the control signal.
struct DirectionalConfig
Configuration structure for DirectionalMotor .
class DirectionalMotor <class Driver, kMaxBackward, kMinBackward, kMinForward, kMaxForward>
Bidirectional motor controller (forward/reverse).
struct ForwardConfig
Configuration structure for ForwardMotor .
class ForwardMotor <class Driver, kMinValue, kMaxValue>
Unidirectional forward-only motor controller (e.g., aircraft ESC, throttle).
class IMotor
class IMotorMaker <class TMotor>
struct InertiaConfig
Configuration structure for InertiaDecor .
class InertiaDecor <class TMotor, tInertiaMass>
Decorator that simulates mechanical inertia (flywheel effect).
struct KickConfig
Configuration structure for KickDecor .
class KickDecor <class TMotor, tDefaultKickDurationMs, tDefaultKickPower>
Decorator that applies a momentary kick to overcome static friction.
class LinearActuator <class Driver, kMinValue, kMaxValue>
Linear actuator controller (position control).
struct LinearActuatorConfig
Configuration structure for LinearActuator .
struct MedianConfig
Configuration structure for MedianDecor .
class MedianDecor <class TMotor, tWindowSize>
Decorator that applies median filtering with fixed time base.
struct MinmaxConfig
Configuration structure for MinmaxDecor .
class MinmaxDecor <class TMotor, N>
Decorator that applies a min-max (morphological) filter to the control signal.
struct PwmConfig
Configuration structure for PwmDriver .
class PwmDriver <kPin>
Simple PWM output driver (unipolar).
class RingBuffer <typename T, N>
struct ServoConfig
Configuration structure for ServoDriver .
class ServoDriver <kPin, kMinPulse, kMiddlePulse, kMaxPulse>
Servo driver using standard Arduino Servo library.
struct SlidingWindowConfig
Configuration structure for SlidingWindowDecor .
class SlidingWindowDecor <class TMotor, N>
Decorator that applies a simple moving average (sliding window) filter.
struct SoftwareServoConfig
Configuration structure for SoftwareServoDriver .
class SoftwareServoDriver <kPin, kMinPulse, kMiddlePulse, kMaxPulse>
Software-based servo driver using millis() for timing.
class SteeringActuator <class Driver, kLeftPos, kCenterPos, kRightPos>
Steering actuator (centered servo) controller.
struct SteeringConfig
Configuration structure for SteeringActuator .
struct TA6586Config
Configuration structure for TA6586Driver .
class TA6586Driver <kForwardPin, kBackwardPin>
Driver for the TA6586 dual H-bridge motor driver.
struct TB6612Config
Configuration structure for TB6612FNGDriver .
class TB6612FNGDriver <kPinSpeed, kPinMode1, kPinMode2>
Driver for the TB6612FNG dual H-bridge motor driver.

Public Types

Type Name
typedef ServoDriver< kPin, kMinPulse,(kMaxPulse - kMinPulse)/2+kMinPulse, kMaxPulse > ServoFlatDriver
typedef SoftwareServoDriver< kPin, kMinPulse,(kMaxPulse - kMinPulse)/2+kMinPulse, kMaxPulse > SoftwareServoFlatDriver

Public Attributes

Type Name
signed short kDefaultBend = 0
unsigned short kDefaultKickDurationMs = 20
signed short kDefaultKickPower = 1000
unsigned short kDefaultMaxTimeConstantMs = 150
unsigned short kDefaultMinTimeConstantMs = 10
unsigned short kDefaultWindowSize = 5
unsigned short kInertiaMass = 5
signed short kMaxBend = 10
signed short kMaxKickPower = 1000
unsigned short kMaxTimeConstantLimit = 500
unsigned short kMaxWindowSize = 15
signed short kMinBend = -10
unsigned short kMinTimeConstantLimit = 5
unsigned short kMinWindowSize = 3

Public Types Documentation

typedef ServoFlatDriver

using evam::ServoFlatDriver = ServoDriver<kPin, kMinPulse, (kMaxPulse - kMinPulse) / 2 + kMinPulse, kMaxPulse>;

typedef SoftwareServoFlatDriver

using evam::SoftwareServoFlatDriver = SoftwareServoDriver<kPin, kMinPulse, (kMaxPulse - kMinPulse) / 2 + kMinPulse, kMaxPulse>;

Public Attributes Documentation

variable kDefaultBend

signed short evam::kDefaultBend;

variable kDefaultKickDurationMs

unsigned short evam::kDefaultKickDurationMs;

variable kDefaultKickPower

signed short evam::kDefaultKickPower;

variable kDefaultMaxTimeConstantMs

unsigned short evam::kDefaultMaxTimeConstantMs;

variable kDefaultMinTimeConstantMs

unsigned short evam::kDefaultMinTimeConstantMs;

variable kDefaultWindowSize

unsigned short evam::kDefaultWindowSize;

variable kInertiaMass

unsigned short evam::kInertiaMass;

variable kMaxBend

signed short evam::kMaxBend;

variable kMaxKickPower

signed short evam::kMaxKickPower;

variable kMaxTimeConstantLimit

unsigned short evam::kMaxTimeConstantLimit;

variable kMaxWindowSize

unsigned short evam::kMaxWindowSize;

variable kMinBend

signed short evam::kMinBend;

variable kMinTimeConstantLimit

unsigned short evam::kMinTimeConstantLimit;

variable kMinWindowSize

unsigned short evam::kMinWindowSize;


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