Search Unity

  1. Unity Asset Manager is now available in public beta. Try it out now and join the conversation here in the forums.
    Dismiss Notice

Robot floating away, while continually assigning transform coords to its base

Discussion in 'Robotics' started by lorenz_gunreben, Nov 23, 2021.

  1. lorenz_gunreben

    lorenz_gunreben

    Joined:
    May 17, 2021
    Posts:
    6
    For my project I got tracking cameras, which track the base link of my kuka iiwa robotic arm.
    Assigning the transmitted coords to the robot GameObject causes the robot to float and rotate away, instead of staying at its current location.
    This doesn't happen, if I'm using the immovable obj of the robot instead of the urdf imported Articulation Body.
    Haven't worked with Articulation Bodies before, but presumably it happens because of the attatched urdf/kinematic scripts.

    Is there an easy way to prevent the robot from floating away??
     
  2. lorenz_gunreben

    lorenz_gunreben

    Joined:
    May 17, 2021
    Posts:
    6
    Ok, so actually the problem isn't related to the transmitting of coordinates, more to the Articulation Body itself:

    Setting the base-link Articulation Body to immovable prevents me to set any coordinates in playmode. But as soon as I deactivate it the robot flies away, even without setting/updating any transform coords.

    Is this due to the old URDF Importer (0.1.2) I'm using or should is there anything I missed out using Articulation Bodies?
     
  3. lorenz_gunreben

    lorenz_gunreben

    Joined:
    May 17, 2021
    Posts:
    6
    mrpropellers likes this.
  4. peifeng-unity

    peifeng-unity

    Unity Technologies

    Joined:
    Mar 30, 2020
    Posts:
    6
    Yeah, the transform of articulation bodies is self-managed by the physics engine, so it cannot be manually modified. The `TeleportRoot()` and `SetJointPosition()` would be the the methods provided to update transforms.