you have to create a new unit load for the different box size. Only way I know, only thing they can change on the fly is the box height.
Posts by Doctor_C
-
-
A simple method is...
Wait DI[12]=ON+
Wait .1sec
If DI[12]=OFF, JMP LBL [2] (100msec wait, check it is still on)
Wait DI[12]=OFF-
R[12]=R[12]+1
LBL[2]
-
To see Time, Date, etc… $SYS_TIME, you must have RTL-R558 Internet connectivity/customization option installed
-
An example for you...
I have a round part in hand that has openings in the side. I want to locate one of the openings so I can locate the part when loading into a machine. lets say there are 6 holes in the side of the part.
I move to a taught point in front of a laser sensor. then I want to move 65 degrees on J6 to locate one of the holes (360 degrees/6 holes=60, added 5 to be safe)
L P[1:Start search] 100mm/sec fine
(then follow with an incremental point)
Skip condition = DI[1:laser]=OFF
L P[2:spin 65]50mm/sec fine , Skip, LBL[2]- ----joint representation, all set to 0 except J6 = 65
it will spin until the laser goes off in a hole, hope this helps you
-
Not trying to be a wise arse....
You are trying to jog in Joint, right? You can only jog in joint with that error.
-
I have done this utilizing a Fanuc option, R518 iRcalibration frame
you can find info in the V9.30 R-30iB manual, section 16, iRcalibration options.
you have to "touch" 6 points (you should be able to use your laser). two on one side of fixture, one on another side, and three on the surface. You follow the setup procedure and teach VIA (approach) points and points to search to, then the software creates the program. Mine created a new frame every time, didn't shift the frame.
-
If it is an I/O block or similar, I couldn't say.
But if it is another machine/PLC you can utilize a heartbeat signal. their heartbeat stops--no I/O
robot heartbeat is setup in Menu/I-O/cell interface/heartbeat. that's a heartbeat out, just assign a DO, and cycle power.
-
This should do what you want Corom
18 -----Waiting for one of multiple signals----
19 LBL
20 If (DI[111:pick_pos_bit0] OR DI[112:pick_pos_bit1] OR DI[113:pick_pos_bit2] OR DI[114:pick_pos_bit3]), JMP LBL [2]
21 DO [20: waiting for pick pos] = ON
22 WAIT .01 secs
23 JMP LBL [1]
24
25 LBL [2]
26 -----Got one of them----
27 DO [20: waiting for pick pos] = OFF
-
-
For years I set that variable in new robot set up, then started seeing issues. I don't remember the errors but i just started using it in the code (on, do the work, then off).
Sorry i don't have a better answer.....
-
I am guessing this variable is set in the ones that work. I have found that the newer robots don't like it set permanently.
$PR_CARTREP =1 will make the PR be copied in Cartesian.
So i just do it in my program
$PR_CARTREP = 1
PR[5] = UF[2]
$PR_CARTREP=0
-
-
Override speed adj
$SHFTOV_ENB Name: Enables Shifted Override Setting
Description: If set to 0, the override will step up and down in fine increments of 5%. This occurs regardless of whether you press the SHIFT key. If set to 1, the override steps up and down from 50% to 100% and back if the SHIFT key is pressed.
-
On newer robots the command under [instr], misc, is Override =....
If you don't have that you could use [instr], misc, Parameter name, $...=....
The command is then $MCR.$GENOVERRIDE = ....
-
Well if you can utilize ERR_NUM the code for FILE is 2, and add the alarm number, ie.
FILE-066 ERR_NUM = 2066
But I only see SKIP CONDITION = ERR_NUM
as an option or utilized in a condition handler
WHEN ERR_NUM =
-
I would map the drift. if the drifting is in an arc to the robot center, then it indicates base bolts.
An M-20 is a rugged robot, i don't see crashes causing this. (smaller robots utilize harmonic drives which "skip" teeth easier)
end of arm tools, if not doweled, can cause issues like this, movement around the mounting bolts
The iRVision mastering is a great option, i would keep that one in my back pocket.
Good luck
-
You taught them before Robot accuracy enhancement,
what i meant is after doing the "precision mastering" as we call it, you should redo your toolframes.
Hope this helps
-
I have utilized the Robot accuracy enhancement technique many times, mostly the J5 portion.
It is much better than Calibration right out of the box.
Second, can you teach the tool frames. Robot is much more accurate than direct entry.
-
couple things i do when i run an application like that.
1. I utilize the number found from vision. ie.this way if <2 found, jmp lbl (run the conveyor), jmp back and re-run vision til I have how many parts I want.
2. I set a register to 1 for Vis_running on the first line, then set to zero on the last line.
Number two is used to keep from Running the program again if it is already running.
Where you "run" you're program use something like this....
If R[15:vis_running]<>0, jmp lbl [3]
Run VIS_PROG
Lbl [3]
-
the motion following servotool [1]
J PR[75:Open_Gripper_A] 100% FINE will end when your contact settings are made, like a skip label, and proceed to the next line. The 1st thing is i think your Torque Limit 100% (value by default) is too high, the most i have ever used is 30%.
Settings after contact:
- Offset: 0
Torque limit : 0 this is how much torque you use to "carry" the part. I generally use 1/2 of the torque limit here. ie.torque limit 30, setting after contact torque limit 15To release the part you need to SERVTOOL END, then release the part. Hope this helps.