大神们,给讲讲!

已锁定

小舞

  • 帖子

    113
  • 精华

    0
  • 被关注

    17

论坛等级:侠客

注册时间:2013-05-23

普通 普通 如何晋级?

大神们,给讲讲!

1454

6

2017-10-27 11:04:41

以下是一段程序,谁能给讲讲,因为太长,仅仅是一部分

N01   DEF INT LI_RPD,LI_TEMP0,LI_COUNTOS, LI_COUNTAIR

;

;// 0  PARAMETER LADEN UND GRUNDSTELLUNG HERSTELLEN

;

N03   G04 F1

N04   STOPRE

N06   IF ($P_CHANNO==1)

N07     CI_CHAN_NR=1

N08   ELSE

N09     IF ($P_CHANNO==2)

N10       CI_CHAN_NR=2

N11     ELSE

N15       E_ERROR(4,67050)  ;// PROGRAMM IM FALSCHEN KANAL

N16     ENDIF

N17   ENDIF

N18   WAITM(1,1,2,3,4)        ;// SYNCHRONISATION 1

N19   STOPRE

N20   IF (NI_AUTO_CHAN3==0) GOTOF L_END

;

N23   E_HOME                ;// GRUNDSTELLUNG MASCHINE

N24   M488                  ;// EILGANGREDUZIERUNG

N25   IF (CI_CHAN_NR==1)

N26     IF (NI_AUTO_CHAN3==4) GOTOF L_NAKTIV

N27   ELSE

N28     IF (NI_AUTO_CHAN3==3) GOTOF L_NAKTIV

N29   ENDIF

;

N31   WAITM(4,1,2)          ;// SYNCHRONISATION 4

N32   STOPRE

;N33   NI_AUTO_CHAN3=0

;

N40   CASE ($A_DBB[30+CI_CHAN_NR]) OF 0 GOTOF L_N7 1 GOTOF L_N3 2 GOTOF L_N3 3 GOTOF L_N3 4 GOTOF L_N5 5 GOTOF L_N5 6 GOTOF L_N5 9 GOTOF L_N5 DEFAULT GOTOF L_END

;

;

;------------------------------------------------

;// 3  ROHTEIL BEARBEITEN

;------------------------------------------------

N3 L_N3:

;

N310  IF ((R817>0) AND (R818>0))

N311    R50=TRUNC($TC_DP1[R817,R818]/100)

N312    IF ((R50==1) OR (R50==2))

N313      G17

N314    ELSE

N315      G18

N316    ENDIF

N317  ENDIF

;

N3600 IF (($A_DBB[30+CI_CHAN_NR]==1) OR ($A_DBB[30+CI_CHAN_NR]==2))  ;// RT/HFT IN SPINDEL 1/2

N3601   R50=1+$A_DBB[30+CI_CHAN_NR]

N340    IF ((R753<>R99) OR (R754<>R99))

N341      Z=R754

N3420     WHEN $AA_DTBB[X]>200 DO $A_DBB[40+CI_CHAN_NR]=0

N3421     IF (NB_SHORT_PART==1)

N3422       $A_DBB[40+CI_CHAN_NR]=0

N3423     ENDIF

N343      X=R871-2 H5003

N3430     STOPRE

N3431     NI_SYN_LOAD_PRISM[CI_CHAN_NR]=0 $A_DBB[40+CI_CHAN_NR]=0

N344      G[8]=R50 G64 D=R818 X=R819 Z=R820 M=R815 S=R816 M=29-R690  M191

N345    ELSE

N3460     WHEN $AA_DTBB[X]>200 DO $A_DBB[40+CI_CHAN_NR]=0

N3461     IF (NB_SHORT_PART==1)

N3462       $A_DBB[40+CI_CHAN_NR]=0

N3463     ENDIF

N347      G[8]=R50 G64 D=R818 X=R819 Z=R820 M=R815 S=R816 M=29-R690

N3470     STOPRE

N3471     NI_SYN_LOAD_PRISM[CI_CHAN_NR]=0 $A_DBB[40+CI_CHAN_NR]=0

N348      M191

N349    ENDIF

N350    ADIS=0 ADISPOS=0


N3610   IF ((R[800+$A_DBB[30+CI_CHAN_NR]]>=1) AND (CI_CHAN_ACT==1))  ; $A_DBB[31]=1 -> R801   $A_DBB[31]=2 -> R802

N3630     CALL "L" << R[800+$A_DBB[30+CI_CHAN_NR]]

N3640   ELSE

N3650     M291

N3660   ENDIF

