电子说
1.运动功能说明
自适应四轮底盘可以通过左侧2个驱动轮和右侧2个驱动轮的差速运动配合来实现前进、后退、原地转向、大半径转向等基本行驶功能。可以在凸凹不平的地面上行驶。
2.结构说明
样机包含四个直流驱动轮模组,固定在一个由连杆组构成的悬架上,具备悬挂功能,有更好的越障、抓地能力,还能降低车身颠簸。
3.运动功能实现
3.1 电子硬件
在这个示例中,我们采用了以下硬件,请大家参考:
由于同侧的驱动轮的运动状态始终是一样的。因此同侧的两个直流电机可以通过1拖2电机线共用1个直流电机接口。
先将同侧直流电机接在1条1拖2电机线上,然后在分别接在两个直流电机接口上,两个直流电机接口的针脚号分别为(D5,D6)以及(D9,D10),并将主控板和电池在车身固定好。
3.2 编写程序【完整代码详见 https://www.robotway.com/h-col-124.html】
编程环境: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 ------------------------------------------------------------------------------------*/ voidForward(); // 前进 //程序初始化部分:设置电机引脚为输出模式 voidsetup() { pinMode( 5 , OUTPUT); //将引脚5设置为输出模式 pinMode( 6 , OUTPUT); //将引脚6设置为输出模式 pinMode( 9 , OUTPUT); //将引脚9设置为输出模式 pinMode( 10 , OUTPUT);//将引脚10设置为输出模式 } //主程序部分:小车前进 voidloop() { Forward(); } //封装小车前进动作子程序 voidForward() { 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 ------------------------------------------------------------------------------------*/ voidturn_Left(); // 原地转向(本示例为原地左转) //程序初始化部分:设置电机引脚为输出模式 voidsetup() { pinMode( 5 , OUTPUT); //将引脚5设置为输出模式 pinMode( 6 , OUTPUT); //将引脚6设置为输出模式 pinMode( 9 , OUTPUT); //将引脚9设置为输出模式 pinMode( 10 , OUTPUT);//将引脚10设置为输出模式 } //主程序部分:小车差速自转[本示例为小车左转] voidloop() { turn_Left(); } //封装小车自转动作子程序(本示例为左转) voidturn_Left(){ digitalWrite( 5 , LOW ); //右轮前进 digitalWrite( 6 , HIGH ); digitalWrite( 9 , HIGH ); //左轮后退 digitalWrite( 10 , LOW); } |
4.扩展样机
本样机可以通过使用不同的驱动轮模组,或者对连杆组悬架进行改造来实现扩展,如下图所示:
审核编辑 黄宇
全部0条评论
快来发表一下你的评论吧 !