Rotating rings keychain

Rotating rings keychain

prusaprinters

<p>This is a customizable keychain with rings. Create a fancy business card for yourself or someone you want to impress. Or simply think of it as replacement for some ugly keyrings you always wanted to replace.</p> <p><strong>WARNING: The Customizer here at thingiverse does not work with this file at the time of writing</strong>. See below for a workaround, i.e. install OpenSCAD on your own computer. That being said, it seems that some folks managed to get it working.</p> <p>The uploaded STL files are just examples. By modifying default parameters or by writing custom function calls in OpenSCAD you can create your own custom made keychain or Christmas present. See below for technical details.</p> <p>Unfortunately there is a problem with the customizer at thingverse. You may have to install OpenSCAD on your own machine and either modify the OpenSCAD code or use the local customizer. You can change many parameters (too many maybe), e.g.</p> <ul> <li>radius</li> <li>height</li> <li>number of segments (rings)</li> <li>spacing between rings</li> <li>lettering on each ring</li> <li>font family</li> <li>font height</li> <li>type of eyelet <em>Update V5</em>: Added debugging features to inspect inner rings and the first ring and made some small changes. This version looks fairly OK to me, but certainly can be improved. I did print several keychains and all of them were usable (turn and do not fall apart).<br/> <em>Update V6 to V8</em>: Small improvements and adjustments</li> </ul> <p><strong>Inspecting your model:</strong></p> <ul> <li>To see if a text fits on an inner ring look at the output in the console. There will be a red warning if we think it to be too big (but it's only an estimation). </li> <li>skipRings = N; (aka skip_rings = N) allows to skip rings so you can look at inner rings one by one</li> <li><p>firstRingOnly = true; (aka first_ring_only = true) will only print the first ring. <strong>If you want a smooth experience:</strong></p> </li> <li><p>Use a low OpenSCAD resolution, e.g. $fa=1 for the circles, text can be much less. Set circle_resolution=1. However if you don't want to wait, a low poly resolution also can do.</p> </li> <li>Number of rings means number of equal segments, but if the inner ones are too small they will not be generated.</li> <li>Make sure that the rings include some curvature, else the thing falls apart. E.g. set height to 10 if radius = 20.</li> <li>You can skip generating the second ring for debugging embedding of the eyelet and text</li> <li><p>There are 2 types of eyelets. Default is the easier to print "square". Type "round" (default=false) is prettier, in principle. <strong>if you want a tight experience</strong>:</p> <p>Models with rings that are difficult to remove (not loose) at least a radio of height/radius = 1/2, i.e. the width should be<strong>max.</strong> 4 times as wide as the height. Ideally, height should be 60% or radius or greater. In addition, use a low print resolution (0.15mm) and reduce spacing. Make sure that the filling does not disturb the walls, e.g. play with number of shells and filling type. Finally, rather use glue for adherence than "squashed" first layers, else you won' t be able to dissociate the rings.</p> </li> </ul> <p><strong>Updates</strong>:</p> <p>Added an update of the scad file on April 10 2019, but did not have time to change the documentation. In short, the new version can do a bit more, e.g. define a font size for each ring. Also, for people who do not understand arrays, one can define a simple string that will just be printed on the outside...</p> <h3> Print Settings</h3> <p><strong>Printer:</strong></p> <p>Felix TEC 4.1</p> <p><strong>Rafts:</strong></p> <p>No</p> <p><strong>Resolution:</strong></p> <p>0.15</p> <p><strong>Infill:</strong></p> <p>0.25</p> <p><strong>Filament:</strong> Cheap PLA, PETG <br/> <strong>Notes:</strong></p> <p>You should be able to print this with any printer. Do<em>not</em> use supports. If you, you will have to spend a lot of time cleaning up the lettering (see the attached picture of the 10 commandments).</p> <p>You also can print this with 0.2mm resolution or higher. You may have to increase spacing a bit if both your slicer and printer are not so good.</p> <p>If you want smooth turning you should use a high $fn settings in OpenSCAD, but then your computer may act sluggish...</p> <p>If your rings stick together, you can generate new files with higher spacing. Alternatively, change your slicer settings to smaller walls and/or lower resolution. If the opposite is the case, i.e. rings fall apart, then either reduce spacing or print with fatter layers.</p> <p>Good results are obtained by coordinating OpenSCAD and slicer settings:</p> <ul> <li>using small spaces between rings (<em>spacing</em> parameter_ ), e.g. 0.4 or 0.3mm</li> <li>using high openSCAD resolution, e.g. $fa = 1 (<em>circle_resolution</em> parameter)</li> <li>slicing with 0.15mm layers</li> <li>printing with medium speed, e.g. 60mm/s on a good printer.<h3>Easy customizing with OpenSCAD</h3> </li> </ul> <p><strong>Use a 2018 development version of OpenSCAD</strong></p> <p>While OpenSCAD is a 3D modeling tool for programmers, non-programmers also can make use of OpenSCAD. If you got some very basic programming experience we suggest playing with the global parameters. Just make sure to keep the ";"s. Hit F5 to preview and F6 to create the 3D model (wait for sometimes<strong>many</strong> minutes). Then export the STL.</p> <p>Alternatively <a href="http://www.openscad.org/downloads.html">install a 2018 version of OpenSCAD</a> on your computer (at the time of writing this is a development version, scroll down on the download page). Once you got OpenSCAD installed, download and open the*.scad file and play with the customizer interface. Here is how.</p> <p>Under Edit preferences: Tick "customizer" in the Features tab. You then can display the customizer through the View menu. Untick "Hide Customizer". You now can change a value and hit RETURN. If you are happy, hit F6 and wait. Then use File-&gt;Export to export an STL file for printing.</p> <h3> List of parameters (Version 3)</h3> <p><strong>FYI below are default global parameters and examples of version 5</strong></p> <p>List of default parameters (copy/paste from the OpenSCAD file)</p> <p>// Radius in mm of final shape<br/> radiusShape = 23;</p> <p>// Height in mm (no bigger than 20 or so)<br/> heightShape = 14;</p> <p>// Spacing between rings. Try double width for medium quality and medium resolution. E.g. 0.7 for a 0.35 nozzle at 0.2mm layer height. Minimum is extrusion width.<br/> spacingRings = 0.6;</p> <p>// Number of rings to print. Rings will be lost if their radius is less than the height and you even might get a hole.<br/> numberOfRings = 5;</p> <p>/<em> [Text Parameters]</em>/</p> <p>// Text. Must be an array of strings. First is outside<br/> textList = ["MY THINGS IN THE UNIVERSE", "ARE ON THINGIVERSE"];</p> <p>// It is recommended to select a fixed font<br/> fontFamily = "Liberation Mono:style=Bold";</p> <p>// Text distance should be zero or a bit positive, negative for large letters in small pieces<br/> textDist= 0;</p> <p>// Vertical height of the text(s)<br/> letterHeight = 6;</p> <p>// Thickness of partily embedded subtracted letters<br/> letterThickness = 2;</p> <p>// Multiply spacing between letters, e.g. 1.1<br/> letterSpacing = 1;</p> <p>/<em> [Eyelet Parameters]</em>/</p> <p>// Choose between round or square.<br/> eyeletDefaultType = false;</p> <p>// Distance of eyelet from outer ring<br/> eyeletDistance = -2;</p> <p>// Wall width multiplier (horizontal)<br/> eyeletWidth = 1.3;</p> <p>// Wall length multiplier (horizontal)<br/> eyeletLength = 1.05;</p> <p>// WallWidth (vertical) of eyeLet<br/> eyeletWallWidth = 5;</p> <p>// Width of the hole. Make sure that some on top/bottom is shaved off.<br/> eyeletHoleWidth = 5.2;</p> <p>/<em> [Various]</em>/</p> <p>// Skip N rings for debugging purposes (0 means none)<br/> skipRings = 0;</p> <p>// Only print first ring<br/> firstRingOnly = false;</p> <p>// Decide what to do with small center pieces. I like holes.<br/> middleHole = 0.66;</p> <p>// Circle resolution (minimal angle), high to make it smooth. If you cannot wait, set to 10<br/> circleResolution = 1;</p> <p>// Font resolution, high to make it pretty. Low is OK.<br/> fontResolution = 20;</p> <p>/<em> [Hidden]</em>/</p> <p>// Default<br/> $fa = 10;<br/> // You can override $fa and $fs values with $fn (not recommended)<br/> // $fn = 30;</p> <p>// Color list (just for display)<br/> colorList = ["lightblue","red","purple","green","pink","yellow","magenta","red","blue","purple","green","pink","yellow","magenta"];</p> <p>Below is code for the uploaded STL examples (I believe).<br/> Either change global parameters or comment "print_part()" and modify function calls below</p> <p>// Using default global variables<br/> print_part();</p> <p>Examples:</p> <p>// high resolution example calibration<br/> // test printed at 0.15 layer and 90mm/s in 15 minutes<br/> // print_part ( radius = 10, height = 6, spacing = 0.3, rings_n = 4, eyelet_default_type=false, eyelet_wall_w = 2.5, eyelet_hole_w = 2.5, eyelet_d = -1.3, text = ["WORK AND LIFE", "ARE", "good", ], text_d = 1.5, letter_h = 4, letter_t = 5, font_s = 1, skip_rings = 0, circle_resolution=1, middle_hole_ratio=0.8);</p> <p>// print_part ( radius = 35, height = 14, spacing = 0.7, rings_n = 5, eyelet_default_type=true, eyelet_w=1.5, eyelet_wall_w = 5, eyelet_hole_w = 5 ,eyelet_d = -2, text = ["<a href="https://www.thingiverse.com/thing:3256469">http://www.thingiverse.com/thing:3256469</a>", "CREATE YOUR OWN", "on thingiverse"], text_d = 0, letter_h = 6, letter_t = 5, font_s = 1, skip_rings = 0);</p> <p>// print_part ( radius = 30, height = 14, spacing = 0.7, rings_n = 5, eyelet_default_type=true, eyelet_wall_w = 5, eyelet_hole_w = 5 ,eyelet_d = -2, text = ["MAKE PRINTS NOT LOVE","CREATE PLASTIC"], text_d = 0, letter_h = 9, letter_t = 5, font_s = 1 );</p> <p>// print_part ( radius = 20, height = 15, spacing = 0.7, rings_n = 5, eyelet_default_type=false, eyelet_wall_w = 4, eyelet_hole_w = 6,eyelet_d = -2, text = ["CREATE ON", "Thingiverse"], text_d = -0.5, letter_h = 9, letter_t = 5, font_s = 1 );</p> <p>// print this with low resolution<br/> // print_part ( radius = 30, height = 13, spacing = 0.5, rings_n = 6, eyelet_default_type=false, eyelet_wall_w = 4, eyelet_hole_w = 4.8, eyelet_d = -1.3, text = ["DANIEL K. SCHNEIDER, Associate professor", "daniel.schneider@unige.ch", "<a href="http://tecfa.unige.ch/DKS">http://tecfa.unige.ch/DKS</a>", "Geneva university", "Maker"], text_d = 1, letter_h = 5, letter_t = 5, font_s = 0.95, skip_rings = 0);</p> <p>// print this with low resolution<br/> // print_part ( radius = 20, height = 12, spacing = 0.6, rings_n = 4, eyelet_wall_w = 4, eyelet_hole_w = 4.4, eyelet_d = -1.5, text = ["CREATIVE COMMONS", "I LIKE TO", "SHARE"], text_d = -0.5, letter_h = 8, letter_t = 5, font_s = 0.95, eyelet_default_type=false );</p> <p>// print_part ( radius = 28, height = 13, spacing = 0.5, rings_n = 6, eyelet_default_type=false, eyelet_wall_w = 4, eyelet_hole_w = 4.8, eyelet_d = -1.3, text = ["According to a recent study", "long term effects of 3D printing", "are better than alcohol,", "marihuana", "and sex", ], text_d = 1, letter_h = 5, letter_t = 5, font_s = 1, skip_rings = 0, circle_resolution=1);</p> <p>// print_part ( radius = 30, height = 15, spacing = 0.4, rings_n = 6, eyelet_default_type=false, eyelet_wall_w = 5, eyelet_hole_w = 6, eyelet_d = -1.3, text = ["ELSA SCHNEIDER Créatrice numérique", "elsaclschneider@gmail.com", "<a href="http://elsaschneider.ch">http://elsaschneider.ch</a>", "Design"], text_d = 1.3, letter_h = 6, letter_t = 5, font_s = 1, skip_rings = 0, circle_resolution=1, middle_hole_ratio=1);</p> <p>// low poly version of 10 commandments<br/> // print_part ( radius = 51, height = 20.5, spacing = 0.7, rings_n = 13, eyelet_default_type=true, eyelet_wall_w = 12, eyelet_hole_w = 6, eyelet_d = -3, eyelet_l=0.7,text = ["TEN COMMANDMENTS AND PRINCIPLES OF 3D PRINTING", "Calibrate well for the first layer", "Keep an open mind, be creative.", "Create supportless models", "Honor other ideas and designs", "Create assembly free", "Learn from others", "Make customizables", "share objects", "share code"], text_d = 1, letter_h = 8, letter_t = 5, font_s = 0.99, skip_rings = 0, first_ring_only = false, circle_resolution=10, font_resolution=10);</p> <p>// medium size, medium poly version of 10 commandments<br/> // print_part ( radius = 40, height = 20.5, spacing = 0.4, rings_n = 13, eyelet_default_type=true, eyelet_wall_w = 12, eyelet_hole_w = 6, eyelet_d = -3, eyelet_l=0.7,text = ["TEN COMMANDMENTS AND PRINCIPLES OF 3D PRINTING", "Calibrate well for the first layer", "Keep an open mind, be creative.", "Create supportless models", "Honor other designs", "Create assembly free", "Learn from others", "Customizables !", "share objects", "share code"], text_d = 1, letter_h = 8, letter_t = 5, font_s = 0.99, skip_rings = 0, first_ring_only = false, circle_resolution=5, font_resolution=20, middle_hole_ratio=0.3);</p> <p>// requires low resolution slicing and OpenScad settings<br/> // Takes ages to compile (15 min or more), print time = 10-15 hours. For testing lettering on screen, just set resolution to 20 or so. One test print (medium speed) at 0.15mm took 14h30.<br/> print_part ( radius = 51, height = 20.5, spacing = 0.4, rings_n = 13, eyelet_default_type=true, eyelet_wall_w = 12, eyelet_hole_w = 6, eyelet_d = -3, eyelet_l=0.7,text = ["TEN COMMANDMENTS AND PRINCIPLES OF 3D PRINTING", "Calibrate well for the first layer", "Keep an open mind, be creative.", "Create supportless models", "Honor other ideas and designs", "Create assembly free", "Learn from others", "Make customizables", "share objects", "share code"], text_d = 1.5, letter_h = 8, letter_t = 5, font_s = 0.99, skip_rings = 0, first_ring_only = false, circle_resolution=1);</p> Category: Keychains

Download Model from prusaprinters

With this file you will be able to print Rotating rings keychain with your 3D printer. Click on the button and save the file on your computer to work, edit or customize your design. You can also find more 3D designs for printers on Rotating rings keychain.