N3670 ENDIF

;

N3780 SETMS

;

N365  IF (CI_CHAN_NR==1)

N366    R931=(($A_DBB[61] B_AND 'B00000001')>0)  ;// PICKUP SPEICHER LINKS

N367  ENDIF

N368  IF (CI_CHAN_NR==2)

N369    R931=(($A_DBB[61] B_AND 'B00000010')>0)  ;// PICKUP SPEICHER RECHTS

N370  ENDIF

;

N371  IF ($A_DBB[30+CI_CHAN_NR]==1)

N372    NI_COUNT[CI_CHAN_NR,1]=NI_COUNT[CI_CHAN_NR,1]+1 $A_DBB[30+CI_CHAN_NR]=9   ;// 1=RT -> 9=HFT

N373  ELSE

N374    NI_COUNT[CI_CHAN_NR,1]=NI_COUNT[CI_CHAN_NR,1]+1 $A_DBB[30+CI_CHAN_NR]=4   ;// 2=GHFT -> 4=FT

N375  ENDIF

;

N376  IF (R[800+$A_DBB[30+CI_CHAN_NR]]>=1)

N377    CORR_TREND

N378  ENDIF

;

N388  LI_RPD=(LI_RPD B_OR 'B0001')

;

N391  IF (LI_RPD==7)        ;// ABFRAGE: ALLE BIT'S GESETZT

N392    M489                ;// EILGANG ORIGINAL

N393    LI_RPD=15

N394  ENDIF

;

;

;------------------------------------------------

;// 5  FERTIGTEIL ENTLADEN

;------------------------------------------------

N5 L_N5:

N500  IF ((R931==1) AND ($A_DBB[10+CI_CHAN_NR] B_AND 'B00000001'))

N501    E_ERROR(4,67025)    ;// FEHLER: PICK-UP NICHT FREI

N502  ENDIF

;

N520  TRANS

N521  G00 G18 G40 G90 G94 G500 G602 G641 ADIS=0.1 ADISPOS=5 D0 M29 M390 DIAMON

N522  R50=$AA_IM[X] R60=$AA_IM[Z] R51=(($A_DBB[CI_CHAN_NR] B_AND 'B10000000')>0) $A_DBB[CI_CHAN_NR]=($A_DBB[CI_CHAN_NR] B_AND 'B01111111')

;

N533  R52=R851 R53=R851 R54=R873

N535  IF (R51==1) ;// Z-HUB AUSFAHREN AKTIV

N536    R52=$MA_POS_LIMIT_PLUS[Z]-0.2

N537  ENDIF

;

N540  SPOSA[1]=R858

N541  IF ((R753<>R99) OR (R754<>R99))

N542    IF (R754>R52)

N543      R52=R754

N544    ENDIF

N545    IF (R60>R52)

N546      R52=R60

N547    ENDIF

N5471   IF ((R51==1) AND (R754<R52)) ;// Z-HUB AUSFAHREN AKTIV

N5472     MSG("Z-AXIS MOVE TO END-POSITION FOR LUBRICATION")

N5473   ENDIF

N548    IF (R50<R871/2)

N549      X=R871-2 Z=R52

N550    ELSE

N551      Z=R52

N552    ENDIF

;N5521   MSG()

N5521   X=R54-700

N395    WHILE ($A_DBB[1] B_AND 'B00000100')

N396      E_ERROR(1,67007)

N397      STOPRE

N398    ENDWHILE

N5522   WHILE (NB_SYN_OUT[CI_CHAN_NR]==0)

N5623     MSG ("WAIT FOR CHAN3   SET NB_SYN_OUT[CI_CHAN_NR]")

N5624     STOPRE

N5625   ENDWHILE

N5626   MSG ()

N553    X=R54

N554  ELSE

N5540   X=R54-700 Z=R52

N395    WHILE ($A_DBB[1] B_AND 'B00000100')

N396      E_ERROR(1,67007)

N397      STOPRE

N398    ENDWHILE

N5541   WHILE (NB_SYN_OUT[CI_CHAN_NR]==0)

N5642     MSG ("WAIT FOR CHAN3   SET NB_SYN_OUT[CI_CHAN_NR]")

N5643     STOPRE

N5644   ENDWHILE

N5645   MSG ()

N555    X=R54 Z=R52

N556    Z=R53

N557  ENDIF

N558  WAITS

;

;// REVOLVER SCHWENKEN

N560  IF (R731>=1)

N561    IF (TRUNC(NI_COUNT[0,1]/R731)==(NI_COUNT[0,1]/R731))

N562      R50=37

