您好!欢迎光临工博士商城

KUKA机器人配件

产品:51    
联系我们
联系方式
  • 联系人:胡工
  • 电话:13052212751
  • 邮件:hxl@gongboshi.com
  • 手机:13052212751(微信同号)
新闻分类
  • 暂无分类
站内搜索
 
首页 > 新闻中心 > KUKA机器人的SPS.SUB程序解析步骤:
新闻中心
KUKA机器人的SPS.SUB程序解析步骤:
发布时间:2020-06-30        浏览次数:1225        返回列表
 KUKA 机器人SPS.SUB程序解析 :

&ACCESS RVO

&COMMENT PLC on control

DEF SPS ( )

;FOLD DECLARATIONS

;FOLD BASISTECH DECL

;Automatik extern


DECL STATE_T STAT

库卡机器人

定义STATE_T类型的变量。该结构为:


STRUC STATE_T

CMD_STAT RET1, CMD_STAT是枚举类型数据,组成了STATE_T结构的***个数据RET1

INT HITS ,

INT LENGTH

其中CMD_STAT是枚举类型的数据:

ENUM CMD_STAT CMD_OK, CMD_TIMEOUT, DATA_OK, DATA_BLK, DATA_END, CMD_ABORT, CMD_REJ, CMD_PART, CMD_SYN, FMT_ERR

与CWRITE有关的返回值如下表:

变量类型 MODUS_T(结构类型)定义多少通道写入,有下列值 SYNC语句直到数据发送还没有执行 ASYNC语句没有执行直到通道驱动已经证实数据已经被承认。

DECL MODUS_T MODE

;ENDFOLD (BASISTECH DECL)

;FOLD USER DECL

;Please insert user defined declarations

;ENDFOLD (USER DECL)

;ENDFOLD (DECLARATIONS)

;FOLD INI

;FOLD DEFAULT MSG_T

信息显示的结构:

$MSG_T={MSG_T: VALID FALSE,RELEASE FALSE,TYP #NOTIFY,MODUL[] " ",KEY[] " ",PARAM_TYP #VALUE,PARAM[] " ",DLG_FORMAT[] " ",ANSWER 0}

;ENDFOLD (DEFAULT MSG_T)

;FOLD AUTOEXT INIT

中断函数声明,当系统变量$PRO_STATE1(机器人解释程序的进程状态为P_FREE(不选择程序)调用RESET_OUT ()):

INTERRUPT DECL 91 WHEN $PRO_STATE1==#P_FREE DO RESET_OUT ()

INTERRUPT ON 91

$LOOP_MSG[]=" "

变量类型MODUS_T(结构类型)定义多少通道写入,它有下面的值:SYNC 语句直到数据已经发送还没有执行。ASYNC 语句没有执行 直到通道驱动已经证实数据已经被承认。

库卡机器人

MODE=#SYNC ;

$H_POS=$H_POS

;Automatik extern 如果外部模式,则启动CELL()。$CMD显示命令通道的分配号。将CELL写入命令通道,机器人上电启动之后,如果$MODE_OP==#EX处于外部模式,则启动CELL程序。 命令通道可能为库卡内部的命令切换通道。T1、T2、EXT?

IF $MODE_OP==#EX THEN

CWRITE($CMD,STAT,MODE,"RUN /R1/CELL()")

注释:STAT被调用后的返回值是否可以在这调用,例如 IF (STAT.RET1=CMD_OK) THEN $OUT[200]=TRUE 验证是否调用成功

\KRC\STEU\Mada中定义的通道 CMD通道的定义?

CHANNEL :SER_1 :SER_1 $PSER_1

CHANNEL :SER_2 :SER_2 $PSER_2

CHANNEL :SER_3 :SER_3 $PSER_3

CHANNEL :SER_4 :SER_4 $PSER_4

ENDIF

;ENDFOLD (AUTOEXT INIT)

;FOLD USER INIT

;Please insert user defined initialization commands

;ENDFOLD (USER INIT)

;ENDFOLD (INI)

LOOP

WAIT FOR NOT($POWER_FAIL) 掉电等待

TORQUE_MONITORING() 扭矩监视

;FOLD GRIPPER TECH PLC;%{E}%MKUKATPGRP,%CSPS,%VSPS,%P

IF (ZANGEN_FUNKT>0) THEN ;;夹持技术

H50 (5,AKT_ZANGE,DUMMY,GDEFAULT )

ZANGEN_FUNKT=0

ENDIF

;ENDFOLD (GRIPPERTECH PLC)

;FOLD USER PLC

;Make your modifications here

;ENDFOLD (USER PLC)

ENDLOOP

END

中断函数声明,当系统变量$PRO_STATE1(机器人解释程序的进程状态为P_FREE(不选择程序)调用RESET_OUT ()):

DEF RESET_OUT ( )

INT N

$LOOP_MSG[]=" "

INT REFLECT_PROG_NR=0 ; enable mirroring of program number inputs (1=enabled, 0=disabled) 声明于config.dat文件:

使能程序号输入镜像,将输入程序号返回PLC

IF REFLECT_PROG_NR == 1 THEN

FOR N = 0 TO PGNO_LENGTH - 1 config.dat文件:PGNO_LENGTH=8 ;length of ext. pgno (max. 16)

$OUT[PGNO_FBIT_REFL + N] = FALSE

config.dat文件:INT PGNO_FBIT_REFL=999 ;first bit of ext. pgno reflection output $OUT[]

ext. pgno 输出的***位 output $OUT[1000]=FALSE

ENDFOR

ENDIF

IF (PGNO_REQ>0) THEN INT PGNO_REQ=134 ;request ext. pgno input

$OUT[PGNO_REQ]=FALSE $OUT[134]=FALSE 停止对PLC程序号请求

ELSE 高电平请求有效/低电平请求有效

IF (PGNO_REQ<0) THEN

$OUT[-PGNO_REQ]=TRUE

ENDIF

ENDIF

END

;FOLD USER SUBROUTINE

;Integrate your user defined subroutines

;ENDFOLD (USER SUBROUTINE)

;ENDFOL

来源:网络


更多资讯:库卡机器人



 

联系热线:13052212751(微信同号) 联系人:胡工 联系地址:上海市宝山区富联一路98弄6号

技术和报价服务:星期一至星期六8:00-22:00 KUKA机器人配件

返回
顶部