Files
YAGSL/docs/swervelib/parser/json/PhysicalPropertiesJson.html
thenetworkgrinch b1689f3ec2 Update add function
2023-03-30 23:28:07 -05:00

288 lines
18 KiB
HTML

<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (17) on Thu Mar 30 23:27:15 CDT 2023 -->
<title>PhysicalPropertiesJson</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="dc.created" content="2023-03-30">
<meta name="description" content="declaration: package: swervelib.parser.json, class: PhysicalPropertiesJson">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../script-dir/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="../../../script-dir/jquery-3.5.1.min.js"></script>
<script type="text/javascript" src="../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var evenRowColor = "even-row-color";
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";
var pathtoroot = "../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<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">
<li><a href="../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../index-files/index-1.html">Index</a></li>
<li><a href="../../../help-doc.html#class">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div>
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field-summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li><a href="#field-detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<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">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">swervelib.parser.json</a></div>
<h1 title="Class PhysicalPropertiesJson" class="title">Class PhysicalPropertiesJson</h1>
</div>
<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.json.PhysicalPropertiesJson</div>
</div>
<section class="class-description" id="class-description">
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">PhysicalPropertiesJson</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>
<div class="block"><a href="../SwerveModulePhysicalCharacteristics.html" title="class in swervelib.parser"><code>SwerveModulePhysicalCharacteristics</code></a> parsed data. Used to configure the SwerveModule.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- =========== FIELD SUMMARY =========== -->
<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>double</code></div>
<div class="col-second even-row-color"><code><a href="#angleMotorFreeSpeedRPM" class="member-name-link">angleMotorFreeSpeedRPM</a></code></div>
<div class="col-last even-row-color">
<div class="block">Angle motor free speed rotations per minute.</div>
</div>
<div class="col-first odd-row-color"><code>double</code></div>
<div class="col-second odd-row-color"><code><a href="#angleMotorsKV" class="member-name-link">angleMotorsKV</a></code></div>
<div class="col-last odd-row-color">
<div class="block">Angle motor kV used for second order kinematics to tune the feedforward, this variable should be adjusted so that
your drive train does not drift towards the direction you are rotating while you translate.</div>
</div>
<div class="col-first even-row-color"><code><a href="MotorConfigInt.html" title="class in swervelib.parser.json">MotorConfigInt</a></code></div>
<div class="col-second even-row-color"><code><a href="#currentLimit" class="member-name-link">currentLimit</a></code></div>
<div class="col-last even-row-color">
<div class="block">The current limit in AMPs to apply to the motors.</div>
</div>
<div class="col-first odd-row-color"><code><a href="MotorConfigInt.html" title="class in swervelib.parser.json">MotorConfigInt</a></code></div>
<div class="col-second odd-row-color"><code><a href="#encoderPulsePerRotation" class="member-name-link">encoderPulsePerRotation</a></code></div>
<div class="col-last odd-row-color">
<div class="block">Encoder pulse per rotation for non-integrated encoders.</div>
</div>
<div class="col-first even-row-color"><code><a href="MotorConfigDouble.html" title="class in swervelib.parser.json">MotorConfigDouble</a></code></div>
<div class="col-second even-row-color"><code><a href="#gearRatio" class="member-name-link">gearRatio</a></code></div>
<div class="col-last even-row-color">
<div class="block">Gear ratio for the motors, number of times the motor has to spin before the wheel rotates a single time.</div>
</div>
<div class="col-first odd-row-color"><code><a href="MotorConfigDouble.html" title="class in swervelib.parser.json">MotorConfigDouble</a></code></div>
<div class="col-second odd-row-color"><code><a href="#rampRate" class="member-name-link">rampRate</a></code></div>
<div class="col-last odd-row-color">
<div class="block">The minimum number of seconds to take for the motor to go from 0 to full throttle.</div>
</div>
<div class="col-first even-row-color"><code>double</code></div>
<div class="col-second even-row-color"><code><a href="#wheelDiameter" class="member-name-link">wheelDiameter</a></code></div>
<div class="col-last even-row-color">
<div class="block">Wheel diameter in inches.</div>
</div>
<div class="col-first odd-row-color"><code>double</code></div>
<div class="col-second odd-row-color"><code><a href="#wheelGripCoefficientOfFriction" class="member-name-link">wheelGripCoefficientOfFriction</a></code></div>
<div class="col-last odd-row-color">
<div class="block">The grip tape coefficient of friction on carpet.</div>
</div>
</div>
</section>
</li>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<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()" class="member-name-link">PhysicalPropertiesJson</a>()</code></div>
<div class="col-last even-row-color">&nbsp;</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<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><a href="../SwerveModulePhysicalCharacteristics.html" title="class in swervelib.parser">SwerveModulePhysicalCharacteristics</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#createPhysicalProperties(double)" class="member-name-link">createPhysicalProperties</a><wbr>(double&nbsp;optimalVoltage)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Create the physical characteristics based off the parsed data.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;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>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ============ FIELD DETAIL =========== -->
<li>
<section class="field-details" id="field-detail">
<h2>Field Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="wheelDiameter">
<h3>wheelDiameter</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">wheelDiameter</span></div>
<div class="block">Wheel diameter in inches.</div>
</section>
</li>
<li>
<section class="detail" id="gearRatio">
<h3>gearRatio</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="MotorConfigDouble.html" title="class in swervelib.parser.json">MotorConfigDouble</a></span>&nbsp;<span class="element-name">gearRatio</span></div>
<div class="block">Gear ratio for the motors, number of times the motor has to spin before the wheel rotates a single time.</div>
</section>
</li>
<li>
<section class="detail" id="encoderPulsePerRotation">
<h3>encoderPulsePerRotation</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="MotorConfigInt.html" title="class in swervelib.parser.json">MotorConfigInt</a></span>&nbsp;<span class="element-name">encoderPulsePerRotation</span></div>
<div class="block">Encoder pulse per rotation for non-integrated encoders. 1 for integrated encoders.</div>
</section>
</li>
<li>
<section class="detail" id="currentLimit">
<h3>currentLimit</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="MotorConfigInt.html" title="class in swervelib.parser.json">MotorConfigInt</a></span>&nbsp;<span class="element-name">currentLimit</span></div>
<div class="block">The current limit in AMPs to apply to the motors.</div>
</section>
</li>
<li>
<section class="detail" id="rampRate">
<h3>rampRate</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="MotorConfigDouble.html" title="class in swervelib.parser.json">MotorConfigDouble</a></span>&nbsp;<span class="element-name">rampRate</span></div>
<div class="block">The minimum number of seconds to take for the motor to go from 0 to full throttle.</div>
</section>
</li>
<li>
<section class="detail" id="wheelGripCoefficientOfFriction">
<h3>wheelGripCoefficientOfFriction</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">wheelGripCoefficientOfFriction</span></div>
<div class="block">The grip tape coefficient of friction on carpet. Used to calculate the practical maximum acceleration.</div>
</section>
</li>
<li>
<section class="detail" id="angleMotorFreeSpeedRPM">
<h3>angleMotorFreeSpeedRPM</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">angleMotorFreeSpeedRPM</span></div>
<div class="block">Angle motor free speed rotations per minute.</div>
</section>
</li>
<li>
<section class="detail" id="angleMotorsKV">
<h3>angleMotorsKV</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">angleMotorsKV</span></div>
<div class="block">Angle motor kV used for second order kinematics to tune the feedforward, this variable should be adjusted so that
your drive train does not drift towards the direction you are rotating while you translate. When set to 0 the
calculated kV will be used.</div>
</section>
</li>
</ul>
</section>
</li>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;()">
<h3>PhysicalPropertiesJson</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">PhysicalPropertiesJson</span>()</div>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="createPhysicalProperties(double)">
<h3>createPhysicalProperties</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="../SwerveModulePhysicalCharacteristics.html" title="class in swervelib.parser">SwerveModulePhysicalCharacteristics</a></span>&nbsp;<span class="element-name">createPhysicalProperties</span><wbr><span class="parameters">(double&nbsp;optimalVoltage)</span></div>
<div class="block">Create the physical characteristics based off the parsed data.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>optimalVoltage</code> - Optimal voltage to compensate for and use to calculate drive motor feedforward.</dd>
<dt>Returns:</dt>
<dd><a href="../SwerveModulePhysicalCharacteristics.html" title="class in swervelib.parser"><code>SwerveModulePhysicalCharacteristics</code></a> based on parsed data.</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
</div>
</div>
</body>
</html>