ASSEMBLY 4 - Differential - Progress

Good morning
I have just modeled a differential. I am having difficulty getting my gears to rotate. When the LCS of a pinion changes, its brother also moves. What would be the solution? Should I modify the structure from the start and have 2 LCS per gable?
Your returns are welcome.
Happy New Year 2024
https://drive.google.com/file/d/147Pl4QEhDmCr_-FbaRgmWSeq-xAOXO0i/view?usp=sharing

The Noix diff002 and Noix diff003 should both be attached to the Parent Assembly, not the Differential Av_Ar so that they can rotate independently. Attach the Planetaire gears to the Noix diff shafts so that they will rotate with the shafts. Attach the Pignon input drive shaft to the Parent Assembly as well. Attach the Satellite gears to the Axe.

You will need an independent variable and expression for the Pignon rotation.

Assign another variable with an expression for the Differential Av_Ar rotation which is related to the Pignon rotation by the gear ratio.

You have two conditions for either of the Noix diff shafts, either rotating or stationary so you will need separate rotation variables for each shaft. You will also need a variable for the Satellite gears.

Try to set up all the variables so that you can actuate each with the slider of the animator 0-360 deg, looped. If any of the direction of rotations are wrong then multiply the expression by -1. If you can get this far, then maybe we can figure out the relative rotation of each for the various conditions: both noix diff shafts same speed or different speeds and either stationary.

This may help us visualize how the differential works: https://www.youtube.com/watch?v=nC6fsNXdcMQ

Thank you for your help. I think we will re-form a team because I have embarked on a grandiose project for me. This involves modeling and animating an offroad buggy on a 1/8th scale.

Sounds like a real challenge. Should be fun and a chance for all of us to learn something new.

After reviewing your file I see that a few bad habits have cropped up since our last project. Use Assembly4 bodies that include an LCS rather than PartDesign bodies. Do not attach LCS or hole axes to feature edges, attach to origin planes or sketches instead. Do not use local LCS’s that have no support. Probably should use hole axis only for fasteners. Etc., Etc.

Please PM me for a link for your revised file. I tried to fix-up enough to start an assembly and get you started on the animation. Study the assembly sequence, LCS attachments, and where the variables and expressions are used.

diff2.gif

