Abstract
Professors, students, and researchers from universities around the world use software distributed under licenses for numerical simulation purposes, which requires a computer with considerable hardware capabilities. This implies a high cost of simulations in engineering applications that require dynamic modeling using numerical methods, particularly in robotics and nonlinear control. This article compares and analyzes the performance of a frugal simulation scheme based on the use of low-cost, free, and open-source technology, specifically a low-power, single-board minicomputer (Raspberry Pi) in conjunction with GNU-Octave software. The benchmark is a numerical simulation of trajectory tracking control in the joint space of a Selective Conformal Assembly Robot Arm (SCARA). To perform this task, a system of coupled nonlinear differential equations is solved in matrix form using a numerical method known as an ODE solver. This solution includes the control law and the dynamic system model derived from Euler–Lagrange formalism. The time complexity and accuracy are analyzed to compare the performance of the frugal simulation tool with that of a conventional simulation setup consisting of a personal computer and MATLABTM running the same simulation code. The analysis shows minimal deviations in the numerical solutions and reasonable time complexity. Moreover, the frugality score of this approach and the low acquisition cost of the simulation tool enable the creation of simulation laboratories at universities with limited budgets for education and research.
1. Introduction
The post-pandemic environment presents a daunting picture due to the global economic crisis and an uncertain future. Furthermore, Tilak and Kumar [1] cite global figures indicating that up to 25% of students struggle to participate in the learning process in the absence of digital tools. The digital transition faces several challenges, with technology playing a decisive role; it must be integrated as a relevant tool for developing and implementing experiments across Science, Technology, Engineering, and Mathematics (STEM) areas [2]. From an institutional perspective, it is suggested to leverage advances in e-learning and to continue to use online tools to enhance teaching and learning [3]. In engineering education, it is especially important to train students in competencies and skills for developing an agile mindset, curiosity, reflection (in/on action), innovation, creativity, and technological knowledge [4].
While core engineering courses may be taught face-to-face or online, complementary studies within a particular discipline typically require laboratory experience. In this manner, simulation-based research or education is of special interest, as evidenced by Magana and Jong [5], who highlighted (a) approaches for modeling-and-simulation-centric course design; (b) teaching practices and pedagogy for modeling and simulation implementation; and (c) evidence of learning with and about modeling and simulation practices.
The effect of simulations is greatly enhanced by using modern technologies [6]. However, simulation software is often licensed and requires periodic fees and expensive, high-performance computers. This constraint, in addition to the global economic crisis, makes developing simulations for simulation-based learning at home, or even equipping a low-budget university simulation lab, unattainable for many students and researchers. In this regard, an emerging concept, frugal innovation (FI), which emphasizes doing more with less, has gained wide acceptance among academic communities. In this sense, Bhatti et al. [7] refer to “Means and ends” to describe an innovation that can be a process as well as an outcome to achieve affordability. “To do more with less” suggests efficiency in processes and outcomes through the use of technology, resulting in deriving more from limited resources within a contextually constraining environment, thereby enhancing adaptability. “For many” describes the generation of economic and social value that achieves affordability and large scale. The result of these motivations, processes, and ends is frugal innovations that are affordable to consumers, adaptable to contextual circumstances, and accessible to vast populations. Applications of frugal engineering are reported in [8,9,10].
The problem of performing computer simulations at the lowest possible cost but with an acceptable level of quality [11] has been approached from two different technological perspectives: one related to open-source software (OSS) and the other to open-source hardware (OSH).
From the OSS perspective, Wajid et al. [12] designed a free, easily distributable, customized operating system based on Ubuntu for electrical/electronic and computer engineering, while Tapaskar et al. [13] highlight the use of OSS tools in postgraduate engineering curricula. Lotfi et al. [14] focused on promoting the use of OSS such as Python, GNU-Octave, Modelica, Java, and Gazebo in mechatronics and robotics engineering education, where a DC motor is used to show the application of OSS for analysis and model simulation. Saluja et al. [15] proposed a system to provide a new approach to learning and teaching software engineering processes for graduate or post-graduate students, and Park [16] developed an automatic GNU Octave code for educational purposes to calculate the response of a multibody closed-chain system.
From an OSH perspective, several papers have focused on replacing personal computers with single-board minicomputers. Raikar et al. [17] suggested that Raspberry Pi (RPi) can be used for practicing most laboratory courses in the computer science engineering curriculum, while Alex David et al. [18] designed a DC motor test bench online lab using RPi for possible applications in electrical engineering education. Fernández et al. [19] described the development of a remote Arduino lab to support online IoT learning experimentation environments connected to RPi, and Mbanisi et al. [20] analyzed the limitations and potential of open-source hardware such as Arduino, RPi, and BeagleBone for use in engineering education and research. Fuentes et al. [21] used RPi devices to encourage students to work autonomously for practical computer organization and a design course, and Vaca et al. [22] described the design and development of a remote laboratory based on RPi with applications in electronics and control engineering. Particular emphasis is placed on the use of simulations in robotics, where opportunities are addressed in the development and validation of open-source simulation platforms [23].
This work combines the technological perspectives of OSS and OSH to propose a low-cost scheme that is used as a computational simulation tool based on open-source hardware and software. This frugal approach employs a Raspberry Pi single-board minicomputer and GNU-Octave. The objective of this article is to analyze and compare the performance of the proposed frugal simulation scheme in relation to a conventional simulation setup consisting of a personal computer and MATLABTM running the same simulation code. The benchmark is a numerical simulation of trajectory tracking control in the joint space of a Selective Conformal Assembly Robot Arm (SCARA).
Related works have compared the performance of numerical simulation tools, focusing on analyzing the results of the software used, rather than the computer equipment used for the simulations. For instance, Mikac et al. [24] compared the performance of MATLABTM and Scilab for calculations and operations involving algebra, matrices, signals, and disk access. Idoko et al. [25] compared the computational performance of MATLABTM, COMSOL, and Python software for thermofluid dynamics simulation and structural analysis, while Herho et al. [26] evaluated different free and open-source software, such as Python, R, GNU Octave, and Julia, to simulate the dynamics of a double pendulum based on the equations of motion. Meanwhile, Rooney and Matthews [27] compared the performance of the Raspberry Pi 4 and Raspberry Pi Zero W development boards in executing the fast Fourier transform written in C and Rust. Furthermore, the benchmark used in this work is more comprehensive than those described in the reviewed literature. For this reason, the feasibility of the proposed scheme is demonstrated by larger scope simulations, not just from the perspective of engineering education but also considering applications for research, such as nonlinear control of robotic systems based on dynamic models.
The remainder of this paper is organized in the following manner: Section 2 describes the general features of GNU Octave and RPi; Section 3 presents the benchmark case study; Section 4 details the algorithm used for simulations; Section 5 shows the results and comparisons; Section 6 provides discussions; and finally, conclusions are given in Section 7.
2. Details of Open-Source Technology
2.1. Raspberry Pi
Raspberry Pi (RPi) is a single-board computer known as a minicomputer due to its size, which is comparable to that of a credit card, as shown in Figure 1. RPi was developed by the Raspberry Pi Foundation and first released in 2012. Subsequent versions, Raspberry Pi 2, Raspberry Pi 3, and Raspberry Pi 4, were released in 2015, 2016, and 2019, respectively. In this work, Raspberry Pi 3 B+ was used; its specifications are illustrated in Table 1.
Figure 1.
Sizing of an RPi compared with a credit card.
Table 1.
Main specifications of Raspberry Pi 3 B+.
An RPi minicomputer requires the Raspberry Pi operating system, which is based on Debian and optimized for the Raspberry Pi hardware. This OS comes with over 35,000 packages, including GNU-Octave.
2.2. GNU-Octave
GNU-Octave is open-source and free software for numerical and scientific computing, implemented in the high-level language Octave. Octave is actively used for data analysis, image processing, computer vision, economic research, data mining, machine learning, signal processing, and many more scientific applications [28]. Octave requires minimal hardware resources, a key characteristic of this work, in which Octave 4.0.3 is used on a Raspberry Pi 3 B+, as shown in Figure 2.
Figure 2.
GNU-Octave running on a Raspberry Pi 3 B+.
Octave has a community-maintained repository of packages called Octave Packages for solving numerical computational problems. For instance, there are packages for control, communications, and instrumentation, which attempt to maintain syntax compatibility with the major functions of MATLABTM. However, using Octave for nonlinear control-law simulations based on the dynamic system model requires implementing algorithms for numerical approximation.
3. Benchmark Case Study
In courses on robotics, control engineering, and nonlinear systems, a common case study concerns robot manipulators. The analysis first focuses on the dynamic behavior of a robot system through mathematical modeling. These equations are then used to derive a control law for trajectory tracking. Finally, the dynamic model and controller are solved using powerful software for numerical simulation, optimization, and research.
3.1. Scara Robot Manipulator
The Selective Compliant Assembly Robot Arm (SCARA) is a rigid-link system with degrees of freedom (dof). According to Figure 3, each joint is represented by generalized coordinated , . The SCARA robot is modeled by nonlinear ordinary differential equations through Euler–Lagrange formalism [29], which is expressed in matrix notation as follows:
where is the inertia matrix, is the Coriolis and centrifugal forces matrix, is the vector of gravitational forces, and is the vector of input torques. , , , and are the moment of inertia, mass, final length, and the position of the mass center, for each rigid-link, respectively.
Figure 3.
SCARA robot manipulator.
3.2. Control Law for Trajectory Tracking
Modern control theory requires a dynamical model of the system to develop a control law, and diverse control strategies, including backstepping, sliding modes, adaptive, robust, and state feedback, have been broadly applied in robotics. For trajectory tracking, a computed-torque control approach based on the Lyapunov method is implemented in this work, as in [29,30,31]. The controller is given by
where and are positive gains, is the desired trajectory, and is the tracking error, defined as
The desired trajectory for each joint is expressed by
where and are the initial and final positions of the desired trajectory, t is the time used in the simulation step, and is the total simulation duration.
The control objective is to ensure that the tracking error converges to zero in a finite time. For demonstration purposes, it is necessary to perform numerical approximations using simulations, since analytical solutions are often abstract and complex mathematical expressions. For this reason, this study uses numerical simulation of SCARA robot tracking control as a benchmark.
4. Algorithm for Simulations
The closed-loop control applied in this benchmark case study, shown in Figure 4, requires feedback from the full state to form the control law (3), which also includes the dynamic model of the system expressed in matrix form. To that end, a double integral must be evaluated by implementing an algorithm to obtain a numerical solution. Moreover, the code needs to work with matrix expressions and support cyclic iterations of a system of nonlinear coupled ordinary differential equations (ODEs).
Figure 4.
Control scheme with full state feedback.
Numerical ODE Solver
A numerical solution of an ODE with initial values is achieved using a numerical method known as a solver. For instance, ode45 integrates a system of non-stiff first-order ODE based on Runge–Kutta and Dormand–Prince methods. The general syntax of the ode45 for both MATLABTM and GNU-Octave is given by [32]
where fun is a function handle that defines the first-order ODE, . trange specifies the time interval over which the ODE will be evaluated. Typically, it is a two-element vector specifying the initial and final times. If there are more than two elements, then the solution will also be evaluated at these intermediate time instances. init contains the initial value for the unknowns. The optional fourth argument ode_opt specifies non-default options to the ODE solver. ode45 returns two outputs: variable t is a column vector and contains the times where the solution was found, and the output y is a matrix in which each column refers to a different unknown of the problem and each row corresponds to a time in t.
The numerical simulation code has been divided into two files, projectileode45.m and SCARA_inicio_ode45.m, following the steps listed below. The complete code is shown in Figure 5 and Figure 6.
Figure 5.
Function handle code projectileode45.m.
Figure 6.
File code SCARA_inicio_ode45.m.
- 1.
- The function handle projectileode45.m to be integrated, where the system of second-order differential equations that models the robotic system and its controller must be rewritten as a system of coupled first-order differential equations.
- (a)
- Define the name of the function and output/input arguments.
- The output argument will be a column vector of the derivatives.
- The input arguments will be the time t and system state x.
- (b)
- Establish the desired trajectory equations.
- The first and second derivatives of the desired trajectory are required.
- (c)
- Set parameter values.
- Parameters of the dynamical system and controller.
- (d)
- Build matrix M and C and vector G.
- (e)
- Establish the controller equation.
- (f)
- Solve dynamical equations for major order derivatives.
- (g)
- Form the vector of derivatives to be integrated.
- 2.
- Settings of the solver and plotting results SCARA_inicio_ode45.m.
- (a)
- Initialize time complexity counting using tic() function.
- (b)
- Specify the time interval tspan=0:0.01:10.
- (c)
- Set initial values for each state variable.
- (d)
- Specify non-default options for the ODE solver,odeset(’RelTol’,1e-4,’AbsTol’,1e-3,’NormControl’,’on’).
- (e)
- Build ode45 solver syntax.
- (f)
- Define the desired trajectory.
- (g)
- Plot customized figures.
- (h)
- Stop time complexity counting by the toc() function.
5. Results
The experimental setup of the low-cost computational tool GNU-Octave + RPi 3B+ is shown in Figure 7. Regarding trajectory tracking control, the parameters of the SCARA robot manipulator are listed in Table 2.
Figure 7.
Experimental setup of the low-cost computational tool.
Table 2.
Parameters of the SCARA robot manipulator.
The gains of the controller were set as and . The initial and final position for the desired trajectory, as well as initial position values for each one of the joints , , are given by
All of the numerical simulations were run within a time span of seconds. Taking the benchmark for numerical simulation analysis, the performance of tracking control can be analyzed using the plot shown in Figure 8, where the dotted lines are used for the desired trajectory, the solid lines are used for trajectory tracking, and the magenta line is used for tracking error. The controller causes the robotic manipulator to follow the desired trajectory in joint space and the error tends to zero as time goes to infinity.
Figure 8.
Results of numerical simulations to demonstrate the tracking control law.
To compare the performance of the frugal simulation tool, the same benchmark case was simulated in MATLABTM and GNU-Octave running on a laptop computer with the specifications listed in Table 3. The plots of these simulations are similar to those shown in Figure 8; for this reason, these figures are not included, although an analysis of the data from both solutions is presented in more detail below.
Table 3.
Specifications of the laptop computer used.
5.1. Time Complexity and the Standard Error of the Mean
Time complexity is calculated using the wall clock time elapsed between two execution points, which is obtained with the functions tic() and toc(), since it can include the time that the computer spends processing other tasks or doing nothing at all. To this end, the time complexity of the numerical simulations is computed as the average of 10 continuous executions, which is shown in Table 4.
Table 4.
Time complexity for each computer simulation tool.
Validation of the results obtained using the proposed frugal simulation scheme GNU-Octave + RPi 3B+ was performed by verifying that the values are close to the data produced using the conventional simulation scheme used for comparison software + laptop computer.
Table 5 shows the results of the standard error of the mean (6) calculated for each of the variables solved using the ode45 solver in the benchmark case, where the results provided by MATLABTM and GNU-Octave on a laptop computer are used as reference values.
where is the reference value, is the value given by the proposed tool GNU-Octave + RPi 3B+, and n is the total of values reached during a numerical simulation.
Table 5.
Standard error for results obtained from GNU-Octave + RPi 3B+ versus reference approaches.
5.2. Frugality Score
Recently, the frugality score has been used as a parameter to measure both the consumption of computational resources and the performance of the proposed frugal innovation. Therefore, an equation is proposed to calculate a frugality score based on the equations provided by Sowiński et al. [8] and Evchenko et al. [33] that measures the frugal innovation proposal, serving as a reference for comparison with other similar proposals. This frugality score is given by
where is the frugality score, denotes a parameter related to the low-cost and open-source tool GNU-Octave + RPi 3B+, and is used to licensed software + laptop. The mean of all standard errors of the mean, shown in Table 5, is given by , which is a measure of the performance of the numerical approximation. The index w defines the weight of frugality; it can vary from 0 to 1. The values of time complexity are expressed by and . With this definition of frugality, a score function is bounded within a fixed range .
It is important to note the importance of varying w. If , the frugal proposal will be weighted only by the standard errors of the mean without regard to the time complexity value. When , the frugality score will weigh the fastest approach—that is, the smallest difference between the time complexity values.
Using data from Table 4 and Table 5, frugality lines are plotted for . For this purpose, five cases have been considered.
- Case 1. The frugality score is used to compare the reference simulation tool MATLABTM + laptop versus the proposed simulation tool GNU-Octave + RPi 3B+, with and , respectively.
- Case 2. The frugality score is used to compare the reference simulation tool GNU-Octave + laptop versus the proposed simulation tool GNU-Octave + RPi 3B+, with and , respectively.
- Case 3. A hypothetical case where a supposed frugal simulation tool results in a complexity time equal to that of MATLABTM + laptop, .
- Case 4. A hypothetical case of a frugal simulation scheme that results in a complexity time lower than that of the proposed GNU-Octave + RPi 3B+ scheme .
- Case 5. The hypothetical case of a frugal simulation scheme that would take less complexity time than the reference simulation tool MATLABTM + laptop .
The slopes of the frugality lines shown in Figure 9 are negative for simulation tools that have a complexity time greater than that of the conventional numerical simulation tool MATLABTM + laptop. The horizontal black line representing hypothetical case 3 exhibits a slope of 0, so the frugality score is related only to the standard error of the mean. In hypothetical case 4, a supposed frugal simulation scheme is analyzed that improves the results of the proposed GNU-Octave + RPi 3B+ scheme. The slope of the green line remains negative because the complexity time of this hypothetical tool is greater than the time spent by the reference scheme, but the slope of case 4 is less than the slope of the proposed simulation scheme in cases 1 and 2. Finally, the red line in case 5 shows that the slope becomes positive when the complexity time of a hypothetical simulation scheme is less than that of the reference simulation tool.
Figure 9.
Frugality lines used to evaluate the frugal simulation tools.
6. Discussion
Analysis of the results of the standard error of the mean shows that the error increases for velocity variables in relation to position variables. This may be caused by the solution strategy employed by the ode45 solver, which is designed to solve first-order differential equations. Therefore, the system of second-order differential equations that models the robotic system and its controller must be rewritten as a system of coupled first-order differential equations, resulting in an array with more elements. For this work, the augmented array of variables to be solved by ode45 was formed, placing the velocities in the first elements and the accelerations in the complementary elements. In this way, as mentioned in [34], when elements are repeatedly inserted or removed from the end of an array, Octave detects it as stack usage and attempts to use a smarter memory management strategy by pre-allocating the array in bigger chunks. This memory management is limited when the GNU-Octave + RPi 3B+ approach is used.
Although the complexity time of the proposed frugal simulation scheme is seven times greater than the conventional simulation scheme, the low cost is a key criterion for assessing the usefulness of the proposed simulation approach. While traditional simulation tools require a costly computer (USD 669.00), a Raspberry Pi 3B+ minicomputer is cheaper (USD 35.00). In addition, the cost of a perpetual MATLABTM license is USD 2250.00. Otherwise, GNU-Octave is free. The low cost of the computational tool is not the only advantage; it is also affordable for most people, as it does not require learning a new programming language. The code used is identical to that used in the licensed software widely available in the literature.
In addition, a frugality score is calculated to establish a baseline value that can be used to compare similar frugal innovations, in which a better proposal would be one that minimizes time complexity and retains the accuracy derived from the mean standard error.
7. Conclusions
In this study, a frugal simulation tool based on low-cost, open-source technology was compared with other relevant technologies, with the results validating its use in educational or research applications involving the nonlinear control of robotic systems. Furthermore, performance analysis of the simulations indicated minimal differences between the simulation approaches. This demonstrates the frugality of the proposed approach, in which technology is used to get more out of less in a contextually restrictive environment in order to achieve flexibility. Thus, the proposed simulation tool has a social impact because it can be implemented in universities with a limited budget and, individually, each student or researcher can build their own simulation lab at home for online education, complementary studies, or research.
This study is limited by the technical specifications of the computer equipment used. The Raspberry Pi minicomputer, like other development boards, is continually evolving; increased hardware capabilities will enable improved performance, reducing computation time for hardware-in-the-loop applications. Therefore, efforts will continue to design low-cost laboratory equipment for trajectory tracking of a SCARA robot prototype by implementing a nonlinear control law that executes on a Raspberry Pi minicomputer. In addition, an internet-connected graphical user interface (GUI) is expected to be designed for a real-time remote control application.
Author Contributions
Software, methodology, investigation, and writing—original draft preparation, F.J.T.; conceptualization, writing—review, and editing, I.M.; visualization, and formal analysis, A.J.B.; validation and funding acquisition, E.H.R. All authors have read and agreed to the published version of the manuscript.
Funding
This research was funded by the University of Guanajuato.
Data Availability Statement
The original contributions presented in this study are included in the article. Further inquiries can be directed to the corresponding author.
Conflicts of Interest
The authors declare no conflict of interest.
Abbreviations
The following abbreviations are used in this manuscript:
| CPU | Central Processing Unit. |
| dof | Degrees of Freedom. |
| FI | Frugal Innovation. |
| GPU | Graphics Processing Unit. |
| ODE | Ordinary Differential Equations. |
| OSH | Open-Source Hardware. |
| OSS | Open-Source Software. |
| RAM | Random Access Memory. |
| RPi | Raspberry Pi. |
| SCARA | Selective Conformal Assembly Robot Arm. |
| STEM | Science, Technology, Engineering and Mathematics. |
| TM | Trade Marker. |
| VR | Virtual Reality. |
References
- Tilak, J.B.; Kumar, A.G. Policy Changes in Global Higher Education: What Lessons Do We Learn from the COVID-19 Pandemic? High. Educ. Policy 2022, 35, 610. [Google Scholar] [CrossRef] [PubMed]
- Cardoso, A.; Oliveira, P.M.; Sá, J. Pocket Labs as a STEM Learning Tool and for Engineering Motivation. In Proceedings of the International Conference on Interactive Collaborative Learning, Vienna, Austria, 27–30 September 2022; Springer: Berlin/Heidelberg, Germany, 2022; pp. 413–422. [Google Scholar]
- Pokhrel, S.; Chhetri, R. A literature review on impact of COVID-19 pandemic on teaching and learning. High. Educ. Future 2021, 8, 133–141. [Google Scholar] [CrossRef]
- Ciolacu, M.I.; Mihailescu, B.; Rachbauer, T.; Hansen, C.; Amza, C.G.; Svasta, P. Fostering Engineering Education 4.0 Paradigm Facing the Pandemic and VUCA World. Procedia Comput. Sci. 2023, 217, 177–186. [Google Scholar] [CrossRef]
- Magana, A.J.; de Jong, T. Modeling and simulation practices in engineering education. Comput. Appl. Eng. Educ. 2018, 26, 731–738. [Google Scholar] [CrossRef]
- Chernikova, O.; Heitzmann, N.; Stadler, M.; Holzberger, D.; Seidel, T.; Fischer, F. Simulation-based learning in higher education: A meta-analysis. Rev. Educ. Res. 2020, 90, 499–541. [Google Scholar] [CrossRef]
- Bhatti, Y.; Basu, R.R.; Barron, D.; Ventresca, M.J. Frugal Innovation: Models, Means, Methods; Cambridge University Press: Cambridge, UK, 2018. [Google Scholar]
- Sowiński, P.; Rachwał, K.; Danilenka, A.; Bogacka, K.; Kobus, M.; Dąbrowska, A.; Paszkiewicz, A.; Bolanowski, M.; Ganzha, M.; Paprzycki, M. Frugal Heart Rate Correction Method for Scalable Health and Safety Monitoring in Construction Sites. Sensors 2023, 23, 6464. [Google Scholar] [CrossRef] [PubMed]
- Kwon, J.; Park, D. Hardware/software co-design for tinyml voice-recognition application on resource frugal Edge Devices. Appl. Sci. 2021, 11, 11073. [Google Scholar] [CrossRef]
- Sanchez, R.; Groc, M.; Vuillemin, R.; Pujo-Pay, M.; Raimbault, V. Development of a Frugal, In Situ Sensor Implementing a Ratiometric Method for Continuous Monitoring of Turbidity in Natural Waters. Sensors 2023, 23, 1897. [Google Scholar] [CrossRef] [PubMed]
- Jayabalan, J.; Dorasamy, M.; Raman, M. Reshaping higher educational institutions through frugal open innovation. J. Open Innov. Technol. Mark. Complex. 2021, 7, 145. [Google Scholar] [CrossRef]
- Wajid, B.; Ekti, A.R.; AlShawaqfeh, M.K. Ecebuntu-an innovative and multi-purpose educational operating system for electrical and computer engineering undergraduate courses. Electrica 2018, 18, 210–217. [Google Scholar] [CrossRef]
- Tapaskar, R.; Revankar, P.; Gorwar, M.; Hosmath, R. Pedagogical Interventions through Software Tools in Postgraduate Engineering Programme. J. Eng. Educ. Transform. 2018, 31. [Google Scholar] [CrossRef]
- Lotfi, N.; Auslander, D.; Rodriguez, L.A.; Mbanisi, K.C.; Berry, C.A. Use of Open-source Software in Mechatronics and Robotics Engineering Education–Part I: Model Simulation and Analysis. Comput. Educ. J. 2021, 12. [Google Scholar] [CrossRef]
- Saluja, M.K.; Thakur, S. Open Source Software Based Education and Training Framework for Software Engineering Education. Solid State Technol. 2020, 63, 9633–9645. [Google Scholar]
- Park, Y. Development of an Educational Code of Deriving Equations of Motion and Analyzing Dynamic Characteristics of Multibody Closed Chain Systems using GNU Octave for a Beginner. J. Appl. Comput. Mech. 2022, 8, 232–244. [Google Scholar]
- Raikar, M.M.; Desai, P.; Vijayalakshmi, M.; Narayankar, P. Upsurge of IoT (Internet of Things) in engineering education: A case study. In Proceedings of the 2018 International Conference on Advances in Computing, Communications and Informatics (ICACCI), Bangalore, India, 19–22 September 2018; IEEE: Piscataway, NJ, USA, 2018; pp. 191–197. [Google Scholar]
- Alex David, S.; Ravikumar, S.; Rizwana Parveen, A. Raspberry Pi in computer science and engineering education. In Intelligent Embedded Systems; Springer: Berlin/Heidelberg, Germany, 2018; pp. 11–16. [Google Scholar]
- Fernández-Pacheco, A.; Martin, S.; Castro, M. Implementation of an Arduino remote laboratory with raspberry Pi. In Proceedings of the 2019 IEEE Global Engineering Education Conference (EDUCON), Dubai, United Arab Emirates, 8–11 April 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 1415–1418. [Google Scholar]
- Mbanisi, K.C.; Auslander, D.M.; Berry, C.A.; Rodriguez, L.A.; Molki, M.; Lotfi, N. Promoting Open-source Hardware and Software Platforms in Mechatronics and Robotics Engineering Education. In Proceedings of the 2020 ASEE Virtual Annual Conference Content Access, Virtual, 22 June 2020. [Google Scholar]
- Fuentes, P.; Camarero, C.; Herreros, D.; Mateev, V.; Vallejo, F.; Martinez, C. Addressing Student Fatigue in Computer Architecture Courses. IEEE Trans. Learn. Technol. 2022, 15, 238–251. [Google Scholar] [CrossRef]
- Vaca, N.; Garcia-Loro, F.; Martin, S.; Rodriguez-Artacho, M. Raspberry Pi Applications in Electronics and Control Laboratories. In Proceedings of the 2022 IEEE Global Engineering Education Conference (EDUCON), Tunis, Tunisia, 28–31 March 2022; IEEE: Piscataway, NJ, USA, 2022; pp. 1709–1713. [Google Scholar]
- Choi, H.; Crump, C.; Duriez, C.; Elmquist, A.; Hager, G.; Han, D.; Hearl, F.; Hodgins, J.; Jain, A.; Leve, F.; et al. On the use of simulation in robotics: Opportunities, challenges, and suggestions for moving forward. Proc. Natl. Acad. Sci. USA 2021, 118, e1907856118. [Google Scholar] [CrossRef] [PubMed]
- Mikac, M.; Logožar, R.; Horvatić, M. Performance Comparison of Open Source and Commercial Computing Tools in Educational and Other Use—Scilab vs. MATLAB. Teh. Glas. 2022, 16, 509–518. [Google Scholar] [CrossRef]
- Idoko, P.; Ezeamii, G.C.; Idogho, C.; Peter, E.; Obot, U.; Iguoba, V. Mathematical modeling and simulations using software like MATLAB, COMSOL and Python. Magna Sci. Adv. Res. Rev. 2024, 12, 062–095. [Google Scholar] [CrossRef]
- Herho, S.; Fajary, F.; Herho, K.; Anwar, I.; Suwarman, R.; Irawan, D.E. Reappraising double pendulum dynamics across multiple computational platforms. CLEI Electron. J. 2025, 28, 18. [Google Scholar] [CrossRef]
- Rooney, M.; Matthews, S. Evaluating FFT performance of the C and Rust Languages on Raspberry Pi platforms. In Proceedings of the 2023 57th Annual Conference on Information Sciences and Systems (CISS), Baltimore, MD, USA, 22–24 March 2023; IEEE: Piscataway, NJ, USA, 2023; pp. 1–6. [Google Scholar]
- Pajankar, A.; Chandu, S. Introduction to GNU Octave. In GNU Octave by Example; Springer: Berlin/Heidelberg, Germany, 2020; pp. 1–31. [Google Scholar]
- Behal, A.; Dixon, W.; Dawson, D.M.; Xian, B. Lyapunov-Based Control of Robotic Systems; CRC Press: Boca Raton, FL, USA, 2009; Volume 36. [Google Scholar]
- Kelly, R.; Davila, V.S.; Perez, J.A.L. Control of Robot Manipulators in Joint Space; Springer Science & Business Media: Berlin/Heidelberg, Germany, 2005. [Google Scholar]
- Lewis, F.L.; Dawson, D.M.; Abdallah, C.T. Robot Manipulator Control: Theory and Practice; CRC Press: Boca Raton, FL, USA, 2003. [Google Scholar]
- Eaton, J.W.; Bateman, D.; Hauberg, S.; Wehbring, R. GNU Octave-A High-Level Interactive Language for Numerical Computations Edition 5 for Octave Version 5.1. 0 February 2019. Available online: https://docs.octave.org/octave-5.2.0.pdf (accessed on 5 January 2026).
- Evchenko, M.; Vanschoren, J.; Hoos, H.H.; Schoenauer, M.; Sebag, M. Frugal machine learning. arXiv 2021, arXiv:2111.03731. [Google Scholar] [CrossRef]
- Miscellaneous Techniques (GNU Octave (Version 9.2.0))—docs.octave.org. Available online: https://docs.octave.org/v9.2.0/Miscellaneous-Techniques.html (accessed on 5 January 2026).
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2026 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.








