站内搜索
发作品签到
标准版

#第十届立创电赛#基于stm32f407vgt6的云台追踪系统

工程标签

1.4k
0
0
5

简介

基于stm32f407vgt6的云台追踪系统

简介:基于stm32f407vgt6的云台追踪系统
第十届立创电子设计开源大赛

开源协议

GPL 3.0

创建时间:2025-07-08 22:35:35更新时间:2025-10-23 18:00:17

描述

* 1、项目功能介绍


  项目名称:基于STM32F407VET6的智能目标随动系统

  项目背景:本项目设计并实现了一套低成本、高精度的智能目标随动系统。系统以 STM32F407VET6 作为实时控制核心,结合树莓派作为视觉处理单元,通过摄像头获取图像并运行目标检测/跟踪算法,驱动双轴云台对目标进行实时、平稳的跟踪与控制。适用于安防监控、自动拍摄、智能玩具等需要自动跟踪移动目标的场景,能显著降低人工操作成本并提升目标保持的稳定性与可靠性。

  解决问题:在安防、消费级摄像、智能交互设备等领域,目标跟踪往往要求对移动目标进行长时间、连续且精确的跟踪。传统人工控制易疲劳、响应慢、且在复杂场景下容易丢失目标。引入嵌入式视觉与实时控制的结合,能实现自动化、智能化跟踪,从而提升监控覆盖、自动拍摄效果与用户体验。

 

 

*2、项目属性


首次公开:是

原创性:是(结合了开源技术但整体架构为原创设计)

获奖历史:无

答辩经历:无

 

* 3、开源协议


GPL 3.0

 

*4、硬件部分


硬件部分

>

4.1  :系统结构

主控:STM32F407ZET6

控制:2个42步进电机

视觉模块:树莓派,摄像头

将系统分为4个基本模块,包括主控模块、电控模块、视觉模块.

 

4.1.1  :主控模块

           STM32F407ZET6

4.1.2  :电控模块

          使用42步进电机与A4988驱动器。

 

4.1.3  :视觉模块

树莓派较强的CPU和GPU,可以处理复杂的数据和算法。这对于矩形框识别和激光光点的位置跟踪是重要的。

功耗和散热:相比于OpenMV,树莓派在长时间运行时更好的散热措施使得其更稳定。

对于此项目,需要进行实时的图像处理和激光光点位置的精确识别,树莓派拥有强大处理能力和灵活性使其能够处理更复杂的图像识别算法,是一个好的选择

 

4.2  :机械结构

采用铝型材构成十字架结构,可以更加稳定的固定较重的步进电机.

我认为,这个机械结构非常的简单,但是软件的pid的算法,与视觉的矩形识别才是最重要的.

 

4.3控制板原理图

这个就是那个黑色板子的原理图,经过再三修改,应该是没有问题了,如有疏漏,恳求原谅.

*5、软件部分


工程结构

/

5.1 视觉模块
 
因为我们需要去识别激光点,如果曝光过亮,那么激光点的颜色hsv与lab阈值就会变的非常的难进行识别,所以我们一开始就锁定曝光与白平衡,以此稳定激光点的识别
 
 
因为矩形框可能出现在摄像头图像中的任何位置,又因为最开始红色激光点的中央一定为摄像头的中央,所以就以激光点为中心进行校准,以这个激光点为坐标系的原点构建坐标系,以此来为矩形四个顶点的位置进行固定以及确认.
 
 
这些为矩形识别的部分主要功能源代码,因为摄像头是固定的,而且环境很理想,几乎没有其他类似矩形框的干扰,所以并没有给矩形框的识别加过多的限制,即可稳定识别矩形框.


流程:
将图像灰度化并高斯模糊;
使用 Canny 边缘检测提取轮廓;
形态学闭运算连接断裂的边界;
使用 cv.findContours 查找轮廓;
使用 cv.approxPolyDP 筛选出近似矩形的轮廓;
过滤掉面积过小的噪声矩形;
对矩形进行去重 (deduplicate_rects),防止重复识别;
选取最大矩形作为目标区域;
绘制矩形边界并计算顶点与边中点的坐标(相对原点的偏移量)

 
当树莓派识别到矩形框并稳定识别后,需要将矩形框的四个顶点,然后将这四个顶点的相对坐标发到stm32f4进行处理.我用的是串口发送这是很常用的通信方式,也是最简单可行的通信方式,在此不进行过多的赘述.附上关键源码:
 
数据格式:
起始帧:[0x12, 0x2C]
坐标数据:以符号位(0/1)+ 三位数值形式打包
结束帧:[0x5B]
协议响应:
接收到 'd1':发送目标矩形顶点与边中点坐标;
接收到 'd2':发送红色与绿色激光坐标;
发送函数:send_frame(payload) 负责打包并写入串口。
 
此为识别的效果图,中间的红点即为红色激光点
 
5.2 STM32思想
通过PID进行控制步进电机,当时在网上也找不到步进电机完成这个功能的完美方案,也只能走一步看一步了,最后通过PID调节完成此功能。
思想是,将树莓派发送过来的数据进行处理,四个顶点的坐标,按顺序依次到达。当然可能会不精准,通过不停的加补偿尝试,达到最优效果。
 
 
PID算法也是当时跟着视频摸索出来的,效果我觉得已经很完美了,以下是PID的部分主要代码,可以自行参考:

 

 

*6、BOM清单


 

 

 

*7、大赛LOGO验证


 

 

 

* 8、演示您的项目并录制成视频上传


 

 

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

3D模型

序号文件名称下载次数
暂无数据

附件

序号文件名称下载次数
1
BOM_Board1_Schematic1_2025-10-16.xlsx
0
2
e6.py
0
3
MDK-ARM.zip
0
克隆工程
添加到专辑
0
0
分享
侵权投诉

工程成员

知识产权声明&复刻说明

本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。

请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。

评论

全部评论(1
按时间排序|按热度排序
粉丝0|获赞0
相关工程
暂无相关工程

底部导航