V0.20/Assembly4 Challenge--Creo Motorbike

Show off your FreeCAD projects here!
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
chrisb
Veteran
Posts: 53928
Joined: Tue Mar 17, 2015 9:14 am

Re: V0.20/Assembly4 Challenge--Creo Motorbike (work in progress) Update #5

Post by chrisb »

Thanks for sharing your detailed descriptions. This can be a great help for others.
A Sketcher Lecture with in-depth information is available in English, auf Deutsch, en français, en español.
User avatar
Zolko
Veteran
Posts: 2213
Joined: Mon Dec 17, 2018 10:02 am

Re: V0.20/Assembly4 Challenge--Creo Motorbike (work in progress) Update #5

Post by Zolko »

chrisb wrote: Sat May 07, 2022 5:59 pm Thanks for sharing your detailed descriptions.
there is material for splash screens there

Image

Image


This can be a great help for others.
I would go a step further and propose to include this in some sort of "FreeCAD showcase" in the FreeCAD wiki.
try the Assembly4 workbench for FreCAD — tutorials here and here
User avatar
NewJoker
Veteran
Posts: 3018
Joined: Sun Oct 11, 2020 7:49 pm

Re: V0.20/Assembly4 Challenge--Creo Motorbike (work in progress) Update #5

Post by NewJoker »

This model is already a great proof of FreeCAD's capabilities. Just think how cool it will look like once finished. Then I hope that it will be widely used to present the power of FreeCAD. Personally, I would vote for including it on the main page: https://www.freecadweb.org/
User avatar
ppemawm
Veteran
Posts: 1240
Joined: Fri May 17, 2013 3:54 pm
Location: New York NY USA

Re: V0.20/Assembly4 Challenge--Creo Motorbike (work in progress) Update #6

Post by ppemawm »

All of the major components have now been updated in the top assembly as shown in the following images. Only a few 'minor' components remain to be modeled and assembled including the exhaust, cam and drive chains, seat, gas tank, etc. It is probably one of these situations where the last 10% takes 90% of the time.

The files of all the sub-assemblies are shown in the model tree in this image. These total about 200 Mb thus far.  Several are over 30 Mb each probably due to extensive use of MultiTransforms.  It takes about 8 min to load the top assembly with partial loading enabled (graphics and links only) and about 12 minutes if it is disabled (all supporting files open).  You can toggle this at Edit&gt;Preferences&gt;Document&gt;Document Objects.<br /><br />File load time, recompute, and GUI response time have all slowed considerably which is about my only serious complaint with FreeCAD at this point.  I have had to disable autosave and enable skip recomputes at the file level in order to do any reasonable work in the assembly file.  The response time for Creo in the tutorial videos is much faster unless they are faking it somehow.  Perhaps my computer (2015 I7-4710 Quad Core, 16 Gb memory, 1Tb drive) is not up to the task or a hidden error in the files is responsible.<br /><br />The engine and transmission are now complete (except for the cam chains) and a few other minor components have been added to the top assembly including the intake duct, front and rear foot rests, and the front brake cable.
The files of all the sub-assemblies are shown in the model tree in this image. These total about 200 Mb thus far. Several are over 30 Mb each probably due to extensive use of MultiTransforms. It takes about 8 min to load the top assembly with partial loading enabled (graphics and links only) and about 12 minutes if it is disabled (all supporting files open). You can toggle this at Edit>Preferences>Document>Document Objects.

File load time, recompute, and GUI response time have all slowed considerably which is about my only serious complaint with FreeCAD at this point. I have had to disable autosave and enable skip recomputes at the file level in order to do any reasonable work in the assembly file. The response time for Creo in the tutorial videos is much faster unless they are faking it somehow. Perhaps my computer (2015 I7-4710 Quad Core, 16 Gb memory, 1Tb drive) is not up to the task or a hidden error in the files is responsible.

The engine and transmission are now complete (except for the cam chains) and a few other minor components have been added to the top assembly including the intake duct, front and rear foot rests, and the front brake cable.
Capture34.JPG (306.78 KiB) Viewed 2048 times
There are more files than the sub-assemblies shown in the top assembly because some of the sub-assemblies include smaller sub-assemblies themselves.  That helps to keep the top assembly a  little more organized IMO.<br /><br />A folder in the assembly tree includes all of the individual bodies of the shock absorber assembly which are attached to the master sketch rather than the frame so they can be animated at the top level.  Variables used in the master sketch define the elevation of the rear wheel assembly and the required spring length from the master sketch solver.
There are more files than the sub-assemblies shown in the top assembly because some of the sub-assemblies include smaller sub-assemblies themselves. That helps to keep the top assembly a little more organized IMO.

A folder in the assembly tree includes all of the individual bodies of the shock absorber assembly which are attached to the master sketch rather than the frame so they can be animated at the top level. Variables used in the master sketch define the elevation of the rear wheel assembly and the required spring length from the master sketch solver.
Capture34b.JPG (282.57 KiB) Viewed 2048 times
This is an example of in-context modeling at the top level that Assembly4 nicely accommodates.  You simply activate the link and continue working as if in the original file.  This let's you check for clearances from surrounding components as in this example of the intake duct routing.<br /><br />I chose to include the intake duct and clamps in the radiator sub-assembly since that seemed a logical starting point for the model.  The duct was modeled with pads and revolves of an annulus using datum lines as axes.  This allows a lot of freedom to route the tube around obstacles as required.  <br /><br />Predetermine the number of straight sections and number of bends or elbows without being too concerned with how the endpoint lines up.  You can then go back and tweak the pads, axis inclinations, bend radii until you get a good fit-up with the next component (carburetor/intake manifold in this example).<br /><br />The tutorial did not include any detail for the carburetor which is disappointing because it looks a little &quot;cartoony&quot; or incomplete compared with the rest of the bike.
This is an example of in-context modeling at the top level that Assembly4 nicely accommodates. You simply activate the link and continue working as if in the original file. This let's you check for clearances from surrounding components as in this example of the intake duct routing.

I chose to include the intake duct and clamps in the radiator sub-assembly since that seemed a logical starting point for the model. The duct was modeled with pads and revolves of an annulus using datum lines as axes. This allows a lot of freedom to route the tube around obstacles as required.

Predetermine the number of straight sections and number of bends or elbows without being too concerned with how the endpoint lines up. You can then go back and tweak the pads, axis inclinations, bend radii until you get a good fit-up with the next component (carburetor/intake manifold in this example).

The tutorial did not include any detail for the carburetor which is disappointing because it looks a little "cartoony" or incomplete compared with the rest of the bike.
Capture35.JPG (332.45 KiB) Viewed 2048 times
This image shows the rear foot rest and how it was modeled.  I used both a sweep and loft for the round bars that attach to the frame.  The loft is on the right side and the sweep on the left in the inset views.<br /><br />You can use a loft if you are not too concerned about the accuracy of the final shape.  I usually include a short straight section at the beginning and end to prevent distortions at the ends of the loft.  That requires a minimum of four sketches that you can see in the image.<br /><br />If you need to better control the shape or if it is more complicated then use a sweep which requires a path sketch to follow.  Note that this can be a sketch of the projected path as in this example.  If that is the case then you add an additional object sketch at the proper end location and use the multi-section option in the sweep tool.  A loft would require many more sketches to accurately capture this shape .<br /><br />The highlighted foot rest on the right side of the bike is a link mirror of the left side.
This image shows the rear foot rest and how it was modeled. I used both a sweep and loft for the round bars that attach to the frame. The loft is on the right side and the sweep on the left in the inset views.

You can use a loft if you are not too concerned about the accuracy of the final shape. I usually include a short straight section at the beginning and end to prevent distortions at the ends of the loft. That requires a minimum of four sketches that you can see in the image.

If you need to better control the shape or if it is more complicated then use a sweep which requires a path sketch to follow. Note that this can be a sketch of the projected path as in this example. If that is the case then you add an additional object sketch at the proper end location and use the multi-section option in the sweep tool. A loft would require many more sketches to accurately capture this shape .

The highlighted foot rest on the right side of the bike is a link mirror of the left side.
Capture37.JPG (301.96 KiB) Viewed 2048 times
.
As promised in an earlier update, here is a quick-and-dirty Assembly4 animation of the crankshaft sub-assembly using the animator Export option:
.
phpBB [video]

.

I am currently working on the exhaust pipes similar to how I modeled the intake duct and then onto the chains which are themselves quite a challenge even for Creo apparently. I have modeled these before, but with only limited success https://forum.freecadweb.org/viewtopic.php?f=24&t=18267.

Code: Select all

OS: Windows 10 (10.0)
Word size of FreeCAD: 64-bit
Version: 0.20.28774 (Git)
Build type: Release
Python 3.8.13, Qt 5.12.9, Coin 4.0.0, OCC 7.5.3
Locale: English/United States (en_US)
Installed mods: 
  * Assembly4 0.11.10
  * fasteners 0.3.41
  * fcgear 1.0.0
Last edited by ppemawm on Wed May 11, 2022 10:21 pm, edited 1 time in total.
"It is a poor workman who blames his tools..." ;)
User avatar
Kunda1
Veteran
Posts: 13434
Joined: Thu Jan 05, 2017 9:03 pm

Re: V0.20/Assembly4 Challenge--Creo Motorbike (work in progress) Update #6

Post by Kunda1 »

ppemawm wrote: Wed May 11, 2022 4:11 pm As promised in an earlier update, here is a quick-and-dirty Assembly4 animation of the crankshaft subassembly:
@ppemawm can you redo this clip with higher framerate that way it doesn't look so choppy?
Alone you go faster. Together we go farther
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
User avatar
kwahoo
Posts: 680
Joined: Fri Nov 29, 2013 3:09 pm
Contact:

Re: V0.20/Assembly4 Challenge--Creo Motorbike (work in progress) Update #6

Post by kwahoo »

Whoaaa!

This is really impressive.
Kunda1 wrote: Wed May 11, 2022 5:18 pm
ppemawm wrote: Wed May 11, 2022 4:11 pm As promised in an earlier update, here is a quick-and-dirty Assembly4 animation of the crankshaft subassembly:
@ppemawm can you redo this clip with higher framerate that way it doesn't look so choppy?
@ppemawm, you are probably aware of this, but you can do nice fluid animations with Python scripts and ffmpeg. This is an example of script changing single spreadsheet cell at every step. Of couse, Gui.runCommand('asm3CmdSolve',0) have to be replaced with A4 equivalent.
User avatar
ppemawm
Veteran
Posts: 1240
Joined: Fri May 17, 2013 3:54 pm
Location: New York NY USA

Re: V0.20/Assembly4 Challenge--Creo Motorbike (work in progress) Update #6

Post by ppemawm »

Thank you for your comments.
Kunda1 wrote: Wed May 11, 2022 5:18 pm can you redo this clip with higher framerate that way it doesn't look so choppy?
kwahoo wrote: Wed May 11, 2022 5:42 pm you can do nice fluid animations with Python scripts and ffmpeg.
I can reduce the step size in the animator, but it will still be slow and choppy, just longer.
I have no idea how to speed up the rendering. And, I don't think I want to spend time editing a video to increase the speed.
Quick and dirty, right?

I am aware there are other methods one might use. I was only trying to show what's possible with basic Part Design and Assembly4.
"It is a poor workman who blames his tools..." ;)
User avatar
Kunda1
Veteran
Posts: 13434
Joined: Thu Jan 05, 2017 9:03 pm

Re: V0.20/Assembly4 Challenge--Creo Motorbike (work in progress) Update #6

Post by Kunda1 »

ppemawm wrote: Wed May 11, 2022 7:01 pm And, I don't think I want to spend time editing a video to increase the speed.
Quick and dirty, right?
Totally understand.
Alone you go faster. Together we go farther
Please mark thread [Solved]
Want to contribute back to FC? Checkout:
'good first issues' | Open TODOs and FIXMEs | How to Help FreeCAD | How to report Bugs
User avatar
kwahoo
Posts: 680
Joined: Fri Nov 29, 2013 3:09 pm
Contact:

Re: V0.20/Assembly4 Challenge--Creo Motorbike (work in progress) Update #6

Post by kwahoo »

ppemawm wrote: Wed May 11, 2022 7:01 pm I have no idea how to speed up the rendering. And, I don't think I want to spend time editing a video to increase the speed.
The script I linked saves the animation in series of images. Then ffmpeg joints them with chosen framerate/speed. No manual input is needed, and animation can look like this.

Ping me if you would like to try adjust the script to you assembly.
User avatar
ppemawm
Veteran
Posts: 1240
Joined: Fri May 17, 2013 3:54 pm
Location: New York NY USA

Re: V0.20/Assembly4 Challenge--Creo Motorbike (work in progress) Update #6

Post by ppemawm »

kwahoo wrote: Wed May 11, 2022 7:12 pm and animation can look like this.
I like yours better but do not want to spend any more time on it. Thanks anyway.
"It is a poor workman who blames his tools..." ;)
Post Reply