From: Feng X. <hen...@ma...> - 2008-05-18 14:00:57
|
Hey, About the motors, I think setting them as correct as described in the document is not necessary. Besides, the motors in the leg has stronger force compared to that in the arm. But it is hard to represent it via setting dParamMaxForce because ODE is taking this parameter as a reference, not strictly accuracy according to my experiments. I logged the feedback of body1 and body2, and the torque added to body1 and body2 is larger than the value set via dParamMaxForce. This is particularly strange. About the universaljoint, here is my reasons that I abandon the universaljoint that time: 1. It is not as good as hingejoint in the joint limit aspect. 2. The two axises of universaljoint has orders. Which axis goes first depends on the parameter sequence passed to dJoitnAttach. It is not as clearly as two hingejoint. Anyway, I'll try to test universal joint since universal joint is used in soccerbot now. Best Regards, Feng Xue 2008-05-18 Sent By: Sander van Dijk Sent At: 2008-05-18 21:16:43 Sent To: Feng Xue CC To: Joschka Boedecker; Yuan Xu; simspark-devel Topic: Re: Re: [simspark-devel] Simspark Todo Hey, 2008/5/18 Feng Xue <hen...@ma...>: I'm not familiar with the motor parameters described in NaoHardWareSpec.zip. So please check rsg/agent/nao/hingejoint.rsg, is the new joint speed limit reasonable? These look good (beware: I have not been able to actually test them yet, I just looked at the numbers :) ), though to be complete, why not set the correct max velocity on each joint as described in the documentation instead of using the maximum for each? Besides that, maybe setting these maximum velocities are enough for now, but we can also set the setMaxMotorForce. Since ODE tries to achieve the motor velocities as fast as possible, without reasonable torque values there can still be unnatural accelerations. As far as I can tell from ODE documentation you can use the stall/nominal torque in Nm directly from the documentation as arguments for setMaxMotorForce now our model's size is in actual meters. And, I think there is another thing todo now. The collision between the two thighs, and the collision between the torso and the lower arm. With joint angle limit, we also have some bug state. About the collisions, I think the disableInnerCollision parameter is a hack that works now, but we shouldn't need it. The problem is that the geometries/colliders in the bodyparts overlap in valid positions, because the primitive boxes and spheres don't match the more complex visuals. Also the double hip construction means two bodies at the same position.. why is chosen for this instead of a universal joint in the hip? It is possible in ODE to have mesh geometries. In theory it should be possible to use the mesh data in the .obj files to create this. Though for now it might be possible to try to use multiple smaller colliders and TransformColliders to more closely match the body parts. Sander |