资源描述
机器人编程机器人编程目录一、选择和启动机器人程序二、创建机器人程序三、程序中添加指令四、程序中的变量五、程序中的逻辑六、子程序和功能程序的数据处理七、补充机器人编程目录1一、选择和启动机器人程序一、选择和启动机器人程序2二、创建机器人程序【Cell】:外部自动运行时的牵引程序(有且仅能存在一个)【Expert】和【Modul】:用户程序(由SRC和DAT文件构成)【Expert Submit】和【Submit】:后台程序【Function】:功能模块程序(用户:专家模式)(用户:专家模式)二、创建机器人程序【Cell】:外部自动运行时的牵引程序(有3三、程序中添加指令【联机表格】:机器人已定义好的指令,仅需更改表格中的元素,就可实现运动和功能。三、程序中添加指令【联机表格】:4运动指令运动指令5逻辑指令逻辑指令6案列1:利用联机表格添加指令【注意】:机器人编程不区分大小写案列1:利用联机表格添加指令【注意】:机器人编程不区分大小写7本机:复制程序黏贴到虚拟机“C:KRCROBOTERKRCR1Program”关闭重启虚拟机如何往虚拟机导入程序本机:复制程序黏贴到虚拟机“C:KRCROBOTER8案列一(分析)打开后,这些是什么?打开后,这些是什么?变量变量如果只输入联机表格的名称:PTP P1 CONT VEL=100%PDAT1机器人不仅没动,还报编程错误的原因是:机器人实际运行的是折合的变量和程序。案列一(分析)打开后,这些是什么?变量如果只输入联机表格的名9四、程序中的变量变量的存储位置变量的存储位置【例】DECL GLOBAL INT IPHONE_X四、程序中的变量变量的存储位置【例】DECL GLOB10【注意】在DAT文件中:声明和初始化始终在一行【注意】在SRC文件中:声明和初始化始终在两个独立的行中进行4.1创建变量创建变量简单的数据类型(简单的数据类型(INT、REAL、BOOL、CHAR)DECL INT IPHONEDECL变量数据类型变量数据类型变量名称变量名称【注意】在DAT文件中:声明和初始化始终在一行【注意11DECL INT X10DECL REAL TD20DECL BOOL ERROR10DECL INT X1012案列2:具有简单数据类型和计数循环的数组案列2:具有简单数据类型和计数循环的数组13存储位置在Config.dat、machine.dat系统文件里。系统变量总是以“$”开头,如输入信号$IN1。1.系统变量系统变量系统状态变量系统状态变量2.系统变量系统变量外部自动运行外部自动运行3.系统变量系统变量全部全部(全部系统变量请查看资料(全部系统变量请查看资料system cariables)$pos_act:当前位置$vel_act:当前速度$softn_end:轴的限位开关4.2系统变量系统变量已定义好的全局变量已定义好的全局变量存储位置在Config.dat、machine.dat系统文14案例3、利用系统变量编程这些是什么?这些是什么?位置数据的变量位置数据的变量(复杂数据类型的复杂数据类型的变量)变量)案例3、利用系统变量编程这些是什么?位置数据的变量15已有系统预设定的结构后,可直接进行位置变量的声明已有系统预设定的结构后,可直接进行位置变量的声明DECL AXIS XP1XP1=A1 20,A2 20,A3 20,A4 15,A5 30,A6 0对位置变量赋值对位置变量赋值PTP XP1运动到运动到XP1位置位置4.3系统结构系统结构已定义好的复杂数据类型已定义好的复杂数据类型已有系统预设定的结构后,可直接进行位置变量的声明DECL 16绝对运动:绝对运动:相对运动:相对运动:【注】详见机器人编程2第五章:用变量来运动编程绝对运动:相对运动:【注】详见机器人编程2第五章:用变量174.4创建创建复杂的数据类型复杂的数据类型结构结构4.4创建复杂的数据类型结构18库卡kuka经典编程课件19流程控制流程控制为什么用为什么用continue指令?指令?阻止预进停止,机器人动阻止预进停止,机器人动作流程顺畅作流程顺畅五、程序的流程控制流程控制为什么用continue指令?阻止预进停止,机器人动205.1 信号等待信号等待5.1 信号等待215.2 时间等待时间等待5.2 时间等待225.3 循环指令循环指令5.3 循环指令23库卡kuka经典编程课件24库卡kuka经典编程课件25库卡kuka经典编程课件26库卡kuka经典编程课件27库卡kuka经典编程课件28六、子函数的数据传递6.1创建局部子程序创建局部子程序六、子函数的数据传递6.1创建局部子程序296.2创建全局子程序创建全局子程序6.2创建全局子程序306.3将参数传递给子程序将参数传递给子程序6.3将参数传递给子程序31案例4、建立函数传递的子程序案例4、建立函数传递的子程序32子程序 功能程序主程序DEF MY_PROG()DECL REAL SS=1CALC(S)END子程序DEF CALC(NUM:OUT)DECL REAL NUMNUM=NUM+1END主程序DEF MY_PROG()DECL REAL SDECL INT RS=1R=CALC(S)END功能程序DEFFCT INT CALC(NUM:OUT)DECL INT MDECL REAL NUMNUM=NUM+1M=300RETURN(M)ENDFCT功能程序是一个功能程序是一个会返回指定数据会返回指定数据类型的全局子程类型的全局子程序序子程序 功能程序主程336.4自定义自定义功能程序功能程序新建名为CALC的功能程序,返回值类型是REAL在主程序中调用CALA功能程序6.4自定义功能程序新建名为CALC的功能程序,返回值类型是34【案例5】建立功能程序新建名为新建名为“CALC”功能程序,然后将返回数据类型改为功能程序,然后将返回数据类型改为REAL在主程序中调用CALC功能程序【案例5】建立功能程序新建名为“CALC”功能程序,然后将返356.5系统自带的功能程序系统自带的功能程序怎么使用系统的功能程序?6.5系统自带的功能程序怎么使用系统的功能程序?36【案例6】使用复杂的功能程序DEF MY_PROG()DECL E6POS POS_1DECL E6AXIS POS_2DECL INT STATUSPOS_2=A1 30,A2 30,A3 20,A4 60,A5 10,A6 30STATUS=1POS_1=FORWARD(POS_2,STATUS)END【目的】坐标转换E6AXIS(A1,A2,A3,A4,A5,A6)转换E6POS(X,Y,Z,A,B,C)【功能程序】E6POS FORWARD(E6AXIS AXVAL:IN,INT STATUS:OUT)返回值的数据类型返回值的数据类型功能函数名功能函数名输入值的数据类型输入值的数据类型输入值的名称输入值的名称类型:类型:INOUT【案例6】使用复杂的功能程序DEF MY_PROG()【目37【案例7】利用功能程序实现提示信息的功能用到的功能函数用到的功能函数效果界面效果界面【案例7】利用功能程序实现提示信息的功能用到的功能函数效果界38库卡kuka经典编程课件39【案例8】利用功能程序实现弹窗选择的功能【案例8】利用功能程序实现弹窗选择的功能401、触发函数:Trigger when distance=位置 delay=时间 do 指令2、跳转函数:GOTO 标志位 标志位:3、中断函数:Interrupt decl 中断等级 when 条件 do 指令 4、后台程序:Sumbit程序 4、模拟信号的使用:$Anin15、安全空间的使用:$workspace1.mode=#inside等其他内容请参考机器人编程1机器人编程2机器人编程3【补充】Thanks【补充】Thanks41
展开阅读全文