asm4 Links

In diesem Forum Fragen und Diskussionen in Deutsch
Forum rules
Foren-Regeln und hilfreiche Informationen

WICHTIG: Bitte zuerst lesen, bevor Sie posten
Post Reply
smktec
Posts: 151
Joined: Thu Mar 05, 2020 5:37 pm

asm4 Links

Post by smktec »

Hi,
ich versuche mehrere Elemente und Baugruppen in Assembly 4 zu positionieren und bin den Videos gefolgt, die ich im Internet gefunden habe. Nach etwas Übung hat es ganz gut funktioniert.
Allerdings kann ich nicht auf Elemente in einer Baugruppe zugreifen. In dem beigefügten Bild ist die Anwendung skizziert:
Links ist eine Baugruppe aus 4 bodies dargestellt, die unter Parts mit Part Design erstellt wurden. Rechts ist die Baugruppe in Assembly darstellt und über LC_12 mit dem grauen Block (ist bereits in Assembly) verbunden. Das funktioniert, da LC_12 zu der Baugruppe Servo LDX 218 gehört aber auf dem Halter (gelb) positioniert ist. Nun wollte ich in ähnlicher Weise den linken Halter (blau) zentrisch über dem Motorlager (Achse) positionieren und später per Programm drehen. Allerdings werden in Assembly die beiden entsprechenden Koordinatensysteme nicht angezeit. Die Funktion "move/attach a part" ist unter der Part Gruppe nicht verfügbar. Als Ausweg könnte ich mir vorstellen alle Teile einzeln zu lassen, was allerdings etwas unübersichtlicher wäre.
Kennt jemand dafür eine Lösung?
asm4.png
asm4.png (227.69 KiB) Viewed 634 times
Vielen Dank
User avatar
Dirk.B
Veteran
Posts: 1362
Joined: Sat Feb 02, 2019 11:47 am
Location: Deutschland/Saarland

Re: asm4 Links

Post by Dirk.B »

Hallo

Kennst du die Seite Von https://www.youtube.com/channel/UCpdgfE ... g9Q/videos

Oder diese Seiten
https://forum.freecadweb.org/viewtopic.php?t=53676
https://forum.freecadweb.org/viewtopic.php?t=53676
https://forum.freecadweb.org/viewtopic.php?t=53676

Tut mir leid das ich mich so kurz fasse aber habe leider erst so in 2 Wochen etwas mehr Zeit.

Gruß Dirk
smktec
Posts: 151
Joined: Thu Mar 05, 2020 5:37 pm

Re: asm4 Links

Post by smktec »

Vielen Dank für die Hinweise.
ich habe einige Videos von Mads gesehen. Die waren sehr hilfreich. Die anderen links kannte ich noch nicht.

Ich glaube ich muss konzeptionell anders vorgehen. D.h. Baugruppen, die unter Teile erstellt werden, sollten nur Bodies enthalten, die nicht gegeneinander bewegt werden sollen. Diese Baugruppen können dann unter Assembly über die LCS zusammengebaut werden. Ich werde das mal probieren.
Sind eigentlich die verschiedenen Assembly Workbenches miteinander kompatibel, so dass man die Funktionen von z.B. assembly 3 (Ausrichtung von Elementen) in Assembly 4 verwenden kann, oder ist da Vorsicht geboten?
smktec
Posts: 151
Joined: Thu Mar 05, 2020 5:37 pm

Re: asm4 Links

Post by smktec »

super videos.
Das Video "Select Assembly WB freecad" ist eine wunderbare schnelle Einführung, in der auch die Assembly WB 2, 3 und 4 verglichen werden. Meine letzte Frage über die Wahl hat sich damit erledigt.
smktec
Posts: 151
Joined: Thu Mar 05, 2020 5:37 pm

Re: asm4 Links

Post by smktec »

