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 大地辗转的作业方式   减速器是由一个高速输入驱动一个输出轴的装置,它通常被设计成一个几何图形中的一个宏大的齿轮,这个齿轮的齿数是与输入的齿轮数量持平的。齿轮的运动原理能够简略地 ...

雅马哈机器人伺服驱动连接 雅马哈机器人伺服驱动连接

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

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

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

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

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

雅马哈机器人维修方法 雅马哈机器人维修方法

雅马哈机器人维修办法   首要,查看是哪一个轴引起了毛病。假如很难检测出毛病、核对是否有下列可能呈现的机器异常。   是否有零件宣布噪音?   是否有零件过热? .   是否有零件松动 ...

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

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

雅马哈能花式开摩托的机器人 雅马哈能花式开摩托的机器人

不是放了个机器人上去,是真的在开车!   据科技网站Engadget报道,雅马哈近来发布了一款名为MotoBot的机器人,它可以像人类一样驾驭超级摩托车。也许不必 ...

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

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

影响工业机器人性能和使用寿命因素——雅马哈 影响工业机器人性能和使用寿命因素——雅马哈

近年来,各行各业将更多工业机器人纳入生产线的需求不断添加,从现代轿车制作到3C(计算机,通信和消费电子)产品制作。与传统生产线上的自动化专用设备相比,机器人操作灵活而且才能拔尖,因而 ...

工业机器人驱动系统组成部件——雅马哈 工业机器人驱动系统组成部件——雅马哈

工业机器人的驱动体系按动力源分为液压,气动和电动三大类,根据需要也可由这三种根本类型组合成复合式的驱动体系,这三类根本驱动体系的各有自己的特色。   ...

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

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

工业机器人码垛系统的组成——雅马哈 工业机器人码垛系统的组成——雅马哈

工业机器人码垛体系并非在实际应用中由机器人独立运转,而是与主动化设备合作执行体系作业。工业机器人码垛体系一般由4个子体系组成,电气操控子体系操控整个码垛体系的作业流程和节拍。物料传 ...

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

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

安卓系统来控制工业机器能否实现——雅马哈机器人 安卓系统来控制工业机器能否实现——雅马哈机器人

工业机器人因为各品牌产品在功能以及技能方面的不同,所运用的一般都是专属于自己品牌的操控体系,这就造成了现在工业机器人操控体系品种繁复的情况。在这种情况下,往往一个机器人技能人员学会 ...

雅马哈机器人提升速度方法 雅马哈机器人提升速度方法

查看机器人发动机磨损、空气滤清器是否故障。   1、雅马哈机器人使用过程中发动机正常的磨损,会引起动力下降上不去速度,这时需求经常对发动机进行保养。   2、雅马哈机器人的空气滤清器 ...

焊接机器人应用环境要求——雅马哈 焊接机器人应用环境要求——雅马哈

焊接机器人在使用环境的特别性方面不同于一般的通用工业机器人,其使用环境的特别性方面不同于一般的通用工业机器人,其使用环境带来的影响主要指施焊过程中的强弧光、高温、杂乱电磁环境、烟尘 ...

工业机器人三大核心部件 工业机器人三大核心部件

能够替代人类去做一些深重重复性的作业,做到运动和指令的精确传输,各部位紧密配合完结复杂的作业,那么这些灵动的5轴6轴机器人是怎么精准灵敏的完结这些指令的呢? ...

工业机器人液压驱动的组成——雅马哈 工业机器人液压驱动的组成——雅马哈

在工业机器人呈现的初期,因为其运动大多选用曲柄和导杆等杆件机构,所以大多使用液压驱动和气压驱动方式。液压驱动体系通常由液动机 (各种油缸、油马达)、伺服阀、油系、油箱等组成,以紧缩机 ...

码垛机器人分类——雅马哈机器人 码垛机器人分类——雅马哈机器人

1、根据结构区分   根据机械结构的不同, 码垛机器人包含如下三种方式: 笛卡耳式、旋转关节式和龙门起重架式。   ①笛卡耳式码垛机器人:主要由四部分组成: 立柱、X向臂、Y向臂和抓手, ...

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

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

栏目导航
客服中心

在线咨询:QQ


联系方式联系方式

联 系 人:黄经理

联系QQ:3271883383

联系电话:13522565663


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

工作时间工作时间

工作日:9:00-17:00

节假日:仅处理紧急事件

Contact us

联系我们

联系电话 QQ咨询
QQ咨询

3271883383

公司地址
返回顶部