V0.19 Top Down Assembly Design Using Assembly4--Update #11

Show off your FreeCAD projects here!
User avatar
ppemawm
Posts: 766
Joined: Fri May 17, 2013 3:54 pm
Location: Manhattan New York

V0.19 Top Down Assembly Design Using Assembly4--Update #11

Postby ppemawm » Wed Jul 08, 2020 3:50 pm

These are a few of the models I built some time ago while developing the work process for top down design / in-context modelling of assemblies using Assembly4 and PartDesign workbenches. Each has a different strategy with their own advantages and disadvantages.

Top down design is necessary when drawings do not exist and usually starts with a skeleton or master sketch(es) to define assembly interfaces and overall design intent. All bodies are in a single file, and each body feature is created in-context using modified carbon copies of the master sketch. Assembly4 is used to add fasteners and duplicate parts, and to define variables primarily for animation purposes to check clearances of moving parts. Top down design requires a robust modelling approach since many changes are usually necessary as the design evolves.

The models are available to anyone via PM or I can add additional posts with more images briefly describing the process for each if there is general interest:

1. Compression Ignition Aeromotor (Bottom-up Baseline)
2. Rack and Pinion Arbor Press
3. Antique Blowtorch
4. Geared Hand Grinder
5. Steam Punk Cigarette Lighter
EDIT to add:
6. Hand Grinder
7. Spiral Jack
8. 2-Speed Hand Drill
9. Rachet Screwdriver
10. Sterling Helicopter Animation
11. Push Mower sub-Assemblies

Inspiration for 2-11 were taken from restoration videos on YouTube as referenced in the following images:

Picture2.png
REF: https://www.rcgroups.com/forums/showpost.php?p=37009283&postcount=12889

This motor caught my eye because of its unique design and unbelievable miniature scale.

I used this assembly as a baseline since drawings are actually available and the assembly could be created bottom-up, i.e. each part could be created in its own file at the global origin and then assembled using any of the assembly workbenches. Most assemblies (90%?) are created this way. This model, however, uses a top-down approach for comparison.
.
Picture2.png (374.72 KiB) Viewed 4709 times
Picture1.jpg
REF: https://www.youtube.com/watch?v=lV2T_IQOR24

This is a good project if you want something fairly simple and you want to learn about the Gear workbench capabilities and how-to animate the gears to check for proper operation.
.
Picture1.jpg (191.63 KiB) Viewed 4709 times
Picture1.jpg
REF: https://www.youtube.com/watch?v=k85cqwlIX3E

I liked this one for its challenging tubing and the beautiful manifold design. I used a free-forming approach for the tubing. No sketches are used other than the tube cross-section. The tubing is created in-context using tube end-faces, pads, and revolutions based on datum lines for revolve axes.
.
Picture1.jpg (98.95 KiB) Viewed 4709 times
Model_1.JPG
REF: https://www.youtube.com/watch?v=PuBywc6Lnk8

This assembly was interesting to me because of the double increasing gearbox with its integral pinion and its animation challenge. The gear ratio is about 1:10 in a very compact design.
.
Model_1.JPG (277.21 KiB) Viewed 4709 times
Capture10_model.JPG
REF: https://www.youtube.com/watch?v=nprnnjE8-nU

Being a mechanical gear-head I love Steampunk art and see FreeCAD as a good tool for this purpose. The possibilities for originality are endless.

It is also a good project to practice Draft > Linear and Polar Arrays for all of the fasteners and the Path Array for the chain.
.
Capture10_model.JPG (311.69 KiB) Viewed 4709 times
OS: Windows 10 (10.0)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.21769 (Git)
Build type: Release
Branch: master
Hash: 801bfe4ba5f0910e9b2885917c521ab7fd8e9020
Python version: 3.6.8
Qt version: 5.12.1
Coin version: 4.0.0a
OCC version: 7.3.0
Locale: English/United States (en_US)
Last edited by ppemawm on Sun Nov 15, 2020 5:41 pm, edited 10 times in total.
"It is a poor workman who blames his tools..." ;)
chrisb
Posts: 30483
Joined: Tue Mar 17, 2015 9:14 am

