2
0
mirror of https://github.com/team2059/Dent synced 2024-12-28 21:02:30 -05:00
dent/Subsystems/Drivetrain.h

55 lines
1.2 KiB
C
Raw Normal View History

2015-01-16 19:29:55 -05:00
#ifndef DRIVETRAIN_H
#define DRIVETRAIN_H
#include "WPILib.h"
2015-03-09 09:48:18 -04:00
/**
* @brief Drives the robot
2015-07-31 12:52:15 -04:00
*
2015-03-09 09:48:18 -04:00
* 4 wheel mecanum drive
*/
2015-07-31 12:52:15 -04:00
class Drivetrain: public Subsystem {
private:
2015-09-17 15:59:58 -04:00
CANTalon *rightRear, //<! Back right motor
2015-07-31 12:52:15 -04:00
*leftRear; //<! Back left motor
Gyro *gyro; //<! Gyro
public:
/**
* @brief Constructs Drivetrain
*/
Drivetrain();
/**
* @brief Current motor to test
*/
enum e_motors {
BACKRIGHT, //<! Back right motor
BACKLEFT //<! Back left motor
};
/**
* @brief No action
*/
void InitDefaultCommand();
/**
2015-09-17 15:59:58 -04:00
* @brief Drives the robot with arcade
2015-07-31 12:52:15 -04:00
*
* @param x Joystick x value (-1.0 to 1.0)
* @param y Joystick y value (-1.0 to 1.0)
* @param z Joystick z value (-1.0 to 1.0)
* @param sensitivity Sensitivity (0.0 to 1.0)
* @param driveStraight Overrides z value to correct for motor lag (default: false)
*/
2015-09-17 15:59:58 -04:00
void DriveArcade(double x, double y, double z, double sensitivity, bool driveStraight = false);
2015-07-31 12:52:15 -04:00
/**
* @brief Tests one motor
*
* @param motor Motor to test
* @param power Power to set motor
*/
void TestMotor(e_motors motor, double power);
/**
* @brief Sets the gyro value to 0.0
*/
void ResetGyro();
2015-01-16 19:29:55 -05:00
};
#endif
2015-02-08 12:26:15 -05:00
// vim: ts=2:sw=2:et