-
Notifications
You must be signed in to change notification settings - Fork 2
/
floss-arduino.lof
138 lines (138 loc) · 16.2 KB
/
floss-arduino.lof
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
\addvspace {10\p@ }
\addvspace {10\p@ }
\contentsline {figure}{\numberline {2.1}{\ignorespaces Functional block diagram of a microcontroller\relax }}{6}{figure.caption.11}%
\contentsline {figure}{\numberline {2.2}{\ignorespaces ADC resolution\relax }}{9}{figure.caption.12}%
\contentsline {figure}{\numberline {2.3}{\ignorespaces The logo of Open Source Hardware\relax }}{10}{figure.caption.13}%
\contentsline {figure}{\numberline {2.4}{\ignorespaces Arduino Uno Board\relax }}{13}{figure.caption.14}%
\contentsline {figure}{\numberline {2.5}{\ignorespaces Arduino Mega Board\relax }}{14}{figure.caption.16}%
\contentsline {figure}{\numberline {2.6}{\ignorespaces LilyPad Arduino Board\relax }}{14}{figure.caption.17}%
\contentsline {figure}{\numberline {2.7}{\ignorespaces Arduino Phone\relax }}{15}{figure.caption.19}%
\contentsline {figure}{\numberline {2.8}{\ignorespaces 3D printer\relax }}{15}{figure.caption.22}%
\contentsline {figure}{\numberline {2.9}{\ignorespaces PCB image of the Shield}}{16}{figure.caption.23}%
\contentsline {figure}{\numberline {2.10}{\ignorespaces Pictorial representation of the schematic of the Shield\relax }}{17}{figure.caption.24}%
\contentsline {figure}{\numberline {2.11}{\ignorespaces PCB of the Shield\relax }}{17}{figure.caption.25}%
\contentsline {figure}{\numberline {2.12}{\ignorespaces Picture of the Shield with all components\relax }}{19}{figure.caption.28}%
\addvspace {10\p@ }
\contentsline {figure}{\numberline {3.1}{\ignorespaces Windows device manager\relax }}{24}{figure.caption.30}%
\contentsline {figure}{\numberline {3.2}{\ignorespaces Windows device manager\relax }}{24}{figure.caption.31}%
\contentsline {figure}{\numberline {3.3}{\ignorespaces Windows update driver option\relax }}{25}{figure.caption.32}%
\contentsline {figure}{\numberline {3.4}{\ignorespaces Linux terminal to launch Arduino IDE\relax }}{26}{figure.caption.33}%
\contentsline {figure}{\numberline {3.5}{\ignorespaces Arduino IDE\relax }}{27}{figure.caption.34}%
\contentsline {figure}{\numberline {3.6}{\ignorespaces Linux terminal to launch Scilab\relax }}{33}{figure.caption.35}%
\contentsline {figure}{\numberline {3.7}{\ignorespaces Browsing toolbox directory\relax }}{35}{figure.caption.36}%
\contentsline {figure}{\numberline {3.8}{\ignorespaces Output of builder.sce\relax }}{35}{figure.caption.37}%
\contentsline {figure}{\numberline {3.9}{\ignorespaces Output of loader.sce\relax }}{36}{figure.caption.38}%
\contentsline {figure}{\numberline {3.10}{\ignorespaces Device Manager in windows\relax }}{37}{figure.caption.39}%
\contentsline {figure}{\numberline {3.11}{\ignorespaces COM port properties window\relax }}{38}{figure.caption.40}%
\contentsline {figure}{\numberline {3.12}{\ignorespaces Port number on Linux terminal\relax }}{39}{figure.caption.41}%
\contentsline {figure}{\numberline {3.13}{\ignorespaces Scilab test code output\relax }}{41}{figure.caption.42}%
\contentsline {figure}{\numberline {3.14}{\ignorespaces Arduino toolbox functions used in this book\relax }}{41}{figure.caption.43}%
\contentsline {figure}{\numberline {3.15}{\ignorespaces Sine generator in palette browser\relax }}{43}{figure.caption.44}%
\contentsline {figure}{\numberline {3.16}{\ignorespaces CSCOPE block in xcos\relax }}{44}{figure.caption.45}%
\contentsline {figure}{\numberline {3.17}{\ignorespaces CLOCK\_c block in xcos\relax }}{45}{figure.caption.46}%
\contentsline {figure}{\numberline {3.18}{\ignorespaces Sine generator in Xcos\relax }}{45}{figure.caption.47}%
\contentsline {figure}{\numberline {3.19}{\ignorespaces Sine generator Xcos output\relax }}{46}{figure.caption.48}%
\contentsline {figure}{\numberline {3.20}{\ignorespaces CSCOPE configuration window\relax }}{46}{figure.caption.49}%
\contentsline {figure}{\numberline {3.21}{\ignorespaces Simulation setup window\relax }}{47}{figure.caption.50}%
\contentsline {figure}{\numberline {3.22}{\ignorespaces Palette browser showing Arduino blocks\relax }}{48}{figure.caption.51}%
\contentsline {figure}{\numberline {3.23}{\ignorespaces Xcos block help\relax }}{48}{figure.caption.52}%
\contentsline {figure}{\numberline {3.24}{\ignorespaces Installing Python 3 on Windows\relax }}{50}{figure.caption.53}%
\contentsline {figure}{\numberline {3.25}{\ignorespaces Launching the Command Prompt on Windows\relax }}{50}{figure.caption.54}%
\contentsline {figure}{\numberline {3.26}{\ignorespaces Command Prompt on Windows\relax }}{51}{figure.caption.55}%
\contentsline {figure}{\numberline {3.27}{\ignorespaces Julia's website to download 64-bit Windows/Linux binaries\relax }}{57}{figure.caption.56}%
\contentsline {figure}{\numberline {3.28}{\ignorespaces Installing Julia 1.6.0 on Windows\relax }}{57}{figure.caption.57}%
\contentsline {figure}{\numberline {3.29}{\ignorespaces Launching the Command Prompt on Windows\relax }}{58}{figure.caption.58}%
\contentsline {figure}{\numberline {3.30}{\ignorespaces Command Prompt on Windows\relax }}{58}{figure.caption.59}%
\contentsline {figure}{\numberline {3.31}{\ignorespaces Windows command prompt to launch Julia REPL\relax }}{60}{figure.caption.60}%
\contentsline {figure}{\numberline {3.32}{\ignorespaces Windows command prompt to enter Pkg REPL in Julia\relax }}{60}{figure.caption.61}%
\contentsline {figure}{\numberline {3.33}{\ignorespaces Linux terminal to launch Julia REPL\relax }}{63}{figure.caption.62}%
\contentsline {figure}{\numberline {3.34}{\ignorespaces Linux terminal to enter Pkg REPL in Julia\relax }}{64}{figure.caption.63}%
\contentsline {figure}{\numberline {3.35}{\ignorespaces Allowing Microsoft Defender to run the executable file\relax }}{68}{figure.caption.64}%
\contentsline {figure}{\numberline {3.36}{\ignorespaces Setup of Modelica Standard Library version\relax }}{69}{figure.caption.65}%
\contentsline {figure}{\numberline {3.37}{\ignorespaces User Interface of OMEdit\relax }}{71}{figure.caption.66}%
\contentsline {figure}{\numberline {3.38}{\ignorespaces Opening a model in OMEdit\relax }}{71}{figure.caption.67}%
\contentsline {figure}{\numberline {3.39}{\ignorespaces Opening a model in diagram view in OMEdit\relax }}{72}{figure.caption.68}%
\contentsline {figure}{\numberline {3.40}{\ignorespaces Different views of a model in OMEdit\relax }}{72}{figure.caption.69}%
\contentsline {figure}{\numberline {3.41}{\ignorespaces Opening a model in text view in OMEdit\relax }}{73}{figure.caption.70}%
\contentsline {figure}{\numberline {3.42}{\ignorespaces Simulating a model in OMEdit\relax }}{74}{figure.caption.71}%
\contentsline {figure}{\numberline {3.43}{\ignorespaces Output window of OMEdit\relax }}{74}{figure.caption.72}%
\contentsline {figure}{\numberline {3.44}{\ignorespaces Examples provided in OpenModelica-Arduino toolbox\relax }}{77}{figure.caption.73}%
\addvspace {10\p@ }
\contentsline {figure}{\numberline {4.1}{\ignorespaces Light Emitting Diode\relax }}{80}{figure.caption.74}%
\contentsline {figure}{\numberline {4.2}{\ignorespaces Internal connection diagram for the RGB LED on the Shield\relax }}{80}{figure.caption.75}%
\contentsline {figure}{\numberline {4.3}{\ignorespaces Connecting Arduino Uno\ and Shield\relax }}{81}{figure.caption.76}%
\contentsline {figure}{\numberline {4.4}{\ignorespaces An RGB LED with Arduino Uno\ using a breadboard\relax }}{82}{figure.caption.77}%
\contentsline {figure}{\numberline {4.5}{\ignorespaces LED experiments directly on Arduino Uno\ board, without the Shield\relax }}{85}{figure.caption.79}%
\contentsline {figure}{\numberline {4.6}{\ignorespaces Turning the blue LED on through Xcos}}{92}{figure.caption.81}%
\contentsline {figure}{\numberline {4.7}{\ignorespaces Turning the blue LED on through Xcos for two seconds}}{93}{figure.caption.83}%
\contentsline {figure}{\numberline {4.8}{\ignorespaces Turning the blue and red LEDs on through Xcos and turning them off one by one}}{94}{figure.caption.85}%
\contentsline {figure}{\numberline {4.9}{\ignorespaces Blinking the green LED every second through Xcos}}{94}{figure.caption.87}%
\addvspace {10\p@ }
\contentsline {figure}{\numberline {5.1}{\ignorespaces Internal connection diagram for the pushbutton on the Shield\relax }}{114}{figure.caption.89}%
\contentsline {figure}{\numberline {5.2}{\ignorespaces A pushbutton to read its status with Arduino Uno using a breadboard\relax }}{114}{figure.caption.90}%
\contentsline {figure}{\numberline {5.3}{\ignorespaces A pushbutton to control an LED with Arduino Uno using a breadboard\relax }}{116}{figure.caption.91}%
\contentsline {figure}{\numberline {5.4}{\ignorespaces GUI in Scilab to show the status of the pushbutton\relax }}{120}{figure.caption.92}%
\contentsline {figure}{\numberline {5.5}{\ignorespaces Printing the pushbutton status on the display block}}{123}{figure.caption.93}%
\contentsline {figure}{\numberline {5.6}{\ignorespaces Turning the LED on or off, depending on the pushbutton}}{124}{figure.caption.95}%
\addvspace {10\p@ }
\contentsline {figure}{\numberline {6.1}{\ignorespaces Light Dependent Resistor\relax }}{138}{figure.caption.97}%
\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Pictorial representation of an LDR}}}{138}{subfigure.1.1}%
\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Symbolic representation of an LDR}}}{138}{subfigure.1.2}%
\contentsline {figure}{\numberline {6.2}{\ignorespaces Internal connection diagram for the LDR on the Shield\relax }}{138}{figure.caption.98}%
\contentsline {figure}{\numberline {6.3}{\ignorespaces An LDR to read its values with Arduino Uno\ using a breadboard\relax }}{140}{figure.caption.99}%
\contentsline {figure}{\numberline {6.4}{\ignorespaces An LDR to control an LED with Arduino Uno using a breadboard\relax }}{140}{figure.caption.100}%
\contentsline {figure}{\numberline {6.5}{\ignorespaces Xcos diagram to read LDR values}}{147}{figure.caption.101}%
\contentsline {figure}{\numberline {6.6}{\ignorespaces Plot window in Xcos to read LDR values\relax }}{147}{figure.caption.102}%
\contentsline {figure}{\numberline {6.7}{\ignorespaces Xcos diagram to read the value of the LDR, which is used to turn the blue LED on or off}}{149}{figure.caption.104}%
\contentsline {figure}{\numberline {6.8}{\ignorespaces Plot window in Xcos to read LDR values and the state of LED\relax }}{150}{figure.caption.105}%
\addvspace {10\p@ }
\contentsline {figure}{\numberline {7.1}{\ignorespaces Potentiometer's schematic on the Shield\relax }}{162}{figure.caption.107}%
\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Pictorial representation of a potentiometer}}}{162}{subfigure.1.1}%
\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Internal connection diagram for the potentiometer on the Shield}}}{162}{subfigure.1.2}%
\contentsline {figure}{\numberline {7.2}{\ignorespaces A potentiometer to control an LED with Arduino Uno using a breadboard\relax }}{164}{figure.caption.108}%
\contentsline {figure}{\numberline {7.3}{\ignorespaces Turning LEDs on through Xcos depending on the potentiometer threshold}}{169}{figure.caption.109}%
\addvspace {10\p@ }
\contentsline {figure}{\numberline {8.1}{\ignorespaces Pictorial and symbolic representation of a thermistor\relax }}{180}{figure.caption.111}%
\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Pictorial representation of a thermistor\cite {therm-wiki}}}}{180}{subfigure.1.1}%
\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Symbolic representation of a thermistor}}}{180}{subfigure.1.2}%
\contentsline {figure}{\numberline {8.2}{\ignorespaces Internal connection diagrams for thermistor and buzzer on the Shield\relax }}{181}{figure.caption.112}%
\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Thermistor connection diagram}}}{181}{subfigure.2.1}%
\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Buzzer connection diagram}}}{181}{subfigure.2.2}%
\contentsline {figure}{\numberline {8.3}{\ignorespaces A thermistor to read its values with Arduino Uno using a breadboard\relax }}{182}{figure.caption.113}%
\contentsline {figure}{\numberline {8.4}{\ignorespaces A thermistor to control a buzzer with Arduino Uno using a breadboard\relax }}{182}{figure.caption.114}%
\contentsline {figure}{\numberline {8.5}{\ignorespaces Xcos diagram to read thermistor values}}{192}{figure.caption.117}%
\contentsline {figure}{\numberline {8.6}{\ignorespaces Plot window in Xcos to read thermistor values\relax }}{193}{figure.caption.119}%
\contentsline {figure}{\numberline {8.7}{\ignorespaces Xcos diagram to read the value of thermistor, which is used to turn the buzzer on}}{194}{figure.caption.120}%
\contentsline {figure}{\numberline {8.8}{\ignorespaces Plot window in Xcos to read thermistor values and the state of LED\relax }}{196}{figure.caption.122}%
\addvspace {10\p@ }
\contentsline {figure}{\numberline {9.1}{\ignorespaces Connecting servomotor to the Shield attached on Arduino Uno\relax }}{210}{figure.caption.127}%
\contentsline {figure}{\numberline {9.2}{\ignorespaces A servomotor with Arduino Uno\ using a breadboard\relax }}{212}{figure.caption.129}%
\contentsline {figure}{\numberline {9.3}{\ignorespaces A servomotor and a potentiometer with Arduino Uno\ using a breadboard\relax }}{212}{figure.caption.130}%
\contentsline {figure}{\numberline {9.4}{\ignorespaces Rotating the servomotor by a fixed angle}}{223}{figure.caption.131}%
\contentsline {figure}{\numberline {9.5}{\ignorespaces Rotating the servomotor forward and then reverse}}{224}{figure.caption.133}%
\contentsline {figure}{\numberline {9.6}{\ignorespaces Rotating the servomotor in increments of $20^\circ $}}{226}{figure.caption.135}%
\contentsline {figure}{\numberline {9.7}{\ignorespaces Rotating the servomotor as suggested by the potentiometer}}{226}{figure.caption.137}%
\addvspace {10\p@ }
\contentsline {figure}{\numberline {10.1}{\ignorespaces L293D motor driver board\relax }}{246}{figure.caption.139}%
\contentsline {figure}{\numberline {10.2}{\ignorespaces PWM pins on an Arduino Uno\ board\relax }}{247}{figure.caption.141}%
\contentsline {figure}{\numberline {10.3}{\ignorespaces A schematic of DC motor connections\relax }}{248}{figure.caption.142}%
\contentsline {figure}{\numberline {10.4}{\ignorespaces How to connect the DC motor to the Arduino Uno\ board\relax }}{248}{figure.caption.143}%
\contentsline {figure}{\numberline {10.5}{\ignorespaces Control of DC motor for a specified time from Xcos}}{258}{figure.caption.147}%
\contentsline {figure}{\numberline {10.6}{\ignorespaces Xcos control of the DC motor in forward and reverse directions}}{260}{figure.caption.149}%
\contentsline {figure}{\numberline {10.7}{\ignorespaces Xcos control of the DC motor in both directions in a loop}}{262}{figure.caption.151}%
\addvspace {10\p@ }
\contentsline {figure}{\numberline {11.1}{\ignorespaces Block diagram representation of the Protocol\relax }}{282}{figure.caption.159}%
\contentsline {figure}{\numberline {11.2}{\ignorespaces Cycle of query-response between master and slave\relax }}{283}{figure.caption.160}%
\contentsline {figure}{\numberline {11.3}{\ignorespaces Pins in RS485 module\relax }}{284}{figure.caption.162}%
\contentsline {figure}{\numberline {11.4}{\ignorespaces Block diagram for reading the parameters in energy meter\relax }}{290}{figure.caption.169}%
\contentsline {figure}{\numberline {11.5}{\ignorespaces Experimental set up for reading energy meter\relax }}{290}{figure.caption.170}%
\contentsline {figure}{\numberline {11.6}{\ignorespaces Flowchart of Arduino firmware\relax }}{292}{figure.caption.171}%
\contentsline {figure}{\numberline {11.7}{\ignorespaces Flowchart of the steps happening in the FLOSS code\relax }}{294}{figure.caption.172}%
\contentsline {figure}{\numberline {11.8}{\ignorespaces Single phase current output on Scilab Console\relax }}{298}{figure.caption.174}%
\contentsline {figure}{\numberline {11.9}{\ignorespaces Single phase current output in energy meter\relax }}{299}{figure.caption.175}%
\contentsline {figure}{\numberline {11.10}{\ignorespaces Single phase voltage output on Scilab Console\relax }}{299}{figure.caption.176}%
\contentsline {figure}{\numberline {11.11}{\ignorespaces Single phase voltage output in energy meter\relax }}{300}{figure.caption.177}%
\contentsline {figure}{\numberline {11.12}{\ignorespaces Single phase active power output on Scilab Console\relax }}{300}{figure.caption.178}%
\contentsline {figure}{\numberline {11.13}{\ignorespaces Single phase active power output in energy meter\relax }}{301}{figure.caption.179}%
\contentsline {figure}{\numberline {11.14}{\ignorespaces Xcos diagram to read energy meter values}}{301}{figure.caption.180}%
\addvspace {10\p@ }