为了给大家些创作灵感,今天带来第十届立创电赛三等奖作品#第十届立创电赛#无刷电机云台案例分享!本文作者:@bnnnh,禁止商用,未经许可禁止转载。
第十一届立创电赛正在进行中心,点击图片报名。
一、项目功能介绍
二维云台,实现精准角度转动,硬件基于Makerbase FOC驱动板,软件基于simpleFOC,主控使用esp32,可以连接RDK等上位机,实现和摄像头等传感器联动。



二、项目属性
首次公开,扩展Makerbase FOC驱动板的功能
三、开源协议
GPL3.0开源协议
四、硬件部分
(一)PCB辅助板
主要实现扩展Makerbase FOC驱动板的功能,为其提供固定电压输入,esp32控制


最大50V电压输入,12V电压输出,最大5A电流输出。

输入可以选择使用接线端子或DC母座。
使用芯龙XL4015,DC-DC降压芯片。
1、降压至5V模块
-


用于给RDK供电
2、降压至3.3v

用于给esp32等供电。
使用LM1117线性稳压器,相较于AMS1117有更低的压差电压。
3.串口通信

用于和上位机(RDK通信)。
使用CH340N,内置时钟,无需外部晶振。
4.esp32

包含启动和复位按键
5.连接Makerbase FOC驱动板和磁传感器接口



(二)机械部分

和电机1固定

用于挂载RDK和云台辅助板

和电机2固定

使用fusion360制作,教育版免费
(三)其他
1.PM3510云台无刷电机

2.2804云台电机

五、软件部分
(一)esp32的arduino代码

串口控制格式:“A角度”控制电机1旋转角度,比如通过串口向esp32发送“A3.14”,电机1旋转180度。“B角度”控制电机2旋转角度。
注意需要根据自己电机修改pid参数、电压、极对数。
(二)rdk上位机Python代码

基于 PyQt5 的电机视觉追踪控制系统,核心功能是通过 YOLO 目标检测获取目标位置,结合 PID 算法计算控制量,再通过串口通信驱动两台电机(A/B)追踪目标,同时提供 UI 交互和数据可视化功能。
1)手动控制流程:用户通过 UI 输入角度 / 鼠标拖动 → 触发sendAngles → 串口发送指令 → 电机执行 → 串口接收实际角度 → 更新 UI 和绘图。
2)视觉追踪流程:点击 “开始追踪” → 启动视觉进程和 PID 初始化 → YOLO 输出目标坐标 → 计算与画面中心的误差(e_x/e_y) → PID 输出控制量 → 发送电机指令 → 循环更新直至 “停止追踪”。

ui界面
六、logo展示






