2023-Robot
Robot code for 2023 FRC season by Argos, FRC team #1756
Loading...
Searching...
No Matches
vibration.h File Reference
#include <units/time.h>
#include <functional>

Go to the source code of this file.

Classes

struct  argos_lib::VibrationStatus
 Vibration percentages that can be sent to controller for user feedback. More...
 

Namespaces

namespace  argos_lib
 

Typedefs

using argos_lib::VibrationModel = std::function< VibrationStatus()>
 

Functions

VibrationModel argos_lib::VibrationOff ()
 Turn off vibration.
 
VibrationModel argos_lib::VibrationConstant (double intensity)
 Set vibration to a constant value where left and right are the same intensity.
 
VibrationModel argos_lib::VibrationConstant (double intensityLeft, double intensityRight)
 Set vibration to a constant value where left and right have discrete intensities.
 
VibrationModel argos_lib::VibrationSyncPulse (units::millisecond_t pulsePeriod, double intensityOn, double intensityOff=0.0)
 Toggle vibration between intensityOn and intensityOff levels. Left and right have the same vibration intensity.
 
VibrationModel argos_lib::VibrationSyncWave (units::millisecond_t pulsePeriod, double intensityOn, double intensityOff=0.0)
 Smoothly transition vibration between intensityOn and intensityOff levels. Left and right have the same vibration intensity.
 
VibrationModel argos_lib::VibrationAlternatePulse (units::millisecond_t pulsePeriod, double intensityOn, double intensityOff=0.0)
 Toggle vibration between intensityOn and intensityOff levels. Left output is in intensityOn phase while right output is in intensityOff phase and vice-versa.
 
VibrationModel argos_lib::VibrationAlternateWave (units::millisecond_t pulsePeriod, double intensityOn, double intensityOff=0.0)
 Smoothly transition vibration between intensityOn and intensityOff levels. Left output is in intensityOn phase while right output is in intensityOff phase and vice-versa.
 
VibrationModel argos_lib::TemporaryVibrationPattern (VibrationModel temporaryModel, units::millisecond_t temporaryModelDuration, VibrationModel lastingModel=VibrationOff())
 Run a vibration model for a specified duration, then run another model in perpetuity thereafter.