|
JMotor
|
| CJControlLoop | Interface for control loop used by JMotorControllerClosed |
| CJControlLoopBasic | Simple control loop for use with JMotorControllerClosed, can turn off motor if nothing has moved for a while |
| CJDrivetrain | Defines interface for controlling any ground-based drivetrain |
| CJDrivetrainBasic | Interface for a drivetrain with only simple velocity control |
| CJDrivetrainControllerBasic | Basic drivetrain controller, supports smoothed movements on each axis |
| CJDrivetrainFieldOriented | Interface for a drivetrain that makes it into field oriented |
| ▼CJDrivetrainMecanum | Drivetrain that controls a mecanum wheeled robot |
| CMotorFloats | |
| CMotors | |
| CJDrivetrainSwerve | Number of swerve modules |
| CJDrivetrainTwoSide | Child class of JDrivetrain for controlling a drivetrain with one JMotorController for each side of the drivetrain |
| CJEncoder | Defines common interface for JEncoder |
| CJEncoderAS5048bI2C | Reads a type of absolute encoder https://ams.com/as0548b (uses I2C) |
| CJEncoderAS5600I2C | Reads a type of absolute encoder https://ams.com/en/as5600 (uses I2C) |
| CJEncoderBSED | Reads a quadrature (incremental) encoder that is connected to a Byte Sized Encoder Decoder board connected over I2C to the main controller |
| ▼CJEncoderPWMAbsolute | Reads a PWM signal from an absolute encoder |
| CpwmSettings | Struct for holding parameters for reading PWM Absolute Encoders |
| CJEncoderPWMAbsoluteAttachInterrupt | Uses attachInterrupt() (could be used with standard avr arduinos but only with pins that support attachInterrupt()) platform: esp32, teensy |
| CJEncoderPWMAbsolutePinChange | Uses a pin change interrupt library to support more pins than attachInterrupt() |
| CJEncoderQuadrature | Reads a quadrature (incremental) encoder |
| CJEncoderQuadratureAttachInterrupt | Uses attachInterrupt() platform: esp32, teensy (could be used with standard avr arduinos but only with pins that support attachInterrupt()) |
| CJEncoderQuadraturePinChange | Uses a pin change interrupt library to support more pins than attachInterrupt() |
| CJEncoderSingle | Reads a single channel (incremental) encoder |
| CJEncoderSingleAttachInterrupt | Uses attachInterrupt() platform: esp32, teensy (could be used with standard avr arduinos but only with pins that support attachInterrupt()) |
| CJEncoderSinglePinChange | Uses a pin change interrupt library to support more pins than attachInterrupt() |
| CJMotorCompBasic | Converts from speed to driver input compensating for variable supply voltage |
| CJMotorCompDirect | Converts from speed to driver input with a simple multiplier |
| CJMotorCompensator | This class defines a common interface for converting from speed to driver input. It should compensate for factors like motor response and supply voltage |
| CJMotorCompStandard | Converts from speed to driver input compensating for motors not being perfect |
| CJMotorCompStandardConfig | Struct for containing settings for JMotorCompStandard |
| CJMotorController | This class defines a common interface for classes which control velocity and position of a motor controlled by a JMotorDriver |
| CJMotorControllerBase | This class defines a common interface for classes which control velocity of a motor controlled by a JMotorDriver |
| CJMotorControllerBasic | A motor controller object that uses a JMotorCompensator to set velocity of a motor |
| CJMotorControllerClosed | Closed loop (uses encoder) motor controller |
| CJMotorControllerOpen | This class controls velocity and position of a motor without any encoder feedback |
| CJMotorDriver | Defines common interface for all types of JMotorDrivers |
| CJMotorDriverAvrHBridge | |
| CJMotorDriverAvrL293 | L293 motor driver chip: https://www.ti.com/lit/ds/symlink/l293.pdf |
| CJMotorDriverAvrPWM | Wrapper for analogWrite() |
| CJMotorDriverAvrPWMDir | For motor controllers with one direction input and one speed input pin |
| CJMotorDriverAvrServo | Wraps standard servo library. For servos and motor controllers that use servo signals (ESCs) |
| CJMotorDriverDual | Control two JMotorDrivers (of any type) as if they are one driver |
| CJMotorDriverEsp32HBridge | Controls an H-bridge motor driver with two pins When wiring to an L293D or similar motor driver, connect the enable pin to 5 volts, and the two other input pins to the ESP32. Unlike JMotorDriverEsp32L293, this driver uses two pins to control the motor. Unlike JMotorDriverEsp32HBridgeTwoLedcChannels, this driver uses a single LEDc channel, so this is better than JMotorDriverEsp32HBridgeTwoLedcChannels |
| CJMotorDriverEsp32HBridgeTwoLedcChannels | In most cases, JMotorDriverESP32HBridge is better, this driver uses two ledc (pwm) channels instead of efficiently using just one |
| CJMotorDriverEsp32L293 | L293 motor driver chip: https://www.ti.com/lit/ds/symlink/l293.pdf also works with L298 drivers or anything with two direction pins and an enable pin! |
| CJMotorDriverEsp32PWM | Uses ledc to output PWM approximation of an analog output ESP32s now have normal analogWrite() so the "Avr" driver will work, but this driver gives a bit more control over resolution and frequency |
| CJMotorDriverEsp32PWMDir | For motor controllers with one direction input and one speed input pin |
| CJMotorDriverEsp32Servo | For servos and motor controllers that use servo signals (ESCs) |
| CJMotorDriverPCA9685HBridge | Controls an H-bridge motor driver controlled by a PCA9685 Tested on the Alfredo Systems NoU3 https://github.com/AlfredoSystems/Alfredo-NoU3 |
| CJMotorDriverServo | Class that can be used to specify a driver that controls specifically a servo |
| CJMotorDriverServoAdvanced | Defines interface for servo driver with variable frequency, subclass of JMotorDriverServo and JMotorDriver |
| CJMotorDriverServoAdvancedDual | Control two JMotorDriverServoAdvanced as if they are one driver |
| CJMotorDriverServoDual | Control two JMotorDriverServos as if they are one driver |
| CJMotorDriverTMC7300 | Control a motor connected to a TMC7300 motor driver chip |
| CJServoController | Class for controlling JMotorDriverServo, with angle calibration and accel and velocity limiting |
| CJServoControllerAdvanced | Class for controlling JMotorDriverServoAdvanced, with power reducing option along with standard JServoController features |
| CJServoControllerGentle | JServoControllerGentle is an extension of JServoController that uses JServoStallSensing to make a servo grip with a specific amount of force |
| CJServoControllerStallProtected | This child class of JServoController uses JServoStallSensing to reduce servo power |
| CJServoCurrentSensor | Implements JServoStallSensing interface |
| CJServoStallSensing | Defines interface for classes that can measure how hard a servo is working |
| CJSwerveAngleControlLoop | |
| CJSwerveAngleControlLoopP | |
| CJSwerveModule | Defines a common interface for swerve modules |
| CJSwerveModuleDifferential | |
| CJTwoDTransform | Struct for storing a 2 dimensional transformation. Used for telling a drivetrain how to move |
| CJVoltageCompAdjust | Convert voltage to value needed to set driver at to get that voltage, uses reference to variable that should be equal to measured supply voltage |
| CJVoltageCompConst | Convert voltage to value needed to set driver at to get that voltage, with constant value for what supply voltage is |
| CJVoltageCompensator | Convert voltage to value needed to set driver at to get that voltage |
| CJVoltageCompMeasure | Measure supply voltage with analogRead and use that to convert voltage to value needed to set driver at to get that voltage |