WPILibC++ 2025.2.1
Loading...
Searching...
No Matches
frc::PneumaticsControlModule Class Reference

Module class for controlling a Cross The Road Electronics Pneumatics Control Module. More...

#include <frc/PneumaticsControlModule.h>

Inheritance diagram for frc::PneumaticsControlModule:
frc::PneumaticsBase

Public Member Functions

 PneumaticsControlModule ()
 Constructs a PneumaticsControlModule with the default ID (0).
 
 PneumaticsControlModule (int module)
 Constructs a PneumaticsControlModule.
 
 ~PneumaticsControlModule () override=default
 
bool GetCompressor () const override
 Returns whether the compressor is active or not.
 
void DisableCompressor () override
 Disables the compressor.
 
void EnableCompressorDigital () override
 Enables the compressor in digital mode using the digital pressure switch.
 
void EnableCompressorAnalog (units::pounds_per_square_inch_t minPressure, units::pounds_per_square_inch_t maxPressure) override
 Enables the compressor in digital mode.
 
void EnableCompressorHybrid (units::pounds_per_square_inch_t minPressure, units::pounds_per_square_inch_t maxPressure) override
 Enables the compressor in digital mode.
 
CompressorConfigType GetCompressorConfigType () const override
 Returns the active compressor configuration.
 
bool GetPressureSwitch () const override
 Returns the state of the pressure switch.
 
units::ampere_t GetCompressorCurrent () const override
 Returns the current drawn by the compressor.
 
bool GetCompressorCurrentTooHighFault () const
 Return whether the compressor current is currently too high.
 
bool GetCompressorCurrentTooHighStickyFault () const
 Returns whether the compressor current has been too high since sticky faults were last cleared.
 
bool GetCompressorShortedFault () const
 Returns whether the compressor is currently shorted.
 
bool GetCompressorShortedStickyFault () const
 Returns whether the compressor has been shorted since sticky faults were last cleared.
 
bool GetCompressorNotConnectedFault () const
 Returns whether the compressor is currently disconnected.
 
bool GetCompressorNotConnectedStickyFault () const
 Returns whether the compressor has been disconnected since sticky faults were last cleared.
 
bool GetSolenoidVoltageFault () const
 Returns whether the solenoid is currently reporting a voltage fault.
 
bool GetSolenoidVoltageStickyFault () const
 Returns whether the solenoid has reported a voltage fault since sticky faults were last cleared.
 
void ClearAllStickyFaults ()
 Clears all sticky faults on this device.
 
void SetSolenoids (int mask, int values) override
 Sets solenoids on a pneumatics module.
 
int GetSolenoids () const override
 Gets a bitmask of solenoid values.
 
int GetModuleNumber () const override
 Get module number for this module.
 
int GetSolenoidDisabledList () const override
 Get a bitmask of disabled solenoids.
 
void FireOneShot (int index) override
 Fire a single solenoid shot.
 
void SetOneShotDuration (int index, units::second_t duration) override
 Set the duration for a single solenoid shot.
 
bool CheckSolenoidChannel (int channel) const override
 Check if a solenoid channel is valid.
 
int CheckAndReserveSolenoids (int mask) override
 Check to see if the solenoids marked in the bitmask can be reserved, and if so, reserve them.
 
void UnreserveSolenoids (int mask) override
 Unreserve the solenoids marked in the bitmask.
 
bool ReserveCompressor () override
 Reserve the compressor.
 
void UnreserveCompressor () override
 Unreserve the compressor.
 
units::volt_t GetAnalogVoltage (int channel) const override
 Unsupported by the CTRE PCM.
 
units::pounds_per_square_inch_t GetPressure (int channel) const override
 Unsupported by the CTRE PCM.
 
Solenoid MakeSolenoid (int channel) override
 Create a solenoid object for the specified channel.
 
DoubleSolenoid MakeDoubleSolenoid (int forwardChannel, int reverseChannel) override
 Create a double solenoid object for the specified channels.
 