Also, what version are you running?
```
OS: Windows 11 build 22621
Word size of FreeCAD: 64-bit
Version: 0.22.0dev.35456 (Git)
Build type: Release
Branch: main
Hash: c91a35961f7ef42f1b64eb11ca963d6fbc0b42da
Python 3.10.13, Qt 5.15.8, Coin 4.0.2, Vtk 9.2.6, OCC 7.6.3
Locale: English/United States (en_US)
Installed mods:

  • Assembly4 0.50.6
  • fasteners 0.4.15
  • freecad.gears 1.1.0
  • QuickMeasure 2022.10.28

I didn’t have a clear idea at the start and one body leads to another and off I go for my project. Basically, I modeled and implemented LCS in Part Design. (around a hundred pieces are being assembled). For my part, I still have difficulties with the operation and positioning of the LCS. I’ll have to rewatch the tutorials if I have time. If I have to start on a good basis I might as well modify everything.
I just updated my differential. It turns in the right direction and just in a straight line (equal speed for the wheels). On the other hand, the teeth collide. My formula must be incomplete. The ratio is 36/15 = 2.4.

How can I improve fluidity because the images are jerky when I start the animation?

https://drive.google.com/file/d/1kSAYfoS0OHOulQJE72zvuUHq90sjsaSe/view?usp=sharing

OS: Windows 11 build 22631
Word size of FreeCAD: 64-bit
Version: 0.22.0dev.35466 (Git)
Build type: Release
Branch: main
Hash: f2fe61bca1725c43ccae877c325fdd781b0a957a
Python 3.10.13, Qt 5.15.8, Coin 4.0.2, Vtk 9.2.6, OCC 7.6.3
Locale: French/France (fr_FR)
Installed mods:
* Assembly4 0.50.6
* CurvedShapes 1.0.4
* Curves 0.6.13
* ExplodedAssembly
* fasteners 0.4.67
* fcgear 1.0.0
* LCInterlocking
* MnesarcoUtils 0.2.2
* Nodes 0.1.36
* opencv
* Pyramids-and-Polyhedrons
* QuickMeasure 2022.10.28
* sheetmetal 0.3.1

I resumed my file and the rotation works. At the moment there is no difference in speed. So I’m in a straight line, no turns at the moment.
I don’t have the same fluidity as you.
I tested with the stable version 021.1 and it is identical in terms of animation. Is it machine settings or?

I reviewed your V3 file and it looks good. Great progress. I see that you corrected the gear ratio which is actually 2.4.

Try it with a step size that is not an even multiple of the gear tooth numbers, say 10. That’s what I used in the above gif. Remember that the pinion has to turn 864 deg for one full turn of the differential.

Let Assembly4 and Sketcher do the work for you. If you use the Assemby4 body it includes an LCS already attached to the body origin which you can use for assembly. This also avoids the dreaded TNP. If you double click the Body it will take you to PartDesign asking for the first sketch.

Study the attached simple example and note where and how the LCS and sketch origins and pad directions are strategically located when creating the body. Locate the first sketch at the mating interface feature. I think you will find this approach the key to a more productive Assembly4 design and assembly process.
LCS_example.FCStd

In addition to your file and to understand the process, the actions linked to LCS, I train with simple pieces. I rotate, move, arrange the hooks differently. I exploit and discover these features. I’m looking for the piece to rotate and rise in one operation. I have my 2 variables, I’m missing a little something to link them…

It is a good way to learn and experiment. A couple of general comments about your files:

  1. Do not use an Assembly4 Part container (yellow). Use an Assembly4 Body (blue). Part containers are for multiple objects.
  2. You do not need to add an LCS for assembly. It will be redundant to the one included in the Body. When creating the sketch for the pad locate one of the holes at the origin where it mates with the other body. It will easier to assemble. Keep it simple. The sketch needs to be attached to an origin plane.
  3. Always fully constrain your sketches. You may not need to but it is a good habit in order to avoid unexpected results.
  4. I do not use hole axes for assembly, only for fasteners. LCS’s are visually easier to manipulate IMO.
  5. Do not attach LCS’s to feature (e.g. pad) faces or edges. Period.

In your first file ASM4_test_LCS, if you want the sketch to rotate a full 180 deg without locking up use a step size that does not divide evenly into 90, 180, 360 deg. Use 1.7 for b_rot1, for example.

The second file ASM4_test LCS2 works as you intended? Remember, when you use a variable for the part or body attachment offset it will rotate about its attachment LCS axis, RELATIVE to the one to which it is attached. Note also that you can also move or rotate the body by using the variable for its LCS attachment offset properties.

I am not sure what you are trying to accomplish in the third file so probably should not comment without more information. There are several different ways to constrain the motion so what I am suggesting is not the only way or necessarily the best. You have to experiment.

What versions are you running?



Hi
I continue my progress with simple assemblies. Now the movement of parts in ASM4 is understood. What I had left was an understanding of how LCS works. Through this example I learned a lot. A little more than 4 hours to reach my goals. I’m very happy.
The source is here https://www.youtube.com/watch?v=5E6gMuMVBEI
Animation launch with: a_angle

Most excellent progress!

Much can be learned in those tutorials regarding how to constrain an Assembly4 assembly.

One more not without difficulty because of the dimensions.
Source here: https://www.youtube.com/watch?v=Ypm44TppEOU&t=89s
Q1-Is it possible to improve the arrangement of the different objects in the tree structure ? (Put the LCS_ together then the parts).
Q2-How to quickly find the association of LCS, formulas with objects. Personally I unroll object by object and I look at each line in the Data tab ?

Animation launch with: a_angle

Nicely done. I am pleased you are using the Assembly4 Body. :wink:
It is amazing that the constraint sketch works so well without flipping or freezing.

I like to drag and drop the parent constraint sketches and LCS’s into the Constraints folder as you can see in this image. Afterall, that is what they are. The rest of the LCS’s have to stay in their respective bodies AFAIK. Actually, that is where they belong. They are an essential feature of the body.

Screenshot 2024-01-15 154025.jpg

It sometime helps to change the Property View panel to Auto Expand (right click) when looking for where the variables are being used. You still have to select the links one-by-one though. You might also look into the View>Panels>Selection View where you can search by name.

I continue my learning.
I can’t find how to synchronize the movements between the balance wheel and the 58/18 gears. Can you tell me what to do? Sincerely
https://drive.google.com/file/d/1awIYaWHYI_XKRH8CWtaTWAvYxnCKCVrU/view?usp=sharing

Do you have any exercises to improve my knowledge of ASM4?

Your file and animation seems to be set up properly as far as I can tell. I recorded a .gif from your file with the animator in V0.22.34959 I sent you and it looks OK to me:

bernard_test.gif

What you see in your screen recorded .gif and the animator with a 3 deg step may be an optical illusion or it is just the inability for the graphics to keep up with the calculations. If you use the slider and the arrow key one step at a time it looks OK. If you slow it down to 1 deg step it also looks OK when you run the animator.

I did notice that you used an external reference to a feature of the body in a sketch (see Sketch001 of Pignon58). It is better to reference the sketch that created the feature if you want to minimize TNP. IMO. You also have an unconstrained sketch which is not a good habit to get into. Discipline, discipline…it will pay off in the long run. As you already know.

You have a pretty good grasp of the fundamentals already. YouTube has a number of worthwhile examples such as: https://www.youtube.com/@madslethdanielsen2099/videos
The series that you are currently using are better than most. Or, look for some Onshape or Solidworks tutorials and see if you can duplicate them. If you want to learn more, try more complex assemblies that require motion constraints. These are the some of the exercises from which I learned what I know so far. They may give you some new ideas to try:
Assembly4 Tutorials & Examples.pdf

Thank you very much for your relevant feedback and for the attachments. Indeed I have to be more attentive when I return my copy.
Could you tell me why the finger did not follow the path of the ellipse exactly?
At first I wanted to make the groove with Draft/SketchOnSurface but it was worse in terms of tracking. I don’t know the formula or other action to do this.
With the ver 0.22.0dev.34959 (Git), in animation capture, the file saves as MP4. Is there a way to have it in *.gif directly from FreeCAD?

Add .gif to the file name when saving.

I will review your file when I get a bit of time.

I thank you for your feedback. There is no emergency.

I’m having fun with your presentations. I have opened "https://devtalk.freecad.org/t/use-of-an-assembly4-time-variable-for-mechanism-design-and-assembly-final-comments-re-assembly-constraints/71819/1 and working on the one with the 4 columns. It’s really impressive the possibilities offered.
Thanks :smiley: