I'm trying to realize a Vertical Two-Arm Planar Manipulator (Double Pendulum like) using Simscape Multibody. I'm kinda newbie in Robotics field and I'm not even sure if I did well the following creation. I realized this Manipulator using 2 Spherical Joints (Actuation: Torque Provided by input, abilitating Velocity Sensors) e 2 arms (1 meter-long Brick Blocks). I don't exactly know how to realize the Computed Torque Control: I know the theory behind it but I couldn't find any examples on how to implement it in Simulink through Matlab Functions, especially in a case like this. How can I realize a PD controller from a System created on Simscape Multibody?
Asked
Active
Viewed 308 times
1
-
Should the motion be in 3D? If not, then you should replace the spherical joints for revolute joints. You can realize a PD controller by using the position and velocity sensing in the joints block. For example: `torque = Pgain *(angle - desired angle) - Dgain*velocity` – Nathan Jan 21 '21 at 16:43
-
I tried to use revolute joints but in the simulation the arms do not move – Emanueleway Jan 21 '21 at 17:18
-
You need to give more information. What did you exactly do, what research have you already done etc. Also, when using the revolute joints, did you check whether the axis of rotation is defined as desired? The revolute joint rotates around its local `z` axis, so you have to rotate the local axes with `rigid transform` block such that it matches what you desire – Nathan Jan 22 '21 at 09:02
-
I have to realize a Manipulator on the Vertical Plane, like the double pendulum. I'm not familiar in this field (I'd like that). I have to build this Robot in Simscape Multibody and then realizing its control through MATLAB functions. The material they gave me was all about the computed torque and its control and I learned that I need a PD Regulator, I want to realize it in Simulink taking my Simscape model as a Subsystem. About the revolute joints I didn't know I needed the rigid transform block because on a simulation with the horizontal one I didn't use it. – Emanueleway Jan 22 '21 at 11:21
-
I would like to know how to obtain, for example, D and P gain from this model. Do I have to use Ackerman (with the linear model) or there's a way to obtain them automatically from the SM Model? – Emanueleway Jan 22 '21 at 12:43
-
For Computed Torque control you have modeled the robot, and calculated what torque you have to put on each joint. Realizing this torque value can be done using a PD controller, as said previously. There are multiple ways to obtain the values for the P and D gain. A common method is trial-and-error in which the values are tweaked such that an acceptable performance is reached. Optimization is another method. The Ackermann method is different, since it is based on the pole-placement principle. – Nathan Jan 23 '21 at 11:10