Journal of Robotics, Networking and Artificial Life
Vol. 5(4); March (2019), pp. 249–252
DOI: https://doi.org/10.2991/jrnal.k.190220.009; ISSN 2405-9021 print; 2352-6386 online
https://www.atlantis-press.com/journals/jrnal

Research Article

Implementation of Arduino Simulator ADVIS Visualizing theValue of Voltage on the Circuit
Tetsuro Katayama1,*, Tatsumi Nishida1, Yoshihiro Kita2, Hisaaki Yamaba1, Kentaro Aburada1, Naonobu Okazaki1
Department of Computer Science and Systems Engineering, Faculty of Engineering, University of Miyazaki, Miyazaki, Miyazaki 889-2192, Japan
School of Computer Science, Tokyo University of Technology, Hachioji, Tokyo 192-0982, Japan

12ARTICLE INFOABSTRACT

Article History

Embedded technologies are used everywhere. One of the educational materials to learn the embedded technologies is Arduino.
When a beginner designs circuit, it is possible to design the circuit that damages Arduino itself or the modules on it. Therefore,
this research implements an Arduino simulator that runs on iPad for supporting to design a circuit. In this simulator, the circuiton iPad is analyzed to detect the value of voltage on the circuit and the risk that Arduino itself or the modules are damaged.

