As part of the setup of my Plasma CNC table, I needed to repackage the torch height control electronics. It turns out the process I went through to design and fabricate the new enclosure is a good example of two things in modern CNC-based design: 1) the importance of software in the process, and 2) the benefits of using high-level parametric modeling even in relatively simple tasks.
The basic problem I had was that the THC electronics came in a box that didn't fit all of the necessary adapter boards I needed to connect the particular sensors and plasma torch controls for my setup:
To fix this, I purchased a new box and started designing a layout to contain all of the boards. As part of this I had to design new front & back plates with openings for all of the connectors, as well as a new base plate. I could have simply manually measured and cutting the holes on my mill, but that would have committed me to a particular layout up-front, and any one mistake out of 100 steps would have ruined the boards.
Instead I chose to use a more model-centric approach by first using Solidworks to first create a parametric 3D model of the boards. Although on the surface this appears to be unnecessary extra work, in the end it more than justified itself as will be shown below.
Creating the model in Solidworks was extremely fast & easy. I first created a solid extrustion for the panel and then began defining the openings. I then began modeling each type of connector opening (D-Sub 25-pin, D-Sub 9-pin, RJ45, etc.) as well as the spacing between connectors. Each parameter was set up as a smart dimension so I could quickly adjust the spacing of the openings on each connector, as well as the spacing between connectors, as necessary:
Admittedly since this was the first time I had modeled this kind of panel, it took me a couple of hours of experimenting. However now that I've done it I can re-use each connector opening on future projects. Thus creating another panel layout like this in the future should only take a few minutes of work.
One of the advantages of modeling this parametrically is that it allowed me to quickly fine-tune the relative layout and dimensions of each component. Given that I had measured the connector positions by hand (with a caliper), I decided that doing a test fit of everything would be wise to double check all of my measurements. So I decided to prototype the panels using the 3D printer to be test assemble the whole box. This was easy to do by outputting an STL file from Solidworks and then feeding it into the 3D slicer program I use called Simplify3D:
This slices the model & generates the g-code specific to the 3D printer. I then ran the file on the 3D printer et voila! I had a precise dimensionally accurate mockup of the panel:
Using this I was able to begin test-assembling the panels. While doing this I found a few dimension that were off by a few thousandths of an inch, as well as discovering potential issues with the arrangement of the components I had chosen (mainly due to the assembly sequence). As I encountered each of these issues, I modified the original model and re-ran the 3D output. The time to make the modifications to the model was negligible. The only time involved was the 3D print time. The cost was maybe $1 in plastic.
Finally I ended up with a full assembly of all the boards:
Now that I had the design finalized I was able to choose the best fabrication technique for the final version. Using the same Solidworks files, I was able to output a DXF file to feed into SheetCam to produce tool paths to cut the sheet. Doing it this way I could choose to cut the sheet using a variety of tools including Lasercutter, CNC Mill, water cutter, or even a Plasma cutter (for bigger things :-)).
In the end I decided I liked the look of the 3D printed front/back plates so much that I ended up using them directly. I CNC drilled the base plate out of a sheet of aluminum, since that had to act as a heat sink for one transistor. If I were building these in greater quantity I would probably switch to CNC milling the front & back plates since it would be faster in a production environment. Either way I already have all of the files necessary for a production run.
This design/fabrication independence created by using a parametric model-based approach provided several benefits, including:
- Test & verify the design before committing to fabrication
- Optimize the fabrication process independently of the design
- Evolve from one-off to production runs very quickly
- Re-use multiple design elements in future projects
- Standardize design/fabrication process by task type
One very important note here is that parametric modelers like Solidworks build a high-level representation of the design rather than a simple 2D or 3D CAD model. This is fundamentally critical to producing a result that is adaptable and reusable rather than just a one-off. Even using a 3D polygon modeler like Sketchup is not good enough, since the resulting shape cannot be intelligently modified according to procedural parameters, nor can it be used to accurately generate a variety of output formats without considerable extra work!
Net net I highly recommend spending effort learning and integrating advanced software tools as fundamental parts of your design/build process. In the end it is worth it.