Line 30: Line 30:
 
Figure [[#img-1|1]] illustrates the chronological sequence of the strategy that starts from the basic cycle that contains disciplines such as calculus and physics, an intermediate cycle that provides knowledge in numerical methods, automatic control and software languages such as ''Python/VPhyton''. In sequence there are advanced concepts such as ''simulation'' and visualization and analysis of the obtained results.
 
Figure [[#img-1|1]] illustrates the chronological sequence of the strategy that starts from the basic cycle that contains disciplines such as calculus and physics, an intermediate cycle that provides knowledge in numerical methods, automatic control and software languages such as ''Python/VPhyton''. In sequence there are advanced concepts such as ''simulation'' and visualization and analysis of the obtained results.
  
In this sense, section [[#22 BASIC CONCEPTS|22]] presents basic modeling concepts, section [[#23 PYTHON AND VPYTHON LANGUAGES|23]] presents a summary of the Python and Vpython tools for building graphical interfaces. Section [[#24 TWO DEGREE OF FREEDOM SATELLITE PROBLEM|24]] presents the problem of the two degrees of freedom satellite, its mathematical modeling, simulation and graphical interface. Section [[#25 AUTOMATIC CONTROL PROBLEM|25]] contains the corresponding control problem. Finally, some conclusions and discussions are presented in section [[#26 CONCLUSIONS AND DISCUSSIONS|26]].
+
In this sense, section [[#22 BASIC CONCEPTS|2]] presents basic modeling concepts, section [[#23 PYTHON AND VPYTHON LANGUAGES|3]] presents a summary of the Python and Vpython tools for building graphical interfaces. Section [[#24 TWO DEGREE OF FREEDOM SATELLITE PROBLEM|4]] presents the problem of the two degrees of freedom satellite, its mathematical modeling, simulation and graphical interface. Section [[#25 AUTOMATIC CONTROL PROBLEM|5]] contains the corresponding control problem. Finally, some conclusions and discussions are presented in section [[#26 CONCLUSIONS AND DISCUSSIONS|6]].
  
 
==2. Basic concepts==
 
==2. Basic concepts==

Revision as of 14:38, 27 May 2020

1. Introduction

STEM education is a strategy that proposes teaching based on four disciplines (science, technology, engineering and mathematics), integrated in an innovative and interdisciplinary approach [Deming2018]. The United States, the most innovative country, home to the world's top startups, has identified the need to invest in these disciplines as a priority. For these reasons and looking for a high level of competitiveness in the professional market, several universities around the world have introduced computing tools (Matlab-Simulink®, Mathematica, Python, etc.), in their teaching programs which has helped to address a wide type of problems and increase the level of understanding not only in sciences and engineering but also in other STEM areas [gilat2006], [cortes2011], [david2015].

Some universities in Brazil, Chile, Argentina and Colombia have already adopted the STEM concept [Espinal2019]. Contrary to this trend in South America, most universities in Bolivia do not apply it. There is a resistance to a methodological change, and to the use of technology to improve education, at the same time research works are just beginning. In this sense, this document aims to present the strategy proposed in Bolivia to improve education through the implementation of virtual laboratories. The strategy presented has been disseminated in the main Bolivian universities (Bolivia has 10 state and over 30 private universities).

1.1. Bolivian problem

For the past five years, different activities have been executed with several Bolivian universities (advanced courses, symposia and recently, master's degrees courses) [pagJav2016].

As a result of this interaction, it has become clear that some universities face several problems, among them, the lack of funds for the purchase of specialized software. At the same time they have been slow in updating their study programs and in the application of modern techniques in higher education. These and other aspects do not allow universities to be much more innovative. These problems increase due to structural failures in high school education (i.e. reduced hours in math sciences) and successive changes of methodology in teaching schools where teachers of basic school are trained [NTJav2018].

The strategy presented in this document was disseminated in several Bolivian universities as a proposal to improve teaching in math sciences and engineering. In the proposal, was also considered students' comments such as, what do I do with so much mathematics?, Calculus I, II, III , differential equations, numerical methods?, where do I apply all this?. These questions are constantly being asked because math science disciplines are still administered without a link of applicative character. This work tries to establish this link as the main contribution to Bolivian universities [NTJav2018].

1.2. The proposal strategy

Chronological sequence strategy
Figure 1: Chronological sequence strategy

Figure 1 illustrates the chronological sequence of the strategy that starts from the basic cycle that contains disciplines such as calculus and physics, an intermediate cycle that provides knowledge in numerical methods, automatic control and software languages such as Python/VPhyton. In sequence there are advanced concepts such as simulation and visualization and analysis of the obtained results.

In this sense, section 2 presents basic modeling concepts, section 3 presents a summary of the Python and Vpython tools for building graphical interfaces. Section 4 presents the problem of the two degrees of freedom satellite, its mathematical modeling, simulation and graphical interface. Section 5 contains the corresponding control problem. Finally, some conclusions and discussions are presented in section 6.

2. Basic concepts

Most of the phenomena that occur in nature involve the variation of one quantity related other, leading naturally to mathematical models based on differential equations 1 [kupferman2008]. To obtain these equations, physical laws such as: Newton's second law, the law of conservation of energy, Kirchhoff's law, or those corresponding to a particular phenomenon are used. Some of these basic concepts are presented below.

(1) They can also be algebraic equations.

2.1. Euler-Lagrange equations

A dynamic system with degrees of freedom in generalized coordinates 1 and external forces , is described by the following Euler-Lagrange equation:

(1)

where:

(2)

corresponds to Lagrange function, is the kinetic energy and , is potential energy.

The external forces considered are: friction, control input and the interaction between system and environment. The control vector considered is . Friction forces are represented as , where is the function of Rayleigh. In summary, the following external forces are considered:

(3)

where is the signal that contains external perturbations.

(1) Let the set of variables , , and .

2.2. Mathematical representation

Models are represented by the following differential equations:

(4)

where denotes the derivative of related at the time while, , , , are the control variables and , correspond to the state variables, with and . The output variables are given by:

(5)

where . Finally, equations (4) and (5) can be written as:

(6)
(7)

2.3. Equilibrium points

The equilibrium points are solutions of the equations (6) and (7) such as:

2.3.1. Definition

The point in the state space is a equilibrium point of if:

(8)

in another form, the equilibrium point is .

In simple problems (like the pendulum), the solution of equation (8) is straightforward [khalil2002]. However, when the degree of difficulty increases, extracting operating conditions is also more complex; an aircraft is a good example [lewis2003], [Vargas2016].

2.4. Linearization

The linearization at a point of operation is a common practice in engineering to analyze nonlinear systems. Once the linear model is obtained, its analysis is done with widely used tools [ogata2011]. However, the approximation around an operation point offers the local behavior of the non-linear system and not the global behavior in which we are interested. One of the most common methods to perform the linearization is the expansion by series of Taylor, effective for small variations around the operation point [duke88], [dagfinn2008].

3. Python and VPython languages

Python is a high-level interpreted language with sequential commands developed at the end of the 1980s by Guido van Rossum at the National Research Institute of Mathematics and Computer Science in the Netherlands [Kusalaas20013]. This language is widely used in large organizations due to its multiple programming paradigms. It provides standard libraries that include areas such as: chain operations, internet, web service tools, operational system interfaces and protocols. The Python interpreter is developed under an open source license, which makes it free to use and distribute, even for commercial purposes [Magnus2008]. This last characteristic makes it ideal for its use, since it dispenses the license payment reducing costs in universities and industries. Figure 2 presents a Python code example (corresponds to the simples pendulum problem [vargas2015]). Figs. 3a and 3b allow to verify the behavior of a simples pendulum in two dimensions.
from numpy import *
import numpy as np from scipy.integrate
import odeint import matplotlib.pyplot as plt

# Parameters
g = 9.8; L = 0.1; m = 0.2; u = 0.0; k = 0.1

def eqs_mov(state, t, p): # dy/dt = f(t,y)
y1, y2 = state
dydt = np.zeros_like(state)
dydt = [y2,
-(g/L)*np.sin(y1)-(k/m)*y2 + u/(m*L**2)]
return dydt
# Initial Conditions
p = [g, L, k, u, m]; state = [2., 0]
t =np.linspace(0,10,300); print (t)
sol = odeint(eqs_mov,state,t,args=(p,))


Figure 2: Python code for pendulum model
Phase diagram
(b) Phase diagram (c) Simples pendulum behavior
Angular position and rate
Figure a: Angular position and rate
In sequence to the development of the language Python in the spring and summer of the year 2000, with the help of David Andersen, Ruth Chabay, Ari Heitner, Ian Peters and Bruce Sherwood, David Scherer creates Visual, a module for Python that was not only relatively simple to use, but also allowed the development of objects in three dimensions. The combination of Python and Visual is called VPython which allows users to create objects such as spheres, cylinders and 3D cones and displays them in a window, which facilitates the creation of three-dimensional visualizations. This last feature has made VPython an essential tool for the creation of virtual laboratories [Jaime2018].
Virtual environment for double pendulum
Figure 4: Virtual environment for double pendulum

The three-dimensional representation of the double pendulum is illustrated in Figure 4.

4. Two degree of freedom satellite problem

The orbit of the satellite of two degrees of freedom with mass is illustrated in Figure 5, can be described by two non-linear and coupled equations obtained from the sum of the kinetic energy due to the tangential component and radial component of velocity . It is assumed that the satellite has traction in these directions, thus the magnitude of the forces are and respectively.
Two degree of freedom satellite
Figure 5: Two degree of freedom satellite

This problem is well known in the area of automatic control, but, is not studied in the Bolivia education program. Also, its importance lies in that it is a problem with multiple inputs and multiple outputs (MIMO) [daniel2007], [vargas2014].

4.1. Mathematical model

The total kinetic energy of the satellite of Figure 5 is given by:

(9)

The equations (9) and (2) allow obtaining the mathematical model of this problem [wolovich94].

4.2. Computational solution

Figure 6a illustrates the results obtained for and . It is verified that moves away from its initial condition through a ramp, for this reason the derivative tends to be a constant.
Radial position and rate Angular position and rate
(a) Radial position and rate (b) Angular position and rate
colspan="2"
(c) Two degree of freedom satélite in two dimensions
Figure 6

Figure 6b illustrates the results obtained for and . It is verified that remains with constant behavior over time, for this reason the derivative tends to zero. In practice, it is expected that the satellite will describe a trajectory with angular velocity constant and with position constant also.

Figure 7 illustrates the tridimensional virtual environment for the satellite of two degrees of freedom.
Virtual environment for two degree of freedom satellite
Figure 7: Virtual environment for two degree of freedom satellite

5. Automatic control problem

The analysis and synthesis are performed by applying theory of optimal control and the technique of Linear Quadratic Regulator (LQR), method based on the linearization of dynamic systems, represented in the time domain [lewis2003], [ogata2011]. The control structure is presented in Figure 8 .
Generic control structure
Figure 8: Generic control structure

5.1. Algorithm

The algorithm to find a control law 1 is given by:

(10)
(11)

So that the feedback control law minimizes the performance index given by:

(12)

subject to the following state equation:

(13)

The gain matrix is obtained from the solution of Riccati's equation.

(14)
where and are the augmented matrices. The optimal gain can be obtained quickly using the Python Control toolbox. The code example used to calculate the gains is presented in Figure 9.
from control import* from slycot import*
from control.matlab import* import numpy as np

#Dates
Jm = 1.2; Bm = 0.1; Jl = 0.3; Bl = 0.05; m = 1; Kr = 0.5;

l= 0.5; g = 9.8;

A = [[0, 1],[-(g*l*m)/(Jl+Jm*Kr**2),
-(Bl+Bm*Kr**2)/(Jl+Jm*Kr**2)]];

B = [[0],[1/(Jm+(Jl/Kr**2))]];

C = [[1, 0],[0,1]]; D = [[0],[0]];

Aaum = [[A],[[0],[0]],[B],[1]] Baum = [[B],[0]]

Q = [[20, 0, 0],[0, 20, 0],[0, 0, 20]] R = 0.01

G, S, E =lqr(Aaum,Baum, Q, R)


Figure 9: Gains calculation Python code

(1) In practice, the control variable , it is always limited to its maximum and minimum values.

5.2. Two degree of freedom satellite control

The controlled variables correspond to the position in relation to the center of the earth and the angular position of the satellite. The desired references are the unit for and a ramp for . Initials conditions of the integrator are . The gain matrix () obtained is:

(15)
Figure 10a shown the result of radial component , where is verified that after of transient, the reference is reached.
Radial distance r(t) Angular position α(t)
(a) Radial distance (b) Angular position
colspan="2"
(c) Closed loop results satellite TDOF
Figure 10

Figure 10b illustrates the result obtained for the angular position , which follows the specified ramp with an offset, offset is characteristic of LQR control for ramp reference. To solve this problem it is necessary to study other control strategies [wolovich94].

6 Conclusions and Discussions

The main contribution of this proposal is applicative, simple examples show the link between theory and practice, the results obtained through simulations are evaluated in two and three dimensions, which allow the extensive use of virtual laboratories. The presented strategy is used in countries with high development indices, unfortunately this does not happen in Bolivia.

The summary of the methodology that addresses the problems presented is illustrated in Figure 11.
Summary of methodology
Figure 11: Summary of methodology

The main advantage of the presented strategy is for the country, which will benefit from a future generation with more professionals capable of working in the new industrial era. In this sense, it should be emphasized that this strategy will help in the training and motivation of the new Bolivian scientists in the short and long term period. This strategy is also attractive because programming languages like Python/Vpython are free. Let us not forget that these Virtual Laboratories can be quickly implemented on any computer and managed from a dedicated server that doesn't need the purchase of additional hardware.

6.1. Discussions

The total number of attendees where the strategy was presented reached approximately 500 among professors and students. During the presentations, a questionnaire was prepared asking what methodology was practiced by the participating universities. Figure 12 illustrates 12 presentations with an average of 40 participants by session. The total number of participants and the percentages that correspond to the methodologies Non-applied method and Applied method.
Number of presentations and answers of attendees
Figure 12: Number of presentations and answers of attendees

The result shows that 75% still administer subjects such as calculus, algebra and others isolated from practical applications. In this sense, the participating students evidenced the improvement in learning disciplines in science and engineering, integrated to the concepts of: modeling, programming languages, numerical methods and simulation. Following, some feedback from participating students are registered:

  • Great depth in the methodology, as rarely explained in our universities,
  • I did not see this method before, the learning is transparent and real world examples can be observed,
  • The strategy clearly shows the complete cycle that involves the deduction of mathematical models until the visualization of results in two and three dimensions.
Furthermore, an interactive link is being developed where students can access to the presented problems and others [siles2019]. Additionally, Figures 13a and 13b show the virtual environment for inverted pendulum and coupled springs problems.
Inverted pendulum Coupled springs
(a) Inverted pendulum (b) Coupled springs
colspan="2"
(c) Additional virtual environments
Figure 13

The participating universities were suggested to use the strategy extensively, as well as to change their science and engineering study plans. After these recommendations where made, some universities have very slowly begun to make the suggested changes. Finally, during the dissemination of the strategy, two books were published, one in Bolivia and another in Brazil [vargas2014], [vargas2015].

Acknowledgment

Thank you to the participating universities, teachers and students who made possible this publication. Also, thank you to Juan Poma Rosas for English corrections.

BIBLIOGRAPHY

[1]

[2]

[3]

[4]

[5]

[6]

[7]

[8]

Back to Top

Document information

Published on 10/06/20
Submitted on 10/05/20

Volume 2, 2020
Licence: CC BY-NC-SA license

Document Score

0

Views 459
Recommendations 0

Share this document

claim authorship

Are you one of the authors of this document?