Received 15 October 2018
Accepted 22 November 2018
Keywords
Embedded technologies
Arduinosimulator
iPad© 2019 The Authors. Published by Atlantis Press SARL.
This is an open access article distributed under the CC BY-NC 4.0 license (http://creativecommons.org/licenses/by-nc/4.0/).

1. INTRODUCTION
Embedded technologies are used everywhere and are indispensablein our daily life [1]. For example, there are cars, car navigation systems, air conditioners, televisions, and so on. As the demand forembedded software increases, its development is also diversifying.
One of the educational materials to learn the embedded technologies is Arduino. Arduino is used around the world as learning kits
[2,3]. We can learn embedded technologies by designing a circuitand controlling the circuit by programming.
The learning kits that summarize sensors, jumper wires and breadboards are also on the market, and Arduino has the advantage thateven a beginner who have never designed a circuit can easily developit. However, when a beginner designs a circuit, it is possible to design
the circuit that damages Arduino itself or the modules on it.
Therefore, this research implements Arduino simulator Arduino
Virtual Simulator (ADVIS) that runs on iPad for supporting
to design a circuit. In ADVIS, the circuit on ADVIS is analyzed
to detect the value of voltage on the circuit and the risk that Arduino
itself or the modules are damaged. These features can support todesign a circuit on Arduino.

2. ARDUINO UNO
Arduino has various kinds such as Arduino Uno, and Arduino
Leonardo, and so on. ADVIS developed in this paper simulates
Arduino Uno.
Corresponding author. Email: kat@cs.miyazaki-u.ac.jp*

Figure 1 shows an overview of Arduino Uno. Arduino Uno is adigital input/output device equipped with 8 bits microcomputer.
Arduino Uno itself has 32 KB flash memory. Therefore, even if it
is turned off, the program can be saved in it. Arduino Uno flows
electric current of 20 mA of current from each output pin. Basedon the above specifications, the value of the electric current flowing
from each output pin of ADVIS is 20 mA.
Arduino can be easily designed by using it with breadboard. Figure 2
shows an overview of a breadboard. The breadboard is a board which
does not require soldering and that can design a circuit by insertinga jumper wire or a module into a hole on the board. The current
conducting section of the breadboard is on the red line in Figure 2.
In Arduino, depending on the circuit designed by a user, it ispossible to design the circuit that damages Arduino itself on it.
Specifically, there are the followings:•• A risk of overvoltage when output pins are connected.
•• A risk of damaging the blocking diode in the Arduino itself whenthe voltage exceeding 3 V is sent to the input pin.
•• A risk of overcurrent if the input pin receives an electric current
exceeding 200 mA.
In the implementation of ADVIS in this paper, only the first andsecond risks as above can be detected.

3. ARDUINO SIMULATOR ADVISThe requirements of ADVIS is as follows:•• iPad Pro 12.9 (second generation).
•• iOS 10+.

T. Katayama et al. / Journal of Robotics, Networking and Artificial Life 5(4) 249–252

250

Using the “CLEAR” function removes all modules that are placedin the circuit design part and returns to the initial state.
Using the “BACK” function returns the circuit design part to its
previous state. Here, immediately after using the “CLEAR” function, you cannot use the “BACK” function.
Using the “RUN” function, the designed circuit is executed todetect the risk of module breakage. Figure 4 shows an example ofthe “RUN” function (Here, the image is edited for easy-to-read).
When the risk of a module breakage is detected, highlight the input
pin of the module in red.

Figure 1 | An overview of Arduino Uno.

Figure 2 | An overview of a breadboard.

Using the “VOLT RUN” function displays the value of voltage on
the designed circuit. Figure 5 shows an example of the “VOLTRUN” function (Here, the image is edited for easy-to-read).

Figure 3 | An overview of ADVIS.

Figure 3 shows an overview of ADVIS. ADVIS consists of the following three parts:•• Circuit design part.
•• Module selection part.
•• Menu part.

3.1. Circuit Design PartIn the circuit design part, a circuit is designed using jumper wires,LEDs, and resistors.
Figure 4 | Example of the “RUN” function.

3.2. Module Selection PartIn the module selection part, a module to be handled in for the circuit design part is selected. ADVIS can handle jumper wires, LEDs,and resistors only. The LED has a resistance value of 100 Ω, andwhen a voltage of 3 V or more flows, the LED lights up in green.
The resistor has a resistance value of 150 Ω.

3.3. Menu PartIn the menu part, it is implemented the “CLEAR” function, the“BACK” function, the “RUN” function, and the “VOLT RUN”
function.

Figure 5 | Example of the “VOLT RUN” function.

T. Katayama et al. / Journal of Robotics, Networking and Artificial Life 5(4) 249–252

3.4. Function of ADVISIn ADVIS, in addition to the risk of damaging the Arduino itself
described in Section 2, the risk of damaging the module can bedetected. It is target module is only LED. LED is damaged if it
receives voltage more than 3 V.

4. VERIFICATION OF ADVISIt is confirmed that ADVIS can simulate correctly the designedcircuit. The followings are verified:· Displaying of the value of voltage on the circuit.
· Detecting a risk of Arduino itself being damaged.
· Detecting a risk of module being damaged.

4.1. Displaying of Value of Voltage
on the Circuit
To display the value of voltage on the circuit, it can be displayedby using the “VOLT RUN” function. As an example, connect 5 V
pin and Vin pin to the breadboard, respectively. Figure 6 shows theresult that the “VOLT RUN” function is executed.
From Figure 6, 5 V is displayed on the circuit connected to the 5 V
pin, and 10 V is displayed on the circuit connected to the Vin pin.

251

From Figure 7, 5 V is displayed on the circuit, and 2 V, whichis calculated from Ohm’s law (V = 0.02 × 150), is displayed onthe circuit.
Therefore, it can be confirmed that ADVIS displays the valueof voltage.

4.2. Detecting a Risk of Arduino Itself
Being Damaged
In order to detect where there is a risk of corruption of Arduino
itself, it can be displayed by using the “VOLT RUN” function. As anexample, connect 5 V pin and Vin pin to input/output pins. In thiscircuit because the voltage exceeding 3 V is followed to the input
pin, there is a risk that the blocking diode of the Arduino itself will
be damaged. Figure 8 shows the result that the “VOLT RUN” function is executed.
From Figure 8, ADVIS can display the Arduino input/output pinsin red when the risk that the Arduino itself is damaged is detected.

4.3. Detecting a Risk of Module
Being Damaged

Next, the resistor and the 5 V pin to the breadboard are connected. Figure 7 shows the result that the “VOLT RUN” function
is executed.

To detect where there is a risk of corruption of modules, it can bedisplayed by using the “RUN” function. As an example, connect theLED to the 5 V pin. In this circuit, there is a risk of damaging theLED because it receives the value of voltage higher than 3 V. Figure 9shows the result that the “RUN” function is executed.

Figure 6 | Displaying the value of voltage on the circuit.

Figure 8 | Detecting a risk of Arduino itself being damaged.

Figure 7 | Displaying of value of voltage using resistor.

Figure 9 | Detecting a risk of the module being damaged.

T. Katayama et al. / Journal of Robotics, Networking and Artificial Life 5(4) 249–252

252

From Figure 9, ADVIS can display the input pin in red when therisk that the module is damaged is detected.

5. CONCLUSION
This research has implemented an Arduino simulator ADVIS thatruns on iPad for supporting to design a circuit. The implemented
ADVIS has the following functions:•• Designing a circuit on Arduino.
•• Visualizing the value of voltage in the circuit.
•• Detecting a risk of Arduino itself being damaged.
•• Detecting a risk of module being damaged.
It can be confirmed that the above functions can be implemented
correctly. Consequently, ADVIS can support to design a circuit.
Future issues are as follows:•• Save function of the designed circuit.

•• Circuit control by programming.
•• A function to automatically generate a program based on thedesigned circuit.
•• Implementation of resistors with various values and othermodules.

REFERENCES[1] M. Hirayama, Current state of embedded software, Inf. Process.
45 (2004), 677–681 (in Japanese).
[2] P. Jamieson, Arduino for teaching embedded systems. Are computer scientists and engineering educators missing the boat?,
Proc. 7th Int’l Conf. on Frontiers in Education: Computer Science
and Computer Engineering (FECS’11), 2011, pp. 289–294.
[3] M. El-Abd, A review of embedded systems education in theArduino age: lessons learned and future directions, Int. J. Eng.
Pedagogy 7 (2017), 79–93.

Authors Introduction
Tetsuro Katayama

Hisaaki Yamaba

Tetsuro Katayama received the PhD
degree in engineering from Kyushu
University, Fukuoka, Japan in 1996.
From 1996 to 2000 he has been a Research
Associate at the Graduate School ofInformation Science, Nara Instituteof Science and Technology, Japan.
Since 2000 he has been an Associate
Professor at Faculty of Engineering,Miyazaki University, Japan. He is currently a Professor with the Faculty of Engineering, University ofMiyazaki, Japan. His research interests include software testingand quality. He is a member of the IPSJ, IEICE, and JSSST.

Hisaaki Yamaba received the B.S. and M.S.
degrees in chemical engineering from Tokyo
Institute of Technology, Japan, in 1988 and1990, respectively, and the PhD degree insystems engineering from University ofMiyazaki, Japan, in 2011. He is currently
an Assistant Professor with the Faculty ofEngineering, University of Miyazaki, Japan.
His research interests include network security and user authentication. He is a member of SICE and SCEJ.
Kentaro Aburada
Kentaro Aburada received the B.S., M.S.,
and PhD degrees in computer science andsystem engineering from the University ofMiyazaki, Japan, in 2003, 2005 and 2009,respectively. He is currently an Associate
Professor with the Faculty of Engineering,
University of Miyazaki, Japan. His researchinterests include computer network andsecurity. He is a member of IPSJ and IEICE.

Tatsumi Nishida
Tatsumi Nishida received the Bachelor
degree in Information Science fromKyushu Sangyo University, Fukuoka,
Japan in 2018. He is currently a Graduate
School of Engineering, University ofMiyazaki, Japan.

Naonobu Okazaki
Yoshihiro Kita
Yoshihiro Kita received a PhD degree insystems engineering from University ofMiyazaki, Japan, in 2011. He is currently
an Assistant Professor with the Computer
Science, Tokyo University of Technology,
Japan. His research interests software
testing and biometric authentication.

Naonobu Okazaki received his B.S., M.S.,
and PhD degrees in electrical and communication engineering from Tohoku University,
Japan, in 1986, 1988 and 1992, respectively.
He joined the Information Technology
Research and Development Center,
Mitsubishi Electric Corporation in 1991. Heis currently a Professor with the Faculty ofEngineering, University of Miyazaki since
2002. His research interests include mobile network and network
security. He is a member of IPSJ, IEICE and IEEE.