Full text
Journal of Technology and Science Education JOTSE, 2020 – 10(1): 72-86 – Online ISSN: 2013-6374 – Print ISSN: 2014-5349 https://doi.org/10.3926/jotse.788 PHYSICAL VISUALIZATION OF MATH CONCEPTS USING LEGO MINDSTORMS Andrés-David Suárez-Gómez , Wilson Javier Pérez-Holguín Grupo de Investigación en Robótica y Automatización Industrial GIRA, Universidad Pedagógica y Tecnológica de Colombia (Colombia) andresdavid.suar[email protected], wilson.per[email protected] Received July 2019 Accepted October 2019 Abstract Educational robotics has become one of the most effective methods to teach STEM concepts in a practical and didactic way at all educational level. In this context, the LEGO Mindstorms robotic platforms have been widely used due to their versatility ease of use and modularity. Despite this, most of the papers focus on K-12 and undergraduate levels, with little information reported in the literature about educational experiences at the graduate level. This article deals with the use of educational robotics for the teaching of mathematical concepts at the graduate level, and more specifically on the physical visualization of metrics (Euclidean, Taxicab, and Infinity), and the convergence of Cauchy sequence using a mobile robots LEGO Mindstorms NXT. The educational experience was applied to a group of graduate students who offered good comments on this type of educational activity and its usefulness to understand the mathematical concepts addressed. It was observed that this type of educational experiences motivates students to use mathematical concepts in interdisciplinary problems and encourages them to understand their functionality and application in the real world. Keywords – LEGO Mindstorms, Educational robotics, Graduate education. To cite this article: Suárez-Gómez, A.D., & Pérez-Holguín, W.J. (2020). Physical visualization of math concepts using LEGO Mindstorms. Journal of Technology and Science Education, 10(1), 72-86. https://doi.org/10.3926/jotse.788 ---------- 1. Introduction Robotics is a multidisciplinary field that includes the design, assembly and use of robots applying principles of engineering, computation, mathematics, physics, among others (Afari & Khine, 2017; Souza, Andrade, Sampaio, & Araujo, 2018). These characteristics make robotics attractive for students and researchers to use as a tool to develop cognitive and social skills for K-12 students, as well as for learning its operational principles and other interdisciplinary subjects (Afari & Khine, 2017). The use of robots in educational experiences is a kind of constructivist approach that promotes a way of student learning in which the teacher is not responsible for transferring all information; instead, it plays a role as a facilitator of the group’s learning and leadership. Thus, students improve their knowledge through the manipulation and construction of physical objects (Bilotta, Gabriele, Servidio & Tavernise, 2009). -72-
Journal of Technology and Science Education – https://doi.org/10.3926/jotse.788 Educational robotics (ER) is a widely used strategy for teaching STEM (science, technology, engineering and mathematics) subjects to students from the K-12 to the graduate education level (Souza et al., 2018; Xia & Zhong, 2018). It has emerged as a valuable learning tool that can offer practical and fun activities in attractive environments, fueling students’ curiosity and interests (Afari & Khine, 2017; Eguchi, 2010). ER is a suitable technique for teaching computational thinking, programming, electronics and robotics, reason why, it has gained popularity in several curricula around the world (Chaudhary, Agrawal, Sureka & Sureka, 2016). Robotics motivates students, offers tangible materials for learning and offers challenges that make possible the development of cognitive and social skills such as group work, problem solving, critical thinking, creativity, communication and collaboration (Afari & Khine, 2017; Chaudhary et al., 2016; Jung & Won, 2018; Souza et al., 2018). All these skills play a crucial role in the personal and professional development of students in the 21st century (Afari & Khine, 2017). The benefits of using the robotics in learning environments can be applied to all educational levels (Afari & Khine, 2017; Zygouris, Striftou, Dadaliaris, Stamoulis, Xenakis & Vavougios, 2017). However, most of the educational experiences reported in the literature are carried out with students from 13 to 18 years old, mainly in the framework of K-12 Education (Souza et al., 2018; Xia & Zhong, 2018). One of the most commonly used robotic platforms for educational purposes is the LEGO Mindstorms because they are versatile and attractive to students, have a graphic programming environment and include a wide variety of sensors and actuators that facilitate the testing of robotic applications (Afari & Khine, 2017; Chaudhary et al., 2016; Souza et al., 2018). These kits have been used mainly in the development of applications in K-12 Education and, to a lesser extent, for the teaching of robotics, control, modeling, programming and integrated systems at the undergraduate education level (Ding, Li, & Pan, 2017; Kim, Oh, Choi & Tsourdos, 2014; Wu, de Vrie, & Dunsworth, 2018). During our research for related work, we observed little evidence of the use of these kits for the teaching of basic science subjects such as mathematics and physics. Likewise, the works that report ER as an educational resource at the graduate level are very scarce in the literature. On the other hand, graduate students have a high level of knowledge and experience, generally manage their time better, are more autonomous in the development of laboratory experiences and some of them have prior knowledge in robotics and programming. These characteristics allow these students to face in a more flexible and dynamic way the development of experiences that are outside their area of knowledge. In this context, this article presents the result of the application of an educational experience for graduate students in engineering at the Universidad Pedagógica y Tecnológica de Colombia (UPTC), in Sogamoso-Colombia. The designed experience is focused on the teaching of mathematical concepts through their physical visualization on robotic platforms. In particular, we center on the teaching of the Euclidean, Taxicab and Infinity metrics, as well as the convergence of Cauchy’s sequence. In this work, we analyze the opinion of a group of graduate students about the use of ER in the classroom as a starting point for a broader study on the implications of the use of robots for the teaching of concepts in this education level. The rest of the work is organized as follows: Section 2 shows the studies found in Educational Robotics with LEGO Mindstorms NXT and EV3. Section 3 explains the basic concepts of Euclidean, Taxicab and Infinity metrics; and the visualization of these concepts for the particular case of the LEGO Mindstorms NXT robot. In section 4, we repeat the previous process for the concept of the Cauchy’s sequence and the demonstration of its convergence. Section 5 presents an analysis of the opinion of a group of graduate students about the development of the experiences described and the learning results achieved. Finally, section 6 concludes the article. 2. Application of LEGO Mindstorms in Educational Robotics As mentioned before, educational robotics is a pedagogical approach that involves social and educational skills (Souza et al., 2018) and draws the attention of students due to it is focused on practical activities and tasks (design, build, and program) that make learning fun and challenging (Afari & Khine, 2017; -73-
Journal of Technology and Science Education – https://doi.org/10.3926/jotse.788 Chaudhary et al., 2016). In addition, ER promotes acceptance and adaptation to constant changes driven by complex environments and the use of knowledge in real situations and in different contexts (Eguchi, 2014). This leads students to increase their level of commitment to the development of experiences, to learn fundamental skills and to take initiatives as co-builders of learning, instead of being passive receivers of information (Afari & Khine, 2017; Chaudhary et al., 2016; Jung & Won, 2018). In educational experiences with robots, it is necessary to select a physical system that meets the academic and practical requirements for the teaching of concepts. LEGO Mindstorms is a flexible and affordable tool that allows the development of educational experiences in different education levels taking into account it includes physical components (block construction) and software (programming) (Souza et al., 2018), which motivates students and improves the success rate in the teaching of concepts (Ding et al., 2017). Taking into account the above, we conducted a search of articles in databases on the application of LEGO Mindstorms NXT and EV3 in ER. Then, the most significant works found during the review are briefly described, in which the first two talk about the application of this type of robots in ER, while the other works were classified according to the level of education in which they are applied. Jung and Won (2018) carry out a systematic review of the existing literature in RE using robotic kits. The study investigates the definition of educational robotics, thematic patterns, and theoretical and methodological characteristics. The authors propose a change in the focus of research in ER, passing from the technology and capabilities of robots to the pedagogy of experiences, students, their learning and their opinion about these experiences. On the other hand, Souza et al. (2018) identify the environments and programming languages, the educational experiences based on robots and the education level. For the K-12 education level, Afari and Khine, (2017) explore the educational use of LEGO Mindstorms in schools and their integration in the curriculum. In addition, they suggest strategies for the use of robotics as an effective tool for teaching STEM subjects and their impact on students. Xia and Zhong (2018) reviewed the literature on the teaching and learning of robotics and discussed future research on this topic. The authors also noted that most of the studies they analyzed lasted less than two months and were applied to small groups of students. Chaudhary et al. (2016) use LEGO Mindstorms EV3 robots for the teaching of computational thinking, problem solving, teamwork and project management skills. Finally, Zygouris et al. (2017) use LEGO Mindstorms NXT robots to teach 12-year-old students basic geometry concepts. In all of these works, LEGO Mindstorms robots are used at K-12 education level for the teaching of robotics, programming and the development of teamwork and communication skills. However, it is less common to find them effectively applied to the teaching of subjects related to physics and mathematics, even though several works mention the potential of this technology for the teaching of these subjects. For the undergraduate level, Álvarez and Larrañaga (2016) present the results of a two-year experiment using LEGO Mindstorms robots in the teaching of basic programming with around 100 students, evidencing a significate improvement in the motivation and perception of the students in the learning process. Kipp and Schneider (2017) describe how to create a social robotics class where students interact with LEGO Mindstorms EV3. Additionally, Ding et al. (2017) and Wu et al. (2018) use LEGO Mindstorms NXT to teach control subjects such as the design of a PID controller for line tracking (Ding et al., 2017), and dynamic systems (analysis of first and second order systems) and the design of a PD controller (Wu et al., 2018). The RE at the undergraduate level focuses mainly on the teaching of programming, robotics, modeling, and control. However, we did not find works reporting the teaching of mathematics at this education level. For the graduate level, only one work was found where LEGO Mindstorms robots are used for RE. Kim et al. (2014) propose a practical project to teach orientation and control with LEGO Mindstorms NXT -74-
Journal of Technology and Science Education – https://doi.org/10.3926/jotse.788 and a webcam for a course of graduate students. The authors conclude that these tools are efficient to improve the assimilation of complex issues at this education level. It is worth mentioning that there are few works in the literature reporting educational experiences with robots at the graduate level. In addition, the authors only use surveys to know the level of student satisfaction on the implications of learning concepts with robots. Taking advantage of the fact that in some engineering careers graduate students have programming skills and robotics knowledge, robots can be easily used to teach other subjects to these students. In addition, taking into account the critical view and maturity of graduate students, their perspective constitutes good feedback about the developed educational experiences applicability and usefulness. Bearing this in mind, the following sections will give a perspective from the graduate students’ point of view on two educational experiences using LEGO Mindstorms robotic platforms. The experiences comprise the use of LEGO Mindstorms NXT robots programmed on NXT-G (a block-based language) to perform a physical representation of the Euclidean metric, the Taxicab metric, and the Infinity metric, as well as to demonstrate the convergence of Cauchy sequence. Sections 3 and 4 include a general description of the targeted mathematical concept, the development of the program to visualize it, and the results of the application of each educational experience. To the best of our knowledge, an original contribution of this work is the use of mobile robots (more specifically LEGO Mindstorms) to teach concepts of metrics and the Cauchy sequence. 3. Physical Visualization of Metrics This section present the proposed educational experience centered on the programming of the Lego Mindstorms NXT robots for the observation of the Euclidean, Taxicab and Infinity metrics. To perform the implementation of the metrics, the robot must turn on itself in the position (0,0) of a Euclidean plane until detecting an object (by using an ultrasonic sensor). When this happens, the robot measures the distance and angle to the object and moves towards it using one of the proposed metrics. The robot behavior programming is performed in the LEGO Mindstorms EV3 Home Edition software. To facilitate the explanation of the proposed approach, this section introduces a conceptual description of the mentioned metrics, and the graphs (based on experimental measurements) used to describe the robot behavior (sensors and actuators) and the adjustments introduced to have greater precision in the movements of the robot during metrics tracking. Finally, this section presents the programming of the robots and the results obtained in real experiments. 3.1. Fundamental Concepts of the Euclidean, Taxicab and Infinity Metrics 3.1.1. Metric Space A metric space is a pair (X, d) where X is a set whose elements are called points, and a function ‘distance’ or metric application, d: X × X → ℝ , that verifies the following properties: •(Positivity) d(x,y) ≥ 0, x,y X and (positive definite) d(x,y) = 0 ↔ x = y. •(Symmetry of the distance function) d(x,y) = d(y,x), x,y X. •(Triangular inequality) d(x,z) ≤ d(x,y) + d(y,x), x,y,z X. 3.1.2. Euclidean Metric Also called usual metric. The distance between two points is the square root of the sum of the squares of the differences in the coordinates of the points. This metric is governed by Equation (1) for X = ℝ2. Otherwise, it is the length of the hypotenuse of the right triangle defined by the two points. (1) -75-
Journal of Technology and Science Education – https://doi.org/10.3926/jotse.788 3.1.3. Taxicab Metric Also called Manhattan Metric. The distance between two points is the sum of the absolute values of the differences between their coordinates. (2) Equation (2) defines the taxi driver’s metric for X = ℝ2. The name taxicab metric comes from the interpretation of the length of a taxi’s route, which in a gridded city –Manhattan style–, goes from one point to the other with a single turn of the steering wheel. 3.1.4. Infinity Metric Also called maximum or chess metric. The distance between two points is the maximum of the absolute values of the differences between their coordinates. This metric is governed by the Equation (3) for X = ℝ2. (3) The name chess metric comes from the following interpretation: think of a chessboard and in it a single piece, the king. The king can reach in a single movement the eight squares that surround him. Distance between two squares is the minimum number of movements that the king must make to go from one square to the other. Figure 1 shows the behavior of each of the metrics in a two-dimensional space. All three are generalizations of the metric of the absolute value of the difference. Figure 1. d1, d2and d∞ metrics for X = ℝ2 3.2. Parameterization of the Robot’s Orientation. LEGO Mindstorms NXT do not have sensors to measure directly the orientation of the robot, therefore, we implement a series of measurements from the robot encoders. To take these measurements, the robot rotates on itself to the right and left different values –in degrees– using the rotation block available in the NXT-G language (see Figure 2). It is important to bear in mind that these measures must be adjusted by performing a linearization to reduce the errors that can affect the correct tracking of the metrics. The adjustment process is shown in Figures 3 and 4, and in Equations (4) to (7). Figure 2. NXT-G program to measure the orientation of the robot -76-
Journal of Technology and Science Education – https://doi.org/10.3926/jotse.788 Figure 3. Rotation sensors vs. Orientation of the robot Figure 3 shows the data of the rotation sensors obtained during the program execution (presented in Figure 2) vs. the experimentally verified robot orientation data. The data in blue correspond to the measurements taken when the robot turns to the right, while the data in orange correspond to the measurements taken when the robot turns to the left. Equations (4) and (5) are obtained by adding trend lines to the data for both rotation directions, and describe the relationship between the data of the robot encoders and its actual orientation data. (4) (5) In Equation (4), αr represents the value (in degrees) of the orientation when the robot turns to the right, Sensor A is the encoder measurement for the right wheel, Sensor B is the encoder measurement for the left wheel, and kr1 = 0.2723 and kr2 = –4.5162 are constants experimentally defined for the employed robot using the above-mentioned methodology. Equation (5) has a similar behavior than in Equation (4), where αl represents the value (in degrees) of the orientation when the robot turns to the left, and constants kl 1 = 0.2704 and kl 2 = 1.6739. Figure 4. Orientation of the robot vs. Orientation reference introduced in the program of Figure 2 In Figure 4, the data in blue corresponds to the orientation of the robot taken when it turns to the right and the data in orange corresponds to the orientation taken when the robot turns to the left. Equations (6) and (7) model the behavior of the robot orientation. Constants gr1 = 1.9997, gr2 = –1.8879, gl 1 = 1.7824, and gl 2 = 1.6558 were experimentally obtained for the robot employed in this case. (6) (7) In Equations (6) and (7), Gr and Gl represent the value in degrees to be entered in the program for the robot change its orientation αr degrees to the right, or αl degrees to the left, respectively. -77-
Journal of Technology and Science Education – https://doi.org/10.3926/jotse.788 Ideally, turning to the left or to the right should not have an influence on the robot behavior, but when comparing Equations (4) and (6) with Equations (5) and (7), we observe that constants are different depending on the direction of the robot’s rotation. A considerable improvement in the orientation error of the robot is observed when applying the adjustment equations. For instance, when turning the robot in any direction the accumulated orientation error was nearly 30° for each 360° robot turn (e = 8.33%). When applying Equations (4) to (7), this error was approximately 5° for each 360° turn (e = 1.38%). 3.3. Detection of the Object Coordinates For the Taxicab metric and the infinity metric, we can consider the Euclidean distance (d2(x,y)) to the object as the hypotenuse of a triangle, while the legs of the triangle are calculated with the angle (α) of the object with respect to the x-axis. For these calculations, it is necessary to implement the sine and cosine functions as shown in Equations (8) and (9). It is worth remembering that for the mentioned metrics implementation, the robot must move following the legs. (8) (9) LEGO Mindstorms NXT robots do not have the sine and cosine functions. Therefore, it is necessary to implement the x and y calculation bearing in mind the limitations of the robotic platforms. In this case, students must use Taylor series to approximate the sine and cosine functions as shown in Equations (10) and (11), respectively. (10) (11) Furthermore, these robots do not have factorial or potentiation functions, so it is not possible to implement the sum directly as shown in Equations (10) and (11). Due to the robot constraints, we use only the first nine sums of the series seeking to have a good enough approximate value to the sine and cosine functions (see Equations (12) and (13)). (12) (13) In this case, Equations (12) and (13) are implemented through a block (called SenoCoseno) in the NXT-G language. This block takes as input the angle of orientation (in radians) and calculates its sine and cosine values. With these ones and the ultrasonic sensor measurement, Equations (8) and (9) generate the coordinates to which the robot must arrive following the metrics. In order to calculate the absolute value of the object coordinates, it is necessary to create a block (called CoordXY). 3.4. General Program Structure for the Physical Visualization of the Metrics Next, we describe a sequence of steps for the implementation of the program in the NXT-G language for the physical visualization of the metrics studied: i. Place the robot at the origin of the coordinate plane. The value of the rotation sensors of motor C and motor B is set to zero to ensure the proper calculation of the orientation of the robot. Then, a block (called PORTADA) prints on screen the name of the student conducting the -78-
Journal of Technology and Science Education – https://doi.org/10.3926/jotse.788 experience and the metric. The robot rotates on itself to the left (at a low speed to have greater precision in the measurement of the sensor) continuously until the detection of an object within a predefined range (60 cm maximum). ii. When the robot detects an object it saves the values of the encoders of the B and C motors in global variables and stops its rotation. At this point, the robot should be directly facing the object. A block (called CalcularOrientacion) calculates the orientation angle of the robot. iii. The robot control makes the calculation of the orientation, the sine and cosine of the orientation angle, and the coordinates of the object. iv. The robot stores the values of the coordinates and the orientation angle in global variables and then follows the desired metric. v. Finally, when the robot reaches the calculated coordinates, a block (called VALORESMEDIDOS) prints on the screen the ultrasonic measurement value, the angle of orientation and the value of the coordinates (x, y) to verify that the program execution was successful. Figure 5 presents a program that allows the robot to follow the metrics studied. The same program is used for the visualization of the three metrics, with the only difference in the implementation of the block enclosed in black (called “HacerMetrica”). Next, we briefly describe this block for each metric. Figure 5. Program for the physical visualization of the Euclidean, Taxicab and Infinity metrics 3.4.1. Implementation of the Euclidean Metric Once the robot detects an object within the established range, it advances a certain distance measured by the ultrasonic sensor. The program measures the displacement of the robot from the number of rotations of the wheels. The robot moves 17.5 cm (on average) when both wheels rotate simultaneously in the same direction. From this parameter, the program converts the robot’s displacement reference value (in centimeters) to an equivalent value in the rotations of the wheel. 3.4.2. Implementation of the Taxicab Metric The robot determines, by means of a switch block, in which quadrant of the coordinate plane the object is located. According to this, it calculates the angle to be rotated leftward up to reach one of the axes (y for the I and III quadrants, and x for II and IV quadrants) according to Equation (7). When the robot reaches an axis, it moves the distance in x or y calculated for Equations (8) and (9). Then, the robot makes a 90° turn to the right using Equation (6) and moves the distance corresponding to the other axis using again Equations (8) and (9). -79-
Journal of Technology and Science Education – https://doi.org/10.3926/jotse.788 3.4.3. Implementation of the Infinity Metric The robot settles the quadrant in which the object is located in the same way as performed in the Taxicab metric. Next, it compares the calculated values of the x and y axes to determine which one is greater. Then, it proceeds to orient itself in the axis corresponding to the highest value using Equations (6) or (7) depending on the case. Finally, the robot moves the distance corresponding to the highest value. 4. Physical Visualization of Cauchy Sequence: 4.1. Fundamental Concepts of Cauchy Sequence In mathematics, a Cauchy sequence (named after the French mathematician Augustin Louis Cauchy) is a sequence that, for any small positive distance, all but a finite number of elements of the sequence are less than that given distance from each other. Let {xn}nℕ be a sequence. We will say that {xn}nℕ is from Cauchy, if for every real number ε > 0 there exists a positive integer N such that for all natural numbers m, n > N, |xm – xn |< ε. Where the vertical bar denotes the norm (which in the particular case of the real field would be the absolute value). A metric space (X, d ) is said to be complete if every convergent Cauchy sequence has its limit within the X space. Cauchy sequence of real numbers have the following properties: i) every convergent sequence is a Cauchy sequence; ii) every Cauchy sequence is bounded; and iii) a sequence of real numbers is convergent if and only if it is a Cauchy sequence. That is, the set of real numbers is a complete metric space. 4.2. Convergence of Cauchy Sequence Equation (14) is an expression of Cauchy sequence. Furthermore, Equation (15) is an expression of Cauchy sequence as a real geometric series of initial non-null term a ℝ and ratio r ℝ. Where a = 1 and . It is worth mentioning that for a geometric series to be a Cauchy sequence, it must have a positive initial term and ratio. That is, not every geometric series is considered a Cauchy sequence. (14) (15) A geometric series of this type is said to be convergent if and only if |r|< 1. In this case, so the sequence converges. To find where it converges we use the following equation: (16) Using Equations (15) and (16) we can find where the Cauchy sequence converges by replacing the corresponding values. As presented in Equation (17), it is twice the initial displacement value of the robot. (17) 4.3. Physical Implementation of the Cauchy Sequence To implement Cauchy sequence, it is necessary to program Equation (14) using the NXT-G language. This equation determines the movement of the robot in the following way: the robot starts from an arbitrary point in the coordinate plane. Then, it moves a distance x0, after that, it moves a distance x0/2, then a distance of x0/4, and so on. In the algorithm, the x0 distance is a random number in the range of 2 to 20 rotations of the wheel. This ensures that the initial displacement of the robot is different for each experiment. The random value is stored in a variable name X and then converted into centimeters. A block (called PORTADA) prints the X value in centimeters on the screen. Then, the program performs a -80-