Parametric STL Generator in Fusion

For discussion of Hand-o-matic.
User avatar
andreas
Posts: 31
Joined: Thu Feb 12, 2015 4:55 pm

Parametric STL Generator in Fusion

Postby andreas » Mon May 04, 2015 3:53 am

Hans Kellner, a friend of mine on the OCTO/Fusion teams here at Autodesk, put together this script after I explained the need for parametrically-generated files for Handomatic. Instead of generating STLs on the fly in the browser or on a server, Handomatic could just be a giant look-up table for customized geometry created using Fusion script like the one that Hans wrote. Most of the Raptor Reloaded was designed to support parametric manipulation and could be re-factored to be driven by a master scale parameter while keeping clearances constant. The steps in sizing could be single millimeters to ensure sufficient granularity in fit options, but this could be achieved without compromising the mechanical clearances of all the joints. Definitely check out the script below. I haven't had much time to work with it, but I think it has pretty huge potential as a brute force solution to the sizing problem:

https://github.com/hanskellner/Fusion360ParaParam

User avatar
laird
Posts: 53
Joined: Thu Feb 12, 2015 4:27 pm
Location: Fort Lauderdale
Contact:

Re: Parametric STL Generator in Fusion

Postby laird » Sun Jul 19, 2015 2:14 pm

This is exciting. If we pre-generate all of the possible outputs then all Hand-o-matic has to do is pick the right files, which will be extremely fast!

The challenge will be that if the number of options is large, it'll take a while to generate. But since it's a script, that's just a matter of planning lead times.
- Laird Popkin

User avatar
andreas
Posts: 31
Joined: Thu Feb 12, 2015 4:55 pm

Re: Parametric STL Generator in Fusion

Postby andreas » Mon Aug 24, 2015 5:39 am

I finally had the time to sit down, re-model the Raptor Reloaded proximals (and distals) to be completely driven by a suite of parameters that are turn tied to a master scale factor. This allows the independent sizing of the macro-geometry from function-critical elements like the joints, which will be a huge step forward from the current linear scaling method. Using the above-mentioned script from friend and colleague Hans Kellner, I've created several lookup tables for every size between 100% and 200% for three clearance values, ranging from Rep2-tight to looser. All is available in this project's directory on my github.

I designed the parametrics of this two new implementations of the Raptor Reloaded fingers to be compatible with the existing palm and snap pins, meaning that we can make big improvements to functionality across the whole range of sizes by just replacing these two parts and not touching the palm or other snap pins. Peter Binkley observed months ago that the proximals would be the best candidates for parametric conversion and extending upon that, we can get improved performance out of a design by making just one of any two interfacing parts parametric. In the case of the Raptor Reloaded, 10 our of 12 joints can be improved moderately with just the substitution of the proximals, and can be significantly improved with the substitution of the proximals and the distals.

This semi-parametric workflow has implications in overall device architecture and fulfillment strategies:

  • Handomatic can leverage this lookup table to rapidly serve properly-scaled geometry to users.
  • We can leverage kits very effectively and include fewer redundant sizes of screws, making the devices easier to assemble.
  • We can design around specific off-the-shelf components, such as stainless steel dowel pins, to create more robust designs and mechanisms.
  • Now that we can hold certain interfaces constant, we can start talking about manufacturing large quantities of high value/function parts, such as the differential tensioner (gripper box) via mass community manufacture or injection molding.
  • We can match clearance settings to particular machines for more consistent quality across the aggregate.
  • Tighter and more consistent clearances all around, leading to better functioning and quieter devices.

Apologies if the red prints in the images below don't show up well on some screens-- they display with reasonable contrast on my macbook pro, but are a bit washed out on my external display. The CAD snapshots illustrate the differences well and test prints from my github repo can illustrate physically. While configuring the distals to parametric control, I also fixed a long-time bug in the geometry leading to persistent dropped filaments on the snap pin head recess. I am also nearly done testing a parametric proximal for the Phoenix hand. That proximal can be set up to use the same rubber band across all sizes if that is demonstrated to be necessary.

Screenshot 2015-08-23 21.09.39.png
Large gaps on linearly-scaled geometry (joint not centered so as to better view the gaps)
Screenshot 2015-08-23 21.09.39.png (221.42 KiB) Viewed 1570 times

Screenshot 2015-08-23 21.09.58.png
Constant clearances on parametrically-scaled proximals with linearly-scaled distals (joint not centered so as to better view the gaps)
Screenshot 2015-08-23 21.09.58.png (299.45 KiB) Viewed 1570 times

IMG_0119.JPG
IMG_0119.JPG (354.36 KiB) Viewed 1570 times

IMG_0120.JPG
IMG_0120.JPG (220.78 KiB) Viewed 1570 times

IMG_0121.JPG
IMG_0121.JPG (162 KiB) Viewed 1570 times

IMG_0122.JPG
IMG_0122.JPG (183.23 KiB) Viewed 1570 times

IMG_0123.JPG
IMG_0123.JPG (246.88 KiB) Viewed 1570 times

IMG_0124.JPG
IMG_0124.JPG (137.91 KiB) Viewed 1570 times

