2024电赛H题参考方案(+视频演示)——自动行使小车

目录

一、题目要求

二、参考资源获取

三、参考方案

1、环境搭建及工程移植

 2、移植MPU6050模块

 3、移植TB6612电机驱动模块

4、整体控制方案+视频演示

总结


一、题目要求

         小编自认为:此次H题属于控制类题目,相较于往年较为简单,功能也算单一,四个题目的时间要求都不是很高,容易得分,其中主要难点可能是TI芯片了,但是资源丰富,那也就不是问题了。

二、参考资源获取

        嘉立创官方为了助力电赛,特地推广了一款TI的开发板——MSP0系列刚好是题目要求的),其中覆盖开发环境的搭建(直接最熟悉的用Keil进行开发,同时搭配图形化配置,简直就是Keil+STM32Cube的开发模式),同时配套各种外设的开发教程以及各类传感器等模块的开发教程,附加源码示例,直接移植即可。

嘉立创电赛开发板x2icon-default.png?t=N7T8https://lceda001.feishu.cn/wiki/JNu0wa35pi4feikXbmlcJRwLnGl

 MSPM0G3507开发板icon-default.png?t=N7T8https://wiki.lckfb.com/zh-hans/dmx/

三、参考方案

1、环境搭建及工程移植

        参考立创平台,搭建开发平台,使用Keil进行开发:

环境配置流程icon-default.png?t=N7T8https://wiki.lckfb.com/zh-hans/dmx/beginner/install.html

         重点是:在Keil环境下安装SysConfig 工具。SysConfig 是一个直观而全面的图形实用程序集合,用于配置引脚、外设、子系统和其他组件。它可助我们直观地管理、发现和解决配置冲突,以便有更多时间去编写核心逻辑代码。如下,其配置界面:

2、相关模块的移植 

 1、移植MPU6050模块

        该模块主要用来转向角度控制等,可以使小车走直,平稳角度转向等。

 2、移植TB6612电机驱动模块

        用以驱动电机。

 控制电机时,最好加上速度环控制,所以需要对编码器进行测速,可以通过配置定时器和外部中断实现测速,可以参考esp32测速方式。

参考内容:编码器相关知识及ESP32-Arduino程序_esp32解算ab编码器-CSDN博客

其他模块根据需要自行移植。。。。。。

4、整体控制方案+视频演示

        这里只是为了验证方案,采用的是STM32为主控,OpenMV摄像头巡线,但巡线原理都一样,都是通过控制黑线与小车灰度的偏差关系。

        最后根据速度环、转向环、巡线环的控制方式验证一下方案。以速度环为整体控制内环,外环由转向环和巡线环选择作用,在遇到黑线时开启巡线环,脱离黑线时开启转向环,其中转向环主要控制小车转向,并且按照某一方向直线行驶。

控制流程框图为:

以下为相关演示视频(原视频,去原声):

2024电赛H题方案演示一

2024电赛H题方案演示二

        方案基本可行,速度稳定且并未到达该车上限,需要进一步的优化控制逻辑,这里使用的是统一速度行驶,可采取变速行使,可进一步提高稳定性和减少整体耗时。明显缺陷:MPU6050存在零漂等,准确度不好,如能用算法解决,稳定性可进一步提高,其次该车的初始摆放位置较为重要, 初始角度为后续转向的参考。


总结

控制的难点就在与ABCD四点之间的丝滑连接,如何让小车又快又稳的运行,最后比拼的就是时间了,可能也是比赛现场的重点评判标准,毕竟选择该题的人多

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/51692.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

谷歌出品,一款免费的智能绘图工具

AutoDraw是由Google开发的一款基于网络的智能绘图工具,旨在通过人工智能技术帮助用户快速、简便地创建图画和图表。该工具于2017年4月11日由谷歌创意实验室推出,并迅速获得了广泛关注。 AutoDraw的核心功能是利用机器学习算法识别用户的草图或涂鸦&…

分布式SQL查询引擎之Presto

Apache Presto 是一个开源的分布式 SQL 查询引擎,旨在高效地对大规模数据集执行交互式查询。Presto 最初由 Facebook 开发,现已成为广泛使用的数据查询工具,特别是在大数据和分析领域。 主要特点 高性能:Presto 通过并行化和内存…

linux运维一天一个shell命令之 top详解

概念: top 命令是 Unix 和类 Unix 操作系统(如 Linux、macOS)中一个常用的系统监控工具,它提供了一个动态的实时视图,显示系统的整体性能信息,如 CPU 使用率、内存使用情况、进程列表等。 基本用法 root…

【A1web 1.0】靶机复现详解!

靶机地址: https://www.vulnhub.com/entry/ai-web-1,353/攻击机:kali 首先虚拟机建一个A1web 1.0靶机 切换nat模式 然后kali扫描 nmap -sV ip段 0/24 扫描出ip进行访问 访问没有什么信息 使用dirb 对网页…

使用 Matlab 绘制带有纹理的柱状图

以下是效果 1. 在 Matlab 里安装两个额外的库: hatchfill2 和 legendflex。 (1)搜索并安装 hatchfill2,用来画纹理 (2) 搜索并安装 legendflex,用来画自定义的图例 2. 代码(说明见注释) data …

排序算法辨析(快速记忆版)(冒泡排序,选择排序,插入排序,希尔排序,归并排序,快速排序)保研面经

