V0.18 Challenge--Clerget 9B Aero Engine--UPDATE #6

Show off your FreeCAD projects here!
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
User avatar
microelly2
Veteran
Posts: 4688
Joined: Tue Nov 12, 2013 4:06 pm
Contact:

Re: V0.18 Challenge--Clerget 9B Aero Engine--Work in Process

Post by microelly2 »

Wow, very amazing story and impressive pictures

I'm interested how the performance changes when you add all these heavy details.
Where are the limits for comfortable realtime design
Where are the areas to speed up with simplified proxies for details during design process ?
I need some information about the complexity of the model - how many faces of which kind and so on, than I can create randomiced testobjects of the same complexity without any copyrights to see where the bottleneck is and how to get beter performance.
I think I will send you a diagnose script to get more information.
May you publish the dependency graph of your model? A svg file is enough, I can explore it as a first step.
User avatar
ppemawm
Veteran
Posts: 1240
Joined: Fri May 17, 2013 3:54 pm
Location: New York NY USA

Re: V0.18 Challenge--Clerget 9B Aero Engine--Work in Process

Post by ppemawm »

microelly2 wrote: Tue Jul 03, 2018 10:03 pm I'm interested how the performance changes when you add all these heavy details.
Where are the limits for comfortable realtime design
Where are the areas to speed up with simplified proxies for details during design process ?
There is no significant slow down in the graphics even though there are a large number of Draft>Arrays, but I do keep most of the model turned off when modelling. I organize the tree with this in mind so that Part sub-assemblies are easy to toggle visible/invisible.

One big slowdown, however, is when it autosaves every 30 minutes which takes about a minute or so but it is enough to break your rhythm. It would be nice if it could do an incremental save.
microelly2 wrote: Tue Jul 03, 2018 10:03 pm May you publish the dependency graph of your model? A svg file is enough, I can explore it as a first step.
graphviz.JPG
graphviz.JPG (17.72 KiB) Viewed 2626 times
I have run into this problem before with these larger engine models so there must be a limit somewhere in Graphviz.
"It is a poor workman who blames his tools..." ;)
triplus
Veteran
Posts: 9471
Joined: Mon Dec 12, 2011 4:45 pm

Re: V0.18 Challenge--Clerget 9B Aero Engine--UPDATE

Post by triplus »

ppemawm wrote: Tue Jul 03, 2018 9:29 pm A nice GUI feature would be the ability to edit the Attachment while the sketch is open because with this method of modelling multiple bodies you not only have to keep track of dimensions in the sketch but also the offset and revolve angle in the attachment panel. It would also be nice if when starting a new sketch and selecting an origin plane that you also could complete the attachment properties in the same panel. It gets to be a bit annoying to switch back and forth with map mode/attachment and sketcher, especially with a project of this magnitude...103 bodies, 371 sketches, 89 Mb and I am only about 1/3 complete.
Yeah. That is the missing part we were talking about in other threads. What you really need now is a good and robust assembly solver and a good organizational strategy. It's doable like you do it now. As you are working on it alone and have the needed skills and a good overview. But it's just like with sketches. Usually you don't want to make sketches too big and complex. And trying to create a "part" of the complexity of the engine is basically doing the same thing. Too big and complex. Simple sketch -> Simple Part -> in the future Assembly of parts. That is the GUI feature you are currently missing and that will likely make your job a bit easier.
Have been experimenting with attaching sketches ONLY to body origin planes ... External references are absolutely avoided wherever possible ...
Sure. Sometimes that makes sense but in general thanks but no thanks. Too limiting if you know what you are doing.
However, so far, this has worked out OK and the model is quite resilient to geometry changes except for chamfers and fillets, of course.
If you Pad faces directly and use ShapeBinder and things like that. That is just like attaching sketches to faces and using external reference tool in sketcher. That is when it comes to possible changing topology issues. All this features are prone to the same possible changing topology related issues.
There is no significant slow down in the graphics even though there are a large number of Draft>Arrays, but I do keep most of the model turned off when modelling. I organize the tree with this in mind so that Part sub-assemblies are easy to toggle visible/invisible.
Hopefully Draft > Link Arrays will further improve the situation. That is once Links effort gets upstreamed.

