# Experimental and Numerical Study on the Semi-Closed Loop Control of a Planar Parallel Robot Manipulator

Authors: Yong-Lin Kuo; Tsu-Pin Lin; Chun Yu Wu
Journal: Mathematical Problems in Engineering
 (2014)

---

## Abstract

This paper implements the model predictive control to fulfill the position control of a 3-DOF 3-RRR planar parallel manipulator. The research work covers experimental and numerical studies. First, an experimental hardware-in-the-loop system to control the manipulator is constructed. The manipulator is driven by three DC motors, and each motor has an encoder to measure the rotating angles of the motors. The entire system is designed as a semiclosed-loop control system. The controller receives the encoder signals as inputs to produce signals driving the motors. Secondly, the motor parameters are obtained by system identification, and the controllers are designed based on these parameters. Finally, the numerical simulations are performed by incorporating the manipulator kinematics and the motor dynamics; the results are compared with those from the experiments. Both results show that they are in good agreement at steady state. There are two main contributions in this paper. One is the application of the model predictive control to the planar parallel manipulator, and the other one is to overcome the effects of the uncertainties of the DC motors and the performance of the position control due to the dynamic behavior of the manipulator.


---

## Body

## 1. Introduction

Parallel manipulators are essentially closed-loop kinematics chain mechanisms, and an end-effector is linked to the base of the manipulator by several independent kinematics chains [1]. The first parallel manipulator developed by Gough and Whitehall is a six-linear jack system for use as a universal tire-testing machine [2]. Later, a platform manipulator for use as an aircraft simulator was developed by Stewart [3]. After these two manipulators were presented, there are numerous parallel manipulators developed for various industrial applications, such as assembly, packaging, and machining operations. [4–6].A 3-DOF 3-RRR planar parallel manipulator is typical robot arm designed to manipulate precision positioning tasks. Gosselin and Angeles investigated the manipulator from a kinematic viewpoint and established four different design criteria to produce designs having optimum characteristics [7]. Yang et al. focused on the forward singularity analysis of the manipulator and proposed a simple geometric approach based on the concept of instantaneous center [8]. Arsenault and Boudreau presented the synthesis of the manipulator using a genetic algorithm [9]. Oetomo et al. presented the direct kinematic solution of the manipulators, where they are possible to decouple the polynomial further into two quadratic equations, describing the position and orientation of the end-effector, respectively [10]. Cha et al. presented the singularity avoidance of the manipulator using kinematic redundancy [11]. Arakelian and Smith discussed the development of the reactionless manipulators, which apply no reaction forces or moments to the mounting base during motion [12].In reviewing literature, there are numerous papers addressing the control of various types of robotic manipulators. However, a limited number of publications emphasize the control of the 3-DOF 3-RRR planar parallel manipulator. Noshadi et al. presented a method to control the manipulator using an active force control strategy [13]. The authors also implemented a two-level fuzzy tuning resolved acceleration control to the manipulators to demonstrate the stable response of the manipulator in performing trajectory tracking tasks in the absence of the disturbances [14]. Nasa and Bandyopadhyay presented a strategy, which enables the manipulator to trace a curve containing singularities by virtue of allowing its orientation to change [15]. Recently, hydraulic rotary actuators are applied to robots [16]. Liyanage et al. propose a selective compliant assembly robotic arm (SCARA) with two revolute joints for poultry deboning. The joint actuators of the arm are operated by servovalves, which control hydraulic fluid flow and direction, and a PID control is considered for controlling the position of each joint [17]. Hera et al. proposed the modeling and control of a hydraulic rotary actuator, where the experimental results of working with a particular sensing device for angular position as a complement to pressure sensing devices were presented [18]. Yao et al. presented an adaptive integral robust controller for a hydraulic rotary actuator, in which the intermediary virtual control law and the final control law are derived from an auxiliary error signal and its dynamics [19].Model predictive control is a relatively new control theory and has broadly industrial applications. This control theory can be regarded as an extended version of optimal control theory, since it optimizes relevant variables at the current and future time based on a finite-time horizon. Thus, the model predictive control has better robustness and is suitable for the manipulator with uncertainties. This paper applies the model predictive control to fulfill the position control of the 3-DOF 3-RRR planar parallel manipulator. The work covers both experimental and numerical studies. One uses a real-time embedded system as a controller and three DC motors with encoders to construct a hardware-in-the-loop experimental platform. One also designs a semiclosed-loop control system. The controller uses the signals of the encoders as feedback signals and produces signals to drive the motors. A graphic interface is also designed. This paper presents both numerical simulation and experimental results, and both results are compared to each other. This paper is organized as follows. Section 2 investigates the kinematics analysis of the manipulator. Section 3 introduces the model predictive control. Section 4 presents the experimental setup and testing. Section 5 illustrates the simulation and experimental results. Section 6 summarizes the significant conclusions.


