Namespace Pamoja.Kit
Classes
- Anomaly
Flags a reading that stands out from the ones before it.
- Calibration
Turns a raw sensor count into the units the reading is actually in.
- Complementary
Fuses a drifting rate, such as a gyroscope's, with a noisy absolute reading, such as an accelerometer's tilt, into one steady estimate.
- Debounce
Stops a flickering input from acting until it has settled.
- Depletion
Warns before a falling level runs out, by projecting its rate of fall.
- EStop
An emergency stop that latches until a person resets it.
- Geofence
Keeps a tracked point inside an area, and notices when it leaves.
- Kalman
Estimates a true value from noisy readings.
- Kit
The stateless helpers from the pamoja kit.
- Limits
Speed and acceleration limits, with the motion they last allowed.
- Median
Rejects a single wild reading, where an average would let it pull the answer.
- Odometry
Tracks a robot's pose by adding up its motion.
- Pid
Holds a value at a setpoint by trading off present, past, and predicted error.
- Quadrature
Counts a quadrature encoder's steps from its A and B channels.
- Ramp
Limits how fast a value may change, so a load is never slammed.
- SafetyGate
The gate every motion command passes through: an e-stop, a watchdog, and limits.
- Smoother
Smooths a noisy reading by weighting each new sample against the running value.
- Surge
Notices a step change between successive readings.
- Thermostat
Switches a load on and off around a setpoint, with hysteresis to stop chatter.
- Transform
A 4x4 homogeneous transform: a rotation and a translation.
- Trend
Fits a line through recent readings, so a slow drift shows before it matters.
- Trigger
Fires once when a reading crosses a line, and not again until it has come back past the release band.
- Units
Converts readings between the units a sensor reports and the ones a person reads.
- Watchdog
A deadman timer that expires unless fed often enough.
- Window
A rolling window of the most recent readings, with the stats over them.
Structs
- Ackermann
Car-like steering: one steered axle and a driven axle a wheelbase apart.
- Coordinate
A latitude and longitude in degrees.
- DhParameters
One joint of a serial arm in the Denavit-Hartenberg convention.
- DiffDrive
Wheel speeds for a desired body motion, and the body motion measured wheel speeds make, for a robot that steers by spinning two wheels at different speeds.
- Esc
An electronic speed controller's pulse widths from full reverse to full forward.
- Guidance
The command toward a waypoint, with the geometry behind it.
- Mecanum
A four-wheel mecanum base, which drives, strafes, and turns at once.
- Pose
Where a robot is and which way it faces.
- QuadratureScale
Turns encoder steps into the distance and speed of the wheel they turn with.
- ServoMap
A hobby servo's pulse widths across its travel.
- SkidSteer
A tracked or four-wheel drive that turns by skidding, with its track widened by a slip factor.
- Tilt
Roll and pitch, in degrees.
- Twist
How fast a robot is asked to move.
- TwoLinkArm
A planar arm of two links, with a closed-form inverse.
- WaypointFollower
Steers toward a waypoint: pivot toward it, then drive, slowing as the heading error grows.
- WheelSpeeds
The four wheel speeds of a mecanum base.
Enums
- Elbow
Which way a TwoLinkArm's elbow bends; both reach the same point.