0% found this document useful (0 votes)
19 views18 pages

AMechatronic Approach For Ball SCR

Uploaded by

Navy Fanastic
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views18 pages

AMechatronic Approach For Ball SCR

Uploaded by

Navy Fanastic
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

The International Journal of Advanced Manufacturing Technology

https://doi.org/10.1007/s00170-019-03945-2

ORIGINAL ARTICLE

A mechatronic approach for ball screw drive system: modeling,


control, and validation on an FPGA-based architecture
M. A. Vargas-Treviño1 · J. Lopez-Gomez1 · S. Vergara-Limon1 · A. Palomino-Merino1 · R. Torres-Reyes1 ·
P. Garcia-Ramirez2

Received: 28 January 2019 / Accepted: 27 May 2019


© Springer-Verlag London Ltd., part of Springer Nature 2019

Abstract
This paper presents a novel mechatronic approach to modeling, control design, and experimental validation of a two-axis
high-accuracy ball screw drive system. At first, a general mathematical model is developed by the Lagrange’s equation
of Motion to characterize the dynamic behaviors of all the variables for an N-degrees of freedom system that includes
electric behavior of the DC motors. Thus, the model provides a general framework for the control algorithm design. A
robust PD-hyperbolic–type control strategy is proposed based on the representation of a nonlinear dynamic model for the
trajectory tracking that solves the problem of regulation and position control. The stability method of Lyapunov is applied;
in addition, the asymptotic stability of an equilibrium point is analyzed for the closed-loop dynamic model. The proposed
control law ensures the dynamic performance of the closed-loop signals and desired tracking precision. On the other hand,
the description of a new and original FPGA-based programmable microprocessor design is introduced which consists of
its own design approaches of a hardware/software architecture. Finally, based on a built prototype of a ball screw drive
system, experimental tests and simulations with motion trajectory tracking are conducted to verify the proposed general
mathematical model and the control law. Experimental results demonstrate an excellent tracking trajectory and desired
precision performance, which validates the feasibility and effectiveness of the proposal.

Keywords Ball screw · FPGA microprocessor · Mechatronics · Mathematical model · PD control

1 Introduction device. Saketi et al. [3] analyzed the manipulation of sam-


ples in materials, and Wen et al. [4] studied a system for
Micropositioning systems require of control algorithm to measuring a cross-sectional web thickness of microdrills.
realize trajectories of high accuracy; therefore, techniques Moslem et al. [6] implemented a haptic-thermal–assisted
of modern control require a mathematical model of the sys- robot with cartesian mechanism for the intraoperative ther-
tem. Based on this model, the controller parameters are mal imaging technique in neurosurgery. Hampia et al. [7]
adjusted. The increasing demands of the micropositioning and Daniele et al. [8] developed the XYZ detector opti-
systems have been applied in the scientific and Engineer- cal microscope stage of fluorescence analysis that explores
ing area. These applications require contouring of desired the recent developments in micro X-ray optics. Marlon and
trajectories and moving inside of a bounded space very Jonas et al. [9, 10] developed improvements in new design
small with a high index of precision, such as for the opti- methodologies of micropositioning.
cal start-up systems presented by Aljasem et al. [1], and the To begin with, the general model is first proposed to
micromanipulation in biological engineering implemented characterize the dynamic behavior of the drive system. The
by Hu et al. [2]. Holmes et al. [5] scanned the microelec- ball screw is the most used driving mechanism in high-speed
trode probe into a high-resolution XYZ micropositioning and long-stroke positioning stages. The micropositioning
study of a ball screw mechanism remains a challenge for
 M. A. Vargas-Treviño researchers and it is difficult to obtain the desired resolution,
[email protected]; but this is due to the backlash force, multiple structural
http://148.228.54.14/automation-2018/
modes, and non-linear friction between the ball screw and
the nut. Therefore in previous studies, Guo et al. [11],
Extended author information available on the last page of the article. Wang et al. [12], and Li et al. [13] successively proposed
Int J Adv Manuf Technol

a dynamic model for the ball screw drive using a lumped controller design is implemented into an FPGA (Field
parameter system in the relationship between thrust, torque, Programmable Gate Array) that allows using a specific
force, deformation, and kinematic compatibility equation programmable hardware technology. The performance is
describing motion transmission between rotary and axial compared with other possible benchmarks. Cristina et al.
displacement that examines the relationship between the [35] and Swapnil et al. [36] implemented a fractional order
ball screw preload variation and detected vibration signals. PI and PID controllers on an FPGA-based device for DC
Dong et al. [14] and Yi et al. [15] studied the numerical motors. Pedro et al. [37] implemented a robust controller
simulation that obtains the peak frequency response, such for a micro-machine tool controlled. Vyas et al. [38] and
as the different levels of ball nut preload, the ball screw Renato et al. [39] developed embedded controllers using
torsional stiffness, and load. Igor et al. [16] presented a a hardware/software co-design technique into an FPGA. A
simple 2-dof model in modal coordinates and in the time NIOS II soft-processor was configured in a control system
and frequency domains by means of experimental tests in a with self-tuning PID controller for an X-Y table by Ying et
ball screw. al. [40], and in an adaptive robust controller for trajectory
The design of a robust control is required to characterize tracking with IP-Core by Hsu et al.[41]. Zbigniew et al. [42]
the dynamic behavior, for the desired motion control, and to verified the design and implementation of a multiprocessor
reduce the detected vibration signals. In the literature, in the programmable controller on the FPGA platform for control
case of controllers applied for nonlinear systems and ball- algorithms. Chen et al. [43] implemented the design of a
screw mechanisms. For example, Kangkang and Jianbin et DRAM controller with writing merging a read prefetching
al. [17, 18] designed an adaptive fuzzy stochastic switched buffer.
control scheme, the problem of fuzzy adaptive event- In all the aforementioned works, different cases of
triggered control for a class of pure feedback nonlinear application are shown such as for micropositioning, optical
systems was studied, and a fuzzy state observer to estimate scanning, calibration, micromanipulation in biological,
unmeasured states was designed. Guilherme et al. [19] microelectrode probe scanning, microdrills, and assisted
described a nominal characteristic trajectory and a PI robot. On the other hand, ball screw modeling have been
compensator based on a linear model simplified. Zhi et specifically developed for an axis of the study of vibration,
al. [20] proposed an adaptive control algorithm based on torque, deformation, and preload variation. A general math-
a nonlinear model. The implementation of sliding mode ematical model of a ball screw drive system for two axes
controllers in the ball screw drive has been reported as has not still been reported with all the dynamic variables,
for the eliminating of the hysteresis by Shunli et al. [21], including the electrical behavior and the optimum frequency
the suppress of the vibration by Liang et al. [22], and the response of the DC motor. The design of a PD-hyperbolic–
trajectory tracking control by Nima et al. and Soo et al. type controller applied to a ball screw drive system has
[23, 24]. Some authors have developed PD-type control not been proposed in the literature. The control algo-
algorithms in industrial applications as for a pendulum rithms have already been implemented on an FPGA-based
with moving mass by Oscar et al. [25], PD control with architecture using hardware/software co-design techniques
feedforward compensation in a trajectory tracking of robots in which a processor is configured for each controller.
by Carrillo et al. [26], and PD control in a robotic fish However, the implementation of a PD-hyperbolic–type
underwater vehicle and bio-harmonized by Abhra et al. [27, control algorithm into an FPGA-based architecture with the
28]. Reyes et al. [29] presented the classical PD, arctangent, use of a new programmable hardware/software processor
and square-root controls and members of the family of will be a matter of interest for researchers.
explicit force control schemes, on a robot manipulator. Overall, the contributions of this proposal consist of the
It is interesting to remark that a high-gain derivative- study on the modeling, the proposed control design, and the
proportional controller is actually a common practice in the experimental evaluation. At first, a mathematical model is
industry. studied for the dynamic behavior of all the variables. A PD-
The control algorithms have a wide spectrum of applica- hyperbolic–type control algorithm is proposed based on the
tions that are implemented on a chip FPGA-based solutions, representation of a nonlinear dynamic model that solves the
including the motor drive control, the visual control, the problem of regulation and position control. The model and
virtual prototyping, and robotics, such as for controlling the suggested control algorithm are simulated and compared
of multi-unit PMSM motor drive position proposed by with a controller of the literature. The asymptotic stability
Sarayut et al. [30], for direct visual control robotic sys- of the equilibrium point is analyzed. On the other hand, the
tem suggested by Aiman et al. [31], for CNC applications authors of this article introduce the development of a new
by Jingchuan et al. [32], virtual prototyping processor for FPGA-based programmable processor. The approach of
mechatronic system developed by Beghi et al. [33], and for the hardware/software design consists of a microprocessor
robotic applications showed by Miguel et al. [34]. The that is developed by Firmware and configured through a
Int J Adv Manuf Technol

