Incompatibility between PTC Creo 9 and Simscape Multibody Link
5 views (last 30 days)
Show older comments
My use case is exporting with Simscape Multibody Link an assembly created with PTC Creo 9.0.0.0. The assembly is composed by two bars and a cylindrical joint connecting them.
The joint is defined as the guidelines suggested.
The .xml file generated by the plug-in, however, does not contain any information regarding constraints or joints.
I tried to mount the assembly by using a Mechanism with a Pin degree of freedom instead of constraints, but with no success.
I tested the process with Matlab R2017a, Simscape Multibody Link 5.0 and First generation Export.
Just like with Creo 7, I expected the following piece of .xml file describing the joint:
<SimpleJoint>
<name>"BAR--BAR-1"</name>
<nodeID>"59:-:60"</nodeID>
<status>""</status>
<base>
<JointSide>
<name>""</name>
<connection>
<Frame ref="3"></Frame>
</connection>
</JointSide>
</base>
<follower>
<JointSide>
<name>""</name>
<connection>
<Frame ref="4"></Frame>
</connection>
</JointSide>
</follower>
<primitives>
<Primitive>
<name>"prismatic"</name>
<nodeID>""</nodeID>
<referenceFrame>"WORLD"</referenceFrame>
<axis>0,0,1</axis>
</Primitive>
<Primitive>
<name>"revolute"</name>
<nodeID>""</nodeID>
<referenceFrame>"WORLD"</referenceFrame>
<axis>0,0,1</axis>
</Primitive>
</primitives>
</SimpleJoint>
Testing the process with Matlab R2022b and Simscape Multibody link 7.6 I expected the following piece of .xml describing the constraints equivalent to a joint:
<Constraints>
<Concentric name="Concentric_60_0">
<ConstraintGeometry geomType="cylinder">
<InstancePath>
<Uid>59</Uid>
</InstancePath>
<Position>0 0 0</Position>
<Axis>0 0 1</Axis>
</ConstraintGeometry>
<ConstraintGeometry geomType="cylinder">
<InstancePath>
<Uid>60</Uid>
</InstancePath>
<Position>0 0 0</Position>
<Axis>0 0 1</Axis>
</ConstraintGeometry>
</Concentric>
<Coincident name="Coincident_60_1">
<ConstraintGeometry geomType="plane">
<Position>0 0 0</Position>
<Axis>0 0 1</Axis>
</ConstraintGeometry>
<ConstraintGeometry geomType="plane">
<InstancePath>
<Uid>60</Uid>
</InstancePath>
<Position>0 0 0</Position>
<Axis>0 0 1</Axis>
</ConstraintGeometry>
</Coincident>
</Constraints>
However, with Creo 9.0.0.0, any version of Simscape multibody link is unable to create joints. Instead, what is created is the equivalent of 6DOF joints.
The resulting xml files have the following structure:
Multibody Link 5.0:
<SimpleJoint>
<name>"RootPart--BAR"</name>
<nodeID>"2BARS/RootPart:-:59"</nodeID>
<status>""</status>
<base>
<JointSide>
<name>""</name>
<connection>
<Frame ref="2"></Frame>
</connection>
</JointSide>
</base>
<follower>
<JointSide>
<name>""</name>
<connection>
<Frame ref="3"></Frame>
</connection>
</JointSide>
</follower>
<primitives>
<Primitive>
<name>"prismatic"</name>
<nodeID>""</nodeID>
<referenceFrame>"WORLD"</referenceFrame>
<axis>1,0,0</axis>
</Primitive>
<Primitive>
<name>"prismatic"</name>
<nodeID>""</nodeID>
<referenceFrame>"WORLD"</referenceFrame>
<axis>0,1,0</axis>
</Primitive>
<Primitive>
<name>"prismatic"</name>
<nodeID>""</nodeID>
<referenceFrame>"WORLD"</referenceFrame>
<axis>0,0,1</axis>
</Primitive>
<Primitive>
<name>"spherical"</name>
<nodeID>""</nodeID>
<referenceFrame>"WORLD"</referenceFrame>
<axis>0.57735,0.57735,0.57735</axis>
</Primitive>
</primitives>
</SimpleJoint>
The revolute joint information is completely absent and it is replaced with a spherical joint.
Multibody Link 7.6:
<Constraints>
</Constraints>
There is no information about the constraints at all.
Additionally, in both cases there are no references to either the .step or .stl files associated to the meshes.
The exporting process is successful with all combinations and no error is displayed.
I suspect that Simscape multibody link plug-in is not compatible with the most recent PTC Creo 9, due to API changes.
I'm attaching with this bug report the CAD part and assembly that I used for testing, and the output files (xml, stl, and slx).
0 Comments
Accepted Answer
More Answers (0)
See Also
Categories
Find more on Applications in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!