当前位置: 首页 > news >正文

2024年电赛H题全开源

当题目出来的的那一刻,看到了M0芯片,我们实验室只有一块板子,并且我没有接触过M0,电赛只准备了TI的MSP430f5529。但是我并没有放弃,决然的选择了H题。基本上将四问全做出来,可是测试由于使用了感为科技的寻迹模块,因此只测试了题目的第一问。

一、元器件选择

小车底盘我们选择了轮趣科技的MG310电机,加48mm的轮子。

控制MCU选择M0G3507

寻迹感为科技的寻迹

角度传感器采用JY61P

PCB开源地址:

代码开源链接:Gitee

三、题目规划与思路

题目主要就是小车需要再没有黑线的地方固定一个角度走直线,在黑线部分进行寻迹,因此我们使用角度传感器获取角度数据,采用PID控制让小车走直线到达黑线七点,再采用寻迹PID使小车寻到黑线末端。

OLED负责显示菜单,便于我们控制小车执行任务

角度传感器和MCU之间采用串口通讯获取角度数据

四、问题分析与解决

由于角度采用PID控制,但是角度传感的值是从-180到+180,这虽然是线性数据,但是当小车在运动旋转180度之后角度会从-180直接变为180,这使得我们无法进行PID控制。解决的方法就是,将角度值转化弧度值,因为sin-180=sin180,这样角度数据就连续起来了。

小车停止位置采用距离控制停止不准确的问题,最终方案是当小车寻不到黑线时我们就认为到达A,B,C,D四个点。

五、总结

在制作小车过程中虽然遇到了很多困难与挫折但是我们要坚持下来,解决问题才是根本,有错误必有源头,顺着错误找源头才是正解!

代码地址:empty_LP_MSPM0G3507_nortos_ticlang · fighter/电子设计大赛 - 码云 - 开源中国 (gitee.com)

视频链接:【fighter】视频已打包,欢迎围观!_哔哩哔哩_bilibili

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 深度学习(YOLO、DETR) 十折交叉验证
  • 一个简单的Rtmp推流客户端(QT录音,OpenCV摄像,FFmpeg编码推流)
  • 模糊Smith智能控制方法的研究 及其单片机实现
  • 打造聊天流式回复效果:Spring Boot+WebSocket + JS实战
  • Python办公自动化:初识 `openpyxl`
  • Ubuntu离线安装库并解决依赖关系
  • 发信息(c语言)
  • golang提案,内置 Go 错误检查函数
  • 【前端】NodeJS:记账本案例优化(token)
  • leetCode - - - 双指针
  • 解密JVM崩溃(Crash)-学习笔记
  • qt-12工具盒(ToolBox)
  • 数学基础 -- 指数增长与指数衰变
  • 使用Go语言将PDF文件转换为Base64编码
  • Wireshark分析工具
  • 【译】JS基础算法脚本:字符串结尾
  • 345-反转字符串中的元音字母
  • Android单元测试 - 几个重要问题
  • CSS 三角实现
  • el-input获取焦点 input输入框为空时高亮 el-input值非法时
  • JavaScript 基础知识 - 入门篇(一)
  • JavaScript学习总结——原型
  • js算法-归并排序(merge_sort)
  • SwizzleMethod 黑魔法
  • Synchronized 关键字使用、底层原理、JDK1.6 之后的底层优化以及 和ReenTrantLock 的对比...
  • 大型网站性能监测、分析与优化常见问题QA
  • 当SetTimeout遇到了字符串
  • 给初学者:JavaScript 中数组操作注意点
  • 聊聊spring cloud的LoadBalancerAutoConfiguration
  • 扑朔迷离的属性和特性【彻底弄清】
  • python最赚钱的4个方向,你最心动的是哪个?
  • 移动端高清、多屏适配方案
  • ​字​节​一​面​
  • # Swust 12th acm 邀请赛# [ E ] 01 String [题解]
  • #1014 : Trie树
  • #1015 : KMP算法
  • #includecmath
  • #pragam once 和 #ifndef 预编译头
  • #如何使用 Qt 5.6 在 Android 上启用 NFC
  • #我与Java虚拟机的故事#连载15:完整阅读的第一本技术书籍
  • $$$$GB2312-80区位编码表$$$$
  • $.extend({},旧的,新的);合并对象,后面的覆盖前面的
  • $redis-setphp_redis Set命令,php操作Redis Set函数介绍
  • (2024)docker-compose实战 (9)部署多项目环境(LAMP+react+vue+redis+mysql+nginx)
  • (LLM) 很笨
  • (八)Flink Join 连接
  • (不用互三)AI绘画工具应该如何选择
  • (二)基于wpr_simulation 的Ros机器人运动控制,gazebo仿真
  • (十八)Flink CEP 详解
  • (四十一)大数据实战——spark的yarn模式生产环境部署
  • (一)80c52学习之旅-起始篇
  • *算法训练(leetcode)第四十五天 | 101. 孤岛的总面积、102. 沉没孤岛、103. 水流问题、104. 建造最大岛屿
  • .NET DataGridView数据绑定说明
  • .Net IOC框架入门之一 Unity
  • .NET 指南:抽象化实现的基类