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

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

3天内不再提示

4自由度并联机器狗实现行走功能

jf_72402704 来源: jf_72402704 作者: jf_72402704 2023-06-18 10:49 次阅读

1. 功能说明

本文示例将实现R328a样机4自由度并联机器狗行走的功能。

wKgZomSOcK-ATgT1AD-cnC-M3vo610.gif

2. 电子硬件

在这个示例中,我们采用了以下硬件,请大家参考:

主控板 Basra主控板(兼容Arduino Uno)‍
扩展板 Bigfish2.1扩展板‍
电池 7.4V锂电池

电路连接:机器狗左侧的上下舵机连接在Bigfish扩展板的D3、D8端口;机器狗右侧的上下舵机连接在Bigfish扩展板的D4、D7端口。

wKgaomSOcK-AZt0bAABgUAE1T1s945.jpg

3. 功能实现

上位机Controller 1.0

下位机编程环境:Arduino 1.8.19

实现思路:实现机器狗可以灵活的自由行走。

3.1 调试舵机角度

对于如何利用Controller软件进行调试机器狗的舵机角度,可参考【U002】如何驱动interwetten与威廉的赔率体系 舵机-Controller 1.0b软件的使用【https://www.robotway.com/h-col-129.html】

在本次实验中,经过调试,对于4自由度并联机器狗行走时的舵机角度值如下图所示:

wKgZomSOcK-AZ2w3AAAM_MwT1iQ209.png机器狗行走时的舵机值

3.2 示例程序

下面提供一个4自由度并联机器狗行走的参考例程(Dog_walk_finall.ino),程序源代码等资料详见 https://www.robotway.com/h-col-237.html ,实验效果可参考演示视频

/*------------------------------------------------------------------------------------

  版权说明:Copyright 2023 Robottime(Beijing) Technology Co., Ltd. All Rights Reserved.

           Distributed under MIT license.See file LICENSE for detail or copy at

           https://opensource.org/licenses/MIT

           by 机器谱 2023-05-26 https://www.robotway.com/

  ------------------------------*/

/*

本例程实现机器小狗行走

调试小狗行走的注意事项:

  3、8对应着小狗左侧的上下舵机;

  4、7对应着小狗右侧的上下舵机;

  连接好舵机后,将调试好的小狗初始直立状态写入float value_init[4] =   {   };中即可;

*/



#include<  Servo.h  >

#define SERVO_SPEED 20                             //定义舵机转动快慢的时间

#define ACTION_DELAY 0                             //定义所有舵机每个状态时间间隔


Servo myServo[4];

int f = 15;//定义舵机每个状态间转动的次数,以此来确定每个舵机每次转动的角度

int servo_port[4] = {3,4,7,8};//定义舵机引脚

int servo_num = sizeof(servo_port) / sizeof(servo_port[0]);//定义舵机数量

float value_init[4] = {1478,1500,1545,1478};//定义舵机初始角度

int leg_range = 180;                        //小狗左右两条腿摆动的幅度

float reset_init[4]={0,0,0,0};


void setup() {

  Serial.begin(9600);

  for(int i=0;i<  servo_num;i++)

  ServoGo(i,value_init[i]);

  for(int i=0;i<  servo_num;i++){

    reset_init[i] = value_init[i];

  }

  delay(2000);

}


void loop() {

  Dog_walk();

}


void Dog_walk()

{

  servo_move(value_init[0],value_init[1],reset_init[2]+leg_range,reset_init[3]);

  servo_move(value_init[0],value_init[1],reset_init[2],reset_init[3]-leg_range);

}



void ServoStart(int which)

{

  if(!myServo[which].attached())myServo[which].attach(servo_port[which]);

  pinMode(servo_port[which], OUTPUT);

}


void ServoStop(int which)

{

  myServo[which].detach();

  digitalWrite(servo_port[which],LOW);

}


void ServoGo(int which , int where)

{

  if(where!=200)

  {

    if(where==201) ServoStop(which);

    else

    {

      ServoStart(which);

      myServo[which].write(where);

    }

  }

}


void servo_move(float value0, float value1, float value2, float value3) //舵机转动

{

 

  float value_arguments[] = {value0, value1, value2, value3};

  float value_delta[servo_num];

 

  for(int i=0;i<  servo_num;i++)

  {

    value_delta[i] = (value_arguments[i] - value_init[i]) / f;

  }

 

  for(int i=0;i<  f;i++)

  {

    for(int k=0;k<  servo_num;k++)

    {

      value_init[k] = value_delta[k] == 0 ? value_arguments[k] : value_init[k] + value_delta[k];

    }

    for(int j=0;j<  servo_num;j++)

    {

      ServoGo(j,value_init[j]);

    }

    delay(SERVO_SPEED);

  }

  delay(ACTION_DELAY);

}

审核编辑 黄宇

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

    关注

    3

    文章

    171

    浏览量

    10118
