From 5d794ac06d86f2b175bb9d8a94b6a16402fb140a Mon Sep 17 00:00:00 2001 From: Jamie <43504151+littlesheepjh@users.noreply.github.com> Date: Thu, 12 Dec 2019 09:36:46 -0800 Subject: [PATCH 1/4] Create AngleAdjustment.java --- .../lib/angleAdjustment/AngleAdjustment.java | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 OffSeasonBot2019/src/main/java/com/team2813/lib/angleAdjustment/AngleAdjustment.java diff --git a/OffSeasonBot2019/src/main/java/com/team2813/lib/angleAdjustment/AngleAdjustment.java b/OffSeasonBot2019/src/main/java/com/team2813/lib/angleAdjustment/AngleAdjustment.java new file mode 100644 index 0000000..3784109 --- /dev/null +++ b/OffSeasonBot2019/src/main/java/com/team2813/lib/angleAdjustment/AngleAdjustment.java @@ -0,0 +1,38 @@ +package com.team2813.lib.angleAdjustment; + +public class AngleAdjustment { + private double initialRight; + private double finalRight; + private double initialLeft; + private double finalLeft; + private double angleChange; + private final double GEAR_RATIO = 1; //TODO ask Kyle for Gear Ratio + private final double WHEEL_DIAMETER = 4; + private final double WHEEL_CIRCUMFERENCE = 4 * Math.PI; + + public AngleAdjustment(double initialRight, double initialLeft, double angleChange){ + this.initialRight = initialRight; + this.initialLeft = initialLeft; + this.angleChange = angleChange; + calculate(); + //TODO pulse / pulse per rev * 360 % 360 + // 42 counts per rev + //TODO convert degrees to encoder values which the left and right must travel + + } + + public double getFinalRight() { + return finalRight; + } + + public double getFinalLeft() { + return finalLeft; + } + + private double calculate() { + double counts = angleChange / 360 * 42; + double wheelDegree = counts * GEAR_RATIO; + this.finalRight = initialRight + wheelDegree; + this.finalLeft = initialLeft + wheelDegree; + } +} \ No newline at end of file From d7239753cb9004dfb6b7c36797cdc54e7bd43091 Mon Sep 17 00:00:00 2001 From: btepegoz Date: Fri, 13 Dec 2019 15:50:16 -0800 Subject: [PATCH 2/4] ...clean uup code, may contain errors --- .../lib/angleAdjustment/AngleAdjustment.java | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/OffSeasonBot2019/src/main/java/com/team2813/lib/angleAdjustment/AngleAdjustment.java b/OffSeasonBot2019/src/main/java/com/team2813/lib/angleAdjustment/AngleAdjustment.java index 3784109..d90feb2 100644 --- a/OffSeasonBot2019/src/main/java/com/team2813/lib/angleAdjustment/AngleAdjustment.java +++ b/OffSeasonBot2019/src/main/java/com/team2813/lib/angleAdjustment/AngleAdjustment.java @@ -6,19 +6,23 @@ public class AngleAdjustment { private double initialLeft; private double finalLeft; private double angleChange; - private final double GEAR_RATIO = 1; //TODO ask Kyle for Gear Ratio + private final double GEAR_RATIO = 9/60; // ask Kyle for Gear Ratio private final double WHEEL_DIAMETER = 4; - private final double WHEEL_CIRCUMFERENCE = 4 * Math.PI; - - public AngleAdjustment(double initialRight, double initialLeft, double angleChange){ + private final double WHEEL_CIRCUMFERENCE = WHEEL_DIAMETER * Math.PI; + private final int PULSES; + private final int PULSES_PER_REVOLUTION; + //TODO add a parameter, either WHEEL_DIAMETER or WHEEL_Circumference for later use + public AngleAdjustment(double initialRight, double initialLeft, double angleChange, int pulses, int pulsesPerRevolution){ this.initialRight = initialRight; this.initialLeft = initialLeft; this.angleChange = angleChange; + this.PULSES_PER_REVOLUTION = pulsesPerRevolution; + this.PULSES = pulses; calculate(); - //TODO pulse / pulse per rev * 360 % 360 + //FIX pulse / pulse per rev * 360 % 360 + this.angleChange = PULSES/PULSES_PER_REVOLUTION*360%360; // 42 counts per rev //TODO convert degrees to encoder values which the left and right must travel - } public double getFinalRight() { @@ -29,10 +33,10 @@ public double getFinalLeft() { return finalLeft; } - private double calculate() { + private void calculate() { double counts = angleChange / 360 * 42; double wheelDegree = counts * GEAR_RATIO; this.finalRight = initialRight + wheelDegree; this.finalLeft = initialLeft + wheelDegree; } -} \ No newline at end of file +} From cd31a850999116b2e74e42ad956c2bdc2628882f Mon Sep 17 00:00:00 2001 From: Gear Heads Lab Computer Date: Fri, 13 Dec 2019 16:32:32 -0800 Subject: [PATCH 3/4] Fixed a few errors, added fields and parameters --- .../lib/angleAdjustment/AngleAdjustment.java | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/OffSeasonBot2019/src/main/java/com/team2813/lib/angleAdjustment/AngleAdjustment.java b/OffSeasonBot2019/src/main/java/com/team2813/lib/angleAdjustment/AngleAdjustment.java index d90feb2..9782180 100644 --- a/OffSeasonBot2019/src/main/java/com/team2813/lib/angleAdjustment/AngleAdjustment.java +++ b/OffSeasonBot2019/src/main/java/com/team2813/lib/angleAdjustment/AngleAdjustment.java @@ -6,21 +6,20 @@ public class AngleAdjustment { private double initialLeft; private double finalLeft; private double angleChange; - private final double GEAR_RATIO = 9/60; // ask Kyle for Gear Ratio - private final double WHEEL_DIAMETER = 4; - private final double WHEEL_CIRCUMFERENCE = WHEEL_DIAMETER * Math.PI; - private final int PULSES; + private final double GEAR_RATIO; + private final double WHEEL_DIAMETER; + private final double WHEEL_CIRCUMFERENCE; private final int PULSES_PER_REVOLUTION; - //TODO add a parameter, either WHEEL_DIAMETER or WHEEL_Circumference for later use - public AngleAdjustment(double initialRight, double initialLeft, double angleChange, int pulses, int pulsesPerRevolution){ + //TODO add a parameter, either WHEEL_DIAMETER + public AngleAdjustment(double initialRight, double initialLeft, double angleChange, int pulsesPerRevolution, double wheelDiameter, double gearRatio){ this.initialRight = initialRight; this.initialLeft = initialLeft; this.angleChange = angleChange; - this.PULSES_PER_REVOLUTION = pulsesPerRevolution; - this.PULSES = pulses; + PULSES_PER_REVOLUTION = pulsesPerRevolution; + WHEEL_DIAMETER = wheelDiameter; + WHEEL_CIRCUMFERENCE = WHEEL_DIAMETER * Math.PI; + GEAR_RATIO = gearRatio; calculate(); - //FIX pulse / pulse per rev * 360 % 360 - this.angleChange = PULSES/PULSES_PER_REVOLUTION*360%360; // 42 counts per rev //TODO convert degrees to encoder values which the left and right must travel } From 4253c980eb56a1c749ec7f9acae3fc7d2aadf168 Mon Sep 17 00:00:00 2001 From: Gear Heads Lab Computer Date: Fri, 13 Dec 2019 16:34:37 -0800 Subject: [PATCH 4/4] Fixed a few errors, added fields and parameters --- .../java/com/team2813/lib/angleAdjustment/AngleAdjustment.java | 1 - 1 file changed, 1 deletion(-) diff --git a/OffSeasonBot2019/src/main/java/com/team2813/lib/angleAdjustment/AngleAdjustment.java b/OffSeasonBot2019/src/main/java/com/team2813/lib/angleAdjustment/AngleAdjustment.java index 9782180..97e44b2 100644 --- a/OffSeasonBot2019/src/main/java/com/team2813/lib/angleAdjustment/AngleAdjustment.java +++ b/OffSeasonBot2019/src/main/java/com/team2813/lib/angleAdjustment/AngleAdjustment.java @@ -20,7 +20,6 @@ public AngleAdjustment(double initialRight, double initialLeft, double angleChan WHEEL_CIRCUMFERENCE = WHEEL_DIAMETER * Math.PI; GEAR_RATIO = gearRatio; calculate(); - // 42 counts per rev //TODO convert degrees to encoder values which the left and right must travel }