0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

四足机器人接触检测和模型

麦辣鸡腿堡 来源:古月居 作者:我是。 2023-11-16 17:51 次阅读

接触检测

步态规划器给出的接触序列是严格按照时间进行周期性计算的。而在实际运行当中,由于地形的不平整,又或者存在坡度等情况,腿部会发生提前或者延迟接触等情况,因此只靠步态规划器给出的接触序列来控制机器人往往是不可靠的。

因此这里提出一个基于卡尔曼滤波的概率接触检测。其综合考虑了步态规划其给出的恒定接触序列,足端高度,地形的不平整性,以及通过关节编码器数据所计算出来的关节力矩,来提高接触检测的精度,同时减少了腿部由于电机力矩控制所引起的关节回弹现象

预测模型

卡尔曼滤波器的标准预测方程如下:

图片

该模型有以下函数曲线:

图片

参数(μ,σ)取不同值时,图像如下所示,可以看出,σ取不同值时,曲线的曲率会有所变化,当曲率比较大时,其预测结果更精确,但是许用误差范围较小,容易造成系统的不稳定;

而当曲率变小时,预测模型的稳定性更强,其许用误差范围较大,但预测结果相对来说没那么精确,实际参数的选取可根据实机结果进行调整:

图片

测试代码如下:

def prediction_model(phi, state, params):
    """
    Given the gait schedule and the current phase of a leg,
    the gait scheduler provides an expected contact state of
    each leg


    :param phi: phase
    :param state: contact state
    :param params: [mu, mu_bar, sigma, sigma_bar]
                    mu = [mu1, mu2] and so on
    :return: the probability of contact
    """
    mu0, mu1 = params[0]
    mu0_bar, mu1_bar = params[1]


    sigma0, sigma1 = params[2]
    sigma0_bar, sigma1_bar = params[3]


    a = math.erf((phi-mu0)/(sigma0*np.sqrt(2)))
        + math.erf((mu1-phi)/(sigma1*np.sqrt(2)))


    b = 2+math.erf((mu0_bar-phi)/(sigma0_bar*np.sqrt(2)))
        + math.erf((phi-mu1_bar)/(sigma1_bar*np.sqrt(2)))


    if state == 1:
        prob = 0.5 * (state * a)
    else:
        prob = 0.5 * (state * b)


    return prob

因此,对于k个接触点,该预测模型可以作为系统的瞬时输入为:

图片

协方差矩阵如下,该矩阵表示我们对预测精度的信赖程度

图片

由于我们只关注瞬时接触检测(通过融合当前可用的测量),所以状态矩阵和输入矩阵被定义为如下:

图片

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器人
    +关注

    关注

    206

    文章

    27033

    浏览量

    201407
  • 检测
    +关注

    关注

    5

    文章

    4083

    浏览量

    90745
  • 模型
    +关注

    关注

    1

    文章

    2704

    浏览量

    47686
  • 四足机器人
    +关注

    关注

    1

    文章

    87

    浏览量

    15131
收藏 人收藏

    评论

    相关推荐

    步行机器人的弯道行走

    本帖最后由 eehome 于 2013-1-5 10:08 编辑 步行机器人的弯道行走
    发表于 08-12 09:53

    机器人

    谁会做六机器人,求资料??大神们
    发表于 06-06 00:01

    机器人

    第三章、双机器人的硬件结构与框图一、双机器人的硬件框图图1. 双机器人结构框图
    发表于 11-25 11:30

    stm32红外六机器人

    )仿生六机器人开发流程以及细节仿生六机器人三维模型简图论文、D-H数学模型 、程序、硬件原理
    发表于 03-27 18:51

    机器人

    求大神上传一个六机器人的骨架图纸
    发表于 07-28 10:32

    【OK210申请】轮式机器人

    申请理由:我正在做这样一个机器人,遇到了很多问题,非常想学习一下这款板子!我相信利用它能帮我解决难题!项目描述:可利用机械结构仿生行进,也可利用车轮进行行进,集
    发表于 06-25 19:38

    【Embedded Pi申请】六机器人的创新研发

    申请理由:关于六机器人,基本上是用18个舵机一起使用来驱动六完成相应的动作组,而一般的89C52以及STC12系列的单片机只能让六机器人
    发表于 11-25 15:35

    什么是龙机器人

    机器人是一种仿生机器人,由Openduino控制板控制,有条腿,每条腿两个自由度,由两
    发表于 03-24 16:17

    仿生机器人

    本帖最后由 红尘。破 于 2016-8-19 14:59 编辑 今天整理资料时发现了一年前做的仿生机器人,当时买了一个仿生
    发表于 08-19 14:59

    机器人

    `这是创客集结号的作品机器人身体和都是通过3D打印技术打印出来的,通过自己安装连接上超声波传感器,制作成功的
    发表于 09-29 09:55

    求六机器人的图纸

    `业余,想想做一做六机器人。但是苦于无大致图纸,卡在建模的问题上。求六机器人的图纸,有清晰的尺寸就行(主要是腿)。`
    发表于 03-26 18:43

    机器人的机构设计

    机器人结构本体能够有效承受运动冲击、模拟动物运动的先决条件;高性能驱动器为机器人运动提供足够动力,行走稳定性控制负责协调多个关节驱动器,实现机器
    发表于 09-15 06:54

    如何完整的组装机器人

    如何完整的组装机器人
    发表于 09-24 07:00

    ANYmal机器人的相关资料推荐

    去年 1 月份,瑞士公司 ANYbotics 放出来一款灵活的机器人——ANYmal,它可以对抗各种恶劣的现实环境,适用于在危险的工业场景中执行任务。在最近的世界机器人大会上,AN
    发表于 12-31 06:28

    DIY设计蜘蛛机器人

    描述“迈尔斯”开源蜘蛛机器人它使用 8 个 SG90 / MG90 伺服电机 作为腿部的执行器,由一个定制的 PCB 组成,用于为伺服系统供电和控制,而 Arduino Nano.PCB 具有
    发表于 08-09 06:30