1 Star 16 Fork 0

oufen/2022年电赛B题-自动泊车系统

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MulanPSL-2.0

文章链接

22年电赛B题——具有自动泊车功能的电动车——做题记录以及经验分享

前言

这道题目也是小车类电赛题目,十月份的电赛题,由于之前积累了一些经验,这道题目在做下来的感觉还行,但是我们看题目没有仔细审题,和题目要求有一些些偏差,但是基础大功能还是做出来辽,大家还是可以参考的

这道题目,就是我们日常生活中的科目二,倒车入库和侧方停车,要求使用前轮转向的四轮电动车,限制了车型,这是一点

但是没有限制MCU,即大家可以使用自己觉得容易上手和熟悉的MCU进行做题

这道题目我们采用的是TI的MCU,型号为TIM4C123G6HPM,就是下面这块小板子,除了引脚稍微少点,熟悉使用后和32差不多,能够很快上手

在这里插入图片描述

==当时我们考虑到,如果今年电赛题目限制TI的MCU,所以这道题目采用的TI的MCU进行做题==


赛题分析

我们首先来看这道题目的要求,基础要求就是,分别独立完成倒车入库和出库的,分别独立完成侧方入库和出库

一切都是在这个基础上进行的 在这里插入图片描述 在这里插入图片描述

根据题目,我们可知,就是倒车入库和侧方停车,不同题目要求就是邻库是否有车,是单步倒车入库或侧方停车还是连续进行

好,我们根据题目来分析

1. 车型选择 2. 沿库线边线循迹 3. 倒库停止准备倒车标志 4. 倒库操作or侧方入库操作 5. 邻库有车,小车进库和出库

这道题目主要最关键的还是车型的选择准备倒库倒车停止标志


1、车型的选择

这道题目,==限制了车型,要求必须使用前轮转向的四轮小车==

由于在跟随小车系统中使用过前轮舵机转向的四轮小车,所以这道题目我们采用的是前轮舵机转向,后轮为驱动轮的四轮小车

但是我们由于是练习,并未在小车的大小上仔细深究,还是把之前做跟随小车系统中的小车修改了一下结构,直接使用

而且注意,题目在小车的大小也做了限制,要求如下 在这里插入图片描述

所以这道题目不同于之前限长小于25,车型变大了,对于倒车入库和侧方停车还是有些难度的

建议大家根据题目要求来合理选择自己的车型

在赛前多准备几种车型,多留一手


2、沿库边循迹

题目要求小车右侧投影离库边线约为5cm

这道题目这里的要求我们忽略了,所以在做题时并不是距离库边线5cm,一丢丢小瑕疵

在这里插入图片描述 在这里插入图片描述

这个如何实现呢,基础的红外、灰度当然不能实现,因为库边线在小车右方,所以只能采用摄像头进行循迹

这里使用的是摄像头模拟灰度传感器的方式,根据小车的运动姿态,给出不同的偏差值,小车再根据传回来的偏差值err,对自身的姿态进行纠正,让小车始终处于巡线期望值前进

和前两期分享的知识点相同,这点就不做过多重复介绍了

大家可以去看前两期分享的博客,里面有详细的介绍,关于小车循迹的几种方法以及32端如何接收OpenMv传回来的偏差值进行PID计算


3、倒库停止准备倒车标志

小车的主要目的还是倒车入库or侧方停车,当小车循迹前进时,什么时候停车准备倒库呢

我们是将摄像头的右上部分,划分感兴趣区域,然后进行模板匹配的方式,进行匹配

因为大家可以看到无论是倒车入库还是侧方停车,第三个库的库角都和前两个的特征不同,根据这个特征就可以进行模板匹配

在这里插入图片描述 在这里插入图片描述

当摄像头匹配到库角标志时,发送标志位给小车,小车根据标志位进行停车,准备倒库


4、倒库操作or侧方入库操作

当小车识别到准备倒库标志后,后面的操作我基本上是写死的

  • 先往前走一段,打方向向后倒车,倒车到与车库平齐,方向回正,向后倒库

这里的切换时机是根据小车行进的距离进行判断,还有向后打方向倒车时,可以给后轮一个小小的差速,更加方便小车向后倒车

  • 进库后停止2s,准备出库,出库后继续巡线,直至侧方停车停止线的识别

侧方停车的步骤基本上和倒车入库相同

大家要找到合适的时机以及合适的舵机方向(即PWM),然后衔接起来

就完成了倒库或者侧方停车

当然,我在B站上,也看到很多大佬的入库非常丝滑,很值得学习 无名小哥的教程就起初给了我很大的启发 大家 可以多逛逛B站,发掘一下自己的灵感


5、邻库有车,小车进库和出库

这一点我们发现,如果采用上述说过的方法,有很大可能识别不到准备倒库停止标志,因为可能邻库的车把库角挡住了,然后摄像头识别不到或者是识别的概率大大降低

