summaryrefslogtreecommitdiff
path: root/src/org/usfirst/frc/team4272/robotlib/RateLimitedPIDOutput.java
diff options
context:
space:
mode:
authorLuke Shumaker <lukeshu@lukeshu.com>2017-02-21 01:57:06 -0500
committerLuke Shumaker <lukeshu@lukeshu.com>2017-02-21 01:57:06 -0500
commit9670a734f62f23c982c43697c074563eb2baf9c0 (patch)
treec364980a0cf833356950ab8fdf61403ef11dde98 /src/org/usfirst/frc/team4272/robotlib/RateLimitedPIDOutput.java
parent273d09797d76206af2fbbc793cad85fb92665a3a (diff)
Write javadocs for robotlib.
Diffstat (limited to 'src/org/usfirst/frc/team4272/robotlib/RateLimitedPIDOutput.java')
-rw-r--r--src/org/usfirst/frc/team4272/robotlib/RateLimitedPIDOutput.java13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/org/usfirst/frc/team4272/robotlib/RateLimitedPIDOutput.java b/src/org/usfirst/frc/team4272/robotlib/RateLimitedPIDOutput.java
index 70010c6..42121a5 100644
--- a/src/org/usfirst/frc/team4272/robotlib/RateLimitedPIDOutput.java
+++ b/src/org/usfirst/frc/team4272/robotlib/RateLimitedPIDOutput.java
@@ -1,5 +1,6 @@
/**
* Copyright (c) 2012 Precise Path Robotics, Inc
+ * Copyright (c) 2017 Luke Shumaker
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -22,7 +23,12 @@ import edu.wpi.first.wpilibj.PIDOutput;
import edu.wpi.first.wpilibj.Timer;
/**
- * TODO: Write JavaDocs
+ * RateLimitedPIDOutput wraps a {@link PIDOutput}, unsuring that the
+ * set value does not change too quickly.
+ *
+ * If the writer attempts to call {@link pidWrite(double)} with a
+ * value that is too different than the previous value; it will
+ * instead write a value that is closer to the previous value.
*/
public class RateLimitedPIDOutput implements PIDOutput {
PIDOutput o;
@@ -30,6 +36,11 @@ public class RateLimitedPIDOutput implements PIDOutput {
double prev_rate = 0;
double prev_time = 0;
+ /**
+ * @param out The actual PIDOutput to write to.
+ * @param maxChange the maximum amount that the setpoint can
+ * change by per second.
+ */
public RateLimitedPIDOutput(PIDOutput out, double maxChange) {
o = out;
m = maxChange;