Another approach to assembly solver (A2plus)

Discussion about the development of the Assembly workbench.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
kbwbe
Veteran
Posts: 1052
Joined: Tue Apr 10, 2018 3:12 pm
Location: Germany, near Köln (Cologne)

Re: Another approach to assembly solver (A2plus)

Post by kbwbe »

babaroga wrote: Tue Sep 11, 2018 8:09 am Guys, thank you for excellent work. I just wanted to share document made with A2plus in production environment.

https://forum.freecadweb.org/viewtopic. ... 41#p255608
Hi babaroga,
thank you for trying A2plus and sharing your beautiful work.
babaroga wrote: Tue Sep 11, 2018 8:09 am I am preparing tutorial for this WB beauty.
Great ! :D
KBWBE

https://github.com/kbwbe/A2plus
latest release: v0.4.56, installable via FreeCAD's addon manager
Tutorial: gripper assembly https://www.youtube.com/watch?v=QMxcQ5tssWk
Documentation: https://www.freecadweb.org/wiki/A2plus_Workbench
User avatar
manuelkrause
Posts: 442
Joined: Thu Jul 05, 2018 7:16 pm

Re: Another approach to assembly solver (A2plus)

Post by manuelkrause »

kbwbe wrote: Tue Sep 11, 2018 9:02 am
babaroga wrote: Tue Sep 11, 2018 8:09 am Guys, thank you for excellent work. I just wanted to share document made with A2plus in production environment.

https://forum.freecadweb.org/viewtopic. ... 41#p255608
Hi babaroga,
thank you for trying A2plus and sharing your beautiful work.
babaroga wrote: Tue Sep 11, 2018 8:09 am I am preparing tutorial for this WB beauty.
Great ! :D
Hi @babaroga:
Thank you for sharing your experience and results under the mentioned scope. :-)

For me it's the proof that @kbwbe's work and all our continuous productive collaboration has paid off and no invested time was wasted at all. This gives courage for further steps. :-D

Many thanks,
Manuel
Turro75
Posts: 179
Joined: Mon Aug 15, 2016 10:23 pm

Re: Another approach to assembly solver (A2plus)

Post by Turro75 »

Turro75 wrote: Mon Sep 10, 2018 10:01 am
My next approach will be:

As the unfixing strategy is very slow especially if the reason of misplacement is not directly constrained to the one misplaced ,I'll try to unfix everything and then analyze how it works

Another way is
Stage 1 : merge all fully constrained objs
Stage 2 : use master way with progressive and unfixing if needed hoping that reducing the number of objs does the job
Hi All,

unfixing all is a waste of time

the second way looks much more promising.

@Kbwbe,

in my fork You can see the turro-dof4 branch which is the first rough implementation.
I left two button solver the first is merge+master and the second is master only
I put a toggle to animate or no the constraining just to quickly see how both work without changing the code
I put also a stop button which stops solver if too slow or so
Turro75
Posts: 179
Joined: Mon Aug 15, 2016 10:23 pm

Re: Another approach to assembly solver (A2plus)

Post by Turro75 »

Turro75 wrote: Tue Sep 11, 2018 9:50 am
Turro75 wrote: Mon Sep 10, 2018 10:01 am
My next approach will be:

As the unfixing strategy is very slow especially if the reason of misplacement is not directly constrained to the one misplaced ,I'll try to unfix everything and then analyze how it works

Another way is
Stage 1 : merge all fully constrained objs
Stage 2 : use master way with progressive and unfixing if needed hoping that reducing the number of objs does the job
Hi All,

unfixing all is a waste of time

the second way looks much more promising.

@Kbwbe,

in my fork You can see the turro-dof4 branch which is the first rough implementation.
I left two button solver the first is merge+master and the second is master only
I put a toggle to animate or no the constraining just to quickly see how both work without changing the code
I put also a stop button which stops solver if too slow or so
@Kbwbe,

please test also these parameters, seems better

Code: Select all

SPINSTEP_DIVISOR = 10.0
WEIGHT_LINEAR_MOVE = 0.35
WEIGHT_REFPOINT_ROTATION = 2.6
kbwbe
Veteran
Posts: 1052
Joined: Tue Apr 10, 2018 3:12 pm
Location: Germany, near Köln (Cologne)

Re: Another approach to assembly solver (A2plus)

Post by kbwbe »

Turro75 wrote: Tue Sep 11, 2018 9:50 am in my fork You can see the turro-dof4 branch which is the first rough implementation.
I left two button solver the first is merge+master and the second is master only
I put a toggle to animate or no the constraining just to quickly see how both work without changing the code
I put also a stop button which stops solver if too slow or so
thank you @Turro75,
i will test and try to move your work to devel branch.
KBWBE

https://github.com/kbwbe/A2plus
latest release: v0.4.56, installable via FreeCAD's addon manager
Tutorial: gripper assembly https://www.youtube.com/watch?v=QMxcQ5tssWk
Documentation: https://www.freecadweb.org/wiki/A2plus_Workbench
User avatar
manuelkrause
Posts: 442
Joined: Thu Jul 05, 2018 7:16 pm

