星慈光编程虫2号小车讲解第二篇--向左向右平移

上一篇:星慈光编程虫2号小车讲解第一篇--向前向后https://blog.csdn.net/LiuYiCheng123456/article/details/149332108?spm=1001.2014.3001.5501亲爱的创客伙伴们,欢迎回到星慈光编程虫系列教程!在上一篇中,我们深入探讨了小车的前进后退控制原理与编码实现。今天,我们将解锁更灵活的运动维度------横向平移功能。当您的编程虫需要精准避障、调整位置或完成复杂路径规划时,平移能力将成为关键利器。

运动原理

麦克拉姆轮的运动原理

麦克拉姆轮(Mecanum wheel)是一种特殊设计的轮子,常用于全向移动机器人。它的轮缘上安装有多个倾斜的辊子(通常呈45度角),这些辊子允许轮子在滚动时产生侧向力。通过独立控制每个轮子的旋转方向和速度,机器人可以实现复杂的运动,包括向前、向后、向左平移、向右平移以及旋转。

基本概念

麦克拉姆轮通常安装在机器人的四个角落:前左轮(FL)、前右轮(FR)、后左轮(BL)、后右轮(BR)。

每个轮子的辊子角度决定了其力分解:当轮子旋转时,产生的力可以分解为纵向分量(沿机器人前进方向)和横向分量(垂直于前进方向)。

通过组合四个轮子的旋转,可以合成机器人的整体运动。运动方向由轮子速度向量控制,其中正速度表示轮子向前旋转(例如,顺时针),负速度表示向后旋转(逆时针)。

向左和向右运动的方法一在上一篇中讲解,这里就不多多赘述。

代码实现

星慈光的电机每个都需要两个引脚

所以:

| 引脚A | 0 | 0 | 1 |
| 引脚B | 0 | 1 | 0 |

结果 停转 前进 后退

(1表示 HIGH 高电平,0表示 LOW 低电平)

总结:00停,01前,10退

向左转
cpp 复制代码
  digitalWrite(FR1, LOW);
  digitalWrite(FR2, HIGH);
  digitalWrite(FL1, HIGH);
  digitalWrite(FL2, LOW);
  digitalWrite(BR1, LOW);
  digitalWrite(BR2, HIGH);
  digitalWrite(BL1, HIGH);
  digitalWrite(BL2, LOW);
向右转
cpp 复制代码
  digitalWrite(FR1, HIGH);
  digitalWrite(FR2, LOW);
  digitalWrite(FL1, LOW);
  digitalWrite(FL2, HIGH);
  digitalWrite(BR1, HIGH);
  digitalWrite(BR2, LOW);
  digitalWrite(BL1, LOW);
  digitalWrite(BL2, HIGH);

下一篇:星慈光编程虫2号小车讲解第三篇--附件概述https://blog.csdn.net/LiuYiCheng123456/article/details/149398819?spm=1001.2014.3001.5501

相关推荐
书山有路勤为径~17 分钟前
1 51单片机-C51语法
单片机·嵌入式硬件·51单片机
几个几个n2 小时前
STM32-第十一节-USART串口
stm32·单片机·嵌入式硬件
努力做小白16 小时前
Linux驱动19 --- FFMPEG
linux·运维·驱动开发·单片机·嵌入式硬件·ffmpeg
LiuYiCheng12345618 小时前
星慈光编程虫2号小车讲解第一篇--向前向后
单片机
CC呢20 小时前
基于单片机智能交通灯设计
stm32·单片机·嵌入式硬件·交通灯
bu_shuo21 小时前
STM32中SystemCoreClockUpdate函数解读
stm32·单片机·嵌入式硬件
学生董格21 小时前
[嵌入式embed]ST官网-根据指定固件名下载固件库-STSWSTM32054[STM32F10x_StdPeriph_Lib_V3.5.0]
stm32·单片机·嵌入式硬件·stm32054_v3-5-0·stm32f10x
深圳安凯星单片机开发方案公司1 天前
51单片机是怎么驱动直流电机的
单片机·51单片机