librmb 1.0
Rambunction 4330 Utility Library
Loading...
Searching...
No Matches
rmb::SparkMaxPositionController Class Reference

#include <rmb/motorcontrol/sparkmax/SparkMaxPositionController.h>

Inheritance diagram for rmb::SparkMaxPositionController:
rmb::AngularPositionController

Classes

struct  CreateInfo
 

Public Types

using MotorConfig = SparkMaxPositionControllerHelper::MotorConfig
 
using PIDConfig = SparkMaxPositionControllerHelper::PIDConfig
 
using Range = SparkMaxPositionControllerHelper::Range
 
using ProfileConfig = SparkMaxPositionControllerHelper::ProfileConfig
 
using EncoderType = SparkMaxPositionControllerHelper::EncoderType
 
using LimitSwitchConfig = SparkMaxPositionControllerHelper::LimitSwitchConfig
 
using FeedbackConfig = SparkMaxPositionControllerHelper::FeedbackConfig
 
- Public Types inherited from rmb::AngularPositionController
using ConversionUnit
 
using ConversionUnit_t = units::unit_t<ConversionUnit>
 

Public Member Functions

 SparkMaxPositionController (SparkMaxPositionController &&)=delete
 
 SparkMaxPositionController (const SparkMaxPositionController &)=delete
 
 SparkMaxPositionController (const CreateInfo &createInfo)
 
void setPosition (units::radian_t position) override
 
units::radian_t getTargetPosition () const override
 
virtual void setPower (double power) override
 
virtual double getPower () const override
 
units::radian_t getMinPosition () const override
 
units::radian_t getMaxPosition () const override
 
void disable () override
 
void stop () override
 
units::radians_per_second_t getVelocity () const override
 
units::radian_t getPosition () const override
 
void setEncoderPosition (units::radian_t position=0_rad) override
 
units::radian_t getTolerance () const override
 
- Public Member Functions inherited from rmb::AngularPositionController
virtual units::radian_t getError () const
 
virtual bool atTarget () const
 

Detailed Description

A wrapper around the SparkMax motorcontroller that allows for the user to set and get the position of the motor accurately through PID functionallity

Member Function Documentation

◆ disable()

void rmb::SparkMaxPositionController::disable ( )
overridevirtual

Disables the motor.

Implements rmb::AngularPositionController.

◆ getMaxPosition()

units::radian_t rmb::SparkMaxPositionController::getMaxPosition ( ) const
overridevirtual

Gets the maximum position.

Returns
The maximum position in radians.

Implements rmb::AngularPositionController.

◆ getMinPosition()

units::radian_t rmb::SparkMaxPositionController::getMinPosition ( ) const
overridevirtual

Gets the minimum position.

Returns
The minimum position in radians.

Implements rmb::AngularPositionController.

◆ getPosition()

units::radian_t rmb::SparkMaxPositionController::getPosition ( ) const
overridevirtual

Gets the position of the motor.

Returns
The position of the motor in radians.

Implements rmb::AngularPositionController.

◆ getPower()

virtual double rmb::SparkMaxPositionController::getPower ( ) const
overridevirtual

Retrieve the percentage [0.0, 1.0] output of the motor

Implements rmb::AngularPositionController.

◆ getTargetPosition()

units::radian_t rmb::SparkMaxPositionController::getTargetPosition ( ) const
overridevirtual

Gets the target position.

Returns
The target position in radians.

Implements rmb::AngularPositionController.

◆ getTolerance()

units::radian_t rmb::SparkMaxPositionController::getTolerance ( ) const
overridevirtual

Gets a controllers tolerance

Returns
tolerance in radians

Implements rmb::AngularPositionController.

◆ getVelocity()

units::radians_per_second_t rmb::SparkMaxPositionController::getVelocity ( ) const
overridevirtual

Gets the velocity of the motor.

Returns
The velocity of the motor in radians per second.

Implements rmb::AngularPositionController.

◆ setEncoderPosition()

void rmb::SparkMaxPositionController::setEncoderPosition ( units::radian_t position = 0_rad)
overridevirtual

Set the position the motor reports

Parameters
positionThe new motor position

Implements rmb::AngularPositionController.

◆ setPosition()

void rmb::SparkMaxPositionController::setPosition ( units::radian_t position)
overridevirtual

Setting the target position.

Parameters
positionThe target position in radians.

Implements rmb::AngularPositionController.

◆ setPower()

virtual void rmb::SparkMaxPositionController::setPower ( double power)
overridevirtual

Common interface for setting a mechanism's raw power output.

Implements rmb::AngularPositionController.

◆ stop()

void rmb::SparkMaxPositionController::stop ( )
overridevirtual

Stops the motor until setPosition is called again.

Implements rmb::AngularPositionController.


The documentation for this class was generated from the following file: