2
0
mirror of https://github.com/team2059/Dent synced 2024-12-18 20:52:29 -05:00

Started working on documentation

This commit is contained in:
Austen Adler 2015-03-01 17:19:00 -05:00
parent 4f82b3304c
commit d35d8e95b4
17 changed files with 366 additions and 7 deletions

View File

@ -6,16 +6,44 @@
#include "../../DentRobot.h" #include "../../DentRobot.h"
#include "WPILib.h" #include "WPILib.h"
/**
* @brief Drives the robot without a joystick
*
* Drives the robot given a timeout and joystick values
*/
class AutoDrive: public Command{ class AutoDrive: public Command{
private: private:
double x, y; double x, y;
public: public:
AutoDrive(double); /**
* @brief Constructs AutoDrive
*
* @param double Timeout in seconds
* @param double Joystick x value (default: 0.0)
* @param double Joystick y value (default: 0.75)
*/
AutoDrive(double, double, double); AutoDrive(double, double, double);
/**
* @brief Initializes the class
*/
void Initialize(); void Initialize();
/**
* @brief Drives the robot
*/
void Execute(); void Execute();
/**
* @brief Checks if the command is finished
*
* @return True only if the timeout was reached
*/
bool IsFinished(); bool IsFinished();
/**
* @brief Sets the drivetrain to stop
*/
void End(); void End();
/**
* @brief Calls End()
*/
void Interrupted(); void Interrupted();
}; };
#endif #endif

View File

@ -6,8 +6,27 @@
#include "../../DentRobot.h" #include "../../DentRobot.h"
#include "WPILib.h" #include "WPILib.h"
/**
* @brief The autonomous period of the robot
*
* Contains three sequences selectable from the SmartDashboard
* All sequences will wait for the SmartDashboard value "Auto Wait Time"
*
* Sequence 0: Used for testing only
*
* Sequence 1: Drives forward "Auto Zone Distance" at -0.8 power
*
* Sequence 2: Collects a tote, turns, then drives to the auto zone
*
* Sequence 3: Collects two or three totes then drives to auto zone
*/
class Autonomous: public CommandGroup{ class Autonomous: public CommandGroup{
public: public:
/**
* @brief Constructs Autonomous
*
* @param int The sequence to run
*/
Autonomous(int); Autonomous(int);
}; };
#endif #endif

View File

@ -6,8 +6,16 @@
#include "../../DentRobot.h" #include "../../DentRobot.h"
#include "WPILib.h" #include "WPILib.h"
/**
* @brief Collects one tote
*
* Rolls collector wheels in and drives forward in parallel
*/
class CollectTote: public CommandGroup{ class CollectTote: public CommandGroup{
public: public:
/**
* @brief Constructs CollectTote
*/
CollectTote(); CollectTote();
}; };
#endif #endif

View File

@ -6,8 +6,16 @@
#include "../../DentRobot.h" #include "../../DentRobot.h"
#include "WPILib.h" #include "WPILib.h"
/**
* @brief Releases one tote
*
* Rolls collector wheels out and drives backwards in parallel
*/
class ReleaseTote: public CommandGroup{ class ReleaseTote: public CommandGroup{
public: public:
/**
* @brief Constructs ReleaseTote
*/
ReleaseTote(); ReleaseTote();
}; };
#endif #endif

View File

@ -6,15 +6,42 @@
#include "../../DentRobot.h" #include "../../DentRobot.h"
#include "WPILib.h" #include "WPILib.h"
/**
* @brief Turns the robot
*
* Turns the robot until a timeout is reached
*/
class Turn: public Command{ class Turn: public Command{
private: private:
int degrees; int degrees;
public: public:
/**
* @brief Constructs Turn
*
* @param double Timeout in seconds
*/
Turn(double); Turn(double);
/**
* @brief Initializes the class
*/
void Initialize(); void Initialize();
/**
* @brief Turns the robot
*/
void Execute(); void Execute();
/**
* @brief Checks if the command is finished
*
* @return True only if the timeout was reached
*/
bool IsFinished(); bool IsFinished();
/**
* @brief Sets the drivetrain to stop
*/
void End(); void End();
/**
* @brief Calls End()
*/
void Interrupted(); void Interrupted();
}; };
#endif #endif

View File

@ -4,13 +4,38 @@
#include "Commands/Command.h" #include "Commands/Command.h"
#include "WPILib.h" #include "WPILib.h"
/**
* @brief Closes BinElevatorArms (NOT USED)
*
* Sets the solenoid to close the arms of the BinElevator
*/
class BinCloseArms: public Command{ class BinCloseArms: public Command{
public: public:
/**
* @brief Constructs BinCloseArms
*/
BinCloseArms(); BinCloseArms();
/**
* @brief Initializes the class
*/
void Initialize(); void Initialize();
/**
* @brief Sets the solenoid to close the arms
*/
void Execute(); void Execute();
/**
* @brief Returns true to prevent solenoid damage
*
* @return True
*/
bool IsFinished(); bool IsFinished();
/**
* @brief Ends the command
*/
void End(); void End();
/**
* @brief Calls End()
*/
void Interrupted(); void Interrupted();
}; };

