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]

                  

更多相关内容
雅马哈机器人线性马达选型 雅马哈机器人线性马达选型

跟着直线电机、线性马达、直线驱动技术的不断改进和进步,越来越多的国内企业,进入到直线电机的研发与出产,职业需求和国产直线电机市场规模也越来越大。但很多新型设备在初次运用线性马达或许 ...

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

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

六轴工业机器人的特点——雅马哈 六轴工业机器人的特点——雅马哈

1)可编程:6轴工业机器人最大特点是柔性发动化,柔性制作系统中的一个重要组成部分。工业机器人可随其工作环境变化以及加工件的变化进行再编程,适合于小批量多品种具有均衡高效率的柔性制作生 ...

雅马哈机器人22.808代码报错解决方法 雅马哈机器人22.808代码报错解决方法

雅马哈机器人22.808代码报错,呈现问题的原因便是温度过高了,环境及控制器本身温度都过高导致的。   处理办法一   这个报错一般发生在夏天,比方现在7月份-9月份期间,这个期间空气环境 ...

医用机器人基本种类——雅马哈 医用机器人基本种类——雅马哈

医用机器人品种很多,依照其用途不同,有临床医疗用机器人、护理机器人、医用教育机器人和为残疾人服务机器人等。   1、医院配送机器人:智能配送机器人在院区内主要承当送药、送餐进阻隔区 ...

雅马哈机器人使用案例 雅马哈机器人使用案例

完制品检测、触摸屏评价器   完制品功用检测。   开发软件评价。   按钮 PUSH 质量检测。   S机械手臂长 120mm——1200mm 的行业**产品系列,可支撑各种系统。   节约空间。   ...

气保焊机器人调节电流方法——雅马哈 气保焊机器人调节电流方法——雅马哈

1.指定所需的焊接电流。首要依据焊接材料和焊接工艺确认所需的焊接电流。机器人操控指示正常焊接电流规模。   2.查看气焊机器人的参数。在调整电流之前,查看气焊机器人设备的参数设置是否正 ...

机器人电缆选择注意要点——雅马哈 机器人电缆选择注意要点——雅马哈

许多人对机器人电缆的概念依然存在于机器人的组装中,但现实并非如此。机器人电缆不只可用于机器人,还可广泛应用于自动化设备、生产线、起重机、挖掘机和中柔性水下研究项目。机器人电缆能够在 ...

焊接机器人的优势——雅马哈 焊接机器人的优势——雅马哈

1、机器人的前沿和鸿沟,机器人能够改善教育。   征用机器人呼应时刻短,动作快,速度60至120cm/min。清洁双手的速度更高。他们不会学习或倾听,但他们不会停止作业。工人的成功也遭到心脏要 ...

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

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

SCARA机器人构成及工作原理 SCARA机器人构成及工作原理

SCARA机器人的构成   SCARA机器人是一种弧形多关节机器人,一般由四个关节构成。这种机器人的结构类似于人的手臂,但它的末端能够带有东西,如夹具、吸盘或激光头。SCARA机器人的关节都由电 ...

雅马哈机器人产业发展需理性 雅马哈机器人产业发展需理性

无论是从资金加速涌入、企业竞相布局,还是各地政府纷纷出台工业园区规划中,都能看出现在机器人工业的发展异常火爆。但是,如果我国机器人工业想要得到持续发展,各地政府和企业就必须冷静下来 ...

机器人机身和臂部的作用 机器人机身和臂部的作用

机身和臂部的作用各是什么?在设计时应留意哪些问题?   机身是支承臂部的部件,一般实现升降反转和俯仰等运动,机身设计时要有满足的刚度和稳定性;运动要灵活,升降运动的导套长度不宜过短 ...

雅马哈汽油发电机的日常护理 雅马哈汽油发电机的日常护理

雅马哈汽油发电机是将化学能转化为机械能的机器,它的转化进程实际上便是工作循环的进程,简单来说便是是通过焚烧气缸内的燃料,发生动能,驱动发动机气缸内的活塞往复的运动,由此带动连在活塞 ...

工业机器人的弱点——雅马哈机器人 工业机器人的弱点——雅马哈机器人

1.操作简略不如人   因为管理机器人结构的复杂性,运用工业机器人的员工需求专业培训。假如操作不正确,即使是简略的操作也或许导致严重的安全事故。另一方面,手动完成一些简略的进程要容易 ...

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

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

焊接机器人介绍——雅马哈机器人 焊接机器人介绍——雅马哈机器人

焊接机器人是集机械、计算机、电子、传感器、人工智能等多个方面知识于一体的现代化、主动化设备。焊接机器人主要有机器人和焊接设备两大部分构成。机器人由机器人本身和操控体系组成。焊接设备 ...

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

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

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

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

机器人工作原理解析——雅马哈机器人 机器人工作原理解析——雅马哈机器人

一、机器人的组成部分   从最基本的层面来看,人体包含五个主要组成部分:   当然,人类还有一些无形的特征,如智能和品德,但在纯粹的物理层面上,此 ...

栏目导航
客服中心

在线咨询:QQ


联系方式联系方式

联 系 人:黄经理

联系QQ:3271883383

联系电话:13522565663


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

工作时间工作时间

工作日:9:00-17:00

节假日:仅处理紧急事件

Contact us

联系我们

联系电话 QQ咨询
QQ咨询

3271883383

公司地址
返回顶部