这一点我们还未解决,这也是瑕疵之一,有概率识别不到,小车就直接跑了,倒库失败

由于时间紧迫,我们这道题目就做了个大概,基础倒库和侧方均可实现,但是有瑕疵,但是程序逻辑和基础思路大家还是可以参考学习的


调试经验分享

其实这道题目如果只做倒库或者侧方的话,基本的调试可能更多的在摄像头那边,因为要保证停车标志的准确性

剩下的就都是小车这边的逻辑书写了,还有调试最多的估计就是各种状态的切换,比如打角打多少角度,后退前进多少距离,巡线的调试

再就没啥了

邻库有车还是有概率识别不到倒库停止标志,待改进


还有一点,就是要注意仔细阅读题目,使用笔来画出题目的各种要求,仔细审题,不然正式比赛的话,可能因为一时的疏忽,造成颗粒无收


总结

这是关于自己刷真题时,做题的记录和经验分享,都是自己经过实际测试和调试后得出的方案,将这些给大家分享,希望能够帮助到大家

在做这道题目后 我总结出了,适合自己的一套程序流程代码,非常好用,如各种状态切换等

==同样,我也开源出了这道题目的代码,大家可以参考学习==


开源链接

大家可以参考学习

大家可以自行访问,进行下载

下方为gitee开源链接,请大家点一个star,谢谢

oufen / 2022年电赛B题-自动泊车系统