compiled program by Labview™ that is sent to a Cyclone 2 Mathematical model of the drive system
V FPGA device. Thus, the proposed controller will be
validated and compared. Finally, in this project, the two- 2.1 Axial/torsional dynamic model
stage system and the proposed control algorithm applies
for the continuous tracking control of a high-accuracy The ball screw drive system is actuated by applying a
counting detection system for optical experiments; in which, controlled voltage in the actuator input which is connected
it consists of scanning and contouring of desired trajectories to a reducer, a coupling, a ball screw shaft, a nut, and a
and moving inside of a very small bounded space with high sliding ball block so that the system will be modeled using
precision index, smooth speed, and null vibration. The focus a lumped parameter system. The general structure for the
points of this paper are as follows: the first part models two-axis stage is shown in Fig. 1.
the axial-torsional dynamic of a ball screw drive system A ball screw has residual vibration modes that affect the
and the electrical circuit of the DC motor. The second part stability of the system caused by the axial and torsional
represents the general mathematical model in the state space stiffness during the positioning of the sliding ball block.
and analyzes the stability by linearization. In the third part, Inertia and stiffness lumped model of a two-axis ball screw
a control strategy is suggested and analyzes the stability drive system is illustrated in Fig. 2.
in the sense of Lyapunov. The fourth part proposes that Due to the inertial and mass distribution, the kinetic
the suggested control strategy be implemented, using a energy Eci is expressed as
hardware/software in the embedded microprocessor of the  2
FPGA-based platform. The fifth part shows the results of 1 1 1 θ̇gi + θ̇si
Eci = Jmi θ̇m2 i + Jgi θ̇g2i + Jci
the simulation and the experimental test of the suggested 2 2 2 2
control strategy. Finally, the sixth part gives the conclusions 1 1 1
+ Jsi θ̇si + Msi Ẋs2i + Mli Ẋl2i (1)
of the text. 2 2 2

Fig. 1 Design of the drive


system by ball screw of a
lumped model
Int J Adv Manuf Technol

Fig. 2 Schematic diagram of lumped parameters of the drive system


Int J Adv Manuf Technol

where i = 1, 2 represents shaft 1 and shaft 2 of the ball displacement driven by the rotation movement of the
Xstep
screw drive system; θ̇mi is the torsional speed of the actuator ball screw, Xni = 2πΦi represents the transmission shaft
i; θ̇gi is the torsional speed of the gearbox i; θ̇si , Ẋsi , Jsi , and resolution of the ball screw, and Φ is the efficiency of the
Msi are the torsional speed, axial speed, torsional moment of ball screw shaft by the manufacturer, i = 1, 2.
inertia, and axial mass, respectively, of the ball screw shaft The ball screw shaft is characterized by density of the
i; Ẋli is the axial speed of the sliding ball block i; Jmi is the material ρ, length shaft Lxi of the screw shaft i, screw pitch
inertia moment from the actuator rotor i; Jci is the inertia Xstepi of the shaft i, Young’s modulus E, Poisson’s modulus
from the coupling i; and Mli is the mass of the load sliding G, and cross section of the screw A in which the system
block i. has components treated as a lumped constant axial/torsional
The potential energies Ep1 and Ep2 are stored in the deformation that can be modeled by stiffness connected
elastic deformation parts of the system, including ball by springs in series on each shaft, as shown in Fig. 2.
screw, coupling, and screw-nut interface. The equations are According to Dadalau et al. [44], the stiffness of the screw,
expressed as the nut, and equivalent stiffness are calculated by using the
1 1 1 formula of a parallel spring as shown below:
Ep1 = Kg Ξ1 2 + Kc1 Z1 2 + Kn1 γ1 2
2 1 2 2 −1
1  2 1 1
+ Kr1 Xs1 − Qs1 Kgi = + (7)
2 Storg Scoupling
1 1 1
Ep2 = Kg2 Ξ2 2 + Kc2 Z2 2 + Kn2 γ2 2
2 2 2 −1
1 1 1 1
+ Kr2 η + Ms2 gLx2
2
(2) Kci = + + (8)
2 Scoupling Sbearing Storshaf t
where θmi , θgi represents the angular displacement of the
actuator and gearbox, respectively, in the shaft i, θsi is the −1
angular deformation of the ball screw shaft i, Xli is the axial 1 1
Kri = + (9)
displacement of the sliding ball block i, Xsi is the axial Saxialshaf t Sbearing
elastic deformation which is generated by axial vibration of
the ball screw i, Qs1 represents the fixed ground support  −1
of the axial displacement between the ball screw junction. 1
Kni = (10)
Ξi denotes the torsional deformation interacting between Saxialnut
actuator rotor and gearbox, and Zi denotes the interaction
between gearbox and ball screw are expressed as where Kgi is the torsional stiffness of the gearbox and
  coupling; Kci is the torsional stiffness of the coupling,
Ξi = θmi − ξi gi θgi − κi (3) bearing, and ball screw shaft; Kri represents the equivalent
axial stiffness of ball screw shaft and bearing; and Kni is the
   axial stiffness between nut and ball screw shaft.
Zi = θsi − θgi + κi (4)
The backlash force in the gearbox of the actuator, ball
where ξi , gi , and κi are gearbox mechanical efficiency, gear- screw, and nut decrease when they are frequently used or
box transmission ratio (Nout /Nin ), and gearbox unknown after of a time due to the friction, stiffness, and structural
torsional backlash, respectively. γi is the general axial defor- modes, so that, the remaining life time of the ball screw is
mation of the sliding ball block inflicted by the contact force reduced. Therefore, the frictional force is proportional to the
that interacts between the ball screw transmission and nut speed and the Rayleigh dissipation function [45] is equal
interface in order for the nut to act as a spring together with to half the system energy needed to overcome the friction
the axial and torsional elastic deformation of the screw, η forces of the gearbox, the ball screw, and the nut can be
represents the joint 1 and joint 2 junctions of the axial elas- expressed as follows
tic deformation between Xs2 and γ1 and are expressed as
1  2 1 2
follows Fd = bg ξ1 g1 θ̇g1 − θ̇m1 + br1 Ẋs1
    2 1 2
γi = Xli − Xni θsi + Xsi + Ωi (5) 1   2
+ bn1 Xn1 θ̇s1 + Ẋs1 − Ẋl1
2
     1  2 1  2
η = Xs2 − Xl1 − Xn1 θs1 + Xs1 + Ω1 (6) + bg2 ξ2 g2 θ̇g2 − θ̇m2 + br2 Ẋl1 − Ẋs2
2 2
where Ωi is the unknown torsional and axial backlash 1   2
+ bn2 Xn2 θ̇s2 + Ẋs2 − Ẋl2 ; (11)
between nut and ball screw shaft, Xni θsi is the axial 2
Int J Adv Manuf Technol

where bgi , bri , and bni are rotational damping of the motor system is shown in Fig. 2, i.e., DC motors are considered
and gearbox, axial damping of the supporting bearing and as
ball screw, and axial damping of the nut and sliding, respec-
tively. Using the Lagrange’s equation of Eqs. 1, 2, and 11 E(t)j = Rmj imj + Lmj i̇mj + Vmj (15)
becomes where imj , Rmj , and Lmj are the motor armature current,
  the motor armature resistance, and the motor armature
Jm1 θ̈m1 − bg1 ξ1 g1 θ̇g1 − θ̇m1 + Kg1 Ξ1 = τm1 ; inductance, respectively; E(t)j is the armature voltage that
 
