版本协议

GPL 3.0

标签
专业版
#第11届立创电赛##第11届立创电赛#基于TI主控的激光打靶小车

创建时间:1周前

81 0

描述

<div> <p style="line-height:1.8;"> </p> <h3 style="line-height:1.8;">* 1、项目功能介绍</h3> <hr> <p><span style="font-family:'宋体';">本设计小车底盘部分以</span><span style="font-family:'宋体';">TI(MSPM03507)的最小系统为控制核心,结合TB6612电机驱动、八路灰度传感器、MG310霍尔编码电机等组件构建了能够实现按键切换模式以及按键改变循迹圈数的循迹小车。云台部分以 STM32 的最小系统为控制核心,通过K230视觉识别模块,D36A步进电机驱动控制步进电机云台,利用图像识别以及 PID 算法,自行瞄准装置能够实现1.启动瞄准模块后,自动瞄准发射激光击中靶心;2.靶纸旋转任意角度后,启动瞄准模块后,自动瞄准发射激光击中靶心3.光斑能在 20s 内沿靶纸黑色胶带内空白处同步移动一周等功能。</span></p> <p style="line-height:1.8;"> </p> <h3 style="line-height:1.8;">*2、项目属性</h3> <hr> <p>系统框图如图1所示,主要由电机驱动模块、主控M0G3507模块、mpu6050陀螺仪模块、OLED模块、LCD模块、云台控制驱动、云台模块、视觉K230模块、电源输入部分组成。</p> <p>系统组成原理框图如图所示:</p> <p>图如图所示:</p> <p style="line-height:1.8;"><img src="//image.lceda.cn/pullimage/lZbgGnzRVBY2b3jYeKkpXLWp2HWS5kYoJP10kLrM.png" alt="" width="1200" height="844"><img src="//image.lceda.cn/pullimage/m85xkzANsb3Y7q3S149hI6jJ86g8SdfYfqkCLred.png" alt="" width="1200" height="888"></p> <h3 style="line-height:1.8;"> </h3> <h3 style="line-height:1.8;"> </h3> <h3 style="line-height:1.8;"> </h3> <h3 style="line-height:1.8;">* 3、开源协议</h3> <hr> <p><strong>GPL3.0开源协议;</strong></p> <p style="line-height:1.8;"> </p> <p style="line-height:1.8;"> </p> <p style="line-height:1.8;"> </p> <h3 style="line-height:1.8;">*4、硬件部分</h3> <hr> <p style="line-height:1.8;">主控底盘板原理图如图<img src="//image.lceda.cn/pullimage/QrldOUOAWnlpShzaNZTUWmAvMN6VabdvsJftZpci.png" alt="" width="1200" height="1200"></p> <p style="line-height:1.8;">云台控制板原理图如图</p> <p style="line-height:1.8;"><img src="//image.lceda.cn/pullimage/wbumVQ1dU4x50dK0SbkNu0YDdji31LFrO1EaHAEc.png" alt="" width="1200" height="1200"></p> <p style="line-height:1.8;"> </p> <p style="line-height:1.8;"> </p> <p style="line-height:1.8;"> </p> <h3 style="line-height:1.8;">*5、软件部分</h3> <hr> <p><span style="font-family:'宋体';">5.1</span>、底盘控制</p> <p><span style="font-family:'宋体';">采用直流电机配合</span>TB6612驱动芯片,原因是直流电机响应速度快,适合<span style="font-family:'宋体';">灰度</span><span style="font-family:'宋体';">追踪的实时性要求。</span>TB6612是双路驱动芯片,可同时控制两个电机。每个电机需要三路控制信号:一路PWM信号控制速度,两路GPIO信号控制方向。方向控制采用01正转、10反转、00刹车的逻辑。TB6612的电机电源与逻辑电源取自5V,与<span style="font-family:'宋体';">MSPM0G3507</span><span style="font-family:'宋体';">的</span>IO电平匹配<span style="font-family:'宋体';">,</span><span style="font-family:'宋体';">STY引脚直接外接3.3V高电平</span><span style="font-family:'宋体';">,无需额外</span><span style="font-family:'宋体';">IO口配置</span><span style="font-family:'宋体';">。</span></p> <p><span style="font-family:'宋体';">为了实现对直流电机的闭环控制,在电机尾部安装了编码器。该编码器每圈输出</span>500个正交脉冲,经<span style="font-family:'宋体';">MSPM0G3507</span><span style="font-family:'宋体';">定时器的编码器模式四倍频后可获得</span>2000个脉冲每圈的分辨率。<span style="font-family:'宋体';">MSPM0G3507</span><span style="font-family:'宋体';">通过读取定时器计数值即可获得电机的实际转速,进而与目标值进行比较,形成</span>PID控制。</p> <p style="line-height:1.8;"><span style="font-family:'宋体';">八路灰度传感器用于地面巡线或标识识别。八个传感器一字排列,每个传感器输出数字电平,白色地面输出高电平,黑色线条输出低电平。</span><span style="font-family:'宋体';">MSPM0G3507</span><span style="font-family:'宋体';">通过八个</span>GPIO口同时读取各路状态,然后计算出当前黑线相对于底盘中心的偏差值。偏差计算方法是:遍历八个传感器,将检测到黑线的传感器序号减去中心位置(3.5)后累加,再除以检测到的黑线总数,得到范围在负3.5到正3.5之间的偏差值。该偏差值作为PID控制器的输入,用于控制底盘转向以跟随黑线。</p> <p style="line-height:1.8;">5.2、云台控制</p> <p><span style="font-family:'宋体';">系统上电后,</span>STM32首先完成外设初始化,包括定时器的PWM输出、编码器接口、I2C总线、UART通信和GPIO方向配置。随后进入主循环,等待K230通过UART发送指令。</p> <p><span style="font-family:'宋体';">当</span>K230发送电机控制指令时,STM32解析地址字段:若为X轴直流电机,则根据方向字段设置AIN1和AIN2的电平,并根据速度字段设置PWM占空比;若为Y轴直流电机,同理设置BIN1、BIN2和PWM;若为步进电机,则启动定时器以指定频率输出脉冲,同时设置方向引脚的电平;若为激光器,则直接控制GPIO输出高低电平。</p> <p><span style="font-family:'宋体';">与此同时,</span>STM32以固定周期读取编码器计数值和陀螺仪数据,打包后通过UART发送给K230。K230收到这些反馈数据后,结合视觉识别的目标位置,计算出新的控制量并发送给STM32,形成完整的闭环控制。</p> <p style="line-height:1.8;"><span style="font-family:'宋体';">工作模式通过</span>K230上的物理按键切换。支持四种模式:空闲模式、中点跟踪模式、画矩形轨迹模式和画圆形轨迹模式。在空闲模式下,所有电机停止,激光器关闭。在中点跟踪模式下,视觉系统识别矩形目标,PID控制器计算出偏差后驱动云台使目标保持在画面中央,同时激光器在对准目标3秒后自动开启作为指示。在画矩形轨迹模式下,云台按预设的矩形路径运动,每圈耗时8秒。在画圆形轨迹模式下,云台按圆形路径运动,每圈耗时20秒。模式切换时,STM32会自动复位PID积分项并停止所有电机,</p> <p style="line-height:1.8;">5.3、视觉算法</p> <p><span style="font-family:'宋体';">算法为</span>cv_lite.grayscale_find_rectangles_with_corners<span style="font-family:'宋体';">,</span><span style="font-family:'宋体';">正常参数</span>(c1=30, c2=80)用于精确检测,宽松参数(c1=5, c2=30)用于重新捕获大目标,防止目标丢失的关键逻辑。</p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> </p> <p style="line-height:1.8;"> </p> </div>

文档

BOM

附件

附件名 下载
云台控制板.zip
底盘控制板.zip

成员

评论(0)

  • 表情
    emoji
    小嘉工作篇
    小嘉日常篇
  • 图片
成功
工程所有者当前已关闭评论
goToTop
svg-battery svg-battery-wifi svg-books svg-more svg-paste svg-pencil svg-plant svg-ruler svg-share svg-user svg-logo-cn svg-double-arrow