## 2. Kinematics Analysis

A parallel manipulator is shown in Figure1(a). Three motors are mounted on points A
i
(
i
=
1,2
,
3
), and the motors drive the rigid links A
i
B
i  (
i
=
1,2
,
3
). There is a rigid end-effector, triangle C
1
C
2
C
3, which is driven through the rigid links B
i
C
i  (
i
=
1
,
2
,
3
).(a) A planar parallel manipulator, (b) one set of links in the manipulator.
(a)
(b)


### 2.1. Inverse Kinematics

The inverse kinematics implies that the positionP
(
x
,
y
) and the orientation θ of the end-effector are given, and the rotating angles θ
i of the motors need to be determined. Consider one set of links A
1
B
1
C
1 and define a coordinate system as shown in Figure 2. Based on this figure and the trigonometric formulas, one obtains [7]
(1)
θ
i
=
α
i
±
ψ
i
,
where
(2)
α
i
=
ta
n
-
1
(
c
i
y
-
a
i
y
c
i
x
-
a
i
x
)
(3)
ψ
i
=
cos
⁡
-
1
(
l
1
′
2
-
l
2
′
2
+
(
c
i
x
-
a
i
x
)
2
+
(
c
i
y
-
a
i
y
)
2
2
l
1
′
(
c
i
x
-
a
i
x
)
2
+
(
c
i
y
-
a
i
y
)
2
)
(4)
c
i
x
=
x
-
r
cos
⁡
ϕ
i
,
c
i
y
=
y
-
r
sin
ϕ
i
(5)
ϕ
1
=
θ
+
π
6
,
ϕ
2
=
θ
+
5
π
6
,
ϕ
3
=
θ
-
π
2
(6)
A
1
=
(
0,0
)
,
A
2
=
(
3
R
,
0
)
,
A
3
=
(
3
R
2
,
3
R
2
)
.
Note that the subscripts i are 1, 2, and 3, and R is the radius of the circle formed by the positions of the three motors.Figure 2
The workspace of the end-effector of the manipulator.Using (1) to (6), the rotating angles θ
i of the motors can be determined.


### 2.2. Direct Kinematics

For the direct kinematics, the rotating anglesθ
i of the motors are given, and the position P
(
x
,
y
) and the orientation θ of the end-effector need to be determined. Based on Figure 1(b), one has the following algebraic equations:
(7)
(
c
1
x
-
b
1
x
)
2
+
(
c
1
y
-
b
1
y
)
2
=
l
2
′
2
(8)
(
c
2
x
-
b
2
x
)
2
+
(
c
2
y
-
b
2
y
)
2
=
l
2
′′
2
(9)
(
c
3
x
-
b
3
x
)
2
+
(
c
3
y
-
b
3
y
)
2
=
l
2
′′′
2
,
where
(10)
(
c
2
x
,
c
2
y
)
=
(
c
1
x
+
3
r
cos
⁡
θ
,
c
1
y
+
3
r
sin
θ
)
(
c
3
x
,
c
3
y
)
=
(
c
1
x
+
3
r
cos
⁡
(
θ
+
π
3
)
,
c
1
y
+
3
r
sin
(
θ
+
π
3
)
)
.Substitute (10) into (8) and (9) and then subtract them by (7). One can obtain two equations in terms of two unknowns c
1
x and c
1
y, so these two variables can be obtained but in terms of angle θ. Substituting them into (8) leads to an equation in terms of angle θ, so the angle can be determined.


