YAMAHA机器人视觉程序

发布时间:2024-8-30 12:03:23|来源: 雅马哈/YAMAHA

  [PGM]

  NAME=SHIFT

  PGN=1

  '===================声明数组============

  DIM PPS$(5)

  DIM PPX$(5)

  DIM PPY$(5)

  DIM PPR$(5)

  DIM PPX!(5)

  DIM PPY!(5)

  DIM PPR!(5)

  A%=1

  '=======================================

  *A:

  DO2()=0

  MOVE P,P0,Z=0.00

  WAIT ARM

  '======================================

  MOVE P,P101,Z=0.00    '1拍照位置

  WAIT ARM

  '======================================

  *PAIZHAO1:

  SEND "AA" TO GP1

  SEND GP1 TO DATA$

  PRINT "DATA$=",DATA$

  PPS$(1)=MID$(DATA$,1,2)

  IF PPS$(1)="OK" THEN

  GOTO *PAIZHAOOK1

  ENDIF

  IF PPS$(1)="NG" THEN

  DELAY 100

  GOTO *PAIZHAO1

  ENDIF

  '======================================

  *PAIZHAOOK1:

  PPX$(1)=MID$(DATA$,3,8)

  PPY$(1)=MID$(DATA$,11,8)

  PPR$(1)=MID$(DATA$,19,8)

  PPX!(1)=VAL(PPX$(1))

  PPY!(1)=VAL(PPX$(1))

  PPR!(1)=VAL(PPX$(1))

  LOC1(P11)=PPX!(1)

  LOC2(P11)=PPY!(1)

  LOC4(P11)=PPR!(1)

  LOC3(P11)=20.00

  '========================================

  MOVE P,P102,Z=0.00    '2拍照位置

  WAIT ARM

  '======================================

  *PAIZHAO2:

  SEND "AB" TO GP1

  SEND GP1 TO DATA$

  PPS$(2)=MID$(DATA$,1,2)

  PRINT "DATA$=",DATA$

  IF PPS$(2)="OK" THEN

  GOTO *PAIZHAOOK2

  ENDIF

  IF PPS$(2)="NG" THEN

  DELAY 100

  GOTO *PAIZHAO2

  ENDIF

  '=====================================

  *PAIZHAOOK2:

  PPX$(2)=MID$(DATA$,3,8)

  PPY$(2)=MID$(DATA$,11,8)

  PPR$(2)=MID$(DATA$,19,8)

  PPX!(2)=VAL(PPX$(2))

  PPY!(2)=VAL(PPX$(2))

  PPR!(2)=VAL(PPX$(2))

  LOC1(P12)=PPX!(2)

  LOC2(P12)=PPY!(2)

  LOC4(P12)=PPR!(2)

  LOC3(P12)=20.00

  '=========================================

  '=============偏移公式计算偏移S1============

  DLTX1=LOC1(P2)-LOC1(P1)

  DLTY1=LOC2(P2)-LOC2(P1)

  ANG1=ATN(DLTY1/DLTX1)

  DLTX11=LOC1(P12)-LOC1(P11)

  DLTY11=LOC2(P12)-LOC2(P11)

  ANG11=ATN(DLTY11/DLTX11)

  THETA=ANG11-ANG1

  LOC1(P1001)=LOC1(P1)*COS(THETA)-LOC2(P1)*SIN(THETA)

  LOC2(P1001)=LOC1(P1)*SIN(THETA)+LOC2(P1)*COS(THETA)

  DSTX1=LOC1(P11)-LOC1(P1001)

  DSTY1=LOC2(P11)-LOC2(P1001)

  LOC1(P1002)=LOC1(P2)*COS(THETA)-LOC2(P2)*SIN(THETA)

  LOC2(P1002)=LOC1(P2)*SIN(THETA)+LOC2(P2)*COS(THETA)

  DSTX2=LOC1(P12)-LOC1(P1002)

  DSTY2=LOC2(P12)-LOC2(P1002)

  DSTX=(DSTX1+DSTX2)/2

  DSTY=(DSTY1+DSTY2)/2

  LOC1(S1)=LOC1(S0)+DSTX

  LOC2(S1)=LOC2(S0)+DSTY

  LOC4(S1)=LOC4(S0)+RADDEG(THETA)

  LOC3(S1)=20.00

  '================================================

  '================================================

  *MAIN:

  FOR B%=1 TO 32

  C%=B%+499

  P[C%]=P0

  NEXT

  '======================================

  FOR B%=1 TO 32

  C%=B%+499

  P[C%]=PPNT(0,B%)

  NEXT

  '=======================================

  MOVE P,P103,Z=0.00      '3拍照位置

  WAIT ARM

  '=======================================

  *PAIZHAO3:

  SEND "AC" TO GP1

  SEND GP1 TO DATA$

  PPS$(3)=MID$(DATA$,1,2)

  PRINT "DATA$=",DATA$

  IF PPS$(3)="OK" THEN

  GOTO *PAIZHAOOK3

  ENDIF

  IF PPS$(3)="NG" THEN

  DELAY 100

  GOTO *PAIZHAO3

  ENDIF

  '=======================================

  *PAIZHAOOK3:

  PPX$(3)=MID$(DATA$,3,8)

  PPY$(3)=MID$(DATA$,11,8)

  PPR$(3)=MID$(DATA$,19,8)

  PPX!(3)=VAL(PPX$(3))

  PPY!(3)=VAL(PPX$(3))

  PPR!(3)=VAL(PPX$(3))

  LOC1(P13)=PPX!(3)

  LOC2(P13)=PPY!(3)

  LOC4(P13)=PPR!(3)

  LOC3(P13)=20.00

  SHIFT S0

  MOVE P,P13,Z=0.00       '走到吸料位

  WAIT ARM

  DO(23)=1                '吸料

  DELAY 100

  '=========================================

  MOVE P,P104,Z=0.00      '4拍照位置,矫正

  WAIT ARM

  '=======================================

  *PAIZHAO4:

  SEND "AD" TO GP1

  SEND GP1 TO DATA$

  PPS$(4)=MID$(DATA$,1,2)

  PRINT "DATA$=",DATA$

  IF PPS$(4)="OK" THEN

  GOTO *PAIZHAOOK4

  ENDIF

  IF PPS$(4)="NG" THEN

  DELAY 100

  GOTO *PAIZHAO4

  ENDIF

  '=====================================

  *PAIZHAOOK4:            '二次矫正拍照,固定相机

  PPX$(4)=MID$(DATA$,3,8)

  PPY$(4)=MID$(DATA$,11,8)

  PPR$(4)=MID$(DATA$,19,8)

  PPX!(4)=VAL(PPX$(4))

  PPY!(4)=VAL(PPX$(4))

  PPR!(4)=VAL(PPX$(4))

  LOC1(P14)=PPX!(4)

  LOC2(P14)=PPY!(4)

  LOC4(P14)=PPR!(4)

  LOC3(P14)=20.00

  SHIFT S0

  MOVE P,P14,Z=0.00              '矫正角度

  WAIT ARM

  '=====================================

  SHIFT S1

  MOVE P,P[A%+499],Z=0.00

  WAIT ARM

  DO(23)=0

  '====================================

  SHIFT S0

  MOVE P,P105,Z=0.00      '5拍照位置

  WAIT ARM

  '===================================

  *PAIZHAOOK5:

  SEND "AE" TO GP1

  SEND GP1 TO DATA$

  PPS$(5)=MID$(DATA$,1,2)

  PRINT "DATA$=",DATA$

  IF PPS$(5)="OK" THEN

  GOTO *PAIZHAOOK5

  ENDIF

  IF PPS$(5)="NG" THEN

  DELAY 100

  GOTO *PAIZHAO6

  ENDIF

  '==================================

  *PAIZHAO6:

  PPX$(5)=MID$(DATA$,3,8)

  PPY$(5)=MID$(DATA$,11,8)

  PPR$(5)=MID$(DATA$,19,8)

  PPX!(5)=VAL(PPX$(5))

  PPY!(5)=VAL(PPX$(5))

  PPR!(5)=VAL(PPX$(5))

  LOC1(P15)=PPX!(5)

  LOC2(P15)=PPY!(5)

  LOC4(P15)=PPR!(5)

  LOC3(P15)=20.00

  SHIFT S0

  MOVE P,P15,Z=0.00       '走到吸料位

  WAIT ARM

  DO(23)=1                '吸料

  DELAY 100

  '======================================

  MOVE P,P104,Z=0.00      '4拍照位置,矫正,固定相机

  WAIT ARM

  '=======================================

  *PAIZHAO4:

  SEND "AD" TO GP1

  SEND GP1 TO DATA$

  PPS$(4)=MID$(DATA$,1,2)

  PRINT "DATA$=",DATA$

  IF PPS$(4)="OK" THEN

  GOTO *PAIZHAOOK4

  ENDIF

  IF PPS$(4)="NG" THEN

  DELAY 100

  GOTO *PAIZHAO4

  ENDIF

  '=====================================

  *PAIZHAOOK4:            '二次矫正拍照

  PPX$(4)=MID$(DATA$,3,8)

  PPY$(4)=MID$(DATA$,11,8)

  PPR$(4)=MID$(DATA$,19,8)

  PPX!(4)=VAL(PPX$(4))

  PPY!(4)=VAL(PPX$(4))

  PPR!(4)=VAL(PPX$(4))

  LOC1(P14)=PPX!(4)

  LOC2(P14)=PPY!(4)

  LOC4(P14)=PPR!(4)

  LOC3(P14)=20.00

  SHIFT S0

  MOVE P,P14,Z=0.00     '矫正角度

  WAIT ARM

  A%=A%+1

  SHIFT S1

  MOVE P,P[A%+499],Z=0.00

  WAIT ARM

  DO(23)=0

  A%=A%+1

  IF A%=33 THEN

  A%=1

  GOTO *A

  ENDIF

  GOTO *MAIN

  [GEP]

  GP1

  MODE=1

  IPADRS=192.168.0.5

  PORT=5

  EOL=0

  TYPE=0

  [END]

                  

