1.运动功能说明
四轮四驱底盘可以通过左侧2个驱动轮和右侧2个驱动轮的 差速运动 配合来实现前进、后退、原地转向、大半径转向等基本行驶功能。
2.结构说明
样机由四个 小型驱动轮模组 构成,驱动力较为强劲。但是由于四个轮子固定在一个刚性的车架上,没有悬挂,因此只能适应平整的地面,遇到起伏会造成车轮悬空,影响行驶。
3.运动功能实现
3.1 电子硬件
在这个示例中,我们采用了以下硬件,请大家参考:
由于同侧的驱动轮的运动状态始终是一样的。因此同侧的两个直流电机可以通过1拖2电机线(可以用杜邦线自制)共用1个直流电机接口
先将同侧直流电机接在1条1拖2电机线上,然后在分别接在两个直流电机接口上,两个直流电机接口的针脚号分别为(D5,D6)以及(D9,D10),并将主控板和电池在车身固定好。
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-31 https://www.robotway.com/
-------------------------
实验功能:
实现四轮四驱底盘前进.
-----------------------------------------------------
实验接线:
一拖二直流电机线:左侧车轮接9,D10
| | | |
.-----------------------------------.
| |
| |-------.
| |【车头】|
| |-------*
| |
*-----------------------------------*
| | | |
一拖二直流电机线:右侧车轮接5,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/
--------------------------
实验功能:
实现四轮四驱底盘后退.
----------------------------------------------------
实验接线:
一拖二直流电机线:左侧车轮接9,D10
| | | |
.-----------------------------------.
| |
| |-------.
| |【车头】|
| |-------*
| |
*-----------------------------------*
| | | |
一拖二直流电机线:右侧车轮接5,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);
}
|
4.扩展样机
本样机也有一些扩展,如使用不同形状的基板,或者不同尺寸的轮子,如下图所示:
5.资料下载
|