Jm2 θ̈m2 − bg2 ξ2 g2 θ̇g2 − θ̇m2 + Kg2 Ξ2 = τm2 ; represents the control input.
   
Jg1 + 0.25Jc1 θ̈g1 + ξ1 g1 bg1 ξ1 g1 θ̇g1 − θ̇m1
−Kc1 Z1 − ξ1 g1 Kg1 Ξ1 = 0;
    3 Mathematical model in the state space
Jg2 + 0.25Jc2 θ̈g2 + ξ2 g2 bg2 ξ2 g2 θ̇g2 − θ̇m2
−Kc2 Z2 − ξ2 g2 Kg2 Ξ2 = 0; In this section, the dynamic model is presented in the state
   
0.25Jc1 + Js1 θ̈s1 + Xn1 Kr2 η − Kn1 γ1 space and the stability based on the linearized model is
   analyzed.
+Xn1 bn1 Xn1 θ̇s1 + Ẋs1 − Ẋl1
+Kc1 Z1 = 0; 3.1 State space
 
0.25Jc2 + Js2 θ̈s2 + Kc2 Z2 − Xn2 Kn2 γ2
  
+Xn2 bn2 Xn2 θ̇s2 + Ẋs2 − Ẋl2 The system of state variables is defined as x1 = im1 , x2 =
  θm1 , x3 = θ̇m1 , x4 = θg1 , x5 = θ̇g1 , x6 = θs1 , x7 = θ̇s1 ,
Ms1 Ẍs1 + Kr1 Xs1 − Qs1 + Kr2 η − Kn1 γ1
   x8 = Xs1 , x9 = Ẋs1 , x10 = Xl1 , x11 = Ẋl1 , x12 = im2 ,
+bn1 Xn1 θ̇s1 + Ẋs1 − Ẋl1
x13 = θm2 , x14 = θ̇m2 , x15 = θg2 , x16 = θ̇g2 , x17 = θs2 ,
+br1 Ẋs1 = 0; x18 = θ̇s2 , x19 = Xs2 , x20 = Ẋs2 , x21 = Xl2 , x22 = Ẋl2 ;
 
Ms2 Ẍs2 − br2 Ẋl1 − Ẋs2 + Kr2 η − Kn2 γ2 R1 =ξ1 g1 , R2 =ξ2 g2 , inputs as U1 = E(t)1 and U2 = E(t)2 .
   Substituting Eqs. 4, 3, 5, 6, 13, 14, and 15, in Eq. 12, the
+bn2 Xn2 θ̇s2 + Ẋs2 − Ẋl2 = 0;
   following model in the state space is represented as
Ml1 Ẍl1 − bn1 Xn1 θ̇s1 + Ẋs1 − Ẋl1 + fl1 Ẋl1
  Rm 1 k1 1
+br2 Ẋl1 − Ẋs2 + Kn1 γ1 − Kr2 η = 0; ẋ1 = − x1 − x3 + U1
   Lm 1 Lm 1 Lm 1
Ml2 Ẍl2 − bn2 Xn2 θ̇s2 + Ẋs2 − Ẋl2 + fl2 Ẋl2
ẋ2 = x3
+Kn2 γ2 = 0; (12) bg
km 1
ẋ3 = x1 + 1 (R1 x5 − x3 )
Jm1 Jm1
where fl1 and fl2 are viscous friction coefficient of the
Kg
sliding ball block. − 1 [x2 − R1 (x4 + κ1 )]
Jm1
2.2 Electric model of the actuator ẋ4 = x5
R1 Kg1 Kc1
ẋ5 =   x2 +   x6
As described by Fabien in [45], the equations that directly Jg1 + 0.25Jc1 Jg1 + 0.25Jc1
connect the mechanical part and screw shaft to the electrical  2   
R1 Kg1 + Kc1 κ1 R1 Kg1 + Kc1
part of the actuator are shown below −  x4 +  
Jg1 + 0.25Jc1 Jg1 + 0.25Jc1
R1 bg1
τmj = kmj imj (13) −  (R1 x5 − x3 )
Jg1 + 0.25Jc1
Vmj = kj θ̇mj (14)
ẋ6 = x7
Xn1 bn1   
where j = 1, 2; τmj is the electromagnetic torque equation ẋ7 = −   Xn1 x7 + x9 − x11
of the rotor generated by an exciting current and the induced 0.25Jc1 + Js1
current of the motor; kmj is a mechanical constant generated K c1
−  [ x6 − (x4 + κ1 )]
by the magnetic flux of field of the actuator for joint j ; 0.25Jc1 + Js1
imj is the armature current of the motor for joint j ; Vmj is  
Xn1 Kn1 + Kr2   
an electric force induced in presence of the magnetic field; +   x10 − Xn1 x6 + x8
0.25Jc1 + Js1
and kj is an electrical constant generated by the magnetic
Xn1 Kr2
flux of the actuator armature for joint j . The electric model −  x19
coupled to the dynamic torque of the ball screw drive 0.25Jc1 + Js1
Int J Adv Manuf Technol

ẋ8 = x9 3.2 Linearity and analysis of the state space


bn     br Kr
ẋ9 = − 1 Xn1 x7 + x9 − x11 − 1 x9 − 1 x8
Ms1 Ms1 Ms1 The system (16) is approximated by linearization. The lin-
  earized model is expected to reflect on the stability behav-
Kr Kn1 + Kr2   
− 2 x19 + x10 − Xn1 x6 + x8 ior around the equilibrium point. Thereafter, a linearized
Ms1 Ms1 state-space model can be rewritten by
ẋ10 = x11
bn1     ẋ = Ax + BU (17)
ẋ11 = Xn1 x7 + x9 − x11
M l1 where A ∈ Rn x n , B ∈ Rn x 1 , and n = 22. Therefore, it
bl br Kr must satisfy the following theorem.
− 1 x11 − 2 (x11 − x20 ) + 2 x19
M l1 M l1 M l1
  Theorem 3.1 Let ẋ = f (x, U ) of Eq. 16; f : D −→ Rn is
Kn1 + Kr2   
− x10 − Xn1 x6 + x8 continuously differentiable and D ⊂ Rn is a neighborhood
M l1 of the origin. Let x=0 and U=0 equilibrium points for
Rm k2 1 Eq. 16. For a linearized model, it has the following cases:
ẋ12 = − 2 x12 − x14 + U2
Lm 2 Lm 2 Lm 2
1. - If Eq. 17 has all the poles in the left half of the complex
ẋ13 = x14 plane, the equilibrium point is asyntotically stable for
km 2 bg Eq. 16, that is, Reλi < 0 for all i−eigenvalues of A.
ẋ14 = x13 + 2 (R2 x16 − x14 )
Jm2 Jm2 2. - The equilibrium point is unstable for Eq. 16, that is,
Kg2 Reλi > 0 for one o more i−eigenvalues of A.
− [x13 − R2 (x15 + κ2 )]
Jm2 3. - If Eq. 17 has poles on the imaginary axis, then the
ẋ15 = x16 stability of Eq. 16 cannot give a conclusive result.
R2 Kg2 Kc2
ẋ16 =   x13 +   x17
Jg2 + 0.25Jc2 Jg2 + 0.25Jc2 Proof Table 1 presents nominal values of A, and the
 2   
