0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

KUKAVASS06标准下的MAKRO39到底有什么用法?

机器人及PLC自动化应用 来源:机器人及PLC自动化应用 作者:机器人及PLC自动化 2021-03-10 15:17 次阅读

Makro 39 ~对接初始化

宏39中用于灵活对接的技术包:

P1 1 开始〜配置开始(第一个BHF)

2 结束〜配置结束(最后一个BHF)

P2 = 停靠站1至36〜选择停靠站1至36

P3 =输入〜停靠站的数字输入已被占用

P4 = 应用EZ / SP1-(伺服)〜选择EZ / SP1-伺服(虚拟轴)

NZ1-(伺服)〜选择NZ-伺服(虚拟轴)

CZ1-(伺服)〜选择CZ-伺服(虚拟轴)

NZ1-(电气/电气)〜选择NZ1-液压/电气(无虚拟轴)

抓爪〜选择抓爪(无虚拟轴)

其他〜选择其他(无虚拟轴)

P5 = 1号至4号钳子〜1号至4号钳子的选择

无〜选择无钳子否(用于夹持器/其他)

P6 =虚拟轴1至6〜选择虚拟轴1至6否〜未选择虚拟轴

P7 = 设置宏程序-宏Nr911至Nr934〜选择宏编号。虚拟轴数

不可用〜未选择虚拟轴

该技术包只能在宏中调用!

-每个扩展坞都有自己的技术调用。

-组态以BHF1开头,并以“ P1 =起始”定义。P1=1

-最后一个BHF的组态由“ P1 = 结束”定义。P1=2

-必须按升序配置BHF。

-每个BHF只能配置一次。

-使用参数6设置虚拟轴,该虚拟轴根据

Synchromove已参数化。一次只能分配一个虚拟轴,不能多次分配。

在对接过程中,必须对工具32进行编程

刀具载荷数据应设置为标准。(默认)

拆卸时,夹具的开口尺寸应接近基准位置,拆卸和对接时,夹具的开口尺寸必须相同。

