1. Dashboard
    1. Dashboard
    2. Suche
  2. Forum
    1. Unresolved Threads
  3. Members
    1. Recent Activities
    2. Users Online
    3. Team
    4. Search Members
  4. Jobs
  5. Articles
  6. Calendar
    1. Upcoming Events
    2. Map
  7. Shop
    1. Orders
    2. Shipping Costs
  • Login or register
  • Search
Roboterprogrammierer finden
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • Blog Articles
  • Events
  • Files
  • Products
  • More Options
  1. Roboterforum.de - die Industrieroboter und Cobot Community
  2. Forum
  3. Industrieroboter Support
  4. KUKA Roboter
Your browser does not support videos autonome mobile Roboter von KUKA
besuche unseren Hauptsponsor
Roboterprogrammierer
Online Roboterschulung
Werbung schalten Roboter
Advertise in Robotics
Der Roboterkanal
Deutscher Robotikverband
Werben in Robotik
Werben für Robotik

0V Pro keine übernahme von der SPS

  • Aleksej Maciev
  • February 28, 2023 at 7:09 PM
  • Thread is Resolved
  • Aleksej Maciev
    Reactions Received
    2
    Points
    112
    Trophies
    16
    Posts
    16
    • February 28, 2023 at 7:09 PM
    • #1

    Guten Abend, wie der Titel schon lautet nimmt der Roboter die Soll Geschwindigkeit aus der Steuerung nicht an

    das hat ganz früher mal funktioniert, seitdem jetzt paar erweiterungen dazu gekommen sind, will er nicht mehr

    seeehr wahrscheinlich habe ich irgendwo was geändert ^^ , bin aber kein Experte

    und zwar soll die Geschwindigkeit im EXT Modus von der SPS bekommen also SINT, die Zahl kriegt er auch (wenn ich am KCP in die Eingänge reinschaue dann kriegt er die Zahl z.b 5 empfangen)

    nur wenn dann EXT läuft dann hat er immer die eine Geschwindigkeit die ich am KCP einstellen kann, also 1 5 10 30 50 100% mit + bzw. -

    hier ein ausschnitt aus der sps.sub

    in z.b presse.src steht auch in der INI "USER INI"

    Code
        ;FOLD USER PLC;%{E}%V3.2.0,%MKUKATPUSER,%CSPS,%VSPS,%P
    
    ;Override von der PLC
    
    IF $Mode_OP == #ex then
    
    OV_PLC = OV_von_PLC
    If OV_PLC > 100 then
    OV_PLC = 100
    Endif
    If OV_PLC < 0 then
    OV_PLC = 0
    Endif
    
    $OV_Pro = OV_PLC
    
    Endif
    Display More

    muss ich im Programm vllt irgendwo diese USER PLC aufrufen?

    Edited once, last by Aleksej Maciev (February 28, 2023 at 7:17 PM).

  • Schritt für Schritt zum Roboterprofi!
  • panic mode
    Reactions Received
    91
    Points
    3,526
    Trophies
    1
    Posts
    686
    About Me

    Any idea that cannot withstand honest criticism, is not worth believing.

    Location
    Mississauga, Ontario, Canada
    • February 28, 2023 at 8:09 PM
    • #2

    inerhalb LOOP/ENDLOOP von SPS.SUB und Submit lauft?

  • JoLa
    Reactions Received
    9
    Points
    309
    Trophies
    1
    Posts
    53
    • March 1, 2023 at 7:50 AM
    • #3

    Sollte das nicht $Mode_OP == #ext heißen?

  • DS186
    Reactions Received
    103
    Points
    3,548
    Trophies
    6
    Posts
    604
    • March 1, 2023 at 8:09 AM
    • #4

    #EX für Automatik Extern ist schon korrekt. Zuerst sollte überprüft werden, was panic mode bereits geschrieben hat. Wird $OV_PRO vielleicht noch an anderer Stelle im Programm, vermutlich in einem Submit, geschrieben?

  • Aleksej Maciev
    Reactions Received
    2
    Points
    112
    Trophies
    16
    Posts
    16
    • March 1, 2023 at 5:10 PM
    • #5

    hab nochmal rumgeforscht, in der config wird ja die Variable decl und übergeben:

    im Anhang hab ich Quellverweis für $0V Pro eingefügt als Bild

    Code
    SIGNAL sensor_Z $in[321]  TO $in[352]
    SIGNAL OV_von_PLC $in[353]  TO $in[360]
    
    DECL INT OV_PLC=0
    DECL REAL Z_Wert_Sensor=-822.0

    z.B der Z Wert wird verarbeitet, d.h wenn ich denn verändere und ein Programm manuell abarbeite ändert er mir den Wert in der Config

    bei dem 0V_PLC aber nicht, also wenn ich EXT Starte und ein durchlauf mache-> wechsel in T1 um zu schauen ob da sich was geändert hat, dann steht da immer 0

    Das heißt doch dass dieses IF nicht ausgeführt wird?

    Code
        ;FOLD USER PLC;%{E}%V3.2.0,%MKUKATPUSER,%CSPS,%VSPS,%P
    
    ;Override von der PLC
    
    IF $Mode_OP == #ex then
    
    OV_PLC = OV_von_PLC
    If OV_PLC > 100 then
    OV_PLC = 100
    Endif
    If OV_PLC < 0 then
    OV_PLC = 0
    Endif
    
    $OV_Pro = OV_PLC
    
    Endif
    Display More

    hier das ganze sps.sub

    Code
    &ACCESS RV
    &REL 10
    &COMMENT PLC on control
    DEF  SPS ( )
      ;FOLD DECLARATIONS;%{PE}%V3.2.0,%MKUKATPBASIS,%CINIT,%VCOMMON,%P
      ;FOLD BASIS DECL;%{PE}%V3.2.0,%MKUKATPBASIS,%CINIT,%VCOMMON,%P
      DECL INT WFD_PLUS,WFD_MINUS,OLD_WFD
      ;Automatik extern
      DECL STATE_T STAT
      DECL MODUS_T MODE
      ;ENDFOLD (BASIS DECL)
      ;FOLD USER DECL;%{PE}%V3.2.0,%MKUKATPBASIS,%CINIT,%VCOMMON,%P
      ; Please insert user defined declarations
    
      ;ENDFOLD (USER DECL)
      ;ENDFOLD (DECLARATIONS)
      ;FOLD INI;%{PE}%V3.2.0,%MKUKATPBASIS,%CINIT,%VCOMMON,%P
      ;Default value MSG_T 
      $MSG_T={MSG_T: VALID FALSE,RELEASE FALSE,TYP #NOTIFY,MODUL[] " ",KEY[] " ",PARAM_TYP #VALUE,PARAM[] " ",DLG_FORMAT[] " ",ANSWER 0}
      ;FOLD AUTOEXT INIT;%{E}%V3.2.0,%MKUKATPBASIS,%CSPS,%VAUTOEXT,%P
      INTERRUPT DECL 91 WHEN $PRO_STATE1==#P_FREE DO RESET_OUT ()
      INTERRUPT ON 91
      $LOOP_MSG[]="                                                            "
      MODE=#SYNC
      $H_POS=$H_POS
      TECH_MOTION=FALSE
      ;Automatik extern
      IF $MODE_OP==#EX THEN
        CWRITE($CMD,STAT,MODE,"RUN /R1/CELL()")
      ENDIF
      ;ENDFOLD (AUTOEXT INIT)
      ;FOLD USER INIT;%{E}%V3.2.0,%MKUKATPBASIS,%CSPS,%VAUTOEXT,%P
      ; Please insert user defined initialization commands
    
      ;ENDFOLD (USER INIT)
      ;ENDFOLD (INI)
    
      LOOP
         WAIT FOR NOT($POWER_FAIL)
        ;FOLD ARC20 PLC;%{E}%V3.2.0,%MKUKATPA20,%CSPS,%VSPS,%P
        IF ((ARC20==TRUE) AND (A10_OPTION==#DISABLED)) THEN
          A20_TECH ( )
        ENDIF
        ;ENDFOLD (ARC20 PLC)
        ;FOLD TOUCH PLC;%{E}%V3.2.0,%MKUKATPTS,%CSPS,%VSPS,%P
        IF H70_OPTION THEN
          IF ( NOT ($PRO_ACT) AND FG_ON_WORK AND ($OV_PRO==0)) THEN
            IF (TOUCH_ACTIVE>0) AND (TOUCH_ACTIVE<5) THEN
              IF TOUCH_O[TOUCH_ACTIVE].OUT_NR>0 THEN
                $OUT[TOUCH_O[TOUCH_ACTIVE].OUT_NR]=FALSE
              ENDIF
            ENDIF
            NOTAUS_TOUCH=TRUE ; error flag 
            $OV_PRO=OV_PRO_OLD
          ENDIF
        ENDIF
        ;ENDFOLD (TOUCH PLC)
        ;FOLD GRP PLC;%{E}%V3.2.0,%MKUKATPGRP,%CSPS,%VSPS,%P
        IF (ZANGEN_FUNKT>0) THEN
          H50 (5,AKT_ZANGE,DUMMY,GDEFAULT )
          ZANGEN_FUNKT=0
        ENDIF
        ;ENDFOLD (GRP PLC)
        ;FOLD SPOT PLC;%{E}%V3.2.0,%MKUKATPSPOT,%CSPS,%VSPS,%P
        ;Make your modifications here
    
        ;ENDFOLD (SPOT PLC)
        ;FOLD USER PLC;%{E}%V3.2.0,%MKUKATPUSER,%CSPS,%VSPS,%P
    
    ;Override von der PLC
    
    IF $Mode_OP == #ex then
    
    OV_PLC = OV_von_PLC
    If OV_PLC > 100 then
    OV_PLC = 100
    Endif
    If OV_PLC < 0 then
    OV_PLC = 0
    Endif
    
    $OV_Pro = OV_PLC
    
    Endif
    
    
    
    
    
    
        ;ENDFOLD (USER PLC)
    
    x_1 = offset_x_1 / 100.0
    y_1 = offset_y_1 / 100.0
    z_1 = offset_z_1 / 100.0
    
    x_2 = offset_x_2 / 100.0
    y_2 = offset_y_2 / 100.0
    z_2 = offset_z_2 / 100.0
    
    
    x_3 = offset_x_3 / 100.0
    y_3 = offset_y_3 / 100.0
    z_3 = offset_z_3 / 100.0
      ENDLOOP
      ;FOLD ;%{H}
      ;FOLD
    END
    ;ENDFOLD
    
    DEF  A20_TECH ( )
      IF ($PRO_STATE1==#P_STOP) THEN
        A20 (TECH_STOP )
      ENDIF
    END
    
    DEF  RESET_OUT ( )
      INT N
    
      $LOOP_MSG[]="                                                            "
      IF REFLECT_PROG_NR == 1 THEN
        FOR N = 0 TO PGNO_LENGTH - 1
          $OUT[PGNO_FBIT_REFL + N] = FALSE
        ENDFOR
      ENDIF
      IF (PGNO_REQ>0) THEN
        $OUT[PGNO_REQ]=FALSE
      ELSE
        IF (PGNO_REQ<0) THEN
          $OUT[-PGNO_REQ]=TRUE
        ENDIF
      ENDIF
    END
    
    ;FOLD USER SUBROUTINE;%{H}%V3.2.0,%MKUKATPUSER,%CSPS,%VSPS,%P
    ;Integrate your user defined subroutines
    
    ;ENDFOLD (USER SUBROUTINE)
    ;ENDFOLD
    Display More

    Images

    • 0VPRO.PNG
      • 36.69 kB
      • 434 × 879
      • 11

    Edited once, last by Aleksej Maciev (March 1, 2023 at 5:15 PM).

  • panic mode
    Reactions Received
    91
    Points
    3,526
    Trophies
    1
    Posts
    686
    About Me

    Any idea that cannot withstand honest criticism, is not worth believing.

    Location
    Mississauga, Ontario, Canada
    • March 1, 2023 at 6:49 PM
    • #6

    mode wechsel um variablen wert bestaetigen?

    warum nicht einfach Variablen Overview nutzen?

    und ist KRC wirklich in EXT?

    Quote from Aleksej Maciev

    z.B der Z Wert wird verarbeitet, d.h wenn ich denn verändere und ein Programm manuell abarbeite ändert er mir den Wert in der Config

    bei dem 0V_PLC aber nicht, also wenn ich EXT Starte und ein durchlauf mache-> wechsel in T1 um zu schauen ob da sich was geändert hat, dann steht da immer 0

    Das heißt doch dass dieses IF nicht ausgeführt wird?

    Nein...

    bedeuted dass OV_VON_PLC ist nicht wirklich von PLC controliert. (falsche deklarierung? EA Bereich?)

    versuche es mit OV_von_PLC als INT. damit kanst du PLC simulieren.

  • MOM
    Reactions Received
    24
    Points
    1,274
    Trophies
    2
    Posts
    234
    About Me

    Just make it work

    Location
    Wertingen
    • March 1, 2023 at 7:39 PM
    • #7
    Quote from Aleksej Maciev

    IF $Mode_OP == #ex then

    Ich weiß jetzt allerdings nicht, ob ENUM nicht case sensitive ist.

    Vielleicht solltest du mal #EX anstatt #ex probieren

  • Hermann
    Reactions Received
    164
    Points
    12,629
    Trophies
    8
    Posts
    2,371
    Location
    Baden-Württemberg
    • March 1, 2023 at 8:20 PM
    • #8

    Ist nicht case sensitiv. Da würde auch beim Laden schon ein Fehler kommen.

    Würde mal das if.. Verschieben, dann kann man die Variablen schon mal sauber beobachten.

    Code
    OV_PLC = OV_von_PLC
    If OV_PLC > 100 then
     OV_PLC = 100
    Endif
    If OV_PLC < 0 then
     OV_PLC = 0
    Endif
    
    IF $Mode_OP == #ex then
     $OV_Pro = OV_PLC
    Endif
    Display More
  • Aleksej Maciev
    Reactions Received
    2
    Points
    112
    Trophies
    16
    Posts
    16
    • March 6, 2023 at 9:50 AM
    • #9

    ist erledigt, der "sps" submit interpreter im System war die ganze Zeit garnicht aktiv, hab jetzt nur "geöffnet" aber nicht mit gelben taster betätigt :D

Tags

  • 1
  • 33
  • 2
  • ABB
  • ABB Roboter
  • ABS
  • base
  • constant
  • CP_PARAMS
  • Dialog
  • EX
  • EXT
  • fanuc
  • Fehler
  • FRAMES
  • INIT
  • INITIALIZED
  • INITMOV
  • IRC5
  • joint
  • KRC2
  • KRC4
  • kuka
  • new
  • NONE
  • notify
  • PATH
  • PGNO_GET
  • profinet
  • PTP_DAT
  • PTP_PARAMS
  • P_ACTIVE
  • P_FREE
  • P_RESET
  • P_STOP
  • Quit
  • Roboter
  • RobotStudio
  • Schweißen
  • Sps
  • Sync
  • T1
  • t2
  • tcp
  • Tool
  • VALUE
  • VAR
  • vel_cp
  • vel_ptp
  • Yaskawa
AD
Your browser does not support videos autonome mobile Roboter von KUKA
Einloggen für weniger Werbung

gesponserte Artikel

  • Gebrauchtroboter kaufen - Was ist zu beachten. Die Checkliste zum kauf von gebrauchten Robotern

    August 11, 2019 at 7:02 PM
  • Was macht ein Roboterprogrammierer genau und was verdient er?

    August 21, 2019 at 8:17 AM
  • Vernetzen, referenzieren, kollaborieren: Das B2B Portal für die Produktionsautomatisierung

    June 2, 2021 at 11:29 AM

Job Offer

  • Sie wollen Ihr Stellenangebot im Roboterforum schalten? Ab 149€

    Werner Hampel June 17, 2021 at 9:52 AM
  • Werde Roboterprogrammierer bei ROBTEC GmbH in Mainburg / Bayern

    Werner Hampel April 5, 2023 at 7:13 PM
Werbung auf Roboterseite
Roboter programmieren lernen
Banner Robotik

Tags

  • EXT
  • EX

Wieviele Mitglieder waren heute eingeloggt?

Logge Dich ein, um hier zu lesen wer in den letzten 24h Online war und um weniger Werbung zu sehen.

  1. Privacy Policy
  2. Legal Notice
Powered by WoltLab Suite™ 6.0.22
Roboterforum.de - die Industrieroboter und Cobot Community in the WSC-Connect App on Google Play
Roboterforum.de - die Industrieroboter und Cobot Community in the WSC-Connect App on the App Store
Download