R2 Kg2 + Kc2 κ2 R2 Kg2 + Kc2 stability analysis of the linearized model is given by
−  x15 +   eigenvalues of the matrix det (λI − A) = 0, in this way,
Jg2 + 0.25Jc2 Jg2 + 0.25Jc2
R2 bg2 λ1 = −73.8914, λ2 = −2058051.197 + 4179208.726i,
−  (R2 x16 − x14 ) λ3 = −2058051.197−4179208.726i, λ4 = −2058051.34+
Jg2 + 0.25Jc2
4179208.31i, λ5 = −2058051.34 − 4179208.31i, λ6 =
ẋ17 = x18 −1.68969 + 216719.53i, λ7 = −1.68969 − 216719.53i,
Xn2 bn2    λ8 = −0.243554 + 79675.61i, λ9 = −0.243554 −
ẋ18 = −   Xn2 x18 + x20 − x22
0.25Jc2 + Js2 79675.61i, λ10 = 0.24354 + 24867.88i, λ11 = 0.24354 −
Kc2 24867.88i, λ12 = −0.0049106 + 12180.44i, λ13 =
−  [ x17 − (x15 + κ2 )]
0.25Jc2 + Js2 −0.0049106 − 12180.44i, λ14 = −0.58268 + 12598.9i,
Xn2 Kn2    λ15 = −0.58268 − 12598.9i, λ16 = −0.051686 +
+  x21 − Xn2 x17 + x19 3509.1i, λ17 = −0.051686 − 3509.1i, λ18 = −135.39,
0.25Jc2 + Js2
λ19 = −7.824, λ20 = −0.002034 + 0.002896i, λ21 =
ẋ19 = x20 −0.002034 − 0.002896i, and λ22 = 7.8245. In this case, the
br2 Kr
ẋ20 = (x11 − x20 ) − 2 x19 linearized model has poles on the imaginary axis, and since
Ms2 Ms2 not all the real parts of the eigenvalues are negative, this
bn     theorem cannot give a conclusive result about the stability
− 2 Xn2 x18 + x20 − x22
Ms2 of the mathematical model.
Kr    In the next section, the closed-loop equation between
+ 2 x10 − Xn1 x6 + x8 the proposed control algorithm and the mathematical model
Ms2
Kn    is expected to reflect on the asymptotic stability behavior
+ 2 x21 − Xn2 x17 + x19 around the equilibrium point.
Ms2
ẋ21 = x22
bn2     bl
ẋ22 = Xn2 x18 + x20 − x22 − 2 x22 4 Suggested control algorithm
M l2 M l2
Kn2   
The algorithm applies to a closed-loop control and uses
− x21 − Xn2 x17 + x19 (16)
M l2 the signals about motor as feedback signals for a position
Int J Adv Manuf Technol

Table 1 Parameters of the drive system by ball screw where M(u) ∈ Rn x n denotes the inertia matrix (or
the mass matrix) and it is a positive definite symmetric
Symbol Given value
matrix; C (u, u̇), B ∈ Rn x n represents matrix arising
Lm1 13.4 x 10−2 N · m/A2 from centripetal and coriolis, damping forces, respectively;
Rm1 18.15 N · m/s · A2 K ∈ Rn x n is the matrix of axial-torsional stiffness
Lm2 22.1 x 10−2 N · m/A2 coefficients, τm (t) ∈ Rn x 1 is the input vector of control; and
Rm2 16.33 N · m/s · A2 u, u̇, ü ∈ Rn are generalized vector of position, speed, and
k1 0.00130 V · s/rad acceleration, respectively. Fernando’s study [46] describes
km 1 0.790 N · m/A some important properties of Eq. 18 and adds other when
k2 0.00332 V · s/rad joints of the drive system are rotations, such as represented
km 2 0.783 N · m/A below.
Jm1 0.01372 kg · m2
Jg1 7.4075428 x 10−5 kg · m2 Property 1 Matrix M(u) is symmetric and positive
Jm2 0.01187 kg · m2 definite; M(u) > 0, M(u) = M(u)T ; ∀u ∈ Rn is
Jg2 7.4075428 x 10−5 kg · m2 uniformly upper and lower bounded and continuous such
Jc1 6.0765 x 10−6 kg · m2
that M(u)ü ≤ EM ü, in which exist a constant scalar
Jc2 6.0765 x 10−6 kg · m2
β > 0 satisfy, EM ≤ β, 0 ≤ Em where EM , Em represents
Js1 , Js2 5.5576 x 10−6 kg · m2 ; 3.9697 x 10−6 kg · m2
the constant of maximum and minimum eigenvalue of the
inertia matrix.
bg1 , bg2 2.5 x 10−3 N · m · s/rad; 2.5 x 10−3 N · m · s/rad
br1 ; br2 1 x 101 N · m/s; 1 x 101 N · s/m
Property 2 The resulting matrices [M(u) − Em I ] ≥ 0 and
bn1 , bn2 1 x 101 N · m/s; 1 x 101 N · s/m
[EM I − M(u)] ≥ 0 are positive semi-definite.
bl1 , bl2 0.15 x 101 N · m/s; 0.15 x 101 N · m/s
Kg1 , Kg2 131807.611 N · m/rad; 131807.611 N · m/rad
Property 3 Matrices K(u), B (u̇), C (u, u̇) ∈ Rn x n satisfy,
Kc1 , Kc2 1162.4571 N · m/rad; 830.326 N · m/rad
∀u, u̇ ∈ Rn are uniformly bounded such that K(u) ≤
Kr1 , Kr2 80282130.51 N/m; 87692682.99 N/m
ε0 (K), B (u̇) ≤ ε1 (B )u̇, C (u, u̇) ≤ ε2 (C )+ε3 (C )u̇,
Kn1 , Kn2 9047786842 N/m; 9047786842 N/m
in which are positive vectors taken from a canonical base of
Ω 1 ; Ω2 0m
some coordinate
Xstep1 , Xstep2 4 x 10−3 m; 4 x 10−3 m
n
ξ1 ; ξ2 0.85; 0.85
εk = max |ai,j |
g 1 ; g2 131.25; 131.25 1≤j ≤n
i=1
Ms1 ; Ms2 3.35 kg; 0.55 kg
M l1 ; Ml2 3.10 kg; 0.30 kg where k = 0, 1, 2, 3.
κ1 ; κ2 0m
L x1 ; L x2 0.35 m; 0.25 m
Property 4 Expression u̇T [Ṁ(u) − 2C(u, u̇)]u̇ = 0
G 81 x 109 N/m2
denotes the skew-symmetric property of the resulting matrix
[Ṁ(u) − 2C(u, u̇)], since Ṁ(u) = C(u, u̇) + C(u, u̇)T
E 210 x 109 N/m2
represents the derived, that is, the property holds between
Ṁ(u) and C(u, u̇).
loop angle and rotation velocity. The energy molding design
proposal is to generate an algorithm that solves the problem Assumption 1 Vector τm (t) ∈ Rn x 1 holds bounded control
of position and regulation control for a system with a action satisfy ∀ u ∈ Rn tends asymptotically to zero, such
mathematical structure that represents the gradient of a that τm (t) ≤ τmmax where τmmax is the maximum energy
modified potential energy function, in addition, an action of the motor, in which the function of applied energy T :
function of derivative control for a damping or mechanical- R −→ R for this study is defined as
braking by the rotation speed of the actuator. ⎧ max

⎪ τm − τa if τm (t) ≥ τmmax




4.1 Simplified dynamic model ⎪

⎨ τa if τ2a ≤ τa ≤ τmmax
T (τm (t)) =
The dynamic model of the drive system with rigid links of a ⎪


⎪ τm if 0 < τm (t) < τmmax − τa
second-order system (12) can be expressed as ⎪




M(u)ü + C (u, u̇)u̇ + Ku + B u̇ = τm (t) (18) 0 if τm (t) ≤ 0
Int J Adv Manuf Technol