更多相关内容
雅马哈工业机器人测试项目 雅马哈工业机器人测试项目

依据国家标准GB/T12642-2013《工业机器人性能规范及其试验办法》等同选用国际标准ISO9283:1998里对工业机器人性能指标的规则。   标准中规则的工业机器人性 ...

雅马哈“RDV-X”“RDV-P”机器人驱动器 雅马哈“RDV-X”“RDV-P”机器人驱动器

雅马哈发动机于2015年9月开始出售可缩短定位时刻的脉冲宽度调制式机器人驱动器“RDV-X”和“RDV-P”。这两款新产品分别是现行产品“RDX”、“RDP”的后续机型,RDV-X支持伺服电机单轴机器人“FL ...

工业机器人分类介绍——雅马哈 工业机器人分类介绍——雅马哈

工业机器人是面向工业范畴的多关节机械手或多自由度的机器设备,能主动执行工作,靠自身动力和控制能力完结各种功用。它可以接受人类指挥,也可以按照预先编排的程序运转,现代工业机器人还可以 ...

AGV机器人应用领域不断挖掘 AGV机器人应用领域不断挖掘

近年来,跟着工业自动化与智能制造成为干流趋势,AGV职业迎来了重要的开展机会。现在为止,AGV已逐步遍及化,在工厂转移、仓储物流等许多范畴完成了深度运用。不只如此,在技术继续晋级、运用不 ...

