UPDATE:
No solution was found - we had to re-image the KRC4 and reconfigure everything. Now everything works.
UPDATE:
No solution was found - we had to re-image the KRC4 and reconfigure everything. Now everything works.
UPDATE:
I've manually installed all the Tech Option packages - and the controller no longer loads up with the tech options relevant errors.
Though, The Robot still loads up in a sort of fail-state mode - "Controller runs in fail-state mode".
When i try to connect via WorkVisual - The WorkVisual crashes.
Is there anything i am missing? Is this situation recoverable or only a re-image will solve this problem?
Hi,
I tried the manual upgrade, the KSS is now running but it does not recognize the robot equipment - and the error i'm getting is "Unknown operation mode".
It seems like it is pretty much f***ed up.
I got KUKA involved, they're going to re-image the entire KRC4 and reconfigure everything.
I thought there could be an easier solution.. but it seems there isn't
NEVER update the KSS 8.3.19 without removing RemoteService.
KUKA asked me to uninstall KUKA.Remote before the upgrade, and our tech guy did not find such package so we continued upgrading anyway.
This cause the installation to halt when trying to deinstall RemoteService.
It seems that RemoteService was the package to uninstall and we got the wrong name from KUKA ("KUKA.Remote").
How can i remove RemoteService manually?
How can i upgrade the KSS it manually? Running setup.exe from the USB stick?
Also, i do not have a KUKA USB Stick - The upgrade version is on a regular USB.
Do i need any special password if i try and upgrade manually from the Windows?
Hi to all,
I've tried to upgrade my KSS version to 8.3.19, and I did not uninstall RemoteService, this caused the installation to halt after reboot. and when i rebooted again the SmartPad is stuck on "waiting for cycle" won't open.
I connected a screen and keyboard to the KRC4 and nothing runs.
I talked to KUKA they are saying the only solution is to reinstall an image using the KUKA stick which we don't currently have..
Is there any other solution??
Hi panic mode and meigo62.
Meigo - I changed it to 8000 and did a reload files shutdown - this did not solve the problem.
Panic mode - i accept what you suggested but it does not change the fact that there is enough memory left. 41% load our of 1445 MB - a single spline of 200 point should not take more than a single MB.
I asked KUKA for solution I am not sure how it is possible to upgrade our KRC4 version.
As you requested i attached a KRL program that lead to the crash, the $config.dat and also a screenshot below,
Thanks for your help, also during the crash the system memory load was at 41% so it was not even near the memory limit.
The same code succesfully ran on our KUKA Agilus which runs an older version of the KRC4 (V8.3.6)
Hi,
We have KRC4 V8.3.7
We are trying to load some massive milling tool path that includes SPLINE commands.
It seems that when we added the SPLINE command the memory usage raised significantly.
When trying to run the program we've encountered the following ERROR:
"Spline: No physical memory available, cold start required."
We did some optimization in the code that it will allocate the minimum memory (moving arrays to global $config) in order to try and fix it, and last week i tried running our program with the SPLINE commands and it ran perfectly with no errors.
But, today, the same error occured again when i started up the KRC4.
Same code, same program.
Anyone has any ideas how to solve this? Even if you don't know how to solve this please try and elaborate on the possible reasons for this issue - maybe it will drop a few coins
Also - How can i see the actual current physical memory usage?
THANKS!
Once again, I still don't understand what this has to do with using PTP with AXIS Frames. there are not S/Ts when using AXIS-specific PTP commands.
What do you mean by that FUBINI?
Why do i need to care about the status / turn when i'm giving the FORWARD function a 6-AXIS frame
Damn, I hope they will add the AXIS support in the next versions.
Fubini, Thank you very much - I will give it a try using the FORWARD function
Can i use the forward function INSIDE the CP-Spline block?
I am using only PTP motion commands (With only altering the Robot Axis)
Hi,
We have KUKA KR-120 QUANTEC EXTRA HA (KRC4) in our Robotic Lab.
Anyone here has an experience on configuring the robot to move at a constant speed ?
I'm programming the robot to move at a certain path and I need it to move on the path at a constant speed in a very high precision
I would put the $axis_act in a E6AXIS variable before the IF statement.
That is you have a critical code that depends on the A1 value.
The reason on saving the $axis_act in a variable and checking the variable.A1 value is because $axis_act could be modified between the two statements: A1 > 0 and A1 < 10. for example: if the robot is in motion.
I've improved and edited the plugin, check my code in the first post
Hello to all,
I've found NPP to be a good text editor for some occasions and in NPP you have the ability to add your own custom language.
Here's my version of KRL - I've attached the UDL file - give it a try (Language -> Add your own language -> Import)
<NotepadPlus>
<UserLang name="B3D.KRL" ext="src sub dat" udlVersion="2.1">
<Settings>
<Global caseIgnored="no" allowFoldOfComments="no" foldCompact="no" forcePureLC="0" decimalSeparator="0" />
<Prefix Keywords1="no" Keywords2="no" Keywords3="no" Keywords4="no" Keywords5="no" Keywords6="no" Keywords7="no" Keywords8="no" />
</Settings>
<KeywordLists>
<Keywords name="Comments">00; 01 02 03 04</Keywords>
<Keywords name="Numbers, prefix1"></Keywords>
<Keywords name="Numbers, prefix2"></Keywords>
<Keywords name="Numbers, extras1"></Keywords>
<Keywords name="Numbers, extras2"></Keywords>
<Keywords name="Numbers, suffix1"></Keywords>
<Keywords name="Numbers, suffix2"></Keywords>
<Keywords name="Numbers, range"></Keywords>
<Keywords name="Operators1">TRUE FALSE [ ] { } :IN REAL ( )</Keywords>
<Keywords name="Operators2"></Keywords>
<Keywords name="Folders in code1, open"></Keywords>
<Keywords name="Folders in code1, middle"></Keywords>
<Keywords name="Folders in code1, close"></Keywords>
<Keywords name="Folders in code2, open"></Keywords>
<Keywords name="Folders in code2, middle"></Keywords>
<Keywords name="Folders in code2, close"></Keywords>
<Keywords name="Folders in comment, open"></Keywords>
<Keywords name="Folders in comment, middle"></Keywords>
<Keywords name="Folders in comment, close"></Keywords>
<Keywords name="Keywords1">&ACCESS&COMMENT&PARAM</Keywords>
<Keywords name="Keywords2">DECLREALINTONOFFIFTHENTRUEFALSEDEFENDEFENDENDIFENDDATBOOLEXT:INDEFDAT</Keywords>
<Keywords name="Keywords3"></Keywords>
<Keywords name="Keywords4">E6POSE6AXISSTRUCENUMSIGNAL</Keywords>
<Keywords name="Keywords5"></Keywords>
<Keywords name="Keywords6"></Keywords>
<Keywords name="Keywords7"></Keywords>
<Keywords name="Keywords8"></Keywords>
<Keywords name="Delimiters">00" 01 02" 03' 04 05' 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23</Keywords>
</KeywordLists>
<Styles>
<WordsStyle name="DEFAULT" fgColor="000000" bgColor="FFFFFF" fontStyle="0" nesting="0" />
<WordsStyle name="COMMENTS" fgColor="000000" bgColor="FFFFFF" fontStyle="0" nesting="0" />
<WordsStyle name="LINE COMMENTS" fgColor="008000" bgColor="FFFFFF" fontStyle="0" nesting="0" />
<WordsStyle name="NUMBERS" fgColor="000000" bgColor="FFFFFF" fontStyle="0" nesting="0" />
<WordsStyle name="KEYWORDS1" fgColor="004080" bgColor="FFFFFF" fontStyle="0" nesting="0" />
<WordsStyle name="KEYWORDS2" fgColor="0000FF" bgColor="FFFFFF" fontStyle="0" nesting="0" />
<WordsStyle name="KEYWORDS3" fgColor="004000" bgColor="FFFFFF" fontStyle="0" nesting="0" />
<WordsStyle name="KEYWORDS4" fgColor="008040" bgColor="FFFFFF" fontStyle="0" nesting="0" />
<WordsStyle name="KEYWORDS5" fgColor="000000" bgColor="FFFFFF" fontStyle="0" nesting="0" />
<WordsStyle name="KEYWORDS6" fgColor="000000" bgColor="FFFFFF" fontStyle="0" nesting="0" />
<WordsStyle name="KEYWORDS7" fgColor="000000" bgColor="FFFFFF" fontStyle="0" nesting="0" />
<WordsStyle name="KEYWORDS8" fgColor="000000" bgColor="FFFFFF" fontStyle="0" nesting="0" />
<WordsStyle name="OPERATORS" fgColor="0000FF" bgColor="FFFFFF" fontStyle="0" nesting="0" />
<WordsStyle name="FOLDER IN CODE1" fgColor="000000" bgColor="FFFFFF" fontStyle="0" nesting="0" />
<WordsStyle name="FOLDER IN CODE2" fgColor="000000" bgColor="FFFFFF" fontStyle="0" nesting="0" />
<WordsStyle name="FOLDER IN COMMENT" fgColor="000000" bgColor="FFFFFF" fontStyle="0" nesting="0" />
<WordsStyle name="DELIMITERS1" fgColor="FF0000" bgColor="FFFFFF" fontStyle="0" nesting="0" />
<WordsStyle name="DELIMITERS2" fgColor="FF00FF" bgColor="FFFFFF" fontStyle="0" nesting="0" />
<WordsStyle name="DELIMITERS3" fgColor="004000" bgColor="FFFFFF" fontStyle="0" nesting="0" />
<WordsStyle name="DELIMITERS4" fgColor="004000" bgColor="FFFFFF" fontStyle="0" nesting="0" />
<WordsStyle name="DELIMITERS5" fgColor="000000" bgColor="FFFFFF" fontStyle="0" nesting="0" />
<WordsStyle name="DELIMITERS6" fgColor="000000" bgColor="FFFFFF" fontStyle="0" nesting="0" />
<WordsStyle name="DELIMITERS7" fgColor="000000" bgColor="FFFFFF" fontStyle="0" nesting="0" />
<WordsStyle name="DELIMITERS8" fgColor="000000" bgColor="FFFFFF" fontStyle="0" nesting="0" />
</Styles>
</UserLang>
</NotepadPlus>
Display More
Enjoy.
Why use Work Visual? Why not just change the code using the smart pad? I always do that, when I don't need to make big changes... You can even connect mouse and keyboard to the smart pad [emoji1]
In that way you can also modify the program while it is running...
/RoboticsMan
Sweet. never tried it - will try it next
recursive deadlock occrues when a certain state does change in the recursive state machine and causing the recursive function to be called infinite time with no way of breaking it.
yes - WOV is the only way to repair such a bug - ofcourse you can just halt the process using the smart pad but only with WOV you could change the code that is causing the recursive lock.
Zeev - let us know what you ended up doing - i still think using a loop will be a better solution
hmm, I needed to think about these two...
there is a variable monitor, variable overview, Motion-Step and Single-Step mode, HALT command, caller stack and interrupts view.... that is pretty
worst debug-able? I don't know, I've seen and worked on quite few things, some have pretty long wound way of seeing result, VHDL comes to mind.I guess WOV is WorkVisual, I am not sure how that would help since it does not execute code, it does little more than check syntax. can you elaborate?
Zeev is planning on writing a program which is part of a system that cannot be facing major bugs - every little bug is crucial - and will probably run on AUTO. so any debugging within the smart pad are nearly impossible.
Sorry if that insulted you but compared to modern programming language - KRL - is not programmer friendly - the fact there are external monitors for variables and interrupts that is the actual problem - you can't run code with break points and see dynamic, local, global variables during the actual break point and change the code in run-time.
Regarding WOV - I wanted to let Zeev be notified of the fact that incase of a recursive dead-lock he must use WOV to load new fixed code (ofcourse after he succeded in finding the bug)
Do you really want to be able to do recursive functionality within the worst debug-able programming language that was ever created?
Think what happens when an error occures and you end up with an infinite loop - only WOV could help you on cleaning that up.
My suggestion is this - use a while true loop and write a method that accepts generic position and returns true/false or whatever return values you need
I'd also add an interrupt that will run every couple of seconds making sure nothing got stuck in the while true loop.
Good luck,
Aval Hen:)