Re: V0.19 Top Down Assembly Design Using Assembly4

Postby chrisb » Wed Jul 08, 2020 5:44 pm

Very impressive - as always. Thanks for sharing.
You need at least FreeCAD 0.19.23300 to edit my current sketches.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
User avatar
Gregory son of Carl
Posts: 99
Joined: Mon Apr 06, 2020 7:42 pm
Location: California

Re: V0.19 Top Down Assembly Design Using Assembly4

Postby Gregory son of Carl » Wed Jul 08, 2020 6:04 pm

Incredible work ppemawm! All of these models look very professional. Do you have any lessons-learned from this project about what NOT to do for top-down assemblies? Techniques to avoid, things that create problems later, etc.?

Also, how did you create your exploded view for #1 Compression Ignition Aeromotor?
vocx
Posts: 5206
Joined: Thu Oct 18, 2018 9:18 pm

Re: V0.19 Top Down Assembly Design Using Assembly4

Postby vocx » Wed Jul 08, 2020 6:39 pm

ppemawm wrote:
Wed Jul 08, 2020 3:50 pm
...
It is also a good project to practice Draft > Linear and Polar Arrays for all of the fasteners and the Path Array for the chain.
Do you have any comments on the array tools?

They received quite a lot of improvements in this development cycle. For example, the Draft PathArray gained more modes of alignment recently.

Currently there is still a pull request pending (#3569) to improve the Axis Reference property of the Draft PolarArray and Draft CircularArray. This should make it easier to select any datum line, or edge, to use as reference for the normal direction of the array.
Always add the important information to your posts if you need help. Also see Tutorials and Video tutorials.
To support the documentation effort, and code development, your donation is appreciated: liberapay.com/FreeCAD.
User avatar
ppemawm
Posts: 766
Joined: Fri May 17, 2013 3:54 pm
Location: Manhattan New York

Re: V0.19 Top Down Assembly Design Using Assembly4

Postby ppemawm » Wed Jul 08, 2020 7:21 pm

Thank you for your kind comments.
Gregory son of Carl wrote:
Wed Jul 08, 2020 6:04 pm
Do you have any lessons-learned from this project about what NOT to do for top-down assemblies? Techniques to avoid, things that create problems later, etc.?
1. Making the master sketch too simple or too complex. It takes some trial and error practice to find the right balance. Make it simple but not too simple.

2. Changing the master sketch half way through the process. If you try to add or subtract geometry to the master it will most likely break any body or local coordinate system (LCS) that is dependent on the sketch. Modifying the sketch geometry will likely change the numbering of the edges and vertices. You can of course change dimensional constraints within reason.

3. I have generally stopped using the master sketch as the solver to animate the moving bodies. LCS's attached to the master sketch will sometimes jump positions as the master is manipulated over its range of variation. If that happens, the bodies attached to the LCS will also jump. That why it is good practice to manipulate the master sketch in the beginning over its complete range to insure it is stable before creating any body dependent upon it.

Rather, I now manipulate the Assembly4 LCS's directly with expressions and variables. Besides being more stable, expressions can accept conditional statements for more complicated movements.

4. Avoid attaching the assembly LCS's to body edges or vertices or you will be susceptible to the dreaded topological naming problem if you modify any of the bodies. You can almost always attach to the master sketch. With that in mind, I usually add circles to the master sketch at the fastener locations, for example.

5. Picking the wrong plane for the master sketch or not taking advantage of symmetry. You can almost always find a plane for the master sketch that will allow you to create 80% of the bodies and features from a modified version of the master carbon copy. Remember that revolves and grooves are your friend if you need to create bosses or holes parallel to the master sketch plane. Remember also that you can move the carbon copy perpendicularly to the master sketch planeas needed to create bodies or features not in the master sketch plane.

6. You can save some time by duplicating the carbon copy master sketch to start a new body. This allows you to create a master for each new body which can have more detail than the assembly master. You can then carbon copy this duplicated sketch for the body features. Just be sure to not duplicate the duplicate because it can get too complicated to keep track of who depends on who for parametric purposes.

7. Make sure you create each body from the Assembly4 menu since it will already have its own LCS which you can place at its assembly mating location on the master sketch. Activating this body will take you automatically to PartDesign.
Gregory son of Carl wrote:
Wed Jul 08, 2020 6:04 pm
Also, how did you create your exploded view for #1 Compression Ignition Aeromotor
You can easily and quickly explode an assembly using placement properties for each body.
"It is a poor workman who blames his tools..." ;)
User avatar
ppemawm
Posts: 766
Joined: Fri May 17, 2013 3:54 pm
Location: Manhattan New York

