找回密码
 立即注册
搜索
查看: 2835|回复: 3

旋转360度老是转不准

[复制链接]

1

主题

3

帖子

10

积分

新手上路

Rank: 1

积分
10
发表于 2023-8-24 11:21:37 | 显示全部楼层 |阅读模式
请教一下,两轮差速小车,想通过编码器的值计算来确定是否旋转了360,但是好像算出来的距离,不太准确,有时差了不少,不知问题在哪

//Diff_wheelspacing*Pi 转一圈的的周长


static float sum=0;
void rotate360()
{
    float dis=0;



    float ave=(OriginalEncoder.B+OriginalEncoder.A)/2;

    sum=sum+ave;   
    dis=abs(sum)*Perimeter;            
    if(dis>=Diff_wheelspacing*Pi*1560.0f)
    {
      printf("done\r\n");
      Move_Z=0;
    }
    ....
}





回复

使用道具 举报

1

主题

3

帖子

10

积分

新手上路

Rank: 1

积分
10
 楼主| 发表于 2023-8-24 11:56:36 | 显示全部楼层
是不是光靠编码器不能准确的转360度?
回复

使用道具 举报

0

主题

22

帖子

72

积分

注册会员

Rank: 2

积分
72
发表于 2023-8-25 09:09:13 | 显示全部楼层
绕一圈轮子所走过的距离是受旋转速度影响的,不是固定的一个数值,Arc_R=V_R*t,V_R可由运动学公式计算得出
回复

使用道具 举报

1

主题

3

帖子

10

积分

新手上路

Rank: 1

积分
10
 楼主| 发表于 2023-8-25 16:14:16 | 显示全部楼层
WHEELTEC_ZHS 发表于 2023-8-25 09:09
绕一圈轮子所走过的距离是受旋转速度影响的,不是固定的一个数值,Arc_R=V_R*t,V_R可由运动学公式计算得出

如果不是一个固定的值,怎么知道是不是转了360度
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

粤ICP备20017043号|小黑屋|手机版|Archiver|轮趣科技(东莞)有限公司  

GMT+8, 2024-4-28 06:53 , Processed in 0.106654 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表