首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >差速底盘的运动学及动力学模型

差速底盘的运动学及动力学模型

作者头像
索旭东
发布2026-01-20 14:56:29
发布2026-01-20 14:56:29
1500
举报
文章被收录于专栏:具身小站具身小站

一、差速底盘基础概念

1.1 什么是差速底盘?

差速底盘有两个独立驱动的轮子(左右各一),通过调节两个轮子的速度差来实现:

  • 直线运动:两轮速度相同
  • 转向运动:两轮速度不同
  • 原地旋转:两轮速度大小相等、方向相反

常见于扫地机器人、AGV小车、教育机器人等。

二、运动学模型

2.1 从轮速到底盘运动

代码语言:javascript
复制
# 关键参数
wheel_radius = 0.05      # 轮子半径(米)
wheel_distance = 0.30    # 两轮间距(米)

# 已知:左轮速度v_left,右轮速度v_right(单位:米/秒)
# 计算底盘运动:
def wheel_to_chassis(v_left, v_right):
    # 底盘线速度(前进速度)
    v = (v_right + v_left) / 2

    # 底盘角速度(旋转速度)
    omega = (v_right - v_left) / wheel_distance

    return v, omega

2.2 从底盘运动到轮速

代码语言:javascript
复制
# 已知:期望的线速度v_desired,角速度omega_desired
# 计算需要的轮速:
def chassis_to_wheel(v_desired, omega_desired):
    # 计算轮速
    v_right = v_desired + (omega_desired * wheel_distance) / 2
    v_left = v_desired - (omega_desired * wheel_distance) / 2

    return v_left, v_right

三、动力学模型

3.1 电机特性

电机输入(PWM占空比) → 电机转速 → 轮子转速 → 底盘运动

3.2 动力学关系(简化的比例模型)

代码语言:javascript
复制
# 电机参数
max_rpm = 200           # 电机最大转速(转/分钟)
gear_ratio = 30         # 减速比
max_pwm = 255           # PWM最大值

# 转速到PWM的映射
def rpm_to_pwm(rpm_target):
    # 计算电机轴转速(考虑减速比)
    motor_rpm_target = rpm_target * gear_ratio

    # 线性映射到PWM(实际中可能需要更复杂的模型)
    pwm_value = (motor_rpm_target / max_rpm) * max_pwm

    # 限制范围
    return max(-max_pwm, min(max_pwm, pwm_value))
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2026-01-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 具身小站 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、差速底盘基础概念
    • 1.1 什么是差速底盘?
  • 二、运动学模型
    • 2.1 从轮速到底盘运动
    • 2.2 从底盘运动到轮速
  • 三、动力学模型
    • 3.1 电机特性
    • 3.2 动力学关系(简化的比例模型)
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档