Posts by Ash
-
-
What you seem to be talking about is called arrays.
DECL GUN_TYPE GUN[3]
Yes of course, i use arrays for pretty much everything since most of todays world is quite data intensive. They are the best solution to handle lots of information quickly.
-
not quite sure i understand perfectly.
your string is 6 characters long. first five characters are letters. so the only character in there that could be a number is the 6th one and it could be 0-9. this can be sorted out simpler, without using fancy instructions
but if you want to use string to integer instruction - you may. all you need to do is remove or skip non-numeric characters before conversion. as stated above, in case of SREAD this means initializing Offset. This has to be initialized anyway. it is telling to SREAD how many characters to skip. but in general case there could be additional trailing characters (letter, numbers or mix).
Ok so maybe some more explanation needed. So the idea is, if you have a larger amount of data to process, Its vastly simpler to use a FOR loop. So what im suggesting is you just add the number to the end of the string which represents a variable on the system. Take your average spot welder for example. You might call your variables "Gun1", "Gun2", "Gun3" right?? So are you going to set each of those things individually? OR you can just add an iCount to "GUN" So you can set all your variables in one sweep. Its fairly common practise to my knowledge i just can't see any simple solutions in kuka's.
-
- You should initialize 'offset' in the loop.
- It is not possible to use 'symbolic access' during runtime to a variable on the Kuka. The only exception I know is accessing I/O. On I/O you can get the number of the I/O from the name with the function GET_SIG_INF.
Yes, Apologies I should have included this in the example. So in the actual program Offset is initialized as 5, So you add iCounter to StringName[]
-
Alright all, Something that's really bugging the hell out of me. Really interested to hear if any has had this issue or knows a way around it. Essentially what i want is to read an INT value from a String[]
So for instance if i input some variables into a routine such as:
Input1 :IN, Input2 :IN, Input3 :IN
DECL INT iCounter,Num1
DECL INT Input1,Input2,Input3
DECL CHAR StringName[6]
StringName = "Input"
FOR iCounter = 1 to 3
SWRITE (StringName[],Stat,Offset,"%1d",iCounter)
;So now StringName[] will Equal "Input1" which is the same as the routine input
ENDFOR
BUT what im then having issues with is using the value of "Input1" because most of the kernal will read this as a CHAR type and not INT. I've tried STRTOINT, I tried Casting it out and back in.
The only way i think it could work is:
*%7s is an example
SREAD (StringName[],Stat,Offset,"%7s",Num1)
So I'm essentially reading the value of the string to convert into a number. Hope this makes sense? To be honest I'm quite certain you can do this in an ABB, I think if anything its either totally not possible, or perhaps I've not quite got the right format variable for converting.
Apologies if this is long winded.
All the best
Ash
-
Hi guys, Just a quick question...
Has anyone ever came across a method of calculating a mass via the robot alone? So to set the scenario, i have an 8700 robot with some forks for lifting fully laden pallets. There are no scales or any specific input to tell me the current weight of what I'm lifting. Doing a payload identity is not very useful here because i need a way of being able to calculate masses ranging from 50Kg - 400Kg.
At present i knocked up a small routine that derives various masses from a Torque reading on axis 5, its okish but not by any means perfect. Ideally i want to find a way i can do this without tuning the motion supervision to something ridiculous as this will effect the robot and its motors long term.
If anyone has encountered similar situations or can provide any info on how best to achieve this it would be most welcomed.
P.S Customer is tight as a ducks butt and doesn't want to just pay for a set of scales haha Was my first suggestion!
Cheers
Ash -
Hi does anyone know if a .UEW file or similar for Syntax Highlighting for Ultraedit is available anywhere?
Thanks -
Well it has been adjusted slightly yes but it doesn't explain the fixed tip wearing down so much more.
-
Hi guys, Having a bit of an issue with servo gun tip dressers, Does anyone know how this might be occurring?
The fixed tip is cutting down unevenly and eventually collapsing.
Any clues? Have tried altering pressures tip dress time etcCheers
-
Yes I have, I was hoping someone from either camp has worked on both and might be able to assist.
-
Hi guys just a quick question please, Does anyone that's worked with ABB robots and used the "Collision Delta Position" in the force master... Know if this function is available in Fanuc robots?
Thanks
Ash -
Hi guys just a quick question please, Does anyone that's worked with ABB robots and used the "Collision Delta Position" in the force master... Know if this function is available in Fanuc robots?
Thanks
Ash -
All I want to be able to do is read the Karel code for my own learning. hahaha
-
Where would I find the source code?
-
Ok I hear you, It's more for my own knowledge really, In ABB robots you can view SYST modules. So I was hoping you could read the system programs on fanucs.
A friend informs me that you can upload TP files and mark them as "noview" How would I go about viewing these?
Thanks -
That's useful but I need to know how you can read the background programs offline or on the TP? It's great to be able to see that they are running but how do you read them?
-
Does anyone know how you can access and read the background tasks? I have a load of r-2000ia's.
Cheers -
Hi guys, Just having a problem with a spot welder whereby the fixed tip is moving away from the component and the movable arm is pulling the part upto the fixed tip. I thought perhaps something to do with the TCP not updating correctly during tip dress?
Any thoughts?
Thanks -
Hi people, Just have a small query, I'm having some trouble with servo gun tip dressing where the tips are not wearing down equally. So I wondered about the equalization pressure setting, How exactly does this function or is it just self explanatory?
Unless you have any other ideas?
Many Thanks