where τa is an adjustable scalar value. Rn exists and is unique. The stability analysis in the
sense of Lyapunov has the following candidate function
The aforementioned properties facilitate the demonstra- as
tion of the uniqueness and existence of the equilibrium
point, and stability analysis for the case of position control 1 T
V (y2 , y1 ) = y2 M y2 + Pa (Kp , y1 )
and regulation. For this work, it is possible to define a con- 2
trol strategy problem and a solution proposal, as described 1 ∂ Pa (Kp , y1 )
V̇ (y2 , y1 ) = y2 T M ẏ2 + y2 T Ṁ y2 + ẏ1
in the following subsections. 2 ∂y1
∇ Pa (Kp , y1 ) Fv (Kv , y2 )
4.2 Control scheme by energy molding = y2 T M − −
M M
C B K
− y2 − y2 − (y1 + yd )
The control law by energy molding is shown as M M M
1 ∂ Pa (Kp , y1 )
+ y2 T Ṁ y2 + y2
τm (t) = ∇ Pa (Kp , ũ) − Fv (Kv , u̇) (19) 2 ∂y1
= −y2 T ∇ Pa (Kp , y1 ) + ∇ Pa (Kp , y1 )y2
∂ Pa (Kp ,ũ)
where ∇ Pa (Kp , u) = ∂u is a function resulting from −y2 T Fv (Kv , y2 ) − y2 T B y2
the gradient and must be a continuous function in u = 0, u ∈ 1
Rn is the position error defined as the difference between −y2 T K(y1 + yd ) + y2 T Ṁ y2 − y2 T C y2
2
the angular position of the actuator u ∈ Rn and the desired
V̇ (y2 , y1 ) ≤ −y2 T [Fv (Kv , y2 ) + B y2 + K(y1 + yd )]
position ud ∈ Rn , the fictitious potential energy Pa (Kp , u)
is the design energy and is a continuously differentiable and (22)
positive definite, the proportional gain Kp ∈ Rn x n is a
diagonal matrix, the derivate gain Kv ∈ Rn x n is a positive where V̇ (y2 , y1 ) ≤ 0. The stability theorem of Lyapunov
definite matrix, and Fv (Kv , u̇) is the damping injection on the equilibrium point is satisfied for the closed-loop
function and meets the dissipative property of a positive system (21). Therefore, the origin is a stable equilibrium,
definite uT Fv (Kv , u̇) > 0. but not necessarily asymptotically stable. The Barbashin-
The closed-loop equation of the dynamic model (18) Krasovskii-LaSalle theorem is used to demonstrate the
and the design energy (19) generates a stable equilibrium asymptotic stability of the equilibrium point [47]. The
point globally in the sense of Lyapunov. By this way, the interest is shown that x(t) −→ 0 as t −→ ∞ have
following equation is obtained as to establish that largest invariant set in ΩL is the origin.
Taking V (y2 , y1 ) positive definite obtains the following
M(u)ü + C (u, u̇)u̇ + B u̇ + Ku + ∇ Pa (Kp , u) corollary.
+ Fv (Kv , u̇) = 0 (20)
Corollary 4.1 Let y2 = 0, y1 = 0 be an equilibrium
point for Eq. 21. Let V : R n −→ R be a continuously
The system in state variables is defined as yd = ud , u = differentiable, radially unbounded, positive definite function
yd − u, y1 = u, and y2 = u̇. Therefore, the closed-loop such that V̇ (y2 , y1 ) ≤ 0 for all [y2 , y1 ]T ∈ Rn . Let
equation for the problem of position control in this study ΩL = {[y2 , y1 ]T ∈ Rn |V̇ (y2 , y1 ) = 0} and suppose that
becomes no solution can stay identically in ΩL , other than the trivial
solution [y2 , y1 ]T ≡ [0, 0]T . Then, the origin is globally
ẏ1 = y2 asymptotically stable.
∇ Pa (Kp , y1 ) Fv (Kv , y2 ) C (y1 , y2 )
ẏ2 = − − − y2
M M M When V̇ (y2 , y1 ) is negative definite, ΩL = {0}.
K Then, Corollary 4.1 coincide with the asymptotic stability
−B y 2 − (y1 + yd ) (21)
M condition of Lyapunov.

4.3 Stability analysis


Proof In this study, the following control law is proposed
It is considered that the dynamic system (21) is an through the molding of energy
autonomous differential equation that is ẏ = f (y); y(0) ∈
Rn ∀t ≥ 0 and the equilibrium point f (0) = 0 ∈ τ = Kp tanh(y1 ) − Kv tanh (y2 ) (23)
Int J Adv Manuf Technol

The candidate function of Lyapunov is as follows 5.1 Hardware/software architecture design

1 T The hardware system design as shown in Fig. 3 consists


V (y2 , y1 ) = y2 M y2 + Y T Kp Y
2 of the following parts: FPGA device, WiFi device, encoder
1 signal conditioning, and motor driver circuit for the motion
V̇ (y2 , y1 ) = y2 T M ẏ2 + y2 T Ṁ y2
2 direction control. On the other hand, a PC software with
∂ d WiFi communication can be used as an interface to send
+ [Y Kp Y ]T y1
T
∂y1 dt parameters of positions and gains for the proposed con-
1 troller. For the FPGA device uses an Altera’s Cyclone
= y2 T M ẏ2 + y2 T Ṁ y2 V FPGA chip 5CEBA4F23C7N on the DE0-CV board
2
senh(y1 )ẏ1 which has an embedded processor, standard hardware mod-
+Y KpT
ules such as JTAG and AS mode configuration, I/O pins, and
cosh(y1 )Y
1 3080 RAM Kbits embedded memory. The Firmware devel-
= y2 T M ẏ2 + y2 T Ṁ y2 ops in the AHDL programming (Altera Hardware Design
2
tanh(y1 ) Language) for the Cyclone family. The Firmware consists
+Y KpT
ẏ1 of instruction blocks for specific purposes that are recorded
Y
in an established ROM memory by the lowest level logic.
= y2 T [−Kp tanh( y1 ) − Kv tanh( y2 ) − C y2
RAM and ROM memories are devices external to the
1 FPGA. The ROM memory is intended to store the instruc-
−B y2 − K(y1 + yd )] + y2 T Ṁ y2
2 tion set that interprets and executes the microprocessor.
T tanh(y1 ) However, the RAM memory storage data is meant to be
+Y Kp y2
Y processed. Moreover, the control Firmware comprises the
= −y2 T Kp tanh( y1 ) + tanh( y1 )Kp y2 implementation in the FPGA of a 32-bit RISC micropro-
−y2 T Kv tanh( y2 ) − y2 T K(y1 + yd ) cessor with a Harvard architecture, a set of 32-bit with 15
  instructions based on MIPS, 16 general-purpose registers,
1
+y2 T Ṁ − C y2 − y2 T B y2 and an IEEE 754 single precision arithmetic unit of floating
2
point that controls the ball screw drive system.
V̇ (y2 , y1 ) ≤ −y2 T [Kv tanh( y2 ) + B y2 + K(y1 + yd )] An RN-XV WiFi device for the communication
(24) between the Firmware and software is used via UART
reception protocol (Universal Asynchronous Receiver-

where Y = In[cosh( ui )], i = 1, 2, y2T Kv tanh( y2 ) > Emitter). The WiFi communication protocol consists of
0 demonstrates the global stability of the equilibrium the hardware/software link up since the FPGA is used to
point. manage the read data bus, mainly using its address and data
ΩL = {[y2 , y1 ]T ∈ R2 |V̇ (y2 , y1 ) = 0}. If y2 = 0 signals. The WiFi administrator represents algorithms by
and y1 ∈ Rn , then V̇ (y2 , y1 ) = 0 for all [y2 , y1 ]T ∈ state machine codes where at first, the start bit is detected,
R2 . Moreover, Kp tanh( y1 ) = 0 only if y1 = 0, the bit intermediate point is found for sampling, take the
then the maximum invariant set in ΩL = {[y2 , y1 ]T ∈ sample, wait until the bit in question finishes transmitting,
R2 |V̇ (y2 , y1 ) = 0} is the origin [y2 , y1 ]T = [0, 0] ∈ R2 . the data is read, and the stop bit is received, respectively, as
Finally, V (y2 , y1 ) > 0 with a unique global minimum in shown in Fig. 4. A 100-Mhz clock is used for sampling, so
[y2 , y1 ]T = 0 ∈ R2 , then the origin is the maximum 217 accounts are required for a one-bit transition to occur.
invariant set that is ΩL . Therefore, using the Corollary 4.1, The reception block takes data at 100 Mhz synchronizing
it is concluded that the origin in the state space is to baud rates of transmission by delays. This is in order
asymptotically stable in global formality. to perform a reliable reading, and the data is read halfway
through the transmission of each bit. Therefore, the received
byte is represented by the output in parallel data.
5 Hardware and software architecture The ball screw drive system has two DC motors that
have encoders coupled to determine the position u ∈ Rn .
In this section, an own hardware/software design has The decoder is a state machine algorithm by means of
been developed and built by the authors of this paper. counters indicates how many pulses have been received
The implementation is introduced in a reconfigurable from the encoders and direction of rotation, since in a
architecture based on an FPGA that consists of the clockwise direction, the counter will increase and in the
suggested main controller applied to the ball screw drive opposite direction it will decrease. The decoder block
system. starts with a zero state that allows counting pulses of the
Int J Adv Manuf Technol

