Dynamics??

질문

• Hello:

Is there a way to create a robot entity in the simulator to simulate the dynamics? Did anybody try to do it? I think the physics engine provides some function.such as:Newton's Three Laws
of Motion .
But I don't know whether there is such functions in Robotics. As we all know if we want to simulate the kinematics,we can use many other software.

thanks for your time.

2008년 10월 23일 목요일 오전 11:40

답변

• Thanks for the feedback. We'll consider adding services that are based on forces / torques for articulated entities in the future.

In the mean time, there are workarounds. Suppose you want to apply X torque to a joint. You can compute the total torques on that joint, and then from the formula, T = I alpha, alpha = I^(-1) T. If you store alpha (angular acceleration), you can compute the affect on the joint's velocity on a per frame basis. Then pass this velocity change to our system, and you will have a torque based system.

2008년 11월 4일 화요일 오후 7:32

모든 응답

•

I'm not completely sure if I understand your question. By default, all of the entities in the simulation are dynamic, physically simulated entities. You can use kinematic entities if you set their flag to kinematic.
2008년 10월 23일 목요일 오후 7:39
• Michael:

sorry for my English.

Thanks for your reply.I can do as you say,which is not my emphasis.My point is that can Robotics provide some dynamics function? such as Newton's second law of motion:F = m * a or M=J*P. As you know,there are so many laws in the dynamics. we can't say that we define every function ourselves.as we can define the speed to move the robot.But we want to simulate the following scene ,take articulated robot for example: we just set the input of force on one joint, and we want to caculate the acceleration of the gripper.I hope I can get some help from robotics.

thanks for your time.

2008년 10월 24일 금요일 오전 1:13
• We use the Ageia / NVIDIA PhysX engine for physical simulation. They expose both force-based and impulse-based models, but currently we only expose the force based one, F = m * a.

2008년 10월 27일 월요일 오전 2:55
• Thanks Michael,you are so warmhearted.

Can you do me another favor , can you give me an force-based example . Do we have this kind of tutorial?  I can set speed and position to move a robot , but I don't have an idea how to drive a motor by force.

By the way , can we add the Ageia physx DLL into our C# project? As you know ,the physx Sdk uses C language to write its project.Hope for your reply.

Thanks for your time!

2008년 10월 27일 월요일 오전 4:42
• Hi,

I'm interrested in simulating robotdynamics, too.

I already have tried to drive a motor by force, posted here:

http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=4008907&SiteID=1

Perhaps someone can help us understand the dynamics and how we can use them.

Hoping for reply, too.

Thanks for your time.

2008년 10월 28일 화요일 오후 3:17
• The wheel entities actually are their own separate case. Our entities directly set the velocity of the wheel axle speed (in m/s), so they are not driven using F = ma. If you don't set the OverrideAxleSpeed flag then then wheels are driven by applying torques (T = I alpha).

I think you'd have to write a simulated differential drive motor that was driven by applying torques instead of specifying velocities to accomplish what you want. It is all possible, but we don't have a sample entity for a torque driven motor.

2008년 10월 29일 수요일 오후 5:26
• Michael:

You are so enthusiastic.Thanks.

At first I want to say I love MRDS, it is a perfect software ,maybe in the life of babyhood,thanks for your good work.

For I want to simulate an articulated entity.I want to simulate the dynamics.So I want to apply force to the entity.I am reading Ageia document these days.And I know that the joint doesn't have force . But I fount that force (3-vector) and acceleration is included in Rigid Body Properties in ageia,which can be used on robot arms .But I can't find force in robotics,we must define it ourselves.The Microsoft Robotics Studio simulation tool includes AGEIA™ PhysX™ Technology from AGEIA Technologies Inc.But I find many characteristic in AGEIA are not included in ROBOTICS.The Ageia SDk is written in VC language.I don't think transfer the VC functions into C#  is a difficult thing . So if I can do this task (I will try),why not the professional c# programmers in robotics team? Is there any other obstacles.

Thanks for your time.

2008년 10월 30일 목요일 오전 2:05
• We expose the common functionality we think most people and our sample services use. Eg, for simulating a robotic arm, we have a LBR3Arm service and the http://www.promrds.com/ website has a Lynx 6 arm.

It might be easiest to mimic in some way the sample services such as the Lynx 6 or LBR3Arm.

2008년 11월 1일 토요일 오후 7:32
• Dear Michael:

Thanks for your advice.

I have bought the book Promrds,and I have played the Lynx 6 arm.I am sure no force  to the arm in that example.For I have put forward so many times.I want to make it clearly.

(1)  What I want : I want to apply force to arm to simulate dynamics.

(2)  Problem:       I am not willing to  build  the force and torque myself.

(3)  Physx :         I think Physx SDK can help me.But I can't project the actors into the simulation scene of Robotics.The reason is that Robotics uses XNA to render.

(4)  XNA  : Many guys want to combine XNA with Physx.The Link is:

(5)  Help me : The editor in the below said that Robotics team

had a wrapper to combine  Physx with XNA .So can I get the wrapper.

It is not a matter if  I need to pay for the license .

(6)  The next version of MRDS:  I don't know whether there will be force in the future version  of MRDS.My meaning is NOT just gravity.

Thanks for your time.

2008년 11월 4일 화요일 오후 2:13
• Thanks for the feedback. We'll consider adding services that are based on forces / torques for articulated entities in the future.

In the mean time, there are workarounds. Suppose you want to apply X torque to a joint. You can compute the total torques on that joint, and then from the formula, T = I alpha, alpha = I^(-1) T. If you store alpha (angular acceleration), you can compute the affect on the joint's velocity on a per frame basis. Then pass this velocity change to our system, and you will have a torque based system.

2008년 11월 4일 화요일 오후 7:32
• Dear Michael:

Thanks for your suggestion.It is helpful.

2008년 11월 5일 수요일 오전 12:39