第一篇:从一堆舵机到第一台能动的机器人------EdgeMind 项目立项与底盘搭建记录
一、项目最开始的想法
这个项目其实不是一开始就想做"家庭服务机器人"的。
最早的时候,我们只是想做一个"能夹东西的小车",因为当时看到很多扫地机器人虽然能避障,但看到桌面上的水瓶、垃圾、纸巾其实什么都做不了,只会绕过去。
于是我们团队就在想:
"有没有一种可能,让机器人不仅能看见,还能真正动手?"
后来这个想法越做越大。
我们发现,如果只是机械臂抓取,其实意义有限。
因为真实家庭里还有很多需求:
- 老人陪伴
- 宠物投喂
- 植物浇水
- 地面清洁
- 远程查看
- 语音交互
- 手机控制
于是最后逐渐演变成现在的 EdgeMind 云边智护机器人。
整个项目最开始其实只有:
- 一块 ESP32
- 两个 SG90 舵机
- 一个亚克力底盘
- 一个坏掉的扫地机电机
甚至最早连结构图都没有。
我们是边做边改。
二、第一版底盘为什么直接失败了
第一版底盘其实问题特别多。
最开始我们采用的是普通四轮差速结构。
问题很快就出现了:
1. 机械臂一伸出去就翻车
因为机械臂重量集中在前面。
当机械臂夹起一个矿泉水瓶的时候:
- 重心瞬间前移
- 后轮离地
- 整个机器人直接翘起来
当时我们甚至怀疑是不是舵机力矩不够。
后来重新分析才发现:
真正的问题不是舵机。
而是:
"整车重心设计有问题。"
于是后面我们做了几个修改:
解决方案:
- 电池后置
- 主控板放中间
- 机械臂底座加厚
- 底盘增宽
- 增加前部支撑轮
后面又重新打印了新的底盘结构。
终于解决了重心问题。
三、麦克纳姆轮调试真的很折磨
后来为了让机器人能够:
- 横向移动
- 原地旋转
- 小空间掉头
我们换成了麦克纳姆轮。
但真正开始调的时候才发现:
"理论会动"和"实际能用"完全是两回事。
遇到的第一个问题:
机器人会自己漂移。
尤其是:
- 向前走的时候会斜着走
- 原地旋转会画圆
- 横移会抖动
后来排查了很久。
最后发现:
居然是四个电机转速不一致。
因为不同减速电机存在误差。
即使 PWM 相同:
- A 电机 120RPM
- B 电机 105RPM
- C 电机 118RPM
- D 电机 110RPM
误差非常明显。
后来的解决方案:
我们加入了:
- PID 调速
- 编码器反馈
- 电机校准参数表
每个轮子单独标定。
最后效果稳定很多。
四、为什么后来决定加入机械臂
原本其实想直接买现成机械臂。
但后来发现几个问题:
1. 太贵
现成机械臂动不动几千块。
2. 太重
工业机械臂根本没法上小车。
3. 接口不开放
很多只能官方软件控制。
于是后面决定:
"自己做。"
我们开始用:
- SolidWorks
- 3D打印
- 舵机联动
重新设计六自由度机械臂。
第一版机械臂的问题更离谱:
- 肘关节打滑
- 腕部抖动
- 夹爪闭合不紧
- 运动会共振
尤其是肩关节。
最开始直接用 SG90。
结果:
一抬手就掉下来了。
后来换成金属舵机后才稳定。
五、第一次成功抓取时真的很激动
最开始我们只是希望它:
"能把瓶子夹起来就行。"
但真正实现那一刻其实挺兴奋的。
因为整个流程终于闭环了:
- 摄像头识别
- 坐标计算
- 逆运动学解算
- PWM 驱动
- 机械臂运动
- 成功抓取
虽然动作很慢。
但那种感觉就是:
"这个东西终于活了。"
那天我们在实验室反复抓了几十次矿泉水瓶。
后来还故意摆各种角度测试。
甚至连桌上的橡皮擦都拿来抓。
最后发现:
真正难的不是抓起来。
而是:
"稳定抓起来。"
六、目前底盘参数记录
主控:
- Orange Pi H616
- ESP32-S3
- RV1126B
电机参数:
- 12V 减速电机
- 麦克纳姆轮
- PWM 调速
- PID 闭环
电源:
- 12V 锂电池
- Type-C 辅助供电
- 太阳能补能
机械臂:
- 六自由度
- 金属舵机
- PWM 控制
- UART 通讯
七、目前仍然存在的问题
1. 机械臂高速动作会抖
原因:
- 结构件刚性不足
- 舵机回差
- 重量分布不均
2. 麦克纳姆轮在光滑地面会漂移
准备后面:
- 加 IMU
- 做运动补偿
- 融合视觉定位
3. 底盘续航不够
目前满功率只能跑 1.5 小时。
后面准备:
- 电源管理优化
- 电机动态限流
- 更高容量电池
八、这一阶段最大的感受
我们后来发现:
真正难的不是"做出来"。
而是:
"让所有模块同时稳定工作。"
机器人项目其实特别容易:
- 这个模块能跑
- 那个模块也能跑
但一整合:
全炸。
所以整个 EdgeMind 项目后面最大的工作量其实都是:
联调。
【插图建议】
- 整机侧视图
- 机械臂特写
- 麦克纳姆轮结构
- 实验室调试照片
- 底盘拆解照片