2023-02-13 14:37:05 -06:00
<!DOCTYPE HTML>
< html lang = "en" >
< head >
2023-02-24 22:10:33 -06:00
<!-- Generated by javadoc (17) on Fri Feb 24 22:08:26 CST 2023 -->
2023-02-13 14:37:05 -06:00
< title > SwerveModuleConfiguration< / title >
2023-02-14 22:03:02 -06:00
< meta name = "viewport" content = "width=device-width, initial-scale=1" >
2023-02-13 14:37:05 -06:00
< meta http-equiv = "Content-Type" content = "text/html; charset=utf-8" >
2023-02-24 19:11:05 -06:00
< meta name = "dc.created" content = "2023-02-24" >
2023-02-14 22:03:02 -06:00
< meta name = "description" content = "declaration: package: swervelib.parser, class: SwerveModuleConfiguration" >
< meta name = "generator" content = "javadoc/ClassWriterImpl" >
2023-02-13 15:03:55 -06:00
< link rel = "stylesheet" type = "text/css" href = "../../stylesheet.css" title = "Style" >
2023-02-14 22:03:02 -06:00
< link rel = "stylesheet" type = "text/css" href = "../../script-dir/jquery-ui.min.css" title = "Style" >
2023-02-13 15:03:55 -06:00
< link rel = "stylesheet" type = "text/css" href = "../../jquery-ui.overrides.css" title = "Style" >
< script type = "text/javascript" src = "../../script.js" > < / script >
2023-02-14 22:03:02 -06:00
< script type = "text/javascript" src = "../../script-dir/jquery-3.5.1.min.js" > < / script >
< script type = "text/javascript" src = "../../script-dir/jquery-ui.min.js" > < / script >
2023-02-13 14:37:05 -06:00
< / head >
2023-02-14 22:03:02 -06:00
< body class = "class-declaration-page" >
< script type = "text/javascript" > v a r e v e n R o w C o l o r = " e v e n - r o w - c o l o r " ;
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";
2023-02-13 15:03:55 -06:00
var pathtoroot = "../../";
2023-02-13 14:37:05 -06:00
loadScripts(document, 'script');< / script >
< noscript >
< div > JavaScript is disabled on your browser.< / div >
< / noscript >
2023-02-14 22:03:02 -06:00
< div class = "flex-box" >
< header role = "banner" class = "flex-header" >
2023-02-13 14:37:05 -06:00
< nav role = "navigation" >
<!-- ========= START OF TOP NAVBAR ======= -->
2023-02-14 22:03:02 -06:00
< div class = "top-nav" id = "navbar-top" >
< div class = "skip-nav" > < a href = "#skip-navbar-top" title = "Skip navigation links" > Skip navigation links< / a > < / div >
< ul id = "navbar-top-firstrow" class = "nav-list" 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 >
2023-02-14 22:03:02 -06:00
< li class = "nav-bar-cell1-rev" > Class< / li >
2023-02-13 14:37:05 -06:00
< li > < a href = "package-tree.html" > Tree< / a > < / li >
2023-02-13 15:03:55 -06:00
< li > < a href = "../../index-files/index-1.html" > Index< / a > < / li >
2023-02-14 22:03:02 -06:00
< li > < a href = "../../help-doc.html#class" > Help< / a > < / li >
2023-02-13 14:37:05 -06:00
< / ul >
< / div >
2023-02-14 22:03:02 -06:00
< div class = "sub-nav" >
2023-02-13 14:37:05 -06:00
< div >
2023-02-14 22:03:02 -06:00
< ul class = "sub-nav-list" >
2023-02-13 14:37:05 -06:00
< li > Summary: < / li >
< li > Nested | < / li >
2023-02-14 22:03:02 -06:00
< li > < a href = "#field-summary" > Field< / a > | < / li >
< li > < a href = "#constructor-summary" > Constr< / a > | < / li >
< li > < a href = "#method-summary" > Method< / a > < / li >
2023-02-13 14:37:05 -06:00
< / ul >
2023-02-14 22:03:02 -06:00
< ul class = "sub-nav-list" >
2023-02-13 14:37:05 -06:00
< li > Detail: < / li >
2023-02-14 22:03:02 -06:00
< li > < a href = "#field-detail" > Field< / a > | < / li >
< li > < a href = "#constructor-detail" > Constr< / a > | < / li >
< li > < a href = "#method-detail" > Method< / a > < / li >
2023-02-13 14:37:05 -06:00
< / ul >
< / div >
2023-02-14 22:03:02 -06:00
< div class = "nav-list-search" > < label for = "search-input" > SEARCH:< / label >
< input type = "text" id = "search-input" value = "search" disabled = "disabled" >
< input type = "reset" id = "reset-button" value = "reset" disabled = "disabled" >
2023-02-13 14:37:05 -06:00
< / div >
2023-02-14 22:03:02 -06:00
< / div >
<!-- ========= END OF TOP NAVBAR ========= -->
< span class = "skip-nav" id = "skip-navbar-top" > < / span > < / nav >
2023-02-13 14:37:05 -06:00
< / header >
2023-02-14 22:03:02 -06:00
< div class = "flex-content" >
2023-02-13 14:37:05 -06:00
< main role = "main" >
2023-02-14 22:03:02 -06:00
<!-- ======== START OF CLASS DATA ======== -->
2023-02-13 14:37:05 -06:00
< div class = "header" >
2023-02-14 22:03:02 -06:00
< div class = "sub-title" > < span class = "package-label-in-type" > Package< / span > < a href = "package-summary.html" > swervelib.parser< / a > < / div >
< h1 title = "Class SwerveModuleConfiguration" class = "title" > Class SwerveModuleConfiguration< / h1 >
2023-02-13 14:37:05 -06:00
< / div >
2023-02-14 22:03:02 -06:00
< div class = "inheritance" title = "Inheritance Tree" > < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title = "class or interface in java.lang" class = "external-link" > java.lang.Object< / a >
< div class = "inheritance" > swervelib.parser.SwerveModuleConfiguration< / div >
< / div >
< section class = "class-description" id = "class-description" >
2023-02-13 14:37:05 -06:00
< hr >
2023-02-14 22:03:02 -06:00
< div class = "type-signature" > < span class = "modifiers" > public class < / span > < span class = "element-name type-name-label" > SwerveModuleConfiguration< / span >
< span class = "extends-implements" > extends < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title = "class or interface in java.lang" class = "external-link" > Object< / a > < / span > < / div >
2023-02-13 15:03:55 -06:00
< div class = "block" > Swerve Module configuration class which is used to configure < a href = "../SwerveModule.html" title = "class in swervelib" > < code > SwerveModule< / code > < / a > .< / div >
2023-02-14 22:03:02 -06:00
< / section >
< section class = "summary" >
< ul class = "summary-list" >
2023-02-13 14:37:05 -06:00
<!-- =========== FIELD SUMMARY =========== -->
2023-02-14 22:03:02 -06:00
< li >
< section class = "field-summary" id = "field-summary" >
< h2 > Field Summary< / h2 >
< div class = "caption" > < span > Fields< / span > < / div >
< div class = "summary-table three-column-summary" >
< div class = "table-header col-first" > Modifier and Type< / div >
< div class = "table-header col-second" > Field< / div >
< div class = "table-header col-last" > Description< / div >
< div class = "col-first even-row-color" > < code > < a href = "../encoders/SwerveAbsoluteEncoder.html" title = "class in swervelib.encoders" > SwerveAbsoluteEncoder< / a > < / code > < / div >
< div class = "col-second even-row-color" > < code > < a href = "#absoluteEncoder" class = "member-name-link" > absoluteEncoder< / a > < / code > < / div >
< div class = "col-last even-row-color" >
2023-02-13 14:37:05 -06:00
< div class = "block" > The Absolute Encoder for the swerve module.< / div >
2023-02-14 22:03:02 -06:00
< / div >
< div class = "col-first odd-row-color" > < code > final boolean< / code > < / div >
< div class = "col-second odd-row-color" > < code > < a href = "#absoluteEncoderInverted" class = "member-name-link" > absoluteEncoderInverted< / a > < / code > < / div >
< div class = "col-last odd-row-color" >
2023-02-13 14:37:05 -06:00
< div class = "block" > Whether the absolute encoder is inverted.< / div >
2023-02-14 22:03:02 -06:00
< / div >
< div class = "col-first even-row-color" > < code > double< / code > < / div >
< div class = "col-second even-row-color" > < code > < a href = "#angleKV" class = "member-name-link" > angleKV< / a > < / code > < / div >
< div class = "col-last even-row-color" >
2023-02-13 14:37:05 -06:00
< div class = "block" > Angle volt-meter-per-second.< / div >
2023-02-14 22:03:02 -06:00
< / div >
< div class = "col-first odd-row-color" > < code > < a href = "../motors/SwerveMotor.html" title = "class in swervelib.motors" > SwerveMotor< / a > < / code > < / div >
< div class = "col-second odd-row-color" > < code > < a href = "#angleMotor" class = "member-name-link" > angleMotor< / a > < / code > < / div >
< div class = "col-last odd-row-color" >
2023-02-13 14:37:05 -06:00
< div class = "block" > The drive motor and angle motor of this swerve module.< / div >
2023-02-14 22:03:02 -06:00
< / div >
2023-02-23 22:16:09 -06:00
< div class = "col-first even-row-color" > < code > double< / code > < / div >
< div class = "col-second even-row-color" > < code > < a href = "#angleMotorEncoderPulsePerRevolution" class = "member-name-link" > angleMotorEncoderPulsePerRevolution< / a > < / code > < / div >
2023-02-14 22:03:02 -06:00
< div class = "col-last even-row-color" >
2023-02-23 22:16:09 -06:00
< div class = "block" > The integrated encoder pulse per revolution.< / div >
2023-02-14 22:03:02 -06:00
< / div >
2023-02-23 22:16:09 -06:00
< div class = "col-first odd-row-color" > < code > final boolean< / code > < / div >
< div class = "col-second odd-row-color" > < code > < a href = "#angleMotorInverted" class = "member-name-link" > angleMotorInverted< / a > < / code > < / div >
2023-02-14 22:03:02 -06:00
< div class = "col-last odd-row-color" >
2023-02-23 22:16:09 -06:00
< div class = "block" > State of inversion of the angle motor.< / div >
2023-02-14 22:03:02 -06:00
< / div >
2023-02-23 22:16:09 -06:00
< div class = "col-first even-row-color" > < code > final double< / code > < / div >
< div class = "col-second even-row-color" > < code > < a href = "#angleOffset" class = "member-name-link" > angleOffset< / a > < / code > < / div >
2023-02-14 22:03:02 -06:00
< div class = "col-last even-row-color" >
2023-02-23 22:16:09 -06:00
< div class = "block" > Angle offset in degrees for the Swerve Module.< / div >
2023-02-14 22:03:02 -06:00
< / div >
2023-02-23 22:16:09 -06:00
< div class = "col-first odd-row-color" > < code > < a href = "PIDFConfig.html" title = "class in swervelib.parser" > PIDFConfig< / a > < / code > < / div >
< div class = "col-second odd-row-color" > < code > < a href = "#anglePIDF" class = "member-name-link" > anglePIDF< / a > < / code > < / div >
2023-02-14 22:03:02 -06:00
< div class = "col-last odd-row-color" >
2023-02-23 22:16:09 -06:00
< div class = "block" > PIDF configuration options for the angle motor closed-loop PID controller.< / div >
2023-02-14 22:03:02 -06:00
< / div >
2023-02-23 22:16:09 -06:00
< div class = "col-first even-row-color" > < code > < a href = "../motors/SwerveMotor.html" title = "class in swervelib.motors" > SwerveMotor< / a > < / code > < / div >
< div class = "col-second even-row-color" > < code > < a href = "#driveMotor" class = "member-name-link" > driveMotor< / a > < / code > < / div >
2023-02-14 22:03:02 -06:00
< div class = "col-last even-row-color" >
2023-02-23 22:16:09 -06:00
< div class = "block" > The drive motor and angle motor of this swerve module.< / div >
2023-02-14 22:03:02 -06:00
< / div >
2023-02-23 22:16:09 -06:00
< div class = "col-first odd-row-color" > < code > final boolean< / code > < / div >
< div class = "col-second odd-row-color" > < code > < a href = "#driveMotorInverted" class = "member-name-link" > driveMotorInverted< / a > < / code > < / div >
2023-02-14 22:03:02 -06:00
< div class = "col-last odd-row-color" >
2023-02-23 22:16:09 -06:00
< div class = "block" > State of inversion of the drive motor.< / div >
2023-02-14 22:03:02 -06:00
< / div >
2023-02-23 22:16:09 -06:00
< div class = "col-first even-row-color" > < code > final double< / code > < / div >
< div class = "col-second even-row-color" > < code > < a href = "#maxSpeed" class = "member-name-link" > maxSpeed< / a > < / code > < / div >
2023-02-14 22:03:02 -06:00
< div class = "col-last even-row-color" >
2023-02-23 22:16:09 -06:00
< div class = "block" > Maximum robot speed in meters per second.< / div >
2023-02-14 22:03:02 -06:00
< / div >
2023-02-23 22:16:09 -06:00
< div class = "col-first odd-row-color" > < code > edu.wpi.first.math.geometry.Translation2d< / code > < / div >
< div class = "col-second odd-row-color" > < code > < a href = "#moduleLocation" class = "member-name-link" > moduleLocation< / a > < / code > < / div >
2023-02-14 22:03:02 -06:00
< div class = "col-last odd-row-color" >
2023-02-23 22:16:09 -06:00
< div class = "block" > Swerve module location relative to the robot.< / div >
2023-02-14 22:03:02 -06:00
< / div >
2023-02-23 22:16:09 -06:00
< div class = "col-first even-row-color" > < code > < a href = "SwerveModulePhysicalCharacteristics.html" title = "class in swervelib.parser" > SwerveModulePhysicalCharacteristics< / a > < / code > < / div >
< div class = "col-second even-row-color" > < code > < a href = "#physicalCharacteristics" class = "member-name-link" > physicalCharacteristics< / a > < / code > < / div >
2023-02-14 22:03:02 -06:00
< div class = "col-last even-row-color" >
2023-02-23 22:16:09 -06:00
< div class = "block" > Physical characteristics of the swerve module.< / div >
< / div >
< div class = "col-first odd-row-color" > < code > < a href = "PIDFConfig.html" title = "class in swervelib.parser" > PIDFConfig< / a > < / code > < / div >
< div class = "col-second odd-row-color" > < code > < a href = "#velocityPIDF" class = "member-name-link" > velocityPIDF< / a > < / code > < / div >
< div class = "col-last odd-row-color" >
2023-02-13 14:37:05 -06:00
< div class = "block" > PIDF configuration options for the drive motor closed-loop PID controller.< / div >
2023-02-14 22:03:02 -06:00
< / div >
< / div >
2023-02-13 14:37:05 -06:00
< / section >
2023-02-14 22:03:02 -06:00
< / li >
2023-02-13 14:37:05 -06:00
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
2023-02-14 22:03:02 -06:00
< li >
< section class = "constructor-summary" id = "constructor-summary" >
< h2 > Constructor Summary< / h2 >
< div class = "caption" > < span > Constructors< / span > < / div >
< div class = "summary-table two-column-summary" >
< div class = "table-header col-first" > Constructor< / div >
< div class = "table-header col-last" > Description< / div >
< div class = "col-constructor-name even-row-color" > < code > < a href = "#%3Cinit%3E(swervelib.motors.SwerveMotor,swervelib.motors.SwerveMotor,swervelib.encoders.SwerveAbsoluteEncoder,double,double,double,swervelib.parser.PIDFConfig,swervelib.parser.PIDFConfig,double,swervelib.parser.SwerveModulePhysicalCharacteristics)" class = "member-name-link" > SwerveModuleConfiguration< / a > < wbr > (< a href = "../motors/SwerveMotor.html" title = "class in swervelib.motors" > SwerveMotor< / a > driveMotor,
< a href = "../motors/SwerveMotor.html" title = "class in swervelib.motors" > SwerveMotor< / a > angleMotor,
< a href = "../encoders/SwerveAbsoluteEncoder.html" title = "class in swervelib.encoders" > SwerveAbsoluteEncoder< / a > absoluteEncoder,
double angleOffset,
double xMeters,
double yMeters,
< a href = "PIDFConfig.html" title = "class in swervelib.parser" > PIDFConfig< / a > anglePIDF,
< a href = "PIDFConfig.html" title = "class in swervelib.parser" > PIDFConfig< / a > velocityPIDF,
double maxSpeed,
< a href = "SwerveModulePhysicalCharacteristics.html" title = "class in swervelib.parser" > SwerveModulePhysicalCharacteristics< / a > physicalCharacteristics)< / code > < / div >
< div class = "col-last even-row-color" >
2023-02-13 14:37:05 -06:00
< div class = "block" > Construct a configuration object for swerve modules.< / div >
2023-02-14 22:03:02 -06:00
< / div >
2023-02-23 22:16:09 -06:00
< div class = "col-constructor-name odd-row-color" > < code > < a href = "#%3Cinit%3E(swervelib.motors.SwerveMotor,swervelib.motors.SwerveMotor,swervelib.encoders.SwerveAbsoluteEncoder,double,double,double,swervelib.parser.PIDFConfig,swervelib.parser.PIDFConfig,double,swervelib.parser.SwerveModulePhysicalCharacteristics,boolean,boolean,boolean,double,double)" class = "member-name-link" > SwerveModuleConfiguration< / a > < wbr > (< a href = "../motors/SwerveMotor.html" title = "class in swervelib.motors" > SwerveMotor< / a > driveMotor,
2023-02-14 22:03:02 -06:00
< a href = "../motors/SwerveMotor.html" title = "class in swervelib.motors" > SwerveMotor< / a > angleMotor,
< a href = "../encoders/SwerveAbsoluteEncoder.html" title = "class in swervelib.encoders" > SwerveAbsoluteEncoder< / a > absoluteEncoder,
double angleOffset,
double xMeters,
double yMeters,
< a href = "PIDFConfig.html" title = "class in swervelib.parser" > PIDFConfig< / a > anglePIDF,
< a href = "PIDFConfig.html" title = "class in swervelib.parser" > PIDFConfig< / a > velocityPIDF,
double maxSpeed,
< a href = "SwerveModulePhysicalCharacteristics.html" title = "class in swervelib.parser" > SwerveModulePhysicalCharacteristics< / a > physicalCharacteristics,
boolean absoluteEncoderInverted,
boolean driveMotorInverted,
2023-02-23 22:16:09 -06:00
boolean angleMotorInverted,
double angleMotorEncoderPulsePerRevolution,
double angleMotorFreeSpeedRPM)< / code > < / div >
2023-02-14 22:03:02 -06:00
< div class = "col-last odd-row-color" >
2023-02-13 14:37:05 -06:00
< div class = "block" > Construct a configuration object for swerve modules.< / div >
2023-02-14 22:03:02 -06:00
< / div >
< / div >
2023-02-13 14:37:05 -06:00
< / section >
2023-02-14 22:03:02 -06:00
< / li >
2023-02-13 14:37:05 -06:00
<!-- ========== METHOD SUMMARY =========== -->
2023-02-14 22:03:02 -06:00
< li >
< section class = "method-summary" id = "method-summary" >
< h2 > Method Summary< / h2 >
< div id = "method-summary-table" >
< div class = "table-tabs" role = "tablist" aria-orientation = "horizontal" > < button id = "method-summary-table-tab0" role = "tab" aria-selected = "true" aria-controls = "method-summary-table.tabpanel" tabindex = "0" onkeydown = "switchTab(event)" onclick = "show('method-summary-table', 'method-summary-table', 3)" class = "active-table-tab" > All Methods< / button > < button id = "method-summary-table-tab2" role = "tab" aria-selected = "false" aria-controls = "method-summary-table.tabpanel" tabindex = "-1" onkeydown = "switchTab(event)" onclick = "show('method-summary-table', 'method-summary-table-tab2', 3)" class = "table-tab" > Instance Methods< / button > < button id = "method-summary-table-tab4" role = "tab" aria-selected = "false" aria-controls = "method-summary-table.tabpanel" tabindex = "-1" onkeydown = "switchTab(event)" onclick = "show('method-summary-table', 'method-summary-table-tab4', 3)" class = "table-tab" > Concrete Methods< / button > < / div >
< div id = "method-summary-table.tabpanel" role = "tabpanel" >
< div class = "summary-table three-column-summary" aria-labelledby = "method-summary-table-tab0" >
< div class = "table-header col-first" > Modifier and Type< / div >
< div class = "table-header col-second" > Method< / div >
< div class = "table-header col-last" > Description< / div >
< div class = "col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4" > < code > edu.wpi.first.math.controller.SimpleMotorFeedforward< / code > < / div >
< div class = "col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4" > < code > < a href = "#createDriveFeedforward()" class = "member-name-link" > createDriveFeedforward< / a > ()< / code > < / div >
< div class = "col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4" >
2023-02-13 14:37:05 -06:00
< div class = "block" > Create the drive feedforward for swerve modules.< / div >
2023-02-14 22:03:02 -06:00
< / div >
< div class = "col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4" > < code > double< / code > < / div >
< div class = "col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4" > < code > < a href = "#getPositionEncoderConversion(boolean)" class = "member-name-link" > getPositionEncoderConversion< / a > < wbr > (boolean isDriveMotor)< / code > < / div >
< div class = "col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4" >
2023-02-13 14:37:05 -06:00
< div class = "block" > Get the encoder conversion for position encoders.< / div >
2023-02-14 22:03:02 -06:00
< / div >
< / div >
< / div >
< / div >
< div class = "inherited-list" >
< h3 id = "methods-inherited-from-class-java.lang.Object" > Methods inherited from class java.lang.< a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title = "class or interface in java.lang" class = "external-link" > Object< / a > < / h3 >
< code > < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title = "class or interface in java.lang" class = "external-link" > clone< / a > , < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title = "class or interface in java.lang" class = "external-link" > equals< / a > , < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title = "class or interface in java.lang" class = "external-link" > finalize< / a > , < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title = "class or interface in java.lang" class = "external-link" > getClass< / a > , < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title = "class or interface in java.lang" class = "external-link" > hashCode< / a > , < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title = "class or interface in java.lang" class = "external-link" > notify< / a > , < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title = "class or interface in java.lang" class = "external-link" > notifyAll< / a > , < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString()" title = "class or interface in java.lang" class = "external-link" > toString< / a > , < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title = "class or interface in java.lang" class = "external-link" > wait< / a > , < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title = "class or interface in java.lang" class = "external-link" > wait< / a > , < a href = "https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title = "class or interface in java.lang" class = "external-link" > wait< / a > < / code > < / div >
2023-02-13 14:37:05 -06:00
< / section >
< / li >
< / ul >
2023-02-14 22:03:02 -06:00
< / section >
< section class = "details" >
< ul class = "details-list" >
2023-02-13 14:37:05 -06:00
<!-- ============ FIELD DETAIL =========== -->
2023-02-14 22:03:02 -06:00
< li >
< section class = "field-details" id = "field-detail" >
< h2 > Field Details< / h2 >
< ul class = "member-list" >
< li >
< section class = "detail" id = "angleOffset" >
< h3 > angleOffset< / h3 >
< div class = "member-signature" > < span class = "modifiers" > public final< / span > < span class = "return-type" > double< / span > < span class = "element-name" > angleOffset< / span > < / div >
2023-02-13 14:37:05 -06:00
< div class = "block" > Angle offset in degrees for the Swerve Module.< / div >
2023-02-14 22:03:02 -06:00
< / section >
2023-02-13 14:37:05 -06:00
< / li >
2023-02-14 22:03:02 -06:00
< li >
< section class = "detail" id = "absoluteEncoderInverted" >
< h3 > absoluteEncoderInverted< / h3 >
< div class = "member-signature" > < span class = "modifiers" > public final< / span > < span class = "return-type" > boolean< / span > < span class = "element-name" > absoluteEncoderInverted< / span > < / div >
2023-02-13 14:37:05 -06:00
< div class = "block" > Whether the absolute encoder is inverted.< / div >
2023-02-14 22:03:02 -06:00
< / section >
2023-02-13 14:37:05 -06:00
< / li >
2023-02-14 22:03:02 -06:00
< li >
< section class = "detail" id = "driveMotorInverted" >
< h3 > driveMotorInverted< / h3 >
< div class = "member-signature" > < span class = "modifiers" > public final< / span > < span class = "return-type" > boolean< / span > < span class = "element-name" > driveMotorInverted< / span > < / div >
2023-02-13 14:37:05 -06:00
< div class = "block" > State of inversion of the drive motor.< / div >
2023-02-14 22:03:02 -06:00
< / section >
2023-02-13 14:37:05 -06:00
< / li >
2023-02-14 22:03:02 -06:00
< li >
< section class = "detail" id = "angleMotorInverted" >
< h3 > angleMotorInverted< / h3 >
< div class = "member-signature" > < span class = "modifiers" > public final< / span > < span class = "return-type" > boolean< / span > < span class = "element-name" > angleMotorInverted< / span > < / div >
2023-02-13 14:37:05 -06:00
< div class = "block" > State of inversion of the angle motor.< / div >
2023-02-14 22:03:02 -06:00
< / section >
2023-02-13 14:37:05 -06:00
< / li >
2023-02-14 22:03:02 -06:00
< li >
< section class = "detail" id = "maxSpeed" >
< h3 > maxSpeed< / h3 >
< div class = "member-signature" > < span class = "modifiers" > public final< / span > < span class = "return-type" > double< / span > < span class = "element-name" > maxSpeed< / span > < / div >
2023-02-13 14:37:05 -06:00
< div class = "block" > Maximum robot speed in meters per second.< / div >
2023-02-14 22:03:02 -06:00
< / section >
2023-02-13 14:37:05 -06:00
< / li >
2023-02-14 22:03:02 -06:00
< li >
< section class = "detail" id = "anglePIDF" >
< h3 > anglePIDF< / h3 >
< div class = "member-signature" > < span class = "modifiers" > public< / span > < span class = "return-type" > < a href = "PIDFConfig.html" title = "class in swervelib.parser" > PIDFConfig< / a > < / span > < span class = "element-name" > anglePIDF< / span > < / div >
2023-02-13 14:37:05 -06:00
< div class = "block" > PIDF configuration options for the angle motor closed-loop PID controller.< / div >
2023-02-14 22:03:02 -06:00
< / section >
2023-02-13 14:37:05 -06:00
< / li >
2023-02-14 22:03:02 -06:00
< li >
< section class = "detail" id = "velocityPIDF" >
< h3 > velocityPIDF< / h3 >
< div class = "member-signature" > < span class = "modifiers" > public< / span > < span class = "return-type" > < a href = "PIDFConfig.html" title = "class in swervelib.parser" > PIDFConfig< / a > < / span > < span class = "element-name" > velocityPIDF< / span > < / div >
2023-02-13 14:37:05 -06:00
< div class = "block" > PIDF configuration options for the drive motor closed-loop PID controller.< / div >
2023-02-14 22:03:02 -06:00
< / section >
2023-02-13 14:37:05 -06:00
< / li >
2023-02-14 22:03:02 -06:00
< li >
< section class = "detail" id = "angleKV" >
< h3 > angleKV< / h3 >
< div class = "member-signature" > < span class = "modifiers" > public< / span > < span class = "return-type" > double< / span > < span class = "element-name" > angleKV< / span > < / div >
2023-02-13 14:37:05 -06:00
< div class = "block" > Angle volt-meter-per-second.< / div >
2023-02-14 22:03:02 -06:00
< / section >
2023-02-13 14:37:05 -06:00
< / li >
2023-02-14 22:03:02 -06:00
< li >
2023-02-23 22:16:09 -06:00
< section class = "detail" id = "angleMotorEncoderPulsePerRevolution" >
< h3 > angleMotorEncoderPulsePerRevolution< / h3 >
< div class = "member-signature" > < span class = "modifiers" > public< / span > < span class = "return-type" > double< / span > < span class = "element-name" > angleMotorEncoderPulsePerRevolution< / span > < / div >
< div class = "block" > The integrated encoder pulse per revolution.< / div >
< / section >
< / li >
< li >
2023-02-14 22:03:02 -06:00
< section class = "detail" id = "moduleLocation" >
< h3 > moduleLocation< / h3 >
< div class = "member-signature" > < span class = "modifiers" > public< / span > < span class = "return-type" > edu.wpi.first.math.geometry.Translation2d< / span > < span class = "element-name" > moduleLocation< / span > < / div >
2023-02-13 14:37:05 -06:00
< div class = "block" > Swerve module location relative to the robot.< / div >
2023-02-14 22:03:02 -06:00
< / section >
2023-02-13 14:37:05 -06:00
< / li >
2023-02-14 22:03:02 -06:00
< li >
< section class = "detail" id = "physicalCharacteristics" >
< h3 > physicalCharacteristics< / h3 >
< div class = "member-signature" > < span class = "modifiers" > public< / span > < span class = "return-type" > < a href = "SwerveModulePhysicalCharacteristics.html" title = "class in swervelib.parser" > SwerveModulePhysicalCharacteristics< / a > < / span > < span class = "element-name" > physicalCharacteristics< / span > < / div >
2023-02-13 14:37:05 -06:00
< div class = "block" > Physical characteristics of the swerve module.< / div >
2023-02-14 22:03:02 -06:00
< / section >
2023-02-13 14:37:05 -06:00
< / li >
2023-02-14 22:03:02 -06:00
< li >
< section class = "detail" id = "driveMotor" >
< h3 > driveMotor< / h3 >
< div class = "member-signature" > < span class = "modifiers" > public< / span > < span class = "return-type" > < a href = "../motors/SwerveMotor.html" title = "class in swervelib.motors" > SwerveMotor< / a > < / span > < span class = "element-name" > driveMotor< / span > < / div >
2023-02-13 14:37:05 -06:00
< div class = "block" > The drive motor and angle motor of this swerve module.< / div >
2023-02-14 22:03:02 -06:00
< / section >
2023-02-13 14:37:05 -06:00
< / li >
2023-02-14 22:03:02 -06:00
< li >
< section class = "detail" id = "angleMotor" >
< h3 > angleMotor< / h3 >
< div class = "member-signature" > < span class = "modifiers" > public< / span > < span class = "return-type" > < a href = "../motors/SwerveMotor.html" title = "class in swervelib.motors" > SwerveMotor< / a > < / span > < span class = "element-name" > angleMotor< / span > < / div >
2023-02-13 14:37:05 -06:00
< div class = "block" > The drive motor and angle motor of this swerve module.< / div >
2023-02-14 22:03:02 -06:00
< / section >
2023-02-13 14:37:05 -06:00
< / li >
2023-02-14 22:03:02 -06:00
< li >
< section class = "detail" id = "absoluteEncoder" >
< h3 > absoluteEncoder< / h3 >
< div class = "member-signature" > < span class = "modifiers" > public< / span > < span class = "return-type" > < a href = "../encoders/SwerveAbsoluteEncoder.html" title = "class in swervelib.encoders" > SwerveAbsoluteEncoder< / a > < / span > < span class = "element-name" > absoluteEncoder< / span > < / div >
2023-02-13 14:37:05 -06:00
< div class = "block" > The Absolute Encoder for the swerve module.< / div >
2023-02-14 22:03:02 -06:00
< / section >
2023-02-13 14:37:05 -06:00
< / li >
< / ul >
< / section >
2023-02-14 22:03:02 -06:00
< / li >
2023-02-13 14:37:05 -06:00
<!-- ========= CONSTRUCTOR DETAIL ======== -->
2023-02-14 22:03:02 -06:00
< li >
< section class = "constructor-details" id = "constructor-detail" >
< h2 > Constructor Details< / h2 >
< ul class = "member-list" >
< li >
2023-02-23 22:16:09 -06:00
< section class = "detail" id = "<init>(swervelib.motors.SwerveMotor,swervelib.motors.SwerveMotor,swervelib.encoders.SwerveAbsoluteEncoder,double,double,double,swervelib.parser.PIDFConfig,swervelib.parser.PIDFConfig,double,swervelib.parser.SwerveModulePhysicalCharacteristics,boolean,boolean,boolean,double,double)" >
2023-02-14 22:03:02 -06:00
< h3 > SwerveModuleConfiguration< / h3 >
< div class = "member-signature" > < span class = "modifiers" > public< / span > < span class = "element-name" > SwerveModuleConfiguration< / span > < wbr > < span class = "parameters" > (< a href = "../motors/SwerveMotor.html" title = "class in swervelib.motors" > SwerveMotor< / a > driveMotor,
< a href = "../motors/SwerveMotor.html" title = "class in swervelib.motors" > SwerveMotor< / a > angleMotor,
< a href = "../encoders/SwerveAbsoluteEncoder.html" title = "class in swervelib.encoders" > SwerveAbsoluteEncoder< / a > absoluteEncoder,
double angleOffset,
double xMeters,
double yMeters,
< a href = "PIDFConfig.html" title = "class in swervelib.parser" > PIDFConfig< / a > anglePIDF,
< a href = "PIDFConfig.html" title = "class in swervelib.parser" > PIDFConfig< / a > velocityPIDF,
double maxSpeed,
< a href = "SwerveModulePhysicalCharacteristics.html" title = "class in swervelib.parser" > SwerveModulePhysicalCharacteristics< / a > physicalCharacteristics,
boolean absoluteEncoderInverted,
boolean driveMotorInverted,
2023-02-23 22:16:09 -06:00
boolean angleMotorInverted,
double angleMotorEncoderPulsePerRevolution,
double angleMotorFreeSpeedRPM)< / span > < / div >
2023-02-13 14:37:05 -06:00
< div class = "block" > Construct a configuration object for swerve modules.< / div >
2023-02-14 22:03:02 -06:00
< dl class = "notes" >
< dt > Parameters:< / dt >
2023-02-13 15:03:55 -06:00
< dd > < code > driveMotor< / code > - Drive < a href = "../motors/SwerveMotor.html" title = "class in swervelib.motors" > < code > SwerveMotor< / code > < / a > .< / dd >
< dd > < code > angleMotor< / code > - Angle < a href = "../motors/SwerveMotor.html" title = "class in swervelib.motors" > < code > SwerveMotor< / code > < / a > < / dd >
< dd > < code > absoluteEncoder< / code > - Absolute encoder < a href = "../encoders/SwerveAbsoluteEncoder.html" title = "class in swervelib.encoders" > < code > SwerveAbsoluteEncoder< / code > < / a > .< / dd >
2023-02-13 14:37:05 -06:00
< dd > < code > angleOffset< / code > - Absolute angle offset to 0.< / dd >
< dd > < code > absoluteEncoderInverted< / code > - Absolute encoder inverted.< / dd >
< dd > < code > angleMotorInverted< / code > - State of inversion of the angle motor.< / dd >
< dd > < code > driveMotorInverted< / code > - Drive motor inverted.< / dd >
< dd > < code > xMeters< / code > - Module location in meters from the center horizontally.< / dd >
< dd > < code > yMeters< / code > - Module location in meters from center vertically.< / dd >
< dd > < code > anglePIDF< / code > - Angle PIDF configuration.< / dd >
< dd > < code > velocityPIDF< / code > - Velocity PIDF configuration.< / dd >
< dd > < code > maxSpeed< / code > - Maximum speed in meters per second.< / dd >
< dd > < code > physicalCharacteristics< / code > - Physical characteristics of the swerve module.< / dd >
2023-02-23 22:16:09 -06:00
< dd > < code > angleMotorEncoderPulsePerRevolution< / code > - The encoder pulse per revolution for the angle motor encoder.< / dd >
< dd > < code > angleMotorFreeSpeedRPM< / code > - The free speed RPM of the angle motor.< / dd >
2023-02-13 14:37:05 -06:00
< / dl >
2023-02-14 22:03:02 -06:00
< / section >
2023-02-13 14:37:05 -06:00
< / li >
2023-02-14 22:03:02 -06:00
< li >
< section class = "detail" id = "<init>(swervelib.motors.SwerveMotor,swervelib.motors.SwerveMotor,swervelib.encoders.SwerveAbsoluteEncoder,double,double,double,swervelib.parser.PIDFConfig,swervelib.parser.PIDFConfig,double,swervelib.parser.SwerveModulePhysicalCharacteristics)" >
< h3 > SwerveModuleConfiguration< / h3 >
< div class = "member-signature" > < span class = "modifiers" > public< / span > < span class = "element-name" > SwerveModuleConfiguration< / span > < wbr > < span class = "parameters" > (< a href = "../motors/SwerveMotor.html" title = "class in swervelib.motors" > SwerveMotor< / a > driveMotor,
< a href = "../motors/SwerveMotor.html" title = "class in swervelib.motors" > SwerveMotor< / a > angleMotor,
< a href = "../encoders/SwerveAbsoluteEncoder.html" title = "class in swervelib.encoders" > SwerveAbsoluteEncoder< / a > absoluteEncoder,
double angleOffset,
double xMeters,
double yMeters,
< a href = "PIDFConfig.html" title = "class in swervelib.parser" > PIDFConfig< / a > anglePIDF,
< a href = "PIDFConfig.html" title = "class in swervelib.parser" > PIDFConfig< / a > velocityPIDF,
double maxSpeed,
< a href = "SwerveModulePhysicalCharacteristics.html" title = "class in swervelib.parser" > SwerveModulePhysicalCharacteristics< / a > physicalCharacteristics)< / span > < / div >
2023-02-13 14:37:05 -06:00
< div class = "block" > Construct a configuration object for swerve modules. Assumes the absolute encoder and drive motor are not
inverted.< / div >
2023-02-14 22:03:02 -06:00
< dl class = "notes" >
< dt > Parameters:< / dt >
2023-02-13 15:03:55 -06:00
< dd > < code > driveMotor< / code > - Drive < a href = "../motors/SwerveMotor.html" title = "class in swervelib.motors" > < code > SwerveMotor< / code > < / a > .< / dd >
< dd > < code > angleMotor< / code > - Angle < a href = "../motors/SwerveMotor.html" title = "class in swervelib.motors" > < code > SwerveMotor< / code > < / a > < / dd >
< dd > < code > absoluteEncoder< / code > - Absolute encoder < a href = "../encoders/SwerveAbsoluteEncoder.html" title = "class in swervelib.encoders" > < code > SwerveAbsoluteEncoder< / code > < / a > .< / dd >
2023-02-13 14:37:05 -06:00
< dd > < code > angleOffset< / code > - Absolute angle offset to 0.< / dd >
< dd > < code > xMeters< / code > - Module location in meters from the center horizontally.< / dd >
< dd > < code > yMeters< / code > - Module location in meters from center vertically.< / dd >
< dd > < code > anglePIDF< / code > - Angle PIDF configuration.< / dd >
< dd > < code > velocityPIDF< / code > - Velocity PIDF configuration.< / dd >
< dd > < code > maxSpeed< / code > - Maximum robot speed in meters per second.< / dd >
< dd > < code > physicalCharacteristics< / code > - Physical characteristics of the swerve module.< / dd >
< / dl >
2023-02-14 22:03:02 -06:00
< / section >
2023-02-13 14:37:05 -06:00
< / li >
< / ul >
< / section >
2023-02-14 22:03:02 -06:00
< / li >
2023-02-13 14:37:05 -06:00
<!-- ============ METHOD DETAIL ========== -->
2023-02-14 22:03:02 -06:00
< li >
< section class = "method-details" id = "method-detail" >
< h2 > Method Details< / h2 >
< ul class = "member-list" >
< li >
< section class = "detail" id = "createDriveFeedforward()" >
< h3 > createDriveFeedforward< / h3 >
< div class = "member-signature" > < span class = "modifiers" > public< / span > < span class = "return-type" > edu.wpi.first.math.controller.SimpleMotorFeedforward< / span > < span class = "element-name" > createDriveFeedforward< / span > ()< / div >
2023-02-13 14:37:05 -06:00
< div class = "block" > Create the drive feedforward for swerve modules.< / div >
2023-02-14 22:03:02 -06:00
< dl class = "notes" >
< dt > Returns:< / dt >
2023-02-13 14:37:05 -06:00
< dd > Drive feedforward for drive motor on a swerve module.< / dd >
< / dl >
2023-02-14 22:03:02 -06:00
< / section >
2023-02-13 14:37:05 -06:00
< / li >
2023-02-14 22:03:02 -06:00
< li >
< section class = "detail" id = "getPositionEncoderConversion(boolean)" >
< h3 > getPositionEncoderConversion< / h3 >
< div class = "member-signature" > < span class = "modifiers" > public< / span > < span class = "return-type" > double< / span > < span class = "element-name" > getPositionEncoderConversion< / span > < wbr > < span class = "parameters" > (boolean isDriveMotor)< / span > < / div >
2023-02-13 14:37:05 -06:00
< div class = "block" > Get the encoder conversion for position encoders.< / div >
2023-02-14 22:03:02 -06:00
< dl class = "notes" >
< dt > Parameters:< / dt >
2023-02-13 14:37:05 -06:00
< dd > < code > isDriveMotor< / code > - For the drive motor.< / dd >
2023-02-14 22:03:02 -06:00
< dt > Returns:< / dt >
2023-02-13 14:37:05 -06:00
< dd > Position encoder conversion factor.< / dd >
< / dl >
2023-02-14 22:03:02 -06:00
< / section >
2023-02-13 14:37:05 -06:00
< / li >
< / ul >
< / section >
< / li >
< / ul >
2023-02-14 22:03:02 -06:00
< / section >
2023-02-13 14:37:05 -06:00
<!-- ========= END OF CLASS DATA ========= -->
2023-02-14 22:03:02 -06:00
< / main >
2023-02-13 14:37:05 -06:00
< / div >
< / div >
< / body >
< / html >