2023-02-13 14:37:05 -06:00
<!DOCTYPE HTML>
<!-- NewPage -->
< html lang = "en" >
< head >
2023-02-13 17:21:24 -06:00
<!-- Generated by javadoc (11.0.17) on Mon Feb 13 17:20:01 CST 2023 -->
2023-02-13 14:37:05 -06:00
< title > SwerveModule< / title >
< meta http-equiv = "Content-Type" content = "text/html; charset=utf-8" >
< meta name = "dc.created" content = "2023-02-13" >
2023-02-13 15:03:55 -06:00
< link rel = "stylesheet" type = "text/css" href = "../stylesheet.css" title = "Style" >
< link rel = "stylesheet" type = "text/css" href = "../jquery/jquery-ui.min.css" title = "Style" >
< link rel = "stylesheet" type = "text/css" href = "../jquery-ui.overrides.css" title = "Style" >
< script type = "text/javascript" src = "../script.js" > < / script >
< script type = "text/javascript" src = "../jquery/jszip/dist/jszip.min.js" > < / script >
< script type = "text/javascript" src = "../jquery/jszip-utils/dist/jszip-utils.min.js" > < / script >
2023-02-13 14:37:05 -06:00
<!-- [if IE]>
2023-02-13 15:03:55 -06:00
< script type = "text/javascript" src = "../jquery/jszip-utils/dist/jszip-utils-ie.min.js" > < / script >
2023-02-13 14:37:05 -06:00
<![endif]-->
2023-02-13 15:03:55 -06:00
< script type = "text/javascript" src = "../jquery/jquery-3.6.0.min.js" > < / script >
< script type = "text/javascript" src = "../jquery/jquery-ui.min.js" > < / script >
2023-02-13 14:37:05 -06:00
< / head >
< body >
< script type = "text/javascript" > < ! - -
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="SwerveModule";
}
}
catch(err) {
}
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
2023-02-13 15:03:55 -06:00
var pathtoroot = "../";
2023-02-13 14:37:05 -06:00
var useModuleDirectories = true;
loadScripts(document, 'script');< / script >
< noscript >
< div > JavaScript is disabled on your browser.< / div >
< / noscript >
< header role = "banner" >
< nav role = "navigation" >
< div class = "fixedNav" >
<!-- ========= START OF TOP NAVBAR ======= -->
< div class = "topNav" > < a id = "navbar.top" >
<!-- -->
< / a >
< div class = "skipNav" > < a href = "#skip.navbar.top" title = "Skip navigation links" > Skip navigation links< / a > < / div >
< a id = "navbar.top.firstrow" >
<!-- -->
< / a >
< ul class = "navList" title = "Navigation" >
2023-02-13 15:03:55 -06:00
< li > < a href = "../index.html" > Overview< / a > < / li >
2023-02-13 14:37:05 -06:00
< li > < a href = "package-summary.html" > Package< / a > < / li >
< li class = "navBarCell1Rev" > Class< / li >
< li > < a href = "package-tree.html" > Tree< / a > < / li >
2023-02-13 15:03:55 -06:00
< li > < a href = "../deprecated-list.html" > Deprecated< / a > < / li >
< li > < a href = "../index-files/index-1.html" > Index< / a > < / li >
< li > < a href = "../help-doc.html" > Help< / a > < / li >
2023-02-13 14:37:05 -06:00
< / ul >
< / div >
< div class = "subNav" >
< ul class = "navList" id = "allclasses_navbar_top" >
2023-02-13 15:03:55 -06:00
< li > < a href = "../allclasses.html" > All Classes< / a > < / li >
2023-02-13 14:37:05 -06:00
< / ul >
< ul class = "navListSearch" >
< li > < label for = "search" > SEARCH:< / label >
< input type = "text" id = "search" value = "search" disabled = "disabled" >
< input type = "reset" id = "reset" value = "reset" disabled = "disabled" >
< / li >
< / ul >
< div >
< script type = "text/javascript" > < ! - -
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
< / script >
< noscript >
< div > JavaScript is disabled on your browser.< / div >
< / noscript >
< / div >
< div >
< ul class = "subNavList" >
< li > Summary: < / li >
< li > Nested | < / li >
< li > < a href = "#field.summary" > Field< / a > | < / li >
< li > < a href = "#constructor.summary" > Constr< / a > | < / li >
< li > < a href = "#method.summary" > Method< / a > < / li >
< / ul >
< ul class = "subNavList" >
< li > Detail: < / li >
< li > < a href = "#field.detail" > Field< / a > | < / li >
< li > < a href = "#constructor.detail" > Constr< / a > | < / li >
< li > < a href = "#method.detail" > Method< / a > < / li >
< / ul >
< / div >
< a id = "skip.navbar.top" >
<!-- -->
< / a > < / div >
<!-- ========= END OF TOP NAVBAR ========= -->
< / div >
< div class = "navPadding" > < / div >
< script type = "text/javascript" > < ! - -
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
< / script >
< / nav >
< / header >
<!-- ======== START OF CLASS DATA ======== -->
< main role = "main" >
< div class = "header" >
2023-02-13 15:03:55 -06:00
< div class = "subTitle" > < span class = "packageLabelInType" > Package< / span > < a href = "package-summary.html" > swervelib< / a > < / div >
2023-02-13 14:37:05 -06:00
< h2 title = "Class SwerveModule" class = "title" > Class SwerveModule< / h2 >
< / div >
< div class = "contentContainer" >
< ul class = "inheritance" >
< li > < a href = "https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title = "class or interface in java.lang" class = "externalLink" > java.lang.Object< / a > < / li >
< li >
< ul class = "inheritance" >
2023-02-13 15:03:55 -06:00
< li > swervelib.SwerveModule< / li >
2023-02-13 14:37:05 -06:00
< / ul >
< / li >
< / ul >
< div class = "description" >
< ul class = "blockList" >
< li class = "blockList" >
< hr >
< pre > public class < span class = "typeNameLabel" > SwerveModule< / span >
extends < a href = "https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title = "class or interface in java.lang" class = "externalLink" > Object< / a > < / pre >
< div class = "block" > The Swerve Module class which represents and controls Swerve Modules for the swerve drive.< / div >
< / li >
< / ul >
< / div >
< div class = "summary" >
< ul class = "blockList" >
< li class = "blockList" >
<!-- =========== FIELD SUMMARY =========== -->
< section >
< ul class = "blockList" >
< li class = "blockList" > < a id = "field.summary" >
<!-- -->
< / a >
< h3 > Field Summary< / h3 >
< table class = "memberSummary" >
< caption > < span > Fields< / span > < span class = "tabEnd" > < / span > < / caption >
< tr >
< th class = "colFirst" scope = "col" > Modifier and Type< / th >
< th class = "colSecond" scope = "col" > Field< / th >
< th class = "colLast" scope = "col" > Description< / th >
< / tr >
< tr class = "altColor" >
2023-02-13 15:03:55 -06:00
< td class = "colFirst" > < code > private < a href = "encoders/SwerveAbsoluteEncoder.html" title = "class in swervelib.encoders" > SwerveAbsoluteEncoder< / a > < / code > < / td >
2023-02-13 14:37:05 -06:00
< th class = "colSecond" scope = "row" > < code > < span class = "memberNameLink" > < a href = "#absoluteEncoder" > absoluteEncoder< / a > < / span > < / code > < / th >
< td class = "colLast" >
< div class = "block" > Absolute encoder for swerve drive.< / div >
< / td >
< / tr >
< tr class = "rowColor" >
< td class = "colFirst" > < code > double< / code > < / td >
< th class = "colSecond" scope = "row" > < code > < span class = "memberNameLink" > < a href = "#angle" > angle< / a > < / span > < / code > < / th >
< td class = "colLast" >
< div class = "block" > Current state.< / div >
< / td >
< / tr >
< tr class = "altColor" >
2023-02-13 15:03:55 -06:00
< td class = "colFirst" > < code > private < a href = "motors/SwerveMotor.html" title = "class in swervelib.motors" > SwerveMotor< / a > < / code > < / td >
2023-02-13 14:37:05 -06:00
< th class = "colSecond" scope = "row" > < code > < span class = "memberNameLink" > < a href = "#angleMotor" > angleMotor< / a > < / span > < / code > < / th >
< td class = "colLast" >
< div class = "block" > Swerve Motors.< / div >
< / td >
< / tr >
< tr class = "rowColor" >
< td class = "colFirst" > < code > private double< / code > < / td >
< th class = "colSecond" scope = "row" > < code > < span class = "memberNameLink" > < a href = "#angleOffset" > angleOffset< / a > < / span > < / code > < / th >
< td class = "colLast" >
< div class = "block" > Angle offset from the absolute encoder.< / div >
< / td >
< / tr >
< tr class = "altColor" >
2023-02-13 15:03:55 -06:00
< td class = "colFirst" > < code > < a href = "parser/SwerveModuleConfiguration.html" title = "class in swervelib.parser" > SwerveModuleConfiguration< / a > < / code > < / td >
2023-02-13 14:37:05 -06:00
< th class = "colSecond" scope = "row" > < code > < span class = "memberNameLink" > < a href = "#configuration" > configuration< / a > < / span > < / code > < / th >
< td class = "colLast" >
< div class = "block" > Swerve module configuration options.< / div >
< / td >
< / tr >
< tr class = "rowColor" >
2023-02-13 15:03:55 -06:00
< td class = "colFirst" > < code > private < a href = "motors/SwerveMotor.html" title = "class in swervelib.motors" > SwerveMotor< / a > < / code > < / td >
2023-02-13 14:37:05 -06:00
< th class = "colSecond" scope = "row" > < code > < span class = "memberNameLink" > < a href = "#driveMotor" > driveMotor< / a > < / span > < / code > < / th >
< td class = "colLast" >
< div class = "block" > Swerve Motors.< / div >
< / td >
< / tr >
< tr class = "altColor" >
< td class = "colFirst" > < code > double< / code > < / td >
< th class = "colSecond" scope = "row" > < code > < span class = "memberNameLink" > < a href = "#dt" > dt< / a > < / span > < / code > < / th >
< td class = "colLast" >
< div class = "block" > Current state.< / div >
< / td >
< / tr >
< tr class = "rowColor" >
< td class = "colFirst" > < code > double< / code > < / td >
< th class = "colSecond" scope = "row" > < code > < span class = "memberNameLink" > < a href = "#fakePos" > fakePos< / a > < / span > < / code > < / th >
< td class = "colLast" >
< div class = "block" > Current state.< / div >
< / td >
< / tr >
< tr class = "altColor" >
< td class = "colFirst" > < code > edu.wpi.first.math.controller.SimpleMotorFeedforward< / code > < / td >
< th class = "colSecond" scope = "row" > < code > < span class = "memberNameLink" > < a href = "#feedforward" > feedforward< / a > < / span > < / code > < / th >
< td class = "colLast" >
< div class = "block" > Feedforward for drive motor during closed loop control.< / div >
< / td >
< / tr >
< tr class = "rowColor" >
< td class = "colFirst" > < code > double< / code > < / td >
< th class = "colSecond" scope = "row" > < code > < span class = "memberNameLink" > < a href = "#lastAngle" > lastAngle< / a > < / span > < / code > < / th >
< td class = "colLast" >
< div class = "block" > Last angle set for the swerve module.< / div >
< / td >
< / tr >
< tr class = "altColor" >
< td class = "colFirst" > < code > double< / code > < / td >
< th class = "colSecond" scope = "row" > < code > < span class = "memberNameLink" > < a href = "#lastTime" > lastTime< / a > < / span > < / code > < / th >
< td class = "colLast" >
< div class = "block" > Current state.< / div >
< / td >
< / tr >
< tr class = "rowColor" >
< td class = "colFirst" > < code > int< / code > < / td >
< th class = "colSecond" scope = "row" > < code > < span class = "memberNameLink" > < a href = "#moduleNumber" > moduleNumber< / a > < / span > < / code > < / th >
< td class = "colLast" >
< div class = "block" > Module number for kinematics, usually 0 to 3.< / div >
< / td >
< / tr >
< tr class = "altColor" >
< td class = "colFirst" > < code > double< / code > < / td >
< th class = "colSecond" scope = "row" > < code > < span class = "memberNameLink" > < a href = "#omega" > omega< / a > < / span > < / code > < / th >
< td class = "colLast" >
< div class = "block" > Current state.< / div >
< / td >
< / tr >
< tr class = "rowColor" >
< td class = "colFirst" > < code > double< / code > < / td >
< th class = "colSecond" scope = "row" > < code > < span class = "memberNameLink" > < a href = "#speed" > speed< / a > < / span > < / code > < / th >
< td class = "colLast" >
< div class = "block" > Current state.< / div >
< / td >
< / tr >
< tr class = "altColor" >
< td class = "colFirst" > < code > private edu.wpi.first.wpilibj.Timer< / code > < / td >
< th class = "colSecond" scope = "row" > < code > < span class = "memberNameLink" > < a href = "#time" > time< / a > < / span > < / code > < / th >
< td class = "colLast" >
< div class = "block" > Timer for simulation.< / div >
< / td >
< / tr >
< / table >
< / li >
< / ul >
< / section >
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
< section >
< ul class = "blockList" >
< li class = "blockList" > < a id = "constructor.summary" >
<!-- -->
< / a >
< h3 > Constructor Summary< / h3 >
< table class = "memberSummary" >
< caption > < span > Constructors< / span > < span class = "tabEnd" > < / span > < / caption >
< tr >
< th class = "colFirst" scope = "col" > Constructor< / th >
< th class = "colLast" scope = "col" > Description< / th >
< / tr >
< tr class = "altColor" >
2023-02-13 15:03:55 -06:00
< th class = "colConstructorName" scope = "row" > < code > < span class = "memberNameLink" > < a href = "#%3Cinit%3E(int,swervelib.parser.SwerveModuleConfiguration)" > SwerveModule< / a > < / span > ​ (int moduleNumber,
< a href = "parser/SwerveModuleConfiguration.html" title = "class in swervelib.parser" > SwerveModuleConfiguration< / a > moduleConfiguration)< / code > < / th >
2023-02-13 14:37:05 -06:00
< td class = "colLast" >
< div class = "block" > Construct the swerve module and initialize the swerve module motors and absolute encoder.< / div >
< / td >
< / tr >
< / table >
< / li >
< / ul >
< / section >
<!-- ========== METHOD SUMMARY =========== -->
< section >
< ul class = "blockList" >
< li class = "blockList" > < a id = "method.summary" >
<!-- -->
< / a >
< h3 > Method Summary< / h3 >
< table class = "memberSummary" >
< caption > < span id = "t0" class = "activeTableTab" > < span > All Methods< / span > < span class = "tabEnd" > < / span > < / span > < span id = "t2" class = "tableTab" > < span > < a href = "javascript:show(2);" > Instance Methods< / a > < / span > < span class = "tabEnd" > < / span > < / span > < span id = "t4" class = "tableTab" > < span > < a href = "javascript:show(8);" > Concrete Methods< / a > < / span > < span class = "tabEnd" > < / span > < / span > < / caption >
< tr >
< th class = "colFirst" scope = "col" > Modifier and Type< / th >
< th class = "colSecond" scope = "col" > Method< / th >
< th class = "colLast" scope = "col" > Description< / th >
< / tr >
< tr id = "i0" class = "altColor" >
< td class = "colFirst" > < code > double< / code > < / td >
< th class = "colSecond" scope = "row" > < code > < span class = "memberNameLink" > < a href = "#getCANCoder()" > getCANCoder< / a > < / span > ()< / code > < / th >
< td class = "colLast" >
< div class = "block" > Get the CANCoder absolute position.< / div >
< / td >
< / tr >
< tr id = "i1" class = "rowColor" >
< td class = "colFirst" > < code > edu.wpi.first.math.kinematics.SwerveModulePosition< / code > < / td >
< th class = "colSecond" scope = "row" > < code > < span class = "memberNameLink" > < a href = "#getPosition()" > getPosition< / a > < / span > ()< / code > < / th >
< td class = "colLast" > < / td >
< / tr >
< tr id = "i2" class = "altColor" >
< td class = "colFirst" > < code > double< / code > < / td >
< th class = "colSecond" scope = "row" > < code > < span class = "memberNameLink" > < a href = "#getRelativeEncoder()" > getRelativeEncoder< / a > < / span > ()< / code > < / th >
< td class = "colLast" >
< div class = "block" > Get the relative encoder angle in degrees.< / div >
< / td >
< / tr >
< tr id = "i3" class = "rowColor" >
2023-02-13 15:03:55 -06:00
< td class = "colFirst" > < code > < a href = "math/SwerveModuleState2.html" title = "class in swervelib.math" > SwerveModuleState2< / a > < / code > < / td >
2023-02-13 14:37:05 -06:00
< th class = "colSecond" scope = "row" > < code > < span class = "memberNameLink" > < a href = "#getState()" > getState< / a > < / span > ()< / code > < / th >
< td class = "colLast" >
< div class = "block" > Get the Swerve Module state.< / div >
< / td >
< / tr >
< tr id = "i4" class = "altColor" >
< td class = "colFirst" > < code > void< / code > < / td >
< th class = "colSecond" scope = "row" > < code > < span class = "memberNameLink" > < a href = "#setAngle(double)" > setAngle< / a > < / span > ​ (double angle)< / code > < / th >
< td class = "colLast" >
< div class = "block" > Set the angle for the module.< / div >
< / td >
< / tr >
< tr id = "i5" class = "rowColor" >
< td class = "colFirst" > < code > void< / code > < / td >
2023-02-13 15:03:55 -06:00
< th class = "colSecond" scope = "row" > < code > < span class = "memberNameLink" > < a href = "#setDesiredState(swervelib.math.SwerveModuleState2,boolean)" > setDesiredState< / a > < / span > ​ (< a href = "math/SwerveModuleState2.html" title = "class in swervelib.math" > SwerveModuleState2< / a > desiredState,
2023-02-13 14:37:05 -06:00
boolean isOpenLoop)< / code > < / th >
< td class = "colLast" >
< div class = "block" > Set the desired state of the swerve module.< / div >
< / td >
< / tr >
< tr id = "i6" class = "altColor" >
< td class = "colFirst" > < code > void< / code > < / td >
< th class = "colSecond" scope = "row" > < code > < span class = "memberNameLink" > < a href = "#setMotorBrake(boolean)" > setMotorBrake< / a > < / span > ​ (boolean brake)< / code > < / th >
< td class = "colLast" >
< div class = "block" > Set the brake mode.< / div >
< / td >
< / tr >
< tr id = "i7" class = "rowColor" >
< td class = "colFirst" > < code > void< / code > < / td >
< th class = "colSecond" scope = "row" > < code > < span class = "memberNameLink" > < a href = "#synchronizeEncoders()" > synchronizeEncoders< / a > < / span > ()< / code > < / th >
< td class = "colLast" >
< div class = "block" > Synchronize the integrated angle encoder with the absolute encoder.< / div >
< / td >
< / tr >
< / table >
< ul class = "blockList" >
< li class = "blockList" > < a id = "methods.inherited.from.class.java.lang.Object" >
<!-- -->
< / a >
< h3 > Methods inherited from class java.lang.< a href = "https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title = "class or interface in java.lang" class = "externalLink" > Object< / a > < / h3 >
< code > < a href = "https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#clone()" title = "class or interface in java.lang" class = "externalLink" > clone< / a > , < a href = "https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title = "class or interface in java.lang" class = "externalLink" > equals< / a > , < a href = "https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#finalize()" title = "class or interface in java.lang" class = "externalLink" > finalize< / a > , < a href = "https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#getClass()" title = "class or interface in java.lang" class = "externalLink" > getClass< / a > , < a href = "https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#hashCode()" title = "class or interface in java.lang" class = "externalLink" > hashCode< / a > , < a href = "https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notify()" title = "class or interface in java.lang" class = "externalLink" > notify< / a > , < a href = "https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notifyAll()" title = "class or interface in java.lang" class = "externalLink" > notifyAll< / a > , < a href = "https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#toString()" title = "class or interface in java.lang" class = "externalLink" > toString< / a > , < a href = "https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait()" title = "class or interface in java.lang" class = "externalLink" > wait< / a > , < a href = "https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long)" title = "class or interface in java.lang" class = "externalLink" > wait< / a > , < a href = "https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long,int)" title = "class or interface in java.lang" class = "externalLink" > wait< / a > < / code > < / li >
< / ul >
< / li >
< / ul >
< / section >
< / li >
< / ul >
< / div >
< div class = "details" >
< ul class = "blockList" >
< li class = "blockList" >
<!-- ============ FIELD DETAIL =========== -->
< section >
< ul class = "blockList" >
< li class = "blockList" > < a id = "field.detail" >
<!-- -->
< / a >
< h3 > Field Detail< / h3 >
< a id = "configuration" >
<!-- -->
< / a >
< ul class = "blockList" >
< li class = "blockList" >
< h4 > configuration< / h4 >
2023-02-13 15:03:55 -06:00
< pre > public final < a href = "parser/SwerveModuleConfiguration.html" title = "class in swervelib.parser" > SwerveModuleConfiguration< / a > configuration< / pre >
2023-02-13 14:37:05 -06:00
< div class = "block" > Swerve module configuration options.< / div >
< / li >
< / ul >
< a id = "angleOffset" >
<!-- -->
< / a >
< ul class = "blockList" >
< li class = "blockList" >
< h4 > angleOffset< / h4 >
< pre > private final double angleOffset< / pre >
< div class = "block" > Angle offset from the absolute encoder.< / div >
< / li >
< / ul >
< a id = "angleMotor" >
<!-- -->
< / a >
< ul class = "blockList" >
< li class = "blockList" >
< h4 > angleMotor< / h4 >
2023-02-13 15:03:55 -06:00
< pre > private final < a href = "motors/SwerveMotor.html" title = "class in swervelib.motors" > SwerveMotor< / a > angleMotor< / pre >
2023-02-13 14:37:05 -06:00
< div class = "block" > Swerve Motors.< / div >
< / li >
< / ul >
< a id = "driveMotor" >
<!-- -->
< / a >
< ul class = "blockList" >
< li class = "blockList" >
< h4 > driveMotor< / h4 >
2023-02-13 15:03:55 -06:00
< pre > private final < a href = "motors/SwerveMotor.html" title = "class in swervelib.motors" > SwerveMotor< / a > driveMotor< / pre >
2023-02-13 14:37:05 -06:00
< div class = "block" > Swerve Motors.< / div >
< / li >
< / ul >
< a id = "absoluteEncoder" >
<!-- -->
< / a >
< ul class = "blockList" >
< li class = "blockList" >
< h4 > absoluteEncoder< / h4 >
2023-02-13 15:03:55 -06:00
< pre > private final < a href = "encoders/SwerveAbsoluteEncoder.html" title = "class in swervelib.encoders" > SwerveAbsoluteEncoder< / a > absoluteEncoder< / pre >
2023-02-13 14:37:05 -06:00
< div class = "block" > Absolute encoder for swerve drive.< / div >
< / li >
< / ul >
< a id = "moduleNumber" >
<!-- -->
< / a >
< ul class = "blockList" >
< li class = "blockList" >
< h4 > moduleNumber< / h4 >
< pre > public int moduleNumber< / pre >
< div class = "block" > Module number for kinematics, usually 0 to 3. front left -> front right -> back left -> back right.< / div >
< / li >
< / ul >
< a id = "feedforward" >
<!-- -->
< / a >
< ul class = "blockList" >
< li class = "blockList" >
< h4 > feedforward< / h4 >
< pre > public edu.wpi.first.math.controller.SimpleMotorFeedforward feedforward< / pre >
< div class = "block" > Feedforward for drive motor during closed loop control.< / div >
< / li >
< / ul >
< a id = "lastAngle" >
<!-- -->
< / a >
< ul class = "blockList" >
< li class = "blockList" >
< h4 > lastAngle< / h4 >
< pre > public double lastAngle< / pre >
< div class = "block" > Last angle set for the swerve module.< / div >
< / li >
< / ul >
< a id = "angle" >
<!-- -->
< / a >
< ul class = "blockList" >
< li class = "blockList" >
< h4 > angle< / h4 >
< pre > public double angle< / pre >
< div class = "block" > Current state.< / div >
< / li >
< / ul >
< a id = "omega" >
<!-- -->
< / a >
< ul class = "blockList" >
< li class = "blockList" >
< h4 > omega< / h4 >
< pre > public double omega< / pre >
< div class = "block" > Current state.< / div >
< / li >
< / ul >
< a id = "speed" >
<!-- -->
< / a >
< ul class = "blockList" >
< li class = "blockList" >
< h4 > speed< / h4 >
< pre > public double speed< / pre >
< div class = "block" > Current state.< / div >
< / li >
< / ul >
< a id = "fakePos" >
<!-- -->
< / a >
< ul class = "blockList" >
< li class = "blockList" >
< h4 > fakePos< / h4 >
< pre > public double fakePos< / pre >
< div class = "block" > Current state.< / div >
< / li >
< / ul >
< a id = "lastTime" >
<!-- -->
< / a >
< ul class = "blockList" >
< li class = "blockList" >
< h4 > lastTime< / h4 >
< pre > public double lastTime< / pre >
< div class = "block" > Current state.< / div >
< / li >
< / ul >
< a id = "dt" >
<!-- -->
< / a >
< ul class = "blockList" >
< li class = "blockList" >
< h4 > dt< / h4 >
< pre > public double dt< / pre >
< div class = "block" > Current state.< / div >
< / li >
< / ul >
< a id = "time" >
<!-- -->
< / a >
< ul class = "blockListLast" >
< li class = "blockList" >
< h4 > time< / h4 >
< pre > private edu.wpi.first.wpilibj.Timer time< / pre >
< div class = "block" > Timer for simulation.< / div >
< / li >
< / ul >
< / li >
< / ul >
< / section >
<!-- ========= CONSTRUCTOR DETAIL ======== -->
< section >
< ul class = "blockList" >
< li class = "blockList" > < a id = "constructor.detail" >
<!-- -->
< / a >
< h3 > Constructor Detail< / h3 >
2023-02-13 15:03:55 -06:00
< a id = "<init>(int,swervelib.parser.SwerveModuleConfiguration)" >
2023-02-13 14:37:05 -06:00
<!-- -->
< / a >
< ul class = "blockListLast" >
< li class = "blockList" >
< h4 > SwerveModule< / h4 >
< pre > public SwerveModule​ (int moduleNumber,
2023-02-13 15:03:55 -06:00
< a href = "parser/SwerveModuleConfiguration.html" title = "class in swervelib.parser" > SwerveModuleConfiguration< / a > moduleConfiguration)< / pre >
2023-02-13 14:37:05 -06:00
< div class = "block" > Construct the swerve module and initialize the swerve module motors and absolute encoder.< / div >
< dl >
< dt > < span class = "paramLabel" > Parameters:< / span > < / dt >
< dd > < code > moduleNumber< / code > - Module number for kinematics.< / dd >
< dd > < code > moduleConfiguration< / code > - Module constants containing CAN ID's and offsets.< / dd >
< / dl >
< / li >
< / ul >
< / li >
< / ul >
< / section >
<!-- ============ METHOD DETAIL ========== -->
< section >
< ul class = "blockList" >
< li class = "blockList" > < a id = "method.detail" >
<!-- -->
< / a >
< h3 > Method Detail< / h3 >
< a id = "synchronizeEncoders()" >
<!-- -->
< / a >
< ul class = "blockList" >
< li class = "blockList" >
< h4 > synchronizeEncoders< / h4 >
< pre class = "methodSignature" > public void synchronizeEncoders()< / pre >
< div class = "block" > Synchronize the integrated angle encoder with the absolute encoder.< / div >
< / li >
< / ul >
2023-02-13 15:03:55 -06:00
< a id = "setDesiredState(swervelib.math.SwerveModuleState2,boolean)" >
2023-02-13 14:37:05 -06:00
<!-- -->
< / a >
< ul class = "blockList" >
< li class = "blockList" >
< h4 > setDesiredState< / h4 >
2023-02-13 15:03:55 -06:00
< pre class = "methodSignature" > public void setDesiredState​ (< a href = "math/SwerveModuleState2.html" title = "class in swervelib.math" > SwerveModuleState2< / a > desiredState,
2023-02-13 14:37:05 -06:00
boolean isOpenLoop)< / pre >
< div class = "block" > Set the desired state of the swerve module.< / div >
< dl >
< dt > < span class = "paramLabel" > Parameters:< / span > < / dt >
< dd > < code > desiredState< / code > - Desired swerve module state.< / dd >
< dd > < code > isOpenLoop< / code > - Whether to use open loop (direct percent) or direct velocity control.< / dd >
< / dl >
< / li >
< / ul >
< a id = "setAngle(double)" >
<!-- -->
< / a >
< ul class = "blockList" >
< li class = "blockList" >
< h4 > setAngle< / h4 >
< pre class = "methodSignature" > public void setAngle​ (double angle)< / pre >
< div class = "block" > Set the angle for the module.< / div >
< dl >
< dt > < span class = "paramLabel" > Parameters:< / span > < / dt >
< dd > < code > angle< / code > - Angle in degrees.< / dd >
< / dl >
< / li >
< / ul >
< a id = "getState()" >
<!-- -->
< / a >
< ul class = "blockList" >
< li class = "blockList" >
< h4 > getState< / h4 >
2023-02-13 15:03:55 -06:00
< pre class = "methodSignature" > public < a href = "math/SwerveModuleState2.html" title = "class in swervelib.math" > SwerveModuleState2< / a > getState()< / pre >
2023-02-13 14:37:05 -06:00
< div class = "block" > Get the Swerve Module state.< / div >
< dl >
< dt > < span class = "returnLabel" > Returns:< / span > < / dt >
< dd > Current SwerveModule state.< / dd >
< / dl >
< / li >
< / ul >
< a id = "getPosition()" >
<!-- -->
< / a >
< ul class = "blockList" >
< li class = "blockList" >
< h4 > getPosition< / h4 >
< pre class = "methodSignature" > public edu.wpi.first.math.kinematics.SwerveModulePosition getPosition()< / pre >
< / li >
< / ul >
< a id = "getCANCoder()" >
<!-- -->
< / a >
< ul class = "blockList" >
< li class = "blockList" >
< h4 > getCANCoder< / h4 >
< pre class = "methodSignature" > public double getCANCoder()< / pre >
< div class = "block" > Get the CANCoder absolute position.< / div >
< dl >
< dt > < span class = "returnLabel" > Returns:< / span > < / dt >
< dd > Absolute encoder angle in degrees.< / dd >
< / dl >
< / li >
< / ul >
< a id = "getRelativeEncoder()" >
<!-- -->
< / a >
< ul class = "blockList" >
< li class = "blockList" >
< h4 > getRelativeEncoder< / h4 >
< pre class = "methodSignature" > public double getRelativeEncoder()< / pre >
< div class = "block" > Get the relative encoder angle in degrees.< / div >
< dl >
< dt > < span class = "returnLabel" > Returns:< / span > < / dt >
< dd > Angle in degrees.< / dd >
< / dl >
< / li >
< / ul >
< a id = "setMotorBrake(boolean)" >
<!-- -->
< / a >
< ul class = "blockListLast" >
< li class = "blockList" >
< h4 > setMotorBrake< / h4 >
< pre class = "methodSignature" > public void setMotorBrake​ (boolean brake)< / pre >
< div class = "block" > Set the brake mode.< / div >
< dl >
< dt > < span class = "paramLabel" > Parameters:< / span > < / dt >
< dd > < code > brake< / code > - Set the brake mode.< / dd >
< / dl >
< / li >
< / ul >
< / li >
< / ul >
< / section >
< / li >
< / ul >
< / div >
< / div >
< / main >
<!-- ========= END OF CLASS DATA ========= -->
< footer role = "contentinfo" >
< nav role = "navigation" >
<!-- ======= START OF BOTTOM NAVBAR ====== -->
< div class = "bottomNav" > < a id = "navbar.bottom" >
<!-- -->
< / a >
< div class = "skipNav" > < a href = "#skip.navbar.bottom" title = "Skip navigation links" > Skip navigation links< / a > < / div >
< a id = "navbar.bottom.firstrow" >
<!-- -->
< / a >
< ul class = "navList" title = "Navigation" >
2023-02-13 15:03:55 -06:00
< li > < a href = "../index.html" > Overview< / a > < / li >
2023-02-13 14:37:05 -06:00
< li > < a href = "package-summary.html" > Package< / a > < / li >
< li class = "navBarCell1Rev" > Class< / li >
< li > < a href = "package-tree.html" > Tree< / a > < / li >
2023-02-13 15:03:55 -06:00
< li > < a href = "../deprecated-list.html" > Deprecated< / a > < / li >
< li > < a href = "../index-files/index-1.html" > Index< / a > < / li >
< li > < a href = "../help-doc.html" > Help< / a > < / li >
2023-02-13 14:37:05 -06:00
< / ul >
< / div >
< div class = "subNav" >
< ul class = "navList" id = "allclasses_navbar_bottom" >
2023-02-13 15:03:55 -06:00
< li > < a href = "../allclasses.html" > All Classes< / a > < / li >
2023-02-13 14:37:05 -06:00
< / ul >
< div >
< script type = "text/javascript" > < ! - -
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
< / script >
< noscript >
< div > JavaScript is disabled on your browser.< / div >
< / noscript >
< / div >
< div >
< ul class = "subNavList" >
< li > Summary: < / li >
< li > Nested | < / li >
< li > < a href = "#field.summary" > Field< / a > | < / li >
< li > < a href = "#constructor.summary" > Constr< / a > | < / li >
< li > < a href = "#method.summary" > Method< / a > < / li >
< / ul >
< ul class = "subNavList" >
< li > Detail: < / li >
< li > < a href = "#field.detail" > Field< / a > | < / li >
< li > < a href = "#constructor.detail" > Constr< / a > | < / li >
< li > < a href = "#method.detail" > Method< / a > < / li >
< / ul >
< / div >
< a id = "skip.navbar.bottom" >
<!-- -->
< / a > < / div >
<!-- ======== END OF BOTTOM NAVBAR ======= -->
< / nav >
< / footer >
< / body >
< / html >