1+ package pioneer.opmodes.other
2+
3+ import com.qualcomm.robotcore.eventloop.opmode.TeleOp
4+ import org.firstinspires.ftc.robotcore.external.navigation.CurrentUnit
5+ import pioneer.Bot
6+ import pioneer.BotType
7+ import pioneer.Constants
8+ import pioneer.hardware.Flywheel
9+ import pioneer.hardware.Launcher
10+ import pioneer.helpers.Toggle
11+ import pioneer.helpers.next
12+ import pioneer.opmodes.BaseOpMode
13+ import pioneer.opmodes.teleop.drivers.TeleopDriver1
14+ import pioneer.opmodes.teleop.drivers.TeleopDriver2
15+ import pioneer.opmodes.teleop.drivers.TeleopDriver2Testing
16+
17+ @TeleOp(name = " Shooter Testing" , group = " Testing" )
18+ class ShootingTesting : BaseOpMode () {
19+ private lateinit var driver1: TeleopDriver1
20+ private lateinit var driver2: TeleopDriver2Testing
21+ private val allianceToggle = Toggle (false )
22+ private var changedAllianceColor = false
23+
24+ override fun onInit () {
25+ bot = Bot .fromType(BotType .COMP_BOT , hardwareMap)
26+
27+ driver1 = TeleopDriver1 (gamepad1, bot)
28+ driver2 = TeleopDriver2Testing (gamepad2, bot)
29+ }
30+
31+ override fun init_loop () {
32+ allianceToggle.toggle(gamepad1.touchpad)
33+ if (allianceToggle.justChanged) {
34+ changedAllianceColor = true
35+ bot.allianceColor = bot.allianceColor.next()
36+ }
37+ telemetry.addData(" Alliance Color" , bot.allianceColor)
38+ telemetry.update()
39+ }
40+
41+ override fun start () {
42+ if (! changedAllianceColor) bot.allianceColor = Constants .TransferData .allianceColor
43+ // bot.spindexer?.resetMotorPosition(Constants.TransferData.spindexerPositionTicks)
44+ // bot.turret?.resetMotorPosition(Constants.TransferData.turretPositionTicks)
45+ }
46+
47+ override fun onLoop () {
48+ // Update gamepad inputs
49+ driver1.update()
50+ driver2.update()
51+
52+ // Add telemetry data
53+ addTelemetryData()
54+ }
55+
56+ private fun addTelemetryData () {
57+ // telemetry.addData("Transfer Data", Constants.TransferData.turretPositionTicks)
58+ // telemetry.addData("Turret Offset Ticks", bot.turret?.offsetTicks)
59+ // telemetry.addData("Turret Angle", bot.turret?.currentAngle)
60+ telemetry.addData(" Artifacts" , bot.spindexer?.artifacts.contentDeepToString())
61+ telemetry.addData(" Pose" , bot.pinpoint!! .pose)
62+ telemetry.addData(" Turret Mode" , bot.turret?.mode)
63+ telemetry.addData(" Shoot State" , driver2.shootState)
64+ telemetry.addData(" Estimating Flywheel Speed" , driver2.isEstimateSpeed.state)
65+ telemetry.addData(" Flywheel Target Speed" , driver2.flywheelSpeed)
66+ telemetry.addData(" Flywheel Speed" , driver2.flywheelVelocityEnum)
67+ telemetry.addData(" Flywheel TPS" , bot.flywheel?.velocity)
68+ telemetry.addData(" Turret Angle" , driver2.turretAngle)
69+ telemetry.addData(" Drive Power" , driver1.drivePower)
70+ telemetry.addData(" Field Centric" , driver1.fieldCentric)
71+ telemetry.addData(" Velocity" , " vx: %.2f, vy: %.2f" .format(bot.pinpoint?.pose?.vx, bot.pinpoint?.pose?.vy))
72+ telemetry.addData(" Voltage" , bot.batteryMonitor?.voltage)
73+ telemetry.addData(" Flywheel Motor Current" , bot.flywheel?.motor?.getCurrent(CurrentUnit .MILLIAMPS ))
74+ telemetryPacket.addLine(" Flywheel TPS" + (bot.flywheel?.velocity ? : 0.0 ))
75+ }
76+
77+ }
0 commit comments