Home Troubleshooting

Discussion

Left ArrowBack to discussions page
CobotNinjaCobotNinja Posts: 4 Apprentice
Hello,

We have a UR3e and an UR10e both running 5.10 and are seeing this effect from both. We are manually entering a RPY value and having the cobot move to the correct position. For example, we enter RPY = [0,95,45] and the cobot moves to the correct orientation. However, when we go back to the RPY interface, the RYP shown does not match what we entered. When entering the original RPY again [0,95,45], the cobot does not move since it is already in this position. But again, going back to the RPY display, the cobot has a different value to the RPY that does not match what was entered. These new values are always different each time we try this process. 

Does anyone know why the RPY value is displayed differently that what was entered? Is it possible there are many different RPY solutions and the display is just showing one of the calculated solutions?

Best Answer

  • matthewd92matthewd92 Founding Pro, Tactile Sensor Beta Testers Posts: 1,267 Handy
    Answer ✓
    Yes, there is a recent post on the UR forum regarding this.  There are two solutions to the pose, you are seeing the other solution.  We see the same phenomenon when using a rotation vector.  What's really confusing is when using RTDE it reports one value on the stream and the display shows the other value.  It's with how they do scaling on the data so that it appears more stable than what is being streamed. 

    Here is the link to the UR forum post https://forum.universal-robots.com/t/state-actual-tcp-pose-results-in-wrong-pose/14498/7

Comments

  • CobotNinjaCobotNinja Posts: 4 Apprentice
    Thanks for the reply and pointing us to this info. This being said, if you were to make 2 cobots communicate over modbus such that they were always collinear; would you do this getting the RPY values to maintain the correct vector? 

    Our setup is 2 cobots in different base orientations. One hanging from a ceiling and the other on the ground. We use a shared reference plane between the 2 and are able to keep them collinear using the RPY from the reference plane.
  • CobotNinjaCobotNinja Posts: 4 Apprentice
    One other thing to note, the RPY didn't just changed between the 2 distinct solutions. It changed every time we went back to the screen. We saw at least 3 different solutions.
  • matthewd92matthewd92 Founding Pro, Tactile Sensor Beta Testers Posts: 1,267 Handy
    How different were they?  I don’t use RPY so I’m not as familiar with it. 
  • CobotNinjaCobotNinja Posts: 4 Apprentice
    Very different. Enough to make us scratch our heads really hard trying to understand what was going on there. One thing to note is that the cobot was still in the correct orientation. It would just keep representing the RPY = [0,95,45] in a different set of numbers after we entered them in and moved the cobot to the orientation.
  • matthewd92matthewd92 Founding Pro, Tactile Sensor Beta Testers Posts: 1,267 Handy
    One thing to also remember is that the values being displayed are scaled, the raw data is not scaled and so it would be interesting to see what value it has. You could have a program that simply puts the value into a variable when you press play and then halts the robot. See if the value that the function returns is what you are entering. The value you see on the pendant is not necessarily the value that would be returned from a function call as that would be unscaled data in the return of the function. 
  • matthewd92matthewd92 Founding Pro, Tactile Sensor Beta Testers Posts: 1,267 Handy
    What are some of the values you are seeing after you enter 0, 95, 45?
Sign In or Register to comment.
Left ArrowBack to discussions page