Lab Session 5: Force Control¶
4.1. Introduction¶
In this lab, we will simulate the dynamic behavior of the RR manipulator under a force control scheme with an internal position loop. As in the previous lab sessions, the robot's dynamic behavior is linearized through the control law used in the previous labs:
Note that the effect of external forces is also included in the compensation.
Hence, the manipulator follows a purely kinematic behavior expressed by the law:
In this case, the goal is to implement the force control law illustrated in the following diagram, according to the expression:

Here, the input signal to the system is now the reference force instead of a desired position. In the expression above, \(\mathbf{M}_d\), \(\mathbf{K}_P\), and \(\mathbf{K}_D\) retain the same meaning as the matrices \(\mathbf{M}\), \(\mathbf{B}\), and \(\mathbf{K}\), respectively.
The variable \(\mathbf{x}_F\) constitutes the system input and is defined as follows:
where $ \mathbf{C}_F$ is a proportional constant, \(\mathbf{f}_d\) is the reference force, and \(\mathbf{f}_e\) is the force applied by the robot on the elastic surface. In this way, if an elastic surface model is considered, it holds that:
Under these considerations, the following is requested:
4.2. Simulate P control¶
Simulate in SIMULINK the dynamic behavior of the manipulator in contact with the environment using the equivalent model, assuming the contact position is
and the desired force is
when
and
Question
- Is the proposed controller correct? Why?
- What is happening in the Y axis? Why?
4.3. Simulate PI control¶
With the proposed control scheme, due to disturbances introduced by \(\mathbf{x}_r\), the reference force may not be reached in steady state. To address this, it is proposed to convert the constant \(\mathbf{C}_F\) into a proportional-integral action:
Implement this model in SIMULINK and simulate the dynamic behavior when
Question
- Does this produce any improvement in the controller? Why?
- Can you improve it more? How?