Fig. 3 Hardware/software design

encoder of any logical combination of the signals. Finally, designed in the Firmware that is used as a frequency divider
the desired position ud ∈ R and gains Kp , Kv are sent and the direction of the motor rotation is selected according
wirelessly through the WiFi module by the software to to the desired position that is required inside the PWM. The
be processed and used into the microprocessor where the optimum working frequency of the motor is connected to
control algorithm is implemented and it determines the the stage where the PWM signal is generated and keeps
applied voltage in the output. The position controller adopts the torque of the motor constant and generates a low
a PD-Tanh type algorithm as shown in Fig. 3. The Firmware consumption of electric current. Finally, the Firmware of the
also has a section that generates the PWM (pulse width compiled controller is implemented into a microprocessor
modulation) signal. The PWM input signal comes from that is responsible for carrying out the control algorithm
the proposed control algorithm block and in the output through its own set of precompiled instructions.
is sent to the Motor driver that location the ball screw
drive system in the desired position. This PWM signal
includes the optimum frequency determined by a motor 6 Results and performance tests
characterization technique, for this purpose, a block is
6.1 Simulation results

The control problem of position and regulation consists of


moving from an initial point to a set-point and remaining
indefinitely at the equilibrium point. In such a way that
the current position and speed asymptotically tend to the
desired position and zero speed in different initial conditions
limt→∞ [uT (t) u̇T (t)]T = [uTd 0T ]. The simulation
results of the mathematical model and control law PD-Tanh
by Eqs. 16, 23 are compared with those of sliding mode
controller SMC by Soo et al. [24]. The SMC is applied to
ball screw drive system. Table 1 shows used parameters for
PD-Tanh and SMC in the simulation analysis. The control
objective is met for all the initial conditions. Control gain
Fig. 4 State machines for receiving UART data parameters used for the SMC and the PD-Tanh are found in
Int J Adv Manuf Technol

Table 2 Control gains and parameters of the PD-Tanh and SMC, Soo Table 3 Performance values
et al. [24]
L Given value
Comparison controllers Featured parameters Given value
SMC 0.0006118
SMC K1x,z 100 P D-T anh 0.0006082
K2x,z 35
c1x,z 2
Emx,z 0.006 and which the ux (t) = (uxd − x4 ), uz (t) = (uzd −
Ecx,z 0.002 x15 ), uxd = 0.0014, and uzd = 0.0014 are the position
P D-T anh Kpx 6.5 N · m/A · rad tracking error for X-axis, position tracking error for Z-axis,
Kvx 3.2 N · m · s/A · rad desired position for X-axis, and desired position for Z-
Kpz 6.5 N · m/A · rad axis, respectively. The tracking errors in each controller are
Kvz 2.8 N · m · s/A · rad illustrated in Table 3. In contrast, the PD-Tanh and SMC
have a good performance although the PD-Tanh controller
reveals higher performance than that of the SMC system.
Table 2. For the following simulation, the initial condition
is zero and the input of the desired position uTd is 0.0014 6.2 Experimental validation
radians for screw shaft. In Fig. 5, simulation results in the
proposed control algorithm were compared with those of the The experimental system is presented in Fig. 6. This
SMC method in order to evaluate the dynamic performance system includes (a) a ball screw drive system of two-
of the motion control system of the state variables. axis, (b) two bridge-H device by chips BTS7960B driver
To evaluate the performance index between the PD- MOSFET, (c) an FPGA experimental board DE0-V , (d)
Tanh controller and the SMC controller in two-axis motion PC user interface, and (e) RN-XV Wifly device. Two
trajectory tracking, a variance value L is defined for rotary encoders with 8400 counts per revolution are attached
tracking error as follows to the X-axis and Z-axis DC motor to measure the rotor

 position. In the FPGA-based assembly code design, the PD-
1 T
L= u(t)2 · dt (25) Tanh type controller and the motion trajectory algorithm
T 0 are implemented using an assembler code design. At first,
where T = 3 represents the final time of simulation in the assembler code is described in a .txt format file,
seconds and L measures the root mean square of the position successively it is loaded into the compiler software of
error. Labview™ , then it is compiled in hexadecimal format, and
 it is sent via WiFi communication to the external ROM
u(t) = u2x (t) + u2z (t) (26) memory for the storage of the set of instructions that the

Fig. 5 Simulation results of the motion control system


Int J Adv Manuf Technol

Fig. 6 Hardware. (a) Robot XZ


by ball screw. (b) Motor driver.
(c) FPGA device. (d) Interfaz.
(e) WiFi device

microprocessor interprets and executes of the FPGA. The with a small difference. The command values are obtained
PWM signal works with different switching frequencies for from the simulation equations of the velocity profile and it
each motor regardless of the mechanical characteristics. In is compared with the system experiment. The curve of the
this way, the found frequencies for DC motors are 75 Hz tracking error of the position for each axis shows that the
and 2.4 kHz, respectively. error is in micrometers of the total movement. It can be said
Once the low-pass filter parameters are tuned and the that the proposed controller and the implementation in the
controller gains are fixed, the system is validated, and FPGA architecture confirm the validation of the system by
the trapezoidal velocity profile is implemented in the the behavior of the ball screw drive accurately.
experiment to demonstrate the operation of the system with On the other hand, in the experiment, the sinusoidal
interpolated movements in both axes at the same time. response for X-axis and Z-axis is firstly adopted to evaluate
Figure 7 shows the block diagram where the speed profile the behavior of the proposed system. In which, it consists
is implemented in the microprocessor with the proposed of contouring of desired trajectories and moving inside of
controller. Figure 8 illustrates the trapezoidal velocity a very small bounded space with high accuracy such as for
profile for each axis which corresponds to X-axis and Z- an optic detection system. Figure 9 shows the sinusoidal
axis velocity profile, showing that the proposed controller response of the position in (c) and speed in (e). The
can follow the commanded velocity, acceleration, and jerk speed is obtained by the Euler integrator filtered with a

Fig. 7 Trapezoidal velocity


profile generator implemented
in the microprocessor
Int J Adv Manuf Technol

Fig. 8 Trapezoidal profile graphics 10-mm stroke and acceleration of 5 mm/s2

sample period of 1 x 10−2 ms that is implemented in the in Hardware-based is evaluated. Figure 9 shows the output
FPGA Firmware for its integration into the PD-Tanh type signal starting at a specified time of 0.99 s. The circular
control algorithm of speed. PD-Tanh control gains were also tracking response in (f) and speed in (f) for X-axis and Z-
similarly selected by parameters of Table 2. The results axis are shown. Therefore, from the experimental results,
have shown that the position controller using the PD-Tanh it demonstrates that the proposed FPGA-based motion
presents a real tracking response in comparison with the controller for XZ-axis is effective and correct. The root
mathematical model. mean square error (RMSE) is used to quantitatively measure
In the experiment of the circular motion tracking, the adjustment level between the mathematical model and
the trajectory of the circle is parameterized in Cartesian the experimental: torques, positions, and speeds, and it is
coordinates and as a function of time. The circle trajectory given as
commands for XZ-axis input are X= xc + rcos(ωt) and 

Z= zc +rcos(ωt +π/2) where X and Z represent the desired 1 T
RMSE = ei (t)2 · dt (27)
trajectories’ inputs into the controller, xc , zc represents the T 0
coordinates of the center of the circle in (0, 0), r is the where i = 1, 2, 3, e1 , e2 , e3 are i-th error, error of torques,
radius of 4 x 10−3 m, ω is the circular trajectory frequency error of positions, and error of speeds, respectively. The
of 2.781 x 10−2 rad/s, and t = 25 s is the time evolution tracking error in each system is illustrated in Table 4. It is
with a sample time of 1 x 10−2 ms. The tracking response of shown that the dynamic model has a good approximation of
the circular motion trajectory by using PD-Tanh controller the real process because the RMSE is near zero.
Int J Adv Manuf Technol