Compressor MakeCompressor () override
 Create a compressor object.
 
- Public Member Functions inherited from frc::PneumaticsBase
virtual ~PneumaticsBase ()=default
 

Friends

class DataStore
 
class PneumaticsBase
 

Additional Inherited Members

- Static Public Member Functions inherited from frc::PneumaticsBase
static std::shared_ptr< PneumaticsBaseGetForType (int module, PneumaticsModuleType moduleType)
 For internal use to get a module for a specific type.
 
static int GetDefaultForType (PneumaticsModuleType moduleType)
 For internal use to get the default for a specific type.
 

Detailed Description

Module class for controlling a Cross The Road Electronics Pneumatics Control Module.

Constructor & Destructor Documentation

◆ PneumaticsControlModule() [1/2]

frc::PneumaticsControlModule::PneumaticsControlModule ( )

Constructs a PneumaticsControlModule with the default ID (0).

◆ PneumaticsControlModule() [2/2]

frc::PneumaticsControlModule::PneumaticsControlModule ( int module)
explicit

Constructs a PneumaticsControlModule.

Parameters
modulemodule number to construct

◆ ~PneumaticsControlModule()

frc::PneumaticsControlModule::~PneumaticsControlModule ( )
overridedefault

Member Function Documentation

◆ CheckAndReserveSolenoids()

int frc::PneumaticsControlModule::CheckAndReserveSolenoids ( int mask)
overridevirtual

Check to see if the solenoids marked in the bitmask can be reserved, and if so, reserve them.

Parameters
maskThe bitmask of solenoids to reserve. The LSB represents solenoid 0.
Returns
0 if successful; mask of solenoids that couldn't be allocated otherwise

Implements frc::PneumaticsBase.

◆ CheckSolenoidChannel()

bool frc::PneumaticsControlModule::CheckSolenoidChannel ( int channel) const
overridevirtual

Check if a solenoid channel is valid.

Parameters
channelChannel to check
Returns
True if channel exists

Implements frc::PneumaticsBase.

◆ ClearAllStickyFaults()

void frc::PneumaticsControlModule::ClearAllStickyFaults ( )

Clears all sticky faults on this device.

◆ DisableCompressor()

void frc::PneumaticsControlModule::DisableCompressor ( )
overridevirtual

Disables the compressor.

The compressor will not turn on until EnableCompressorDigital() is called.

Implements frc::PneumaticsBase.

◆ EnableCompressorAnalog()

void frc::PneumaticsControlModule::EnableCompressorAnalog ( units::pounds_per_square_inch_t minPressure,
units::pounds_per_square_inch_t maxPressure )
overridevirtual

Enables the compressor in digital mode.

Analog mode is unsupported by the CTRE PCM.

Parameters
minPressureUnsupported.
maxPressureUnsupported.
See also
EnableCompressorDigital()

Implements frc::PneumaticsBase.

◆ EnableCompressorDigital()

void frc::PneumaticsControlModule::EnableCompressorDigital ( )
overridevirtual

Enables the compressor in digital mode using the digital pressure switch.

The compressor will turn on when the pressure switch indicates that the system is not full, and will turn off when the pressure switch indicates that the system is full.

Implements frc::PneumaticsBase.

◆ EnableCompressorHybrid()

void frc::PneumaticsControlModule::EnableCompressorHybrid ( units::pounds_per_square_inch_t minPressure,
units::pounds_per_square_inch_t maxPressure )
overridevirtual

Enables the compressor in digital mode.

Hybrid mode is unsupported by the CTRE PCM.

Parameters
minPressureUnsupported.
maxPressureUnsupported.
See also
EnableCompressorDigital()

Implements frc::PneumaticsBase.

◆ FireOneShot()

void frc::PneumaticsControlModule::FireOneShot ( int index)
overridevirtual

Fire a single solenoid shot.