### 2.3. Workspace

To determine the workspace of the end-effector, (3) can be rewritten as
(11)
l
1
′
2
-
l
2
′
2
+
(
c
i
x
-
a
i
x
)
2
+
(
c
i
y
-
a
i
y
)
2
2
l
1
′
(
c
i
x
-
a
i
x
)
2
+
(
c
i
y
-
a
i
y
)
2
=
±
1
which can be further reduced as
(12)
(
x
-
x
i
)
2
+
(
y
-
y
i
)
2
=
(
l
1
±
l
2
)
2
,where(13)
x
1
=
r
cos
⁡
(
θ
+
π
6
)
,
y
1
=
r
sin
(
θ
+
π
6
)
x
2
=
D
-
r
cos
⁡
(
θ
-
π
6
)
,
y
2
=
-
r
sin
(
θ
-
π
6
)
x
3
=
D
2
+
r
sin
θ
,
y
3
=
3
D
2
-
r
cos
⁡
θ
.
Note that D is the distance between any two motors.Based on (12), the workspace of the end-effector can be obtained and is shown in Figure 2.


## 2.1. Inverse Kinematics

The inverse kinematics implies that the positionP
(
x
,
y
) and the orientation θ of the end-effector are given, and the rotating angles θ
i of the motors need to be determined. Consider one set of links A
1
B
1
C
1 and define a coordinate system as shown in Figure 2. Based on this figure and the trigonometric formulas, one obtains [7]
(1)
θ
i
=
α
i
±
ψ
i
,
where
(2)
α
i
=
ta
n
-
1
(
c
i
y
-
a
i
y
c
i
x
-
a
i
x
)
(3)
ψ
i
=
cos
⁡
-
1
(
l
1
′
2
-
l
2
′
2
+
(
c
i
x
-
a
i
x
)
2
+
(
c
i
y
-
a
i
y
)
2
2
l
1
′
(
c
i
x
-
a
i
x
)
2
+
(
c
i
y
-
a
i
y
)
2
)
(4)
c
i
x
=
x
-
r
cos
⁡
ϕ
i
,
c
i
y
=
y
-
r
sin
ϕ
i
(5)
ϕ
1
=
θ
+
π
6
,
ϕ
2
=
θ
+
5
π
6
,
ϕ
3
=
θ
-
π
2
(6)
A
1
=
(
0,0
)
,
A
2
=
(
3
R
,
0
)
,
A
3
=
(
3
R
2
,
3
R
2
)
.
Note that the subscripts i are 1, 2, and 3, and R is the radius of the circle formed by the positions of the three motors.Figure 2
The workspace of the end-effector of the manipulator.Using (1) to (6), the rotating angles θ
i of the motors can be determined.


## 2.2. Direct Kinematics

For the direct kinematics, the rotating anglesθ
i of the motors are given, and the position P
(
x
,
y
) and the orientation θ of the end-effector need to be determined. Based on Figure 1(b), one has the following algebraic equations:
(7)
(
c
1
x
-
b
1
x
)
2
+
(
c
1
y
-
b
1
y
)
2
=
l
2
′
2
(8)
(
c
2
x
-
b
2
x
)
2
+
(
c
2
y
-
b
2
y
)
2
=
l
2
′′
2
(9)
(
c
3
x
-
b
3
x
)
2
+
(
c
3
y
-
b
3
y
)
2
=
l
2
′′′
2
,
where
(10)
(
c
2
x
,
c
2
y
)
=
(
c
1
x
+
3
r
cos
⁡
θ
,
c
1
y
+
3
r
sin
θ
)
(
c
3
x
,
c
3
y
)
=
(
c
1
x
+
3
r
cos
⁡
(
θ
+
π
3
)
,
c
1
y
+
3
r
sin
(
θ
+
π
3
)
)
.Substitute (10) into (8) and (9) and then subtract them by (7). One can obtain two equations in terms of two unknowns c
1
x and c
1
y, so these two variables can be obtained but in terms of angle θ. Substituting them into (8) leads to an equation in terms of angle θ, so the angle can be determined.


