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

三款经典的轮式/轮足机器人讲解,以及学习EG2133产生A/B/C驱动电机。个人机器人学习和开发路线(推荐)

1,灯哥开源(有使用指南,适合刚入门新手)

机械部分:2个foc无刷电机
硬件和软件部分:没有驱动板子。只有驱动器,主控板esp32和驱动器通过pwm直接通讯。驱动器板子上有蓝色电机接口,直接驱动电机。2个eg2133+1个esp32主控芯片----esp32产生pwm驱动eg2133产生电机驱动的A/B/C相位,开发的实在arduino ide下开发
安装教程:使用指南
开源地址:https://github.com/ToanTech/Balance_Bot_DengFOC

EG2133是一款高性价比的大功率 MOS 管、IGBT 管栅极驱动专用芯片,内部集成了逻辑信号输入处 理电路、死区时控制电路、闭锁电路、电平位移电路、脉冲滤波电路及输出驱动电路。   EG2133高端的工作电压可达300V,低端VCC的电源电压范围宽4.5V~20V。

EG2133可以接收PWM信号并驱动FOC无刷电机。在这种配置中,微控制器(例如ESP32)会生成适当的PWM信号来控制电机的转速和方向123。然后,这些PWM信号被送入EG2133,它会根据这些信号驱动连接到其输出端的电机。这样,你就可以通过改变PWM信号来精确地控制无刷电机的行为12。 值得注意的是,虽然EG2133可以处理PWM信号并驱动电机,但是它并不直接生成PWM信号。相反,PWM信号通常由微控制器或类似设备生成12。此外,使用EG2133驱动无刷电机时,需要确保电路设计得当,以防止MOS管击穿冒烟3。

截图:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2,国旋学长(可以快速实现轮足)

机械部分:4个舵机+2个foc无刷电机的方案
板子硬件和软件架构1个esp32驱动板+1个esp32主控板—主控和驱动板之间是esp32到esp32,通过串口通讯,驱动板esp32输出pwm驱动mos管 产生A/B/C,开发工具驱动板和主控板都是在arduino下开发
开源地址:https://github.com/HuGuoXuang/Hyun
截图:
在这里插入图片描述

3,FOC 双轮腿机器人项目(更为先进,使用了主控和驱动板之间使用了can通讯)

电机和机械部分:4个4010无刷电机+2个2804无刷电机(4010无货,有人用)
硬件和软件框架:6个stm32-foc(刷电机驱动板)+1个esp32-controller(主运动控制模块)
驱动板子开发使用的是PlatformIO平台,主控制模块开发使用的是keil IDE开发。主控板和驱动板之间通过can总线直接通讯
platformio平台开发教程:2020年你还在用Arduino??快开始用PlatformIO开发Esp8266/32、Arduino、STM32,十分钟亲测ESP8266
B站视频介绍:https://www.bilibili.com/video/BV1bP411k75b/
开源地址:https://github.com/Skythinker616/foc-wheel-legged-robot
立创开源广场:https://oshwhub.com/skythinker/simplefoc103
图片:
在这里插入图片描述

4,开发工具

开发工具用arduino,它可以开发stm32和esp32以及arduino uno(这个uno被淘汰20年前技术,不推荐),

在arduino ide上开发stm32和esp32非常方便,不用过多的配置底层端口驱动等,只需要注重业务逻辑开发就行了。

调试上位机使用simplefoc studio
学习参考链接:simplefoc开发基础入门,Commander command = Commander(Serial)的含义,以及simplefocstudio如何使用对PID进行调试

5,其他注意事项,以及个人建议

调试方法:使用esp32可以很方便的将motor对象通过串口发送给上位机simplefocsutido,然后进行调试,这个方案很方便开发调试一些pid等算法
架构方案:4个无刷电机+2个无刷(最终方案),可提供足够的弹跳扭矩
学习路线:先学习登哥开源的foc平衡车,然后根据自己掌握的情况在去复刻和实现上述轮足的项目,其他轮足项目暂时不推荐,因为可能有一些难以避免的缺陷。

http://www.lryc.cn/news/198669.html

相关文章:

  • apache开启https
  • 绝地求生游戏缺少msvcp140.dll丢失打不开怎么办?这6个方法都能修复
  • 【广州华锐互动】石油钻井井控VR互动实训系统
  • 单链表算法经典OJ题
  • Picnic master project interview
  • nginx部署vue项目(访问路径加前缀)
  • element-ui中表格树类型数据的显示
  • 【扩散模型】如何用最几毛钱生成壁纸
  • 零基础Linux_17(进程间通信)VSCode环境安装+进程间通信介绍+pipe管道mkfifo
  • Redis的BitMap使用
  • java并发编程之基础与原理1
  • ⟨A⟩ = Tr(ρA) 从数学上来讲什么意思
  • Vue中的v-model指令的原理是什么?
  • 2023服务端测试开发必备技能:Mock测试
  • ExoPlayer架构详解与源码分析(5)——MediaSource
  • 控制一个游戏对象的旋转和相机的缩放
  • 【数据结构】线性表(二)单链表及其基本操作(创建、插入、删除、修改、遍历打印)
  • label的作用是什么?是怎么用的?(1)
  • C- 使用原子变量实现自旋锁
  • 汇编的指令
  • 《数据结构、算法与应用C++语言描述》使用C++语言实现数组队列
  • 零基础如何学习自动化测试
  • 系统架构师备考倒计时16天(每日知识点)
  • 【MySQL系列】- Select查询SQL执行过程详解
  • 软考高级信息系统项目管理师系列之:信息系统项目管理师论文评分参考标准
  • MyBatis--多案例让你熟练使用CRUD操作
  • 用Python造轮子
  • ARM 堆栈寻址类型区分
  • 每日一练 | 网络工程师软考真题Day43
  • jsonXML格式化核心代码