Offset weld orientation & position during path movements
Hi,
I'd like to write some code to be able to offset the pose of a tool during path movements as well as offset the position. This is to be able to adjust stickout, push angle, work angle etc. when welding for fine tuning.
An example use case for us is when we do massive multi run fillet welds, we've done up to 90 runs in a fillet before. The operators jog the robot to the desired position and it stores these in a list to use the next time. Sometimes the position that is jogged to isn't quite right or the orientation is a bit off. It would be good to be able to tune this as it's welding and then update the list at the end of the weld with the modified offsets.
I can see there is a correction generator but it only allows for position offsets,
I tried to see if tooldata could be modified during execution but I don't think it can and this seems like a bad idea.
I don't want to use loads of programmed points modified on the fly, I'd rather write something applicable to my existing code.
Is the only option here to use EGM? if so does anyone know how to set up EGM to read from a background task, would I have to create analog IO for x,y,z,Rx,Ry,Rz corrections?
A bit of a curly one, just something I want to work on in the background.
Cheers,
Harry
I'd like to write some code to be able to offset the pose of a tool during path movements as well as offset the position. This is to be able to adjust stickout, push angle, work angle etc. when welding for fine tuning.
An example use case for us is when we do massive multi run fillet welds, we've done up to 90 runs in a fillet before. The operators jog the robot to the desired position and it stores these in a list to use the next time. Sometimes the position that is jogged to isn't quite right or the orientation is a bit off. It would be good to be able to tune this as it's welding and then update the list at the end of the weld with the modified offsets.
I can see there is a correction generator but it only allows for position offsets,
I tried to see if tooldata could be modified during execution but I don't think it can and this seems like a bad idea.
I don't want to use loads of programmed points modified on the fly, I'd rather write something applicable to my existing code.
Is the only option here to use EGM? if so does anyone know how to set up EGM to read from a background task, would I have to create analog IO for x,y,z,Rx,Ry,Rz corrections?
A bit of a curly one, just something I want to work on in the background.
Cheers,
Harry
Tagged:
0
Comments
-
Hallo,I do not know about EGM. But if you have option path-offset, you might use CorrCon+CorrWriteto add linear offsets to you positions while moving.If you are using multilayer-welding, there might be another way worth to check.You have multidata ( := [direction,ApproachDist,DepartDist,StartOffs,EndOffs,SeamOffsY,SeamOffsZ,RotX,RotY]). If you set up a time based interrupt routine, calling a trap routine, where you read these values(offs and rot) from an input, change your multidata variable and set "arcrefresh"?This works definitely with welding parameters but I am not sure about positions/orientations.I would be interested in a solution as well.
1 -
Have you thought about just using program displacement?Lee Justice1
-
Hi, Thanks for the suggestions.
I think program displacement would be difficult and require constant updates to the offset as the only way to offset the pose to change the push angle of a weld would be to rotate all the points which would move the start and finish points for the path around in space. I do need to adjust the path position slightly too, but more importantly I would like to adjust the angle of the tool relative to the path.
The correction generator is ideal, but it only lets me offset position as mentioned.
We use multipass instructions for our large fillet welds normally, and that's an interesting point about changing the multidata and refreshing the settings, I hadn't thought about. I'd like it to work on the first pass in a lot of cases too however, we do a lot of ID Welding or cladding reclamation work, and sometimes it can be helpful to control the torch angle depending on the weld settings or the cast material we are welding to.
I'm not even sure from reading the manual if EGM path offset works with angles or only displacement. I know it works for pose and joint displacements. I'll have to find some time to play around with it and see if I can get it working.
Thanks,
Harry0 -
Years ago I helped work on some robotic hemming applications. In order to adjust the hemming force (depth) they would adjust the tooldata. It was for angle as well. But what they did was use a variable tool to which the tooldata was assigned, so as not to mess up the original tooldata.Lee Justice0
-
Hi Lee,
I've used that to adjust weld stickout before but that applies only from the start of the move command, unfortunately any tooldata changes mid movement don't apply dynamically. It would work if I had a lot of programmed points, but I would have to modify a lot of existing code. We are a high mix low volume shop so unfortunately we can't tune our programs easily over time as we only get one or a few chances to do it before we move onto the next part. We do get the same parts through the shop weeks or months apart though. I'd like our operators to be able to adjust torch angles mid path to get the best looking welds possible.
Side note, I'm guessing you are a fan of the fallout series, I'll forever be returning to play New Vegas, haven't played any of the earlier ones though.
I've asked about enabling EGM on our license,
I'll post a video if I get what I want working,
cheers,
Harry0 -
Harry,
You guessed right. Starting from Fallout 3 and everything since. 👍😁 Good luck!
Lee Justice0
Categories
- All Categories
- 5.5K RobotStudio
- 394 UpFeed
- 18 Tutorials
- 13 RobotApps
- 297 PowerPacs
- 405 RobotStudio S4
- 1.8K Developer Tools
- 249 ScreenMaker
- 2.7K Robot Controller
- 309 IRC5
- 59 OmniCore
- 7 RCS (Realistic Controller Simulation)
- 785 RAPID Programming
- AppStudio
- 3 RobotStudio AR Viewer
- 18 Wizard Easy Programming
- 105 Collaborative Robots
- 4 Job listings