Asi 03 00024 v2 PDF
Asi 03 00024 v2 PDF
Abstract: Throughout this paper, the model, its parameter estimation and a controller for a
solution using a DC motor with a gearbox worm, coupled to a non-rigid joint, will be presented.
First, the modeling of a non-linear system based on a DC Motor with Worm Gearbox coupled
to a non-rigid joint is presented. The full system was modeled based on the modeling of two
sub-systems that compose it—a non-rigid joint configuration and the DC motor with the worm
gearbox configuration. Despite the subsystems are interdependent, its modelling can be performed
independently trough a carefully chosen set of experiments. Modeling accurately the system is
crucial in order to simulate and know the expected performance. The estimation process and the
proposed experimental setup are presented. This setup collects data from an absolute encoder, a load
cell, voltage and current sensors. The data obtained from these sensors is presented and used to
obtaining some physical parameters from both systems. Finally, through an optimization process,
the remaining parameters are estimated, thus obtaining a realistic model of the complete system.
Finally, the controller setup is presented and the results obtained are also presented.
Keywords: DC motor; worm gearbox; PID control; non-linear system; non-rigid joint
1. Introduction
DC (direct current) motors are widely used components as electrical actuators, in cars, trains and
driving high power hoisting machines, milling machines, among others. A field in which DC motors
are also widely used is robotics. Whether using these to change the angle of a joint of a robotic
manipulator, to drive a vehicle’s traction system, or even to rotate the sensor of a LiDAR (Light
Detection and Ranging), there are numerous uses for these in robotics. Another example are the
legged-robotic vehicles that can be found in [1]. However, they have a non-linear behavior that results
from the fact that they cannot rotate at any supply voltage, always having a minimum rotation torque
(starting torque) that prevents rotation until a when a certain voltage is reached, which is commonly
denominated by the motor dead zone. To compensate for these, several control methods can be applied,
such as [2–4], just to state a few.
Worm gearboxes are typically used when compactness is an important factor, as well as an
orthogonal redirectioning is required. Yet, one of the greatest advantage of worm gears is its unique
self-locking characteristic. This means that the gear can only rotate by its input side, and cannot be
actuated through the load side. As Ye and Wu [5] state, these features make worm gearboxes useful for
multiple types of robotic vehicles and manipulators. However, any gearbox has a main non-linearity,
which is it allows some movement of its output shaft without rotating its input, called backlash.
So, using a DC motor with a worm gearbox is a solution that guarantees that, for example in a
robotic manipulator, when the arm’s joint reaches the desired angle it does not move until the next
required change. It can also be used on vehicles with legged locomotion systems, which can benefit
from this type of motors since the joints are blocked in the desired position. Regarding this kind
of locomotion, another advantage is that the vehicle can stay immobilized, while guaranteeing the
position of the leg, even when the power is down.
To increase safety and robustness in the performance of industrial robots, which otherwise could
easily break their joints, or hurt someone, the use of non-rigid joints is increasingly found in the
literature and in the industry. These mechanisms contain elastic components (such as springs), which
introduce a mechanical energy storage in the system, potentially increasing the maximum output
power [6]. In [7], Giusti et al. have designed and implemented successfully a controller based on
the analysis of the inverse dynamics of the non-rigid joint, and have applied a structured controller.
The testbed mixes rigid and elastic joints on an interesting configuration. The usage of non-rigid joints
for exoskeletons is also expanding, possibly due to the decrease in the size of the actuators. An example
is the work presented in [8] for a variable viscoelastic joint system. Another interesting application
example for non-rigid joints are deployable mechanisms, as the one presented by Zhang et al. [9], where
the singularities of a system like the presented are analyzed and successfully avoided. The Quasi-Direct
Drive is also an example of the technology applied to actuate an non-rigid joint, as presented in [10]
for a quadruped.
As it can be easily understood, all the mentioned research has a same primary step—the modeling
phase—applied to mathematically translate the behavior of the system. Modeling the system is crucial
to understand its behaviour under multiple conditions and also to develop its control. Having the
model, one can put a signal in the process input and analyse how the system react, obtaining the
system output. The system’s transfer function can be interpreted as the process model. Robotic systems
often include DC motors and having a realistic model is crucial to improve the control performance.
This is required to be able to design suitable controllers, test them in simulation and obtain relevant
results. Thus, the closer to reality the developed model is, the better designed the controller can be in
theory and applied in practice. However, all the robotic systems mentioned above include components
that adds uncertainties and non-linearities to it, making it more complex to model.
Obtaining a realistic model of the system to be controlled is an advantage when defining and
tuning the controller. In addition to being more informative to decide which kind of controller is
more appropriate, obtaining the system response to various inputs can be done with increased realism.
Obtaining a more realistic model allows to know, as close to reality as possible, how the system
will behave after designing and tuning the controllers [11]. It also allows to theoretically test, as an
instance, the system limits, as well as combinations of controllers, or speed profiles. With such a model,
the system’s performance also increases significantly. In order to be able to validate the developed
approach, PID controllers [12] will be used. These are relatively easy to implement and provide a
realistic use case.
Estimation techniques can be applied to help modeling the system, applied to estimate the
unknown or difficult to quantify parameters with precision. These techniques can be applied online or
offline, as mentioned by Dupuis et al. [13], but can, sometimes, result in an inaccurate estimation of
the parameters.
Examples of online parameter identification are present in [14,15], from evolutionary algorithms,
such as Montazeri et al. use in [16] to recursive methods as Gonzalez et al. [17] use for their third-order
modeling. On offline methods, examples can be [18–20]. Multiple techniques can be applied through
the use of neural networks, as explained in [21] or even experimentally, as the authors of [22,23] present.
Considering that online estimation methods are relatively more complex, as well as that the
conditions associated with the motor presumably will not change when it is actuated and that the
Appl. Syst. Innov. 2020, 3, 24 3 of 19
essential characteristics of the non-rigid joint developed for this work are not expected to suffer
structural changes, the estimation of its dynamic parameters will be carried out with offline techniques,
performed through real hardware tests. The assumptions made for the models are set by the authors
of [19].
The process of modeling the subsystems individually and the whole system, as well as controlling
the final system will be presented. An introduction to the topic is performed in Section 1, and the
proposed models will be introduced throughout Section 2. Section 3 presents the experimental setup
specially built to test the obtained models ans in Section 4 will present the results obtained by the
performed experiments. Finally, in Section 5 are presented the conclusions and future work.
2. Proposed Models
Across this section, the model for the DC motor with worm gearbox will be presented. After that,
the model for the non-rigid joint will be introduced. To estimate the parameters of the sub-systems,
some experimental tests must be performed. For this, an experimental setup was created, being further
presented in Figure 5.
where vi is the voltage applied to the system (V), i is the electrical current (A), R the resistance (Ω), L the
inductance (H), and Ev the Back Electromotive Force (V). This force is obtained through the second
presented equation, where k is the motor constant, and ω the angular speed (rad/s). In Equation (3),
J represents the moment of inertia (kg·m2 ), Tm the motor torque (N·m), obtained by the fourth equation,
Bv the viscous friction coefficient (N·m·s) and Tq (N·m) the static friction torque. The model used
for the static friction Tq assumes that the Tq = Tm while Tm < Tq_max . This explains the existence
of the motor dead zone, which is a non-linear element of the model. Despite this, it is neglected,
since otherwise it will turn the system into a non-linear one, and as one can see from the first Figure
presented in Section 4, the dead zone is almost nonexistent.
In the Laplace domain, the system can be represented as:
vi ( s ) = R · i ( s ) + s · L · i ( s ) + k · ω ( s ) (5)
J · s · ω (s) = k · i (s) − Bv · ω (s) (6)
Appl. Syst. Innov. 2020, 3, 24 4 of 19
ω (s) k
= (7)
vi ( s ) (s · J + Bv ) · ( R + s · L) + k2
Adjusting some variables, to facilitate its later use in the estimation of some parameters,
it becomes:
k
J·L
(8)
Bv R· Bv +k2
s2 + s( RL + J )+( J·L )
There are some hardware tests that allow to estimate some unknown motor constants, like R, k, Bv
and Tq . These tests are simple to perform and consist on:
• Powering the motor with multiple pre-known values of supply voltage, allowing it to reach the
steady-state—This test consists in powering the motor with several different pre-known supply
voltages and measure the angular speed ω at the steady-state throughout the process;
• Input a voltage step to the motor terminals—This test consists in powering the motor with a voltage
step and obtain its response to this signal, to verify which model suits the best to the tested model.
Given the proposed non-rigid joint, its model will become as follow:
τK = K · (θm − θ j ) (9)
τB = B · (θ̇m − θ̇ j ) (10)
J · θ̈ = ∑ τ = τK + τB (11)
dω 1
= (−Kθ − Bω̇ ) (12)
dt J
d2 θ ( t ) dθ (t)
J· +B· + K · θ (t) = 0 (13)
dt dt
dθ
J · (s2 θ (s) − sθ (t = 0) − (t = 0)) + B · (sθ (s) − θ (t = 0)) + K · θ (s) = 0 (14)
dt
Appl. Syst. Innov. 2020, 3, 24 5 of 19
Considering that the initial conditions can be not null, the following variables take values:
θ ( t = 0) = θ0 (15)
dθ (t = 0)
= ω ( t = 0) = 0 (16)
dt
Js2 θ (s) − Jsθ0 + Bsθ (s) − Bθ0 + Kθ (s) = 0 (17)
θ0 · ( Js + B)
θ (s) = (18)
Js2 + Bs + K
(s + BJ )
θ ( s ) = θ0 · (19)
s2 + ( BJ )s + ( KJ )
Similar to what was described in the above subsection, for modeling the non-rigid joint, as well as
for estimating the parameters associated with it, some hardware tests will also be performed, in order
to obtain parameters J, K and B, consisting of:
• Pulling the link attached to the non-rigid joint to a certain angle - In this test, the link attached to
the non-rigid joint is pulled manually for a certain set of increasing angles. For those angles the
torque is measured. Then, the link is rotated in the same way to the negative side and the same
procedure is applied;
• Pulling the link attached to the non-rigid joint and releasing it, capture the angular speed an the angle
until it stabilizes - Through this test, the link attached to the non-rigid joint is pulled manually and,
after reaching a determined angle, is released and left to stabilize until it reaches the rest angle.
The angular speed, the torque and the angle are sampled with a period of 10 ms;
2.3. Control
Taking into account its use for a robotic manipulator joint, it was then decided to use an motor
with a worm gearbox, specifically the JGY-371 one. This motor has a rotary encoder, it is powered
at 12VDC and it was defined that the motor speed would be 20 rpm, which is the best solution for
the purpose defined for the project. With this choice, despite the low maximum angular speed of the
motor, the joints can benefit from more torque. The issue of the sudden changes in speed can shorten
the life of the motor.
Therefore, the decision of creating an acceleration ramp when the controller activate or
deactivate was taken, having the system 3 sub profiles (acceleration, steady state, deceleration).
Temporal divisions are called t0 , t1 , t2 and t f , dividing areas A, B and C of the profiles. To achieve
this, there were created functions for the angular acceleration, velocity and position of the motor shaft.
To obtain a smoother velocity ramp, it was decided to go with a profile with cubic function. Having
decided this, it was necessary to produce a quadratic function for the angular acceleration, which is
described below
4· α m
− t1 2 · t · ( t − t 1 )
if t0 < t < t1
α(t) = 0 if t1 < t < t2
4· α m · t · ( t − t )
if t2 < t < t f
t 2 2
2
2· α m
· t2 − 43 · · t3
αm
t1 t1 2
if t0 < t < t1
ω (t) = ωm if t1 < t < t2
− 2· α m · t 2 + 4 ·
αm
· t3 if t2 < t < t f
t 1 3 t1 2
The previous equations represent the intended angular velocity profile. The nomenclature used is
also presented in the acceleration equations, with the exception of the ω (t) (rad/s), which represents
the angular velocity.
2
· t3 − · t4
αm αm
3 · t1 3· t1 2
if t0 < t < t1
θ (t) = ωm · t if t1 < t < t2
− 2 ·
αm
· t3 + 3α·tm2 · t4 if t2 < t < t f
3 t1 1
Finally, the equations for calculating the angular position of the motor shaft are presented above,
with θ (t) representing the angle (rad). Since the velocity profile reaches the wanted ω when t = t1 , ωm
can be obtained through the equation
2 · α m · t1
ω ( t1 ) = ω m =
3
and the instant t1 can be calculated through the formula presented next
3 ωm
t1 = ·
2 αm
Based on all the mentioned equations, and to become clearer what, theoretically, must be the
motor behaviour, the profiles for angular acceleration, velocity and position are presented in Figure 2,
in a graphical form. Figure 3 represents the profiles, already after the mentioned functions were
implemented in programming, having obtained the graphics that are presented.
As already mentioned, the controllers to be used will be PID controllers. Thus, in order to validate
the developed models, a cascade controller was designed, with the use of a position and a speed
controller. It was chosen to only introduce a block of Feed Forward in the latter, and the set was
represented in the block diagram in Figure 4.
mentioned variables, there were used the following sensors, being the referred acquisition system
shown in the right side of Figure 5:
As mentioned, a passive non-rigid joint system was designed and developed, making it possible
to test the model and apply the desired controllers. This system is presented in Figure 6.
For this joint tests, there is the need to know its angular position, as well as the applied torque.
So, to obtain the exact angular displacement, an absolute encoder, consisting in a contactless absolute
angular position sensor, with 14-bit resolution and immune to external magnetic stray fields, was
placed exactly concentrically with the axis of rotation of the joint. Also, to obtain the torque, a straight
bar load cell, capable of measuring forces up to 10 kg, was placed in the center of the link to evaluate
the exerted force which can, using the distance to the rotational axis, be converted to the applied
torque. The left side of Figure 5 presents the implemented solution, and the interaction between
the subsystems. The whole system was powered by a 12VDC power supply to perform the tests.
How these values are applied in practice will be detailed in Section 4.
4. Results
vi ( t ) i (t)
=R +k (20)
ω (t) ω (t)
k · i (t) = Bv · ω (t) + Tq (21)
Analyzing the trendlines, and since Equation (20) corresponds to the Figure 8, it is possible
to directly obtain that the motor resistance R and constant k are with values 8.6538 Ω and 0.0174,
respectively. Also, considering that Equation (21) is depicted in Figure 9, the values of Tq and Bv are
0.608 × 10−3 and 5.975 × 10−7 , respectively. These values associated with the motor-gearbox system
are presented in Table 1.
At this point, it is possible to estimate the parameters that are missing from the model, using the
already calculated parameters. Thus, considering the values of R, k, Bv and Tq , it is possible to estimate
the values of L and J associated with the system. For this estimation, the second test was performed,
in which the system’s response to a voltage step in the motor input is analyzed over time.
Voltage Current
Figure 8. Plot of AngularSpeed vs. AngularSpeed .
Parameters
R 8.6538 Ω
k 0.0174
Tq 0.6082 × 10−3 N·m
Bv 5.9751 × 10−7 N·m·s
J 8.5075 × 10−7 kg·m2
L 0.0238 H
To analyze the adequacy of the model to the real system, first and second order models were used,
as described in Equations (22), (24) and (25), respectively. These models represent functions with one
and two poles, being Equations (22), (24) and (25) representative of W(s). Then, Equations (23) and (27)
refer to that same system, but in the time-domain ω (t).
k1
(22)
( s + a1 )
k 1 · (1 − e − a1 · t ) (23)
Using a1 as the average of the angular speeds after the system stabilizes, reaching the steady-state,
and solving the equation to obtain the minimum error between the real and the model’s angular speed,
the values of k1 and a1 are 0.3684 and 42.4062, respectively.
k2 · a2 · b2
(24)
(s + a2 )(s + b2 )
k2
(25)
s2 + s( a2 + b2 ) + ( a2 · b2 )
R Bv
a2 = b2 = (26)
L J
k2 k2 k2
− · e − a2 · t − · e−b2 ·t (27)
a2 · b2 a2 (b2 − a2 ) b2 · ( a2 − b2 )
The second-order model has parameters k2 , a2 and b2 , and the optimization cycle was also
performed to reach the minimum error between the real and estimated angular speed. From the data
obtained from this optimization, the parameters k2 , a2 and b2 reached values 0.3684, 315.9816 and
47.7916, respectively. The representation of the step response for both models can be found in Figure 10,
where the blue graphic represents the obtained data, the green one is the first-order system and the
orange one represents the second-order system. Also, Figure 11 represents the value of the absolute
error from the first and second order models over time and these errors are summarized in Table 2.
As can be seen, the second order model is undoubtedly the most suitable model, so its values will
be used for the estimation of the motor parameters. Thus, it is found that J and L are, approximately,
8.51 Kg·m2 and 0.0238 H, respectively.
account the collected data, this task was considered to be performed successfully, since the angular
displacement red by the sensor and by a physical angle meter were very similar.
For the first set of tests, the system was acquiring data continuously, in order to recognize the
variations in force exerted on the cell, with information of the angle. This test allows to know what is
the behavior of the joint when its the center of rotation is locked, and the posterior link is applying
a force on it. This force is traduced to a torque, since it was put with some distance to the center.
The results from this test are presented graphically in Figure 13. Since the joint is already coupled
to a motor attached to a gearbox system, and since the gearbox presents some backlash, the joint
presents a dead zone. This behaviour is clearly visible in the figure, in the red line of the graph where,
although the exerted force is practically zero, the angle has a significant variation. Considering that
the motor is stopped, the difference between the angles of the motor shaft and the joint is obtained by
the angle in the absolute encoder. So, using Equation (9), and calculating the average of the straight
slopes of the values from the positive and the negative torques, the value of K is obtained and is equal
to 7.3035.
Then, to find the value of J and B, it was necessary to proceed to a second set of tests. This consists
of placing the system to acquire data, rotating the posterior link to a certain angle and releasing it,
allowing its free oscillation until reaching the equilibrium point again. Using Equation (19), and the
inverse Laplace transform, the following Equations could be used to represent the system in the
time domain. s
( ωαn − ξ · ωn )2 −ξωn t
q
θ ( t ) = θ0 · + 1 · e sin ( ω n · 1 − ξ 2 · t + φ) (28)
1 − ξ2
p
2
−1 ω n 1 − ξ
φ = tan ( ) (29)
α − ξωn
Having defined the approximation function, and since the value of K was already estimated,
the optimization process that minimizes the absolute error to the obtained angular position was put to
run and the values of the variables for Equation (28) were found. Establishing the parallelism between
the function in the Laplace domain used and Equation (19), after the optimization process, the values
found for B and J were 0.0416 and 0.0085.
Considering a simple pendulum configuration, J = m · r2 . If a weight of 269 gr. is put on a
known point of the link, there is a known moment of inertia. Taking the value obtained for J = 0.0085,
and placing the known mass approximately 18 cm from the axis of rotation, one obtain an estimated
value for the distance r = 17.78 cm, an error of less than 1%, which indicates that the estimation of
the parameters associated with the joint has been carried out successfully. All the obtained estimated
parameters are compiled in Table 3.
Parameters
K 7.3035 N/m
B 0.0416 N·s/m
J 0.0085 Kg·m2
In Figure 14, in blue there is the real measured behaviour of the joint, while in red there is the
estimated model of the joint. Actually, approximately from t = 1s, it begins to be noticed that the model
differs somewhat from the performed measurements. However, this difference can be explained by
the non-linear behavior presented by the dead zone of the joint, which will have to be compensated by
a suitable controller. Error results from the model are presented in Table 4, while the value of the dead
zone is approximately 0.23 rad, as can be seen in Figure 13. Also, as it can be inferred by Figure 14,
the second-order model does not fit very well after the 1s mark, approximately, because of joint’s
backlash, since the model is optimized for bigger oscillations. Figure 15 represents the absolute error
along the time, with respect to Figure 14.
Until 1 s After 1 s
Maximum Absolute Error (o ) 10.5 2.93
Average Absolute Error (o ) 1.66 1.11
Absolute Error Sum (o ) 84.8 75.7
Maximum Relative Error (%) 2.305 17.1
Average Relative Error (%) 0.109 0.654
Appl. Syst. Innov. 2020, 3, 24 15 of 19
4.3. Control
To validate the models, the control block shown in Figure 4 was implemented, which allowed
the defined profiles to be tested in the experimental setup. To check the multiple types of controllers,
a function has been developed that allows to choose the controller to be used. To test the differences,
two experiments were carried out:
• Using only a position controller, with a step reference—This test consists in obtaining the motor
response to a step reference, using only a position controller and evaluating its response through
the angular position from the absolute encoder;
• Using a position and a velocity controller, using to the developed profiles as references—This test is similar
to the previous one consisting in obtaining the motor response to the references created by the
Appl. Syst. Innov. 2020, 3, 24 16 of 19
developed profiles, using position and velocity controllers and again evaluating its response
through the angular position from the absolute encoder;
In each test, the reference for the angular position was defined as 1.2 radian. In Figure 16 the
position reference was set with a step, being the velocity left uncontrolled. When the position is
reached, the motor stops its movement and the non rigid joint keeps oscillating until the position
is reached.
In Figure 17, the position and velocity profiles are given as a reference, and the position is reached
without any oscillation and without any overshoot.
Both experiments are overlapped to be compared in Figure 18 and it is clear that the modeled
profiles are a better option than the first one.
From Figure 18, it can be analyzed that, despite the red curve does not have any overshoot, while
the yellow controller has, the settle time is also smaller. Table 5 also helps to evaluate the errors
in steady-state.
Regarding the joint, the tests allowed to obtain approximate physical model parameters,
like the damping constant and moment of inertia. Comparing the obtained data and the simulated
second-order model, it is easily verified that the considered model is suitable. However, differences
are effectively noticed, which come from the joint’s dead zone.
For the DC motor subsystem, based on the obtained data, it was possible to obtain a set of
measures that allowed, using equations from the physical model of the DC motor, to estimate simpler
parameters related to the system, namely its resistance and constant. Then, two models, first and
second order, were considered. Using previously obtained data and optimizing to minimize the
estimated angular velocity error, it was possible to verify that the second-order model is the one
that best reflects the physical behavior of the motor and to model its impedance and moment of
inertia parameters.
Finally, regarding the developed controller, the obtained experimental results show clearly that it
was a good choice, since it can work with the specificities of both the worm gearbox and the non-rigid
joint, obtaining minimum overshoot, low settle time and accurate angular positioning.
In terms of future work, it will be interesting to use the developed setup to one of the mentioned
applications and evaluate its behaviour. it will also been carried out a study about the behaviour of
the system under disturbances. The first one will probably be to use the developed work as a 4DOF
manipulator with non-rigid joints, for industrial purposes.
Author Contributions: Conceptualization, V.H.P. and P.C.; Methodology, P.C. and V.H.P.; Software, P.C. and V.H.P.;
Validation, J.G., P.C. and V.H.P.; Investigation, V.H.P.; Writing—original draft preparation, V.H.P.; writing—review
and editing, J.G. and P.C. All authors have read and agreed to the published version of the manuscript.
Funding: This research have received no external funding.
Conflicts of Interest: The authors declare no conflict of interest.
References
1. Semini, C.; Wieber, P.B. Legged Robots. In Springer Encyclopedia of Robotics; Springer: Berlin/Heidelberg,
Germany, 2020; Volume 83, pp. 1–11, in press.
2. Zhou, Z.; Tan, Y.; Xie, Y.; Dong, R. State estimation of a compound non-smooth sandwich system with
backlash and dead zone. Mech. Syst. Signal Process. 2017, 83, 439–449. [CrossRef]
3. Galuppini, G.; Magni, L.; Raimondo, D.M. Model predictive control of systems with deadzone and saturation.
Control Eng. Pract. 2018, 78, 56–64. [CrossRef]
4. Castillo, O.; Aguilar, L.T. Fuzzy Control for Systems with Dead-Zone and Backlash. In Type-2 Fuzzy Logic in
Control of Nonsmooth Systems; Studies in Fuzziness and Soft Computing; Springer: Cham, Switzerland, 2019;
Volume 373.
5. Yeh, T.J.; Wu, F.K. Modeling and robust control of worm-gear driven systems. Simul. Model. Pract. Theory
2009, 17, 767–777. [CrossRef]
6. Liu, H.; Cui, S.; Liu, Y.; Ren, Y.; Sun, Y. Design and vibration suppression control of a modular elastic joint.
Sensors 2018, 18, 1869. [CrossRef] [PubMed]
7. Giusti, A.; Malzahn, J.; Tsagarakis, N.G.; Althoff, M. On the combined inverse-dynamics/passivity-based
control of elastic-joint robots. IEEE Trans. Robot. 2018, 34, 1461–1471. [CrossRef]
8. Okui, M.; Iikawa, S.; Yamada, Y.; Nakamura, T. Variable viscoelastic joint system and its application to
exoskeleton. In Proceedings of the 2017 IEEE/RSJ International Conference on Intelligent Robots and
Systems (IROS), Vancouver, BC, Canada, 24–28 September 2017; pp. 3897–3902.
9. Zhang, T.; Huang, H.; Guo, H.; Li, B. Singularity avoidance for a deployable mechanism using elastic joints.
J. Mech. Des. 2019, 141, 094501. [CrossRef]
10. Kau, N.; Schultz, A.; Ferrante, N.; Slade, P. Stanford doggo: An open-source, quasi-direct-drive quadruped.
In Proceedings of the 2019 International Conference on Robotics and Automation (ICRA), Montreal, QC,
Canada, 20–24 May 2019; pp. 6309–6315.
11. Brynjarsdóttir, J.; O’Hagan, A. Learning about physical parameters: The importance of model discrepancy.
Inverse Probl. 2014, 30, 114007. [CrossRef]
Appl. Syst. Innov. 2020, 3, 24 19 of 19
12. Åström, K.J.; Hägglund, T. PID Controllers: Theory, Design, and Tuning; Instrument Society of America
Research Triangle Park: Durham, NC, USA, 1995; Volume 2.
13. Dupuis, A.; Ghribi, M.; Kaddouri, A. Multiobjective genetic estimation of DC motor parameters and load
torque. In Proceedings of the 2004 IEEE International Conference on Industrial Technology, Hammamet,
Tunisia, 8–10 December 2004; Volume 3, pp. 1511–1514.
14. Liu, G.; Hu, C. Adaptive Modeling of Brushless DC Motor Drive System. In Proceedings of the 2018
IEEE 4th International Conference on Control Science and Systems Engineering (ICCSSE), Wuhan, China,
21–23 August 2018; pp. 173–177.
15. Campos, R.d.F.; Couto, E.; de Oliveira, J.; Nied, A. On-line parameter identification of an induction motor
with closed-loop speed control using the least square method. J. Dyn. Syst. Meas. Control 2017, 139, 071010.
[CrossRef]
16. Montazeri, A.; West, C.; Monk, S.D.; Taylor, C.J. Dynamic modelling and parameter estimation of a hydraulic
robot manipulator using a multi-objective genetic algorithm. Int. J. Control 2017, 90, 661–683. [CrossRef]
17. González, A.; Cerda-Lugo, A.; Cardenas, A.; Maya, M.; Piovesan, D. A Third-Order Model of Hip and
Ankle Joints During Balance Recovery: Modeling and Parameter Estimation. J. Comput. Nonlinear Dyn. 2019,
14, 101001. [CrossRef]
18. Saab, S.S.; Kaed-Bey, R.A. Parameter identification of a DC motor: An experimental approach. In Proceedings
of the 8th IEEE International Conference on Electronics, Circuits and Systems (Cat. No. 01EX483), Malta,
2–5 September 2001; Volume 2, pp. 981–984.
19. Gonçalves, J.; Lima, J.; Costa, P.G. DC motors modeling resorting to a simple setup and estimation procedure.
In Proceedings of the CONTROLO’2014–Proceedings of the 11th Portuguese Conference on Automatic
Control, Porto, Portugal, 21–23 July 2014; pp. 441–447.
20. Nayak, B.; Sahu, S. Parameter estimation of DC motor through whale optimization algorithm. Int. J. Power
Electron. Drive Syst. 2019, 10, 83. [CrossRef]
21. Ge, W.; Wang, B.; Mu, H. Dynamic Parameter Identification for Reconfigurable Robot Using Adaline Neural
Network. In Proceedings of the 2019 IEEE International Conference on Mechatronics and Automation
(ICMA), Tianjin, China, 4–7 August 2019; pp. 319–324.
22. Miranda-Colorado, R.; Moreno-Valenzuela, J. Experimental parameter identification of flexible joint robot
manipulators. Robotica 2018, 36, 313–332. [CrossRef]
23. Ni, H.; Zhang, C.; Hu, T.; Wang, T.; Chen, Q.; Chen, C. A dynamic parameter identification method of
industrial robots considering joint elasticity. Int. J. Adv. Robot. Syst. 2019, 16. [CrossRef]
c 2020 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access
article distributed under the terms and conditions of the Creative Commons Attribution
(CC BY) license (http://creativecommons.org/licenses/by/4.0/).