Parameters
indexsolenoid index

Implements frc::PneumaticsBase.

◆ GetAnalogVoltage()

units::volt_t frc::PneumaticsControlModule::GetAnalogVoltage ( int channel) const
overridevirtual

Unsupported by the CTRE PCM.

Parameters
channelUnsupported.
Returns
0

Implements frc::PneumaticsBase.

◆ GetCompressor()

bool frc::PneumaticsControlModule::GetCompressor ( ) const
overridevirtual

Returns whether the compressor is active or not.

Returns
True if the compressor is on - otherwise false.

Implements frc::PneumaticsBase.

◆ GetCompressorConfigType()

CompressorConfigType frc::PneumaticsControlModule::GetCompressorConfigType ( ) const
overridevirtual

Returns the active compressor configuration.

Returns
The active compressor configuration.

Implements frc::PneumaticsBase.

◆ GetCompressorCurrent()

units::ampere_t frc::PneumaticsControlModule::GetCompressorCurrent ( ) const
overridevirtual

Returns the current drawn by the compressor.

Returns
The current drawn by the compressor.

Implements frc::PneumaticsBase.

◆ GetCompressorCurrentTooHighFault()

bool frc::PneumaticsControlModule::GetCompressorCurrentTooHighFault ( ) const

Return whether the compressor current is currently too high.

Returns
True if the compressor current is too high, otherwise false.
See also
GetCompressorCurrentTooHighStickyFault()

◆ GetCompressorCurrentTooHighStickyFault()

bool frc::PneumaticsControlModule::GetCompressorCurrentTooHighStickyFault ( ) const

Returns whether the compressor current has been too high since sticky faults were last cleared.

This fault is persistent and can be cleared by ClearAllStickyFaults()

Returns
True if the compressor current has been too high since sticky faults were last cleared.
See also
GetCompressorCurrentTooHighFault()

◆ GetCompressorNotConnectedFault()

bool frc::PneumaticsControlModule::GetCompressorNotConnectedFault ( ) const

Returns whether the compressor is currently disconnected.

Returns
True if compressor is currently disconnected, otherwise false.
See also
GetCompressorNotConnectedStickyFault()

◆ GetCompressorNotConnectedStickyFault()

bool frc::PneumaticsControlModule::GetCompressorNotConnectedStickyFault ( ) const

Returns whether the compressor has been disconnected since sticky faults were last cleared.

This fault is persistent and can be cleared by ClearAllStickyFaults()

Returns
True if the compressor has been disconnected since sticky faults were last cleared, otherwise false.
See also
GetCompressorNotConnectedFault()

◆ GetCompressorShortedFault()

bool frc::PneumaticsControlModule::GetCompressorShortedFault ( ) const

Returns whether the compressor is currently shorted.

Returns
True if the compressor is currently shorted, otherwise false.
See also
GetCompressorShortedStickyFault()

◆ GetCompressorShortedStickyFault()

bool frc::PneumaticsControlModule::GetCompressorShortedStickyFault ( ) const

Returns whether the compressor has been shorted since sticky faults were last cleared.

This fault is persistent and can be cleared by ClearAllStickyFaults()

Returns
True if the compressor has been shorted since sticky faults were last cleared, otherwise false.
See also
GetCompressorShortedFault()

◆ GetModuleNumber()

int frc::PneumaticsControlModule::GetModuleNumber ( ) const
overridevirtual

Get module number for this module.

Returns
module number

Implements frc::PneumaticsBase.

◆ GetPressure()

units::pounds_per_square_inch_t frc::PneumaticsControlModule::GetPressure ( int channel) const
overridevirtual

Unsupported by the CTRE PCM.

Parameters
channelUnsupported.
Returns
0

Implements frc::PneumaticsBase.

◆ GetPressureSwitch()

bool frc::PneumaticsControlModule::GetPressureSwitch ( ) const
overridevirtual

Returns the state of the pressure switch.

