Posts by ChrisFS
-
-
hi @PnsStarter
thanks for the quick answer. i think i can follow whats happening in there
but i get an error "INTP-204: (SHAKE_RANDOM, 4) Invalid value for index"
here's the full code saved out...
Code
Display More/PROG SHAKE_RANDOM /ATTR OWNER = MNEDITOR; COMMENT = ""; PROG_SIZE = 582; CREATE = DATE 24-02-16 TIME 14:00:36; MODIFIED = DATE 24-02-16 TIME 14:00:36; FILE_NAME = ; VERSION = 0; LINE_COUNT = 18; MEMORY_SIZE = 890; PROTECT = READ_WRITE; TCD: STACK_SIZE = 0, TASK_PRIORITY = 50, TIME_SLICE = 0, BUSY_LAMP_OFF = 0, ABORT_REQUEST = 0, PAUSE_REQUEST = 0; DEFAULT_GROUP = 1,*,*,*,*; CONTROL_CODE = 00000000 00000000; LOCAL_REGISTERS = 0,0,0; /MN 1: !AR[1]: MinMaxRandomX ; 2: !AR[2]: MinMaxRandomY ; 3: !AR[3]: MinMaxRandomZ ; 4: PR[10001]=LPOS ; 5: R[10001]=AR[1]*(-1) ; 6: R[10002]=AR[2]*(-1) ; 7: R[10003]=AR[3]*(-1) ; 8: !RAND2REG(Min,Max,targetReg) ; 9: CALL RAND2REG(R[10001],AR[1],10001) ; 10: CALL RAND2REG(R[10002],AR[2],10002) ; 11: CALL RAND2REG(R[10003],AR[3],10003) ; 12: PR[10002,1]=R[10001] ; 13: PR[10002,2]=R[10002] ; 14: PR[10002,3]=R[10003] ; 15: PR[10002,4]=0 ; 16: PR[10002,5]=0 ; 17: PR[10002,6]=0 ; 18:J PR[10001] 50% FINE Offset,PR[10002] ; /POS /END
-
hi all,
my company makes a handheld measuring device, but it can also be attached to robots for automative purposes. we use a Kawasaki robot to do the calibration of this. the process is that the robot moves the device into position, start the robot "shaking", take a measurement, stop the "shaking", and move to the next position.
the shaking a just basically moving the device suedo-randomly in the cartesian x/y axes around the main position using relative offset movements.
we have aquired a Fanuc CRX-10iA and have written a Tablet plugin to measure with the device - which works fine BUT without the shaking bit.
I've been reading that the robot can't be moved using KAREL code but was suggested that a KAREL program could start a TP program to "shake".
would this be something like:
RUN_TASK "looping shake TP prog" -> measure code -> ABORT_TASK "looping shake TP prog" ?
but this of course bring me to TP programs which i have very little experience with. how would i go about doing the shake in the TP program? i can't seem to find anything about moving the robot relatively using offsets in an easy way.
the "shaking" offsets just needs to be something like:
X,Y,Z,Rx,Ry,Rz
1,0,0,0,0,0 -- 1mm X axis
0,1,0,0,0,0 -- 1mm Y axis
-1,0,0,0,0,0 -- -1mm X axis
0,-1,0,0,0,0 -- 1mm Y axis - back to the start position
this is simplified a bit but to give a idea of what i need to achieve
thanks in advance for any help you can give me.
regards,
Chris
-
hi PnsStarter,
that's for the reply.
OK, it was not working because i was using roboguide. sim gives 2014 for everything - duh!
on the real robot, the correct status's are set.
but....
OPEN FILE LOG_FILE('AP', fn)
fstatus = IO_STATUS(LOG_FILE)
fstatus is always zero whether USB plugged in or not on sim and robot.
No-one at our Fanuc contacts know why.
OPEN FILE LOG_FILE('RO', fn)
however, does give the correct status though. so this was used in the end (if anyone's insterested)..
OPEN FILE LOG_FILE('RO',fn)
fstatus = IO_STATUS(LOG_FILE)
IF (fstatus = 0) OR (fstatus = 2014) THEN;
IF (fstatus = 0) THEN;
-- log file exists..
ENDIF
IF (fstatus = 2014) THEN;
-- log file doesn’t exists..
ENDIF
CLOSE FILE LOG_FILE
OPEN FILE LOG_FILE('AP',fn)
fstatus = IO_STATUS(LOG_FILE)
IF fstatus = 0 THEN
-- write log file..
ENDIF
ELSE
IF (fstatus = 2068) THEN;
-- usb not plugged in..
ENDIF
ENDIF
CLOSE FILE LOG_FILE
Cheers,
Chris
-
Hi all,
so i'm writing a KAREL program of which part of it logs to a file on USB (UD1) if the user has selected choice to log.
if the user HAS selected choice to log then the USB MUST be inserted for logging - if not the program must abort it's process
so...
OPEN FILE LOG_FILE('AP', fn)fstatus = IO_STATUS(LOG_FILE)
fstatus is always zero whether USB plugged in or not
so it was suggested to me to try opening the file read-only as that gives the correct IO status...
OPEN FILE LOG_FILE('RO',fn)
fstatus = IO_STATUS(LOG_FILE)
fstatus is zero if USB in and file already exists
fstatus is 2014 if USB in and file doeasn't exist yet (FILE-014 File not found)
fstatus is 2014 is USB is not in (FILE-014 File not found)
It seems there’s no difference between..
- “the file doesn’t exist because usb NOT plugged in” (2014) and
- “the usb IS plugged in but the file doesn’t exist on it” (2014)
another suggestion was to use
flist : ARRAY[2] OF STRING[40]
FILE_LIST(fn, 0, 3, flist, n_files, fstatus)
but similarly, fstatus is always 0 whether USB is in or not. Hmmmm….
basically all i need is,..
IF USB connected THEN
append log file
ELSE
ABORT
ENDIF
Anyone have any ideas what's going on, or how to solve it?
Any help would be extremey appreciated
Chris
-
Hi all...
after the battery change (in my previous topic).. i thought all was well... but...
the x and y directions are about 20 degrees different from the base x and y directions (ie. z is rotated by about 20 degrees).
i've looked but i just find the setting anywhere.. Tool Coordinates on the Aux Data Settings seemed like the nearest but that didnt seem to correct it.
is there a was to basically align the x, y and z of the tool with the base x, y and z?
thanks,
chris[i thought i'd sorted it with tool coords and home position, but it actually didnt]
-
mark,
thank you very much. most appreciated. it all went ok.
regards,
chris -
hi all,
i've just started getting this warning from my RS03N:-
Control Warning
W1013 <date>
Encoder battery battery low voltage. [Servo(0)]can anyone tell me how to replace the battery (i have a spare one) and then what to do afterwards - need to do some zeroing apparently.
I had a guy come down from kawasaki uk to do the same thing for an RS05 we have here as well. He did breifly tell me what to do but now coming to do it, nothing looks familiar and i can't even find where the battery goes!
i would really appreciate any help.
thanks in advance,
chris.