## 2.3. Workspace

To determine the workspace of the end-effector, (3) can be rewritten as
(11)
l
1
′
2
-
l
2
′
2
+
(
c
i
x
-
a
i
x
)
2
+
(
c
i
y
-
a
i
y
)
2
2
l
1
′
(
c
i
x
-
a
i
x
)
2
+
(
c
i
y
-
a
i
y
)
2
=
±
1
which can be further reduced as
(12)
(
x
-
x
i
)
2
+
(
y
-
y
i
)
2
=
(
l
1
±
l
2
)
2
,where(13)
x
1
=
r
cos
⁡
(
θ
+
π
6
)
,
y
1
=
r
sin
(
θ
+
π
6
)
x
2
=
D
-
r
cos
⁡
(
θ
-
π
6
)
,
y
2
=
-
r
sin
(
θ
-
π
6
)
x
3
=
D
2
+
r
sin
θ
,
y
3
=
3
D
2
-
r
cos
⁡
θ
.
Note that D is the distance between any two motors.Based on (12), the workspace of the end-effector can be obtained and is shown in Figure 2.


## 3. Model Predictive Control

Consider an SISO discrete-time system as [20]
(14)
x
m
(
k
+
1
)
=
A
m
x
m
(
k
)
+
B
m
u
(
k
)
(15)
y
(
k
)
=
C
m
x
m
(
k
)
,
where u is an input, y is an output, and x
m is a vector in terms of n
1 state variables.Define new variables as(16)
Δ
x
m
(
k
)
=
x
m
(
k
)
-
x
m
(
k
-
1
)
Δ
u
(
k
)
=
u
(
k
)
-
u
(
k
-
1
)
.
Then, (14) can be rewritten as
(17)
Δ
x
m
(
k
+
1
)
=
A
m
Δ
x
m
(
k
)
+
B
m
u
(
k
)
.Define a new state variable as(18)
x
(
k
)
=
[
Δ
x
m
T
(
k
)
y
(
k
)
]
T
.Then, a new state-space model can be obtained as(19)
x
(
k
+
1
)
=
A
x
(
k
)
+
B
Δ
u
(
k
)
y
(
k
)
=
C
x
(
k
)
,
where
(20)
A
=
[
A
m
O
m
T
C
m
A
m
1
]
,
B
=
[
B
m
C
m
B
m
]
,
C
=
[
O
m
1
]
.
Note that O
m is a 1
×
n
1 zero vector.Define two vectors as(21)
Y
=
[
y
(
k
+
1
)
y
(
k
+
2
)
⋯
y
(
k
+
N
p
)
]
T
Δ
U
=
[
Δ
u
(
k
)
Δ
u
(
k
+
1
)
⋯
Δ
u
(
k
+
N
c
-
1
)
]
T
,
where N
p and N
c are called the prediction horizon and the control horizon, respectively.Using (19) to (21), one obtains
(22)
Y
=
F
x
(
k
)
+
Φ
Δ
U
,
where
(23)
F
=
[
C
A
C
A
2
⋮
C
A
N
p
]
Φ
=
[
C
B
0
…
0
C
A
B
C
B
⋯
0
⋮
⋮
⋱
⋮
C
A
N
p
-
1
B
C
A
N
p
-
2
B
⋯
C
A
N
p
-
N
c
B
]
.Define a vector as(24)
R
s
T
=
[
1
1
×
N
p
]
r
(
k
)
,
where [
1
1
×
N
p
] is a 1
×
N
p one matrix and r
(
k
) is a reference signal.Define a cost function as(25)
J
=
(
R
s
-
Y
)
T
(
R
s
-
Y
)
+
Δ
U
T
R
-
Δ
U
,
where R
-
=
r
w
I  (
r
w
>
0
) is a weighting matrix and I is a N
c
×
N
c identity matrix.Substituting (22) into (25) leads to
(26)
J
=
(
R
s
-
F
x
(
k
)
)
T
(
R
s
-
F
x
(
k
)
)
-
2
Δ
U
T
Φ
T
(
R
s
-
F
x
(
k
)
)
+
Δ
U
T
(
Φ
T
Φ
+
R
-
)
Δ
U
.To obtain the optimal control vectorΔ
U, the cost function is minimized by taking derivative with respect to Δ
U and then is set to zero, so one obtains
(27)
∂
J
∂
Δ
U
=
-
2
Φ
T
(
R
s
-
F
x
(
k
)
)
+
2
(
Φ
T
Φ
+
R
-
)
Δ
U
=
0
.Equation (27) reduces to the optimal control vector as
(28)
Δ
U
=
(
Φ
T
Φ
+
R
-
)
T
Φ
T
(
R
s
-
F
x
(
k
)
)
.Although the optimal control vectorΔ
U contains the controls Δ
u
(
k
), one only implements the first sample of the control sequence. This procedure is called the receding horizon control.


