MotoSight 2D + AccuFast for Welding
When applying automation systems to welding applications, it's common to use sensors to guide the robot's weld path into the weld seam. Common sensors include touch sensing and laser-based, non-contact sensors. However, there are applications when Cognex cameras are used for welding applications, via the Motosight 2D function.
In general, using a 2D camera as the sole sensor for welding applications is often insufficient. The 2D camera can do an excellent job of looking for lateral variation of the weld seam, but height variations of the weld seam usually can't be detected with the 2D camera. So in order to detect height variation, either touch sensing or a laser-based sensor can be added to the robot end of arm tool. The 2D camera can detect large lateral variations of the weld seam much faster than touch sensing or AccuFast (Yaskawa's commonly used 1D laser sensor), while touch sensing or AccuFast can be used to detect vertical variations of the weld seam.
In order to apply both a 2D camera and 1D sensor (ie. AccuFast), the following points should be considered.
- Program the 2D camera to measure lateral variation(s) of the weld seam. Typically an Edge tool can be used to detect the weld seam with the camera placed directly overhead (ie. perpendicular to) the weld seam.
-
Apply the 2D camera measurement. 2 ways:
-
- Method 1: the ADJUST macro can be used to create a User Frame. After the User Frame is created, next create a Weld Job for the robot path and define this job to be based on the User Frame that is created by the ADJUST macro job. Every time the ADJUST macro successfully runs, the weld path is updated to the new (deviated part's) weld joint location.
- Method 2: the ADJUST macro saves the position of the weld seam to a P variable. After this P variable data is created during setup / initial teaching, save this location in a second P variable, Macro Reference Position, MOV position, etc. Then during routine playback of the robot job (that contains the ADJUST macro), compare the saved position of the newly-detect weld seam location created by the ADJUST macro. Compare (ie. Subtract one from the other) and then create a shift amount "A" based on Base or Robot Frame.
-
- Program AccuFast sensor (or touch sensing) to detect the vertical variation of the weld seam.
If using Method 1 from above, program the R1-TOUCH macro job (using Type 1 search) to a robot job based on the User Frame detected/updated above. When the R1-TOUCH macro saves the shift amount to a P variable, use the SFTON instruction to shift the weld path (by default, Base Frame is used).
NOP
MOVL
SET_JOB…
INSPECT…
ADJUST…
END
NOP
// job is based on User Frame
MOVL
R1-TOUCH Type 1 P2
MOVL
SFTON P002
MOVL
ARCON
MOVL
ARCOF
MOVL
SFTOF
END
If using Method 2 above, before running the R1-TOUCH macro instruction, deploy a SFTON instruction that is using the shift amount "A" determined above. After the R1-TOUCH is successfully run, the new newly-detected shift amount is the combination of shift amount "A" and the vertical shift amount detected by the R1-TOUCH macro.
NOP
MOVL
SET_JOB...
INSPECT…
ADJUST…
// Insert code to create shift amount from ADJUST macro. Lets save the shift amount
// to P001, for example.
SFTON P001
MOVL
R1-TOUCH Type 1 P2
// P2 now if shift amount from P1 + shift amount from R1-TOUCH
MOVL
SFTON P002
MOVL
ARCON
MOVL
ARCOF
MOVL
SFTOF
END
Please view the attached Motosight 2D for welding
Comments
0 comments
Please sign in to leave a comment.