Assembly 3 Axial Alignment Failure

Discussion about the development of the Assembly workbench.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
Post Reply
exsolvespacer
Posts: 169
Joined: Sat Jan 23, 2021 1:15 pm

Assembly 3 Axial Alignment Failure

Post by exsolvespacer »

I'm trying to align some propellers to a drone model. I have 4 propellers to align. I managed to get plane alignment working fine but axial alignment has only been successful on one of the props. Please could someone have a quick look and tell me where I'm going wrong?

The 3 problem alignments are "AxialAlignment001" to "AxialAlignment003".

I am using the latest git Assembly 3.

Many thanks.
Foam assembly.FCStd
(31.35 KiB) Downloaded 25 times
Foam.FCStd
(261.92 KiB) Downloaded 24 times

Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 2021.1015.24301 +3962 (Git) AppImage
Build type: Release
Branch: LinkStage3
Hash: c6cb39697eb439caf7e5bd0208ca3082a7820547
Python version: 3.9.7
Qt version: 5.12.9
Coin version: 4.0.1
OCC version: 7.5.2
Locale: English/United Kingdom (en_GB)
User avatar
kwahoo
Posts: 680
Joined: Fri Nov 29, 2013 3:09 pm
Contact:

Re: Assembly 3 Axial Alignment Failure

Post by kwahoo »

This is common problem with Assembly 3: the solver will fail if parts are overconstrained.
You used Plane Alignment that fixes X, Y rotations and Z translation and Axial Alignment that fixes X, Y rotations and X, Y translations. That means X and Y rotations are constrained twice.

Quick and dirty fix: disable plane alignments and recompute. Parts will move in X and Y axes. Then enable plane alignments and recompute second time. Parts should move to their final positions.

Better fix if you have two circular faces on your both parts: use Plane Coincident instead of two constraints above.

Better fix if you do not have circular faces or do not want use them: add a point in one part and axis and second one and then use PointOnLine constraints plus Plane Alignment constraint.
exsolvespacer
Posts: 169
Joined: Sat Jan 23, 2021 1:15 pm

Re: Assembly 3 Axial Alignment Failure

Post by exsolvespacer »

kwahoo wrote: Fri Nov 12, 2021 2:57 pm This is common problem with Assembly 3: the solver will fail if parts are overconstrained.
Okay, well I hope Realthunder can fix it. I just donated to help him.
kwahoo wrote: Fri Nov 12, 2021 2:57 pm Better fix if you do not have circular faces or do not want use them: add a point in one part and axis and second one and then use PointOnLine constraints plus Plane Alignment constraint.
Okay, that will do for me. I understand this as I come from Solvespace where this was the only way to mate parts together.

Thanks for your help.
exsolvespacer
Posts: 169
Joined: Sat Jan 23, 2021 1:15 pm

Re: Assembly 3 Axial Alignment Failure

Post by exsolvespacer »

kwahoo wrote: Fri Nov 12, 2021 2:57 pm This is common problem with Assembly 3: the solver will fail if parts are overconstrained.
You used Plane Alignment that fixes X, Y rotations and Z translation and Axial Alignment that fixes X, Y rotations and X, Y translations. That means X and Y rotations are constrained twice.

Quick and dirty fix: disable plane alignments and recompute. Parts will move in X and Y axes. Then enable plane alignments and recompute second time. Parts should move to their final positions.

Better fix if you have two circular faces on your both parts: use Plane Coincident instead of two constraints above.

Better fix if you do not have circular faces or do not want use them: add a point in one part and axis and second one and then use PointOnLine constraints plus Plane Alignment constraint.
Okay, posting again as I couldn't make it work. I added a point constraint on the sketch of the rectangle of the prop (Body_Prop -> Pad_Blades -> Sketch) which is used for padding but in the Assembly 3 workbench, that point does not appear. Where am I going wrong?
Foam assembly.FCStd
(28.7 KiB) Downloaded 29 times
Foam.FCStd
(265.39 KiB) Downloaded 28 times

Thanks again.
User avatar
kwahoo
Posts: 680
Joined: Fri Nov 29, 2013 3:09 pm
Contact:

Re: Assembly 3 Axial Alignment Failure

Post by kwahoo »

exsolvespacer wrote: Fri Nov 12, 2021 5:07 pm that point does not appear.
FreeCAD does not show points from a sketch outside the sketch. You can create a second sketch with a line (or lines) and end of the line will be selectable as a point.
Or you can use datum point https://wiki.freecadweb.org/PartDesign_Point
User avatar
adrianinsaval
Veteran
Posts: 5541
Joined: Thu Apr 05, 2018 5:15 pm

Re: Assembly 3 Axial Alignment Failure

Post by adrianinsaval »

kwahoo wrote: Sat Nov 13, 2021 10:39 am FreeCAD does not show points from a sketch outside the sketch
You can have a defining point in FreeCAD since 0.19
https://wiki.freecadweb.org/Sketcher_Cr ... nt#Options
By default points are created as construction geometry and therefore are not visible outside of Sketch editing mode. Use the Sketcher ToggleConstruction.svg Toggle Construction tool to change them to normal geometry.
User avatar
bambuko
Veteran
Posts: 2161
Joined: Thu Oct 24, 2019 12:53 pm
Location: UK, England, North Devon

Re: Assembly 3 Axial Alignment Failure

Post by bambuko »

exsolvespacer wrote: Fri Nov 12, 2021 5:07 pm ... I added a point constraint on the sketch of the rectangle of the prop (Body_Prop -> Pad_Blades -> Sketch) which is used for padding but in the Assembly 3 workbench, that point does not appear. Where am I going wrong?
It doesn't "need to appear" - with sketch visible, and desired entity (point etc) selected, you will see in tree view sketch selected - drag it to create element to use with assembly constraint.

In the pic below I have selected a point in the sketch (made visible), and you can see sketch selected to the right- just right click drag it to elements:

point.png
point.png (179.5 KiB) Viewed 2520 times
I am using Link branch and Assembly3
you can also download ... and try it here
excellent Assembly3 tutorials here
exsolvespacer
Posts: 169
Joined: Sat Jan 23, 2021 1:15 pm

Re: Assembly 3 Axial Alignment Failure

Post by exsolvespacer »

bambuko wrote: Sun Nov 14, 2021 9:56 am
It doesn't "need to appear" - with sketch visible, and desired entity (point etc) selected, you will see in tree view sketch selected - drag it to create element to use with assembly constraint.

In the pic below I have selected a point in the sketch (made visible), and you can see sketch selected to the right- just right click drag it to elements:
Thanks a lot. I had no idea you could do that (and perhaps others didn't too).
Post Reply