星慈光编程虫2号小车讲解第二篇--向左向右平移
上一篇:星慈光编程虫2号小车讲解第一篇--向前向后https://blog.csdn.net/LiuYiCheng123456/article/details/149332108?spm=1001.2014.3001.5501亲爱的创客伙伴们,欢迎回到星慈光编程虫系列教程!在上一篇中,我们深入探讨了小车的前进后退控制原理与编码实现。今天,我们将解锁更灵活的运动维度——横向平移功能。当您的编程虫需要精准避障、调整位置或完成复杂路径规划时,平移能力将成为关键利器。
运动原理
麦克拉姆轮的运动原理
麦克拉姆轮(Mecanum wheel)是一种特殊设计的轮子,常用于全向移动机器人。它的轮缘上安装有多个倾斜的辊子(通常呈45度角),这些辊子允许轮子在滚动时产生侧向力。通过独立控制每个轮子的旋转方向和速度,机器人可以实现复杂的运动,包括向前、向后、向左平移、向右平移以及旋转。
基本概念
麦克拉姆轮通常安装在机器人的四个角落:前左轮(FL)、前右轮(FR)、后左轮(BL)、后右轮(BR)。
每个轮子的辊子角度决定了其力分解:当轮子旋转时,产生的力可以分解为纵向分量(沿机器人前进方向)和横向分量(垂直于前进方向)。
通过组合四个轮子的旋转,可以合成机器人的整体运动。运动方向由轮子速度向量控制,其中正速度表示轮子向前旋转(例如,顺时针),负速度表示向后旋转(逆时针)。
向左和向右运动的方法一在上一篇中讲解,这里就不多多赘述。
代码实现
星慈光的电机每个都需要两个引脚
所以:
(1表示 HIGH 高电平,0表示 LOW 低电平)
引脚A 0 0 1 引脚B 0 1 0 结果 停转 前进 后退
总结:00停,01前,10退
向左转
digitalWrite(FR1, LOW);digitalWrite(FR2, HIGH);digitalWrite(FL1, HIGH);digitalWrite(FL2, LOW);digitalWrite(BR1, LOW);digitalWrite(BR2, HIGH);digitalWrite(BL1, HIGH);digitalWrite(BL2, LOW);
向右转
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