Using FeatureScript, Onshape’s open source programming language that’s used to create its native CAD features, we recently decided to create a prototype tool that creates welds in 3D models. This custom welding feature will not only benefit our design process, but also make things easier on the manufacturing end for our subcontractors and clients as well.
You can access this welding custom feature here. (You must be signed in to Onshape to access.)
Watch the video below to see how our latest custom feature works:
But what is the point of all this?
Why would an engineer need this tool? After all, welds are already being marked on drawings, so nobody wastes time modeling them and everyone knows what is going on. That’s fine from a manufacturing perspective, but let's take a look at the bigger picture – the whole process of design to manufacturing of welded elements. This custom feature is aimed at speeding up the preparation of technical documentation as well as the manufacturing itself.
Technical Aspects
Preparing documentation is not only the work of engineers. In the next stage of a design, this task becomes the responsibility of the manufacturing engineers, who must give adequate allowances for cutting and machining, check whether the engineers’ ideas can be implemented, and figure out how to do it all using the machines available in the plant.
Here is what we can improve in the process of preparing welding documentation:
- We can get the actual dimensions of plates and add bevels in the right places or reduce the overall dimensions (in case of v-butt welds with grooves). Compare the pictures below. On the left, you can see a plate prepared for welding. On the right, you can see the same plate when marking welds on the drawing only.
- The mass of welds can be read from the model. On this basis, we can estimate the quantity of welding wire (or the number of welding rods) and the time needed for welding.
- For welded connections which require testing, it is necessary to give them numbers. FeatureScript produces weld names and numbers during modeling – this data can be easily transferred to the drawing and collected in the form of a drawing table.
Design Aspects
So what about the engineers? They need to spend a little more time on the model to generate a list of welds with masses and numbers, but this is what our custom weld feature delivers in return:
- Welds can now be visualized, so it is easier to check if there is adequate access to perform these connections. Before, the engineers had to guess how to create welds by marking them only on drawings – seeing the welds on the model is much easier. One big advantage is minimizing the risk of mistakes, especially with more complex constructions. In the future, we will want our feature to have a database in accordance with the Welding Procedure Specification (WPS) of the production plant, which will further simplify the preparation of the welds.
- Before, the engineers had to determine the numbering of welds and estimate their mass. Today, depending on the company procedures, it is the responsibility of the engineers or manufacturers. When using FeatureScript, there is no need for manual numbering or mass counting.
- It is easier to check if there is a collision, e.g. with screws or other elements, which is especially useful for less experienced engineers.
Educational Aspects
By creating a more realistic model of a complete welded construction, we can immediately see how each element will be produced. This will be helpful when training new engineers.
Visual Aspects
This is the least important aspect, but from a documentation point of view, having a prepared and completely welded model helps us to create more realistic visualizations of our designs. Compare the two pictures below:
Future Plans
At this stage, our custom feature still has many limitations. Our initial goal was to just test our ideas and get some feedback from other engineers and manufacturers. After the first tests, we saw many possible applications for this tool and we decided to develop it further. First, we will enable it to be used for plates positioned at any angle to each other, then we will extend it to other types of welds as well.
Right now, geometric weld data must be entered when creating a weld, but we want this data and the limitations on its use to be included as part of the feature. This will ensure easy matching of welds to different technologies, according to the requirements and capabilities of customers.
Next, we plan to expand our custom feature to include other types of welds and welds according to other standards. We still have a lot of work to do to develop our script, but we’d love to hear your ideas and suggestions. We invite you to test out our custom welding feature here.
We look forward to your feedback and welcome any thoughts on improving our code. If you are enthusiastic about Onshape’s FeatureScript, perhaps we could collaborate on this project or on a new custom feature altogether. You can contact us at nd@ndraft.com.