Back|Member|Save|Mobile
6 year(s)2

川崎机器人服务商

川崎机器人代理、系统集成:13918142902

News type
联系方式
  • Name:唐燕乐
  • Telephone:13918142902
  • Fax:021-60719770
站内搜索
 
Home > 新闻中心 > 机器人伺服焊钳语法的用法浅谈
新闻中心
机器人伺服焊钳语法的用法浅谈
Date:2020-08-17        Hits:62        Back

一 ,伺服焊钳USE_R的使用:

在调用的USER程序中:Tech_ EZSP Zange = Nr1 Service ProgNr = X Offset = 0 [1/10 mm] Weg = 0 [1/10 mm] S-Punkt = Y Fzg-Typ =NP7=F78

ProgNr = X 的含义:   zs焊钳程序号的设置

                       X=1-10 用于压力的测量   (ZS1-ZS4

                       X=11-20 用于检查电流测量(ZS1-ZS4

                       X=21-30 用于更换电极帽之前的力夹紧(ZS1-ZS4

                       X=31-40 用于电极帽的铣削(ZS1-ZS4

                       X=41-50 用于电极帽的***铣削后的测量焊接 (ZS1-ZS4

                       X=51-60 用于电极帽的正常铣削后的测量焊接 (ZS1-ZS4

                      X= 98   手动功能

                      X= 99   选择焊接点

                      X= 100-255 选择带零件监控的焊接点程序

                 

S-Punkt = Y的含义:  sk焊接控制器的焊点号的设置

                       Y=1-10 用于压力的测量   (ZS1-ZS4

                       Y=11-20 用于检查电流测量(ZS1-ZS4

                       Y=21-30 用于更换电极帽之前的力夹紧(ZS1-ZS4

                       Y=31-40 用于电极帽的铣削(ZS1-ZS4

                       Y=41-50 用于电极帽的***铣削后的测量焊接 (ZS1-ZS4

                       Y=51-60 用于电极帽的正常铣削后的测量焊接 (ZS1-ZS4  

                      Y= 100  65534   焊点号


///////////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////////

P1=10 是普通焊接程序程序    当P1=10时该点的USER程序会开启轨迹自动补偿方式。

USR_ADV: 前置运行

     IF $IN[I_SZ1_EK_io] THEN

    $FLAG[F_SZ_AH_KOMP]=TRUE

      MyCorrValue=GetCorrValue(Corr1_FirstBit) 电极补偿值计算

      MyCorrOFF=(Offset*0.1) 补偿基础值

      SZ1_EK_Wert=MyCorrValue

      MyCorr=$NULLframe  坐标值清0

      IF (($PRO_MODE==#GO) OR ($EXT)) THEN 外部自动状态

       MyCorr.X=-(MyCorrValue+MyCorrOff) 将补偿值存在X方向

     ELSE

       MyCorr.X=-(MyCorrValue)

     ENDIF

     IF (VW_MPARA_ACT.base_NO > 0) THEN VW_MPARA_ACTDAT文件工作状态

       SWITCH base_TYPE[VW_MPARA_ACT.base_NO]  执行程序中用的base几 例:1

         CASE #TCP  

           CONTINUE

           $base=$base:MyCorr

         DEFAULT

           CONTINUE     是1时  

           $TOOL=$TOOL:MyCorr  工具坐标进行改变。

       ENDSWITCH

     ELSE

       CONTINUE

       $TOOL=$TOOL:MyCorr

     ENDIF

           IF B_SK1_FRG_Ge THEN  电极帽更换

           B_SK1_FRG_Ge=FALSE

           CONTINUE

           MyCorrGeo_1=(MyCorrValue*SZ1_Z1_AHV) SZ1_Z1_AHV=2.0

         ENDIF

              IF ($softplcint[1]==7) AND AH_Komp THEN

         CONTINUE

         IF NOT $FLAG[F_SZ1_Anw_SF] AND NOT $FLAG[F_SZ1_Anw_NF] AND (($PRO_MODE==#GO)OR ($EXT)) THEN  不铣削,程序运行,外部自动

 $FLAG[F_SZ1_Anw_SF]=F78   $FLAG[F_SZ1_Anw_NF]=79                                        

         CONTINUE

         act_P1.E1=(act_P1.E1-0.0)  act_P1当前位置E1方向不改变

ENDIF

CONTINUE

         IF (($PRO_MODE==#GO) OR ($EXT)) THEN 程序运行,外部自动

           CONTINUE

        act_P1.E1=(act_P1.E1-(MyCorrValue*SZ1_Z1_AHV)) 焊前E1轴的补偿

           MyTest=act_P1.E1          补偿力度更大是X方向的2

         ENDIF

      IF (VW_MPARA_ACT.MOVE_TYPE==#PTP_MOTION) THEN

        CONTINUE   如果当前的运行模式是PTP 就执行当前的PTP轨迹

           PTP act_P1

         ENDIF

      IF (VW_MPARA_ACT.MOVE_TYPE==#PATH_MOTION) THEN

        CONTINUE 如果当前的运行模式是LIN就执行当前的LIN轨迹

           LIN act_P1

      ENDIF

       ENDIF

------------------------

DEFFCT REAL GetCorrValue(MyFirstBit:OUT) 计算伺服焊钳反馈电极补偿值

INT MyFirstBit

INT MyValue

INT N

INT MyMask

MyValue=0

MyMask=1

FOR N=MyFirstBit TO (MyFirstBit + 7)

 CONTINUE

 IF $IN[N] THEN   从E729-E736 伺服焊钳反馈补偿值

   MyValue=MyValue+MyMask

 ENDIF

 MyMask=MyMask*2

ENDFOR

RETURN(MyValue*0.1)

ENDFCT

-------------------------------------

      传输P

ELSE

     CONTINUE

    Prog_Nr_SZ1=PAR2                

     CONTINUE

     SK1_P_Nr=PAR5

     CONTINUE

     P_PktNr_SPS=PAR5

     CONTINUE

     IF (Prog_Nr_SZ1>90) THEN  

       CONTINUE

       Fzg_Typ_SZ1=P***

       CONTINUE

       SK1_Fzg_Typ=P***

       CONTINUE

       $OUT[O_SK1_Sensor]=FALSE

     ELSE  

       CONTINUE

       Fzg_Typ_SZ1=0

       CONTINUE

       SK1_Fzg_Typ=0  

       CONTINUE

       $OUT[O_SK1_Sensor]=FALSE

     ENDIF

ENDIF  

------------------------------------------------------------------

USR_TRIG: 触发SPS指令

       Prog_Nr_SZ1=PAR2    传输P

       Fzg_Typ_SZ1=P***  

       SK1_P_Nr=PAR5

       SK1_Fzg_Typ=P***  

       P_PktNr_SPS=PAR5

       $OUT[O_SK1_Sensor]=FALSE

       WAIT SEC 0.1          等待0.1

----------------------------------------------------------------------  

USR_MAIN:  到达该点之后执行

      X方向的补偿:

      PAR4Weg = 0 [1/10 mm] 工具的补偿

       IF (($PRO_MODE==#GO) OR ($EXT)) THEN

  Weg=PAR4

  MyCorrWeg=$NULLframe

  MyCorrWeg.X=-(Weg*0.1)

  IF (Weg>9) THEN

    PTP $Pos_act:MyCorrWeg C_PTP  

  ENDIF  执行完当前轨迹后通过Weg值移动当前位置的X方向

   ENDIF