Thanks for explaining, I can now better understand the purpose of the X55.
I'm getting out of my depth on this clearly, I'll forward all that to my colleagues and will try to report what ends up working for us.
Thanks again !
Thanks for explaining, I can now better understand the purpose of the X55.
I'm getting out of my depth on this clearly, I'll forward all that to my colleagues and will try to report what ends up working for us.
Thanks again !
After more investigating I came to the conclusion that I'm an idiot, and also that something really weird is going on
I'm stupid because I previously completely messed up my current measurements.
More accurate info :
- when using external supply, the SSR consumes 24V 20mA, the control side is triggered
- when using the power supply directly from the X55 plug (before the Beckhoff) : 24V 20mA and triggering OK
- when using the Beckoff EL2809 : voltage drops to 5.6V and 2.5mA (tested on both my KRC4 Compact and KRC5 units)
Could that be a feature of the Beckhoff ? or are both my controller miswired maybe ?
I'm starting to think I should ignore this mystery and buy the 2A Beckhoff outputs modules (EL9100 + EL2024 + EL9011)...
Any clue ?
I was able to replicate the problem on another robot (KRC5 with same Beckhoff modules)...
Do you think something weird in the Beckhoff could cause this situation ?
Have you used this kind of relays successfully ?
Thanks for helping me through this !
1+2. To measure IO voltage I place two cables in the X12 connector corresponding to $OUT[1]=True, and measure between pins 17 and 1, giving a reading of +26VDC (when the SSR is NOT connected).
3. Indeed the polarity is correct (verified using multimeter + I can see the SSR LED glowing a little)
Here are the reading with two differents SSR : approx. 5.7V and 0.23A 2.5mA
Hello all,
I have problems triggering a SSR (Solid State Relay) using standard Beckoff IOs.
Robot : KR10 + KRC4 Compact (KSS 8.5.7)
Beckhoff modules : EL2809 (outputs) + EL1809 (inputs)
Solid State Relay : SSR-40DD
The Beckhoff is operational : output is approx. 27V 500mA
SSR is operational : I can trigger it using an external DC power supply
but...
SSR is not triggered by Beckhoff module from Kuka
I tried switching the KRC4 Compact controller, IOs, SSR units : same problem.
Maybe the Beckhoff can't deliver enough power ? (but the SSR specs requires only 3-25mA so very weird)
What kind of relay do you usually use ?
Any trick to get them working ?
Thanks
I'm running KSS 8.3.
I'm programming these dialog to help operator comfort : avoid quitting the program and digging a dozen of click deep to modify a tool or base.
These shortcuts are only active in T1 and when robot is stopped. They also trigger a reduction of $OV_PRO.
Actually I understood that I can modify tools, for example TOOL_DATA[4].
But changes are not taken into account for jogging until $TOOL is updated again (by manually switching tool).
I tried different tactics switching tools in the SPS and/or triggering a subprogram to do it, but each time the SPS detects it and return a warning
Could you imagine a way around that ?
Hello !
Context :
I'm programming some shortcuts using UserTech/StatusKeys and to allow the user to adjust a tool and/or base offset.
Pressing a StatusKey triggers an $OUT, which is detected in SPS and displays a Dialog with offset options.
That's where I'd like to switch tools but I get the dreaded "$TOOL is write protected".
If I call a program from the SPS it's also stopped by "$ACC_AXIS is write protected".
Is there a workaround for this ?
Yes I couldn't find it there...
Thanks a million Panic
Sweet
Quite curious to see how the tool/base system is improved...
(off-topic question for you : I'm looking for a recent UserTech manual, would you have that at hand ? 3.2 or 3.3 maybe ?)
Is there a Changelog somewhere about KSS 8.5 ?
Any interesting stuff ?
It might be uncommun but I like to move my stuff to the SPS and config.dat.
When I need a special function like this one, I can summon in my program by triggering only an output : all the declarations, initializations, value/output resetting, etc is done in the background.
My motion paths are different everyday, it helps keeping programs clutter free.
That was the solution, good job Panic !
Just got rid of the RESUME and now the motion "resume" where it stopped. Just perfect.
Next I'll move the INTERRUPT to my SPS and that should do it.
Thanks again for your quick help
Thanks everybody,
I made progress today :
- I've done a simple logic condition to detect when the tool moves a defined distance on my Spline path
- I set up an INTERRUPT that is triggered by that logic and calls a subroutine that does the stapling
I'm now facing a problem related to INTERRUPT : I cannot go back to my main routine and resume motion after the first staple.
I get an error saying "KSS01584 - Impermissible program structure for RESUME".
Any clues ?
In my SPS loop :
IF $DISTANCE >= DISTANCE_TARGET THEN ;This detect when the tool moved the defined distance on path
$OUT[33]=TRUE ;This will call the stapler interrupt
ELSE
$OUT[33]=FALSE
ENDIF
My main program :
DEF Main()
INI
INTERRUPT DECL 11 WHEN $OUT[33]==TRUE DO InterruptStaple()
SPTP P1
INTERRUPT ON 11
SPLINE S1
SPL P2
SPL P3
SPL P4
SPL P5
SPL P6
ENDSPLINE
END
Display More
My INTERRUPT subroutine :
Very nice idea to use $OV_PRO, thanks for that.
My moves are pretty slow, so I think accuracy should be ok.
I'm already sketching how this could work on paper, will code that soon.
Follow-up question : what's the best way to introduce a wait/delay in my SPS ? (For example waiting 2sec before setting $OV_PRO back to 100%)
Can I use the WAIT command in SPS ? or maybe a condition watching a TIMER ?
Yes good catch Panic, my motion is a Spline Block going through about 10 points in 3D space...
I know there’s the variable $DISTANCE that give the elapsed distance along the path. I could detect a 20mm increase, but then I don’t really know how to « insert » a pause/wait in the motion.
Is that idea asking too much for KRL language ?
Thanks a lot for the tip !
I’ll give it a try at the end of the week and report.
Hello all,
let's say my Kuka robot has a staple gun tool,
and I'd like to fire a staple every 20mm along a motion path.
The catch is that I need the robot to be standing still to fire the stapler.
In other word I have a path (Spline) and I need the robot to come to a stop every 20mm.
Does anyone have an idea how I could program this behaviour ?
Thanks !
PS: I'm running a KR16 / KRC4
Thanks Panic !
When I create SLIN moves with the online form, the approximation tag that appears is "C_SPL".
Should I assign a value to $APO.CSPL then ?