1. Introduction
In almost any discipline, there is always a gap between theory and practical knowledge. This gap is particularly wide in some engineering fields, such as mechanical or electrical engineering [
1]. This situation is especially noticeable at an educational level, where students are able to solve theoretical problems, but they are not capable of applying this background to develop practical solutions. This work describes a solution to bridge this gap in electronics at the university level, reducing the intellectual distance between the academic world and the industry. Any student of electrical and electronics engineering is expected to be able to design and implement an electronic circuit of a certain degree of complexity. To succeed in that, many different competences should be learnt during his or her study. However, apart from the mentioned gap between theory and practice, sometimes the students barely find the links and synergies among the different lectures. Therefore, students or graduates face many troubles trying to build such electronic applications, feeling insecure and wasting too much time and resources.
Basic knowledge and specific skills about sensors and actuators, signal conditioning stages, communication to other entities and storage of information are essential to design and implement any fully functional electronic system. For this purpose, conventional electronic laboratories make use of protoboards, cables, through-holes components and, sometimes, they also employ stripboard and solder the components. However, because of this lack of connection among competences and, especially, between theory and practice, students and even graduates find these kinds of tasks to be hard. Moreover, these practices are usually far from real industrial environments where, for instance, integrated circuits and surface-mounted devices (SMD) are employed.
This work proposes another type of solution to tackle the same tasks: reconfigurable electronics. This term refers to those electronics systems that can change their inner physical structure in order to cope with different incoming signals. Reconfigurable circuits are increasingly present in a wide range of applications, from consumer electronics to medicine or defense. These kinds of circuits offer a performance comparable to that obtained using application-specific integrated circuits (ASICs), with the additional advantage that they do not require neither large nonrecurring engineering (NRE) costs nor long development times [
2]. These tools, apart from also being utilized at the industrial level, offer a complete framework for students to easily and quickly learn the design of electronic circuits, providing the desirable link between theory and practice.
Furthermore, students are usually encouraged to simulate their circuit designs before attending labs session, which allows them to validate their designs prior to their assembly. However, if they address the design of an analog filter or an amplifier, the number of possible configurations together with the calculus of the associated capacitors and resistors limit the possibility of testing them in practical implementations during the lecture. Reconfigurable electronics helps to tackle this issue from a top-down approach. Thanks to their predefined electronics blocks and their inherent reconfigurability, students are able to test different configurations of gain, bandwidth and/or cut-off frequency without the necessity of building different electronic circuits. Thus, once the required parameters for the designs are obtained, the assembly of a custom circuit based on discrete components becomes both easier and faster. Moreover, reconfigurable electronics platforms constitute low-priced and complete solutions for remote and online learning, providing for both students and teachers the freedom to work and learn at home. This aspect is of crucial interest for self-learning, serving as a valuable tool for people who study and work at the same time. In extreme situations, such as global pandemics, reconfigurable electronics platforms can be a link to practical laboratory competences during confinement and shutdown periods.
This paper is structured as follows. First, the different reconfigurable electronic platforms available on the market are described. After that, the competences and tools that students might learn by using these kinds of solutions are presented, followed by a real example executed in a university laboratory for Master students. Finally, the main conclusions are drawn.
2. Reconfigurable Electronics Platforms
Different reconfigurable solutions can be found on the market. This section describes the most common platforms, highlighting their resources, whereas a brief comparison is presented in
Table 1.
2.1. Field Programmable Gate Arrays (FPGAs)
FPGAs consist of a matrix of logic blocks (LB) and an interconnection network. The functionality of LBs and the configuration of the interconnection network can be modified through the download in the FPGA of a set of bits, which defines the hardware configuration [
3]. The LBs are typically organized in a regular matrix, which is surrounded by the interconnection network. The LBs in the periphery are connected to the input/output blocks (IOB) to enable the FPGA to communicate with an external device. FPGA are normally used to implement applications with an embedded microprocessor [
4] and/or applications with dedicated processing [
5,
6].
2.2. Field Programmable Analog Arrays (FPAAs)
More recently, FPAAs have been introduced as an alternative for the rapid prototyping of analog circuits [
7]. Just like FPGAs, FPAAs consist of an interconnection network that allows to route analog signals towards their different configurable analog blocks (CABs) [
8]. Examples of analog functions implemented by means of CABs are filters, integrators, amplifiers or comparators, among others. In this way, many researchers have considered the use of FPAAs for their electronic designs in order to implement analog functions [
9], or process analog signals [
10,
11,
12]. Thus, it is expected that, as the FPAAs become more efficient and cheaper, they will see a growing interest for use in engineering projects, especially in those where real-time processing is essential since they receive, process and transmit signals without the need of A/D or D/A conversions [
13].
2.3. Software-Defined Radio (SDR)
Since its emergence, the software-defined radio platforms have also attracted an increasing interest for the rapid prototyping in wireless networking, enabling a shift from the custom inflexible hardware radio platforms to the parametrizable and software reprogrammable architectures [
14]. Thus, because of their inherent advantages, such as rapid design cycles, flexible real-time operations, reusable hardware, as well as ease of manufacturing and upgrading, SDRs have become an invaluable tool not only in the field research and development, but also at the educational level [
15]. In fact, SDRs are already being used in several courses, contributing to a decrease in the learning curve associated with the development of communication systems, as it has been demonstrated by studies in different universities [
16].
2.4. Programmable System-on-Chip (PSoC®)
PSoC
® is a family of SoCs, which combines configurable analog and digital circuitry with a microcontroller and a programmable routing and interconnecting network (see
Figure 1). Contrary to SDRs, the PSoC
®s integrate all the reconfigurable hardware and digital domains in the same silicon die; besides, they offer more versatility for the implementation of electronics devices, since they are not limited to radio-based applications. These platforms allow both digital and analog processing, but also they have dedicated communication interfaces such as I2C, USB, CAN, JTAG, etc. Due to their versatility, in recent years these devices have attracted a lot of interest [
17,
18,
19,
20], and can also be found in many commercial products [
21].
3. Reconfigurable Electronics as a Teaching Tool
Taking advantage of the reconfigurability of the described commercial solutions, the designers (students, graduates, professors) have multiple available resources that can be configured as desired for each application/project. This feature is of special interest in lab courses at the M.Eng. level since it reduces the time intended for the assembly of the circuits using discrete components (which is a competence that students are expected to possess at this level). In this way, the reconfigurable electronics help to seize the lab sessions to understand and develop what the session is intended for: communication protocols, signal conditioning, A/D or D/A conversions, or measurement equipment skills.
This reason has led many professors to adopt reconfigurable electronics for their courses. For instance, Mahmoudi et al. [
22] use a reconfigurable prototyping platform based on digital signal processors (DSP) to implement a wide range of power conversion circuits and systems. Given that power electronic converters have a fairly standardized composition, the use of this platform allowed them to implement and study different power conversion topologies with different control algorithms on the same board. Pimentel et al., for their part, opt for the use of a SDR for their courses on wireless communications and networks thanks to the versatility that this tool offers for implementing different modulation schemes and protocols on the same device [
23]. In the same way, Morales et al. also make use of a reconfigurable platform for the development of the subject “Circuits and Electronic systems for biomedical applications” for electronics engineering students [
24]. Specifically, they use the programmable analog front-ends (AFEs) of the PSoC
® devices to acquire different bio-signals, such as the electrocardiogram, and the integrated processing engine for their subsequent processing.
Therefore, there are several specific competences and skills that can be learned and trained by using such platforms, as follows:
- -
Signal Conditioning. The use of any electronic device requires the understanding of the specifications collected in its datasheet (e.g., operating voltage, work frequency, etc.). This information is fundamental for choosing the electronic components and designing the final system. For instance, any sensor or actuator requires a signal conditioning stage that needs to match its specifications and the ones of the final system.
- -
Programming. Almost any electronic application has a chip or microcontroller that needs to be programmed [
25], and the same applies to these kinds of platforms. In this way, these tools are also useful to work with different programming languages (e.g., C is used to program the ARM microcontroller of the PSoC
®, while FPGAs are usually programmed in either VHDL or Verilog).
- -
Communications protocols. There are several standard wire communications protocols that are widely used to interconnect devices and modules, such as I2C or SPI [
26,
27]. However, some electronic chips also have their own protocols that must be implemented for their operation, not only in terms of programming but also in terms of hardware. This issue can also be addressed by means of reconfigurable electronics. Besides, SDRs also offer the possibility to implement several wireless protocols in the same hardware [
28], avoiding the use of a single custom-hardware device for each wireless protocol (e.g., 82.11 b/g/n, ZigBee, BLE, LoRa, etc.).
- -
Connections. The configuration of connections, i.e., which pins can be or need to be selected for each kind of function. For instance, some pins are reserved for outputs and inputs, or for the clock signal.
- -
Testing of final systems. These tools provide the perfect environment to test different final system configurations without wasting too many resources, in terms of both electronic components and engineering time, giving the opportunity to have several prototypes, before creating a customized printed circuit board (PCB).
4. Example of Use
A lab course was designed in order to evaluate these solutions as educational tools, in which the main resource was a PSoC®. This section presents the formal lecture details, followed by the lecture program. Finally, both students’ opinions and professors’ experiences are summarized.
4.1. Lab Course Details
The official information of this lab course is found in
Table 2, and in the following, the objectives, pre-requirements and expected results are detailed.
- -
Objectives. The course is based on the TUMino Sensor Node shields, which provide a unified modular framework for IoT sensors based on the Arduino UNO form factor, as shown in
Figure 2. In particular, the students work on the design, fabrication and characterization of IoT sensor nodes with a main focus on power supply, physical transducers (sensors), signal conditioning, A/D conversion and PSoC
® programming. The students are given a set of TUMino shields, which integrate different kinds of sensors, such as temperature, humidity, air-quality or magnetic sensors, among others. In this course, the TUMino shields are used in combination with a Cypress PSoC
® platform. The use of this reconfigurable platform helps the students to understand in an easier way some of the basic concepts when designing an electronic device. This is possible thanks to the pre-verified “virtual chips” included in the intuitive and graphical PSoC
® Creator™ Integrated Design Environment (IDE) (see
Figure 3). Therefore, the students can drag-and-drop the different components (analog and digital) into the design and configure them as a function of the final application requirements, thus avoiding the complexity of code-based configurations. Once the different analog and digital components are configured as desired, the students can generate the application code using the C language and upload it to the ARM
® Cortex
® microcontroller.
- -
Pre-requirements. The students should have basic knowledge on electronic devices’ physics, material sciences, electronic circuits and printed circuit board (PCB) prototyping. It is suggested that the students should have participated in the modules related to energy harvesters and/or nanotechnology and/or nano-systems (or other related subjects).
- -
Expected results. After completion of the module, the students should be able to evaluate sensor nodes in the framework of the so-called Internet of Things (IoT), both at the device and circuit level. They are expected to comprehensively review building blocks of IoT devices and circuits at different levels of abstraction.
4.2. Evaluation of the Lab Course
The success of reconfigurable electronics as a teaching tool in electronics engineering was based on questionnaires distributed at the begging and at the end of the lab course. These questionaries contributed the core of the empirical methodology of data collection together with the professors’ notes during the lab sessions and the professors’ evaluations of prototypes and reports submitted by students and the students’ presentations. All professors already had experience in similar laboratories, so that they could assess the impact of the strategy followed in this lab course.
4.3. Lab Course Program
The first session was intended to explain the lab course details and to plan the following sessions with the students. At the beginning of this first session, the students were asked to fill in a survey in order to get to know their previous knowledge and interest, together with their expectations for this course. The questionnaire revealed that, although all of the students knew about Arduino, only 20% of them had previously used it. None of the students had worked with neither analog nor digital sensors before. In addition, all of them acknowledged that they did not know what the PSoC® was.
After that, the students were split into 2–3 people groups and asked to select one of the two proposed topics: (i) capacitive relative humidity (RH) sensors similar to the one described in [
29], or (ii) resistive temperature sensors similar to the one detailed in [
19]. During the next lab session, in the lab, they tested their sensors in a climatic chamber (VCL 4006 from VöTSCH) and impedance analyzer (E4990A from Keysight Technologies) to extract the calibration curve and to know the dynamic range of the sensors in the operative limits. Next, students prepared part of their project at home with the provided resources (PSoC
® Kit, Arduino board, sensors and some external components, such as resistors, capacitors and wires), implementing the readout circuit for the next session. They had to convert the analog sensor into an I2C digital sensor using both the analog and digital reconfigurable domains of the PSoC
® device. An example of the implementation is shown in
Figure 3a for the readout circuit of a temperature sensor. Once the circuit was designed, all components were properly configured and the microcontroller was programmed, they again tested the sensor in the climatic chamber, connected this time to the PSoC
® platform and transmitting the data to the Arduino board. To do so, they had to cover the following areas: (i) circuit design, (ii) microcontroller programming, (iii) pin assignation (internally with the PSoC
® resources and externally between sensors and both PSoC
® and Arduino), (iv) communication protocol (in this case I2C, using the Arduino board as the master and the PSoC
® microcontroller as the slave, see
Figure 3b) and (v) testing and debugging.
The last session consisted of a group presentation, where students described their designs and different tasks carried out during the course. Students also showed the functioning of their prototypes. After the presentation, both the professors and the audience asked questions related to their work.
4.4. Students’ Outcomes and Opinions on the Lab Course Program
Right after the defense of their projects, the students were asked, by means of an anonymous quiz, some questions related to their experience with this course. Below, the questions and a summary of their answers are presented.
For this question, 80% of students agreed that this lab course gave them valuable knowledge and that they learned important tools for an electronics engineer, from circuit design to testing real sensor nodes. Furthermore, 20% of the students commented that this was the first time that they developed a complete system from design to implementation and characterization.
All students agreed that the course length was too short to succeed in all the tasks, especially because their previous experience in some areas was too weak and they needed to invest more effort and time than expected.
There was a general consensus that the students found the organization of the different tasks difficult, since this course required continuous collaborative work. With respect to technical difficulties, three aspects were pointed out as being especially difficult: design of conditioning circuits, microcontroller programming and configuration of the communication protocols.
All students were satisfied with the course since they considered that the skills developed during the lab would help them in their professional careers.
4.5. Proffesors’ Experience
The professors involved in this course followed the students’ progress in the lab sessions, during mentoring hours and in the final defense. It was clear that all students were overwhelmed during the first sessions, mainly because it was their first time facing the design of a complete electronic node. We also noticed that the use of the reconfigurable platforms resulted in an increase of the required efforts in these first sessions with respect to other electronic lab courses, given that they had to go through new hardware and software tools. However, once the students became familiar with the different tools, we noticed the positive effects of this approach in their learning curve: the students not only achieved the different milestones faster than when this lecture was given in the traditional way, but they were also able to identify and fix the different bugs more easily. This latter point was possibly the greatest advantage provided by the reconfigurable platforms in this lab course, since handling these issues on the breadboard implementations built in the previous editions was really a great bottleneck for most of the students. It is worth mentioning that all professors and teaching staff involved in the course had previous experience with these types of experimental courses and lab practices, and all stated that the experience with the PSoC® platform was gratifying.
5. Conclusions
This case report addressed the potential of reconfigurable electronics as a teaching tool. As it has been described, the inherent properties of reconfigurable devices make their use very interesting to provide the engineering students with the possibility to put into practice their theoretical knowledge in a fast and easier way. This is possible thanks to their versatility, hardware reconfigurability and short development time when compared with the traditional off-the-shelf-based designs. After describing the advantages that this technology brings to the acquisition of the basic competencies of an electronics engineering student, we presented a real case study, in which reconfigurable electronics were used to facilitate students’ understating of the different sub-areas covered in their curricula. Owing to its success as demonstrated by the students’ final defenses, survey questionnaires and the great reception by the students, with this work, we encourage other lecturers to include these kinds of methodologies in their study program.
Author Contributions
Conceptualization, A.R. and D.P.M.; methodology, J.F.S. and V.D.B.; validation, A.R., M.H., J.F.S. and V.D.B.; formal analysis, N.R. and F.J.R.; resources, M.B.; writing—original draft preparation, A.R. and F.J.R.; writing—review and editing, N.R. and D.P.M.; supervision, M.B. All authors have read and agreed to the published version of the manuscript.
Funding
This work was supported in part by the European Commission through the fellowship H2020-MSCA-IF-2017-794885-SELFSENS and by the Spanish Government through the predoctoral grant FPU16/01451.
Data Availability Statement
Data are available upon request to the authors.
Conflicts of Interest
The authors declare no conflict of interest.
References
- Brunhaver, S.R.; Korte, R.F.; Barley, S.R.; Sheppard, S.D.; Freeman, R.; Salzman, H. Bridging the gaps between engineering education and practice. US Eng. Glob. Econ. 2018, 129–163. [Google Scholar]
- Olsson, R.H.; Bunch, K.; Gordon, C. Reconfigurable electronics for adaptive rf systems. In Proceedings of the Compound Semiconductor Integrated Circuit Symposium (CSICS), 2016 IEEE, Austin, TX, USA, 23–26 October 2016; pp. 1–4. [Google Scholar]
- Ebrahimi, A.; Zandsalimy, M. Evaluation of fpga hardware as a new approach for accelerating the numerical solution of cfd problems. IEEE Access 2017, 5, 9717–9727. [Google Scholar] [CrossRef]
- Rigoni, A.; Manduchi, G.; Luchetta, A.; Taliercio, C.; Schröder, T. A framework for the integration of the development process of linux fpga system on chip devices. Fusion Eng. Des. 2018, 128, 122–125. [Google Scholar] [CrossRef] [Green Version]
- Parrilla, L.; Álvarez-Bermejo, J.A.; Castillo, E.; López-Ramos, J.A.; Morales-Santos, D.P.; García, A. Elliptic curve cryptography hardware accelerator for high-performance secure servers. J. Supercomput. 2019, 75, 1107–1122. [Google Scholar] [CrossRef]
- de Abreu de Sousa, M.A.; Pires, R.; Del-Moral-Hernandez, E. Somprocessor: A high throughput fpga-based architecture for implementing self-organizing maps and its application to video processing. Neural Netw. 2020, 125, 349–362. [Google Scholar] [CrossRef] [PubMed]
- Wawryn, K.; Suszynski, R. Prototyping of wta anns using fpaa devices. In Proceedings of the 2017 MIXDES-24th International Conference Mixed Design of Integrated Circuits and Systems, Bydgoszcz, Poland, 22–24 June 2017; pp. 463–467. [Google Scholar]
- Natarajan, A.; Hasler, J. Hodgkin–huxley neuron and fpaa dynamics. IEEE Trans. Biomed. Circuits Syst. 2018, 12, 918–926. [Google Scholar] [CrossRef] [PubMed]
- Romero, F.J.; Morales, D.P.; Godoy, A.; Ruiz, F.G.; Tienda-Luna, I.M.; Ohata, A.; Rodriguez, N. Memcapacitor emulator based on the miller effect. Int. J. Circuit Theory Appl. 2019, 47, 572–579. [Google Scholar] [CrossRef]
- Morales, D.; Garcia, A.; Castillo, E.; Carvajal, M.; Banqueri, J.; Palma, A. Flexible ecg acquisition system based on analog and digital reconfigurable devices. Sens. Actuators A Phys. 2011, 165, 261–270. [Google Scholar] [CrossRef]
- Tian, Y.; Cai, K.; Zhang, D.; Liu, X.; Wang, F.; Shirinzadeh, B. Development of a xyz scanner for home-made atomic force microscope based on fpaa control. Mech. Syst. Signal Process. 2019, 131, 222–242. [Google Scholar] [CrossRef]
- Shah, S.; Teague, C.N.; Inan, O.T.; Hasler, J. A proof-of-concept classifier for acoustic signals from the knee joint on a fpaa. In Proceedings of the 2016 IEEE SENSORS, Orlando, FL, USA, 30 October–3 November 2016; pp. 1–3. [Google Scholar]
- Shah, S.; Hasler, J. Low power speech detector on a fpaa. In Proceedings of the 2017 IEEE International Symposium on Circuits and Systems (ISCAS), Baltimore, MD, USA, 28–31 May 2017; pp. 1–4. [Google Scholar]
- Sklivanitis, G.; Gannon, A.; Batalama, S.N.; Pados, D.A. Addressing next-generation wireless challenges with commercial software-defined radio platforms. IEEE Commun. Mag. 2016, 54, 59–67. [Google Scholar] [CrossRef]
- Wyglinski, A.M.; Orofino, D.P.; Ettus, M.N.; Rondeau, T.W. Revolutionizing software defined radio: Case studies in hardware, software, and education. IEEE Commun. Mag. 2016, 54, 68–75. [Google Scholar] [CrossRef]
- Bilén, S.G.; Wyglinski, A.M.; Anderson, C.R.; Cooklev, T.; Dietrich, C.; Farhang-Boroujeny, B.; Urbina, J.V.; Edwards, S.H.; Reed, J.H. Software-defined radio: A new paradigm for integrated curriculum delivery. IEEE Commun. Mag. 2014, 52, 184–193. [Google Scholar] [CrossRef]
- Mois, G.; Folea, S.; Sanislav, T. Analysis of three iot-based wireless sensors for environmental monitoring. IEEE Trans. Instrum. Meas. 2017, 66, 2056–2064. [Google Scholar] [CrossRef]
- Navarro-Camba, E.A.; Felici-Castell, S.; Segura-García, J.; García-Pineda, M.; Pérez-Solano, J.J. Feasibility of a stochastic collaborative beamforming for long range communications in wireless sensor networks. Electronics 2018, 7, 417. [Google Scholar] [CrossRef] [Green Version]
- Romero, F.J.; Rivadeneyra, A.; Toral, V.; Castillo, E.; García-Ruiz, F.; Morales, D.P.; Rodriguez, N. Design guidelines of laser reduced graphene oxide conformal thermistor for iot applications. Sens. Actuators A Phys. 2018, 274, 148–154. [Google Scholar] [CrossRef]
- Toral-López, V.; González, C.; Romero, F.J.; Castillo, E.; Parrilla, L.; García, A.; Rodriguez, N.; Rivadeneyra, A.; Moralesa, D. Reconfigurable electronics: Addressing the uncontrolled increase of waste electrical and electronic equipment. Resour. Conserv. Recycl. 2018, 138, 47–48. [Google Scholar] [CrossRef]
- Cypress Semiconductor. PSoC® 5LP: CY8C52LP Family Datasheet. Available online: http://www.cypress.com/file/45916/download (accessed on 8 March 2022).
- Mahmoudi, H.; Aleenejad, M.; Ahmadi, R. Reconfigurable rapid prototyping platform for power electronic circuits and systems for research and educational purposes. IET Power Electron. 2018, 11, 1314–1320. [Google Scholar] [CrossRef]
- Pimentel, J.R.; Baltuano, O.; Chan, R.; Tincopa, J.-P. Teaching and learning engineering subjects in the times of the iot: A case study on a course on wireless communications and networks. In Proceedings of the IECON 2017-43rd Annual Conference of the IEEE Industrial Electronics Society, Beijing, China, 29 October–1 November 2017; pp. 3589–3594. [Google Scholar]
- Morales, D.; Castillo, E.; Parrilla, L.; García, A.; Otín, A. Towards project-based learning applied to the electronic engineering studies. In Proceedings of the 2015 Conference on Design of Circuits and Integrated Systems (DCIS), Estoril, Portugal, 25–27 November 2015; pp. 1–5. [Google Scholar]
- Yiu, J. The Definitive Guide to Arm® Cortex®-m0 and Cortex-m0+ Processors; Academic Press: Cambridge, MA, USA, 2015. [Google Scholar]
- NXP Semiconductors. I2c-Bus Specification and User Manual Um10204. Available online: http://www.nxp.com/documents/user_manual/UM10204.pdf (accessed on 8 March 2022).
- Oudjida, A.K.; Berrandjia, M.L.; Tiar, R.; Liacha, A.; Tahraoui, K. Fpga implementation of i2c & spi protocols: A comparative study. In Proceedings of the 2009 16th IEEE International Conference on Electronics, Circuits and Systems-(ICECS 2009), Yasmine Hammamet, Tunisia, 13–16 December 2009; pp. 507–510. [Google Scholar]
- Gavrilă, C.; Kertesz, C.-Z.; Alexandru, M.; Popescu, V. Reconfigurable iot gateway based on a sdr platform. In Proceedings of the 2018 International Conference on Communications (COMM), Bucharest, Romania, 14–16 June 2018; pp. 345–348. [Google Scholar]
- Romero, F.J.; Rivadeneyra, A.; Salinas-Castillo, A.; Ohata, A.; Morales, D.P.; Becherer, M.; Rodriguez, N. Design, fabrication and characterization of capacitive humidity sensors based on emerging flexible technologies. Sens. Actuators B Chem. 2019, 287, 459–467. [Google Scholar] [CrossRef]
| Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2022 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 (https://creativecommons.org/licenses/by/4.0/).