Cancel
Showing results for 
Search instead for 
Did you mean: 

Robot Motions in MCD of NX

Creator
Creator

I tried to model a robot motion in MCD, but failed miserably.

 

What I want to do:

The robot should move a part out of the box or for less complexity: the robot should move the green box from its left side onto the blue box at its right side.

 

What I tried:

1. Robot kinematics

  • I defined all components of the robot as rigid bodies and collision bodies (so that the robot does not run through itself)
  • I connected the “arms” via hinge joint and defined a fix joint between the table the robot stands on it and the robot itself
  • I defined some “prevent collision” between arms, that are directly connected to the next arm or the arm before, so that the robot can move but not run through itself

2. Movements

  • I defined a start (green box) and an endpoint (blue box) of the movement and connected them with a line
  • I assigned a point-on-curve-connection for the movement with the TCP of the robot as attachment and the created line as curve
  • I assigned an operation

The result:

 

(view in My Videos)

Yes, looks funny, but is not a well working solution…

 

So what did I wrong? What did I forgot?  Is there any tutorial to model such a use case or a modelled well working assembly to get a look at it?

 

I only can find some tutorials with position controls for every axis of the robot, but so I would have to calculate for every single axis the position… that can’t be the solution..

 

My example project is attached, maybe somebody can take a look at it.

 

Hopefully,

Svenja

4 REPLIES

Re: Robot Motions in MCD of NX

Siemens Legend Siemens Legend
Siemens Legend

Hi Svenja,

 

usually robotic tasks are beeing done in Technomatix Robot Expert, Process Simulate or NX CAM Robotics.

They have specific inverse kinematics (calculation of the driving axises from the tool center point -TCP movement)

 

But sometimes there is a usecase where you want to have a robot in MCD to validate your concept and/or to quickly see if your design is working or if you have to change your NX/MCD design.

 

NX MCD does not offer inverse calculation out of the box but there are partners like EDAG that have implemented this in MCD as well.

 

However there are some methods in MCD where you can simulate the movement of the robot without making a input to every axis:

Two popular methods for this task are the "Point on Curve Joint" and "Path Constraint".

In your case I would recommend using the "Path Constraint", since it will move and orient a rigid body at the same time (your other axises will still be free).

 

This is however not optimal (optimal would be a inverse kinematics calculation) but can be used to validate simple robot movements.

 

The rough workflow for the "Path Constraint Method" is the following:

  1. (optional but recommened) increase the mass and inertia of your "TCP Rigid Body" since every other joint will be dependant on this "Rigid Body".
  2. Create a "Path Constraint" on the "TCP Tigid Body" and create multiple "Frames" for the movement Path
  3. Create a Position Control to "drive" the path consrtaint (end positiion should be the last frame value).

Note: In this method you have to pay attention that the path in the path constraint is not intersecting with itself since this can cause singularity.

 

(view in My Videos)

 

I hope this helps.

 

Best regards,

Viktor

 

Re: Robot Motions in MCD of NX

Creator
Creator

Hi Viktor,

 

thanks a lot! That's exactly what I need! Smiley Happy

 

 

Re: Robot Motions in MCD of NX

Experimenter
Experimenter

Hi, I have a very similar problem. I tried to follow your solution, but for me it doesnt work proper.

Could you upload the fixed robot file for NX10 (I got no NX11), so i can open it myself and see what u did in detail?

Re: Robot Motions in MCD of NX

Experimenter
Experimenter

thank you for sample and some advice. which it is useful for my project. but i have trouble, when i used Point on Curve Joint and Path Constraint for control robot path  it can not lift a part. but i used sliding joint for lift a part is okay. why is can't ? and do you can advice for this.