设计制作一个运动目标控制与自动追踪系统

描述

一、任务    

设计制作一个运动目标控制与自动追踪系统。系统包括:

01

模拟目标运动的红色光斑位置控制系统。

02

指示自动追踪的绿色光斑位置控制系统。

系统结构示意及摆放位置见图 1(a)。

mcu

图中两个激光笔固定在各自独立的二维电控云台上。

红色激光笔发射的光斑用来模拟运动目标。光斑落在正前方距离 1m 处的白色屏幕上,光斑直径≤1cm。红色光斑位置控制系统控制光斑能在屏幕范围内任意移动。

绿色激光笔发射的光斑由绿色光斑位置系统控制,用于自动追踪屏幕上的红色光斑,指示目标的自动追踪效果,光斑直径≤1cm。

绿色激光笔放置线段如图 1(b)所示。

mcu

该线段与屏幕平行,位于红色激光笔两侧,距红色激光笔距离大于 0.4m、小于 1m

绿色激光笔在两个放置线段上任意放置。

屏幕为白色,有效面积大于 0.6╳0.6m2

用铅笔在屏幕中心画出一个边长0.5m的正方形,标识屏幕的边线;所画的正方形的中心为原点,用铅笔画出原点位置,所用铅笔痕迹宽≤1mm。

二、要求    

01

设置运动目标位置复位功能。

执行此功能,红色光斑能从屏幕任意位置回到原点。

光斑中心距原点误差≤2cm

02

启动运动目标控制系统。

红色光斑能在 30 秒内沿屏幕四周边线顺时针移动一周,移动时光斑中心距边线距离≤2cm

03

用约1.8cm宽的黑色电工胶带沿A4纸四边贴一个长方形,构成A4靶纸

将此A4靶纸贴在屏幕自定的位置。

启动运动目标控制系统,红色光斑能在30秒内沿胶带顺时针移动一周。

超时不得分,光斑完全脱离胶带一次扣2分,连续脱离胶带移动5cm以上记为0分。

04

将上述 A4 靶纸以任意旋转角度贴在屏幕任意位置。启动运动目标控制系统,要求同(3)。

设计要求        

一、运动目标控制理论    

在运动控制系统中,基于OpenMV识别目标点及轨迹并传送坐标数据给MCU,由主控MCU调整PWM输出占空比实现对舵机运动参数的调整,从而控制云台转动实现对运动目标的复位、轨迹移动、循迹等功能。首先,将OpenMV固定在合适位置以观测到完整的目标屏幕,利用OpenMV识别红色激光返回的坐标点(以下简称红斑),将激光笔依次在屏幕上移动。基于基础题2要求,用激光笔在屏幕铅笔画的边线上标记8个坐标点(拥有四个顶点,每两个顶点之间各取一个中点),分别按下按键记录坐标在MCU中,最后控制二维云台依次将记录的每一个点都走一遍。(运动目标控制皆使用记录坐标构建坐标系的方法)

对于运动控制系统的循迹功能(基础题目3,4),需要通过OpenMV完成对黑色A4纸边框的识别以确定矩形顶点坐标,利用顶点坐标分别计算出矩形四条边框斜率,基于顶点及边框斜率计算得到每条边框上的20个标记点(经过测试,20个标记点效果较为理想)。最后识别红斑坐标,控制二维云台依次沿标记点完成移动,即可实现对黑色矩形的循迹功能。

二、自动追踪系统方法    

在自动追踪系统中,OpenMV需要完成对红斑以及绿色激光笔的识别(以下简称绿斑),因此需要单独将OpenMV固定在二维云台旁边,不随云台移动。OpenMV将识别d的坐标数据通过串口返回到主控端,系统中对红斑和绿斑设定有不同的帧头帧尾防止误判,主控接收到坐标数据之后再分别对它们的横纵坐标值相减以获取两运动目标的相对距离。根据两坐标差值的正负,可获知两光斑的相对坐标位置。这时只需要利用红色和绿色X、Y轴的差值,最后控制二维云台的x,y轴增加或者减小角度即可。

在测试过程中,发现PWM舵机偶尔莫名抖动,分析这是由于坐标数据存在噪声导致。因此,本项目中采用采用卡尔曼滤波对OpenMV传送的坐标数据进行对其滤波,具体公式如下:

mcu

从而让OpenMV反馈回来的坐标与驱动MG995舵机变得更加稳定,能够完成设计要求。

A:状态转移矩阵

X(k-1):k-1时刻 状态最优估计值 B:控制输入矩阵

U(k):k时刻 状态输入控制量

W(k):k时刻 卡尔曼增益

  设计图    

mcu

运动控制系统硬件原理图

mcu

自动追踪系统硬件原理图


mcu

控制程序流程图

mcu

自动跟踪系统主流程图

mcu

自动跟踪系统串口流程

mcu

自动跟踪系统OpenMV流程图







审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分