Fig. 9 Circular trajectory response. (a) DC motor torque. (b) XZ-axis position errors. (c) Position comparisons. (d) Circular tracking of position.
(e) Speed comparisons. (f) Circular tracking of speed. (g) XZ-axis accelerations. (h) XZ-axis jerk
Int J Adv Manuf Technol

Table 4 RMSE value of the circular tracking error control for a compliant actuator with three-stage stiffness,
improvement of metal-forming quality by motion design,
RMSE Given value
for metal-forming application, and the design of an alterna-
e1 0.021263 tive controller for three-axis ball screw.
e2 0.000931
Acknowledgments This project was partially supported by FCE-
e3 0.022878 BUAP (Benemérita Universidad Autónoma de Puebla) and by 693
CONACYT). The authors wish to thank the editor and the reviewers
for their valuable comments and insightful suggestions, which helped
to improve this paper. The authors would also like to thank Miss
Aurora Vergara-Vargas at ARPA-BUAP for her valuable revision of
7 Conclusions and future work the language of this paper.

Our current approach, the mathematical model of a ball


screw drive system for two axes, was developed and all References
the dynamic variables were studied including the electrical
behavior of the DC motor. Therefore, the system represents 1. Aljasem K, Froehly L, Seifert A, Zappe H (2011) Scanning and
a more detailed general model for further analysis. tunable micro-optics for endoscopic optical coherence tomography.
The design of a PD-hyperbolic–type algorithm has J Microelectron Syst 20(6):1462–1472. http://ieeexplore.ieee.org/
been proposed based on the representation of a nonlinear document/6031791/
2. Hu S, Sun D (2011) Transportation of biological cells with
dynamic model that solves the problem of the trajectory robot-tweezer manipulation system. In: 2011 IEEE International
and speed regulation. The proposal was supported by Conference on Robotics and Automation, pp 5997–6002. http://
the stability analysis in Lyapunov sense using a strict ieeexplore.ieee.org/document/5979763/
Lyapunov function. Simulation results ensured the dynamic 3. Saketi P, Von Essen M, Mikczinski M, Heinemann S, Fatikow
S, Kallio P (2012) A flexible microrobotic platform for handling
performance of closed-loop signals. The PD-Tanh controller microscale specimens of fibrous materials for microscopic studies.
(23) was compared with that of the sliding mode control J Microbiol 248:163–171. https://doi.org/10.1111/j.1365-2818.2012.
method by Soo et al. [24]. The controllers called PD- 03660.x
Tanh were more effective than those with the SMC control 4. Chang W-T, Wu J-H (2016) An innovative optical-based method
and automation system for rapid and non-destructive measurement
strategy due to the best performance for the development of the web thickness of microdrills. Measurement 94:388–405.
of trajectory tracking tasks for ball screw drive system. https://doi.org/10.1016/j.measurement.2016.07.071
Therefore, the system, in general, is a good choice for 5. Holmes JL, Davis F, Collyer SD, Higson SPJ (2012) A new
industrial applications where any type of robust driven application of scanning electrochemical microscopy for the label-
free interrogation of antibody-antigen interactions: part 2. Ana-
systems with ball screw are used. lytica Chimica Acta 741:1–8. https://doi.org/10.1016/j.aca.2012.
Finally, the PD-Tanh controller has been successfully 07.004
implemented into a new FPGA-based hardware/software 6. Sadeghi-Goughari M, Mojra A (2015) Intraoperative thermal
design method in which a embedded processor was devel- imaging of brain tumors using a haptic-thermal robot with
application in minimally invasive neurosurgery. Appl Therm Eng
oped and configured via WiFi. This controller is represented 91:600–610. https://doi.org/10.1016/j.applthermaleng.2015.08.032
by the substantial saving cost and the comparison between 7. Hampai D, Liedl A, Cappuccio G, Capitolo E, Iannarelli M,
the processing and commercial solutions. However, the Massussi M, Tucci S, Sardella R, Sciancalepore A, Polese C,
experimental tests have demonstrated good performance Dabagov SB (2017) 2D-3D XRF elemental mapping of archeologi-
cal samples. Nuclear Instruments and Methods in Physics Research
and approximation with the theoretical model. Furthermore, Section B: Beam Interactions with Materials and Atoms 402:
the system is capable of controlling the position of the screw 274–277. https://doi.org/10.1016/j.nimb.2017.04.020
shaft by the DC motors if their controller parameters are 8. Cocco D, Idir M, Morton D, Raimondi L, Zangrando M
properly tuned. The controller can be implemented on other (2018) Advances in X-ray optics: from metrology characteriza-
tion to wavefront sensing-based optimization of active optics.
FPGA families, even varying manufacturers without any Nuclear Instruments and Methods in Physics Research Section A:
change in the design. If the application requires three axes Accelerators, Spectrometers, Detectors and Associated Equipment.
or more to be controlled, more blocks of the controller into https://doi.org/10.1016/j.nima.2018.03.026
of the processor and stages can be included. 9. Cunico MWM (2013) Optimization of positioning system of FDM
machine design using analytical approach. Rapid Prototyp J 19:114–
Our next approach is exploring methods to construct 152. https://doi.org/10.1108/13552541311312139
external memory blocks on RAM array for our micropro- 10. Cunico MWM (2013) Design of an FDM positioning system and
cessor with an external interface completely in order to application of an error-cost multiobjective optimization approach.
implement controllers and to reduce the logic gates and Rapid Prototyp J 19:344–352. https://doi.org/10.1108/RPJ-11-2011-
0117
memory. As future work, other application’s approaches 11. Feng G-H, Pan Y-L (2012) Investigation of ball screw preload
for this study on modeling, control, and experimental val- variation based on dynamic modeling of a preload adjustable feed-
idation can be considered such as continuous tracking drive system and spectrum analysis of ball-nuts sensed vibration
Int J Adv Manuf Technol