View File

@ -4,15 +4,40 @@
#include "Commands/Command.h" #include "Commands/Command.h"
#include "WPILib.h" #include "WPILib.h"
/**
* @brief Lowers the bin elevator until a timeout is reached
*/
class BinLower: public Command{ class BinLower: public Command{
private: private:
float timeout; float timeout;
public: public:
/**
* @brief Constructs BinLower
*
* @param float Timeout in seconds
*/
BinLower(float); BinLower(float);
/**
* @brief Initializes the class
*/
void Initialize(); void Initialize();
/**
* @brief Lowers the bin elevator at -1.0 power
*/
void Execute(); void Execute();
/**
* @brief Checks if the command is finished
*
* @return True only if the timeout was reached
*/
bool IsFinished(); bool IsFinished();
/**
* @brief Sets the bin elevator to stop
*/
void End(); void End();
/**
* @brief Calls End()
*/
void Interrupted(); void Interrupted();
}; };
#endif #endif

View File

@ -6,13 +6,32 @@
class BinOpenArms: public Command{ class BinOpenArms: public Command{
public: public:
/**
* @brief Constructs BinOpenArms
*/
BinOpenArms(); BinOpenArms();
/**
* @brief Initializes the class
*/
void Initialize(); void Initialize();
/**
* @brief Sets the solenoid to open the arms
*/
void Execute(); void Execute();
/**
* @brief Returns true to prevent solenoid damage
*
* @return True
*/
bool IsFinished(); bool IsFinished();
/**
* @brief Ends the command
*/
void End(); void End();
/**
* @brief Calls End()
*/
void Interrupted(); void Interrupted();
}; };
#endif #endif
// vim: ts=2:sw=2:et // vim: ts=2:sw=2:et

View File

@ -4,17 +4,41 @@
#include "Commands/Command.h" #include "Commands/Command.h"
#include "WPILib.h" #include "WPILib.h"
/**
* @brief Raises the bin elevator until a timeout is reached
*/
class BinRaise: public Command{ class BinRaise: public Command{
private: private:
float timeout; float timeout;
public: public:
/**
* @brief Constructs BinRaise
*
* @param float Timeout in seconds
*/
BinRaise(float); BinRaise(float);
/**
* @brief Initializes the class
*/
void Initialize(); void Initialize();
/**
* @brief Raises the bin elevator at 1.0 power
*/
void Execute(); void Execute();
/**
* @brief Checks if the command is finished
*
* @return True only if the timeout was reached
*/
bool IsFinished(); bool IsFinished();
/**
* @brief Sets the bin elevator to stop
*/
void End(); void End();
/**
* @brief Calls End()
*/
void Interrupted(); void Interrupted();
}; };
#endif #endif
// vim: ts=2:sw=2:et // vim: ts=2:sw=2:et

View File

@ -6,17 +6,41 @@
#include "../../DentRobot.h" #include "../../DentRobot.h"
#include "WPILib.h" #include "WPILib.h"
/**
* @brief Rolls collector motors in until a timeout is reached
*/
class RollIn: public Command{ class RollIn: public Command{
private: private:
double rawSpeed; double rawSpeed;
public: public:
/**
* @brief Constructs RollIn
*
* @param double Timeout in seconds
*/
RollIn(double); RollIn(double);
/**
* @brief Initializes the class
*/
void Initialize(); void Initialize();
/**
* @brief Rolls the four collector motors in
*/
void Execute(); void Execute();
/**
* @brief Checks if the command is finished
*
* @return True only if the timeout was reached
*/
bool IsFinished(); bool IsFinished();
/**
* @brief Sets the collector to stop
*/
void End(); void End();
/**
* @brief Calls End()
*/
void Interrupted(); void Interrupted();
}; };
#endif #endif
// vim: ts=2:sw=2:et // vim: ts=2:sw=2:et

View File

@ -6,15 +6,37 @@
#include "../../DentRobot.h" #include "../../DentRobot.h"
#include "WPILib.h" #include "WPILib.h"
/**
* @brief Rolls collector motors out until a timeout is reached
*/
class RollOut: public Command{ class RollOut: public Command{
public: public:
/**
* @brief Constructs RollOut
*/
RollOut(); RollOut();
/**
* @brief Initializes the class
*/
void Initialize(); void Initialize();
/**
* @brief Rolls the four collector motors out
*/
void Execute(); void Execute();
/**
* @brief Checks if the command is finished
*
* @return True only if the timeout was reached
*/
bool IsFinished(); bool IsFinished();
/**
* @brief Sets the collector to stop
*/
void End(); void End();
/**
* @brief Calls End()
*/
void Interrupted(); void Interrupted();
}; };
#endif #endif
// vim: ts=2:sw=2:et // vim: ts=2:sw=2:et

View File