P.S. But said that we have to work with what we got and you are doing just fine.
User avatar
ppemawm
Veteran
Posts: 1240
Joined: Fri May 17, 2013 3:54 pm
Location: New York NY USA

Re: V0.18 Challenge--Clerget 9B Aero Engine--UPDATE #2

Post by ppemawm »

The parts for the cambox components and valve train have now been completed but not properly aligned. The cams, pushrod assemblies, rockers, and valves will all have to be manually aligned according to the timing diagrams at some point. I anticipate that this will be a tedious process since I am not using any Assembly workbench for this project.

I have been experimenting with copying sketches in lieu of master sketches and external geometry links. You start with the first sketch as simple as possible for the first feature and then copy, toggle construction mode, and add the new geometry. The copied sketch can also be used in a new body. E.g. if you have a sketch to pocket a hole for a dowell then copy the sketch and pad it in a new body to create the dowell in the exact location. While this is quite efficient and helps to build a remarkably robust model, it does has some disadvantages. If you have to make a change in the sketch geometry or attachment offset then you have to change all the copies as well since they are not linked. I have not decided if this is a better method but have been burned too many times using shapebinders and external links when it comes to making changes that effect the number of edges and vertices, especially in complicated bodies with many features.

The parts added with this update are shown in the following pictures with a few comments:

The components included in this update are the inlet/exhaust eccentric cams, tappets, pushrods, rockers, and valve assemblies.  Aligning these using placement properties according to the timing diagrams will be a real challenge.
The components included in this update are the inlet/exhaust eccentric cams, tappets, pushrods, rockers, and valve assemblies. Aligning these using placement properties according to the timing diagrams will be a real challenge.
Picture11.jpg (209 KiB) Viewed 2440 times
.
This engine has a unique cam arrangement to time the opening and closing of all the valves in the 9-cylinders.  The stationary cams are eccentric and the outer rotating gear ring 'wobbles' around the shaft centerline.  Four projections on the farside of the gear ring contact the tappets which actuate the pushrods and rockers at the proper timing to open and close the valves.  Very ingenious.
This engine has a unique cam arrangement to time the opening and closing of all the valves in the 9-cylinders. The stationary cams are eccentric and the outer rotating gear ring 'wobbles' around the shaft centerline. Four projections on the farside of the gear ring contact the tappets which actuate the pushrods and rockers at the proper timing to open and close the valves. Very ingenious.
Picture12.jpg (198.03 KiB) Viewed 2440 times
.
This closeup shows the beauty of the rockers and valve assemblies.  Note the unique torsional valve spring used for the exhaust valve to keep the spring out of the high temperature exhaust gas.  The spring was created with two additive sweeps using helixes, pads, and revolves then mirrored across the XZ plane.
This closeup shows the beauty of the rockers and valve assemblies. Note the unique torsional valve spring used for the exhaust valve to keep the spring out of the high temperature exhaust gas. The spring was created with two additive sweeps using helixes, pads, and revolves then mirrored across the XZ plane.
Picture13.jpg (234.64 KiB) Viewed 2440 times
.
Of all the parts, the rockers were the most challenging and frustrating.  I simply was not able to create a model according to the drawing.  The problems were the 10 mm radius at the juncture of the valve end of the rocker, the elliptical cross section, and all the fillets.<br /><br />The arrow points to the trouble area.  It seems the only way to duplicate this properly as shown in Jansen's drawing and his original model of the actual part is to use a sweep with two sweep paths, of course, something FreeCAD does not have.  The best I could do was a 5 mm fillet radius all around.  Looks good but not perfect.<br /><br />I also tried a 10 mm Part&gt;Variable fillet but it will not exactly duplicate the 3 mm fillet radius shown on drawing.  <br /><br />Perhaps someone has a suggestion for a different approach?<br />.
Of all the parts, the rockers were the most challenging and frustrating. I simply was not able to create a model according to the drawing. The problems were the 10 mm radius at the juncture of the valve end of the rocker, the elliptical cross section, and all the fillets.

