楼主

[校园动态] RMUL2022黑龙江站区域交流会04-哨兵视觉算法及双云台方案分享

[复制链接]
步兵RMUL黑龙江赛务
2022-3-22 00:06:29 只看该作者

马上注册,玩转Robomaster!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
RMUL2022黑龙江站区域交流会最后一期来啦!

【会议主题】
哨兵视觉算法及双云台方案分享
【关键词】哨兵、视觉算法、双云台方案
【形式】
嘉宾分享+自由问答+问卷反馈抽奖
【时间】
北京时间2022/3/10 20:00-21:30
【嘉宾】
哈尔滨工业大学I Hiter战队机械组成员冯智超、视觉组成员邹建

这一期哈尔滨工业大学I Hiter战队哨兵机械负责人冯智超将分享哨兵双云台方案的设计,哨兵视觉负责人邹建将分享关视觉算法方面的经验!希望各战队都能在本次交流中有所收获。

【会议资料】
会议回放:RMUL2022黑龙江站区域交流会04
资料包下载(包含ppt、自由问答环节摘录):https://bbs.robomaster.com/forum.php?mod=attachment&aid=MzE4Njd8OTM3MGYxYTRkYTE1MWZmN2ViMDRkZGI0YmNjZDczNjR8MTcxMzU5NDUzOQ%3D%3D&request=yes&_f=.pdf   https://bbs.robomaster.com/forum.php?mod=attachment&aid=MzE4NjZ8MTU5YjU5MWM0MThjMTZkYTMyODk0OWMyNjFlMWZhOGF8MTcxMzU5NDUzOQ%3D%3D&request=yes&_f=.pdf
畅游知识海洋,更多丰富内容请见培训体系:https://www.robomaster.com/zh-CN/robo/training-system
往期课程沙龙及PPT:https://bbs.robomaster.com/forum ... d=7984&extra=page=1

