teleop:手动阶段程序
概要
路径:
Teamcode/java/org.firsinspires.ftc.teamcode/opmode/teleop
我们在询问过操作员后,发现按键按下、放开、一直按着和切换比较常用,所以封装了keyPress、keyDown、keyUp和keyToggle,简化了手柄按键的检测,并且实现了链式调用,让代码更加简洁、易懂。
具体介绍
参数列表
key:检测的按键,与
FTC SDK中手柄按键名称一致,String类型fn:要运行的函数,建议使用Lambda表达式,
Runnnable类型
手柄定义
robot.gamepad1
.update()
.keyPress("a",Runnable)//按下a
.keyUp("b",Runnable)//松开b键
.keyDown("x",Runnable)//按住x键
.keyToggle("y",Runnable1, Runnable2)//按下y键切换
;对手柄上的按键进行定义。详情可见 gamepadEX
场地中心坐标系
我们通过robot.drivetrain.driveRobotFieldCentric()函数让机器以场地中心坐标来确定自己的方向,但是在实际操作的过程中,操作手可能由于各种原因不了解机器的方向,因此需要使用重新定义一个按键,来重置场地坐标。
如果不习惯场地中心坐标,可以使用robot.drivetrain.driveRobot()函数,让机器以自身为中心坐标。
选取哪种方法取决于操作手的习惯。
手柄摇杆曲线
如果操作手觉得手柄的手感比较滑或者涩,那么可以直接删除/更改该函数。
这对程序没有任何影响。
Last updated