The arrow points to the trouble area. It seems the only way to duplicate this properly as shown in Jansen's drawing and his original model of the actual part is to use a sweep with two sweep paths, of course, something FreeCAD does not have. The best I could do was a 5 mm fillet radius all around. Looks good but not perfect.

I also tried a 10 mm Part>Variable fillet but it will not exactly duplicate the 3 mm fillet radius shown on drawing.

Perhaps someone has a suggestion for a different approach?
.
Picture14.jpg (211.3 KiB) Viewed 2440 times
.
I also had to use 'fillet-stops' in order to achieve a valid solid with the fillets that terminate at multiple tangencies.  A fillet-stop is a vanishingly small pad or pocket to terminate the fillet at the tangent vertex. <br />Some might call this a hack, but it does result in a valid solid and aesthetically suits my purpose.
I also had to use 'fillet-stops' in order to achieve a valid solid with the fillets that terminate at multiple tangencies. A fillet-stop is a vanishingly small pad or pocket to terminate the fillet at the tangent vertex.
Some might call this a hack, but it does result in a valid solid and aesthetically suits my purpose.
Picture15.jpg (148.71 KiB) Viewed 2440 times
.
The file has grown to 116 Mb and sketch count is at 573. Even so, the overall performance is quite satisfactory except when opening the file or during autosave which takes several minutes.

The next parts to be tackled are the reciprocating components (connecting rods and pistons) and then the accessories such as the air/oil pumps and the magnetoes. These latter parts will be a real challenge due to their complexities and highly featured lightweight housings. Stay tuned for next month's update.

OS: Windows 10
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.18.13983 (Git)
Build type: Release
Branch: master
Hash: 8f1c6f77c090ae7d9c2bfd4f18811083b01a3eb2
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
NormandC
Veteran
Posts: 18587
Joined: Sat Feb 06, 2010 9:52 pm
Location: Québec, Canada

Re: V0.18 Challenge--Clerget 9B Aero Engine--UPDATE #2

Post by NormandC »

Man, you are one dedicated and patient man. Amazing work! :)

ppemawm wrote: Tue Jul 24, 2018 4:49 pm Of all the parts, the rockers were the most challenging and frustrating. I simply was not able to create a model according to the drawing. The problems were the 10 mm radius at the juncture of the valve end of the rocker, the elliptical cross section, and all the fillets.

The arrow points to the trouble area. It seems the only way to duplicate this properly as shown in Jansen's drawing and his original model of the actual part is to use a sweep with two sweep paths, of course, something FreeCAD does not have. The best I could do was a 5 mm fillet radius all around. Looks good but not perfect.

I also tried a 10 mm Part>Variable fillet but it will not exactly duplicate the 3 mm fillet radius shown on drawing.

Perhaps someone has a suggestion for a different approach?
If you look closely at P. Jensen's screenshots of his 3D model, you can see that there is a parting line along the XY plane. I'm pretty sure he only modelled the top half then mirrored it. I think that's how he could do these fillets without need for "fillet stops".

You are right that a sweep with more than one sweep path would really be useful (have you checked out Chris_G's Curves wb? I believe it has one, but I haven't tried it). Nonetheless, I was able to get the 10mm radius in the sweep shape by adding an intermediary sketch.

I first created a master sketch to determine where to position the cross-sections, on which I also based my datum planes for the cross-section sketches.
FC_ppemawm_exhaust_lever_01.png
FC_ppemawm_exhaust_lever_01.png (7.03 KiB) Viewed 2416 times

Then I first created a simple 2-section AdditiveLoft:
FC_ppemawm_exhaust_lever_02.png
FC_ppemawm_exhaust_lever_02.png (14.02 KiB) Viewed 2416 times
And I added an AdditivePipe for the smaller end, using Sketch's short R10mm arc at the forefront as path.
FC_ppemawm_exhaust_lever_03.png
FC_ppemawm_exhaust_lever_03.png (16.71 KiB) Viewed 2416 times
Then I added the cylinders and added fillets.

Note that for the centre cylinder, I had to go back to the first Sketch and remove the tangency between the bottom slanted line and the circle, or the fillet would fail. Oddly enough, tangency wasn't problematic on the 3 other junctures.

