记一次电赛经历总结

[TOC]

20年电赛G题分享

一、赛题

二、电控方案

设计要求

题目要求设计实现一个非接触物体尺寸形态测量装置,具备以下功能:(1)显示目标物体边长或直径,几何形状和目标与测量头的距离。(2)摆放区内中心线上放置目标和背景板,显示距离、 形状、尺寸。(3)自动寻找目标测量,并显示距离、形状、尺寸、用激光笔指示几何中心。(4)立体目标测量,自动寻找目标并判断球类品种、测量与球表面最近距离。

设计思路

以STM32单片机为核心、采用视觉数据处理技术的控制系统,实现对摄像头和激光测距模块的精确控制。由STM32F103单片机作为数据处理系统,数据处理后,将执行信息传递给舵机和激光测距模块组成的执行系统完成目标动作。且整个系统主要由控制器、执行器、摄像头、激光测距模块,OLED显示屏、按键输入和图像处理模块组成。

具体的工作流程为:通过摄像头获得图像数据,识别目标形状,确定目标中心的位置,利用PID闭环来控制舵机,达到控制舵机云台的方向和角度,使得激光束指示出被测目标的中心位置的目的,并得到装置与目标的距离,通过像素点对应的实际距离与装置与目标的距离的拟合函数,进而实现非接触式尺寸自动测量。

模块选择

  1. 测距模块:使用摩天 L1 激光测距模块。通过对激光相位差的检测,感知目标物距离,可以达到毫米级的分辨率。高信噪比使得目标物的颜色、表面粗糙度和材质等对检测结果影响很小,精度高,受干扰比较小,可以用于精确定位,且响应速度快。
  2. 角度调整电机:采用模拟舵机与数字舵机相结合,采用MG995舵机和数字舵机DS3125结合。MG995角度与占空比呈线性关系,力矩大。数字舵机:无反应区小,反应更快,加速和减速时也更迅速、更柔和。提供更高的精度和更好的固定力量。
  3. 控制系统:用单片机作为电机的控制单元。我们采用STM32C8T6单片机,该款单片机资源丰富,16位的单片机使PWM信号的脉冲宽度实现微秒级的变化,从而提高电机的转角精度,STM32读取偏差数据输入控制算法,再将计算结果转化为 PWM信号输出到电机,由于单片机系统是一个数字系统,其控制信号的变化完全依靠硬件计数,所以受外界干扰较小,整个系统可以工作。
  4. 视觉方案:选择的是OpenMV。低成本,功能强大的,集成了OV7725摄像头芯片,和像素更高的OV7725摄像头可以硬件二值化的鹰眼摄像头,像素30万,传输速率达到60fps,视场角达到63°,灵敏度高,拥有很好的低照度。可以满足本系统所需。
  5. 电源方案:单学生电源供电,使用学生电源,优点电压输出稳定,利用率高。

电路框图

电源

系统电源由学生电源为电源,分两路供电,一路为11.1到5.0V给系统板以及外围电路供电,一路为11.1降压到5.5V给舵机OpenMV以及激光测距供电给,两者共地互不干扰。

执行机构控制算法与驱动

1. 控制算法的分析

OpenMV中心差值与舵机转角成正比,而舵机转角与占空比成正比。即本项目通过控制PWM输出就可以控制角度。

本系统采用PID算法来控制角度。系统开始工作后,OpenMV不断采集当前引导标识的位置,并与设定坐标比较,使得舵机转动到指定位置。PID算法控制器由舵机转动角度比例P、角度误差积分I和角度微分D组成。

2. 舵机的控制

本方案中舵机为180度舵机,需要一个20ms左右的时基脉冲控制,脉冲的高电平部分一般为0.5ms-2.5ms范围内的角度控制脉冲部分,总间隔为2ms,本方案中使用TIM1的定时器,通过72分频,每个计数值为1us,可以实现较为精确的控制舵机的转动。

程序的设计

1. 程序设计思路

本程序的输入为四个按键控制,,实现原地定位中心点与读取OpenMV以及激光测距的数据,在设计程序的过程中采用轮询调度的方式来调度程序,以TIM4为时基,做计数,主循环中通过判断计数周期有没有达到任务指定的周期,达到则执行程序,该调度方式,条理清晰、便于扩展。

2. 程序流程图

三、视觉方案

非接触式物体尺寸、形状测量方法分析

  1. 物体的形状:首先寻找色块,得到色块的ROI区域,在ROI区域内采用霍夫变换进行圆识别,以及线段识别,然后遍历线段,过滤无效线段,计算线段角度差,进而识别正三角形,利用四元检测算法来进行矩形识别。对于球体,首先进行圆识别,然后遍历圆内像素点,得到像素点色彩参数的众数,平均数,设定相关阀值,实现球种类识别。

  2. 物体尺寸:根据识别到圆返回的半径、识别到正三角形返回的线段长度、识别到正方形四个顶点坐标解算边长对应的像素点数,以及对摄像头标定得到的单个像素点与激光测得距离的拟合函数,激光测得距离可以计算得到物体尺寸。

数据收集及计算

  1. 摄像头的标定

表格(使用直径为35cm圆进行标定)(关于激光测距,与单个像素点对应长度)

后面接拟合曲线和公式

  1. 物体尺寸计算

屏幕中物体的尺寸(像素点数)n,激光测得摄像头到物体的距离。拟合函数

计算得在距离时,单位像素点对应实际距离

实际物体尺寸

运用最小二乘法单阶拟合,经过大量数据检验得,通过仿真软件,普遍意义上符合该公式。

四、最终成品

本次设计采用模块化思想,先后完成了OpenMV、激光测距、二维舵机云台和电源等模块的设计,较好地完成了题目的基本要求,实现了非接触式物体形状和尺寸自动测量功能。通过摄像头获得图像数据,识别目标形状,确定目标中心的位置,利用PID闭环来控制舵机,达到控制舵机云台的方向和角度,使得激光束指示出被测目标的中心位置的目的,并得到装置与目标的距离,通过像素点对应的实际距离与装置与目标的距离的拟合函数,进而实现非接触式尺寸自动测量。成品图如下

123

五、程序源码

wechat