WPILibC++  unspecified
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Pages
AnalogPotentiometer Class Reference

Class for reading analog potentiometers. More...

#include <AnalogPotentiometer.h>

Inheritance diagram for AnalogPotentiometer:
Potentiometer LiveWindowSendable PIDSource Sendable

Public Member Functions

 AnalogPotentiometer (int channel, double fullRange=1.0, double offset=0.0)
 AnalogPotentiometer constructor. More...
 
 AnalogPotentiometer (AnalogInput *input, double fullRange=1.0, double offset=0.0)
 Construct an Analog Potentiometer object from an existing Analog Input pointer. More...
 
 AnalogPotentiometer (std::shared_ptr< AnalogInput > input, double fullRange=1.0, double offset=0.0)
 Construct an Analog Potentiometer object from an existing Analog Input pointer. More...
 
virtual double Get () const override
 Get the current reading of the potentiomer. More...
 
virtual double PIDGet () override
 Implement the PIDSource interface. More...
 
virtual std::string GetSmartDashboardType () const override
 
virtual void InitTable (std::shared_ptr< ITable > subtable) override
 Live Window code, only does anything if live window is activated.
 
virtual void UpdateTable () override
 Update the table for this sendable object with the latest values.
 
virtual std::shared_ptr< ITableGetTable () const override
 
virtual void StartLiveWindowMode () override
 AnalogPotentiometers don't have to do anything special when entering the LiveWindow.
 
virtual void StopLiveWindowMode () override
 AnalogPotentiometers don't have to do anything special when exiting the LiveWindow.
 
- Public Member Functions inherited from Potentiometer
virtual void SetPIDSourceType (PIDSourceType pidSource) override
 Set which parameter you are using as a process control variable. More...
 
- Public Member Functions inherited from PIDSource
PIDSourceType GetPIDSourceType () const
 

Additional Inherited Members

- Protected Attributes inherited from PIDSource
PIDSourceType m_pidSource = PIDSourceType::kDisplacement
 

Detailed Description

Class for reading analog potentiometers.

Analog potentiometers read in an analog voltage that corresponds to a position. The position is in whichever units you choose, by way of the scaling and offset constants passed to the constructor.

Author
Alex Henning
Colby Skeggs (rail voltage)

Constructor & Destructor Documentation

AnalogPotentiometer::AnalogPotentiometer ( int  channel,
double  fullRange = 1.0,
double  offset = 0.0 
)
explicit

AnalogPotentiometer constructor.

Construct an Analog Potentiometer object from a channel number.

Use the fullRange and offset values so that the output produces meaningful values. I.E: you have a 270 degree potentiometer and you want the output to be degrees with the halfway point as 0 degrees. The fullRange value is 270.0(degrees) and the offset is -135.0 since the halfway point after scaling is 135 degrees.

This will calculate the result from the fullRange times the fraction of the supply voltage, plus the offset.

Parameters
channelThe analog channel this potentiometer is plugged into.
fullRangeThe scaling to multiply the voltage by to get a meaningful unit.
offsetThe offset to add to the scaled value for controlling the zero value
channelThe channel number on the roboRIO to represent. 0-3 are on-board 4-7 are on the MXP port.
fullRangeThe angular value (in desired units) representing the full 0-5V range of the input.
offsetThe angular value (in desired units) representing the angular output at 0V.
AnalogPotentiometer::AnalogPotentiometer ( AnalogInput input,
double  fullRange = 1.0,
double  offset = 0.0 
)
explicit

Construct an Analog Potentiometer object from an existing Analog Input pointer.

Parameters
channelThe existing Analog Input pointer
fullRangeThe angular value (in desired units) representing the full 0-5V range of the input.
offsetThe angular value (in desired units) representing the angular output at 0V.
AnalogPotentiometer::AnalogPotentiometer ( std::shared_ptr< AnalogInput input,
double  fullRange = 1.0,
double  offset = 0.0 
)
explicit

Construct an Analog Potentiometer object from an existing Analog Input pointer.

Parameters
channelThe existing Analog Input pointer
fullRangeThe angular value (in desired units) representing the full 0-5V range of the input.
offsetThe angular value (in desired units) representing the angular output at 0V.

Member Function Documentation

double AnalogPotentiometer::Get ( ) const
overridevirtual

Get the current reading of the potentiomer.

Get the current reading of the potentiometer.

Returns
The current position of the potentiometer.
The current position of the potentiometer (in the units used for fullRaneg and offset).

Implements Potentiometer.

std::string AnalogPotentiometer::GetSmartDashboardType ( ) const
overridevirtual
Returns
the Smart Dashboard Type

Implements Sendable.

std::shared_ptr< ITable > AnalogPotentiometer::GetTable ( ) const
overridevirtual
Returns
the table that is currently associated with the sendable

Implements Sendable.

double AnalogPotentiometer::PIDGet ( )
overridevirtual

Implement the PIDSource interface.

Returns
The current reading.

Implements PIDSource.


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