雅马哈弧焊机器人系统组成 雅马哈弧焊机器人系统组成

一般的弧焊机器人是由示教盒、操控盘、机器人本体及自动送丝设备、焊接电源等部分组成。能够在计算机的操控下完成接连轨迹操控和点位操控。还能够使用直线插补和圆弧插补功能焊接由直线及圆弧所 ...

工业机器人预防性保养——雅马哈机器人 工业机器人预防性保养——雅马哈机器人

每台机器人都需求预防性保养,这样能够确保它们在出产线上保持最佳性能和完成一致性。当机器人没有进行定期的预防性保养查看,可能会导致零部件损坏或故障,然后致使出产怠慢乃至停机。对机器人 ...

雅马哈机器人专用操作系统 雅马哈机器人专用操作系统

1、VxWorks,VxWorks操作系统是美国WindRiver公司于1983年规划开发的一种嵌入式实时操作系统(RTOS),是Tornado嵌入式开发环境的关键组成部分。   2、WindowsCE,WindowsCE与Windows系列有较 ...

RGV、AGV、IGV搬运机器人区别 RGV、AGV、IGV搬运机器人区别

跟着人工智能的兴起,科技迅速发展,越来越多的搬运机器人替代了人工作业,在移动机器人市场上,除了咱们熟知的AGV之外,还有RGV和IGV也在自动化物流体系中发挥着各自的效果。那么RGV、AGV、IGV ...

喷涂机器人的种类特点——雅马哈 喷涂机器人的种类特点——雅马哈

1、有气喷涂机器人   有气喷涂机器人也称低压有气喷涂,喷涂机依托低压空气使油漆在喷出枪口后构成雾化气流作用于物体外表(墙面或木器面),有气喷涂相对于手刷而言无刷痕,并且平面相对均 ...

