Skip to content

Commit f80eb8f

Browse files
committed
save for shaunak
1 parent ead4772 commit f80eb8f

2 files changed

Lines changed: 80 additions & 0 deletions

File tree

Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
package com.team4099.robot2026.subsystems.hopper
2+
3+
import org.littletonrobotics.junction.LogTable
4+
import org.littletonrobotics.junction.inputs.LoggableInputs
5+
import org.team4099.lib.units.base.Current
6+
import org.team4099.lib.units.base.amps
7+
import org.team4099.lib.units.base.celsius
8+
import org.team4099.lib.units.base.inAmperes
9+
import org.team4099.lib.units.base.inCelsius
10+
import org.team4099.lib.units.derived.degrees
11+
import org.team4099.lib.units.derived.inVolts
12+
import org.team4099.lib.units.derived.volts
13+
import org.team4099.lib.units.inDegreesPerSecond
14+
import org.team4099.lib.units.inDegreesPerSecondPerSecond
15+
import org.team4099.lib.units.perSecond
16+
17+
interface HopperIO{
18+
class HopperIOInputs : LoggableInputs {
19+
//Hopper Inputs
20+
var hopperVelocity = 0.0.degrees.perSecond
21+
var hopperAcceleration = 0.0.degrees.perSecond.perSecond
22+
var hopperAppliedVoltage = 0.0.volts
23+
var hopperStatorCurrent = 0.0.amps
24+
var hopperSupplyCurrent = 0.0.amps
25+
var hopperTemp = 0.0.celsius
26+
var isSimulating = falase
27+
override fun toLog(table: LogTable) {
28+
table.put("hopperVelocityPerSecond", hopperVelocity.inDegreesPerSecond)
29+
}
30+
override fun getLog(table: LogTable){
31+
table.get("hopperVelocityPerSecond", hopperVelocity.inDegreesPerSecond){
32+
hopperVelocity = it.hopperVelocity.inDegreesPerSecond
33+
}
34+
}
35+
override fun toLog(table: LogTable){
36+
table.put("hopperAcceleration", hopperAcceleration.inDegrees)
37+
table.put("hopperAccelerationPerSecond", hopperAcceleration.inDegreesPerSecond.inDegreesPerSecond)
38+
}
39+
40+
override fun getLog(table: LogTable){
41+
table.get("hopperAcceleration", hopperAcceleration.inDegreesPerSecond.inDegreesPerSecond).let{
42+
hopperAcceleration = it.inDegreesPerSecond.inDegreesPerSecond
43+
}
44+
}
45+
override fun toLog(table: LogTable){
46+
table.put("hopperAppliedVoltage", hopperAppliedVoltage.inVolts)
47+
}
48+
override fun getLog(table: LogTable){
49+
table.get("hopperAppliedVoltage", hopperAppliedVoltage.inVolts){
50+
hopperAppliedVoltage = it.inVolts
51+
}
52+
}
53+
override fun toLog(table: LogTable){
54+
table.put("hopperStatorCurrent",){
55+
56+
}
57+
}
58+
fun updateInputs(inputs: hopperInputs) {
59+
60+
}
61+
fun setVoltage(voltage: hopperSetVoltage) {
62+
63+
}
64+
65+
fun setPosition(position: hopperSetPosition) {
66+
67+
}
68+
fun setBrakeMode(brake: Boolean) {
69+
70+
}
71+
fun configFF(
72+
kG: ElectricalPotential,
73+
kS: StaticFeedforward<Volt>,
74+
kV: VelocityFeedforward<MeasurementUnit, Volt>,
75+
kA: AccelerationFeedforward<MeasurementUnit, Volt>
76+
) {
77+
78+
}
79+
}
80+
}

src/main/kotlin/com/team4099/robot2025/subsystems/hopper/HopperIOTalon

Whitespace-only changes.

0 commit comments

Comments
 (0)