Returns
True if pressure switch indicates that the system is full, otherwise false.

Implements frc::PneumaticsBase.

◆ GetSolenoidDisabledList()

int frc::PneumaticsControlModule::GetSolenoidDisabledList ( ) const
overridevirtual

Get a bitmask of disabled solenoids.

Returns
Bitmask indicating disabled solenoids. The LSB represents solenoid 0.

Implements frc::PneumaticsBase.

◆ GetSolenoids()

int frc::PneumaticsControlModule::GetSolenoids ( ) const
overridevirtual

Gets a bitmask of solenoid values.

Returns
Bitmask containing the state of the solenoids. The LSB represents solenoid 0.

Implements frc::PneumaticsBase.

◆ GetSolenoidVoltageFault()

bool frc::PneumaticsControlModule::GetSolenoidVoltageFault ( ) const

Returns whether the solenoid is currently reporting a voltage fault.

Returns
True if solenoid is reporting a fault, otherwise false.
See also
GetSolenoidVoltageStickyFault()

◆ GetSolenoidVoltageStickyFault()

bool frc::PneumaticsControlModule::GetSolenoidVoltageStickyFault ( ) const

Returns whether the solenoid has reported a voltage fault since sticky faults were last cleared.

This fault is persistent and can be cleared by ClearAllStickyFaults()

Returns
True if solenoid is reporting a fault, otherwise false.
See also
GetSolenoidVoltageFault()

◆ MakeCompressor()

Compressor frc::PneumaticsControlModule::MakeCompressor ( )
overridevirtual

Create a compressor object.

Returns
Compressor object

Implements frc::PneumaticsBase.

◆ MakeDoubleSolenoid()

DoubleSolenoid frc::PneumaticsControlModule::MakeDoubleSolenoid ( int forwardChannel,
int reverseChannel )
overridevirtual

Create a double solenoid object for the specified channels.

Parameters
forwardChannelsolenoid channel for forward
reverseChannelsolenoid channel for reverse
Returns
DoubleSolenoid object

Implements frc::PneumaticsBase.

◆ MakeSolenoid()

Solenoid frc::PneumaticsControlModule::MakeSolenoid ( int channel)
overridevirtual

Create a solenoid object for the specified channel.

Parameters
channelsolenoid channel
Returns
Solenoid object

Implements frc::PneumaticsBase.

◆ ReserveCompressor()

bool frc::PneumaticsControlModule::ReserveCompressor ( )
overridevirtual

Reserve the compressor.

Returns
true if successful; false if compressor already reserved

Implements frc::PneumaticsBase.

◆ SetOneShotDuration()

void frc::PneumaticsControlModule::SetOneShotDuration ( int index,
units::second_t duration )
overridevirtual

Set the duration for a single solenoid shot.

Parameters
indexsolenoid index
durationshot duration

Implements frc::PneumaticsBase.

◆ SetSolenoids()

void frc::PneumaticsControlModule::SetSolenoids ( int mask,
int values )
overridevirtual

Sets solenoids on a pneumatics module.

Parameters
maskBitmask indicating which solenoids to set. The LSB represents solenoid 0.
valuesBitmask indicating the desired states of the solenoids. The LSB represents solenoid 0.

Implements frc::PneumaticsBase.

◆ UnreserveCompressor()

void frc::PneumaticsControlModule::UnreserveCompressor ( )
overridevirtual

Unreserve the compressor.

Implements frc::PneumaticsBase.

◆ UnreserveSolenoids()

void frc::PneumaticsControlModule::UnreserveSolenoids ( int mask)
overridevirtual

Unreserve the solenoids marked in the bitmask.

Parameters
maskThe bitmask of solenoids to unreserve. The LSB represents solenoid 0.

Implements frc::PneumaticsBase.

Friends And Related Symbol Documentation

◆ DataStore

friend class DataStore
friend

◆ PneumaticsBase

friend class PneumaticsBase
friend

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