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]

                  

更多相关内容
西门子PLC控制雅马哈机器人 西门子PLC控制雅马哈机器人

本文介绍了用西门子PLC操控雅马哈机器人的操控战略,利用外部IO端口设定指令字,使PLC 与机器人进行通讯,并指令机器人完成相应动作。   西门子S7-300PLC是 ...

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

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

工业机器人校准原因——雅马哈 工业机器人校准原因——雅马哈

要对机器人进行校准,我们首先要了解形成机器人呈现差错或许存在的要素。   形成机器人发生差错的要素有很多,归结起来主要有两大类,一是运动学相关,主要有加工差错、机械公差/装配差错、 ...

常见机械臂及其作用 常见机械臂及其作用

机械臂是指高精度,多输入多输出、高度非线性、强耦合的复杂系统。因其共同的操作灵活性,已在工业装配、安全防爆等领域得到广泛应用。   那么我们常见的机械臂有哪些呢?按不同的职业分类为 ...

工业机器人和机械臂区别 工业机器人和机械臂区别

机械臂是一种由多个关节衔接而成的机械结构,类似于人的臂膀。它一般具有可旋转或可弹性的关节,使其能够在空间中履行准确的定位和操作。机械臂一般由电机、传感器、控制体系和履行器组成。   ...

雅马哈与上位机TCP通讯 雅马哈与上位机TCP通讯

1.能够先用调试帮手测试,先设定电脑IP以及雅马哈操控器IP,系统--通讯设置,设置操控器的IP   2.在选项--通用以太网端口,设置GP0(通讯目标),模式伺服 ...

雅马哈水平多关节机器人助力电子产品组装领域 雅马哈水平多关节机器人助力电子产品组装领域

日本雅马哈发动机公司推出了水平多关节机器人(Scara robot)的新机型,可用于电子产品拼装等。与此前比较提高了功能,例如作业时间可缩短约1成等。在*大的工业机器人商场我国,本土企业兴起 , ...

雅马哈机器人伺服器设置步骤 雅马哈机器人伺服器设置步骤

1、测验一下电机,任何电路也不必衔接,把电机的三根线恣意两根短路在一起,用手滚动电机轴,感觉起来有阻力,那就OK。   2、把伺服驱动器按图纸接上电源(例如用了调压器,从100V调到220V, ...

直流电动机的拆卸步骤——雅马哈 直流电动机的拆卸步骤——雅马哈

①拆除电动机接线盒内的连接线。   ②拆下换向器端盖(后端盖)上通风窗的螺栓,翻开通风窗,从刷握中取出电刷,拆下接到刷杆上的连接线。   ③拆下换向器端盖的螺栓、轴承盖螺栓,并取下轴 ...

如何测试伺服电机——雅马哈机器人 如何测试伺服电机——雅马哈机器人

1、首先先测试一下电机,任何电路也不用衔接,把电机的三根线任意两根短路在一起,用手转动电机轴,感觉起来有阻力,那就OK。   2、把伺服驱动器按图纸接上电源(例如用了调压器,从100V调到2 ...

雅马哈机器人驾驭赛道摩托与世界冠军同场竞技 雅马哈机器人驾驭赛道摩托与世界冠军同场竞技

2017年雅马哈公司开发的骑手机器人MOTOBOT在赛道上与世界摩托车锦标赛世界冠军、绰号小飞侠的意大利赛车手瓦伦铁诺罗西同场比赛。   最后MOTOBOT ...

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

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

雅马哈示教器维修故障 雅马哈示教器维修故障

YAMAHA 雅马哈示教器修理常见故障:按键损坏、电源板问题、高压板问题、液晶问题、主板坏,上电黑屏、 花屏、蓝屏、白屏,上电无反响、上电烧baoxian,不能正常开机、进入不了体系、接触问题、按 ...

工业机器人应用维修注意要点——雅马哈 工业机器人应用维修注意要点——雅马哈

在操作工业机器人之前一定要注意检查电器控制箱内是否有水、油进入,若电器受潮,切勿开机,并且要检查供电电压是否符合,前后安全门开关是否正常。验证电动机的转方向是否一致。然后打开电源; ...

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

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

机器人、机械手自动化生产线的区别——雅马哈 机器人、机械手自动化生产线的区别——雅马哈

装置方法: 机器人线在地上装置, 与压力机没有机械上的衔接; 机械手线在压力机立柱间装置钢梁, 附着在压力机上。   使用特点: 机器人线经过端拾器的切换和 ...

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

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

协作机器人缺点应用场景——雅马哈 协作机器人缺点应用场景——雅马哈

协作机器人的鼓起能够帮助人们享用更好的日子质量,削减作业时刻。关于雇主来说,协作机器人能够承担最危险的使命,以降低受伤危险和劳动力本钱。协作机器人的缺陷是它们不能承担人类完结的所有 ...

雅马哈机器人如何提前防范故障 雅马哈机器人如何提前防范故障

机器人在工作过程中产生毛病不要紧张,假如毛病不是由于控制器引起的,那么毛病的原因肯定是机器部件产生损坏。   为了尽快简便的办法处理毛病、应当对毛 ...

雅马哈机器人零点的找回 雅马哈机器人零点的找回

机器人零点是机器人操作模型的初始方位,每一台机器人在出厂时就已经设置好了零点。当零点不正确时,机器人就不能正确的运动,此时就需要从头校准零点。    ...

栏目导航
客服中心

在线咨询:QQ


联系方式联系方式

联 系 人:黄经理

联系QQ:3271883383

联系电话:13522565663


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

工作时间工作时间

工作日:9:00-17:00

节假日:仅处理紧急事件

Contact us

联系我们

联系电话 QQ咨询
QQ咨询

3271883383

公司地址
返回顶部