signals. Int J Mach Tools Manuf 52:85–96. https://doi.org/10.1016/j. 28. Chowdhury AR, Sasidhar S, Panda SK (2016) Bio-harmonized
ijmachtools.2011.09.008 control experiments of a carangiform robotic fish underwater vehicle.
12. Wang D, Lu Y, Zhang T, Wang K, Rinoshika A (2015) Effect Adv Robot 30:338–351. https://doi.org/10.1080/01691864.2015.
of stiffness of rolling joints on the dynamic characteristic of 1114905
ball screw feed systems in a milling machine. Shock Vib:1–11. 29. Reyes-Cortés F, Chávez-Olivares C, González-Galván EJ (2018)
https://doi.org/10.1155/2015/697540 A family of hyperbolic-type explicit force regulators with active
13. Li F, Jiang Y, Li T, Du Y (2017) An improved dynamic velocity damping for robot manipulators. J Robot 2018:1–15.
model of preloaded ball screw drives considering torque trans- https://doi.org/10.1155/2018/9324623
mission and its application to frequency analysis. Adv Mech 30. Amornwongpeeti S, Ekpanyapong M, Chayopitak N, Monteiro
Eng 1687814017710580:9. https://doi.org/10.1177/1687814017710 JL, Martins JS, Afonso JL (2015) A single chip FPGA-based
580 solution for controlling of multi-unit PMSM motor with time-
14. Dong L, Tang WC (2014) Adaptive backstepping sliding division multiplexing scheme. Microprocess Microsyst 39:621–633.
mode control of flexible ball screw drives with time-varying https://doi.org/10.1016/j.micpro.2015.08.011
parametric uncertainties and disturbances. ISA Trans 53:110–116. 31. Alabdo A, Pérez J, Garcia GJ, Pomares J, Torres F (2016) FPGA-
https://doi.org/10.1016/j.isatra.2013.08.009 based architecture for direct visual control robotic systems. Mecha-
15. Huang Y-C, Chen X-Y (2017) Investigation of a ball screw tronics 39:204–216. https://doi.org/10.1016/j.mechatronics.2016.
feed drive system based on dynamic modeling for motion control. 05.008
Advances in Technology Innovation 2:29–33. http://ojs.imeti.org/ 32. Dong J, Wang T, Li B, Liu Z, Yu Z (2017) An FPGA-based low-
index.php/AITI/article/view/272 cost VLIW floating-point processor for CNC applications. Micro-
16. Ansoategui I, Campa FJ (2017) Mechatronics of a ball screw process Microsyst 50:14–25. https://doi.org/10.1016/j.micpro.2017.
drive using an N degrees of freedom dynamic model. Int J Adv 02.001
Manuf Technol 93:1307–1318. https://doi.org/10.1007/s00170-017- 33. Beghi A, Marcuzzi F, Martin P, Tinazzi F, Zigliotto M (2017)
0597-2 Virtual prototyping of embedded control software in mechatronic
17. Sun K, Mou S, Qiu J, Wang T, Gao H (2018) Adaptive fuzzy systems: a case study. Mechatronics 43:99–111. https://doi.org/10.
control for non-triangular structural stochastic switched nonlinear 1016/j.mechatronics.2017.03.004
systems with full state constraints. IEEE Transactions on Fuzzy 34. Martinez-Prado M, Franco-Gasca A, Herrera-Ruiz G, Soto-
Systems:1–14. https://doi.org/10.1109/TFUZZ.2018.2883374 Dorantes O (2013) Multi-axis motion controller for robotic
18. Qiu J, Sun K, Wang T, Gao H (2019) Observer-based fuzzy applications implemented on an FPGA. Int J Adv Manuf Technol
adaptive event-triggered control for pure-feedback nonlinear systems 67:2367–2376. https://doi.org/10.1007/s00170-012-4656-4
with prescribed performance. IEEE Trans Fuzzy Syst, pp 1–11.
35. Muresan CI, Folea S, Mois G, Dulf EH (2013) Development
https://doi.org/10.1109/TFUZZ.2019.2895560
and implementation of an FPGA based fractional order controller
19. Maeda GJ, Sato K (2008) Practical control method for ultra-
for a DC motor. Mechatronics 23:798–804. https://doi.org/10.1016/j.
precision positioning using a ballscrew mechanism. Precis Eng
mechatronics.2013.04.001
32:309–318. https://doi.org/10.1016/j.precisioneng.2007.10.002
36. Khubalkar SW, Junghare AS, Aware MV, Chopade AS, Das
20. Qiu Z-C (2012) Adaptive nonlinear vibration control of a Carte-
S (2018) Demonstrative fractional order - PID controller based
sian flexible manipulator driven by a ballscrew mechanism. Mech
DC motor drive on digital platform. ISA Trans 82:79–93.
Syst Sig Process 30:248–266. https://doi.org/10.1016/j.ymssp.2012.
https://doi.org/10.1016/j.isatra.2017.08.019
01.002
37. Ponce P, Molina A, Bastida H, MacCleery B (2015) Real-time
21. Xiao S, Li Y (2013) Optimal design, fabrication, and control of
hardware ANN-QFT robust controller for reconfigurable micro-
an XY Micropositioning stage driven by electromagnetic actuators.
machine tool. Int J Adv Manuf Technol 79:1–20. https://doi.org/10.
IEEE Trans Ind Electron 60:4613–4626. https://ieeexplore.ieee.org/
1007/s00170-014-6710-x
document/6244873
22. Dong L, Tang WC (2014) Adaptive backstepping sliding 38. Vyas S, Gupte A, Gill CD, Cytron RK, Zambreno J, Jones
mode control of flexible ball screw drives with time-varying PH (2013) Hardware architectural support for control systems
parametric uncertainties and disturbances. ISA Trans 53:110–116. and sensor processing. ACM Trans Embed Comput Syst 13:16.
https://doi.org/10.1016/j.isatra.2013.08.009 https://doi.org/10.1145/2514641.2514643
23. Rajabi N, Abolmasoumi AH, Soleymani M (2017) Sliding mode 39. Sampaio RC, Motta JMST, Llanos CH (2017) An FPGA-based
trajectory tracking control of a ball-screw-driven shake table based controller design for a five degrees of freedom robot for repairing
on online state estimations using EKF/UKF. Struct Control Health hydraulic turbine blades. J Braz Soc Mech Sci Eng 39:3121–3136.
Monit 25:1545–2255. https://doi.org/10.1002/stc.2133 https://doi.org/10.1007/s40430-017-0814-9
24. Park S-C, Lee J-M, Han S-I (2018) Tracking error constrained 40. Kung Y-S, Than H, Chuang T-Y (2018) FPGA realization of a
terminal sliding mode control for ball-screw driven motion systems self-tuning PID controller for X-Y table with RBF neural network
with state observer. Int. J. Precis. Eng. Manuf 19:359–366. identification. Microsyst Technol 24:243–253. https://doi.org/10.
https://doi.org/10.1007/s12541-018-0043-x 1007/s00542-016-3248-x
25. Gutiérrez-Frias OO, Martı́nez-Garcı́a JC, Moctezuma RAG 41. Huang H-C, Tsai C-C (2009) FPGA implementation of an
(2009) PD control for vibration attenuation in a physical pendulum embedded robust adaptive controller for autonomous omnidirec-
with moving mass. Math Probl Eng, pp 11. https://doi.org/10.1155/ tional mobile platform. IEEE Trans Ind Electron 56:1604–1616.
2009/179724 https://doi.org/10.1109/TIE.2008.2009524
26. Carrillo-Serrano RV, Hernández-Guzmán VM, Santibáñez V 42. Hajduk Z, Trybus B, Sadolewski J (2015) Architecture of
(2010) PD control with feedforward compensation for rigid FPGA embedded multiprocessor programmable controller. IEEE
robots actuated by brushless DC motors. Robotica 29:507–514. Trans Ind Electron 62:2952–2961. https://doi.org/10.1109/TIE.2014.
https://doi.org/10.1017/S0263574710000329 2362888
27. Chowdhury AR, Panda SK (2015) Brain-map based carangiform 43. Zhao C, Mei K, Zheng N (2014) Design of write merging and
swimming behaviour modeling and control in a robotic fish underwa- read prefetching buffer in DRAM controller for embedded proces-
ter vehicle. Int J Adv Robot Syst 12:52–65. https://doi.org/10.5772/ sor. Microprocess Microsyst 38:451–457. https://doi.org/10.1016/j.
60085 micpro.2014.03.010
Int J Adv Manuf Technol

44. Dadalau A, Mottahedi M, Groh K, Verl A (2010) Parametric 46. Fernando R, Jaime C, Miguel AL, Manuel C (2012) Square root
modeling of ball screw spindles. Prod Eng Res Devel 4:625–631. type-control for robot manipulators. Int J Adv Robotic Sy Meas
https://doi.org/10.1007/s11740-010-0264-z 9:1–8. https://doi.org/10.5772/52500
45. Fabien B (2009) Lagrange’s equation of motion. Analytical sys- 47. Khalil HK (1996) Nonlinear systems. Prentice Hall, New Jersey
tem dynamics. Springer, Boston. https://doi.org/10.1007/978-0-387-
85605-6 3
Publisher’s note Springer Nature remains neutral with regard to
jurisdictional claims in published maps and institutional affiliations.

Affiliations
M. A. Vargas-Treviño1 · J. Lopez-Gomez1 · S. Vergara-Limon1 · A. Palomino-Merino1 · R. Torres-Reyes1 ·
P. Garcia-Ramirez2

J. Lopez-Gomez
[email protected];
http://148.228.54.14/automation-2018/
S. Vergara-Limon
[email protected];
http://148.228.54.14/automation-2018/
A. Palomino-Merino
[email protected];
http://148.228.54.14/automation-2018/
R. Torres-Reyes
[email protected];
P. Garcia-Ramirez
[email protected]
1 Automation Group, Facultad de Ciencias de la Electrónica,
Bldg. 1FCE6, Benemérita Universidad Autónoma de Puebla,
Av San Claudio and Blvd 18 Sur, Ciudad Universitaria,
Edificio 1FCE6, Laboratorio de Robótica y Control,
Jardines de San Manuel, 72570 Puebla, Pue, Mexico
2 Engineering Institute, Universidad Veracruzana, S. Juan Pablo II,
94294, Boca del Rı́o, VER, Mexico

You might also like