过冲问题解决方法:dst和cur差值的绝对值在1度以内,改为自由转。
1.限位问题
if dst=cur
then 不限位
(1)内圈
a.顺时针旋转
if 0<=cur<=90
then 360<=cur<=450
if 0<=dst<=180
then 360<=dst<=540
if dst<cur
dst=85
if dst>=445
dst=85
b.逆时针旋转
if 180<=cur<270
if 180<dst<=270
if dst>cur
then dst=275
(2)外圈
a.逆时针旋转
if 270<=cur<=360
then -90<=cur<=0
if 180<=dst<=360
then -180<=dst<=0
if dst>cur
dst=275
if dst<=-85
dst=275
b.顺时针旋转
if 90<cur<=180
if 90<=dst<180
if dst<cur
then dst=85
2.dst内外圈问题
if dst=cur
then 内外圈不变
(1)内圈
a.顺时针旋转
内圈
b.逆时针旋转
if 0<=cur<=90
if cur<dst<180
then 外圈
else 内圈
if 180<=cur<=360
if dst<180 or if cur<dst
then 外圈
else 内圈
(2)外圈
a.逆时针旋转
外圈
b.顺时针旋转
if 270<=cur<=360
if 180<=dst<cur
then 内圈
else 外圈
if 0<=cur<180
if dst>=180 or cur>dst
then 内圈
else 外圈