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

KUKAVARPROXY for KRC4

  • dddomodossola
  • February 3, 2023 at 9:14 AM
  • Thread is Resolved
  • Loipe
    Reactions Received
    7
    Trophies
    3
    Posts
    38
    • February 16, 2023 at 3:02 PM
    • #21

    thanks for testing exactly what i need. On what did u test this. OfficePC or Officelite?

  • panic mode
    Reactions Received
    1,262
    Trophies
    11
    Posts
    13,027
    • February 16, 2023 at 3:06 PM
    • #22

    OfficeLite

    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

  • Loipe
    Reactions Received
    7
    Trophies
    3
    Posts
    38
    • February 16, 2023 at 4:05 PM
    • #23

    cool thanks

  • rafa del angel
    Trophies
    1
    Posts
    4
    • June 20, 2023 at 3:17 PM
    • #24

    Hi Mr, the only way to connect to the ips its from the discovery function?, if i need to read a variable from specific ip, but without using the for ip in IPs because every cycle the value of the robot its from different robot, i have 10 robots.

    Thanks

  • panic mode
    Reactions Received
    1,262
    Trophies
    11
    Posts
    13,027
    • June 20, 2023 at 3:33 PM
    • #25

    the discovery function is used to find out what robots are accessible.

    but that has nothing to do with connecting and exchanging data with the robot. in fat one can skip discovery.

    when using KVPC4 one need to to connect to it, optionally run discovery (use own list of IPs), then select IP to be accessed and then exchange the messages.

    one can select IP only when needed (and keep messaging that KRC).

    another option is to select IP every time - before each message. your call...

    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

  • rafa del angel
    Trophies
    1
    Posts
    4
    • June 20, 2023 at 5:06 PM
    • #26
    Quote from panic mode

    Hi Mr, this example its in python or in your client?,

    tested on my busy PC while running bunch of other apps using structure that resembles following

    Code
    init connection with KVP_C4
    set robot ip  
    start stopwatch
    FOR n=1 to 1000
       read $AXIS_ACT 
       textbox.append( result and status)
    NEXT
    stop stopwatch
    display stopwatch result

    the "read" in above pseudo code included composing message each time and decoding each response and stripping out timestamp.

    it takes about 11000ms or 11ms per message

    i suspected that UI probably takes a lot of time adding more and more text to a textbox, so i also tried commenting out the textbox.append. in this case result was about 6400ms or 6.4ms roundtrip per message.

    the extracted value is 147 byte long:

    Code
    $AXIS_ACT, {E6AXIS: A1 -97.3276443, A2 -43.2973099, A3 109.029694, A4 -8.19240665, A5 -4.03252316, A6 -55.1122, E1 0, E2 0, E3 0, E4 0, E5 0, E6 0}

    according to task manager memory load was negligible, CPU load by KRCserver was averaging about 1% (0.9-1.1%)

    command to set robot ip is processed only locally by the server (nothing to transfer to/from robot) so it should be faster than reading variable.

    for that i moved that command inside loop just before read, so it too is executed 1000 times.

    this was done in 7000ms or 7ms per pair of commands (setIP + read var). so setIP round trip was averaging 7ms-6.4ms = 0.6ms

    next, i replaced reading of $AXIS_ACT to $OV_PRO to see effect of much shorter response. $OV_PRO was set to 50 so payload is only two characters. loop still had both commands to set robot IP and read variable, no output to textbox.

    to my surprise this took on average a bit longer 7100ms (it was 5000-7500ms in multiple runs)

    then i tried to misspell variable. this should take even longer, so removed dollar sign and tried reading nonexistent OV_PRO, loop took 18500ms pretty consistently.

    Display More
  • panic mode
    Reactions Received
    1,262
    Trophies
    11
    Posts
    13,027
    • June 20, 2023 at 6:03 PM
    • #27

    this was done in my app (WinForm created in VisualStudio)

    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

  • rafa del angel
    Trophies
    1
    Posts
    4
    • June 20, 2023 at 7:45 PM
    • #28

    can you share a example?

  • panic mode
    Reactions Received
    1,262
    Trophies
    11
    Posts
    13,027
    • June 20, 2023 at 9:01 PM
    • #29

    an example of what exactly?

    the pseudo code that was used for benchmarking is already shared. this can be implemented in any programming language that is capable of using TCP socket. btw the results are also shared so what is the point in repeating the test? i don't think this is a heavy load for the machine. in fact i did my test while computer was running quite the load. while values will vary somewhat, my goal was getting just some figure for orientation.

    Code
    init connection with KVP_C4
    set robot ip  
    start stopwatch
    FOR n=1 to 1000
       read $AXIS_ACT 
       textbox.append( result and status)
    NEXT
    stop stopwatch
    display stopwatch result

    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

  • dddomodossola
    Reactions Received
    14
    Trophies
    3
    Posts
    25
    • June 20, 2023 at 9:59 PM
    • #30

    Hello friends,

    Just to inform that the repository already contains a client example in python

    KUKAVARPROXY_KRC4/py_kukavarproxy4_client.py at main · skilledAutomation/KUKAVARPROXY_KRC4
    KUKAVARPROXY for KRC4 controllers. Contribute to skilledAutomation/KUKAVARPROXY_KRC4 development by creating an account on GitHub.
    github.com

    So rafa del angel can use it.

    Kind Regards

  • panic mode
    Reactions Received
    1,262
    Trophies
    11
    Posts
    13,027
    • June 20, 2023 at 10:21 PM
    • #31

    and the message format is documented

    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

  • rafa del angel
    Trophies
    1
    Posts
    4
    • June 21, 2023 at 6:59 PM
    • #32
    Quote from dddomodossola

    Hello friends,

    Just to inform that the repository already contains a client example in python

    https://github.com/skilledAutomat…roxy4_client.py

    So rafa del angel can use it.

    Kind Regards

    hi when im trying to read $OUT[] for readArray i have an error

    Code
    outs= kvpa.readArray("$OUT[]")
    this is the error:
    struct.pack( h ) a bytes-like object is required
    Im using python 3.8,
  • panic mode
    Reactions Received
    1,262
    Trophies
    11
    Posts
    13,027
    • June 21, 2023 at 7:13 PM
    • #33

    looks like wrong call structure. looking inside PY file indicates that readArray has two parameters but you are only transferring one.

    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

  • Ilim Aisayev
    Trophies
    1
    Posts
    17
    • September 12, 2023 at 11:59 AM
    • #34

    Hello guys! I'm new here and I wonder if I can simulate digital inputs/outputs with this soft? My goal is starting several robots program by one click from pc and maybe there is simpler way to implement this

  • panic mode
    Reactions Received
    1,262
    Trophies
    11
    Posts
    13,027
    • September 12, 2023 at 2:12 PM
    • #35

    inputs are read only. controlling inputs needs IO driver and so far i am not aware of product that can do that other than Y200. but writing outputs or any other variable (that is not read only) is not a problem.

    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

  • Ilim Aisayev
    Trophies
    1
    Posts
    17
    • September 13, 2023 at 6:14 AM
    • #36
    Quote from panic mode

    writing outputs or any other variable (that is not read only) is not a problem.

    Sorry to bother you, but does this allow me to send an output from my pc? If I put input in KRL waiting for output before start. I just found this in documentation of KUKA Variables:

    $WAIT_FOR
    Description WAIT FOR statement at which the robot interpreter is currently waiting
    Reading of the variable is only possible in a robot program. It cannot be read
    in a submit program. The variable is write-protected.

    Code
    It's hard to understand for me if it can work. Now I have in my mind something like this:
    
    //it's pseudocode
    wait for $in[1]
    move robot to start position
    wait for &in[2]
    start .emily file via ready2_animate



    Added: I don't want to clogging this thread so I'll just ask here.

    Quote from panic mode

    inputs are read only.

    As I understand inputs receive outputs so I don't need to control inputs or I am wrong?

    Edited 2 times, last by Ilim Aisayev (September 13, 2023 at 11:33 AM).

  • panic mode
    Reactions Received
    1,262
    Trophies
    11
    Posts
    13,027
    • September 13, 2023 at 1:02 PM
    • #37

    You cannot write to inputs.

    Therefore your program using

    Wait for $in[1]

    Will wait forever, since the input does not change

    But you can use other variables...

    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

  • Online
    SkyeFire
    Reactions Received
    1,038
    Trophies
    12
    Posts
    9,371
    • September 13, 2023 at 7:57 PM
    • #38
    Quote from Ilim Aisayev

    As I understand inputs receive outputs so I don't need to control inputs or I am wrong?

    Not exactly. $INs can only be "written" by KUKA I/O drivers (Ethernet/IP, Profinet, EtherCat, etc). From the program level, $INs are read-only. KUKAVARPROXY cannot (as far as I know) control $INs, as it executes at the program level.

    That said, WAIT commands can wait for $OUTs or variable states:

    WAIT FOR $OUT[1]

    WAIT FOR MyIntegerVariable==17

  • Ilim Aisayev
    Trophies
    1
    Posts
    17
    • September 14, 2023 at 6:26 AM
    • #39
    Quote from SkyeFire

    That said, WAIT commands can wait for $OUTs or variable states:

    WAIT FOR $OUT[1]

    WAIT FOR MyIntegerVariable==17

    Quote from panic mode

    But you can use other variables...

    Wow, that's what I looked for, thanks guys a lot!

    Edited once, last by Ilim Aisayev (September 14, 2023 at 7:05 AM).

  • RoboTeachX
    Trophies
    1
    Posts
    1
    • February 3, 2024 at 11:57 AM
    • #40

    Hi,

    Thanks for this very interesting thread.

    I was actually wondering if there is any way to interrogate kukavarproxy on port 7000 via a linux command line ?

    I recall having read something like gryphrx or gryphtx. Most likely using the Gryphon Communication Protocol but cannot get my hands on these utilities :frowning_face:

    Thanks

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

Similar Threads

  • openshowvar periodic timeout issue in KRC4 UL version

    • Eli Dejo
    • December 5, 2022 at 1:35 PM
    • KUKA Robot Forum
  • KUKAVARPROXY native VB.NET library

    • diglo
    • August 10, 2016 at 11:15 AM
    • KUKA Robot Forum
  • how to find KLI dynamic IP address on KRC4 compact?

    • harveymoon
    • October 5, 2021 at 12:17 AM
    • KUKA Robot Forum
  • KUKA ROBOTS : Connecting to the real robot.

    • CTfzf
    • April 30, 2021 at 12:02 PM
    • KUKA Robot Forum
  • KUKAVARPROXY

    • nowire75
    • January 8, 2018 at 12:44 PM
    • KUKA Robot Forum
  • KukavarProxy : looking for a copy of the KRC/ folder for KRC4/KSS 8x

    • lionpeloux
    • April 1, 2019 at 3:33 PM
    • KUKA Robot Forum
  • KRC2/KRC4 update .Net Framework / KukavarProxy

    • lionpeloux
    • February 7, 2019 at 7:21 AM
    • KUKA Robot Forum

Tags

  • KRC4
  • KUKAVARPROXY
  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