我是FRC Team 4468的程序员,今年我们正在使用mecanum车轮。我们试图用两个操纵杆来控制机器人,一个用于向一个方向移动(mecStick),另一个用于旋转(rotStick),使用这行代码。
myDrive.mecanumDrive_Cartesian(mecStick.getX(), mecStick.getX(), rotStick.getY(), 0);
机器人将沿Y方向移动(向前,向后),并将旋转但不会在X轴上移动。有人可以告诉我,我做错了。
谢谢: - )
public class RobotTemplate extends SimpleRobot {
RobotDrive myDrive = new RobotDrive(1,2,3,4);
Joystick mecStick = new Joystick(1);
Joystick rotStick = new Joystick(2);
public void robotInit() {
}
public void autonomous() {
}
public void operatorControl() {
//myDrive.setSafetyEnabled(true);
myDrive.mecanumDrive_Cartesian(mecStick.getX(), mecStick.getX(), rotStick.getY(), 0);
Timer.delay(0.01);
}
}
答案 0 :(得分:3)
看起来你传递mecStick.getX()
两次,一个应该是mecStick.getY()
。我不熟悉RobotDrive类,所以我不确定哪个应该切换。 WPILib Javadoc是您的朋友,您可以在http://team2168.org/javadoc/找到由团队2168托管的副本。在左下方列表中查找RobotDrive,然后在那里查看。
1902年好运,爆炸培根!