How I can design a Inverse dynamic controller for robot manipulator? What is the difference between a computed torque controller and a inverse dynamic controller?
Both are same. I think you meant inverse kinematics control and computed torque control. (you may find slight differences between them in some books, but they are conceptually same) usually computed torque controller (CTC) is a closed loop controller, where the output is given to PD (Proportional, Differential )block, therefore so often it is termed as PD-CTC controller. computed torque controller is termed "computed" because it calculates the input from the mathematical model of the system. (which needs inverse kinematics and basic physics of modelling)
Let me come to the inverse kinematics controller. Usually for a pre-planned motion of robot arm, all the joint trajectories are needed to be predefined for the multi joint robot, to maintain the given special path. if you calculate the angles continuously(for the geometric path for all joint angles) and estimate the control input for all joints from the mathematical model, it is inverse kinematics control, also it is computed torque controller, since it is "computed" from mathematical model. usually CTC is used as PD-CTC.
I think you already know the problems of this type of control. due to modelling complexity of different part (inertia, dimension, alignment, mathematical assumption) it is difficult to do actual mathematical model for complex assembly. more importantly Disturbance, payload change also cause inaccuracy of the control input. But PD-CTC is good if the model is well known and simple and no disturbance is present.
These two concepts are the same. We also call them cancelation controllers. Basically, they cancel the nonlinearity in the system. This kind of design is intimately related to the concept of feedback linearization. For a nonlinear system, there is geometric conditions that one can check for the system to be able to be transformed into a linear system after nonlinear state feedback and coordinate transformation. This allows linear control design methods to be applied to nonlinear systems. It also allows more advanced control technique, like locally optimal and globally inverse optimal controller design, to be applied. For geometric conditions for when a given nonlinear system can be feedback linearized, check the book by Isidori. For optimal control designs for feedback linearizable systems, check our papers.
Article Nonlinear control systems / Alberto Isidori
Conference Paper Backstepping design with local optimality matching
Article Locally optimal and robust backstepping design