2023-Robot
Robot code for 2023 FRC season by Argos, FRC team #1756
Loading...
Searching...
No Matches
OuiOuiPlacerSubsystem Class Reference

#include <oui_oui_placer_subsystem.h>

Inheritance diagram for OuiOuiPlacerSubsystem:

Public Member Functions

 OuiOuiPlacerSubsystem (argos_lib::RobotInstance instance)
 
void Periodic () override
 
void SetOuiOuiSpeed (double percentOutput, bool overrideSoftLimits=false)
 Sets the speed of placer mechanism motor.
 
void StopOuiOuiPlacer ()
 Stops the oui oui placer, and sets to motor's neutural mode.
 
units::degree_t GetOuiOuiAngle ()
 Retrieves the current angle the oui oui placer.
 
void EnablePlacerSoftLimits ()
 Turns on soft limits of placer.
 
void DisablePlacerSoftLimits ()
 Turns off soft limits of placer.
 
bool ForwardSoftLimitExceeded ()
 
bool ReverseSoftLimitExceeded ()
 
bool IsStalled ()
 

Private Attributes

argos_lib::RobotInstance m_instance
 
bool m_manualOverride
 
WPI_TalonFX m_ouiOuiDrive
 
argos_lib::NTMotorPIDTuner m_ouiOuiTuner
 
argos_lib::Debouncer m_stallDebounce
 
bool m_stalled
 
bool m_softLimitsEnabled
 

Detailed Description

Constructor & Destructor Documentation

◆ OuiOuiPlacerSubsystem()

OuiOuiPlacerSubsystem::OuiOuiPlacerSubsystem ( argos_lib::RobotInstance  instance)
explicit

Member Function Documentation

◆ DisablePlacerSoftLimits()

void OuiOuiPlacerSubsystem::DisablePlacerSoftLimits ( )

Turns off soft limits of placer.

◆ EnablePlacerSoftLimits()

void OuiOuiPlacerSubsystem::EnablePlacerSoftLimits ( )

Turns on soft limits of placer.

◆ ForwardSoftLimitExceeded()

bool OuiOuiPlacerSubsystem::ForwardSoftLimitExceeded ( )

◆ GetOuiOuiAngle()

units::degree_t OuiOuiPlacerSubsystem::GetOuiOuiAngle ( )

Retrieves the current angle the oui oui placer.

Returns
Angle of oui oui placer system relative to robot frame, specifically it's revolution around robot Y

◆ IsStalled()

bool OuiOuiPlacerSubsystem::IsStalled ( )

◆ Periodic()

void OuiOuiPlacerSubsystem::Periodic ( )
override

Will be called periodically whenever the CommandScheduler runs.

◆ ReverseSoftLimitExceeded()

bool OuiOuiPlacerSubsystem::ReverseSoftLimitExceeded ( )

◆ SetOuiOuiSpeed()

void OuiOuiPlacerSubsystem::SetOuiOuiSpeed ( double  percentOutput,
bool  overrideSoftLimits = false 
)

Sets the speed of placer mechanism motor.

Parameters
percentOutputFraction of max power to set motor to, bounded on [-1, 1]
overrideSoftLimitsTrue temporarily disables soft limits

◆ StopOuiOuiPlacer()

void OuiOuiPlacerSubsystem::StopOuiOuiPlacer ( )

Stops the oui oui placer, and sets to motor's neutural mode.

Member Data Documentation

◆ m_instance

argos_lib::RobotInstance OuiOuiPlacerSubsystem::m_instance
private

◆ m_manualOverride

bool OuiOuiPlacerSubsystem::m_manualOverride
private

◆ m_ouiOuiDrive

WPI_TalonFX OuiOuiPlacerSubsystem::m_ouiOuiDrive
private

◆ m_ouiOuiTuner

argos_lib::NTMotorPIDTuner OuiOuiPlacerSubsystem::m_ouiOuiTuner
private

◆ m_softLimitsEnabled

bool OuiOuiPlacerSubsystem::m_softLimitsEnabled
private

◆ m_stallDebounce

argos_lib::Debouncer OuiOuiPlacerSubsystem::m_stallDebounce
private

◆ m_stalled

bool OuiOuiPlacerSubsystem::m_stalled
private

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