在进入UP时执行VW_USR_R (#USR_INIT)时进行初始化

DS_Interface() 快换头接口程序

SWITCH USER_CMD

CASE #USR_INIT 初始化程序

SEL_RES=SELECT(#MAKRO,39,TRUE,,,,,FALSE) 执行初始化程序MAKRO39

DEFFCTINT MAKRO39(ADV :IN)

;FOLDMakro Anfang ;%{PSE}%MKUKATPVW

BOOLADV

;interface to basic routines

EXT BAS(BAS_COMMAND :IN,REAL :IN )

;interface to VW-standard routines

EXTVW (VW_COMMAND:IN, BOOL: IN, REAL:IN, REAL:IN, REAL:IN, REAL:IN, BOOL :IN, E6POS :IN )

;interface select routine

EXTFCTINT SELECT (SUBTYPE :IN,INT :IN,BOOL :IN,ARI_TYP :IN,INT :IN,BOOL_TYP :IN,INT :IN,BOOL :IN)

SPS_N=-1

;FOLD;%{H} %MKUKATPVW

IFVARSTATE ("ADV") <> #INITIALIZED THEN

ADV=FALSE

ENDIF

IF(NOT ADV) THEN

;ENDFOLD

;ENDFOLD

;FOLDTECH1 DS-Konfiguration Start BHF=Nr1 Eingang=551 Applikation=CZ1(Servo) Zange=Nr1 Techaufruf=EIN PAR1=1抓着铆枪初始化

VW_USR_R(#USR_MAKRO,103,1,1,551,3100,1,1,1,1,1,TRUE)

;ENDFOLD;%{E}%MKUKATPVW %CVW_SPS %VUSER %P 2:TECH1.DS-Konfiguration CN=103 P1=1 P2=1 P3=551 P4=3100 P5=1 P6=1 P7=1 P8=1 P9=1 P10=EIN, 3: USER

VW_USR_R(#USR_MAKRO,103,1,1,551,3100,1,1,1,1,1,TRUE)

;ENDFOLD

VW_USR_R(#USR_MAKRO,103,2,2,552,5100,0,1,1,1,1,TRUE)

;ENDFOLD

;FOLDTECH1 DS-Konfiguration Ende BHF=Nr2 Eingang=552 Applikation=Greifer/Sonstiges Techaufruf=EIN PAR1=2不初始化;%{E}%MKUKATPVW %CVW_SPS %VUSER %P 2:TECH1.DS-Konfiguration CN=103 P1=2 P2=2 P3=552 P4=5100 P5=0 P6=1 P7=1 P8=1 P9=1 P10=EIN, 3: USER

VW_USR_R(#USR_MAKRO,103,2,2,552,5100,0,1,1,1,1,TRUE)

快换头组态控制:

TECH1 DS配置开始 BHF = Nr1 输入= 551 应用= CZ1(伺服)钳位= Nr1 技术调用=开

;FOLDTECH1 DS-Konfiguration Start BHF=Nr1 Eingang=551 Applikation=CZ1(Servo) Zange=Nr1 Techaufruf=EIN

VW_USR_R(#USR_MAKRO,103,1,1,551,3100,1,1,1,1,1,TRUE)

CASE #USR_MAKRO

USER_MAKRO

;ENDFOLD;%{E}%MKUKATPVW %CVW_SPS %VUSER %P 2:TECH1.DS-Konfiguration CN=103 P1=1 P2=1 P3=551 P4=3100 P5=1 P6=1 P7=1 P8=1 P9=1 P10=EIN, 3: USER

VW_USR_R(#USR_MAKRO,103,1,1,551,3100,1,1,1,1,1,TRUE)

;ENDFOLD

CASE 103 ;

DS_Interface(#USR_MAKRO,CMD_SEL,PAR1,PAR2,PAR3,PAR4,PAR5,PAR6,PAR7,PAR8,PAR9)

CMD_SEL=103

PAR1=1

PAR2=1

PAR3=551

PAR4=3100

PAR5=1

PAR6=1

PAR7=1

PAR8=1

PAR9=1

GLOBALBOOL MIT_DS=TRUE -----在vw_ds_usr_s.dat文件里设置

DEF DS_Interface(USER_CMD:IN,CMD_SEL:IN,PAR1:IN,PAR2:IN,PAR3:IN,PAR4:IN,PAR5:IN,PAR6:IN,PAR7:IN,PAR8:IN,PAR9:IN)

CASE #USR_MAKRO

;FOLDMakro

---------对接配置-----------

IF(MIT_DS==TRUE)THEN MIT_DS=TRUE ---带快换工具

IF(PAR1==1)THEN PAR1=1

Dock_Init=TRUE 快换初始化

ELSE PAR1=2

Dock_Init=FALSE 快换初始化关闭

ENDIF

------------开始初始化变量------------------

IF Dock_Init THEN Dock_Init=TRUE

Dock_Init=FALSE 快换初始化关闭

WAITFOR(B_DS_BHF_ausw_aktiv==FALSE)

DS_HM_Done=FALSE

DS_KONFIG_IO=FALSE

---

DOCK_SZ=FALSE

DOCK_NZ=FALSE

DOCK_NZ_hyd=FALSE

DOCK_CZ=FALSE

DOCK_RW=FALSE

---

Anz_BHF=0

ANZ_EZ=0

ANZ_NZ=0

ANZ_NZ_hyd=0

ANZ_CZ=0

ANZ_RW=0

---

AntTyp=0

ZangenNr=0

ExtAx=0

---

EZ_DockAxZ1=0

EZ_DockAxZ2=0

EZ_DockAxZ3=0

EZ_DockAxZ4=0

---

NZ_DockAxZ1=0

NZ_DockAxZ2=0

NZ_DockAxZ3=0

NZ_DockAxZ4=0

---

CZ_DockAxZ1=0

CZ_DockAxZ2=0

CZ_DockAxZ3=0

CZ_DockAxZ4=0

;

RW_DockAxZ1=0

RW_DockAxZ2=0

RW_DockAxZ3=0

RW_DockAxZ4=0

;

ExtAx1Hilf=0

ExtAx2Hilf=0

ExtAx3Hilf=0

ExtAx4Hilf=0

ExtAx5Hilf=0

ExtAx6Hilf=0

;

AxFehler=FALSE

;

ExtAx1Fehler1=FALSE

ExtAx2Fehler1=FALSE

ExtAx3Fehler1=FALSE

ExtAx4Fehler1=FALSE

ExtAx5Fehler1=FALSE

ExtAx6Fehler1=FALSE

;

ExtAx1Fehler2=FALSE

ExtAx2Fehler2=FALSE

ExtAx3Fehler2=FALSE

ExtAx4Fehler2=FALSE

ExtAx5Fehler2=FALSE

ExtAx6Fehler2=FALSE

;

BHF_EZ_Z1=0

BHF_EZ_Z2=0

BHF_EZ_Z3=0

BHF_EZ_Z4=0

;

BHF_NZ_Serv_Z1=0

BHF_NZ_Serv_Z2=0

BHF_NZ_Serv_Z3=0

BHF_NZ_Serv_Z4=0

;

BHF_NZ_hyd_Z1=0

BHF_NZ_hyd_Z2=0

BHF_NZ_hyd_Z3=0

BHF_NZ_hyd_Z4=0;

BHF_CZ_Serv_Z1=0

BHF_CZ_Serv_Z2=0

BHF_CZ_Serv_Z3=0

BHF_CZ_Serv_Z4=0;

BHF_RW_Serv_Z1=0

BHF_RW_Serv_Z2=0

BHF_RW_Serv_Z3=0

BHF_RW_Serv_Z4=0;

PROCPAR[BHF_Off]=0 P220=0 初始化;

FOR i=1 TO 36

PROCPAR[BHF_Off+i]=0 P值归0

IN_BHF_belegt[i]=4081

ENDFOR

ENDIF;

SWITCH PAR4 PAR4=3100

CASE 1100 ;EZ1

AntTyp=1000

SteuNr=100

DOCK_SZ=TRUE

CASE 1200 ;EZ2

AntTyp=1000

SteuNr=200

DOCK_SZ=TRUE

CASE 1300 ;EZ3

AntTyp=1000

SteuNr=300

DOCK_SZ=TRUE

CASE 2100 ;NZ1-Servo

AntTyp=2000

SteuNr=100

DOCK_NZ=TRUE

CASE 2200 ;NZ2-Servo

AntTyp=2000

SteuNr=200

DOCK_NZ=TRUE

èCASE 3100 ;CZ1-Servo 电伺服铆钳--------

AntTyp=3000 类型是3000

SteuNr=100 状态号

DOCK_CZ=TRUE 激活快换铆钳

CASE 3200 ;CZ2-Servo伺服铆钳2

AntTyp=3000

SteuNr=200

DOCK_CZ=TRUE

CASE 4100 ;NZ1-液压铆钳

AntTyp=4000

SteuNr=100

DOCK_NZ_hyd=TRUE

CASE 4200 ;NZ2-液压铆钳

AntTyp=4000

SteuNr=100

DOCK_NZ_hyd=TRUE

à CASE 5100 ;--------夹爪/其他--------

AntTyp=5000

SteuNr=100

CASE 6100 ;RW1

AntTyp=6000

SteuNr=100

DOCK_RW=TRUE

CASE 6200 ;RW1

AntTyp=6000

SteuNr=100

DOCK_RW=TRUE

ENDSWITCH;

SWITCH PAR5 PAR5=1使用的钳号

CASE 0 ; 钳号0

ZangenNr=0

CASE 1 ; -----------钳号是10

ZangenNr=10

CASE 2 ;钳号20

ZangenNr=20

CASE 3 ;钳号30

ZangenNr=30

CASE 4 ;钳号40

ZangenNr=40

ENDSWITCH

Anz_BHF=Anz_BHF+1 使用工具站数

IF(Anz_BHF<>PAR2) OR (PROCPAR[BHF_Off+PAR2]<>0)THEN

WHILE(PROCPAR[BHF_Off+PAR2]<>0)

DS_Msg(2,#QuitMsg);工具站双重申报

ENDWHILE

WHILE(Anz_BHF<< span="">PAR2)

DS_Msg(1,#QuitMsg); 工具站错误的顺序

ENDWHILE

ELSE

IF((AntTyp==1000) OR (AntTyp==2000) OR (AntTyp==3000) OR (AntTyp==4000) OR (AntTyp==6000)) AND ((SteuNr==0) OR (ZangenNr==0))THEN

IF(SteuNr==0)THEN 发出提示信息

DS_Msg((30+(AntTyp/1000)),#QuitMsg)

ENDIF

IF(ZangenNr==0)THEN

DS_Msg((40+(AntTyp/1000)),#QuitMsg)

ENDIF

ELSE

PROCPAR[BHF_Off+PAR2]=(AntTyp+SteuNr+ZangenNr)

IN_BHF_belegt[PAR2]=PAR3 停靠站的起始控制位

AntTyp=0

SteuNr=0

ZangenNr=0

ENDIF

ENDIF

IF(PAR1==2)THEN PAR1=2 结束初始化

DS_setzen=TRUE 快换头置位

ENDIF

IF(DS_setzen==TRUE)THEN

WAITFOR(DS_KONFIG_IO==TRUE)

VW_DS_USR_S执行反馈DS_KONFIG_IO=TRUE

DS_setzen=FALSE

DS_HM_Done=FALSE

PROCPAR[BHF_Off]=1 激活块头的控制P=1用来方便激活CZ1铆钳使用

ENDIF

ELSE 如果不带工具提示信息

DS_Msg(3,#QuitMsg)

ENDIF

DEFAULT

ENDSWITCH

END

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器人
    +关注

    关注

    212

    文章

    28910

    浏览量

    209653
  • KUKA机器人
    +关注

    关注

    4

    文章

    144

    浏览量

    9270

原文标题:KUKAVASS06标准下的MAKRO39啥用法

文章出处:【微信号:gh_a8b121171b08,微信公众号:机器人及PLC自动化应用】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    电烙铁焊锡到底有没有毒

    电烙铁焊锡到底有没有毒?无铅?铅? 电烙铁焊锡有毒吗? 网友吐槽称,他在PCB工厂用电烙铁焊锡一年整了,都感觉到身体开始不舒服了,腹部有点胀,焊锡有毒吗?是不是会铅中毒。 其实这个还要看工作中
    的头像 发表于 02-12 09:27 172次阅读

    TLC2578芯片中FS与SDI到底有什么作用?

    ,还有就是一点不太懂的就是:TLC2578芯片中FS与SDI到底有什么作用。手册看了半天还是不懂!求解!谢谢!
    发表于 01-22 06:51

    RK3506到底有多香?抢先看核心板详细参数配置

    RK3506到底有多香?触觉智能已推出RK3506核心板,抢先了解核心板详细参数配置!
    的头像 发表于 01-18 11:33 638次阅读
    RK3506<b class='flag-5'>到底有</b>多香?抢先看核心板详细参数配置

    24位或者说高分辨率的AD到底有什么用呢?

    的AD,如24位的AD,其分辨率达到很低的uV级别,我们如何考究其精度?而且AD的精度受到诸多因素的影响,其中参考源的稳定度和供电电源的稳定度对精度影响很大,参考源最低0.05%的精度,那么24位的分辨率所可以达到的精度却是要大打折扣的,请问在这样的情况,24位或者说高分辨率的AD
    发表于 01-07 06:49

    差分输入和和单端输入在本质上到底有什么区别?

    和和单端输入在本质 上到底有什么区别? 因为,ADC采集的信号说到底是AINP - AINN,不管单端还是差分,采集的信号都是这两个pad的差值。 2:将单端信号接在ADC的差分输入接口上可以用
    发表于 12-23 07:31

    TFP401APZP到底有没有HSYNC输出?

    请教下TI的大牛,TFP401APZP这颗IC到底有没有HSYNC输出?实测发现HSYNC无输出,是要做什么设置么?!
    发表于 12-20 07:28

    RTOS与Linux到底有什么区别

    很多做嵌入式开发的小伙伴都存在这样的疑惑:RTOS与Linux到底有什么区别?
    的头像 发表于 10-29 09:53 710次阅读

    功放和运放到底是什么区别?

    想请问一功放和运放到底是什么区别,感觉只要接一个小负载,运放的输出电流也可以很大啊?到底有什么区别啊
    发表于 09-10 07:00

    CMOS运放的输入阻抗到底有多高呢?

    都说CMOS运放输入阻抗高,到底有多高呢?可有一个量化指标?
    发表于 09-06 06:59

    求助,这个电路U1A运放同相端的R1电阻到底有什么作用啊?

    想问下这个电路U1A运放同相端的R1电阻到底有什么作用啊?很郁闷。
    发表于 08-27 07:09

    lm2902做的二阶低通滤波器,无论怎么调试C1的值,电路的波特图都保持不变,请问一C1的作用到底有多大?

    这是一个lm2902做的二阶低通滤波器,但是无论怎么调试C1的值,该电路的波特图都保持不变,请问一C1的作用到底有多大啊?改结构与MFB和sallen-key明显的区别,这是个什么样的结构?
    发表于 08-21 07:45

    无人机智能巡检系统到底有哪些作用

    无人机智能巡检系统到底有哪些作用? 随着科技的不断发展,无人机已经在光伏、风电、农业、水利、城市管理、地质等领域广泛应用,无人机智能巡检系统的应用,为巡检工作带来了革命行的变革,那么无人机智能巡检
    的头像 发表于 08-19 16:49 495次阅读
    无人机智能巡检系统<b class='flag-5'>到底有</b>哪些作用

    EWSTM8-2201 or 3101安装说明上有的说选“是”,有的说选“否”,二者到底有什么区别?对工程什么影响?

    the installation. ......... 安装说明上有的说选“是”,有的说选“否”,二者到底有什么区别?对工程什么影响?
    发表于 04-28 08:08

    氧化硅薄膜具体什么用途呢?

    氧化硅薄膜整个半导体制造过程是十分常见且不可或缺的,那么它具体什么用途呢?
    的头像 发表于 04-22 09:52 961次阅读

    IPv6到底有什么用,给我们生活带来哪些变化?

    IPv6是下一代互联网协议,与IPv4相比,具有更多的地址空间和更好的性能。随着互联网的普及和发展,IPv6的用途也越来越广泛,已经在生活中发挥了重要作用。那IPv6到底有什么用,给我们生活带来
    的头像 发表于 03-29 14:00 1658次阅读
    IPv6<b class='flag-5'>到底有</b><b class='flag-5'>什么用</b>,给我们生活带来哪些变化?