hrefspace

 找回密码
 立即注册
搜索
热搜: PHP PS 程序设计
查看: 416|回复: 0

小型双节履带底盘的制作

[复制链接]

484

主题

491

帖子

1493

积分

大司空

Rank: 5Rank: 5

积分
1493
发表于 2023-9-25 16:38:26 | 显示全部楼层 |阅读模式
1.运动功能说明

       双节履带车可以通过两个驱动轮的 差速运动 来实现前进、后退、原地转向、大半径转向等基本行驶功能,并可通过舵机关节模块进行小臂的抬起和落下。通过底盘运动与小臂运行的结合,实现上台阶、通过坑洼地面等功能。












2.结构说明

       该样机由两组共源驱动的 小型带传动模组 和1个 舵机关节模组 构成。履带模组呈轴对称分布在车架上。舵机关节模块安装在小车车头方向的两个履带模块中间,驱动小臂抬起。









3.运动功能实现

3.1 电子硬件

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






将2个圆周舵机分别装在Bigfish扩展板的舵机引脚上,左侧圆周舵机接D3号引脚,右侧圆周舵机接D4号引脚。将关节模块的舵机接在D7号引脚。并将主控板和电池在车身固定好。






3.2 编写程序

编程环境:Arduino 1.8.19

前摆臂运动的代码

/*------------------------------------------------------------------------------------  版权说明:Copyright 2022 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 机器谱 2022-5-26 https://www.robotway.com/
  ------------------------------------------
  实验功能:
          实现双节履带小车前摆臂下、上、正常运动。
  ------------------------------------------
  实验接线:

          .----------------------.
          |                      |
          |                      |--------------
          |                      |  车头舵机接D7
          |                      |--------------
          |                      |
          *----------------------*

------------------------------------------------------------------------------------*/
#include <Servo.h>      //调用舵机库
#define Servo_Pin 7     //定义舵机引脚号
#define Servo_Up 180    //定义前摆臂向上时角度值
#define Servo_Down 90   //定义前摆臂向下时角度值
#define Servo_Level 135 //定义前摆臂保持水平时角度值
Servo ServoArm;         //声明舵机对象

void down();            //前摆臂向下
void up();              //前摆臂向上
void normal();          //前摆臂与地面保持平行

//程序初始化部分:使能舵机对象
void setup() {
  ServoArm.attach(Servo_Pin);
}

//主程序部分:前摆臂循环执行【向上1.5秒、水平1秒、向下1.5秒、水平1秒】动作组
void loop() {
  arm_up();     //前摆臂向上
  delay(1500);
  arm_level();  //前摆臂水平
  delay(1000);
  arm_down();   //前摆臂向下
  delay(1500);
  arm_level();  //前摆臂水平
  delay(1000);
}

//前摆臂与地面保持平行
void arm_level(){
  ServoArm.write( Servo_Level );
}

//前摆臂向上
void arm_up(){
  ServoArm.write( Servo_Up );
}

//前摆臂向下
void arm_down(){
  ServoArm.write( Servo_Down );
}

5.资料下载

样机3D文件

例程源代码



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

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

本版积分规则

QQ|Archiver|手机版|小黑屋|hrefspace

GMT+8, 2024-11-22 03:25 , Processed in 0.061966 second(s), 22 queries .

Powered by hrefspace X3.4 Licensed

Copyright © 2022, hrefspace.

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