## 4. Experimental Setup and Validation

### 4.1. Experimental Setup

Based on the planar parallel manipulator shown in Figure1(a), an experimental manipulator is designed in Figure 3. The manipulator consists of six links, an end-effector, and three DC motors. The end-effector is connected by three branches, and each branch consists of two links. One of the links is driven by a DC brushed motors, and all motors are fixed and mounted under the platform (see Figure 3(b)). Each motor is also equipped by a two-channel Hall-effect encoder to measure the rotating angle of the motor. The connections between any two links are revolute joints. The positions of the three motors form an equilateral triangle. The shape of the end-effector is also an equilateral triangle. Both triangles can individually form two circles, and their radii are 26.5 and 6 cm. The length of each link is 18 cm.An experimental planar parallel manipulator.
(a)
Top view
(b)
Side viewOne intends to construct a semiclosed-loop control system for the experimental manipulator. The hardware-in-the-loop system is illustrated in Figure4. The rotating angles of the motors are measured and are treated as feedback signals. The control of each motor is dominated by an individual controller. The difference of a command signal and a feedback encoder signal is treated as an input of a controller. The controller outputs drive the three motors. In addition to the experimental manipulator, one utilizes some hardware components, including a personal computer, a real-time embedded systemCompactRIO, and a power supply. TheCompactRIO system consists of an embedded controller for communication and processing, a reconfigurable chassis housing the user-programmable FPGA, hot-swappable I/O modules, and graphicalLabVIEW software for rapid real-time, Windows, and FPGA programming, so the system includes a reconfigurable chassis (cRIO 9112), a real-time embedded controller (eRIO 9022), and three servomotor drivers (NI 9505). The system is illustrated in Figure 5.Figure 4
A real-time embedded control system.Figure 5
Hardware-in-the-loop control system of the manipulator.


### 4.2. Motor Drivers

The motor drivers include two parts. One generates PWM signals, and the other one decodes the signals of the encoders. The driver codes are included in the FPGA, which generates PWM signals. The signals are delivered and received by the module NI 9505. The oscillation frequency of the FPGA is 40 MHz, and it can generate a square wave with 20 kHz. For the PWM signals, the wave crest can be adjusted, so the percentage of the duration of the wave crest in a square wave decides the voltage applied to the motors. The PWM codes are also stored in the FPGA. After testing, the accuracy of the encoder is 0.367 degrees.


### 4.3. System Identification of Motors and Drivers

