1

我正在使用无人机,我可以从其传感器读取偏航导航角度。但是,当我开始我的过程时,我想将此角度设置为“0”角度。这个角度的范围在-180度到180度之间。

initial_yaw = read_yaw_angle()
current_yaw = read_yaw_angle() - initial_yaw

但是如果 initial_yaw 是 180 度,并且测量的角度是 -50 度。现在我知道 current_yaw 是 -230,超出了 -180 到 180 度的范围。我该如何解决这个问题?(它是我需要使用的模运算符吗?)

4

1 回答 1

1
current_yaw = read_yaw_angle() - initial_yaw;
if (current_yaw < -180) {
  current_yaw += 360;
} else if (currrent_yaw > 180) {
  current_yaw -= 360;
}
于 2015-06-26T07:01:03.690 回答