Re: V0.19 Top Down Assembly Design Using Assembly4

Postby ppemawm » Wed Jul 08, 2020 7:33 pm

vocx wrote:
Wed Jul 08, 2020 6:39 pm
Do you have any comments on the array tools?
I have noticed the added capability but have not had much of a chance to use them.
The original linear, polar, and path arrays met 90% of my needs for mechanical design.

The Axis Reference property will be a welcome improvement.
"It is a poor workman who blames his tools..." ;)
User avatar
Gregory son of Carl
Posts: 99
Joined: Mon Apr 06, 2020 7:42 pm
Location: California

Re: V0.19 Top Down Assembly Design Using Assembly4

Postby Gregory son of Carl » Wed Jul 08, 2020 8:58 pm

Wow. Thanks for that thorough write up. This looks like some good stuff.
ppemawm wrote:
Wed Jul 08, 2020 7:21 pm
You can easily and quickly explode an assembly using placement properties for each body.
I guess you had to move it all back manually or ctrl+z it back after getting the picture then? That sounds a little inconvenient
User avatar
ppemawm
Posts: 766
Joined: Fri May 17, 2013 3:54 pm
Location: Manhattan New York

Re: V0.19 Top Down Assembly Design Using Assembly4

Postby ppemawm » Wed Jul 08, 2020 9:38 pm

Gregory son of Carl wrote:
Wed Jul 08, 2020 8:58 pm
I guess you had to move it all back manually or ctrl+z it back after getting the picture then? That sounds a little inconvenient
Not really. I just do not save it that way or I save in another file if I want a permanent exploded copy.
"It is a poor workman who blames his tools..." ;)
User avatar
M4x
Posts: 326
Joined: Sat Mar 11, 2017 9:23 am
Location: Germany

Re: V0.19 Top Down Assembly Design Using Assembly4

Postby M4x » Thu Jul 09, 2020 4:12 am

Thank you very much for these nice examples and the information you've shared with us!
User avatar
Zolko
Posts: 1177
Joined: Mon Dec 17, 2018 10:02 am

Re: V0.19 Top Down Assembly Design Using Assembly4

Postby Zolko » Thu Jul 09, 2020 9:28 am

ppemawm wrote:
Wed Jul 08, 2020 7:21 pm
Gregory son of Carl wrote:
Wed Jul 08, 2020 6:04 pm
Also, how did you create your exploded view for #1 Compression Ignition Aeromotor
You can easily and quickly explode an assembly using placement properties for each body.
1) you're really a master here (Note: please consider the use of the word "master" here from the "master in arts" variety and not "master/slave" combination).

2) concerning the exploded view, did you try to edit the placement of a part, hit "Ignore" which liberates the placement constraint but leaves the part in place, and then move the part with the dragger (right-click > Transform) ? Or did you edit the placement of the part by hand ?

3) of course, this calls for an exploded view function of the assembly, do you have some suggestions as to what/how to achieve this ?
try the Assembly4 workbench for FreCAD v0.19
install with Tools > Addon Manager > Assembly4 — tutorials here and here