机械手臂变位机的标定设置——雅马哈 机械手臂变位机的标定设置——雅马哈

机械手变位机一般按照驱动电动机的组成个数分为:复合型变位机,单轴变位机、双轴变位机和三轴变位机等。在机械臂焊接作业之前和焊接过程中,变位机通过夹带的工具来装卡和定位被焊接的工件,对 ...

码垛机器人维修的注意事项——雅马哈 码垛机器人维修的注意事项——雅马哈

码垛机器人是输送机输送来的料袋、纸箱或是其它包装材料依照客户工艺要求的工作方式主动堆叠成垛,并将成垛的物料进行输送的设备。码垛机器人在码垛行业有着适当广泛的运用,大大节约了劳动力, ...

机器人伺服系统的结构组成——雅马哈机器人 机器人伺服系统的结构组成——雅马哈机器人

机电一体化的伺服操控系统的结构、类型繁多,但从自动操控理论的视点来剖析,伺服操控系统一般包括操控器、被控目标、履行环节、检测环节、比较环节等五部分。   1、比较环节   比较环节 ...

雅马哈赛道机器人自动驾驶系统应用 雅马哈赛道机器人自动驾驶系统应用

雅马哈赛道机器人,自动驾驭体系应用在摩托车上真的有价值吗?   早在2015年的东京车展上,雅马哈就曾露脸过一款名为motobot的赛道机器人,这位酷似骑手 ...

YAMAHA工业机器人编程错误处理 YAMAHA工业机器人编程错误处理

01差错例程剖析   先看一段代码:   *AA:   MOVE P,P101,Z=0.0   WAIT ARM   FOR I=1 TO 1000   MOVE P,P102,Z=0.0   WAIT ARM   DO2(0)=1   GOTO *TSA //差 ...

工业机器人开发注意事项——雅马哈机器人 工业机器人开发注意事项——雅马哈机器人

工业机器人是机械与计算机程序的有机结合的产物,不只能够节省劳动力,它还具有灵敏精准、快速高效、体系稳定等优势。高性能的工业机器人在开发时总是有一些需求留意的方面,今天咱们简单的说一 ...

雅马哈机器人22.808出现报错代码 雅马哈机器人22.808出现报错代码

近气候太热了,温度都快能够路上烤红薯了,咱们YAMAHA 机器人又出问题了,22.807 再生电阻过热,22.808 再生抵抗过热,咋办呢?”   YAMAHA 工业机器人实战技术帮你处理。   先把结论写一 ...

工业机器人零部件故障及解决方法——雅马哈机器人 工业机器人零部件故障及解决方法——雅马哈机器人

工业机器人首要零部件包括减速齿轮、制动设备、电机、编码器等,在零部件故障中又以减速齿轮为故障多发,制动设备、电机和编码器次之。   当减速齿轮损坏时会产生振动或宣布不正常的动静。这 ...

雅马哈人形机器人驾驶摩托车成直线运行 雅马哈人形机器人驾驶摩托车成直线运行

雅马哈发动机公司在第44届东京车展上展出了人形自主驾驭机器人“MOTOBOT ver.1”。在不需要为车身附加特别功用的情况下,机器人可以像人类一样操作摩托车,完成自动驾驭。MOTOBOT驾驭的摩托车是 ...

四轴机器人与西门子S7- 300PLC 四轴机器人与西门子S7- 300PLC

用西门子PLC操控雅马哈机器人的操控战略,使用外部IO端口设定指令字,使PLC 与机器人进行通讯,并指令机器人完结相应动作。   西门子S7-300PLC是我国现在应用广泛的 大中型PLC,研讨其与外围 ...

码垛机器人调试注意事项——雅马哈 码垛机器人调试注意事项——雅马哈

码垛机器人是运送机运送来的料袋、纸箱或是其它包装材料按照客户工艺要求的工作方式主动堆叠成垛,并将成垛的物料进行运送的设备。下面是它进行调试和修理时需求留意的几个事项: ...

栏目导航
客服中心

在线咨询:QQ


联系方式联系方式

联 系 人:黄经理

联系QQ:3271883383

联系电话:13522565663


扫码添加微信(手机端请先保存图片)

工作时间工作时间

工作日:9:00-17:00

节假日:仅处理紧急事件

Contact us

联系我们

联系电话 QQ咨询
QQ咨询

3271883383

公司地址
返回顶部