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

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

3天内不再提示

使用XR806联调控制四足马术机器人

全志在线 来源:极术社区 2023-10-28 09:18 次阅读

XR806联调控制

四足马术机器人

本文为XR806开发板测评文章

作者:木头

1项目介绍

四足马术机器人

本项目使用XR806串口协议与大疆A板的stm32通讯,实现并联四足机器人的单腿运动学逆解与整体步态规划,本文将讲解项目所涉及的算法以及代码实现步骤。

f74ff604-74bd-11ee-939d-92fbcf53809c.png

四足马术机器人实物

f75e32fa-74bd-11ee-939d-92fbcf53809c.gif

2单腿运动学逆解

相关算法

控制2个无刷电机(红色箭头各代表一个电机控制)并联成单足,经过角度闭环解算出足端轨迹,由足端做摆线轨迹(下图中绿色部分)形成类似于动物猫狗等单腿的运动

%摆线方程(matlab)
sigma=2*pi*t/(Ts);
xep=(xf-xs)*((sigma-sin(sigma))/(2*pi))+xs;
zep=h*(1-cos(sigma))/2+zs;
x=[x,xep];
z=[z,zep];
f7acdfae-74bd-11ee-939d-92fbcf53809c.png

f7b73260-74bd-11ee-939d-92fbcf53809c.gif

3整体步态规划

相关算法

Walk步态是一种静态步态,即在运动过程中始终有三条腿处于支撑相,至多只有一条腿处于摆动相,四足动物在walk步态中四条腿最常见的轮换顺序为1→3→4→2→1。

f80b52dc-74bd-11ee-939d-92fbcf53809c.pngf8123dc2-74bd-11ee-939d-92fbcf53809c.gif

4无刷电机角度速度

pid闭环

以P比例、I积分、D微分通过增量式PID使无刷电机能稳定的控制速度,角度使用pd控制函数如下

int Balance(float Angle,float Gyro,int Middle,float Balance_Kp,float Balance_Kd)
{ 
  float Angle_bias,Gyro_bias;
 int balance;
 Angle_bias=Middle-Angle;            
 Gyro_bias=0-Gyro;               
 balance=Balance_Kp*Angle_bias+Gyro_bias*Balance_Kd; 
 return balance;
}

5关键功能实现

代码展示

XR806初始化串口配置:

 if(HAL_UART_Init(UARTID, &param) != HAL_OK)
 return -1;
 /*使能DMA*/
 if (HAL_UART_EnableTxDMA(UARTID) != HAL_OK)
 return -2;
 if (HAL_UART_EnableRxDMA(UARTID) != HAL_OK)
 return -3;

在main函数中while循环用下列函数发送对应数据:

HAL_UART_Transmit_DMA(UARTID, (uint8_t *)buffer,sizeof(buffer));

串口3接收回调,执行难对应的前进后退:

 switch(RxBuffer_control)
 {
 case 'W': Motor_Control( 1, 1, 1, 1); break;
 case 'S': Motor_Control(-1, -1, -1, -1); break;
 case 'A': Motor_Control(-1, -1, 1, 1); break;
 case 'D': Motor_Control( 1, 1, -1, -1); break;
 case 'P': Motor_Control( 0, 0, 0, 0); break;
 }

审核编辑:汤梓红

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

    关注

    206

    文章

    27043

    浏览量

    201423
  • 串口
    +关注

    关注

    14

    文章

    1483

    浏览量

    74523
  • 开发板
    +关注

    关注

    25

    文章

    4434

    浏览量

    94032
  • 大疆
    +关注

    关注

    30

    文章

    888

    浏览量

    80828
  • xr806
    +关注

    关注

    0

    文章

    14

    浏览量

    1251

原文标题:让XR806控制四足机器人,单腿运动、步态规划都能行

文章出处:【微信号:gh_79acfa3aa3e3,微信公众号:全志在线】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    什么是龙机器人

    机器人是一种仿生机器人,由Openduino控制
    发表于 03-24 16:17

    仿生机器人

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

    机器人

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

    机器人的机构设计

    机器人属于复杂机电系统,需要综合生物、机械、电子、控制等学科内容,具体涉及仿生机构设计、灵巧运动机构设计、高性能驱动器制造,行走稳定性控制
    发表于 09-15 06:54

    如何完整的组装机器人

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

    XR806芯片、XR806开源鸿蒙开发板简介

    XR806芯片介绍XR806是全志科技旗下子公司广州芯之研发设计的一款支持WiFi和BLE的高集成度无线MCU芯片,支持鸿蒙L0系统。具有集成度高、硬件设计简单、BOM成本低、安全可靠等优点
    发表于 11-15 17:08

    XR806芯片、XR806开源鸿蒙开发板简介

    XR806芯片介绍XR806是全志科技旗下子公司广州芯之研发设计的一款支持WiFi和BLE的高集成度无线MCU芯片,支持鸿蒙L0系统。具有集成度高、硬件设计简单、BOM成本低、安全可靠等优点
    发表于 11-15 18:32

    XR806芯片的mac地址要如何存放以及如何获取

    XR806芯片系统异常重启如何解决?XR806芯片如何更换打印log口?XR806芯片的mac地址要如何存放以及如何获取?求解答
    发表于 12-28 06:42

    如何保证休眠时XR806芯片GPIO的电平状态呢

    如何保证休眠时XR806芯片GPIO的电平状态呢?XR808/XR809/XR871/XR872和XR8
    发表于 12-29 06:16

    【直播预告】全志XR806芯片应用实战分享

    /joinXR806优秀开发例程《基于OpenHarmony的棋子分拣机》《用全志XR806开源鸿蒙开发板做一个行走机器狗》《【
    发表于 02-28 17:39

    【直播预告】全志XR806芯片应用实战分享会!

    /joinXR806优秀开发例程《基于OpenHarmony的棋子分拣机》《用全志XR806开源鸿蒙开发板做一个行走机器狗》《【
    发表于 03-01 09:27

    全志XR806底板位号图

    全志XR806底板位号图
    发表于 10-19 15:11 0次下载

    全志XR806核心板位号图

    全志XR806核心板位号图
    发表于 10-19 15:11 1次下载

    全志XR806鸿蒙无线模组原理图

    全志XR806鸿蒙无线模组原理图
    发表于 10-19 15:11 7次下载

    全志XR806开发板原理图

    全志XR806开发板原理图
    发表于 10-19 15:11 9次下载