您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 制造加工工艺 > 加工中心数控机床在学习,研究及维修中难题
二部分CL800语言@指令详解在880(数控龙门铣)/840C(MCMQ250镗床)中使用过的@指令:@0…程序结构一般指令…………………………………………………page3.041043@1…程序分支……………………………………………………………page4.111121122123124125126174@3…数据传输,系统记忆传输给R参数…………………………………page8.30031231332033033133333433636036136436736a36b3713723813833953b03b1@4…数据传输,R参数传输给系统记忆…………………………………page17.4204304324344404464c0@6…算术和逻辑功能………………………………………………………page23.614622630631634652@7…NC特定功能…………………………………………………………page26.706713714720说明:以下部分是按照840C编程手册上的目录顺序编号,本资料中所涉及到的指令为在880(数控龙门铣)/840C(MCMQ250镗床)中所有主程序和子程序中使用而操作人员可能用到的全部指令。参见:SINUMERIK840CSoftwareVersion2,3,4,5and6ProgrammingGuide07.97Edition14.ProgrammingofCycles下面章节为手册中部分@代码:2.1目标代码三个数字@代码是目标代码,具有下列结构:@123三个数字@代码最后数字@用于定义特殊功能中间数字用于划分主组别为子组别第一位数字用于分类主组别2.1.1.主组别下列功能赋予@代码的八个组别:@0…程序结构一般指令@1…程序分支@2…数据传输,一般@3…数据传输,系统内存传输给R参数@4…数据传输,R参数传输给系统内存@5…文件处理,一般(在准备中)@6…算术和逻辑功能@7…NC功能特定@f工件程序处理2.1.2目标代码后操作数为了其功能@码后需加附加信息。下列字母定义这些操作参数:K…常数R…R参数(寄存器)P…指示字常数K定义的值在程序里被固定,不能修改,(值是直接规定)指示字涉及包含被应用功能参数地址的参数举例:带操作数@代码a)@201R13P37指示字,具有源寄存器地址目标寄存器(参数)“数据传输,一般”功能@代码解释:把源寄存器中内容(即在P37寄存器包含地址)寄存到目标寄存器R13中去b)@201P16P37指示字,具有源寄存器地址指示字,具有目标寄存器地址“数据传输,一般”功能@代码解释:把源寄存器中的内容(即在寄存器R37包含地址)寄存到目标寄存器,该地址能在寄存器R16中被提供。2.1.3符号@代码要求严密符号,在下面几页各种指令表格中,一系列符号,在每个括号里,跟随在三个数字@代码之后,符号含义是:CONST数值直接规定(常数K)R-Par间接规定数值(R参数)Var间接规定数值(R参数或指示字)Value混合规定数值(常数,R参数或指示字)2.2程序结构一般指令主组别0组成如下:@0XY三个数字@代码0—存储几个R参数1—存储一个参数区域2—取回几个R参数3—取回一个参数区域4—存储R参数0—主组别0主组别0/子组别:存贮R参数@040常数R参数1…R参数n用常数规定属于此功能的其后R参数号,R参数内容被存储传输到R300堆栈寄存器开始。@041R参数1R参数2从R参数1到R参数2中R参数内容被存贮传输到堆栈R300寄存器开头。@042常数R参数n…R参数1此指令从堆栈寄存器中取出存贮值,并把它们存贮到规定的R参数中去,R参数必须以@040反过来顺序给定。@043R参数1R参数2在@041中存贮的值被送回到R参数中去。当在带R参数子程序工作时,该参数亦可在最高层应用。这些指令在主组别0/子组别4被使用。为了存贮数值和把数值0赋予规定R参数,一个进栈指令(@040或@041)必须写在子程序开始。在子程序结束用出栈指令(@042或@043)重新建立原始状态。举例在程序中指令格式:L100调用子程序@041R61R69LF从R61~R69的R参数内容传输到堆栈寄存器中并指定值为“0”@043R61R69LF被存贮值送回到R61-R69中去M17子程序结束2.3程序分支主组别1组成如下:@1XY三个数字@代码0—无比较操作者1--=等于2--不等于3-大于4--=大于或等于5--小于6--=小于或等于0—无条件跳越1—条件分支2—IF语句3—当型指令4—重复循环5—FORTO循环6—FORDOWNTO循环主组别1在编程@100跳越功能程序段中必须遵循下列几点:•在同一程序中辅助功能不能执行•在跳越指令前的参数计算和配置被执行,其后跳越指令不能执行。在“执行来自外部源”功能,在工件程序中只可以向前跳越主组别1/子组别0:绝对跳越@100常数或@100R参数用常数或R参数(指示字不允许)定义跳越目标和跳越方向,正的段号表明跳越程序段向着程序结束方向,如果段号是负的,被寻找程序段朝程序段开始方向。如果符号表错方向,即使包含在程序中控制器找不到,报警3012“程序段不存在”。例:@100K375朝程序结束方向无条件跳到N375句@100K-150朝开始方向无条件跳到N150句主组别1/子组别1:情况转移@111变量数值1常数1数值2常数2数值n常数n@100K…变量依次与数值比较,如果比较已满足,程序分支到常数代表的段号如果比较不满足,程序处理继续向下进行。情况分支例子:N475@111R11K1K480R11=1K2K485R11=2K3K490R11=3@100K900N480…@100K495N485…@100K495N490…N495…跳到N900程序结束例子解释:上面数字说明在循环程序中情况分支的应用—转换坐标轴,取决于无论是编程者定义占轴还中用R11参数为1,2,3定义加工平台,程序分支到N480(R11=1),N485(R11=2),N490(R11=3)。如果R11不包含此三个值,无疑出现参数化出错,程序分支到N900程序结束。主组别1/子组别2:如果.…则…否则分支如果.…则…否则分支状态如果条件已满足,则执行包含下一个程序段指令,否则分支到由最后常数所指定的程序段。关于段号前后的符号为搜索方向。@121变量数值常数如果变量定义的数等于数值,则程序继续执行下一个程序段,否则跳到常数规定的程序段。例:@121R13R27K375如果R13=R27程序继续,否则附条件跳到朝程序结束方向N375。@122变量数值常数如果变量定义的数值不等于数值定义的值,则程序继续运行到下一个程序段,否则跳越到常数规定的程序段。@123变量数值常数如果变量定义的数值大于数值定义的值,则程序继续运行至下一个程序段,否则跳越到常数规定的程序段。例:@123R13R27K-150如果R13R27,程序继续,否则附条例跳越至程序段N150句。@124变量数值常数如变量定义的数值大于或等于数值定义的值,则程序继续运行到下一个程序段,否则跳越到常数规定的程序段。@125变量数值常数如变量定义的数值小于数值定义的值,则程序继续运行至下一个程序段,否则跳越到常数规定的程序段。举例:“如果…则…否则”分支执行程序@126变量数值常数如变量定义值小于或等于数值定义值,则程序继续运行至下一个程序段,否则跳越到常数规定的程序段。前页举例说明:前页举例叙述的循环程序的章节说明使用“如果…则…否则”分支如何实话程序分支。如在N225程序段中寄存器R58内容小于或等于寄存器R77的内容,则执行下一行给定的指令。寄存器R88装着7和寄存器R95装着12.45。然后,如果R58大于R77,则程序分支到N230程序段,在N230程序段前一行中,即是无条件跳到N250程序段。在N225程序段中使用“如果…则…否则”分支,其意义是或是执行N225程序段或是执行N230-N250程序段。下半部例子中,不用无条件跳越以便在N475程序中指令往下或跳越,为此用@124能跳越程序部分。主组别1/子组别3:当型循环@13X变量数值常数当型循环是一个重复指令,具有在循环开始重复条件扫描,比较操作数以“如果…则…否则”分支表示那些指令,只要比较满足,下一个程序段被处理。在程序段末编入@100常数,回复扫描,如果比较不满足,程序跳越到常数规定的程序段:这程序段通常固定在无条件跳越程序段之后。例N300@131R13375R13=R27循环条件满足,提供循环继续@100K-300N375…N300@133R13R27K375R13R27循环条件满足,提供循环继续@100K-300N375主组别1/子组别4:重复循环@14Y变量数值常数重复循环是一个重复指令,具有在循环结束重复条件扫描,比较操作数“如果…则…否则”分支表示那些指令。只要条件不满足,回跳到常数定义程序段。如果条件满足,退出循环程序继续。例:N400@141R13R27K-400重复下列指令直到条件R13=R27满足N400@143R13R27K-400重复下列指令直到条件R13R27满足主组别1/子组别5:FORTO循环@151变量数值常数FORTO循环是一种以变量定义R参数内容的每计一次数作增量的计数循环,在循环开始扫描“等于”,只要不等于循环被处理,否则跳越到常数定义的程序段,循环末的变量必须是增量@620和无条件跳到循环开始。例:R5=1R51=5R52=10为R5,R51,R52赋值@201R50R51把数据从R51传输到R50N500@151R50R52K505FORTO循环开始@620R50@100K-500N505主组别1/子组别6:FORDOWNTO循环@161变量数值常数FORDOWNTO循环是一种以变量定义R参数内容每计一次数作递减的计数循环。在循环开始扫描“等于”,只要不等于,循环被处理,否则跳到常数定义的程序段。循环末的变量必须是递减的@621和无投机倒把跳到循环开始。例:R5=10R51=5R52=1为R5,R51,R52赋值@201R50R51把数据从R51传输到R50N600@161R50R52K605FORDOWNTO循环开始@621R50@100K-600N6052.4数据传输:系统内存值送入R参数主组别3组成如下:@3XY三个数字@代码特殊功能0-机床数据1-设定数据2-刀具偏置3-零点偏置4-编程设定点值5-实际值6-程序数据7-程序数据3-主组别3在主组别3中所有的@指令第一个符号为变量变量可以直接定义或借助于指示字R参数定义,该参数里被装入地址化系统单元的内容。主组别3/子组别0:把机床数据传输到R参数中@300变量数值1以数值1定义的NC机床数据地址地址范围:0-4999例:@300R50K2240第一软件限位开关值给予R50,这是第一轴的正方向限位值。@301变量数值1以数值1定义的NC机床数据位地址地址范围:5000-6999@302变量数值1数值2以数值1定义的NC机床数据位的字节地址,地址范围:5000-6999,数值2给出位地址(0~7)。@303变量数值1数值2循环机床数据值被读入变量定义R参数中数值1通道号,0,自身通道数值2字地址@304变量数值1数值2循环机床数据字节被读入变量定义R参数中数值1通道号,0:自身通道数值2字节地址@305变量数值1数值2数值3循环机床数据位被读入变量参数中数值1通道号,0:自身通道数值2字节地址数值3
本文标题:加工中心数控机床在学习,研究及维修中难题
链接地址:https://www.777doc.com/doc-281105 .html