V0.19: Clayton Steam Wagon--UPDATE #3

Show off your FreeCAD projects here!
User avatar
Kunda1
Posts: 4405
Joined: Thu Jan 05, 2017 9:03 pm

Re: V0.19: Clayton Steam Wagon--work in process

Postby Kunda1 » Sun May 19, 2019 11:53 pm

I vote for @ppemawm to be the official mascot of FreeCAD :ugeek:
Want to contribute back to FC? Checkout:
#lowhangingfruit | Use the Source, Luke. | How to Help FreeCAD | How to report FC bugs and features
abdullah
Posts: 3122
Joined: Sun May 04, 2014 3:16 pm

Re: V0.19: Clayton Steam Wagon--work in process

Postby abdullah » Mon May 20, 2019 11:57 am

ppemawm wrote:
Sun May 19, 2019 11:28 pm
abdullah wrote:
Sun May 19, 2019 6:29 pm
Have you tried to first click the "toggle construction geometry" button and then use CarbonCopy?
Yes I have, at the suggestion of kilsolre, and it is exactly what I wanted. Thanks for all your comments.
Sorry, I got a notification and replied without realising there were other answers already there. :)
abdullah
Posts: 3122
Joined: Sun May 04, 2014 3:16 pm

Re: V0.19: Clayton Steam Wagon--work in process

Postby abdullah » Mon May 20, 2019 11:58 am

Kunda1 wrote:
Sun May 19, 2019 11:53 pm
I vote for @ppemawm to be the official mascot of FreeCAD :ugeek:
mascot?

The guy is beyond that, he is what I hope to be in 3 or 4 reincarnations time... ;)
User avatar
sliptonic
Posts: 1493
Joined: Tue Oct 25, 2011 10:46 pm

Re: V0.19: Clayton Steam Wagon--work in process

Postby sliptonic » Mon May 20, 2019 1:54 pm

ppemawm wrote:
Sun May 19, 2019 1:06 pm

If anyone is interested in this process, I could strip out the reverser sub-assembly and attach the file if it is not too large.
Yes please!
User avatar
ppemawm
Posts: 512
Joined: Fri May 17, 2013 3:54 pm
Location: Manhattan New York

Re: V0.19: Clayton Steam Wagon--work in process

Postby ppemawm » Tue May 21, 2019 12:23 am

sliptonic wrote:
Mon May 20, 2019 1:54 pm
Yes please!
File is attached.
Please note that several components of the subassembly were deleted to reduce the file size.
Any questions or comments are welcome.
Clayton_1.3--Reverser_Subassembly.FCStd
(981.69 KiB) Downloaded 33 times
"It is a poor workman who blames his tools..." ;)
User avatar
ppemawm
Posts: 512
Joined: Fri May 17, 2013 3:54 pm
Location: Manhattan New York

Re: V0.19: Clayton Steam Wagon--UPDATE #1

Postby ppemawm » Mon Jun 03, 2019 12:53 pm

I have been working on the components of the boiler such as the water box, feedwater heater, and the boiler assembly as shown in the following screen captures. Much of the boiler is complete except for all the connection fittings and internal tube banks which are currently in process.

Picture8.jpg
This is the complete assembly so far except for all the myriad fasteners and rivets. I deleted these from the file because of the painfully slow graphics response during modelling and autosave.
Picture8.jpg (66.36 KiB) Viewed 667 times
Picture9.jpg
The water box was fairly simple to model but the boiler has many detail components that will take a bit time. All the external and internal components of the boiler are in their own Part container so that they can be easily isolated during modelling as can be seen in the model tree. These Part containers in turn contain Part containers for various sub-assemblies of bodies.
Picture9.jpg (67.79 KiB) Viewed 667 times
Picture10.jpg
The feedwater heating coils were a bit challenging to accurately model the interconnection with the inlet and exit fittings.
Picture10.jpg (62.74 KiB) Viewed 667 times
Picture11.jpg
The tubing was created using a helical coil as a starting point and then elbows and straight sections were added by PartDesign revolves and face pads as shown above. Only one sketch (tube cross-section) is required.

Datum lines attached to the tube end faces were used as axes for the revolves. It is fairly easy to adjust the routing of the tubes in 3D space by changing the datum attachment properties (angle and offset bend radius) and the revolution parameters. The use of faces, however, make the process a bit brittle and prone to breaking if major changes to add or subtract sections are necessary.
Picture11.jpg (69.09 KiB) Viewed 667 times
Picture12.jpg
I am continuing to explore the power of master sketches and Sketcher>CarbonCopy to link sketches in a body. All of the features in the above Body188 (Grate) were created from one CarbonCopy of the constrained master sketch shown above.

