当前位置: 首页 > backend >正文

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

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

运动原理

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

基本概念

麦克拉姆轮通常安装在机器人的四个角落:前左轮(FL)、前右轮(FR)、后左轮(BL)、后右轮(BR)。
每个轮子的辊子角度决定了其力分解:当轮子旋转时,产生的力可以分解为纵向分量(沿机器人前进方向)和横向分量(垂直于前进方向)。
通过组合四个轮子的旋转,可以合成机器人的整体运动。运动方向由轮子速度向量控制,其中正速度表示轮子向前旋转(例如,顺时针),负速度表示向后旋转(逆时针)。

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

代码实现

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

所以:

引脚A001
引脚B010
结果停转前进后退
                                                (1表示 HIGH 高电平,0表示 LOW 低电平)
 

总结: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

http://www.xdnf.cn/news/16184.html

相关文章:

  • Python编程进阶知识之第五课处理数据(matplotlib)
  • Unity VS Unreal Engine ,“电影像游戏的时代” 新手如何抉择引擎?(结)
  • 100条SQL语句分类精讲:从基础到进阶的实操指南
  • 医疗系统国产化实录:SQL Server国产替代,乙方保命指南
  • 机器学习的基础知识
  • 洛谷 P1996 约瑟夫问题之题解
  • kafka的shell操作
  • 多源信息融合智能投资【“图神经网络+强化学习“的融合架构】【低配显卡正常运行】
  • MapStruct类型转换接口未自动注入到spring容器中
  • 快速将前端得依赖打为tar包(yarn.lock版本)并且推送至nexus私有依赖仓库(笔记)
  • 《C++》面向对象编程--类(下)
  • LLM中的位置嵌入矩阵(Position Embedding Matrix)是什么
  • matrix-breakout-2-morpheus靶机通关教程
  • DBA常用数据库查询语句
  • Python爬虫案例:Scrapy+XPath解析当当网网页结构
  • Lua(模块与包)
  • 【docker | 部署 】Jetson Orin与AMD平台容器化部署概述
  • Java 实现 B/S 架构详解:从基础到实战,彻底掌握浏览器/服务器编程
  • 前端性能新纪元:Rust + WebAssembly 如何在浏览器中实现10倍性能提升(以视频处理为例)
  • 【RAG优化】RAG应用中图文表格混合内容的终极检索与生成策略
  • VUE的学习
  • iOS WebView 加载失败与缓存刷新问题排查实战指南
  • 医疗行业新变革:AR 培训系统助力手术培训精准高效​
  • Oracle国产化替代:一线DBA的技术决策突围战
  • 华为OpenStack架构学习9篇 连载—— 01 OpenStack架构介绍【附全文阅读】
  • 【C++】使用箱线图算法剔除数据样本中的异常值
  • Vue 项目中的组件引用如何实现,依赖组件间的数据功能交互及示例演示
  • CIRL:因果启发的表征学习框架——从域泛化到奖励分解的因果革命
  • Spring MVC中常用注解_笔记
  • 【Linux】linux基础开发工具(一) 软件包管理器yum、编辑器vim使用与相关命令