last one was 0.065mm, haven't seen one over .1mm.
Posts by asdf
-
-
I have a system where a robot picks a part, then moves to a position ~100mm above the pick surface and relocates the part in the gripper and generates a tool offset to use when placing to correct any errors with the initial pick. This second scan uses its own camera calibration at the height where the robot holds the part. Pretty standard 2D vision system. The trouble I am getting is that the part place will occasionally fail due to an "inaccurate" grip correct offset. The generated tool offset tends to have a small Z value with I would expect to be 0. This leads me to believe there is a problem with how I am generating the tool offset? or maybe something else?
See below for the program the program that generates the grip correction offset (PR[55]). This program uses the matrix math functions put together by Nation.
Thanks!
LR Mate 200iD with R-30iB Mate Plus controller.
Code
Display More17: !load necessary data into regists ; 18: PR[50:TripMasterCoords]=LPOS-LPOS ; 19: PR[50,1:TripMasterCoords]=AR[1] ; 20: PR[50,2:TripMasterCoords]=AR[2] ; 21: //PR[50,6:TripMasterCoords]=AR[3] ; 22: ; 23: PR[48:TripFoundCoords]=LPOS-LPOS ; 24: PR[48,1:TripFoundCoords]=PR[60,1:Flexivision_Posi] ; 25: PR[48,2:TripFoundCoords]=PR[60,2:Flexivision_Posi] ; 26: //PR[48,6:TripFoundCoords]=PR[60,6:Flexivision_Posi] ; 27: ; 28: PR[51:W_CamCalibFrame]=LPOS-LPOS ; 29: PR[51:W_CamCalibFrame]=UFRAME[3:elevatedCamCalib] ; 30: ; 31: --eg:Get master part coords in tool frame ; 32: --eg:W_Part = W_CamCalibFrame : TripMasterCoords ; 33: --eg:T_MasterPart = INV(W_TCP@Rescan) : W_Part ; 34: CALL MMULT(51,50,52) ; 35: CALL MINV(49,53) ; 36: CALL MMULT(53,52,57) ; 37: ; 38: --eg:Get found part coords in tool frame ; 39: --eg:W_Part = W_CamCalibFrame : TripFoundCoords ; 40: --eg:T_FoundPart = INV(W_TCP@Rescan) : W_Part ; 41: PR[52:W_Part]=LPOS-LPOS ; 42: CALL MMULT(51,48,52) ; 43: CALL MMULT(53,52,54) ; 44: ; 45: ; 46: !calculate offset ; 47: PR[55:TripRescanOffset]=PR[57:T_MasterPart]-PR[54:T_FoundPart] ;
-
post your bg program
-
It looks like the mappdk_server.kl karel program on the fanucpy github doens't have a NOABORT directive. Aborting would cause this program to stop executing, presumably killing your socket. If you have the ability to compile karel, I would try adding the NOABORT directive to this program and maybe other karel programs in the fanucpy package.
-
Can you share more context about how the STOP_ROBOT routine gets called?
-
Assuming the socket messaging is being handled by a Karel program running on the robot?
It sounds like the karel execution is getting paused or aborted when the robot is held. You can control this behavior using the %NOPAUSE and %NOABORT headers in the karel program.
-
Is your computer on the same subnet as the robot?
-
I tried the BackupTool from One Robotics . Didn't show any error messages, the file structure of the generated backup looks correct but there are no actual files from the robots.
Any one using this tool have a similar issue?
Here is what was printed in terminal after the backup:
Code
Display More2024/05/14 19:08:41 Backing up project... 2024/05/14 19:08:41 Backing up Stn_7 at 192.168.1.17 2024/05/14 19:08:41 Backing up Stn_2 at 192.168.1.12 2024/05/14 19:08:41 Backing up Stn_5 at 192.168.1.15 2024/05/14 19:08:41 Backing up Stn_3 at 192.168.1.13 2024/05/14 19:08:41 Backing up Stn_6 at 192.168.1.16 2024/05/14 19:08:41 Backing up Stn_1 at 192.168.1.11 2024/05/14 19:08:42 Finished backing up Stn_6 in 989.4589ms 2024/05/14 19:08:43 Finished backing up Stn_2 in 1.1966157s 2024/05/14 19:08:43 Finished backing up Stn_5 in 1.2025263s 2024/05/14 19:08:43 Finished backing up Stn_1 in 1.2135842s 2024/05/14 19:08:43 Finished backing up Stn_3 in 1.4684226s 2024/05/14 19:08:44 Finished backing up Stn_7 in 2.2063012s 2024/05/14 19:08:44 Backed up all robots in 2.2114668s
Thanks!
-
Sounds like you want to take the HandlingTool Operation and Programming course. It covers most of everything you listed.
Something important to realize about fanuc's online training is that they have both instructor led online classes, which are basically the same as the in person class, and a non instructor led class which is basically an interactive slideshow.
I took the instructor led online class which uses Fanuc's simulation software RoboGuide, which they provide temporary access for the course. You can learn everything you need from the online class but of course you don't get the experience of working with a physical robot.
-
I wrote a simple batch file to take backups of a multi robot cell thru FTP, inspired by https://www.onerobotics.com/posts/2013/usi…e-productivity/
It works great however it takes about 30min to pull a backup from all 6 robots in this cell. Is there any simple way to speed this up or things to look for that could be slowing it down?
Batch File goes like this, repeated for each robot:
open #IPAddr
anon
prompt
bin
lcd U:\_RobBackups\Station_1
mget *.*
quitThanks!
-
$WAITTMOUT
-
The ability to use string registers in mixed logic IF statements instead of being forced to use the old IF.... JMP LBL[] to check a string reg.
-
The fastest way to get a TP program out of roboguide (to my knowledge) is to save the cell, then go to tools -> "your workcell" folder. Then within the popup window navigate to the savepoints folder->most recent save. This is a backup of all the files on your virtual robot, from here you can pick out the TP program you want.
There are other ways to do this aswell like exporting to the loadset or FTP.
-
Perform a Controlled start then: Menu -> Next -> Program Setup
Here you can change the number of available PR's aswell as other items such as UFRAMEs.
When finished with your changes: FCTN->Cold Start
-
You can use the RUN instruction in background logic to asynchronously execute the _HANDSHAKE program. Just need to be careful of timing.
-
Thanks for pointing me in the right direction!
-
As far as I can tell, there is no official documentation that includes information on the GI mode of override select. No mention in the HandlingTool Setup and Operations manual V9.40 (MAROUHT9410201E REV B) or the help menus of our V9.30 R-30iB mate plus. Both of these documents only include info on the original DI mode of override select. Maybe I am looking in the wrong manuals?
One would assume the override will change according to the value assigned to the GI, within a valid range of 1-100.
Can anyone offer some additional info on how this mode of override select works? Or why Fanuc hasn't updated their manuals?
Thanks!
-
Are the new light curtains nuisance tripping which is causing the fence off alarm in the robot?
-
-
What do you mean by "control the robot in real time"?
Generally something like this is done by generating a program offline, loading it onto the robot, then starting the robot from some kind of cell interfacing such as a PLC.
Is this what you are trying to accomplish?
If so, how are you generating the .ls file that you would feed into the ascii loader?