斜三角履带底盘的制作

1.运动功能说明

      履带底盘可以通过两侧履带的差速运动来实现前进、后退、原地转向、大半径转向等基本行驶功能。另外,倾斜的履带也可以使其具有良好的越障效果。

前进与后退

原地转向

大半径转向

 

2.结构说明

      该样机由两个斜三角履带模组构成,履带模组呈轴对称分布在车架上。

3.运动功能实现

3.1 电子硬件

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

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

3.2 电路连接

      将直流电机接在两个直流电机接口上,两个直流电机接口的针脚号分别为(D5,D6)以及(D9,D10),并将主控板和电池在车身固定好。

 

3.3 编写程序

编程环境: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-31 https://www.robotway.com/
------------------------------
实验功能:
实现斜三角履带底盘前进.
-----------------------------------------------------
实验接线:
左侧车轮接:D9,D10
| |
.-----------------------------------.
| |
| |-------.
| |【车头】|
| |-------*
| |
*-----------------------------------*
| |
右侧车轮接:D5,D6
------------------------------------------------------------------------------------*/
void Forward(); // 前进
 
//程序初始化部分:设置电机引脚为输出模式
void setup() {
pinMode( 5 , OUTPUT); //将引脚5设置为输出模式
pinMode( 6 , OUTPUT); //将引脚6设置为输出模式
pinMode( 9 , OUTPUT); //将引脚9设置为输出模式
pinMode( 10 , OUTPUT);//将引脚10设置为输出模式
}
 
//主程序部分:小车前进
void loop() {
Forward();
}
 
//封装小车前进动作子程序
void Forward() {
digitalWrite( 5 , LOW ); //右轮前进
digitalWrite( 6 , HIGH );
 
digitalWrite( 9 , LOW ); //左轮前进
digitalWrite( 10 , HIGH );
}

 

后退功能的代码

/*------------------------------------------------------------------------------------
版权说明: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-31 https://www.robotway.com/
--------------------------
实验功能:
实现斜三角履带底盘后退.
----------------------------------------------------
实验接线:
左侧车轮接:D9,D10
| |
.-----------------------------------.
| |
| |-------.
| |【车头】|
| |-------*
| |
*-----------------------------------*
| |
右侧车轮接:D5,D6
------------------------------------------------------------------------------------*/
 
void Backward();// 后退
 
//程序初始化部分:设置电机引脚为输出模式
void setup() {
pinMode( 5 , OUTPUT); //将引脚5设置为输出模式
pinMode( 6 , OUTPUT); //将引脚6设置为输出模式
pinMode( 9 , OUTPUT); //将引脚9设置为输出模式
pinMode( 10 , OUTPUT);//将引脚10设置为输出模式
}
 
//主程序部分:小车后退
void loop(){
Backward();
}
 
//封装小车后退动作子程序
void Backward() {
digitalWrite( 5 , HIGH ); //右轮后退
digitalWrite( 6 , LOW );
 
digitalWrite( 9 , HIGH ); //左轮后退
digitalWrite( 10 , LOW);
}

 

原地转向功能的代码

/*------------------------------------------------------------------------------------
版权说明: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-31 https://www.robotway.com/
------------------------------------
实验功能:
实现斜三角履带底盘原地旋转(差速方式).
本实验现象为四轮四驱底盘原地左转.
----------------------------------------------------
实验接线:
左侧车轮接:D9,D10
| |
.-----------------------------------.
| |
| |-------.
| |【车头】|
| |-------*
| |
*-----------------------------------*
| |
右侧车轮接:D5,D6
------------------------------------------------------------------------------------*/
void turn_Left(); // 原地转向(本示例为原地左转)
 
//程序初始化部分:设置电机引脚为输出模式
void setup() {
pinMode( 5 , OUTPUT); //将引脚5设置为输出模式
pinMode( 6 , OUTPUT); //将引脚6设置为输出模式
pinMode( 9 , OUTPUT); //将引脚9设置为输出模式
pinMode( 10 , OUTPUT);//将引脚10设置为输出模式
}
 
//主程序部分:小车差速自转[本示例为小车左转]
void loop() {
turn_Left();
}
 
//封装小车自转动作子程序(本示例为左转)
void turn_Left(){
digitalWrite( 5 , LOW ); //右轮前进
digitalWrite( 6 , HIGH );
 
digitalWrite( 9 , HIGH ); //左轮后退
digitalWrite( 10 , LOW);
}

 

大半径转向功能的代码

/*------------------------------------------------------------------------------------
版权说明: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-31 https://www.robotway.com/
--------------------------------------------------------
实验功能:
实现斜三角履带底盘大半径转向(原理为小车车轮同向不同速)
--------------------------------------------------------
实验接线:
左侧车轮接:D9,D10
| |
.-----------------------------------.
| |
| |-------.
| |【车头】|
| |-------*
| |
*-----------------------------------*
| |
右侧车轮接:D5,D6
------------------------------------------------------------------------------------*/
 
void big_Turn();// 大半径转向
 
//程序初始化部分:设置电机引脚为输出模式
void setup() {
pinMode( 5 , OUTPUT); //将引脚5设置为输出模式
pinMode( 6 , OUTPUT); //将引脚6设置为输出模式
pinMode( 9 , OUTPUT); //将引脚9设置为输出模式
pinMode( 10 , OUTPUT);//将引脚10设置为输出模式
}
 
//主程序部分:小车走弧形路径
void loop() {
big_Turn();
}
 
//封装小车走大半径(弧线)动作子程序(同向不同速)
void big_Turn() {
analogWrite( 5 , 0 ); //右轮以255速度前进
analogWrite( 6 , 255);
analogWrite( 9 , 0 ); //左轮以150速度前进
analogWrite( 10 , 150 );
}

 

4.资料内容

① 样机3D文件

② 例程源代码

 

posted @ 2022-12-14 13:45  机器谱Robotway  阅读(233)  评论(0)    收藏  举报