转弯半径不准确,机器人不准确

时间:2015-04-25 15:13:19

标签: robotc

#pragma config(StandardModel, "RVW SQUAREBOT")

task main(){
int begindistance = SensorValue[sonarSensor];
while (SensorValue[gyro] < 900){

motor[leftMotor] = 20;
motor[rightMotor] = -20;
}
motor[leftMotor] = 0;
motor[rightMotor] = 0;

SensorValue[leftEncoder] = 0;
SensorValue[rightEncoder] = 0;

while (SensorValue[sonarSensor] > 25){
motor[leftMotor] = 50;
motor[rightMotor] =50;
}

SensorValue[gyro] = 0;

int z = 180 - atan(begindistance/SensorValue[leftEncoder]);
while (SensorValue[gyro] > -z){
motor[leftMotor]  = -31;
motor[rightMotor]  = 31;
}
motor[leftMotor] = 0;
motor[rightMotor] = 0;
}

顺便说一下,开始距离是178,我不知道为什么机器人过度转动,只是一点点,但我不知道为什么。我也使用了squarebot。 我正在使用robocci程序。我用钉子作为开始距离。

1 个答案:

答案 0 :(得分:0)

陀螺仪传感器并不总是从0开始。您需要将初始值存储到变量中,并找到读取值和初始值之间的差值。

陀螺传感器也是只读的,所以这句话

SensorValue[gyro] = 0;

无效。