Screenshot 2015-08-08 16.35.36.png
Snapshot of the script that Hans Kellner put together to support this batch export operation
Screenshot 2015-08-08 16.35.36.png (255.32 KiB) Viewed 1570 times

Screenshot 2015-08-08 16.46.55.png
Sample of the parametric definitions for each dimension
Screenshot 2015-08-08 16.46.55.png (64.16 KiB) Viewed 1570 times

Screenshot 2015-08-08 19.11.13.png
Comparing 12-17-14 release to fully parametric version
Screenshot 2015-08-08 19.11.13.png (173.37 KiB) Viewed 1570 times

Screenshot 2015-08-08 19.13.18.png
Comparing 12-17-14 release to fully parametric version
Screenshot 2015-08-08 19.13.18.png (163.22 KiB) Viewed 1570 times

Screenshot 2015-08-08 19.17.59.png
Nearing completion of work converting the Phoenix proximals to parametric Fusion.
Screenshot 2015-08-08 19.17.59.png (116.87 KiB) Viewed 1570 times

jameshs
Posts: 11
Joined: Mon Feb 16, 2015 7:22 am

Re: Parametric STL Generator in Fusion

Postby jameshs » Mon Aug 24, 2015 7:14 am

Andreas,

really nice - a real move forward.

I have not dipped into the fusion file - but are you at the same time going to publish a master sheet of parameter names and/or naming conventions - then when others jump in and parameterise their versions there should be a compatibility/understanding with all of us starting from the same base?

This is real progress and harnessing the power of parameters!


James
James


James Holmes-Siedle
jhs@allclear.co.uk
www.allclear.co.uk

CCVirginia
Posts: 3
Joined: Mon Aug 24, 2015 11:56 pm

Re: Parametric STL Generator in Fusion

Postby CCVirginia » Tue Aug 25, 2015 2:25 am

andreas wrote:I designed the parametrics of this two new implementations of the Raptor Reloaded fingers to be compatible with the existing palm and snap pins, meaning that we can make big improvements to functionality across the whole range of sizes by just replacing these two parts and not touching the palm or other snap pins.

Great work, I am humbled by so much to learn! I loaded this up in Fusion and could see how to manipulate the parameters.
What I don't understand is how this fits with other scaled parts. E,g, if I scale the rest of the hand by 135% I would need the connection point to the proximals scaled to match, scaling (or even compensating for) the increased play. So, how do you put in the scale of the palm? Perhaps I'm just confused.

As for generating all the permutations, for me it would be fine to enter the parameters in Fusion. I'm no fusion expert but it didn't seem very hard and is a small task relative to creating a prosthetic.

User avatar
andreas
Posts: 31
Joined: Thu Feb 12, 2015 4:55 pm

Re: Parametric STL Generator in Fusion

Postby andreas » Tue Aug 25, 2015 6:37 am

James,

That's a good idea. I've tried to be consistent in my models by using easy-to-follow parameter names such as "masterScale" and "clearance" and adding comments (see below), but I can put together a top-level doc (would be good for the github) that goes over things.

And to answer your question CCVirginia, here is a quick visual walk-through of the process to change parameters on the models. To make a properly sized part, upload the files (links below) into Fusion, open them, click "Change Parameters" under the "Modify" menu. "masterScale" is the parameter that drives the whole model. Set it to the the scale factor that corresponds to the percentage scaling of the hand that you'd like to make under the "expression column". For a 135% size hand, set masterScale to 1.35. For a 114% size hand, set it to 1.14. And so on for any scale between 100% and 200% (tested range). Precompiled STLs at a few different clearances are in my github if you'd like to skip the hassle and just download the pre-compiled file. Ultimately, I'd like to get this under the hood in Handomatic so that users are just served properly-sized files from the big lookup table behind the scenes.

Updated parametric proximal
Updated Parametric distal


Screenshot 2015-08-24 23.27.45.png
Under "Modify", navigate to the bottom of the menu.
Screenshot 2015-08-24 23.27.45.png (18.84 KiB) Viewed 1537 times

Screenshot 2015-08-24 23.27.26.png
Click on "Change Parameters"
Screenshot 2015-08-24 23.27.26.png (97.82 KiB) Viewed 1537 times

Screenshot 2015-08-24 23.19.32.png
Screenshot 2015-08-24 23.19.32.png (184.64 KiB) Viewed 1537 times

Screenshot 2015-08-24 23.20.00.png
Screenshot 2015-08-24 23.20.00.png (173.63 KiB) Viewed 1537 times

CCVirginia
Posts: 3
Joined: Mon Aug 24, 2015 11:56 pm

Re: Parametric STL Generator in Fusion

Postby CCVirginia » Tue Aug 25, 2015 2:36 pm

Andreas,
I had no problems changing the scale factor for your proximal/distal models in Fusion - however publishing the instruction is great. My question is with regard to the scale of the palm they connect to. From what I could tell the model assumes a static sized palm. Or, does it assume the palm has a linear or parametric scale that is the same?
-Thanks!


Return to “Hand-o-matic”

Who is online

Users browsing this forum: No registered users and 1 guest