做百度推广的网站吗,wordpress不显示评论,做机械设备的做哪个网站推广较好,网络运营怎么学前言 本人是一名嵌入式学习者#xff0c;在大学期间也参加了不少的竞赛并获奖#xff0c;包括但不限于#xff1a;江苏省电子设计竞赛省一、睿抗机器人国二、中国高校智能机器人国二、嵌入式设计竞赛国三、光电设计竞赛国三、节能减排竞赛国三。
后面会经常写一下博客… 前言 本人是一名嵌入式学习者在大学期间也参加了不少的竞赛并获奖包括但不限于江苏省电子设计竞赛省一、睿抗机器人国二、中国高校智能机器人国二、嵌入式设计竞赛国三、光电设计竞赛国三、节能减排竞赛国三。
后面会经常写一下博客分享一下资料、经验如果想了解其他项目、技术可以去B站搜星汇极客主页链接星汇极客
此外还开发了个人网站里面有一些资料和源码供下载星汇极客网站 火线速递这个赛道可以参加很多比赛睿抗机器人、中国高校智能机器人、全球算法等比赛都有专门的赛道而且比赛规则都是差不多的 。有兴趣可以好好做一下这个项目。
二、2024睿抗机器人大赛-火线速递赛道
1、题目解析 我们需要做两个东西一个是小车机器人一个是传送带炮台抛投装置小车用来在地图中循迹、抓取沙包传送带放在运转区、抛投装置放在发射区用来把沙包抛出去。
地图 任务 1巡线机器人从起止点出发通过巡线前进
任务 2弹药抓取机器人到弹药库抓取弹药三种颜色的弹药随机顺序放在弹药库内。
任务 3弹药转运机器人抓取弹药继续沿引导线前进进入发射区并由在转运去内将弹药转移至发射机构上
任务 4弹药发射发射机构在监测到弹药到位后将弹药发射进打靶区内以弹药的最终落点计打靶环数
任务 5弹药巡回 射结束后机器人主动巡回弹药并将弹药运送至回收区内对应的色框内。
PS看着这五个任务可能不理解的话我画个线路图出来就清晰了。 思路1、小车从起点出发到弹药库抓取沙包随后自行选择路线循迹到转运区。
2、将沙包放到传送带上面传送到发射区的炮台上由炮台上的抛投装置将沙包抛投出去打靶区的一圈圈圆环是计分的按最终落点为准中间5分往外减少。
3、小车在将沙包放到传送带上后需要循迹往回走在沙包落地后前往打靶区在14处进入中间正方形区域让小车不用黑线循迹让小车一直慢慢往前走可利用OpenMV摄像头调整小车方向识别到沙包后抓取并按16处走。
4、按16处走遇到全黑线调转方向循迹黑线走到回收区按沙包颜色放到对应位置里随后前往弹药库抓取第二个沙包以此类推将三个沙包抓取、运转、抛投、寻回、放置完全再回到起止点停下。
2、比赛答疑、注意点
1小车起点是让灰度传感器在黑线处还是整体在起止点里面?
答我在比赛时看到都是可以的我自己是选择在起止点框里面出发。
2路线是固定的吗
答按自己的选择来可以到左边的运转区传送也可以到右边的。PS你可以把三个沙包全抛了再去寻回也可以这样可以留个保底。
3在运转区这里实际地图有两条黑虚线的你可以贴上黑胶带虚线里面你可以放置传送带、炮台。 4重点一定要做一个好的爪子我们一开始没注意到后面发现沙包夹着会掉下去。滑轨建议买一个15cm的比较好把沙包放到传送带上面。
5想到再更新...
6虽然历经坎坷最后也是获得了国二。 3、关键代码
说明代码是在官方的STM32HAL库源码上修改的官方代码也有些是错的需要自己去调试修改。
注意源码用到了FreeRTOS没有学过的也不用慌代码不在main.c里写只需要知道任务执行代码在RunTask.c里就行了根据自己的路线选择把任务代码修改。
1黑线路口判定修改
在track.c中。PS循迹用了9个灰度传感器它这里是根据识别到黑线的数量来判断路口的如果你的小车识别路口可能误判可以修改成 x数字就行。 2灰度反馈值
在track.c中。PS这个是PID的反馈值调整电机速度数值越大左右电机速度差越大用来微调小车沿黑线直走方向。 3舵机控制
在servo.c中。
1、控制爪子抓取占空比最小0最大2000。 2、控制爪子释放 3、注意下面这个是控制360°舵机占空比是1500停止转动大于1500上升小于1500下降用延时控制转动时间。这个函数功能是控制爪子上去碰到上面的微动开关停止。它跟180°舵机不同的。 4PID参数
在MoveTask.h中。这里是调节PID的参数P是比例I是积分D是微分。
可以这样理解调P改变车的起始速度调I改变车的加速度调D是减速让小车最终趋于稳定行驶。如果车过于晃动可以调小I增加D。 5任务执行重点
在RunTask.h中。调节车速 在RunTask.c中。控制小车的任务执行流程。这里面很关键
第一个函数这个是控制小车从起点出发调用单圈函数实现跑三圈后回到起止点。、
RunMode是要执行的功能执行完做下一个功能。
tim在这个函数里是计时了多少ms的意思。重要
tick是FreeRTOS里的滴答计时不用管。 单圈函数控制小车走一圈实现抓取、运转、抛投、寻回、放置沙包又去抓取沙包。 SingleMode是要执行的功能执行完做下一个功能。
SingleTim计时了多少msSingleTim500意思是在500ms内执行抓取这个功能SingleTim700意思是在700-500200ms内执行后退的功能。
4、结
因为代码实在是太多了不一一解释只能把关键代码讲一下。
如果你觉得这篇文章用帮助请点个赞。关注下方获取更多资源