Namespace 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