1. Home
    1. Dashboard
    2. Search
  2. Forum
    1. Unresolved Threads
    2. Members
      1. Recent Activities
      2. Users Online
      3. Team Members
      4. Search Members
      5. Trophys
  3. Articles
  4. Blog
  5. Videos
  6. Jobs
  7. Shop
    1. Orders
  • Login or register
  • Search
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • Blog Articles
  • Products
  • More Options
  1. Robotforum - Support and discussion community for industrial robots and cobots
  2. Forum
  3. Industrial Robot Support and Discussion Center
  4. KUKA Robot Forum
Your browser does not support videos RoboDK Software for simulation and programming
Visit our Mainsponsor
IRBCAM
Robotics Channel
Robotics Training
Advertise in robotics
Sponsored Ads

EthernetKRL Real time Variables monitoring

  • RainerFord
  • July 26, 2021 at 5:19 PM
  • Thread is Unresolved
  • RainerFord
    Reactions Received
    2
    Trophies
    2
    Posts
    27
    • July 26, 2021 at 5:19 PM
    • #1

    Hello

    We have a KRC4 controller with an EthernetKRL option.

    The main objective we want to achieve is constant real time monitoring of some variables, which will be send to the robot from server via EthernetKRL.

    I tried to make some simple progs, which have some kind of while loop inside. But I faced the problem: The program works only a limited time because of EKI01280 and EKI01792 (Limit of memory element reached) Errors. The problem with first error I solved with EKI_Lock command, but is there a way to solve a problem with a second error? The manual says to increase buffer size, but as I see, it will be a bad solution, as the program will work a little bit longer, but It will be stopped by an error anyway...

  • Online
    panic mode
    Reactions Received
    1,267
    Trophies
    11
    Posts
    13,037
    • July 26, 2021 at 10:15 PM
    • #2

    you may want to elaborate... i would suggest to check pinned topic READ FIRST.

    for example you posted no code, mentioned no software versions etc.

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2

  • RainerFord
    Reactions Received
    2
    Trophies
    2
    Posts
    27
    • July 27, 2021 at 9:25 AM
    • #3

    Yep. My Bad. Software version is 8.5.8

    And also, the EKI_Lock didn't solved the problem as it causes EKI00015 (Access to empty element memory) error... So I added ClearBuffer instruction at the end of the cycle as I don't need buffer anyway. I don't know will it help or not as I still testing the program. But it seems OK right now.

    The code For program is

    Code
    &ACCESS RVP
    &REL 67
    &PARAM EDITMASK = *
    &PARAM TEMPLATE = C:\KRC\Roboter\Template\ExpertVorgabe
    &PARAM DISKPATH = KRC:\R1\test
    DEF XmlTransmit()
      INT TAC, TA[6]
      DECL EKI_STATUS RET
      REAL BX, BY, BZ, BA, BB, BC
      BOOL ConMove, Lube, STP, RSENS
    ;FOLD INI  
      ;FOLD BASISTECH INI  
      BAS (#INITMOV,0 )
      ;ENDFOLD (BASISTECH INI)
      ;FOLD USER INI
        ;Make your modifications here
      ;ENDFOLD (USER INI)
    ;ENDFOLD (INI)
    ;FOLD SPTP P1 Vel=100 % PDAT1 Tool[1]:Tool1 Base[0] ;%{PE}
    ;FOLD Parameters ;%{h}
    ;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=P1; Kuka.BlendingEnabled=False; Kuka.MoveDataPtpName=PDAT1; Kuka.VelocityPtp=100; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
    ;ENDFOLD
    SPTP XP1 WITH $VEL_AXIS[1] = SVEL_JOINT(100.0), $TOOL = STOOL2(FP1), $BASE = SBASE(FP1.BASE_NO), $IPO_MODE = SIPO_MODE(FP1.IPO_FRAME), $LOAD = SLOAD(FP1.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PPDAT1), $APO = SAPO_PTP(PPDAT1), $GEAR_JERK[1] = SGEAR_JERK(PPDAT1), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
    ;ENDFOLD
    RET=EKI_Init("Transmit")
    RET=EKI_Open("Transmit")
    BX=0
    BY=0
    BZ=0
    BA=0
    BB=0
    BC=0
    RSENS=FALSE
    ConMove=FALSE
    Lube=FALSE
    STP=FALSE
    REPEAT
    TAC=0
    FOR TAC=1 TO 6
    TA[TAC]=$MOT_TEMP[TAC]
    ENDFOR
    ;FOLD Write data
      ; Write Temps
      RET=EKI_SetInt("Transmit","Robot/ReducersTemp/Temp1", TA[1])
      RET=EKI_SetInt("Transmit","Robot/ReducersTemp/Temp2", TA[2])
      RET=EKI_SetInt("Transmit","Robot/ReducersTemp/Temp3", TA[3])
      RET=EKI_SetInt("Transmit","Robot/ReducersTemp/Temp4", TA[4])
      RET=EKI_SetInt("Transmit","Robot/ReducersTemp/Temp5", TA[5])
      RET=EKI_SetInt("Transmit","Robot/ReducersTemp/Temp6", TA[6])
      ; Write Bools
      RET=EKI_SetBool("Transmit","Robot/Taking",RSENS)
    ;ENDFOLD (Write data)
    ;FOLD Send data to external program
      RET = EKI_Send("Transmit","Robot")
      WAIT SEC 1
    ;ENDFOLD (Send data to external program)
    
    ;FOLD Get data
       ;Bag Coordinates
      RET=EKI_GetReal("Transmit","TRANS/Pos/BagCoordX",BX)
      RET=EKI_GetReal("Transmit","TRANS/Pos/BagCoordY",BY)
     RET=EKI_GetReal("Transmit","TRANS/Pos/BagCoordZ",BZ)
      RET=EKI_GetReal("Transmit","TRANS/Pos/BagCoordA",BA)
     RET=EKI_GetReal("Transmit","TRANS/Pos/BagCoordB",BB)
      RET=EKI_GetReal("Transmit","TRANS/Pos/BagCoordC",BC)
       ;Booleans
      RET=EKI_GetBool("Transmit","TRANS/ConvBool" ,ConMove)
      RET=EKI_GetBool("Transmit","TRANS/NeedLube" ,Lube)
      RET=EKI_GetBool("Transmit","TRANS/STOP" ,STP)
    ;ENDFOLD (Get data)
    RET=EKI_ClearBuffer("Transmit","TRANS")
    WAIT SEC 1
    ;ENDFOLD
    UNTIL $IN[205]==TRUE
    RET=EKI_Close("Transmit")
    RET=EKI_Clear("Transmit")
    END
    Display More

    And the Config file is

    Code
    <ETHERNETKRL>
        <CONFIGURATION>
            <EXTERNAL>
                <IP>192.168.10.44</IP>
                <PORT>60000</PORT>
            </EXTERNAL>
        </CONFIGURATION>
        <RECEIVE>
            <XML>
                <ELEMENT Tag="TRANS/Pos/BagCoordX" Type="REAL"/>
                <ELEMENT Tag="TRANS/Pos/BagCoordY" Type="REAL"/>
                <ELEMENT Tag="TRANS/Pos/BagCoordZ" Type="REAL"/>
                <ELEMENT Tag="TRANS/Pos/BagCoordA" Type="REAL"/>
                <ELEMENT Tag="TRANS/Pos/BagCoordB" Type="REAL"/>
                <ELEMENT Tag="TRANS/Pos/BagCoordC" Type="REAL"/>
                <ELEMENT Tag="TRANS/ConvBool" Type="BOOL"/>
                <ELEMENT Tag="TRANS/NeedLube" Type="BOOL"/>
                <ELEMENT Tag="TRANS/STOP" Type="BOOL"/>
                
            </XML>
        </RECEIVE>
        <SEND>
            <XML>
                <ELEMENT Tag="Robot/ReducersTemp/Temp1"/>
                <ELEMENT Tag="Robot/ReducersTemp/Temp2"/>
                <ELEMENT Tag="Robot/ReducersTemp/Temp3"/>
                <ELEMENT Tag="Robot/ReducersTemp/Temp4"/>
                <ELEMENT Tag="Robot/ReducersTemp/Temp5"/>
                <ELEMENT Tag="Robot/ReducersTemp/Temp6"/>
                <ELEMENT Tag="Robot/Taking"/>        
            </XML>
        </SEND>
    </ETHERNETKRL>
    Display More

    Edited once, last by RainerFord (July 27, 2021 at 9:43 AM).

Advertising from our partners

IRBCAM
Robotics Channel
Robotics Training
Advertise in robotics
Advertise in Robotics
Advertise in Robotics

Job Postings

  • Anyware Robotics is hiring!

    yzhou377 February 23, 2025 at 4:54 AM
  • How to see your Job Posting (search or recruit) here in Robot-Forum.com

    Werner Hampel November 18, 2021 at 3:44 PM
Your browser does not support videos RoboDK Software for simulation and programming

Tag Cloud

  • abb
  • Backup
  • calibration
  • Communication
  • CRX
  • DCS
  • dx100
  • dx200
  • error
  • Ethernet
  • Ethernet IP
  • external axis
  • Fanuc
  • help
  • hmi
  • I/O
  • irc5
  • IRVIsion
  • karel
  • kawasaki
  • KRC2
  • KRC4
  • KRC 4
  • KRL
  • KUKA
  • motoman
  • Offset
  • PLC
  • PROFINET
  • Program
  • Programming
  • RAPID
  • robodk
  • roboguide
  • robot
  • robotstudio
  • RSI
  • safety
  • Siemens
  • simulation
  • SPEED
  • staubli
  • tcp
  • TCP/IP
  • teach pendant
  • vision
  • Welding
  • workvisual
  • yaskawa
  • YRC1000

Thread Tag Cloud

  • abb
  • Backup
  • calibration
  • Communication
  • CRX
  • DCS
  • dx100
  • dx200
  • error
  • Ethernet
  • Ethernet IP
  • external axis
  • Fanuc
  • help
  • hmi
  • I/O
  • irc5
  • IRVIsion
  • karel
  • kawasaki
  • KRC2
  • KRC4
  • KRC 4
  • KRL
  • KUKA
  • motoman
  • Offset
  • PLC
  • PROFINET
  • Program
  • Programming
  • RAPID
  • robodk
  • roboguide
  • robot
  • robotstudio
  • RSI
  • safety
  • Siemens
  • simulation
  • SPEED
  • staubli
  • tcp
  • TCP/IP
  • teach pendant
  • vision
  • Welding
  • workvisual
  • yaskawa
  • YRC1000
  1. Privacy Policy
  2. Legal Notice
Powered by WoltLab Suite™
As a registered Member:
* You will see no Google advertising
* You can translate posts into your local language
* You can ask questions or help the community with your knowledge
* You can thank the authors for their help
* You can receive notifications of replies or new topics on request
* We do not sell your data - we promise

JOIN OUR GREAT ROBOTICS COMMUNITY.
Don’t have an account yet? Register yourself now and be a part of our community!
Register Yourself Lost Password
Robotforum - Support and discussion community for industrial robots and cobots in the WSC-Connect App on Google Play
Robotforum - Support and discussion community for industrial robots and cobots in the WSC-Connect App on the App Store
Download