How can i accurately sense the torque of a revolute joint whose input is position?

6 views (last 30 days)
I have imported a robot model onto simulink. The actuators used in the robot are dynamixels. I want the simulation to be as similar to the actual hardware as possible. For actuating the revolute joints in simscape, i have written a function that converts the "Ticks" (Dynamixel input) to angle in radians. I would like to know how i can measure the torque at a particular joint in the robot. Note: I have already tried sensing actuator torque directly and it outputs random values.
Follow up question: Do i need to add a 6 DOF joint to the whole robot and model contacts with the base of the robot and the floor to obtain proper results?

Answers (1)

Steve Miller
Steve Miller on 6 Jun 2021
Hi Prithvi,
If you configure your joints to take the motion as an input and to automatically calculate the required torque, you will get the result you are looking for. Here you can see an example of what the connections to the block should look like and the settings on a Revolute Joint.
> Do i need to add a 6 DOF joint to the whole robot and model contacts with the base of the robot and the floor to obtain proper results?
You can use the Spatial Contact Force block to model contact forces between the robot and the floor. You could also enable joint limits in a 6-DOF Joint block, but that would only apply contact forces to a point on the robot and the floor, not a solid.
--Steve

Products


Release

R2019b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!