For the purpose of the controller design, it is necessary to know the mathematical model of the motors. Since one uses the PWM signals to drive the motors, the driver and the motor are represented as a transfer function. The block diagram is illustrated in Figure6. One uses 0–30% PWM signals as an input and the rotating angle of the motor as an output, and there are 15 sets of data collected to complete the system identification of the driver and the motor. One also appliesMATLAB system identification toolbox to process the model as
(29)
G
(
s
)
=
K
p
s
(
T
p
s
+
1
)
e
-
T
d
s
,
where K
p, T
p, and T
d are three parameters to be determined.Figure 6
The block diagram of a driver and a motor.After processing the system identification, the three parameters in (29) are determined and shown in Table 1.Table 1
Parameters of the model combining the driver and the motor.
K
p
T
p
T
d
Motor 1
11.088
0.0012679
0.011432
Motor 2
10.99
0.0013643
0.011084
Motor 3
9.768
0.001
0.010368


### 4.4. Kinematics Simulations

Based on the formulations in Section2, one uses the softwareLabVIEW to generate a graphic interface shown in Figure 7 for the kinematics analysis of the manipulator. For the purpose of application, the graphic interface is for the inverse kinematics. (A graphic interface of the direct kinematics is also generated for verification, but it is not shown in this paper.) One can input the position and the rotating angle of the end-effector through the graphic interface, and the rotating angle of the motors and the positions of points B
i and C
i can be calculated and shown. Besides, the configuration of the manipulator can be viewed on the graphic interface.Figure 7
The graphic interface of the inverse kinematics.


## 4.1. Experimental Setup

Based on the planar parallel manipulator shown in Figure1(a), an experimental manipulator is designed in Figure 3. The manipulator consists of six links, an end-effector, and three DC motors. The end-effector is connected by three branches, and each branch consists of two links. One of the links is driven by a DC brushed motors, and all motors are fixed and mounted under the platform (see Figure 3(b)). Each motor is also equipped by a two-channel Hall-effect encoder to measure the rotating angle of the motor. The connections between any two links are revolute joints. The positions of the three motors form an equilateral triangle. The shape of the end-effector is also an equilateral triangle. Both triangles can individually form two circles, and their radii are 26.5 and 6 cm. The length of each link is 18 cm.An experimental planar parallel manipulator.
(a)
Top view
(b)
Side viewOne intends to construct a semiclosed-loop control system for the experimental manipulator. The hardware-in-the-loop system is illustrated in Figure4. The rotating angles of the motors are measured and are treated as feedback signals. The control of each motor is dominated by an individual controller. The difference of a command signal and a feedback encoder signal is treated as an input of a controller. The controller outputs drive the three motors. In addition to the experimental manipulator, one utilizes some hardware components, including a personal computer, a real-time embedded systemCompactRIO, and a power supply. TheCompactRIO system consists of an embedded controller for communication and processing, a reconfigurable chassis housing the user-programmable FPGA, hot-swappable I/O modules, and graphicalLabVIEW software for rapid real-time, Windows, and FPGA programming, so the system includes a reconfigurable chassis (cRIO 9112), a real-time embedded controller (eRIO 9022), and three servomotor drivers (NI 9505). The system is illustrated in Figure 5.Figure 4
A real-time embedded control system.Figure 5
Hardware-in-the-loop control system of the manipulator.


## 4.2. Motor Drivers

The motor drivers include two parts. One generates PWM signals, and the other one decodes the signals of the encoders. The driver codes are included in the FPGA, which generates PWM signals. The signals are delivered and received by the module NI 9505. The oscillation frequency of the FPGA is 40 MHz, and it can generate a square wave with 20 kHz. For the PWM signals, the wave crest can be adjusted, so the percentage of the duration of the wave crest in a square wave decides the voltage applied to the motors. The PWM codes are also stored in the FPGA. After testing, the accuracy of the encoder is 0.367 degrees.


## 4.3. System Identification of Motors and Drivers