N563    ELSE

N564      R50=38

N565    ENDIF

N566  ELSE

N567    R50=38

N568  ENDIF

;

;

N5680  WHILE (NI_SYN_UNLOAD_PRISM[CI_CHAN_NR]==0)

N5681    MSG ("WAIT FOR CHAN3   SET NI_SYN_UNLOAD_PRISM[CI_CHAN_NR]")

N5682    STOPRE

N5683  ENDWHILE

N5684  MSG ()

;

N5685  IF (R710==1)

N5686    IF (CI_CHAN_NR==1)

N5687      IF ($A_DBB[62] B_AND 'B00000001')

N5688        E_ERROR(4,67035)  ;// FEHLER: PICK-UP IST BELEGT LINKS

N5689      ENDIF

N5690    ELSE

N5691      IF ($A_DBB[62] B_AND 'B00000010')

N5692        E_ERROR(4,67035)  ;// FEHLER: PICK-UP IST BELEGT RECHTS

N5693      ENDIF

N5694    ENDIF

N5695  ENDIF

;

;// FUTTER LOESEN

N570  IF ((R855<>0) AND (R855<>R99))

N571    G64 Z=R855 H5002

N572    G01 Z=R856 F=R857

N573  ENDIF

;

N583  G00 G641 Z=R852 M38 T=R817 D0 M=R50

;

N585  IF (CI_CHAN_NR==1)

N5851   M311 M599 M1=98   ;// TAKTZEITBERECHNUNG

N5852 ELSE

N5853   M1311 M599 M2=98  ;// TAKTZEITBERECHNUNG

N5854 ENDIF

;

N5855 CI_STEP=0

;

;N587  $A_DBB[52+CI_CHAN_NR]=$A_DBB[30+CI_CHAN_NR] $A_DBB[30+CI_CHAN_NR]=0 R930=0 LI_RPD=(LI_RPD B_OR 'B0010') LI_COUNTOS=0

N586  E_UNLOAD            ;// WERKSTUECKZUSTAENDE TRANSFERIEREN

N587  R930=0 LI_RPD=(LI_RPD B_OR 'B0010') LI_COUNTOS=0

N588  E_TO_P

;

N591  IF (LI_RPD==7)        ;// ABFRAGE: ALLE BIT'S GESETZT

N592    M489                ;// EILGANG ORIGINAL

N593    LI_RPD=15

N594  ENDIF

;

N595  IF (R823<=0)          ;// SPANNDRUCK-VORWAHL

N596    Z=R831              ;// Z-ACHSE VOR RT AUFNEHMEN

N597  ELSE

N598    Z=R831 H=4000+R823

N5981 H5003

N599  ENDIF

;

N600  IF ((R710==1) AND (CI_CHAN_NR==1))

N601    IF (NOT($A_DBB[62] B_AND 'B00000001'))

N602      E_ERROR(4,67033)     ;// FEHLER: TEIL NICHT ABGELEGT

N603    ENDIF

N604  ENDIF

N605  IF ((R710==1) AND (CI_CHAN_NR==2))

N606    IF (NOT($A_DBB[62] B_AND 'B00000010'))

N607      E_ERROR(4,67033)     ;// FEHLER: TEIL NICHT ABGELEGT

N608    ENDIF

N609  ENDIF

;

N620  NB_M01=(($A_DBB[1] B_AND 'B01000001')>0)

N621  NI_SYN_UNLOAD_PRISM[CI_CHAN_NR]=0

;

;// PRUEFEN M01

N660  IF (NB_M01==1)

N661    Z=R751

N662    IF (R702==1)

N663      M391

N664    ENDIF

N6640   IF ($A_DBB[1] B_AND 'B1000000')

N6641     E_ERROR(1,67103)     ;// MASCHINEN-STOERUNG

N6642   ELSE

N666      IF (R701==1)

N667        G04 F10 M39

N668        SETAL(67001)

N669        M58

N670      ELSE

N671        E_ERROR(5,67001)  ;// FEHLER: MASCHINE MIT M01 ANGEHALTEN

N672      ENDIF

N6720   ENDIF

N673    M390

N674  ENDIF

;

;// PRUEFEN WERKZEUGVERWALTUNG

N680  IF (TOOL_LIFE_CUR_[0]<>0) OR (($A_DBB[20+CI_CHAN_NR] B_AND 'B00000100') AND (R688==1))

N689    Z=R751

N690    E_TO_CHE

N691    T=R817 D0

N692  ENDIF




大神们,给讲讲! 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SINUMERIK

共有25499条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。