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]

                  

更多相关内容
爱普生机器人的大脑和肌肉 爱普生机器人的大脑和肌肉

一、操控器——爱普生机器人的大脑   操控器(英文名称:controller)是指依照预定顺序改动主电路或操控电路的接线和改动电路中电阻值来操控电动机的发动、调速、制动和反向的主令装置。由程 ...

雅马哈控制器340报BYE联不起机器维修 雅马哈控制器340报BYE联不起机器维修

过程:   ①任何单元上面没有LED指示亮起。   ②接地故障保护跳闸。   ③无法装入体系软件。   ④FlexPendant已经“死机”,根本就没有作业。   ⑤FlexPendant发动,但没有响应 ...

雅马哈机器人的故障判断介绍 雅马哈机器人的故障判断介绍

当机器人在工作过程中产生毛病不要慌张,假如毛病不是由于控制器引起的,那么毛病的原因肯定是机器部件产生损坏。为了尽快以***简便的方法处理毛病、应当对毛病进行分析。而且需求找出是哪个零 ...

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

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

雅马哈工业机器人独创的构想和技术引领工厂自动化 雅马哈工业机器人独创的构想和技术引领工厂自动化

近年来,备受关注的机器人可以模仿人类和动物的手势说话,帮助人们送饮料,与人类玩耍。或者,他们可以像无人机一样从空中对地面的东西进行调查和监控,也可以代替人进行农业作业。各种类似产品 ...

协作机器人优势——雅马哈机器人 协作机器人优势——雅马哈机器人

一些新的协作机器人规划为用户友爱且易于编程,然后无需工程师来施行。有些乃至具有手动引导功用,协作机器人能够通过示例来学到东西,一起能够按照完成其编程使命所需的一系列动作来进行引导。 ...

雅马哈机器人模拟调试功能简述 雅马哈机器人模拟调试功能简述

首先,你得预备一下软件和网口调试帮手(该调试帮手能够自己网上下载,也能够后台回复“网口帮手”获取),软件名称为 RCX-Studio Pro 2020 CL 该软件能够后台回复“2020CL”获取。安装好软件今 ...

雅马哈工业机器人感知系统运行 雅马哈工业机器人感知系统运行

在工业机器人中装备传感器,工业机器人内部传感器中,方位传感器和速度传感器,是当今机器人反馈控制中不行短少的元件。对于工业机器人来说,传感器便是工业机器人最主要的设备之一,能懂的应用 ...

工业机器人关节减速器作用——雅马哈 工业机器人关节减速器作用——雅马哈

工业机器人要害减速器的作用   工业机器人的操作主要靠伺服电机、减速器和操控器三个部件进行操控,其中减速器用于精准操控机器人关节的运动,传递更大的扭矩。目前,常见的减速器主要分为两 ...

雅马哈机器人的控制方式 雅马哈机器人的控制方式

工业机器人操控方法的分类没有统一的规范:   A、机器人动作操控方法   a、机器人运动操控方法   (1.机器人方位操控方法:定位操控方法—固定方位方法、多点方位方法、伺服操控方法; ...

雅马哈 PHASER系列 线性马达选型 雅马哈 PHASER系列 线性马达选型

机械手臂的应用场景——雅马哈 机械手臂的应用场景——雅马哈

场景是新技能使用中的重要一环,场景越多代表着使用的广泛性和未来的希望空间越大,而如果一款技能诞生没有实践的使用场景,即无法融入人们的日常生活和出产制造中,这对它的后续发展影响是丧命 ...

YAMAHA机器人模拟调试功能 YAMAHA机器人模拟调试功能

首要,你得预备一下软件和网口调试助手(该调试助手可以自己网上下载,也可今后台回复“网口助手”获取),软件名称为 RCX-Studio Pro 2020 CL 该软件可今后台回复“2020CL”获取。安装好软件今 ...

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 //差 ...

工业机器人控制技能——雅马哈 工业机器人控制技能——雅马哈

(1)开放性模块化的控制体系体系结构:选用分布式CPU计算机结构,分为机器人控制器(RC),运动控制器(MC),光电阻隔I/O控制板、传感器处理板和编程示教盒等。机器人控制器(RC)和编程示教盒通过串 ...

机械手主要部件——雅马哈机器人 机械手主要部件——雅马哈机器人

一个机械手包括以下首要部件:   控制器、ARM、结尾执行器、驱动器、传感器   控制器是机械手的“大脑”,允许机器人的各部件一同操作,也能够衔接到其他体系。该机械臂控制器运转一组程 ...

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

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

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

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

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

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

焊接机器人编程技巧——雅马哈机器人 焊接机器人编程技巧——雅马哈机器人

(1)选择合理的焊接次序。以减小焊接变形、焊枪行走途径长度来拟定焊接次序。   (2)焊枪空间过渡要求移动轨迹较短、滑润、安全。   (3)优化焊接参数。为了取得最佳的焊接参数,制作工作试 ...

栏目导航
客服中心

在线咨询:QQ


联系方式联系方式

联 系 人:黄经理

联系QQ:3271883383

联系电话:13522565663


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

工作时间工作时间

工作日:9:00-17:00

节假日:仅处理紧急事件

Contact us

联系我们

联系电话 QQ咨询
QQ咨询

3271883383

公司地址
返回顶部