自由问答摘录:
回答
Q1:打击陀螺时选择时间队列中间点是什么意思?
A1:就是我们时间队列里存的其实是一系列的世界坐标嘛,你在维持它的时候可以直接选择存储那一个中位数,在你更新的时候,然后再计算一次中位数就好。就相当于是它的100个轨迹点,然后你取一个它中间的运动位置。
Q2:底盘辅助轮怎么夹紧轨道的?
A2:两侧的话我们就是通过那个皮筋儿,就是健身用的拉力带。我们把那个拉力带截成我们要的长度,然后绕在铝柱后边那个碳板和前边那个铝柱之间,去把它夹紧,然后用扎带拉死。但是后来我们发现哨兵越跑越快,震动太大了,就夹不住,最后国赛的时候,我们就是拿扎带把它直接扎死,扎到一个我们合适的感觉。然后上下的话(见PPT里哨兵结构)因为上面有一个小的轮子,那个轮子已经很小了,不太方便做悬挂,所以在下面我们是在这个位置(详见交流会04视频回放)我们最后选择了用1.2mm的弹簧钢去进行一个悬挂。然后我们做了很多和这个弹簧钢形状相同的小垫片,因为弹簧钢它经常被压缩之后会被竖形,所以当它变弯了之后往回掰,我们发现它已经变成竖向形变了掰不回去了,那我们就在这个小轮子和这个弹簧钢之间加各种各样的垫片,然后把它再垫高,然后再去支撑。因为一旦进入国赛之后,你打不了几场,就是随时更换就行,寿命的话,可能寿命不会太长,但是够用了。
Q3:怎么用matlab打印视觉的速度、加速度曲线?
A3:这个你就每一帧的时候把它写入到文件里就行了,就是你在运行的过程中肯定会产生中间的状态量,然后你把它写入到一个TXT,然后在matlab再单独写一个程序,在你的哨兵的程序结束以后,你再运行你的matlab程序,你就能看到你上一次测试的结果。
Q4:请问是如何做轨道定位的,或者避免卡柱子的?
A4:轨道定位的话,我们其实上下没有很强的定位,主要是左右。左右的话,就像我刚才说的,用那个扎皮筋儿,或者用那个扎扎带的方式,扎紧就好了。至于那个皮筋和扎带扎到多紧,那个就是反复地试,然后去寻找手感。就是我们扎上之后,让车去跑一下,看它跑的速度是多少,然后经常操作就会有手感,就知道我把它扎多紧,速度是2.0,扎多紧,它速度是2.3,这个操作多了就知道。然后避免卡柱子的话,就是在设计的时候,把中间那个8mm避开就好,这个还是比较简单的。
Q5:你们从动轮的硬度是多少?
A5:我记得上下的小胶轮就是上面那个蓝色的小胶轮它的硬度是35度的,然后下边的那个黑色的就是和弹簧钢相连的那个偏硬一点,是六十度的。左右用扎带去扎的那一侧应该是35度的,在扎带的另一侧那个是应该是60度的,那边比较硬一点。这个硬度是怎么定的,是因为我们有一套自己的哨兵速度预测的一个计算的逻辑,然后我们根据那个去来回推导,最后去订一个硬度,再根据实际情况微调一下。
Q6:如何知道哨兵现在在轨道上的什么位置?
A6: 这个应该是电控方面就是嵌入式方面的问题,我们在气弹簧上会放一个光电门,然后用那个光电门去进行检测当撞柱之后,我们会把起始位置设置为零,然后就往回加,用那个轮子自己的旋转往回加。然后那个主动轮,在撞柱的一瞬间,车辆有晃动,它摩擦力会变小,然后在短时间内由0加到2.3,因为那个速度也比较大,所以它肯定会打滑,就原地打滑3508自己的那个编码器,它会弱一点,所以我们会隔一段时间就校一次准。大家都知道的一个方式,就是识别螺丝帽嘛,就是你在哨兵上,放一个朝下的光电门,把那个距离调整到正好能识别到螺丝帽,但是识别不到轨道的一个距离然后每次经过那个螺丝帽的时候,就是一次位置标定,再结合哨兵的行进方向这个就能很好的预测到这个轨道的位置了。因为轨道就那么长,然后还有四个螺丝帽可以识别这个还是挺好用的。
Q7:装甲板到六、七米的时候,数字识别4mm镜头看不清,换个更好的镜头会有帮助吗?
A7:你把那个原图先拿出来,然后你先看一下你的人眼能不能看清。如果你人眼还看不清的话,你经过那些预处理,那肯定算法更看不清。我们有两个云台,他们的职责是不重复的台会倾向于打近距离的敌人,上台会倾向于打远距离的敌人所以我们上云台的镜头换的是一个长焦的。所以说是一个远视眼,差不多只能看到在4米往外走的。我们上台的镜头,在四米以内的话,就会看得非常的大。如果车跑得很快,比如说像是3m/s之类的,就是完全不做其他动作,可以跑得很快的话,其实在那种长焦镜头下面,装甲很大,所以你一走那个数字或者灯条就不完整了,然后这个时候有可能就会不跟踪了,所以说这个还是看你的取舍。你要换一个那种短焦的话,那肯定就是你能看的装甲板比较小但也说明你这个视野比较大能看到的东西比较多,主要就是这样。
Q8:哨兵怎么防尿弹?
A8:这个就是各家自己的定位方式,叫预置方式。我们学校选择的是在摩擦轮后面放三颗定位珠,学名叫波子螺丝。放三颗波子螺丝,然后通过调三颗螺丝的位置,就是伸进枪管的一个深度,然后去调整弹道,这样也能防止尿弹。防止尿弹其实就是一个子弹过来了,只要后面怎么去让拨弹电机在旋转之前子弹不会越过预置的那个东西进入到摩擦轮,你只要能把它卡在那儿就行像有说用扎带的,有说剪一个矿泉水瓶的,其实方式很多的就是各家每开源一个模型,其实就是同时开源了自己的预置方案,你就可以去了解一下,挑选一个你觉得OK的,然后或者挑选一个你自己喜欢的,然后自己做一套验证机构就好了。
Q9:如果用餐盘轴承有什么坏处吗?
A9:餐盘轴承它的间隙太大了,它那个间隙不是我们能接受的。那个应该叫游隙,但是餐盘轴承大的,甚至我都不想叫它游隙了。就是可以想象一下,我们在吃饭的时候,那个餐盘轴承内圈往往连在那个玻璃上,那个玻璃我们能上下晃,而且幅度很大。这个的话,如果用在哨兵上它的间隙太大了。然后就是即便电机没转,餐盘轴承因为它有间隙,它还会让云台有roll轴的转动,并且也会带来一部分yaw轴的转动,所以它会不方便控制,它的响应不会高的。就是用起来应该没有太大的问题,但是如果你想把云台响应或者跟随响应调到一个很高的状态,我个人认为餐盘轴承应该是做不到的。
Q10:卡尔曼的参数是怎么改的?
A10:如果要调卡曼参数的话,因为你能调的东西其实只有测量的噪声,还有模型的协方差矩阵,为了简化模型,我们就把它设成了对角型。另外一个的话,就是你在调试的过程中看波形。你把当前测量值的波形给画出来,然后再把当前预测值的波形给画出来,最后,比较这两根曲线。因为其实像是要飞5m远的话,它有一个大概是0.2秒左右的飞行时间,一般就是0.2秒左右。然后你会看到它的波形有一个左右的错开来。接着首先你要看它是否平滑,你不能做完滤波以后,它整一个枪管还是在抖动,这样就失去了滤波的一个意义。然后另外一个就是你在它保证平滑的情况下,尽可能让它滞后减少。也就是说你要尽可能的去信任你的模型,比如你将测量的调大,或者将模型的调小,它都可以起到一个更加信任这个测量的作用。你信任测量的话,那它的数据更新得就快了。比如说你可以得到比较好的就是比较及时的一个预测的位置。其实主要还是要把你的测量值还有预测值这两个波形给打出来,你就可以看出来,在调这两个参数的时候,调大调小是差不多的。其实你只要固定测量或者固定模型的一个协方差矩阵,调另外一个和两个都调,效果是差不多的。
Q11:请问有试过刹车机构吗?如果有尝试过请问刹车皮是怎么选择的?
A11:刹车机构我那年是没有试过的,就是在二一年,我们的想法是跑得快,只要我能很快地到达对面,我相当于就变向了,所以我们是没有考虑像交大做的那个原地变向,然后也没考虑华南虎的那种原地刹车再变向。我确实没有试过,但是今年好像在做,但是我也不太清楚。刹车皮的话我之前听说过,就是看到某些群里讨论,说不都是选用那个自行车的那个刹车皮,抗磨然后摩擦系数还比较大。如果用交大那套结构的话,再根据那个特定的角度和你的摆幅去算一个正交的力就可以了。
Q12:还有什么更好的轴承方案吗?
A12:轴承方案如果说的是指像我们下云台yaw轴那个位置的轴承的话,我建议如果资金充足,还是用四点角接触更好一些,但是如果说资金真的有一点欠缺,我个人觉得不太行,但是我们可以换一个思路。我们采用四点角接触的原因是因为我的下云台有2.7kg,它特别重,然后在装入的瞬间,你算一下,它由2.3突然变到0,那个冲量是特别大的,所以我必须要让这个轴承能够承受很强的倾覆力矩才可以。那如果说你的云台方案是像风暴华北科技学院他们的那种像眼镜蛇一样的,直接就由yaw轴到pitch供弹的那种方式的话,它那个云台应该不会很重,我目测的话可能顶多1.7、1.8kg吧。如果是这样的话,你再结合你哨兵的运行速度,以及它在整个运行过程中最大的一个冲量,去算一下在承受这个最大冲量的时候,它传递到你云台yaw轴这个轴承轴向的力是多少,再去查轴承手册。把那个力和轴承手册进行对比,然后选择一个合适的轴承。虽然都说深沟球轴承不适合做轴向力,但是抛开剂量谈毒性不都是很烂嘛。如果说深沟球轴承它所能承受的力在你所算出来的力之外,就是它能够有一部分冗余,那也可以用深沟球轴承,相对来说也更便宜一点。如果你真的选择了深沟球轴承这套方案的话,你也可以再根据你所受到的力算一下,就是你的寿命有多少。然后看那个寿命是不是你能接受的,因为寿命会带来一个随时更换的问题,就叠加起来它的成本是多少,这个就是用笔去具体的算一下大家都放心,然后用起来也更安心一点。
Q13:卡尔曼调的值不抖了但近距离预判会滞后,远距离有时候预判又会超前,这是怎么回事?
A13:这两个就是你调了以后,它变化肯定是相同的。这个情况我还没有遇到过。这个如果有问题的话,我还是推荐你把那个测量值还有预测值,把它写到图片上,然后你把整张图片存下来,这样的话其实对应的就会比较好。远距离超前的话,因为远距离和近距离,它就是时间不一样,你先信任你的测量首先是没有问题的,然后比如说你用元素模型的是速度乘时间,要不然是时间算错了,就是你时间乘速度,它一下子就很大,它可能就会超前了。如果是滞后的话,就是还是你先看那个卡尔曼滤波输出的那个速度,跟你真实车辆运动的速度。因为你是测试嘛,那个目标的装甲板,要不然是你用车,要不然是你自己做一个什么机构。那个运动速度你肯定是有一个大致的范围的,你先看一下那个预测的准不准,它波动大不大,再看一下他那个时间有没有问题。我之前有一个地方就是单位弄错了,就是你飞出去,它算击打到就到一万多毫秒,然后当时就直接报错了,就可能会有这种问题。然后另外一个当时我遇到过的是串口好像有点问题。它发过来那个数据是有错的,就导致我这边计算也有错误,然后那个用协方模型,它一算就报错了,就是那个根号下开的负数。主要你要预测的话,其实也就是这么点变量,你都监控一下就好。

04 Q&A整理.pdf

165.58 KB, 下载次数: 12, 下载积分: 金钱 -1

RMUL2022黑龙江区域交流会04-哨兵视觉算法及双云台方案分享.pdf

1.02 MB, 下载次数: 64, 下载积分: 金钱 -1

跳转到指定楼层
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

触屏版 | 电脑版

Copyright © 2024 RoboMasters 版权所有 备案号 粤ICP备2022092332号

快速回复 返回顶部 返回列表