Hello everybody! I wonder if there is a way to start robot's program remotely from my PC with no RSI or eKRL using kukavarproxy?
KR C4 remote start with KUKAVARPROXY
- Ilim Aisayev
- Thread is Unresolved
-
-
if the KRC contains suitable code and settings then everything is possible. for example one can use KVP to set some variable and then have SPS code react on that change and run program using CWRITE. using C3Bridge instead of KukaVarProxy you can do that without any preparation work on the KRC side. but whichever way you choose, beware of dangers doing things like this can cause.
-
Hello everybody! I wonder if there is a way to start robot's program remotely from my PC with no RSI or eKRL using kukavarproxy?
Well, details matter. KRC model? KSS version? What options does your KRC have? What I/O does the KRC have? What mode do you want to run the KRC in?
Offhand, I'm not aware of any way to manipulate the System inputs (like $DRIVES_ON, $MOVE_ENABLE, $CONF_MESS, $EXT_START, etc). So there are some things that I doubt can be done via KVP directly.
However, KVP can set $OUTs. So if you can wire certain $OUTs to certain $INs, it should be possible to overcome that hurdle.
-
Well, details matter. KRC model? KSS version? What options does your KRC have? What I/O does the KRC have? What mode do you want to run the KRC in?
A regular KR C4 (big one), KSS 8.6.10, Windows 10 under the HMI. It doesn't have any extensions. I use ready2_animate and for some show I will not be able to have an access to the robot controller, so I need a way to start the program remotely any way possible. The code looks like this
CodeINI ready2_animate LoadPathTable: FILENAME.EMILY ready2_animate MoveToTableStart: FILENAME.EMILY Vel: 100% ready2_animate RunPathTable: FILENAME.EMILY Tool: 1 ready2_animate UnloadPathTable: FILENAME.EMILY SPTP HOME Vel=100 % DEFAULT
I just thought about modifying it with WAIT FOR $OUT[1] for example. In my mind it looks like I start program before the show and then it waits till I change value of $OUT[1] from my PC via KVP or another soft that allows to change values but I'm not sure if this thing is gonna work. My goal is getting more difficult cause I need to make this for 2 KR210 R3100-2 and it's important to start them at the same time. Thanks for answer!
using C3Bridge instead of KukaVarProxy you can do that without any preparation work on the KRC side.
So C3Bridge is better for my goal? Is "wait for" is OK, or which way I should try to implement this? Thanks for answer! I'll try to understand how to work with that.
-
I just thought about modifying it with WAIT FOR $OUT[1] for example. In my mind it looks like I start program before the show and then it waits till I change value of $OUT[1] from my PC via KVP or another soft that allows to change values but I'm not sure if this thing is gonna work.
That should work. It's a bit vulnerable, as you won't be able to remotely reset faults or re-start a halted program if anything happens after you hit the Start button and run away (I assume you're using AUT mode rather than EXT, from this description).
You might want to consider adding some I/O to the KRCs. That would allow you to do what I suggested above, or even add a remote panel with some buttons to control the robots with. It would also open the door to having the robots synchronize themselves -- that is, at the start of a synchronized path, Robot 2 might wait for Robot 1 to send it a signal.
-
That should work. It's a bit vulnerable, as you won't be able to remotely reset faults or re-start a halted program if anything happens after you hit the Start button and run away (I assume you're using AUT mode rather than EXT, from this description).
I thought about it and I have an idea, I'll install UltraVNC and that'll give me the ability.
Edit
I just realized that it's not gonna work cause I won't have an ability to press the start button after reset faults anyway, cause on my controller it's physical
-
You might want to consider adding some I/O to the KRCs.
Can you tell me more about it, please? I'm not really aware about I/Os and I wonder where can I learn about it?
-
There's a million ways to add I/O to a KRC4, but the simplest approach is to use EtherCat. That's the only I/O bus that the "base" KRC4 supports, without adding KUKA option packages.
Now, EC is a bus, not an I/O system, so you will have to add some hardware to bridge that gap. EC is an open standard supported by many vendors, but KUKA recommends a certain set of Beckhoff modules. That list has been growing over time, so my knowledge of it if pretty out of date, but setting up some basic I/O isn't hard.
Generally, you start by adding an EK1100 bus coupler to the KRC4. There's usually some space inside the KRC to put it, and you just have to give it 24VDC power and connect its Ethernet port to the correct port on the KRC's CCU board. This will connect the EK1100 to the KUKA Extension Bus, which is provided for this use.
Now, the EK1100 is just the start. You can buy "slices" of I/O devices that attach to the EK1100 with 2,4,8,16 I/Os, or relay-style contactors, or analog I/Os, or even "bridges" to other I/O busses -- You simply have to snap them into place on the EK1100 like Lego blocks.
Then, in WorkVisual, you have to import the EDS files for the modules, then add them to your Project in the order they are physically. Then map $INs and $OUTs to specific hardware inputs and outputs on those modules.
-
Offhand, I'm not aware of any way to manipulate the System inputs (like $DRIVES_ON, $MOVE_ENABLE, $CONF_MESS, $EXT_START, etc). So there are some things that I doubt can be done via KVP directly.
Atleast $DRIVES_ON, $CONF_MESS and $EXT_START will need to be linked from physical outputs to physical inputs. Dont know anyway around that. Move_enable can be bypassed by setting $CHCK_MOVENA to false (if you can accept the risks involved with that setup). If robot is used in EXT mode, it is completely possible to select program and start it. Note cwrite is slightly notorious, as if conditions are right it will not only select but also start the program.
-
yup, if drives are enabled, CWRITE command "RUN" will run program. but if drives are off, program will only be selected.
Create an account or sign in to comment
You need to be a member in order to leave a comment