Hello,
check if your LDD version is handling CyberTech family. I had some time ago problem with KR10 R1420 and my LDD version was to old for this robot family. Maybe ask Kuka in Katowice for update
Posts by animisiewaz
-
-
Guys,
maybe better is to go to MENU->7 FILE->1 FILE menu and make BACKUP->ASCII backup? You will have listings of all programs with position registers etc. in *.LS files and you can open it with whatever you want, even Notepad. -
Thank you panic mode, I will test it when I will have some free time at this robots.
-
Check, if brakes of A1 and A4 motors are released after turning drives on. Probably here is a cause of your problem.
-
So, my BASIS Technology section looks like this:
Code
Display More;***** B A S I S-Technologiepaket ******************* MOTION_INSERT = TPBaseMotion, 2011, INLINEFORM, KUKATPBASIS;MOVE;PTP MOVE_CHANGE_TO_LIN = TPBaseLin , 2100, INLINEFORM, KUKATPBASIS;1;LIN MOVE_CHANGE_TO_CIRC = TPBaseCirc , 2100, INLINEFORM, KUKATPBASIS;1;CIRC MOVE_CHANGE_TO_PTP = TPBasePTP , 2100, INLINEFORM, KUKATPBASIS;1;PTP MOVE_SUGGEST = TPSuggest , 2100, INLINEFORM, KUKATPBASIS;5 LOGIC_INSERT = TPBaseLogic , 2011, INLINEFORM, KUKATPBASIS;WAIT;WAIT LOGIC_CHANGE_TO_WAIT = TPBaseWaitCmd , 2100, INLINEFORM, KUKATPBASIS;4;WAIT LOGIC_CHANGE_TO_IBUS = TPBaseMapCmd , 2100, INLINEFORM, KUKATPBASIS;4;IBUS LOGIC_EXT_WAITFOR = TPBaseExtWaitFor, 2100, INLINEFORM, KUKATPBASIS;4;EXT_WAIT_FOR ;OUT_INSERT = TPBaseOut , 2011, INLINEFORM, KUKATPBASIS;OUT;OUTX OUT_FREE_NAME = TPBaseLongName, 2100, INLINEFORM, KUKATPBASIS;3;FREE_NAME, , ,20 OUT_CHANGE_TO_PULSE = TPBasePulse , 2100, INLINEFORM, KUKATPBASIS;3;PULSE OUT_CHANGE_TO_SYNOUT = TPBaseSynOut , 2100, INLINEFORM, KUKATPBASIS;3;SYNOUT OUT_CHANGE_TO_SYNPULSE = TPBaseSynPulse, 2100, INLINEFORM, KUKATPBASIS;3;SYNPULSE OUT_CHANGE_TO_OUT = TPBaseOutx , 2100, INLINEFORM, KUKATPBASIS;3;OUTX TOUCHUP_INSERT = TPBaseTouch , 2500, INLINEFORM, 0 TOUCHUP_HP_INSERT = TPBaseTouchHP, 2500, INLINEFORM, 1 TOUCHUP_ZP_INSERT = TPBaseTouchZP, 2500, INLINEFORM, 2 COMMENT_INSERT = TPBaseComment , 2011, INLINEFORM, KUKATPBASIS;COMMENT;NORMAL COMMENT_CHANGE_TO_STAMP = TPBaseCommentStamp , 2100, INLINEFORM, KUKATPBASIS;2;STAMP COMMENT_CHANGE_TO_NORMAL= TPBaseCommentNormal , 2100, INLINEFORM, KUKATPBASIS;2;NORMAL COMMENT_REFRESH_TIME = TPBaseCommentRefreshTime, 2100, INLINEFORM, KUKATPBASIS;2;REFRESH_TIME COMMENT_REFRESH_NAME = TPBaseCommentRefreshName, 2100, INLINEFORM, KUKATPBASIS;2;REFRESH_NAME COMMENT_REFRESH_TEXT = TPBaseCommentRefreshText, 2100, INLINEFORM, KUKATPBASIS;2;REFRESH_TEXT LOGIC_LONG_TEXT = Longtext, 2100, TECHPACK, KUKATPBASIS;8;LONG_TEXT,,,20 LOGIC_SYS_LIST = SystemList, 2100, TECHPACK, KUKATPBASIS;8;SYS_LIST LOGIC_OWNER_LIST = UserList, 2100, TECHPACK, KUKATPBASIS;8;OWNER_LIST LOGIC_TOGGLE_NOT = Not, 2100, TECHPACK, KUKATPBASIS;8;TOGGLE_NOT LOGIC_TOGGLE_OP = ToggleOp, 2100, TECHPACK, KUKATPBASIS;8;TOGGLE_OP LOGIC_AND_TERM = AndTerm +, 2100, TECHPACK, KUKATPBASIS;8;AND_TERM LOGIC_OR_TERM = OrTerm +, 2100, TECHPACK, KUKATPBASIS;8;OR_TERM LOGIC_EXOR_TERM = ExOrTerm +, 2100, TECHPACK, KUKATPBASIS;8;EXOR_TERM LOGIC_AND_OP = AndOp +, 2100, TECHPACK, KUKATPBASIS;8;AND_OP LOGIC_OR_OP = OrOp +, 2100, TECHPACK, KUKATPBASIS;8;OR_OP LOGIC_EXOR_OP = ExOrOp +, 2100, TECHPACK, KUKATPBASIS;8;EXOR_OP LOGIC_DEL_OP = Operator-, 2100, TECHPACK, KUKATPBASIS;8;DEL_OP LOGIC_DEL_TERM = Operator-, 2100, TECHPACK, KUKATPBASIS;8;DEL_TERM NEXT_GREIFER = Continue, 11, GREIFER PREV_GREIFER = Prev , 12, GREIFER CHANGE_GREIFER = Change , 21, GREIFER SPOT_INSERT=TPSpotInsert, 2011, INLINEFORM,KUKATPSPOT;SPOT;PTP SPOT_CHANGE_TO_LIN=TPSpotLin, 2100, TECHPACK,KUKATPSPOT;1;LIN SPOT_CHANGE_TO_CIRC=TPSpotCirc, 2100, TECHPACK,KUKATPSPOT;1;CIRC SPOT_CHANGE_TO_PTP=TPSpotPTP, 2100, TECHPACK,KUKATPSPOT;1;PTP RETRACT_INSERT=TPSpotRetract, 2011, INLINEFORM,KUKATPSPOT;RETR;PTP RETR_CHANGE_TO_LIN=TPSpotRetLin, 2100, TECHPACK,KUKATPSPOT;2;LIN RETR_CHANGE_TO_CIRC=TPSpotRetCirc, 2100, TECHPACK,KUKATPSPOT;2;CIRC RETR_CHANGE_TO_PTP=TPSpotRetPTP, 2100, TECHPACK,KUKATPSPOT;2;PTP
Could you show me example line of code, how to change permissions for users? -
What IP do you have fo your KLI in Start-Up - Network Configuration? If you have there an address from subnets 192.168.0.*, 172.16.*.* or 172.17.*.* you may have troubles, because they are used internally by robot and using it for KLI can make a mess.
IP Address on SmartPad is right.
-
SkyeFire:
Is there any manual or other document, with description how to interpret all these parameters in KRCConfigurator?panic mode:
Do you mean SoftKeyKuka.ini or MenueKeyKuka.ini? ",20" on the end of line means, that the lowest user level to execute command is Expert? -
Hello All,
I have a couple of robots (KR6 Arc Ceilling) with KRC2 Controller, KSS versions between V5.2.12 HF and V5.4.14.
I would like to disable a possibility to create/delete/modify all programs and disable TouchUp operation on User account, it should be possible only with Expert rights and upper. Is there any way to do it with all the programs? -
This error also happened me one time, when the name of my variable was too long. Check last created variables.
-
In this particular case, you don't have to worry about oil. Agilus family is only grease-lubricated
-
Hello,
everything is well described in KSS Operating and Programming Instruction for System Integrators, Chapter 6.11 Configuring Automatic External. You will find there signal diagrams for all cases.Next thing you will have to do is prepare "auto home" program, which will bring back your robot to $Home from any other position, but this thing you have to do by yourself. This is problem is much more complex, because you have to be 100% sure, that robot will return to home pos in right way everytime, when operator will hit START button.
-
@Capitain:
Are you sure, that extension of axis limits is good advice, especially A4? Robot can cut cables inside or damage other parts of A4 axis. This is the worse thing you can do, if you want to avoid singularities.bwait:
You can declare AXIS or E6AXIS variable and write something like this:
E6AXIS TEMP_POSFor A1 axis:
TEMP_POS=$AXIS_ACT
IF $AXIS_ACT_MEAS.A1 >= 170 THEN
TEMP_POS.A1=167
ENDIFPTP TEMP_POS
If you write something like this, you will program movement inside your limits.
Don't expand your limits more, than you have in robot documentation, if you don't want to have mechanical and/or electrical problems with your mechanical unit.And one more thing. Cell.src is not runing continously and you can't avoid singularities and movements outside of limits in this way. Cell.src is normally selecting program to run, and when other program is running, your "rules" will not be executed. You have to avoid wrong positions during planning and programming your motions, not during program execution.
-
Hello,
what do you mean, if you say "mapping"?
1. You can map physical IO's to kuka IO's in WorkVisual, in IO Mapping tab (and then you are mapping for example INPUT 1 from Beckhoff EL1809 to $IN[1] accessible in your programs)
2. You can define signals, for example:
Add line:
in R1/System/config.dat file in USER GLOBALS fold. If you do it, you can simply use "iBtnStart" variable in your logic.Both cases are good described in System Integrator Manual.
-
Hello all,
I'm currently assembling and starting up used 2008 IRB 580-12 with IRC5P Cabinet. Robot cell arrived without any docs. Does anybody have electrical diagrams for this type of robot? I need to rewire safety signals and check other connections. This is my first ABB, i'm familiar with Kuka and little bit with Fanuc, but this one is all new for me. -
Hello,
you didn't mention your type of robot and cabinet.in KRC4, for simple "YES/NO" questions you can use Messages (look into manual "Programming Messages"). This feature is build-in and every robot has it. If you need to ask user to input numerical value, you can use SmartInputBox from orangeapps.de, but this option is payable (you can get free demo if you want).
Regards,
Adam -
Firstly, you need to have UART <-> RS232 converter. It will give you possibility to match signal levels and whole hardware level with other RS232 devices. Read about MAX3232 IC and modules with them.
Secondly, you need a device, which will interface between Kuka and your device. If you have Profinet package, you can use for example Siemens S7-1200+CM1241, or other PLC.
So, topology could be looking like that:
KRC4 <----> PLC <---> RS232-UART Converter <---> Your external motor -
Hello,
if you want to use PLC Ladder language, the simpliest way is to connect external plc controller and let them to manage execution of robot programs.You can also program use of sensor in robot program, I think it is simplier.
1. Add "WAIT FOR <yourInputSignal>" to your program and robot will be waiting in this line, until condition will be not fullfilled.
2. Add some code to sps.sub ("plc" of robot) and call robot programs from it.For first, I advice you to read KSS 8.3 Operating and Programming Instructions for System Integrators.
-
SkyeFire already answered you for question about maximum capacity for programs.
Implementing button, which will cause robot return to home is not so simple. I see two ways:
1. Prepare your production programs with jumps from current position (program will be not executed to the end, but execute part of program to return your robot to home, for example:Code
Display MorePTP HOME PTP P1 IF iBtnHome THEN goto toHomeFromP1 ENDIF PTP P2 IF iBtnHome THEN goto toHomeFromP2 ENDIF PTP P3 IF iBtnHome THEN goto toHomeFromP3 ENDIF PTP P4 (...) toHomeFromP3: PTP P2 toHomeFromP2: PTP P1 toHomeFromP1: PTP HOME
I hope that this piece of pseudocode is showing what I mean. If in your program you will read iBtnHome input, you simply jump to label and go back to home, passing the same points like in forward run. But, be careful, path will be different! This solution also makes your program much more complex.2. My second idea is to stop and cancel current program in submit interpreter and call "return to home" program. You can write in your submit interpreter program something like that:
CodeIF iBtnHome THEN CWRITE($CMD,STAT,MODE,"STOP 1") CWRITE($CMD,STAT,MODE,"CANCEL") CWRITE($CMD,STAT,MODE,"RUN/R1/returnToHome()") ENDIF
But, going this way, also be very careful! Your returnToHome() program have to read current position of robot and select proper path for all possible positions! It means a lot of cases and also a lot of code.
Returning to home always depends on type of robot cell, possibility of collisions and environment of robot. If your cell is simple, you can prepare automatic procedurę for returning home. But if it is more complex, maybe it will be better to teach operators how to jog robot to home manually?
-
To measure load data you need Kuka.LoadDataDetermination Package. You can check in Start-up -> Install additional software, if your robot has it. If not, you can order it in Kuka.
-
No, you will change only HOME position. By TouchUp, you are modifying only one XHOME point, which is global and can be used in all your programs and subprograms, but it is not affecting on other points. Only paths, which are containing HOME point will change around this point.
To shift whole programs or subprograms, you have to change bases, which you are using in them.