For the purpose of the controller design, it is necessary to know the mathematical model of the motors. Since one uses the PWM signals to drive the motors, the driver and the motor are represented as a transfer function. The block diagram is illustrated in Figure6. One uses 0–30% PWM signals as an input and the rotating angle of the motor as an output, and there are 15 sets of data collected to complete the system identification of the driver and the motor. One also appliesMATLAB system identification toolbox to process the model as
(29)
G
(
s
)
=
K
p
s
(
T
p
s
+
1
)
e
-
T
d
s
,
where K
p, T
p, and T
d are three parameters to be determined.Figure 6
The block diagram of a driver and a motor.After processing the system identification, the three parameters in (29) are determined and shown in Table 1.Table 1
Parameters of the model combining the driver and the motor.
K
p
T
p
T
d
Motor 1
11.088
0.0012679
0.011432
Motor 2
10.99
0.0013643
0.011084
Motor 3
9.768
0.001
0.010368


## 4.4. Kinematics Simulations

Based on the formulations in Section2, one uses the softwareLabVIEW to generate a graphic interface shown in Figure 7 for the kinematics analysis of the manipulator. For the purpose of application, the graphic interface is for the inverse kinematics. (A graphic interface of the direct kinematics is also generated for verification, but it is not shown in this paper.) One can input the position and the rotating angle of the end-effector through the graphic interface, and the rotating angle of the motors and the positions of points B
i and C
i can be calculated and shown. Besides, the configuration of the manipulator can be viewed on the graphic interface.Figure 7
The graphic interface of the inverse kinematics.


## 5. Simulation and Experimental Results

One intends to move the end-effector of the manipulator from(
x
,
y
,
θ
)
=
(
0
,
0
,
0
) to (
5
,
3
,
15
) (cm, cm, deg), where x and y are the coordinates of the end-effector and θ is the rotating angle of the end-effector. First, using the kinematics formulations checks if the moving trajectory is in the workspace of the end-effector, and the results are shown in Figure 8. The figure shows that the initial and final positions are both in the area of the workspace. Secondly, based on the kinematics formulations, the rotating angles of the three motors are from (
θ
1
,
θ
2
,
θ
3
)
=
(
0
,
0
,
0
) to (
9.727
,
-
23.132
,
6.375
) degrees. The initial and final configurations are shown in Figure 9. Thirdly, based on the two configurations, one applies the model predictive control to the position control of the manipulator. There are three cases studied in the task. The first one is the case by preforming numerical simulations. The second one is the case by performing an experiment without the links and the end-effector. There are two reasons are to proceed with this case. One is to check if the designed controller can make the motor rotate properly, and the other one is to avoid unexpected damages on this experimental facility. The third one is the case by performing another experiment with links and the end-effector. The time responses of the rotating angles of the three motors are shown in Figure 10. Finally, one proceeds to the direct kinematics based on the related formulations and the time responses of the rotating angles of the three motors, and the results are shown in Figure 11. Since the CompactRIO system has some limitations on the FPGA computations, one divides the motion of the end-effector into two steps. The first step is to rotate the first and second motors. After they reach the desired rotating angles, one proceeds to the second step, which is to rotate the third motor. In the first step, one sets the duration as 0.4 seconds, which can ensure that the motor dynamics reach the steady state. In Figure 11, one can observe that the motion of the second step begins after the first step executes 0.4 seconds. To compare the three cases, there are some differences between them in the transient responses. Since the controller design is only based on the model of the DC motors and the kinematics of the manipulator, the dynamic characteristics of the manipulator are not considered in the controller design. However, the results of the three cases all reach the desired configurations of the end-effector at the steady state.Figure 8
The workspace of the manipulator.(a) Initial configuration, (b) final configuration.
(a)
(b)The time responses of the rotating angles of the three motors: (a) motor 1, (b) motor 2, and (c) motor 3.
(a)
(b)
(c)The position and the rotating angle of the end-effector from the initial to final configurations: (a)x-coordinate, (b) y-coordinate, and (c) rotating angle.
(a)
(b)
(c)


## 6. Conclusions

This paper applies the model predictive control to a 3-DOF 3-RRR planar parallel manipulator based on a semiclosed-loop control system. Both the numerical simulations and experimental results are demonstrated. The results show that the model predictive control can fulfill the position control of the manipulator, and both results are in good agreement at the steady state.



---

*Source: 769038-2014-05-22.xml*