From b6fb34cde7c57cac3ecbb88f58efb568c08ae21c Mon Sep 17 00:00:00 2001 From: Ryan McHale Date: Mon, 18 Jan 2016 19:46:42 -0500 Subject: [PATCH 1/3] Transmission Update Added high torque functionality and removed previous error --- Transmission.hpp | 44 +++++++++++++++++++++++++++++++++++--------- 1 file changed, 35 insertions(+), 9 deletions(-) diff --git a/Transmission.hpp b/Transmission.hpp index ef3f16b..d7526bb 100644 --- a/Transmission.hpp +++ b/Transmission.hpp @@ -8,32 +8,58 @@ #ifndef SRC_TRANSMISSION_HPP_ #define SRC_TRANSMISSION_HPP_ -Solenoid* shift = new Solenoid(0); +#include"robotMap.h" -template -struct Transmission : motorController +Solenoid* shift = new Solenoid(SHIFT_SOLENOID); + +struct Transmission : CANTalon { public: - explicit Transmission(int t1,int t2): - con1{new motorController(t1)}, - con2{new motorController(t2)} + explicit Transmission(int t1,int t2) { + con1 = new CANTalon(t1); con1->SetFeedbackDevice(CANTalon::QuadEncoder); con1->SetControlMode(CANSpeedController::kCurrent); con1->ConfigNeutralMode(CANSpeedController::kNeutralMode_Coast); con1->EnableControl(); + con2 = new CANTalon(t2); con2->SetFeedbackDevice(CANTalon::QuadEncoder); con2->SetControlMode(CANSpeedController::kCurrent); con2->ConfigNeutralMode(CANSpeedController::kNeutralMode_Coast); con2->EnableControl(); } - void Shove(double j1) + virtual ~Transmission(); + + /** + * General percentage based speed control + * params: -1 - 1 + */ + void Set(float set) + { + if(con1->GetControlMode()!=CANSpeedController::kPercentVbus) + con1->SetControlMode(CANSpeedController::kPercentVbus); + con1->Set(set); + con2->Set(set); + } + + /** + * Prevents the breaker from blowing and + * increases torque in a shoving match + */ + void Shove(double set) { + shift->Set(0); // Shift to low gear + set-=set/80; // Prevent breaker from blowing + set*=40; + if(con1->GetControlMode()!=CANSpeedController::kCurrent) + con1->SetControlMode(CANSpeedController::kCurrent); + con1->Set(set); + con2->Set(set); } private: - motorController *con1, - *con2; + CANTalon *con1, + *con2; }; #endif /* SRC_TRANSMISSION_HPP_ */ From a768ea60d60d5c8414c11a9436080df3eb2d085e Mon Sep 17 00:00:00 2001 From: Ryan McHale Date: Mon, 18 Jan 2016 19:59:41 -0500 Subject: [PATCH 2/3] Update Transmission.hpp --- Transmission.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Transmission.hpp b/Transmission.hpp index d7526bb..846acbf 100644 --- a/Transmission.hpp +++ b/Transmission.hpp @@ -59,7 +59,7 @@ struct Transmission : CANTalon } private: CANTalon *con1, - *con2; + *con2; }; #endif /* SRC_TRANSMISSION_HPP_ */ From f49b310a6fe2def05c7084f664dc80d59fcd682a Mon Sep 17 00:00:00 2001 From: Ryan McHale Date: Mon, 18 Jan 2016 20:00:58 -0500 Subject: [PATCH 3/3] Update README.md --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 034a087..87c3476 100644 --- a/README.md +++ b/README.md @@ -1 +1,2 @@ -# 1771-2016-Robot \ No newline at end of file +# 1771-2016-Robot +the only current errors are spelling errors