Skip to content

Namespace evam

Namespace List > evam

Classes

Type Name
struct AdaptiveSmoothConfig
Configuration structure for AdaptiveSmoothDecor .
class AdaptiveSmoothDecor <class TMotor, tMinTimeConstantTicks, tMaxTimeConstantTicks>
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 TDriver, tMaxBackward, tMinBackward, tMinForward, tMaxForward>
Bidirectional motor controller (forward/reverse).
struct ExponentialSmoothConfig
Configuration structure for ExponentialSmoothDecor .
class ExponentialSmoothDecor <class TMotor, tAlpha>
Decorator applying Exponential Moving Average (EMA) filtering.
struct ForwardConfig
Configuration structure for ForwardMotor .
class ForwardMotor <class TDriver, tMinValue, tMaxValue>
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 TDriver, tMinValue, tMaxValue>
Linear actuator controller (position control).
struct LinearActuatorConfig
Configuration structure for LinearActuator .
class MedianDecor <class TMotor, tWindowSize>
Decorator applying median filtering.
class MinmaxDecor <class TMotor, N>
Decorator applying a min-max (morphological) filter.
struct PwmConfig
Configuration structure for PwmDriver .
class PwmDriver <tPin>
Simple PWM output driver (unipolar).
class SampledDecor <class TMotor>
Decorator that owns the heartbeat and periodically drives TMotor.
struct ServoConfig
Configuration structure for ServoDriver .
class ServoDriver <tPin, tMinPulse, tMiddlePulse, tMaxPulse>
Servo driver using standard Arduino Servo library.
class SimpleSmoothDecor <class TMotor, N>
Decorator applying a simple moving average (sliding window) filter.
struct SlewRateConfig
Configuration structure for SlewRateDecor .
class SlewRateDecor <class TMotor, tMaxStepPerTick>
Decorator that limits maximum rate of change (slew rate / ramp).
struct SlidingWindowDecor <class TMotor, N>
struct SoftwareServoConfig
Configuration structure for SoftwareServoDriver .
class SoftwareServoDriver <tPin, tMinPulse, tMiddlePulse, tMaxPulse>
Software-based servo driver using millis() for timing.
class SteeringActuator <class TDriver, tLeftPos, tCenterPos, tRightPos>
Steering actuator (centered servo) controller.
struct SteeringConfig
Configuration structure for SteeringActuator .
struct TA6586Config
Configuration structure for TA6586Driver .
class TA6586Driver <tForwardPin, tBackwardPin>
Driver for the TA6586 (classic dual H-bridge) motor driver.
struct TB6612Config
Configuration structure for TB6612FNGDriver .
class TB6612FNGDriver <tPinSpeed, tPinMode1, tPinMode2>
Driver for the TB6612FNG dual H-bridge motor driver.

Public Types

Type Name
typedef ServoDriver< tPin, tMinPulse,(tMaxPulse+tMinPulse)/2, tMaxPulse > ServoFlatDriver
typedef SoftwareServoDriver< tPin, tMinPulse,(tMaxPulse+tMinPulse)/2, tMaxPulse > SoftwareServoFlatDriver

Public Attributes

Type Name
signed short kDefaultBend = 0
unsigned short kDefaultKickDurationMs = 20
signed short kDefaultKickPower = 1000
unsigned short kInertiaMass = 5
signed short kMaxBend = 10
signed short kMaxKickPower = 1000
signed short kMinBend = -10

Public Functions

Type Name
void universalWrite (unsigned char aPin, unsigned char aValue)

Public Types Documentation

typedef ServoFlatDriver

using evam::ServoFlatDriver = ServoDriver<tPin, tMinPulse, (tMaxPulse + tMinPulse) / 2, tMaxPulse>;

typedef SoftwareServoFlatDriver

using evam::SoftwareServoFlatDriver = SoftwareServoDriver<tPin, tMinPulse, (tMaxPulse + tMinPulse) / 2, tMaxPulse>;

Public Attributes Documentation

variable kDefaultBend

signed short evam::kDefaultBend;

variable kDefaultKickDurationMs

unsigned short evam::kDefaultKickDurationMs;

variable kDefaultKickPower

signed short evam::kDefaultKickPower;

variable kInertiaMass

unsigned short evam::kInertiaMass;

variable kMaxBend

signed short evam::kMaxBend;

variable kMaxKickPower

signed short evam::kMaxKickPower;

variable kMinBend

signed short evam::kMinBend;

Public Functions Documentation

function universalWrite

void evam::universalWrite (
    unsigned char aPin,
    unsigned char aValue
) 


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