ich habe noch ein paar Versuche durchgeführt und festgestellt, dass das LCS in der Baugruppe nur an der richtigen Stelle bleibt, wenn das LCS auf dem 0-Punkt des Bodies liegt, der bei der ersten Sketch festgelegt wird. Man kann das leicht sehen, wenn man den Body in der Baugruppe verschiebt.
Image
Image
Im ersten Bild liegt der Ursprung auf dem globalen Koordinatensystem. Legt man das LCS_1 auf die Ecke, dann bleibt es an der Stelle und in der Baugruppe kann es zur Verknüpfung genutzt werden. Verschiebt man den Sketch von Pad und bildet wieder ein KS auf der gleichen Ecke, liegt das neue KS (LCS_3) auf der gleichen Stelle, wie vor der Verschiebung (der Versatz wird vom Programm nicht erkannt). Das heist man muss darauf achten, dass der 1. Sketch im Body nicht verschoben wird, oder später manuell am LCS_3 den Versatz ausgleichen.
Attachments
LCS 01.jpg
LCS 01.jpg (176.98 KiB) Viewed 492 times
LCS 02.jpg
LCS 02.jpg (165.89 KiB) Viewed 492 times
User avatar
Dirk.B
Veteran
Posts: 1362
Joined: Sat Feb 02, 2019 11:47 am
Location: Deutschland/Saarland

Re: asm4 Links

Post by Dirk.B »

Hallo

Du kannst das eigendlich so sehen das du in der Parts mehrere Körper in Part Bausteinen bereitstellst.
Hier vergiebst du über die LCS Bezugspunkte an deinen Bauteilen.

Wenn du sie später in den Assembly Baugruppe übergibst kannst du diese dazu nutzen um Bedingungen mit anderen LCS zu erzeugen.
Die können z.B an ein Sketch mit LCS vergeben werden.

Was man hier schön sehen kann https://www.youtube.com/watch?v=UiRIWApNGa8&t=954s

Gruß Dirk
smktec
Posts: 151
Joined: Thu Mar 05, 2020 5:37 pm

Re: asm4 Links

Post by smktec »

hallo,
das Video erst sehr anschaulich und die Lösung sehr elegant, da offensichtlich durch die Verwendung von Sketch zur Beschreibung der Bewegung an die die Baugruppen angehängt werden, Baugruppen und Bewegung voneinander getrennt bearbeitet werden. Man muss sich da ein bischen reindenken, aber ich glaube, dass die Probleme, die bei mir aufgetreten sind sehr elegant vermieden werden.
smktec
Posts: 151
Joined: Thu Mar 05, 2020 5:37 pm

Re: asm4 Links

Post by smktec »

Hi
ich hatte immer noch das Problem, dass bei geschachtelten Baugruppen LCS in tieferliegenden Baugruppen beim verlinken in das Model nicht angezeigt werden. Wählt man die oberste Baugruppe zum Erstellen des LCS an, aber einen Punkt mit Map Mode weiter innerhalb der Baugruppen, dann wird das LCS beim Verlinken zwar angezeigt liegt aber an der falschen Stelle.
Das Problem liegt darin, dass im LCS lediglich das lokale Placement verwendet wird, aber die Transformationen der einzelnen Baugruppen bzw. Bodies nicht berücksichtigt werden. Mit dem beigefügten macro funktioniert das.

Code: Select all

# 1. Body wählen zu dem dem der Punkt für das LCS gehört, dann Koordinatensystem starten 
# 2. Punkt oder Kontur für das LCS anwählen mit ok beenden
# 2. Baugruppe für das erzeugte LCS anwählen (LCS und Baugruppe müsssen angewählt sein)
# 3. Macro LCS starten
# 4. das LCS ist in der Baugruppe mit den richtigen Koordinaten und beim Verlinken in das Model verfügbar. das ursprüngliche Koordinatensystem ist gelöscht

S=FreeCADGui.Selection.getSelection()
P0=S[0].getGlobalPlacement() # globale Koordinaten vom LCS
P1=S[1].Placement	# Placement der Baugruppe
P1invers=S[1].Placement.inverse()
Gui.Selection.clearSelection()
Gui.Selection.addSelection(S[1])#Baugruppe anwählen
Gui.runCommand('Asm4_createDatum',0) #Koordinatensystem erzeugen
SF=FreeCADGui.Selection.getSelection()[0]  # Koordinatensystem auswählen
SF.Placement=P1invers.multiply(P0)
Label = S[0].Label
App.ActiveDocument.removeObject(Label)
App.ActiveDocument.recompute()
Es wird das LCS erzeugt, dann das globale Placement ermittelt und die Transformation der gewünschten Baugruppe invertiert angwendet.
Hier die dazugehörigen Bilder:
Image
Attachments
Bild 1.jpg
Bild 1.jpg (230.56 KiB) Viewed 303 times
Bild 2.jpg
Bild 2.jpg (227.44 KiB) Viewed 303 times
Bild 3.jpg
Bild 3.jpg (222.94 KiB) Viewed 303 times
Post Reply