实时定位和机器视觉技术 机器视觉引导定位的方法和技巧
淘宝搜:【天降红包222】领超级红包,京东搜:【天降红包222】
淘宝互助,淘宝双11微信互助群关注公众号 【淘姐妹】
一个中心 两个基本点 四项基本原则
? ? ? ?一个中心,就是旋转中心,旋转中心的确定在一次定位中非常重要(一次定位指的是只进行一次拍照,针对当前点进行运算,多次定位广泛指先拍照进行角度纠偏,纠偏结束后再次拍照进行平移纠偏),旋转中心未校准正确时最常见的表相就是:1在只进行xy纠偏时,数据准确。2当旋转角度较小时,单个轴纠偏数据准确。3当旋转角度较大时两个轴纠偏都不准确。
? ? ? ?两个基本,主要记录xy的方向与比例,我们进行的三点标定、九点标定、十二点标定其主要目的就是为了获得这两个基准:1目标坐标系的xy方向与当前坐标系的夹角(为什么说当前坐标系而不说图像坐标系,可思考一下)。2目标坐标系的实际尺寸与当前坐标系的比例关系。与此同时这两个基本也道明了,坐标系与坐标系之间的标定只能获取均值,而不能因图像不同区域有不同数据与之对应,所以工欲善其事必先利其器,两个坐标系之间的标定在开始前,先要进行畸变矫正。
? ? ? ?四项基本原则,可能有些人不能苟同这个四个基本原则,但是这个四个基本原则可以解决你当前90%的定位、抓取、引导问题。这四个基本原则主旨只有一个,那就是SAME。
SAME-S原则:surface要一致,不论标定还是实物抓取,我们的相机、镜头、以及被拍照的表面需要关系一致。
SAME-A原则:apply要一致,所有的数据应该在同样的坐标系环境进行运算。
SAME-M原则:move要一致,在你标定的时候,做了哪些用于映射的动作,在应用的时候,这些动作也要保持一致,或者将这些值添加到运算当中。
【【微信】】原则:extent要一致,你使用的范围就是你标定的范围,超过这个标定范围,你就应该怀疑它的准确性。
? ? ? 接下来,对每个关键点进行详细的解释和案例分析
? ? ? 一个中心,旋转中心是否需要确定,取决于当前定位项目是否有用到旋转中心。常见的同轴、uvw(示教定位点)、振镜、多次拍照纠偏是不用旋转中心的,其他但凡与角度沾边都要有旋转中心的确认。
山不转水转? ? ? ? 一个中心常见案例壹:一次饼干流水线动态抓取装盒的项目,李四使用机器手带真空吸板来抓取饼干,一个固定下相机拍照吸板中的饼干,另一边使用机械纠正的方法将饼干盒固定在平台上。我们每隔2秒就去流水线上盲吸饼干,靠真空压力判断如果吸到饼干就去下相机拍照,获得饼干位置,然后数据整合获取最终纠偏数据引导机械手去放料。接下来我们看怎么实现(准备过程和标定不进行叙述):
机械手动作图:
相机捕捉图:
理论图:
?
? ? ? ?理论基础:首先我们将示C点示教为基准位置,我们可以默认为任何饼干只要保证姿态、位置与C相同就可以放置在饼干盒里。此时来料姿态为A与C姿态相差角度为a,如果直接将A平移到C那么就会因为姿态不同而无法放置,而且对姿态进行纠正后,又需要二次平移纠正。于是,我们把A围绕旋转中心O旋转,获得旋转后的的位置B,B与C姿态相同,只进行平移纠偏就可达到目的,我们只需要发送d2和夹角a即可。
实际操作:先将饼干放在饼干盒子,机械手将饼干吸住然后拿出来,移动到下相机上方。我们先进行一次定义,将机械手吸取饼干的位置视为机械手纠偏基准位(Xrb,Yrb)-RobotBase,将机械手在下相机上方的拍照位视为拍照位(Xrc,Yrc)-RobotCamera。一切就绪,相机拍照获得当前的饼干坐标(Xcb,Ycb,Rcb)-CookieBase,以及当前的旋转中心(Xc,Yc)-Center。此时我们的示教就已经结束,开始实际测试。流水线来料后,机械手盲吸移动到(Xrb,Yrb)位置拍照得到当前饼干坐标(Xcc,Ycc,Rcc)-CookieCurrent。开始计算:
首先我们获取角度(弧度)偏差:
//统一目标,以基准为目标进行移动,由基准值减去当前值。
//饼干角度偏差
OffsetR=Rcb-Rcc//CookieBase-CookieCurrent
//首先将饼干的姿态与饼干盒的姿态纠正到统一姿态,实际动作为饼干围绕机械手旋转中心旋转OffsetR
RotationX=(Xcc-Xc)*CosOffsetR-(Ycc-Yc)*SinOffstR+Xc;
RotationY=(Xcc-Xc)*SinOffsetR+(Ycc-Yc)*CosOffstR+Yc;
//现在姿态已经相同了,就剩平移了,先将饼干移动到示教基准位(Xcb,Ycb)
OffsetX =Xcb- RotationX//Cookie- Rotation
OffsetY =Ycb- RotationY//Cookie- Rotation
? ? ? ?所以最终的发送值为(OffsetX,OffsetY,OffsetR)。
? ? ? ?总结:旋转中心不变,目标位置不变,来料在变,夹取后纠偏
? ? ? ? 好的问题解决,支付宝到账五百万。
不破不立一个中心常见案例贰:还是这项目,经过一段时间使用后发现出现了许多碎饼干,主观臆断的认为是往饼干盒里放的时候擦到饼干盒碎了,客户说要解决啊,于是李四又添加了一个相机,来定位饼干盒。那么开始示教首先使用机器手带真空吸板来抓取饼干,一个固定下相机拍照吸板中的饼干,一个固定上相机来拍照饼干盒。我们每隔2秒就去流水线上盲吸饼干,靠真空压力判断如果吸到饼干就去下相机拍照,获得饼干位置,然后上相机拍照饼干盒获得位置,最后将数据整合获取最终纠偏数据引导机械手去放料。接下来我们看怎么实现(准备过程和标定不进行叙述)。
机械手动作图:
相机捕捉图:
理论图:
理论基础:将B视为饼干盒的示教基准位置,因为饼干从饼干盒搬运到定位相机时,只进行了平移,且后续纠偏时这段距离为固定,所以也可以将B点视为饼干的示教基准位置。当前饼干来料A和饼干盒D首要任务是先保证AD的姿态相同,所以先将D围绕旋转中心旋转到C位置,然后进行平移纠偏d2+d3。注意此时推导是逆向所有数据要区别正负。
实际操作:先将饼干放在饼干盒子,机械手将饼干吸住然后拿出来,移动到下相机上方。此时我们先进行一次定义,将机械手吸取饼干的位置视为机械手纠偏基准位(Xrb,Yrb)-RobotBase,将机械手在下相机上方的拍照位视为拍照位(Xrc,Yrc)-RobotCamera。一切就绪,两个相机拍照获得当前的饼干坐标(Xcb,Ycb,Rcb)-CookieBase,获得饼干盒坐标(Xbb,Ybb,Rbb)-BoxBase以及当前的旋转中心(Xc,Yc)-Center。此时我们的示教就已经结束,开始实际测试。流水线来料后,机械手盲吸移动到(Xrb,Yrb)位置拍照得到当前饼干坐标(Xcc,Ycc,Rcc)-CookieCurrent和饼干盒坐标(Xbc,Ybc,Rbc)-BoxCurrent。开始计算:
首先我们获取角度(弧度)偏差:
//统一目标,以基准为目标进行移动,由基准值减去当前值
//确定纠偏机构,因为饼干合载台不具备纠偏功能,所以所有纠偏都由机械手进行。
//饼干盒偏差
OffsetRb=Rbb-Rbc;// BoxBase-BoxCurrent
OffsetXb=Xbb-Xbc;//
OffsetYb=Ybb-Ybc;//
//饼干角度偏差
OffsetRc=Rcb-Rcc//CookieBase-CookieCurrent
//最终的角度偏差
OffsetR=OffsetRb+Offsetc
//首先将饼干的姿态与饼干盒的姿态纠正到统一姿态,实际动作为饼干围绕机械手旋转中心旋转OffsetR
RotationX=(Xcc-Xc)*CosOffsetR-(Ycc-Yc)*SinOffstR+Xc;
RotationY=(Xcc-Xc)*SinOffsetR+(Ycc-Yc)*CosOffstR+Yc;
//现在姿态已经相同了,就剩平移了,先将饼干移动到示教基准位(Xcb,Ycb)
OffsetXc=Xcb- RotationX//Cookie- Rotation
OffsetYc=Ycb- RotationY//Cookie- Rotation
? ? ? ? //此时,饼干如果移动到机械手纠偏基准位,再平移(OffsetXc,OffsetYc)会移动到饼干盒的基准位(Xbb,Ybb),那么我再进行一次平移(OffsetXb, OffsetYb)就可以将饼干移动到饼干盒正上方
? ? ? ? OffsetX= OffsetXc+ OffsetXb
? ? ? ? ?OffsetY= OffsetYc+ OffsetYb
? ? ? ? ?所以最终的发送值为(OffsetX,OffsetY,OffsetR)。
? ? ? ? ?总结:旋转中心不变,目标位置在变,来料位置在变,夹取后纠偏
? ? ? ? ?谢谢,老客户收您一百万。
革命就是不断的提升? ? ? ? 一个中心常见案例叁:又是经过一段时间依旧是有很多碎饼干,客户不开心了,李四进行跟线观察后发现盲吸饼干的时候吸板没有完全覆盖饼干,所以饼干就被压碎了,于是将下方拍照饼干的相机移动到流水线上拍照饼干。
机械手动作图:
相机捕捉图:
理论图:
理论基础:将D视为饼干盒的示教基准位置,因为饼干从饼干盒搬运到定位相机时,只进行了平移,且后续纠偏时这段距离为固定,所以也可以将D点视为饼干的示教基准位置。当前饼干来料A和饼干盒F,因为是抓取前纠偏,所以要将机械手平移到对应位置进行抓取饼干。首先将饼干盒F移动到基准位置得到E,此时E点是已知点,跟随吸嘴围绕旋转中心O进行旋转得到C,其中B为D旋转后的辅助参考线 ,此时C与A姿态相同,只进行平移即可,那么最终的平移就是d1+d3。这次纠偏的主要理论就是用已知点获取未知点位置,然后再用已知点走过的路径取反得到未知点路径。
实际操作:开始示教,先将饼干放在饼干盒子,机械手将饼干吸住然后拿出来,放置在流水线上。此时我们又要开始一次愉快的定义,将机械手吸取饼干的位置视为机械手纠偏基准位(Xrb,Yrb)-RobotBase,将机械手在放在流水线的位置视为抓取基准位(Xlb,Ylb)-LineBase。一切就绪,两个相机拍照获得当前的饼干坐标(Xcb,Ycb,Rcb)-CookieBase,获得饼干盒坐标(Xbb,Ybb,Rbb)-BoxBase以及当前的旋转中心(Xc,Yc)-Center。此时我们的示教就已经结束,开始实际测试。流水线来料后,机械手盲吸移动到(Xrb,Yrb)位置拍照得到当前饼干坐标(Xcc,Ycc,Rcc)-CookieCurrent和饼干盒坐标(Xbc,Ybc,Rbc)-BoxCurrent。
首先我们获取角度(弧度)偏差:
//统一目标,以基准为目标进行移动,由基准值减去当前值
//确定纠偏机构,因为饼干合载台不具备纠偏功能,所以所有纠偏都由机械手进行。
//饼干盒偏差
OffsetRb=Rbb-Rbc;// BoxBase-BoxCurrent
OffsetXb=Xbb-Xbc;//
OffsetYb=Ybb-Ybc;//
//饼干角度偏差
OffsetRc=Rcb-Rcc//CookieBase-CookieCurrent
//最终的角度偏差
OffsetR=OffsetRb+Offsetc
//首先将饼干的姿态与饼干盒的姿态纠正到统一姿态,实际动作为饼干围绕机械手旋转中心旋转OffsetR
RotationX=(Xcc-Xc)*CosOffsetR-(Ycc-Yc)*SinOffstR+Xc;
RotationY=(Xcc-Xc)*SinOffsetR+(Ycc-Yc)*CosOffstR+Yc;
//现在姿态已经相同了,就剩平移了,先将饼干移动到示教基准位(Xcb,Ycb)
OffsetXc=Xcb- RotationX//Cookie- Rotation
OffsetYc=Ycb- RotationY//Co
2017广汽本田凌派obd插口在哪里 本田凌派19款1.0t的obd如何测量
凌派的obd接口在哪里,本田凌派a/c使用方法,本田凌派诊断插头在哪,本田凌派obd接口图片obd全称为OnBoardDiagnostics,翻译成中文是:车载自动诊断系统。这个系统随时监控发动机的运行状况和尾气后处理系统的工作状态,一旦发现有可能引起排放超标的情况,会马上发出警示。
当系统出现故障时,故障(MIL)灯或检查发动机(CheckEngine)警告灯亮,同时obd系统会将故障信息存入存储器,通过标准的诊断仪器和诊断接口可以以故障码的形式读取相关信息。根据故障码的提示,维修人员能迅速准确地确定故障的性质和部位。
涡轮增压发动机是一种空气压缩机,利用发动机排出的废气作为动力,推动位于排气管内的涡轮。涡轮运转时,带动位于进气管内的同轴叶轮,压缩空气过滤管送来的新鲜空气,送入气缸。当发动机转速提高时,高速废气推动涡轮转速上升,废气排出速度与涡轮转速同步,空气压缩程度增加,发动机的进气量相应增加,缸内燃烧更完全,动力输出更高。
凌派180采用了本田最新家族式设计,整体感觉时尚了不少宽大的镀铬条与大灯相连,中间的本田车标突出,尾部与雅阁相似,造型设计也显得比较成熟稳定。配置方面,全新凌派全系标配车身稳定系统、牵引力控制系统、胎压监测、电子手刹、一键启动、LED尾灯等。高配车型进一步提供了LED大灯、LED雾灯、真皮/打孔真皮座椅、自动空调、仪表盘7英寸液晶屏、6英寸悬浮式中控触摸屏、HondaCONNECT智能引导互联、车载蓝牙、更多扬声器和更多USB接口等。