This CarbonCopy sketch was then Edit>Duplicated for each sequential feature and appropriate construction lines toggled to create the specific construction geometry for each feature. The duplicated CarbonCopy attachment elevation (Z) was adjusted as required.
Picture12.jpg (77.42 KiB) Viewed 667 times
~
This process of duplicating the master CarbonCopy sketch saves much time and effort compared to using external references IMO. In the next update I will cover the use of a simple master and CarbonCopy as a way to link subassemblies. Also, one way to locate bodies and part containers in context of a complex assembly such as this truck model will be discussed. I am still trying to break 'bad' habits from V0.16 in which I primarily located all bodies by using sketch Placement properties.

I have tentatively settled on using Sketch attachment for feature location only, Body placement for location within a subassembly, and Part placement for subassembly location in a top assembly. Sketches are NEVER attached to faces, edges, or vertices of the model and all transformations (mirror, polar pattern, fillets, chamfers, etc.) are done at the end of the tree. This combination, in addition to simple master sketches attached to origin planes + CarbonCopy, is proving to be an exceptionally robust modelling approach. That alone is a huge improvement over V0.16.

V0.19 crashed a few times while trying to refine this approach but I have not yet been able to reproduce it. It seems as if you have to be somewhat thoughtful about copying and linking sketches. Then again, maybe it was not intended to be used this way....

OS: Windows 10
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.16824 (Git)
Build type: Release
Branch: master
Hash: 81ae5688d48fe9037f431b5cb8e1c9cee07f22b9
Python version: 2.7.14
Qt version: 4.8.7
Coin version: 4.0.0a
OCC version: 7.2.0
Locale: English/UnitedStates (en_US)
"It is a poor workman who blames his tools..." ;)
un1corn
Posts: 92
Joined: Sat Dec 26, 2015 2:06 pm

Re: V0.19: Clayton Steam Wagon--UPDATE #1

Postby un1corn » Thu Jun 06, 2019 6:04 am

H,i I hope you enjoy this project also, I did this underslung engine model in V0.16 a little over a year ago, had a problem with the drive chain though.
Nice work.
User avatar
ppemawm
Posts: 512
Joined: Fri May 17, 2013 3:54 pm
Location: Manhattan New York

Re: V0.19: Clayton Steam Wagon--UPDATE #1

Postby ppemawm » Thu Jun 06, 2019 11:29 am

un1corn wrote:
Thu Jun 06, 2019 6:04 am
H,i I hope you enjoy this project also
Thanks for your comments.
It seems as though we have the same interest in these elegant machines and the challenge of modelling them with FreeCAD.
The models you share on the Forum have always been an inspiration to me.
"It is a poor workman who blames his tools..." ;)
User avatar
ppemawm
Posts: 512
Joined: Fri May 17, 2013 3:54 pm
Location: Manhattan New York

Re: V0.19: Clayton Steam Wagon--UPDATE #2

Postby ppemawm » Sun Jun 09, 2019 4:18 pm

The boiler assembly is now complete including all of the valves, connections, tube bundle, and superheater coils as shown in the following screen grabs with a few comments on the work process:

Picture13.jpg
The boiler assembly is organized in the tree as two part containers: internal and external components. Part containers are also used to organize all of the valve sub-assemblies.
Draft> Polar arrays were used for the tube bundle.
Picture13.jpg (118.98 KiB) Viewed 391 times
.
Picture14.jpg
In order to stay in the PartDesign workbench, the superheater coils were created using an additive sweep, face pads, and revolves with datum lines as axes. The datum lines used for the tube elbows are attached to an edge of a tube end face using a "normal to edge" or "tangent" mode depending on the desired direction of revolution. They are then offset perpendicularly to obtain the bend radius.

Although this method is a bit fragile due to the topological naming problem, you can generally change the pad lengths and bend radii in order to align the tube to its end connector without breaking the model.
Picture14.jpg (135.94 KiB) Viewed 391 times
.
Picture15.jpg
This is an example of using a CarbonCopy of a simple master sketch to create each of the bodies in this subassembly. The Part container for the subassembly has the same origin placement as the boiler top assembly so that the radial position defined in the master sketch is easily changed if necessary. Each body origin is located in their proper placement in the subassembly.

All of the bodies in this subassembly were created by duplicating a single CarbonCopy sketch in the XY view and toggling construction lines to geometry for each feature.
Picture15.jpg (102.56 KiB) Viewed 391 times
.
Picture16.jpg
In this example, two separate CarbonCopy sketches of the master sketch were used to generate all of the bodies of the upper and lower Part subassemblies. Each CarbonCopy sketch was located by changing the sketch attachment elevation (Z placement). These sketches were then duplicated for each feature of the bodies.