收藏 人收藏

    评论

    相关推荐

    4自由度并联机器实现下蹲功能

    1. 功能说明        本文示例将实现R328a样机4自由度并联机器下蹲的
    的头像 发表于 06-09 11:10 636次阅读
    <b class='flag-5'>4</b><b class='flag-5'>自由度</b><b class='flag-5'>并联机器</b><b class='flag-5'>狗</b><b class='flag-5'>实现</b>下蹲<b class='flag-5'>功能</b>

    运用BLDC设计新型五自由度并联机器人的方案分享

    总线数据采集卡为硬件基础,利用Vc++6.0 设计机器人控制界面, 实现该机构的连续轨迹运动。1 新型五自由度并联机器人机构原理研究的并联机
    发表于 06-02 08:00

    【案例分享】BLDC在新型五自由度并联机器人中的应用

    并联机构是由多个并行链构成的闭环机械系统。相对于串联机构,]研究的并联机构如图1 所示。A1~A4、B1~B4 为球副, R1~R8 为转动
    发表于 08-10 04:30

    反螺旋理论与五自由度并联机器人设计方法

    本论文以螺旋理论为基础,提出一种系统的结构综合方法。根据各条支链对运动平台所提供的反螺旋约束的线性关系,研究了构成五自由度并联机器人机构的各条支链所有可能的运动副组合以及它们的空间几何条件。利用这一方法,设计出一组结构对称的五自由度
    发表于 10-17 14:51 6次下载
    反螺旋理论与五<b class='flag-5'>自由度</b><b class='flag-5'>并联机器</b>人设计方法

    并联机器人的少自由度并联机构设计

    理想的少自由度并联机构的所有分支最好具有完全相同的结构,保持结构的对称,以满足各向同性的要求。以单开链支路为单元,提出了一种新型的对称的少自由度并联机器人机构。研究结果表明,该机构的
    发表于 10-23 16:24 15次下载
    <b class='flag-5'>并联机器</b>人的少<b class='flag-5'>自由度</b><b class='flag-5'>并联机</b>构设计

    一种三自由度冗余驱动混联机器人的设计

    机器人进行相应的优化设计可以使机器人具有更好的结构性能与工作性能。以一种三自由度冗余驱动混联机器人为研究对象,对该机器人尺寸参数无量纲化并
    发表于 01-05 14:24 1次下载
    一种三<b class='flag-5'>自由度</b>冗余驱动混<b class='flag-5'>联机器</b>人的设计

    自由度冗余驱动并联机器人动态控制

    为了提高冗余并联机器人的控制精度,本文针对二自由度冗余驱动并联机器人,基于并联机器人同步耦合误差控制理论,提出了一种非线性同步控制方法。首先,利用李雅普诺夫稳定性理论,对提出的控制方法
    发表于 04-24 15:47 0次下载
    二<b class='flag-5'>自由度</b>冗余驱动<b class='flag-5'>并联机器</b>人动态控制

    运用BLDC对新型五自由度并联机器人的设计

    积累和放大、位置反解容易等优点, 与串联机构在应用上形成了互补关系。目前, 对并联机器人研究较多的是6 自由度( 6DOF) 并联机器人, 但在某些场合2~5 个
    的头像 发表于 10-07 10:57 6095次阅读
    运用BLDC对新型五<b class='flag-5'>自由度</b><b class='flag-5'>并联机器</b>人的设计

    并联机器人市场又情况如何市场活跃最高的并联机器人企业TOP5

    1992年,我国第一台六自由度并联机器人样机研制成功,2012年,随着ABB专利威廉希尔官方网站 解禁,企业开始批量进入,并联机器人商业化速度加快,6年过去,如今的并联机器人市场又如何?
    的头像 发表于 11-03 11:08 5291次阅读

    如何分析新型二自由度平动并联机器人的结构和运动学

    本文对一种新型的二自由度并联机器人进行分析。机器人可以放置在一个固定方向的平面刚体。首先详细介绍了机器人的运动结构,然后分析了一些运动的问题,如正向和逆向的运动学,速度,和奇异点。对工
    发表于 03-26 16:27 7次下载
    如何分析新型二<b class='flag-5'>自由度</b>平动<b class='flag-5'>并联机器</b>人的结构和运动学

    关于BLDC 的新型五自由度并联机器人运动控制

    在自主研制的新型五自由度并联机器人的基础上, 设计完成了以微机、无刷直流电机、PCI 接口测控卡为基础的控制系
    的头像 发表于 05-05 23:21 3064次阅读
    关于BLDC 的新型五<b class='flag-5'>自由度</b><b class='flag-5'>并联机器</b>人运动控制

    4自由度联机械臂的制作

    1. 运动功能说明     R204样机是一款拥有4自由度的串联机械臂。本文示例实现4
    的头像 发表于 03-03 17:35 905次阅读
    <b class='flag-5'>4</b><b class='flag-5'>自由度</b>串<b class='flag-5'>联机</b>械臂的制作

    3自由度联机械臂实现电磁铁搬运功能

    1、功能描述      R308样机是一款拥有3自由度的串联机械臂。本文提供的示例所实现功能为:在3
    的头像 发表于 03-09 08:31 994次阅读
    3<b class='flag-5'>自由度</b>串<b class='flag-5'>联机</b>械臂<b class='flag-5'>实现</b>电磁铁搬运<b class='flag-5'>功能</b>

    浅谈工业机器自由度

    工业机器自由度一般分为4自由度,或者6个自由度,关节机器人主要是模仿人的手臂进行设计的。
    发表于 03-16 12:20 2893次阅读

    如何制作一个2自由度并联仿生腿?

    本文实例将实现2自由度并联仿生腿模组运动起来,模拟实现狗腿行走的动作。
    的头像 发表于 06-18 10:35 579次阅读
    如何制作一个2<b class='flag-5'>自由度</b><b class='flag-5'>并联</b>仿生腿?