选择排序:摸到一叠牌,每次选择出最小的放在合适的位置(第一次放在第一张,第二次放在第二张),实现排序 最好最坏都是 O(n^2) 插入排序:摸牌的时候一张一张摸,每…

每日Attention学习14——Efficient Self-Attention

模块出处 [MICCAI 22] [link] [code] Lesion-aware Dynamic Kernel for Polyp Segmentation 模块名称 Efficient Self-Attention (ESA) 模块作用 高效自注意力 模块结构 模块思想 Self Attention操作在具有优秀的长距离建模能力的同时,也有着较高的计算与内存成…

【DevOps工具链】DevOps工具链的基本组成与功能

DevOps工具链 DevOps工具链的基本组成与功能 目录 引言DevOps概述DevOps工具链组成 版本控制持续集成持续交付与部署配置管理监控与日志管理 典型DevOps工具介绍 GitJenkinsDockerKubernetesAnsiblePrometheus和Grafana DevOps工具链的最佳实践结论 引言 在现代软件开发中&…

缓存策略自定义:Laravel应用性能优化秘籍

缓存策略自定义:Laravel应用性能优化秘籍 在现代Web应用中,缓存是一种提高应用性能和响应速度的有效手段。Laravel框架提供了强大的缓存机制,支持多种缓存驱动,如文件、数据库、Redis等。然而,在某些情况下&#xff0…

Vue 3 状态管理 Pinia 详解

引言 随着 Vue 3 的推出,Pinia 成为了 Vue 社区中一个备受瞩目的状态管理库。它简洁而强大,旨在替代 Vuex,为开发者提供更加灵活的状态管理解决方案。本文将详细介绍 Pinia 的核心概念、安装方法、使用技巧以及如何在 Vue 3 项目中集成 Pini…

学习ruixingkafei过程

一、抓包 手机安装证书,开启VPN抓包,电脑上打开花瓶,在同一个局域网内抓包,这些老一套没什么可说的。 看看我们的抓包结果是不是很美丽,请求内容加密,返回内容也加密,猜测加密方式aes&#xff0…

JWT (JSON Web Token)

🎼个人主页:金灰 😎作者简介:一名简单的大一学生;易编橙终身成长社群的嘉宾.✨ 专注网络空间安全服务,期待与您的交流分享~ 感谢您的点赞、关注、评论、收藏、是对我最大的认可和支持!❤️ 🍊易编橙终身成长社群&#…

AI绘画3分钟解决英文恐惧症,comfyui汉化插件

前言 全面解析:Comfy UI汉化插件的安装与配置指南 本文涉及的工作流和插件,需要的朋友请扫描免费获取哦 引言 本文图片来源网络,侵权联删除。 在全球化的今天,软件界面的本地化是提升用户体验的重要一环。对于许多非英语母语的…

Java面试题基础

基础总结 Java Java 平台无关性 主要通过三个方面实现. Java 语言规范: 通过规定 Java 语言中基本数据类型的取值范围和行为,比如 int 长度为 4 字节,这是固定的。Class 文件: 所有 Java 文件要通过 javac 或者其他一些 java 编…

EasyExcel入门

目录 一、文章简介 二、概念 1.EasyExcel是什么? 2.EasyExcel 能用在哪里? 3.为什么要选用EasyExcel解析excel? 4.如何使用EasyExcel? 三、EasyExcel快速入门 1.环境搭建 2.简单写excel 代码示例 TestFileUtil Employe…

iPhone最全隐藏功能

让你的iphone没有白买!一定要学会以下三十个iphone技巧: 一、正品苹果手机输入“苹果”会出现图标,山寨或其他机型只能打出红色的 二、长按图片中的人像不松,可以自动抠图。 三、Siri换男生,设置-Siri与搜索- Siri声音…

关于ollama+open webui无法局域网访问的解决办法

ollama api本地默认地址:http://127.0.0.1:11434 open webui的默认地址:http://127.0.0.1:3000 如果是本机访问,ollama默认允许本机跨域访问(哈里是看ollama的日志都是OPTIONS请求,bing后发现的)&#xf…

TensorFlow 可用的人脸识别的模型有哪些,各有什么优缺点

在使用TensorFlow进行人脸识别时,有多种可用的模型,每种模型在性能和应用场景方面各有不同。以下是一些常用的人脸识别模型及其优缺点: 1. FaceNet 优点: 高准确性:FaceNet通过计算脸部特征向量并进行向量比较,具有较高的识别准确性。通用性强:生成128维特征向量,可以…

Mysql:删除库下面所有表

Mysql删除库下面所有表 方法一 1、删除数据库: DROP DATABASE your_database_name;2、重新创建数据库: CREATE DATABASE your_database_name;方法二 1、生成删除表语句 SET FOREIGN_KEY_CHECKS 0;SELECT Concat(DROP TABLE IF EXISTS , table_nam…

Linux的NTP配置

一、监控时间: watch date 二、NTP配置 1、查看时间 ntpdate -q 192.168.192.3 ntpdate 192.168.192.3 2、配置时间服务器 vi /etc/ntp.conf server 192.168.192.3 iburst 3、设置时间不允许回调 vi /etc/sysconfig/ntpd OPTIONS"-u ntp:ntp -p /va…