@ -6,13 +6,38 @@
#include "../../DentRobot.h" #include "../../DentRobot.h"
#include "WPILib.h" #include "WPILib.h"
/**
* @brief Drives the robot with a joystick
*
* Uses mechanum drive
*/
class Drive: public Command{ class Drive: public Command{
public: public:
/**
* @brief Constructs Drive
*/
Drive(); Drive();
/**
* @brief Initializes the class
*/
void Initialize(); void Initialize();
/**
* @brief Drives the robot with joysticks from OI
*/
void Execute(); void Execute();
/**
* @brief Checks if the command is finished
*
* @return False
*/
bool IsFinished(); bool IsFinished();
/**
* @brief Ends the command
*/
void End(); void End();
/**
* @brief Calls End()
*/
void Interrupted(); void Interrupted();
}; };
#endif #endif

View File

@ -4,13 +4,36 @@
#include "Commands/Command.h" #include "Commands/Command.h"
#include "WPILib.h" #include "WPILib.h"
/**
* @brief Lowers the elevator until a timeout is reached
*/
class Lower: public Command{ class Lower: public Command{
public: public:
/**
* @brief Constructs Lower
*/
Lower(); Lower();
/**
* @brief Initializes the class
*/
void Initialize(); void Initialize();
/**
* @brief Lowers the elevator at -1.0 power
*/
void Execute(); void Execute();
/**
* @brief Checks if the command is finished
*
* @return True if the timeout was reached or if the bottom elevator sensor was triggered
*/
bool IsFinished(); bool IsFinished();
/**
* @brief Sets the elevator to stop
*/
void End(); void End();
/**
* @brief Calls End()
*/
void Interrupted(); void Interrupted();
}; };
#endif #endif

View File

@ -4,15 +4,37 @@
#include "Commands/Command.h" #include "Commands/Command.h"
#include "WPILib.h" #include "WPILib.h"
/**
* @brief Raises the elevator until a timeout is reached
*/
class Raise: public Command{ class Raise: public Command{
public: public:
/**
* @brief Constructs Raise
*/
Raise(); Raise();
/**
* @brief Initializes the class
*/
void Initialize(); void Initialize();
/**
* @brief Raises the elevator at 1.0 power
*/
void Execute(); void Execute();
/**
* @brief Checks if the command is finished
*
* @return True if the timeout was reached or if the top elevator was triggered or if the middle elevator is triggered
*/
bool IsFinished(); bool IsFinished();
/**
* @brief Sets the elevator to stop
*/
void End(); void End();
/**
* @brief Calls End()
*/
void Interrupted(); void Interrupted();
}; };
#endif #endif
// vim: ts=2:sw=2:et // vim: ts=2:sw=2:et

View File

@ -6,15 +6,40 @@
#include "../../DentRobot.h" #include "../../DentRobot.h"
#include "WPILib.h" #include "WPILib.h"
/**
* @brief TODO
*/
class CheckDrive: public CommandGroup{ class CheckDrive: public CommandGroup{
private: private:
int motor; int motor;
public: public:
/**
* @brief TODO
*
* @param int
*/
CheckDrive(int); CheckDrive(int);
/**
* @brief Initializes the class
*/
void Initialize(); void Initialize();
/**
* @brief TODO
*/
void Execute(); void Execute();
/**
* @brief Checks if the command is finished
*
* @return TODO
*/
bool IsFinished(); bool IsFinished();
/**
* @brief TODO
*/
void End(); void End();
/**
* @brief Calls End()
*/
void Interrupted(); void Interrupted();
}; };
#endif #endif

View File

@ -6,8 +6,14 @@
#include "../../DentRobot.h" #include "../../DentRobot.h"
#include "WPILib.h" #include "WPILib.h"
/**
* @brief TODO
*/
class CheckRobot: public CommandGroup{ class CheckRobot: public CommandGroup{
public: public:
/**
* @brief TODO
*/
CheckRobot(); CheckRobot();
}; };
#endif #endif

31
OI.h
View File

@ -4,16 +4,45 @@
#include "WPILib.h" #include "WPILib.h"
#include "Commands/Command.h" #include "Commands/Command.h"
/**
* @brief Controls the robot with joysticks
*/
class OI class OI
{ {
private: private:
Joystick *leftStick, *rightStick; Joystick *leftStick, *rightStick;
public: public:
/**
* @brief Constructs OI
*/
OI(); OI();
Command *raise, *lower, *binLower, *binRaise; Command *raise, //!< Raise command
*lower, //!< Lower command
*binLower, //!< BinLower command
*binRaise; //!< BinRaise command
/**
* @brief Returns the right joystick
*
* @return The right joystick
*/
Joystick* GetRightStick(); Joystick* GetRightStick();
/**
* @brief Returns the left joystick
*
* @return The left joystick
*/
Joystick* GetLeftStick(); Joystick* GetLeftStick();
/**
* @brief Returns the left joystick throttle
*
* @return The left joystick throttle
*/
double GetLeftThrottle(); double GetLeftThrottle();
/**
* @brief Returns the right joystick throttle
*
* @return The right joystick throttle
*/
double GetRightThrottle(); double GetRightThrottle();
}; };
#endif #endif