Customisable grommet

Openscad source code to create 3D models of grommets that may be customised.
48
243
3
1995
updated January 19, 2022

Description

PDF

Description

Openscad (https://openscad.org/) source code for creating 3D models of grommets that can be customised. The aperture, cable size, length, grips and other settings may be adjusted. The cable hole may be circular or slotted. Some typical settings are provided for Ethernet cables, IEC “kettle” connector leads, and IKEA PLATSA wall thicknesses.

The code is at https://github.com/alidaf/3D-Printing/blob/main/grommet/grommet.scad

The Threads library from https://github.com/rcolyer/threads-scad is also required.

Caution: This is only my 2nd openscad model and may induce apoplexy or other conditions in anyone more proficient with the language. Constructive feedback is welcome. Please read the dual licensing conditions on the github site https://github.com/alidaf/3D-Printing and the reasoning in the note below. This is also my first model posting so I'm keeping my fingers crossed that I've made everything clear.

But why?

There are already lots of good grommet designs out there! The point of this is to be able to make a series of grommets that are easily customisable for a wide variety of applications but also removable, hence the screw assembly. Many of the grommets I have found are very specific sizes and therefore don't fulfil my needs.

Procedure

There are many parameters but most situations will only require adjusting a few, i.e. the diameter of the plug that passes through it, the cable diameter and the length. The drill hole size is determined rather than specified and may need to be adjusted via other parameters such as wall thickness and thread height. I've tried to make dimensions non-sacrificial, i.e. internal thread height should not affect the remaining wall thickness. The grip sizes may need adjustment depending on the quality of the material it is embedded in or the circularity of the drill hole.

  • Once the parameters are adjusted, press F5 for a quick but dirty render. There is some feedback but take note of the estimated hole size (for choosing an appropriate drill bit). 
  • Adjust the parameters if necessary. Once happy press F6 for a full render, which may take some time. 
  • Once rendered export the model as an STL file. Import this into Prusa Slicer, split into objects and then arrange using the buttons on the top task bar. 
  • Flip the cover plate (which should be object 2 - top left in figure below) onto it's front face and slice without supports. 

Due to the threads I would recommend a 0.1mm layer height (0.2mm first layer) but I haven't tested it a lot. I typically use 3 perimeters and 3 layers on the top & bottom with an adaptive cubic infill and monotonic top and bottom layers. I have printed these in PLA and PETG with a 0.4mm nozzle and not had any problems. The seals benefit from a tight fit as it can be difficult to assemble if the cable is stiff and the grommet is mounted horizontally.

Objects and assembly

  • Object 1 (bottom left) has the grips and is the front, inserted into the wall/partition. The grips can be resized if necessary to ensure the front piece doesn't rotate.
  • Object 2 (top left) is the back and screws in from the other side of the wall/partition.
  • Objects 3 & 4 are the seals and sit in the cavity on the front. They should be seated opposed so they form a circle (or a slot if defined in the code).
  • Object 5 (top right) is the cover that screws over the front and keeps the seals in place.

Note regarding license

As far as licenses go, I have deliberately made the CC license very prohibitive because I would prefer any improvements to be fed back into the source code for everyone to benefit from. I am not providing any model files other than an example but the non-commercial aspect applies to all models created using this code subject to specific agreement. The source code itself has a GPLv3 licence for it's use and modification.

Tags



Model origin

The author hasn't provided the model origin yet.

License