BOB半岛




  1. BOB半岛

    您现在的位(wèi)置:首页>解决方案(àn)>技术文档> SINUMERIK系统参数编程(chéng)

    SINUMERIK系统参数编程

    一、 计算参数R
    1.功(gōng)能

    要使一个NC程序不仅仅适用于(yú)特定数值下(xià)的一次加工,或(huò)者必须要计算出数值,两种(zhǒng)情(qíng)况均可以使(shǐ)用计算(suàn)参(cān)数,你可以(yǐ)在程序(xù)运(yùn)行时由控制器计算或设所需要的数值;可以通过操作面板设定参数数值(zhí)。如果参(cān)数已经(jīng)赋值(zhí),则它们可以在程序(xù)中对由(yóu)变量确(què)定 地址(zhǐ)进行赋值。

    2.编(biān)程

    R0=...

    R249=...

    3.说明(míng)

    一共250个计算参数可供使(shǐ)用。

    R0...R99 - 可以(yǐ)自由使用

    R100...R249 -加工循(xún)环传递参数

    如果你没有用到(dào)加工循环,则这部分计算(suàn)参(cān)数也同样可以自由(yóu)使用。

    4.赋值
    举(jǔ)例一:

    R0=3.5678 R1=-37.3 R2=2 R3=-7 R4=-45678.1234

    用指(zhǐ)数表示法可(kě)以赋值更大的数值范(fàn)围:

    (10-300...10+300).

    指数(shù)值写在EX符号之后;最大符号数:10(包(bāo)括符号(hào)和(hé)小数点).

    EX值范围:-300到+300

    举例二:

    R0=-0.1EX-5 ;意义(yì):R0=-0.000 0001

    R1=1.874EX8 ;意义:R1=187 400 000

    注释:一个程序段中可以有多(duō)个赋值语(yǔ)句;也可以用(yòng)计算(suàn)表达式赋值。

    5.给其他的地址赋值(zhí)

    通过给其它的NC地址分配计算(suàn)参数或(huò)参数表达(dá)式(shì),可(kě)以增加NC程序的通用性。可以(yǐ)用数值、算术表(biǎo)达式或R参数(shù)对任(rèn)意(yì)NC地址赋值(zhí)。但对地址(zhǐ)N、G和(hé)L例外(wài)。

    赋(fù)值时在地址符之后写入符号(hào)"="

    赋值(zhí)语句也(yě)可(kě)以赋值-负号。

    给坐(zuò)标轴地(dì)址(运行(háng)指令)赋值时,要求有一独立的(de)程序段。

    举例:

    N10 G0 X=R2 ;给X轴赋值

    6.参数(shù)的(de)计算

    在计算参数时也(yě)遵循通常的数学运算规则。原括号内的运算优(yōu)先(xiān)进行。另外,乘法和除法运算优先于加法和减法运(yùn)算。

    二、 标(biāo)记(jì)符――程(chéng)序跳转(zhuǎn)目标
    1.功能

    1)标记符用于标记(jì)程序(xù)中所跳转的(de)目标程序段,用跳转(zhuǎn)功(gōng)能可以实现(xiàn)程序运行分支。

    2)标记(jì)符可以自由选取,但必须由2一个字母或数字组成,其中开始两个符(fú)号必(bì)须是(shì)字母或下划线。

    3)跳转目标程序段中标(biāo)记符后面必须为冒号。标记符位于程序段段首。如(rú)果(guǒ)程序段有(yǒu)段号,则(zé)标(biāo)记符(fú)紧跟着段号(hào)。

    4)在(zài)一个(gè)程序段中,标(biāo)记符不能含(hán)有其它意义。

    2.程序举例

    N10 MARKE1:G1 X20 ;MARKE1为标记符(fú),跳转(zhuǎn)目标程序段 ...

    TR789:G0 X10 Z20 ;TR789为标记符,跳转目(mù)标(biāo)程序段没有段号

    三、 绝对(duì)跳转
    1.功能

    NC程序(xù)在运行时以(yǐ)写入时的顺(shùn)序执行程(chéng)序段。

    程序在运行时(shí)可(kě)以(yǐ)通过插入程(chéng)序跳(tiào)转指令改变(biàn)执行顺序。

    跳转目标(biāo)只能是有标记符的程序段。此程序段必须位(wèi)于该程序之内。

    绝对跳转指令(lìng)必(bì)须占用一(yī)个独立(lì)的程(chéng)序段。

    2.编(biān)程

    GOTOF Lable ;先前跳转

    GOTOB Lable ;向后跳转(zhuǎn)

    AWL 说明

    GOTOF 向前(qián)跳(tiào)转(向(xiàng)程(chéng)序结(jié)束的(de)方向跳转)

    GOTOB 向后(hòu)跳转(向程序开始(shǐ)的方向跳转)

    Lable 所选的标(biāo)记符

    四、 有条件(jiàn)跳转(zhuǎn)
    1.功能

    用IF-条件(jiàn)语句表示有条件跳(tiào)转.如果满足跳转条件(也就是(shì)值不等(děng)于(yú)零),则进(jìn)行跳转(zhuǎn).跳转目标只(zhī)能是有(yǒu)标(biāo)记符的(de)程序(xù)段.该程序段必须在此(cǐ)程(chéng)序之内.

    有条件跳转指令要求一个(gè)独(dú)立的(de)程序段.在一(yī)个程(chéng)序段(duàn)中可(kě)以有许多(duō)个条件跳转指令.

    使用了条件(jiàn)跳(tiào)转后有时会使(shǐ)程序得(dé)到明显的简(jiǎn)化(huà).

    2.编程

    IF条件GOTOF Lable ;先前跳转

    IF条件(jiàn)GOTOB Lable ;向后跳转

    AWL 说(shuō)明
    GOTOF 向(xiàng)前跳转(向程序结束的方向跳转)
    GOTOB 向后跳(tiào)转(向程(chéng)序开始的方向跳转)
    Lable 所选的(de)标记(jì)符
    IF 跳转条件(jiàn)导入符
    条件 作为(wéi)条件的计(jì)算(suàn)参(cān)数,计(jì)算表(biǎo)达式
    3.比(bǐ)较运算
    运算符 意义
    = = 等于
    <> 不等
    大于
    小于
    > = 大于或(huò)等于
    < = 小于或(huò)等(děng)于

    用上述比较(jiào)运(yùn)算(suàn)表示跳转条件,计算表达式也可用于(yú)比较运算.

    比较运算的(de)结(jié)果有两种,一(yī)种为"满(mǎn)足",另一种为"不满(mǎn)足"。 "不满(mǎn)足"时,该运算(suàn)结果值为(wéi)零(líng)。

    4.比较运(yùn)算编(biān)程举例

    R1>1 ;R1大于1

    1<R1 ;1小于(yú)R1

    R1<R2+R3 ;R1小(xiǎo)于R2加R3

    R6>=SIN(R7*R7) ;R6大(dà)于或等(děng)于(yú)SIN(R7)2

    五、 程序跳转举例
    BOB半岛

    L1(半球):

    BOB半岛

    L2(半球):

    BOB半岛

    效果图:

    BOB半岛
    程序(xù)代码如下:

    G54X0Y0Z10F100M03S100

    R10=-15 R11=-9.06

    L1

    R10=15 R11=-9.06

    L1

    R10=0

    L2

    子(zǐ)程(chéng)序L1代码如下:

    G0 X=R10+12.5-4 Y=R11

    G1 Z-6 F100

    G3 I=4-12.5

    G1 X=R10+8 Y=R11

    G41 D1 X=R10+4 Y=R11

    G2 I-4

    G0 Z5

    R1=4

    R2=90

    AAA:

    R3=R1*COS(R2)+4+R10

    R4=R1*SIN(R2)-R1

    G0 X=R3 Y=R11

    G1 Z=R4 F300

    G2 I=R10-R3

    G0 Z1

    R2=R2-1

    IF R2>=0 GOTOB AAA

    G0 Z10

    M17

    子程序L2代(dài)码如下:

    R1=35

    R2=15

    R3=0

    G0 X=R1+R10 Y=R11

    G1 Z-5 F100

    AAA:

    R4=R1*COS(R3)+R10

    R5=R2*SIN(R3)+R11

    G1 X=R4 Y=R5 F100

    R3=R3+1

    IF R3<=360 GOTOB AAA

    G0 Z5

    M17

    六、 子(zǐ)程序(xù)
    1.应用

    原则上讲主程序和子程序之间并没有区(qū)别。

    用(yòng)子程序编写经(jīng)常(cháng)重(chóng)复进行的(de)加工,比如某一确定的轮(lún)廓形状。子程序位于主(zhǔ)程序的一种型式就(jiù)是(shì)加工循环,加工循环包含一般通用的(de)加工(gōng)工序,诸如螺(luó)纹切(qiē)削,柸(bēi)料切削加(jiā)工等等。通过(guò)给规定(dìng)的计(jì)算(suàn)参数赋值就可以(yǐ)实(shí)现各(gè)种具体的加工。

    2.结构(gòu)

    子程(chéng)序的(de)结构与主程(chéng)序(xù)的结构一样,在子程序中也式最后一个程序段中用M2结束子程序运行运行。子程序结束后返回(huí)主程序。

    3.程(chéng)序结束(shù)

    除了用M2指令外,还可以用RET指令结束子(zǐ)程序。

    RET要求占用一个独立的程序段。

    用RET指令结束子程序、返回主程序时不会中断G64连续路径运(yùn)行(háng)方式,用M2指令(lìng)则会中断G64运行(háng)方式,并进入停(tíng)止状态(tài)。

    &#66;&#79;&#66;&#21322;&#23707;
    4.子程序程(chéng)序名

    为了(le)方便地选择(zé)某一子(zǐ)程序,必须给(gěi)子程序取(qǔ)一(yī)个程序名。程(chéng)序(xù)名可以自(zì)由选取,但必须符合以下规定:

    - 开始两(liǎng)个符号必须时(shí)字(zì)母

    - 其(qí)它符(fú)号为字(zì)母,数字或(huò)下(xià)划线

    - 最多8个字(zì)符

    - 没(méi)有分隔符

    其方法与主程序中程序名的选取方法(fǎ)一样。

    5.子程序调用(yòng)

    在一个(gè)程序中(主程序或(huò)子程序)可以直(zhí)接用程序(xù)名调用子程序(xù)。子程(chéng)序调用(yòng)要求占用一个独立的(de)程序(xù)段(duàn)。

    举例:

    N10 L785 P3 ;调用子程序L785

    N20 WELLE7 ;调用子(zǐ)程(chéng)序WELLE7

    6.程(chéng)序重复调(diào)用

    如果要(yào)求多次连续地执行某(mǒu)一子程序,则(zé)在编程时必(bì)须在所调用子(zǐ)程序的程序名后地(dì)址P下(xià)写入调用次数(shù),最大次数(shù)可(kě)以(yǐ)为9999(P1...P9999)

    举例:

    N10 L785 P3 ;调用子程序L785 ,运行3次

    7.嵌(qiàn)套深度

    子程(chéng)序不仅可以从主程序中调用,也可以从其它程序中调用,这个(gè)过程称(chēng)为子(zǐ)程序的嵌套。子程序的(de)嵌套深度(dù)可以为三层,也就是四级(jí)程序界(jiè)面(包括主程序(xù)界面) 。

    注(zhù)释(shì):在使用加(jiā)工循环进行加工时,要注意加(jiā)工循(xún)环程序也同样属(shǔ)于四级(jí)程序界(jiè)面中的一级。

    8.说明

    在子程序中可(kě)以改变(biàn)模(mó)态有效的(de)G功能,比如G90到G91的变换.在(zài)返回(huí)调用(yòng)程(chéng)序时(shí)请注(zhù)意(yì)检(jiǎn)查一(yī)下(xià)所(suǒ)有(yǒu)模态有效的功能指令,并按照要求进行调整。

    对于R参数也需(xū)同样(yàng)注意,不(bú)要无意识地(dì)用上级(jí)程序界面中所使用的(de)计算参数来修改下级程(chéng)序界面的计算参数。

    BOB半岛

    BOB半岛