Re: Another approach to assembly solver (A2plus)

Post by manuelkrause »

@kbwbe:
Atm I was at attempting to cross-check an actual assembly2 version, but don't get the WB loaded.
Any hints for that?
Or do you have a working assembly2 version to open your files, to send over zip/PM or such?

TIA
kbwbe
Veteran
Posts: 1052
Joined: Tue Apr 10, 2018 3:12 pm
Location: Germany, near Köln (Cologne)

Re: Another approach to assembly solver (A2plus)

Post by kbwbe »

manuelkrause wrote: Tue Sep 11, 2018 11:35 am @kbwbe:
Atm I was at attempting to cross-check an actual assembly2 version, but don't get the WB loaded.
Any hints for that?
Or do you have a working assembly2 version to open your files, to send over zip/PM or such?

TIA
There is a branch "updates-2018-07" within Hamish's repo. This is my last state. You can try to check it out and try. Recent masterbranch changes are not from me.
KBWBE

https://github.com/kbwbe/A2plus
latest release: v0.4.56, installable via FreeCAD's addon manager
Tutorial: gripper assembly https://www.youtube.com/watch?v=QMxcQ5tssWk
Documentation: https://www.freecadweb.org/wiki/A2plus_Workbench
User avatar
manuelkrause
Posts: 442
Joined: Thu Jul 05, 2018 7:16 pm

Re: Another approach to assembly solver (A2plus)

Post by manuelkrause »

kbwbe wrote: Tue Sep 11, 2018 11:59 am
manuelkrause wrote: Tue Sep 11, 2018 11:35 am @kbwbe:
Atm I was at attempting to cross-check an actual assembly2 version, but don't get the WB loaded.
Any hints for that?
Or do you have a working assembly2 version to open your files, to send over zip/PM or such?

TIA
There is a branch "updates-2018-07" within Hamish's repo. This is my last state. You can try to check it out and try. Recent masterbranch changes are not from me.
Thanks for naming it!
In fact the newer ones didn't work at all on here with FC 0.17.

assembly2 WB not able to initialize.
Last edited by manuelkrause on Tue Sep 11, 2018 1:47 pm, edited 1 time in total.
Koemi
Posts: 150
Joined: Thu Dec 28, 2017 11:13 am
Location: The Netherlands

Re: Another approach to assembly solver (A2plus)

Post by Koemi »

Messing around in the 'new world' of FC V0.17 and A2Plus ;)

I am a bit puzzled... Now there seems to be a new A2Plus part container ('the yellow stairs' I should call it I guess), but... why?

I can produce parts with the Partdesign WB; I can save them and I can put them inside an assembly. And now I can put them in this new Part container... :?:

I discovered also that 'Show connected elements' does not show anything when parts are placed in this part container.


Another question; I hate it when earlier created designs (parts and assemblies) get messed up. This kind of danger always rises when software evolves. What does 'Convert Part to A2Plus form' do exactly? At the moment I am only using copies of earlier designs (just to be safe) but working with dozens of copies... well... not that ideal of course.


OS: Windows 10
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.17.13528 (Git)
Build type: Release
Branch: releases/FreeCAD-0-17
Hash: 5c3f7bf8ec51e2c7187789f7edba71a7aa82a88b
Python version: 2.7.14
Qt version: 4.8.7
Coin version: 4.0.0a
OCC version: 7.2.0
Locale: Dutch/Belgium (nl_BE)
User avatar
manuelkrause
Posts: 442
Joined: Thu Jul 05, 2018 7:16 pm

Re: Another approach to assembly solver (A2plus)

Post by manuelkrause »

Koemi wrote: Tue Sep 11, 2018 1:46 pm Messing around in the 'new world' of FC V0.17 and A2Plus ;)

I am a bit puzzled... Now there seems to be a new A2Plus part container ('the yellow stairs' I should call it I guess), but... why?

I can produce parts with the Partdesign WB; I can save them and I can put them inside an assembly. And now I can put them in this new Part container... :?:

I discovered also that 'Show connected elements' does not show anything when parts are placed in this part container.


Another question; I hate it when earlier created designs (parts and assemblies) get messed up. This kind of danger always rises when software evolves. What does 'Convert Part to A2Plus form' do exactly? At the moment I am only using copies of earlier designs (just to be safe) but working with dozens of copies... well... not that ideal of course.


OS: Windows 10
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.17.13528 (Git)
Build type: Release
Branch: releases/FreeCAD-0-17
Hash: 5c3f7bf8ec51e2c7187789f7edba71a7aa82a88b
Python version: 2.7.14
Qt version: 4.8.7
Coin version: 4.0.0a
OCC version: 7.2.0
Locale: Dutch/Belgium (nl_BE)
You don't need any part to be converted to A2plus at all.
Just import parts via the A2plus WB into a new file as an assembly file and constrain them.

Manuel

P.S.: EDIT
Please report back if it's not workting!
/EDIT
Post Reply