Of course I had to leave PartDesign to make a Part Mirror and a Part Fuse. I sure hope that at some point in the future, somebody implements the "PartDesign Mirror Body" feature I asked for last year. (issue #2863)

FC_ppemawm_exhaust_lever_04.png
FC_ppemawm_exhaust_lever_04.png (45.21 KiB) Viewed 2416 times

I didn't bother modelling the complete part, and the dimensions were really hard to read in the screenshot.

Hope this helps...

Norm

P.S. Adding an OpenSCAD Refine Shape feature removes the split edges on the cylinders and makes the part look nicer. My FCStd file doesn't include it to reduce file size.
Attachments
ppemawm_exhaust_rocking_lever_test_nc1.fcstd
(837.28 KiB) Downloaded 80 times
User avatar
ppemawm
Veteran
Posts: 1240
Joined: Fri May 17, 2013 3:54 pm
Location: New York NY USA

Re: V0.18 Challenge--Clerget 9B Aero Engine--UPDATE #2

Post by ppemawm »

NormandC wrote: Tue Jul 24, 2018 6:06 pm I was able to get the 10mm radius in the sweep shape by adding an intermediary sketch.
Thanks NormandC.

I swear I tried everything but that. Tunnel vision I guess.

Anyway, now you have a body in my engine model. A simple and elegant PartDesign solution.

EDIT: Note that you can make a PartDesign>Mirrored feature by stacking the features in the same order
as created in the mirrored parameters list then add the fillets.

One again you have proven why you are the MAN.
"It is a poor workman who blames his tools..." ;)
User avatar
NormandC
Veteran
Posts: 18587
Joined: Sat Feb 06, 2010 9:52 pm
Location: Québec, Canada

Re: V0.18 Challenge--Clerget 9B Aero Engine--UPDATE #2

Post by NormandC »

ppemawm wrote: Tue Jul 24, 2018 6:43 pm One again you have proven why you are the MAN.
Aw man, no, you are the man. :D

ppemawm wrote: Tue Jul 24, 2018 6:43 pm A simple and elegant PartDesign solution.
Unfortunately, this sweep is not perfect. The rear is not perfectly straight. Just to find out, I placed a large cube tangent to both cylinders and made a Part Cut.

You can see where the sweep was exceeding the line, the cut generated two planar faces (in grey).
Attachments
FC_ppemawm_exhaust_lever_05.png
FC_ppemawm_exhaust_lever_05.png (43.39 KiB) Viewed 2396 times
User avatar
NormandC
Veteran
Posts: 18587
Joined: Sat Feb 06, 2010 9:52 pm
Location: Québec, Canada

Re: V0.18 Challenge--Clerget 9B Aero Engine--UPDATE #2

Post by NormandC »

ppemawm wrote: Tue Jul 24, 2018 6:43 pm EDIT: Note that you can make a PartDesign>Mirrored feature by stacking the features in the same order
as created in the mirrored parameters list then add the fillets.
It's not working for me, creating PD fillets after a PD Mirrored feature fails.

I think I'll try another approach than the AdditiveLoft + AdditivePipe.
chrisb
Veteran
Posts: 53920
Joined: Tue Mar 17, 2015 9:14 am

Re: V0.18 Challenge--Clerget 9B Aero Engine--UPDATE #2

Post by chrisb »

This is really great stuff. Most impressive was the hairneedle spring to me. Did you use a helix for the middle part of it?
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
User avatar
ppemawm
Veteran
Posts: 1240
Joined: Fri May 17, 2013 3:54 pm
Location: New York NY USA

Re: V0.18 Challenge--Clerget 9B Aero Engine--UPDATE #2

Post by ppemawm »

chrisb wrote: Tue Jul 24, 2018 8:27 pm Did you use a helix for the middle part of it?
Yes.
The drawing shows two, one larger half outer helix, and a smaller inner helix on different centerlines. The wrap of the inner helix was adjusted to align the horizontal pad with the valve cap, the horizontal pad was trimmed at the valve cap centerline, and finally, a quarter revolve around the cap finished it off. Not as tricky as it may appear.
exhaust_spring.JPG
exhaust_spring.JPG (15.58 KiB) Viewed 2361 times
"It is a poor workman who blames his tools..." ;)
Post Reply