轮足机器人无法直立的原因,哎

找到根本原因了。诊断结果汇总:

测试项 结果 状态
I2C总线 Bus0: AS5600, Bus1: AS5600+MPU6050 OK
AS5600编码器 S1=2.67, S2=1.24 OK
MPU6050 角度、角速度正常更新 OK
电池电压 7.46V OK
Driver1 init FAIL 故障
Driver2 init FAIL 故障
Motor1 正转0.00 反转0.00 完全不转 故障
Motor2 正转+0.26 反转-0.26 OK
问题根因
  1. 两个电机驱动初始化都失败(Driver init: FAIL)
    这说明驱动芯片的PWM引脚或EN引脚有问题。SimpleFOC的 driver.init() 返回FAIL通常意味着无法正确配置PWM通道。
    但Motor2在驱动FAIL的情况下还能转,说明可能是诊断程序里 Serial2.begin(1000000) 放在 driver.init() 之后导致引脚冲突的时序问题。在主程序里Serial2是先初始化的,所以driver可能实际没问题。
  2. Motor1完全不转 --- 这是机器人站不住的真正原因
    只有一个轮子在工作,当然无法平衡。Motor1的硬件连接有问题:
    检查Motor1相关引脚(32, 33, 25, EN=22):
  • GPIO 32, 33, 25 --- 三相PWM输出线
  • GPIO 22 --- 使能引脚(EN)
    你需要检查:
  1. Motor1的三根相线(连接到GPIO 32/33/25)是否虚焊或断线
  2. Motor1驱动板的EN引脚(GPIO 22)是否正常连接
  3. Motor1的驱动芯片是否烧了(闻一下有没有焦味)
  4. 用万用表量一下GPIO 22在程序运行时是否有高电平输出
    Motor2(GPIO 26/27/14,EN=12)正常工作,说明电路设计没问题,问题出在Motor1这一路的硬件上。
    这就是机器人一直倒的原因------只有一个轮子在转,单轮无法平衡。
相关推荐
kyle~2 小时前
ROS2 Control
c++·嵌入式硬件·机器人·ros2
EVERSPIN2 小时前
单片机外扩SRAM芯片:Async Fast EMI504WF08VB-10IE应用
单片机·嵌入式硬件·sram芯片·外扩sram·外扩sram芯片
LCG元2 小时前
STM32嵌入式开发:基于STM32F103的智能水族箱控制
stm32·单片机·嵌入式硬件
凌盛羽2 小时前
使用python绘图分析电池充电曲线
开发语言·python·stm32·单片机·fpga开发·51单片机
欧阳逐梦2 小时前
【实战经验】机器人团队协作:解决“信息孤岛“问题的配置方案
机器人
yongui478342 小时前
红外额温枪/体温枪单片机控制源码(STM32方案)
stm32·单片机·mongodb
DC升降压/LED驱动IC2 小时前
源芯片选型指南之 AP5193 DC-DC 宽电压 LED 降压恒流驱动器
stm32·单片机·嵌入式硬件·物联网·51单片机·proteus
蓝凌y3 小时前
51单片机之花样灯
c语言·单片机·嵌入式硬件·51单片机
天天爱吃肉82183 小时前
【 电机热网络温度预测模型学习笔记】
笔记·功能测试·嵌入式硬件·学习·机器学习·信息可视化·汽车