For those bodies or features that could not generated directly from the CarbonCopy in the XY plane (e.g. the handle) a shapebinder of the CarbonCopy was used to attach and locate the feature sketches in the proper plane.
Picture16.jpg (100.83 KiB) Viewed 391 times
.
Picture17.jpg
This is another example of using a single CarbonCopy of a master sketch to create a complex manifold with many features and several mating components in a subassembly. The master sketch and CarbonCopy's were created in a body container. Four separate CarbonCopy's of the master sketch differing only in their elevation (Z placement) were then duplicated to create each feature of each body.
Picture17.jpg (109.7 KiB) Viewed 391 times
.
Duplicating CarbonCopy sketches has been a real timesaver especially when so many sketches have to be created for a model of this complexity. The downside of course is that the CarbonCopy does not update if you change the geometry of the master sketch although dimensions can be changed. The CarbonCopy also does not respect the placement of the master sketch.

If these limitations are not tolerable then shapebinders of the master sketch must be used with external references in the feature sketches with a whole lot of added work to create each sketch. So far, I prefer the CarbonCopy approach mainly because I am working from drawings rather than original design where you would expect more changes during modelling.

Next up is the twin cylinder steam engine and its transmission....oh ,boy.

OS: Windows 10
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.16824 (Git)
Build type: Release
Branch: master
Hash: 81ae5688d48fe9037f431b5cb8e1c9cee07f22b9
Python version: 2.7.14
Qt version: 4.8.7
Coin version: 4.0.0a
OCC version: 7.2.0
Locale: English/UnitedStates (en_US)
"It is a poor workman who blames his tools..." ;)
User avatar
ppemawm
Posts: 512
Joined: Fri May 17, 2013 3:54 pm
Location: Manhattan New York

Re: V0.19: Clayton Steam Wagon--UPDATE #3

Postby ppemawm » Thu Jun 20, 2019 3:21 pm

I have been working on the underslung steam engine that drives the the truck. Completed components include the crankcase housing, steam chest, lubricator, water pump, drive chain, and miscellaneous fittings. The models are shown in the photos below with some minor comments. Note that the engine has been placed in its own file and will be merged later with the truck assembly which has grown too large and less responsive during modelling.
Picture18.jpg
The steam engine and crankcase are mounted underneath the truck chassis as shown in the inset picture taken from the plans. A shapebinder of the driven sprocket on the rear axle assembly was imported from the truck file to serve as a locator for the engine.
Picture18.jpg (116.46 KiB) Viewed 238 times
Picture19.jpg
The origin of the engine was placed at the centerline of the crankshaft. Each subassembly was then placed at its proper location with respect to the engine origin and each body with respect to its subassembly origin. This simplifies master sketch attachment location for the various body features.
Picture19.jpg (99.44 KiB) Viewed 238 times
Picture20.jpg
This is an up-close detail of a spring on the lubricator which was a bit tricky to model accurately. The technique of pads and revolves described in earlier posts was used. It is important to 'square' the ends of the helix parallel to an origin plane before adding the end features.
Picture20.jpg (108.99 KiB) Viewed 238 times
Picture21.jpg
The drive chain model was created using a method worked out in an earlier post https://forum.freecadweb.org/viewtopic.php?f=24&t=18267&hilit=roller+chain.

One link and one pin were created at the chain subassembly origin as shown in the picture. The link is centered symmetrically at the origin. Note that the pin must be located in its proper location in the link rather than the origin. This creates a small error since the pin does not exactly follow the path sketch at the circular arcs. (Path array locates the sketch origin on the path sketch.) This is quite minor for large diameter sprockets but can be significant for small sprockets or longer link pitches.

Draft>PathArray was then used to align the chain links and pins to a sketch of the chain pitch-line. The arrays were Draft>downgraded twice to obtain individual solids. The even and odd numbered links were separated and moved to group folders. The chain link solids could then be moved to the inside and outside locations of the sprockets using placement properties to form the chain assembly. Some minor placement adjustments of several links on the small sprocket was required to more closely match the location of the pins.

This is not an exact model of the chain path due to limitations of the draft path array but is usually close enough for most purposes. See the roller chain post for discussion of these limitations.
Picture21.jpg (110.2 KiB) Viewed 238 times
Picture22.jpg
This is the spreadsheet used to calculate the link pitch and center distance of the chain. This is an iterative process as described in the earlier roller chain post.

In this example for the truck drive chain the drawings gave the center distance, number of links (70) and a link pitch of 16 mm which seems to be an approximation. An exact link pitch of 16.28 mm was necessary to obtain the specified center distance and number of links. The difference of 0.28 mm does not sound significant but when added up for 70 links it creates a significant error either in the center distance or number of links.
Picture22.jpg (120.82 KiB) Viewed 238 times
.
Next up are all details of the steam engine internals such as the pistons, connecting rods, valves, etc. which will wrap up this interesting and challenging project.

OS: Windows 10
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.19.16824 (Git)
Build type: Release
Branch: master
Hash: 81ae5688d48fe9037f431b5cb8e1c9cee07f22b9
Python version: 2.7.14
Qt version: 4.8.7
Coin version: 4.0.0a
OCC version: 7.2.0
Locale: English/UnitedStates (en_US)
"It is a poor workman who blames his tools..." ;)
cron