木兰宽松许可证, 第2版 木兰宽松许可证, 第2版 2020年1月 http://license.coscl.org.cn/MulanPSL2 您对“软件”的复制、使用、修改及分发受木兰宽松许可证,第2版(“本许可证”)的如下条款的约束: 0. 定义 “软件”是指由“贡献”构成的许可在“本许可证”下的程序和相关文档的集合。 “贡献”是指由任一“贡献者”许可在“本许可证”下的受版权法保护的作品。 “贡献者”是指将受版权法保护的作品许可在“本许可证”下的自然人或“法人实体”。 “法人实体”是指提交贡献的机构及其“关联实体”。 “关联实体”是指,对“本许可证”下的行为方而言,控制、受控制或与其共同受控制的机构,此处的控制是指有受控方或共同受控方至少50%直接或间接的投票权、资金或其他有价证券。 1. 授予版权许可 每个“贡献者”根据“本许可证”授予您永久性的、全球性的、免费的、非独占的、不可撤销的版权许可,您可以复制、使用、修改、分发其“贡献”,不论修改与否。 2. 授予专利许可 每个“贡献者”根据“本许可证”授予您永久性的、全球性的、免费的、非独占的、不可撤销的(根据本条规定撤销除外)专利许可,供您制造、委托制造、使用、许诺销售、销售、进口其“贡献”或以其他方式转移其“贡献”。前述专利许可仅限于“贡献者”现在或将来拥有或控制的其“贡献”本身或其“贡献”与许可“贡献”时的“软件”结合而将必然会侵犯的专利权利要求,不包括对“贡献”的修改或包含“贡献”的其他结合。如果您或您的“关联实体”直接或间接地,就“软件”或其中的“贡献”对任何人发起专利侵权诉讼(包括反诉或交叉诉讼)或其他专利维权行动,指控其侵犯专利权,则“本许可证”授予您对“软件”的专利许可自您提起诉讼或发起维权行动之日终止。 3. 无商标许可 “本许可证”不提供对“贡献者”的商品名称、商标、服务标志或产品名称的商标许可,但您为满足第4条规定的声明义务而必须使用除外。 4. 分发限制 您可以在任何媒介中将“软件”以源程序形式或可执行形式重新分发,不论修改与否,但您必须向接收者提供“本许可证”的副本,并保留“软件”中的版权、商标、专利及免责声明。 5. 免责声明与责任限制 “软件”及其中的“贡献”在提供时不带任何明示或默示的担保。在任何情况下,“贡献者”或版权所有者不对任何人因使用“软件”或其中的“贡献”而引发的任何直接或间接损失承担责任,不论因何种原因导致或者基于何种法律理论,即使其曾被建议有此种损失的可能性。 6. 语言 “本许可证”以中英文双语表述,中英文版本具有同等法律效力。如果中英文版本存在任何冲突不一致,以中文版为准。 条款结束 如何将木兰宽松许可证,第2版,应用到您的软件 如果您希望将木兰宽松许可证,第2版,应用到您的新软件,为了方便接收者查阅,建议您完成如下三步: 1, 请您补充如下声明中的空白,包括软件名、软件的首次发表年份以及您作为版权人的名字; 2, 请您在软件包的一级目录下创建以“LICENSE”为名的文件,将整个许可证文本放入该文件中; 3, 请将如下声明文本放入每个源文件的头部注释中。 Copyright (c) [Year] [name of copyright holder] [Software Name] is licensed under Mulan PSL v2. You can use this software according to the terms and conditions of the Mulan PSL v2. You may obtain a copy of Mulan PSL v2 at: http://license.coscl.org.cn/MulanPSL2 THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE. See the Mulan PSL v2 for more details. Mulan Permissive Software License,Version 2 Mulan Permissive Software License,Version 2 (Mulan PSL v2) January 2020 http://license.coscl.org.cn/MulanPSL2 Your reproduction, use, modification and distribution of the Software shall be subject to Mulan PSL v2 (this License) with the following terms and conditions: 0. Definition Software means the program and related documents which are licensed under this License and comprise all Contribution(s). Contribution means the copyrightable work licensed by a particular Contributor under this License. Contributor means the Individual or Legal Entity who licenses its copyrightable work under this License. Legal Entity means the entity making a Contribution and all its Affiliates. Affiliates means entities that control, are controlled by, or are under common control with the acting entity under this License, ‘control’ means direct or indirect ownership of at least fifty percent (50%) of the voting power, capital or other securities of controlled or commonly controlled entity. 1. Grant of Copyright License Subject to the terms and conditions of this License, each Contributor hereby grants to you a perpetual, worldwide, royalty-free, non-exclusive, irrevocable copyright license to reproduce, use, modify, or distribute its Contribution, with modification or not. 2. Grant of Patent License Subject to the terms and conditions of this License, each Contributor hereby grants to you a perpetual, worldwide, royalty-free, non-exclusive, irrevocable (except for revocation under this Section) patent license to make, have made, use, offer for sale, sell, import or otherwise transfer its Contribution, where such patent license is only limited to the patent claims owned or controlled by such Contributor now or in future which will be necessarily infringed by its Contribution alone, or by combination of the Contribution with the Software to which the Contribution was contributed. The patent license shall not apply to any modification of the Contribution, and any other combination which includes the Contribution. If you or your Affiliates directly or indirectly institute patent litigation (including a cross claim or counterclaim in a litigation) or other patent enforcement activities against any individual or entity by alleging that the Software or any Contribution in it infringes patents, then any patent license granted to you under this License for the Software shall terminate as of the date such litigation or activity is filed or taken. 3. No Trademark License No trademark license is granted to use the trade names, trademarks, service marks, or product names of Contributor, except as required to fulfill notice requirements in Section 4. 4. Distribution Restriction You may distribute the Software in any medium with or without modification, whether in source or executable forms, provided that you provide recipients with a copy of this License and retain copyright, patent, trademark and disclaimer statements in the Software. 5. Disclaimer of Warranty and Limitation of Liability THE SOFTWARE AND CONTRIBUTION IN IT ARE PROVIDED WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR IMPLIED. IN NO EVENT SHALL ANY CONTRIBUTOR OR COPYRIGHT HOLDER BE LIABLE TO YOU FOR ANY DAMAGES, INCLUDING, BUT NOT LIMITED TO ANY DIRECT, OR INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING FROM YOUR USE OR INABILITY TO USE THE SOFTWARE OR THE CONTRIBUTION IN IT, NO MATTER HOW IT’S CAUSED OR BASED ON WHICH LEGAL THEORY, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 6. Language THIS LICENSE IS WRITTEN IN BOTH CHINESE AND ENGLISH, AND THE CHINESE VERSION AND ENGLISH VERSION SHALL HAVE THE SAME LEGAL EFFECT. IN THE CASE OF DIVERGENCE BETWEEN THE CHINESE AND ENGLISH VERSIONS, THE CHINESE VERSION SHALL PREVAIL. END OF THE TERMS AND CONDITIONS How to Apply the Mulan Permissive Software License,Version 2 (Mulan PSL v2) to Your Software To apply the Mulan PSL v2 to your work, for easy identification by recipients, you are suggested to complete following three steps: i Fill in the blanks in following statement, including insert your software name, the year of the first publication of your software, and your name identified as the copyright owner; ii Create a file named “LICENSE” which contains the whole context of this License in the first directory of your software package; iii Attach the statement to the appropriate annotated syntax at the beginning of each source file. Copyright (c) [Year] [name of copyright holder] [Software Name] is licensed under Mulan PSL v2. You can use this software according to the terms and conditions of the Mulan PSL v2. You may obtain a copy of Mulan PSL v2 at: http://license.coscl.org.cn/MulanPSL2 THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE. See the Mulan PSL v2 for more details.

简介

2022年电子设计竞赛B题-自动泊车系统,就是科目二,倒车入库和侧方停车,这道题在做完后,才看到,要求小车离边线距离约5cm 展开 收起
MulanPSL-2.0
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C
1
https://gitee.com/cyaya6/auto-park-system.git
git@gitee.com:cyaya6/auto-park-system.git
cyaya6
auto-park-system
2022年电赛B题-自动泊车系统
master

搜索帮助

344bd9b3 5694891 D2dac590 5694891