كتاب Make: Action - Movement, Light, and Sound with Arduino and Raspberry Pi
منتدى هندسة الإنتاج والتصميم الميكانيكى
بسم الله الرحمن الرحيم

أهلا وسهلاً بك زائرنا الكريم
نتمنى أن تقضوا معنا أفضل الأوقات
وتسعدونا بالأراء والمساهمات
إذا كنت أحد أعضائنا يرجى تسجيل الدخول
أو وإذا كانت هذة زيارتك الأولى للمنتدى فنتشرف بإنضمامك لأسرتنا
وهذا شرح لطريقة التسجيل فى المنتدى بالفيديو :
http://www.eng2010.yoo7.com/t5785-topic
وشرح لطريقة التنزيل من المنتدى بالفيديو:
http://www.eng2010.yoo7.com/t2065-topic
إذا واجهتك مشاكل فى التسجيل أو تفعيل حسابك
وإذا نسيت بيانات الدخول للمنتدى
يرجى مراسلتنا على البريد الإلكترونى التالى :

Deabs2010@yahoo.com


-----------------------------------
-Warning-

This website uses cookies
We inform you that this site uses own, technical and third parties cookies to make sure our web page is user-friendly and to guarantee a high functionality of the webpage.
By continuing to browse this website, you declare to accept the use of cookies.
منتدى هندسة الإنتاج والتصميم الميكانيكى
بسم الله الرحمن الرحيم

أهلا وسهلاً بك زائرنا الكريم
نتمنى أن تقضوا معنا أفضل الأوقات
وتسعدونا بالأراء والمساهمات
إذا كنت أحد أعضائنا يرجى تسجيل الدخول
أو وإذا كانت هذة زيارتك الأولى للمنتدى فنتشرف بإنضمامك لأسرتنا
وهذا شرح لطريقة التسجيل فى المنتدى بالفيديو :
http://www.eng2010.yoo7.com/t5785-topic
وشرح لطريقة التنزيل من المنتدى بالفيديو:
http://www.eng2010.yoo7.com/t2065-topic
إذا واجهتك مشاكل فى التسجيل أو تفعيل حسابك
وإذا نسيت بيانات الدخول للمنتدى
يرجى مراسلتنا على البريد الإلكترونى التالى :

Deabs2010@yahoo.com


-----------------------------------
-Warning-

This website uses cookies
We inform you that this site uses own, technical and third parties cookies to make sure our web page is user-friendly and to guarantee a high functionality of the webpage.
By continuing to browse this website, you declare to accept the use of cookies.



 
الرئيسيةالبوابةأحدث الصورالتسجيلدخولحملة فيد واستفيدجروب المنتدى

شاطر
 

 كتاب Make: Action - Movement, Light, and Sound with Arduino and Raspberry Pi

اذهب الى الأسفل 
كاتب الموضوعرسالة
Admin
مدير المنتدى
مدير المنتدى
Admin

عدد المساهمات : 19002
التقييم : 35506
تاريخ التسجيل : 01/07/2009
الدولة : مصر
العمل : مدير منتدى هندسة الإنتاج والتصميم الميكانيكى

كتاب Make: Action - Movement, Light, and Sound with Arduino and Raspberry Pi  Empty
مُساهمةموضوع: كتاب Make: Action - Movement, Light, and Sound with Arduino and Raspberry Pi    كتاب Make: Action - Movement, Light, and Sound with Arduino and Raspberry Pi  Emptyالخميس 22 فبراير 2024, 2:25 am

أخواني في الله
أحضرت لكم كتاب
Make: Action - Movement, Light, and Sound with Arduino and Raspberry Pi
Simon Monk  

كتاب Make: Action - Movement, Light, and Sound with Arduino and Raspberry Pi  M_a_m_22
و المحتوى كما يلي :

Table of Contents
1. Introduction . 1
Arduino and Pi . 1
Raspberry Pi . 1
Arduino 3
Choosing a Device: Arduino or Pi? 4
Alternatives 5
Summary 6
2. Arduino . 9
What Is an Arduino? 9
Installing the Arduino IDE . 11
Uploading a Sketch . 13
The Book Code 14
Programming Guide . 14
Setup and Loop . 15
Variables . 15
Digital Outputs . 16
Digital Inputs . 16
Analog Inputs 18
Analog Outputs . 19
iiiIf/Else 20
Loops 21
Functions 22
Summary . 23
3. Raspberry Pi . 25
What Is a Raspberry Pi? 25
Setting Up Your Raspberry Pi 27
Preparing a MicroSD Card with NOOBS 28
Setting Up SSH . 29
SSH on a Windows Computer . 31
SSH on Mac or Linux 32
The Linux Command Line . 32
The Book Code 34
Programming Guide . 35
Hello, World 35
Tabs and Indents 35
Variables . 36
if, while, etc . 36
The RPi.GPIO Library 37
The GPIO Header . 37
Digital Outputs . 38
Digital Inputs . 39
Analog Outputs . 39
Summary . 39
4. Quickstart . 41
Solderless Breadboard . 41
How a Breadboard Works . 43
Connecting a Breadboard to the Arduino 43
Connecting a Breadboard to the Raspberry Pi 44
Downloading the Software 45
iv Make: ActionExperiment: Controlling an LED 46
Parts List 46
Breadboard Layout . 46
Arduino Connections . 47
Arduino Software . 48
Arduino Experimentation . 49
Raspberry Pi Connections . 49
Raspberry Pi Software . 51
Raspberry Pi Experimentation . 52
Comparing the Code 52
Experiment: Controlling a Motor . 53
Parts List 53
Breadboard Layout . 54
Experimenting Without Arduino or Raspberry Pi . 55
Arduino Connections . 56
Arduino Experimentation . 57
Raspberry Pi Connections . 57
Raspberry Pi Experimentation . 58
Summary . 58
5. Basic Electronics 59
Current, Voltage, and Resistance . 59
Current . 59
Voltage . 60
Ground . 61
Resistance 61
Power . 62
Common Components 63
Resistors 63
Transistors 64
Diodes . 71
LEDs 71
Table of Contents vCapacitors 72
Integrated Circuits 72
The Ins and Outs of Connections . 73
Digital Outputs . 73
Digital Inputs . 73
Analog Inputs 73
Analog Outputs . 74
Serial Communication 74
Summary . 74
6. LEDs . 75
Regular LEDs 76
Current Limiting 76
Project: Traffic Signal 78
Parts List 79
Design . 80
Arduino Connections . 80
Arduino Software . 81
Raspberry Pi Connections . 82
Raspberry Pi Software . 83
PWM and LEDs 84
RGB LEDs . 85
Experiment: Mixing Colors . 86
Hardware . 86
Parts List 88
Arduino Connections . 88
Arduino Software . 89
Arduino Experimentation . 90
Raspberry Pi Connections . 90
Raspberry Pi Software . 91
Raspberry Pi Experimentation . 93
Summary . 93
vi Make: Action7. Motors, Pumps, and Actuators . 95
Controlling Speed (PWM) 96
Experiment: Controlling the Speed of a DC Motor 96
Hardware . 96
Arduino Connections . 97
Arduino Software . 98
Arduino Experimentation 100
Raspberry Pi Connections 100
Raspberry Pi Software . 101
Raspberry Pi Experimentation 102
Controlling DC Motors with a Relay . 102
Switching a Relay with Arduino or Raspberry Pi . 103
Relay Modules . 105
Experiment: Controlling a DC Motor with a Relay Module 106
Parts List 106
Wiring . 106
Arduino Software 107
Raspberry Pi Software . 108
Choosing a Motor 108
Torque 108
RPM . 109
Gears 110
Gearmotors . 110
Pumps . 110
Peristaltic Pumps 111
Velocity Pumps 112
Project: Arduino House Plant Waterer . 114
Design 114
Parts List 115
Construction 116
Software 118
Table of Contents viiUsing the Project 120
Linear Actuators . 120
Solenoids 122
Summary 123
8. Advanced Motor Control 125
H-Bridges 126
H-Bridge on a Chip . 128
Experiment: Control the Direction and Speed of a Motor 130
Parts List 131
Design 132
Breadboard Layout 133
Experimenting 135
Arduino Connections 136
Arduino Software 137
Arduino Experimentation 139
Connecting the Raspberry Pi . 140
Raspberry Pi Software . 141
Raspberry Pi Experimentation 142
Other H-Bridge ICs . 143
L298N . 143
TB6612FNG . 147
H-Bridge Modules 147
Project: Arduino Beverage Can Crusher . 149
Parts List 149
Wiring . 150
Mechanical Construction 151
Arduino Software 151
Summary . 152
9. Servomotors 153
Servomotors . 153
viii Make: ActionControlling a Servo 154
Experiment: Control the Position of a Servomotor . 155
Hardware . 156
Parts List 156
Connecting the Arduino . 157
Arduino Software 158
Experimenting with Arduino . 159
Connecting the Raspberry Pi . 160
Raspberry Pi Software . 160
Experimenting with Raspberry Pi . 162
Project: Pepe, the Dancing Raspberry Pi Puppet . 162
Parts List 164
Design 164
Construction 165
Software 172
Using Pepe the Puppet 173
Summary 174
10. Stepper Motors . 175
Stepper Motors 176
Bipolar Stepper Motors . 176
Experiment: Controlling a Bipolar Stepper Motor 178
Parts List 179
Design 180
Arduino . 181
Arduino Connections 181
Arduino Software (the Hard Way) 183
Arduino Software (the Easy Way) . 185
Arduino Experimentation 186
Raspberry Pi . 187
Raspberry Pi Connections 187
Raspberry Pi Software . 188
Table of Contents ixRaspberry Pi Experimentation 190
Unipolar Stepper Motors . 190
Darlington Arrays 191
Experiment: Controlling a Unipolar Stepper Motor 192
Hardware . 193
Parts List 194
Arduino Connections 195
Raspberry Pi Connections 195
Software 196
Microstepping . 196
Experiment: Microstepping on Raspberry Pi . 197
Parts List 197
Raspberry Pi Connections 198
Software 198
Experimenting 200
Brushless DC Motors . 201
Summary 202
11. Heating and Cooling 203
Resistive Heaters . 203
Experiment: Resistor Heating . 203
Parts List 203
Construction 204
Experimenting 204
Project: Arduino Random Balloon Popper . 205
Parts List 206
Hardware . 206
Software 208
Using the Balloon Popper 209
Heating Elements 209
Power and Energy 210
From Power to Temperature Increase . 210
x Make: ActionBoiling Water 210
Peltier Elements 211
How Peltier Elements Work 211
Practical Considerations . 212
Project: Beverage Cooler . 215
Parts List 215
Construction 216
Using the Project 217
Summary 218
12. Control Loops 219
The Simple Thermostat . 219
Experiment: How Good Is On/Off Thermostatic Control? . 220
Parts List 221
Design 222
Breadboard Layout 223
Software 224
Experimenting 227
Hysteresis 228
PID Control 229
Proportional (P) 230
Integral (I) . 231
Derivative (D) 232
Tuning a PID Controller 232
Experiment: PID Thermostatic Control 233
Hardware . 234
Arduino Software 234
Arduino Experimentation 236
Connecting the Raspberry Pi . 240
Raspberry Pi Software . 241
Raspberry Pi Experimentation 245
Project: A Thermostatic Beverage Cooler 246
Table of Contents xiHardware . 246
Parts List 246
Design 247
Construction 248
Arduino Software 250
Summary 254
13. Controlling AC 255
AC Switching in Theory . 256
What Is Alternating Current? . 256
Relays . 257
Optoisolator . 257
Zero-Crossing Optoisolators and Triacs . 258
AC Switching in Practice 260
Relay Modules . 260
Solid State Relays (SSRs) . 262
The PowerSwitch Tail 263
Project: Raspberry Pi Timer Switch 263
Parts List 263
Construction 264
Software 265
Using the Project 266
Summary 266
14. Displays 267
LED Strips 267
Experiment: Controlling an RGB LED Strip Display . 268
Parts List 269
Arduino Connections 269
Arduino Software 270
Raspberry Pi Connections 271
Raspberry Pi Software . 273
xii Make: ActionI2C OLED Displays 275
Experiment: Using an I2C Display Module with Raspberry Pi . 276
Parts List 276
Connections . 277
Software 277
Experimentation . 279
Project: Adding a Display to the Beverage Cooler Project 279
Parts List 280
Connections . 280
Software 281
Summary 282
15. Sound 283
Experiment: Unamplified Speaker and Arduino . 283
Parts List 284
Breadboard Layout 284
Arduino Software 285
Arduino Experimentation 286
Amplifiers . 286
Experiment: Playing Sound Files on an Arduino . 287
Parts List 287
Creating the Sound Data . 287
Arduino Code . 289
Arduino Experimentation 290
Connecting an Arduino to an Amplifier . 290
Playing Sound Files on Raspberry Pi 293
Project: Pepe the Puppet Gets a Voice . 293
Parts List 294
Breadboard Layout 295
Software 296
Using the Talking Puppet 298
Summary 298
Table of Contents xiii16. The Internet of Things 299
Raspberry Pi and Bottle 300
Project: A Raspberry Pi Web Switch . 301
Hardware . 301
Software 302
Using the Web Switch . 303
Arduino and Networks . 303
Project: Puppet Twitter Notifier . 305
Putting Pepe on the Internet . 306
IFTTT (If This Then That) 309
Using the Project 311
Summary 312
Appendix A. Parts 313
Appendix B. Raspberry Pi GPIO Pinout . 319
Index 321
Index
Symbols
!= (not equal to) operator in C, 20
" " (quotation marks, double) in Python strings,
36
$ (dollar sign), Linux prompt, 32
&& (and) operator in C, 21
' ' (quotation marks, single) in Python strings, 36
// in C comments, 15
1-wire bus, 224, 241
2N3904 transistors, 71
2N7000 transistors, 71
400-point breadboards, 41
9g servomotors, 154
: (colon) in Python code, 36
<= (less than or equal to) operator in C, 20
== (equal to) operator in C, 17, 17
> (greater than) operator in C, 20
>= (greater than or equal to) operator in C, 20
{} (curly braces), enclosing code blocks in C, 17
|| (or) operator in C, 21
Ω (omega), 61
A
A (amperes or amps), 60
AC (alternating current), 255-266
dangers of high voltage, 255
defined, 256
project, Raspberry Pi timer switch, 263-266
parts list, 263
software, 265
using the project, 266
wiring diagram for, 264
switching in practice, 260
PowerSwitch Tail, 263
relay modules, 260
solid-state relays (SSRs), 262
switching in theory
optoisolators, 257
relays, 257
zero-crossing optoisolators and TRIACs,
258
actual temperature, 220
actuators
and sensors in control systems, 219
linear, 120, 149
Adafruit 16-Channel 12-bit PWM/Servo Driver,
162
code for, 172
Adafruit NeoPixel library, 270
Adafruit Trinket, 6
addressable LEDs, 267
power consumption, 270
alternating curent (see AC)
amplifiers, 286
connecting an Arduino to, 290
amps (amperes), 60
321analog input and output
analog inputs in Arduino, 18, 73
analog outputs, 74
analog outputs in Arduino, 19
analog outputs in Raspberry Pi, 39
analog input pins (Arduino Uno), 10
analogRead() function, 18
analogWrite() function, 19, 99
Arduino, 1, 3, 9-24
analog inputs, 73
analog outputs, 74
beverage can crusher project, 149-152
Arduino sketch for, 151
choosing, Raspberry Pi versus, 4
code examples from this book, 14
connecting a breadboard to, 43
connecting to an amplifier, 290
controlling a bipolar stepper motor, 181
Arduino connections, 181
Arduino sketches for, 183
experimenting with Arduino, 186
using Stepper library, 185
controlling a DC motor with a relay module,
107
controlling an LED with
breadboard connections, 47
experimenting with delay functions, 49
sketch for, 48
controlling DC motor's speed (experiment)
Arduino connections to the breadboard,
97
Arduino experimentation, 100
Arduino sketch for, 98
controlling motor's direction and speed
Arduino experimentation, 139
Arduino sketch for, 137
connecting Arduino and H-bridge, 136
controlling position of a servomotor
Arduino sketch for, 158
connecting Arduino to the servomotor,
157
experimenting with Arduino, 159
controlling RGB LED strip display
Arduino connections, 269
Arduino software, 270
parts list, 269
digital inputs, 73
digital outputs, 73
H-bridge shields for, 148
house plant waterer project, 114-120
Arduino sketch for, 118
LED traffic signal project
Arduino sketch for, 81
connections, 80
making network and Internet capable, 299
map() function, 253
networks and, 303
on/off thermostatic control experiment,
220-228
experimenting, 227
software, 224
PID thermostatic control experiment
Arduino software, 234
experimenting with Arduino, 236
playing sound files on, 287-290
Arduino code, 289
experimenting with Arduino, 290
programming, 4
programming guide, 14
analog inputs, 18
analog outputs, 19
digital inputs, 16
digital outputs, 16
functions, 22
if/else statement, 20
loops, 21
setup() and loop() functions, 15
variables, 15
pulse-width modulation (PWM) on output
pins, 85
random balloon popper poject, 205-209
sketch for, 208
RGB LED experiment
Aduino experimentation, 90
Arduino connections, 88
Arduino sketch for, 89
serial communication, 74
shields, 4
specifications, 3
switching relays with, 103
thermostatic beverage cooler project, 246
Arduino software, 250
322 Indextour of Arduino Uno R3 board, 9
unamplified speaker with, 283-286
Arduino experimentation, 286
Arduino software, 285
breadboard layout, 284
uploading a sketch, 13
using OLED display with, 279-282
connections, 280
software, 281
using to control a motor
breadboard connections, 56
experimenting with Arduino delay
functions, 57
Arduino IDE
installing, 11
installing libraries, 225
main window, 11
uploading a sketch, 13
Arduino Uno, 3
alternatives to, 5
pulse with modulation (PWM) on output pins,
85
Arduino Yun, 6
WiFi, 303
ATMega328, 10
Audacity, 287
exporting a sound clip, 288
recording a sound clip, 287
audio, 283
(see also sound)
frequencies, 284
audio and video connector, Raspberry Pi, 26
Audio Encoder utility, 287
B
balloon popper project, 205-209
hardware, 206
parts list, 206
software, 208
timing the balloon pop, 209
base (transistors), 64
BeagleBone Black versus Raspberry Pi 2, 6
beverage cooler (see cooler for beverages)
bipolar stepper motors, 176
controlling, experiment in, 178-190
Arduino connections, 181
Arduino experimentation, 186
Arduino software, 183
design, 180
parts list, 179
Raspberry Pi connections, 187
Raspberry Pi experimentation, 190
Raspberry Pi software, 188
Raspberry Pi, using, 187
identifying stepper motor leads, 179
sequence of coil activations to rotate
counterclockwise, 178
bipolar transistors, 65
Blink sketch (example)
setup() and loop() functions, 15
uploading to Arduino board, 13
blink() function (example), 22
Bottle (web server framework), 300
HTML templates, 302
breadboards, 316
Arduino breadboard layout for bipolar
stepper motor, 182
connecting to Arduino, 43
connecting to Raspberry Pi, 44
experimenting with and testing, 55
inner workings of, 43
layout for Arduino and speaker, 284
layout for Arduino traffic signal, 80
layout for balloon popper, 206
layout for controlling a motor, 54
Arduino connections, 56
Raspberry Pi connections, 57
layout for controlling an LED, 46
Arduino connections, 47
Raspberry Pi connections, 49
layout for controlling motor speed, 96
Arduino connections, 97
Raspberry Pi connections, 100
layout for houseplant watering project, 116
layout for on/off thermostat, 223
layout for Raspberry Pi PID thermostat, 240
layout for Raspberry Pi traffic signal, 82
layout for RGB LED experiment
Arduino connections, 88
Raspberry Pi connections, 90
Index 323layout for standalone testing of H-bridge, 133
layout for talking puppet, 295
layout for thermostatic beverage cooler, 249
Raspberry Pi layout for stepper motor, 187
solderless, 41
brightness of LEDs, 77
controlling with PWM analog output, 84
Broadcom (BCM) names for pins, 51
Broadcom chips, 37
GPIO pin current, 62
C
C language, 4
code to control an LED, comparing to Python,
52
comments, 15
comparison operators, 20
global and local variables, 23
indentation in code, 35
pointers, 236
programming for Photon, 304
can crusher project, 149-152
Arduino software, 151
mechanical construction, 151
parts list, 149
wiring, 150
capacitors, 72, 132, 314
for H-bridge IC circuit, 133
cd (change directory) command, 33
chips, 72
(see also integrated circuits)
clockwise, motor turning, 134
cloud services, 299
code examples from this book
downloading from GitHub, 14, 45
for Raspberry Pi, 34
collector (transistors), 64
colors of LEDs, 76
command line (Linux on Raspberry Pi), 32
command-line access to Raspberry Pi over your
network, 29
common (COM) terminals, 103, 107
commutators, 96
comparison operators in C, 20
const keyword (in C), 16
Control connection, 55
control loops, 219-254
experiment, on/off thermostatic control,
220-228
breadboard layout, 223
design, 222
experimenting with Arduino, 227
parts list, 221
software, 224
experiment, PID thermostatic control,
233-245
Arduino experimentation, 236
Arduino software, 234
hardware, 234
Raspberry Pi connections, 240
Raspberry Pi experimentation, 245
Raspberry Pi software, 241
hysteresis, 228
project, thermostatic beverage cooler,
246-254
adding the temperature probe, 248
Arduino software, 250
attaching the cooling unit, 250
attaching the power socket, 250
constructing the breadboard, 249
design, 247
hardware, 246
parts list, 246
proportional-integral-derivative (PID) control,
229
derivative control, 232
integral control, 231
proportional control, 230
tuning a PID controller, 232
thermostat, simple, 219
control_pin variable, 52
cooler for beverages (project), 215-218
adding display to, 279-282
connections, 280
software, 281
construction, 216
parts list, 215
thermostatic beverage cooler, 246-254
thermostatic beverage cooler project
adding temperature probe, 248
324 IndexArduino software, 250
attaching the cooling unit, 250
attaching the power socket, 250
design, 247
hardware, 246
parts list, 246
cooling (see heating and cooling)
counterclockwise, motor turning, 134
sequence of coil activations to rotate stepper
motor, 178
current, 59
maximum current for transistors, 63
Raspberry Pi GPIO pins, 62
transistors and, 65
current limiting resistors for LEDs, 77
D
DallasTemperature library (Arduino), 224
Darlington transistors, 66
data pins (relay modules), 105
DC (direct current), 256
DC motors, 53
(see also motors)
DC power socket (Arduino Uno), 11
delay() function, 16
experimenting with, in controlling a motor,
57
experimenting with, in controlling LED, 49
derivative control (PID), 232
digital I/O pins (Arduino Uno), 10
digital input and output
digital inputs for Raspberry Pi and Arduino,
73
digital inputs in Arduino, 16
digital inputs in Raspberry Pi, 39
digital outputs for Raspberry Pi and Arduino,
73
digital outputs in Arduino, 16
digital outputs in Raspberry Pi, 38
digital outputs, connecting an LED to, 76
digitalRead() function, 17
digitalWrite() function, 16, 22
diodes, 71, 71
(see also LEDs)
positioning on a breadboard, 54
direct current (see DC)
displays, 267-282
experiment, controlling RGB LED strip display,
268-275
Arduino connections, 269
Arduino software, 270
parts lists, 269
Raspberry Pi connections, 271
Raspberry Pi software, 273
experiment, using I2C OLED display module
with Raspberry Pi, 276-279
connections, 277
experimentation, 279
parts list, 276
software, 277
I2C OLED displays, 275
project, adding display to beverage cooler
project, 279-282
connections, 280
parts list, 280
software, 281
distance, in torque calculations, 109
drain (MOSFETs), 68
DS18B20 temperature sensor, 220, 222
in PID thermostatic control experiment, 234
in thermostatic beverage cooler project, 246
using with Raspberry Pi in PID thermostat,
241
duty cycle, 85
entering value into Arduino Serial Monitor,
100
setting in Python program to control motor
speed, 102
dweepy library, 307, 309
dweet.io web service, 307, 309
E
electronics, basic, 59-74
common components, 63
capacitors, 72
diodes, 71
integrated circuits (ICs), 72
LEDs, 71
Index 325resistors, 63
transistors, 64-71
connections with Raspberry Pi and Arduino,
73
analog inputs, 73
digital inputs, 73
digital outputs, 73
current, voltage, and resistance, 59-62
power, 62
serial communication, 74
emitter (transistors), 64
energy
needed to boil water, 210
power versus, 210
error (in output power calculaton), 230
ESP8266 module, 304
Ethernet connections (Raspberry Pi), 25
F
fans, using with Peltier elements, 213
float type (in C), 18
for loops (in C), 21
forward voltage (Vf), 76
for different colors of LED, 77
FQP30N06L transistors, 71
frequencies (audio), 284
experimenting with, in Arduino, 286
functions, 15
in Arduino C, 22
writing your own, 22
variables in, 23
G
gain (kp), 230
gain (or hFE), 65
gate (MOSFETs), 68
gearmotors, 110
gears, 110
getting started (quickstart), 41-58
connecting a breadboard to Raspberry Pi, 44
downloading the software, 45
exercise, controlling a motor, 53-58
Arduino connections to the breadboard,
56
Arduino experimentation, 57
breadboard layout, 54
experimenting with the breadboard, 55
parts list, 53
Raspberry Pi connections, 57
Raspberry Pi experimentation, 58
exercise, controlling an LED, 46-53
Arduino connections, 47
Arduino experimentation, 49
Arduino software, 48
breadboard layout, 46
comparing C and Python code, 52
parts list, 46
Raspberry Pi connections, 49
Raspberry Pi experimentation, 52
Raspberry Pi software, 51
solderless breadboard, 41
connecting a breadboard to Arduino, 43
inner workings of the breadboard, 43
GFX library, 281
git clone command, 34
git pull command, 35
Git, using to manage code, 34
GitHub repository for example code, 14
global variables, 23
GND (ground) connection, 55
GND (ground) pins (relay modules), 105
GPIO pins (Raspberry Pi), 2, 26
connecting a breadboard to, 44
current, 62
GPIO header, 37
identifying, 45
naming conventions for pins, 37, 51
RPi.GPIO library for control of, 37
GPIO sockets (Arduino), connecting to a
breadboard, 43
GPIO.cleanup() function, 52
GPIO.input() function, 39
GPIO.output() function, 39
GPIO.setmode() function, 51
ground, 61
symbol for, in schematic diagrams, 69
326 IndexH
H-bridge modules, 147
in can crusher project, 149
wiring, 150
H-bridges, 126, 230
H-bridge ICs, 128
L293D, 178
L298N, 143
pinout of L293D H-bridge IC, 130
TB6612FNG, 147
using L293D IC to control speed and
direction of a motor, 130-143
switch combinations, 127
half-sized breadboards, 41
hardware, 316
HDMI video connector (Raspberry Pi), 26
header pins (Raspberry Pi), 26
heat
generated by current passing through a
resistor, 62
heat loss and equilibrium, 211
specific heat capacity (SHC) of materials, 210
heat sinks, using with Peltier elements, 212
heating and cooling, 203-218
Arduino random balloon popper project,
205-209
hardware, 206
parts list, 206
software, 208
timing the balloon pop, 209
beverage cooler project, 215-218
construction, 216
parts list, 215
from power to temperature increase, 210
boiling water, 210
heating elements, 209
Peltier elements, 211
how they work, 211
practical considerations with, 212
power and energy, 210
resistive heaters, 203
resistor heating experiment, 203-205
construction, 204
experimenting, 204
parts list, 203
"Hello, World" program in Bottle, 300
"Hello, World" program in Python, 35
hertz (Hz), 256
hFE (gain), 65
hobby servos, 154
house plant waterer project, 114-120
Arduino software, 118
construction, 116
breadboard, 116
final assembly, 118
fixing tubing onto the pump, 117
soldering leads to a motor, 116
design, 114
parts list, 115
running the project, 120
HTML
Bottle templates for, 302
generating with Bottle, 300
hysteresis, 228
Hz (hertz), 256
I
I2C, 74
interface for Raspberry Pi puppet, 169
setting up Raspberry Pi to use, 171
I2C OLED displays (see OLED displays)
ICs (see integrated circuits)
IDEs (integrated development environments)
for Arduino, 4
installing the Arduino IDE on your computer,
11
if statement
in C, 17
in Python, 36
if/else statement
in C, 20
in Python, 36
IFTTT (If This Then That) cloud service, 299, 309
adding the web request action, 310
creating a new recipe, 309
defining the trigger, 310
finishing the recipe, 311
testing by tweeting #dancepepe hashtag, 311
Index 327impedance, 283
indentation in Python code, 35
inductance, 283
infrared (IR) LEDs, 76
input and output (see analog input and output;
digital input and output)
input/output (I/O)
GPIO pins on Raspberry Pi, 26
int type (in C), 15
integral control (PID control), 231
integrated circuits (ICs), 72
DS18B20 digital thermometer IC, 221
H-bridge ICs, 128
Intel Edison, 6
IoT (Internet of Things), 299-312
Arduino and networks, 303
platforms for use with, 6
project, puppet Twitter notifier, 305-311
IFTTT monitoring, setting up, 309-311
putting Pepe on the Internet, 306
project, Raspberry Pi web switch, 301-303
hardware, 301
software, 302
Raspberry Pi and Bottle, 300
IP address, finding for Raspberry Pi, 31
J
joules, 210
K
kd value, 232
keyboard and mouse (Raspberry Pi), 27
ki constant, 232
kp (gain), 230
ku value, 232
L
L293D H-bridge IC, 128, 178
pinout, 130
schematic diagram, 128
using to control a bipolar stepper motor,
Aruduino connections, 181
using to control direction and speed of a
motor, 130
schematic diagram, 132
L298N H-bridge IC, 143
measuring the motor's current, 145
pinout, 144
LED strips, 267
addressable LED power consumption, 270
controlling RGB LED strip display, 268-275
Arduino connections, 269
Arduino software, 270
parts list, 269
Raspberry Pi connections, 271
Raspberry Pi software, 273
using level converter to raise voltage of
control signal, 272
LEDs, 71, 75-93
connection to Arduino Uno, 10
current limiting, 76
exercise, controlling an LED, 46-53
Arduino connections to the breadboard,
47
breadboard layout, 46
comparing C and Python code, 52
parts list, 46
Raspberry Pi connections, 49
Raspberry Pi experimentation, 52
Raspberry Pi software, 51
experiment, mixing colors, 86-93
Arduino connections, 88
Arduino experimentation, 90
Arduino sketch for, 89
hardware, 86
parts list, 88
Raspberry Pi connections, 90
Raspberry Pi experimentation, 93
Raspberry Pi software, 91
in optoisolators, 258
OLED displays, 275
adding display to beverage cooler,
279-282
using I2C display module with Raspberry
Pi, 276-279
pulse with modulation (PWM) and, 84
328 Indexregular, 76
connecting to digital output, 76
RGB (red, green, and blue), 85
traffic signal project, 78-84
Arduino connections, 80
Arduino sketch for, 81
design, 80
parts list, 79
Raspberry Pi connections, 82
Raspberry Pi software, 83
linear actuators, 120, 149
in beverage can crusher project, 150
Linux
Arduino IDE on, 11
downloading example code from GitHub, 14
operating system for Raspberry Pi, 28
Raspberry Pi command line, 32
serial port for Arduino board, 13
SSH on, 32
local variables, 23
Log area (Arduino IDE), 11
logic-level MOSFETs, 70
loop() function, 15
defining digital inputs, 17
for controlling an LED, 49
loops
in C, 21
in Python, 36
loudspeakers, 283
LXTerminal (Raspberry Pi), 29
executing commands over SSH, 32
hostname -I command, 31
M
mA (milliamps), 60
Mac computers
Arduino IDE on, 11
downloading example code from GitHub, 14
serial port for Arduino board, 13
SSH on, 32
map() function, 253
metal-oxide-semiconductor field-effect
transistors (see MOSFETs)
micro USB connector (Raspberry Pi), 26
microcontroller IC, ATMega328, 10
microSD card (Raspberry Pi), 2, 26
preparing with NOOBS, 28
milliamps (mA), 60
MOSFETs, 67
FQP30N06L high power MOSFET, 248
in RGB LED strip display experiment, 269
PNP and P-channel transistors, 70
motors, 95-123
choosing, 108
gearmotors, 110
gears, 110
RPM, 109
torque, 108
controlling DC motors with a relay, 102-106
relay modules, 105
switching a relay with Arduino or
Raspberry Pi, 103
controlling direction of, 125-152
H-bridge ICs, 128
H-bridges, 126
controlling speed with PWM, 96
exercise, controlling a motor, 53-58
Arduino experimentation, 57
breadboard layout, 54
Darlington transistor, 66
experimenting with the breadboard, 55
parts list, 53
schematic diagram, 59
experiment, controlling a DC motor with a
relay module, 106-108
Arduino software, 107
parts list, 106
Raspberry Pi software, 108
wiring, 106
experiment, controlling direction and speed
of a motor, 130-143
Arduino connections to H-bridge, 136
Arduino experimentation, 139
Arduino software, 137
avoiding damage to the motor, 143
breadboard layout, 133
design, 132
experimenting with direction, 135
parts list, 131
Raspberry Pi connections, 140
Index 329Raspberry Pi experimentation, 142
Raspberry Pi software, 141
experiment, controlling speed of a DC motor,
96-102
Arduino connections, 97
Arduino experimentation, 100
Arduino software, 98
hardware, 96
Raspberry Pi connections, 100
Raspberry Pi experimentation, 102
Raspberry Pi software, 101
how DC motors work, 96
linear actuators, 120
pumps, 110
house plant waterer project, 114-120
peristaltic pumps, 111
velocity pumps, 112
range of DC motors, 95
solenoids, 122
voltage spikes caused by, handling with
diodes, 71
movement detection, PIR sensors, 295, 296
MPSA14 transistors, 71
N
N (newtons), 109
N-channel transistors, 70
nano editor, 33
negative positive negative (NPN), or N-channel
transistors, 70
NeoPixels, 267
Adafruit NeoPixel library, 270
connecting to Raspberry Pi, 271
logic level and, 269
on Raspberry Pi, Adafruit tutorial on, 273
network connections, Raspberry Pi, 25
networks
Arduino and, 303
making Arduino or Raspberry Pi network
capable, 299
newtons (N), 109
NOOBS, using to prepare microSD card for
Raspberry Pi, 28
normally closed (NC) terminals, 103, 107
normally open (NO) terminals, 103, 107
numbers, reading from Arduino Serial Monitor,
99
O
Ohm's Law, 61, 77
ohms, 61
OLED displays
adding display to beverage cooler project,
279-282
screen coordinates, 278
using I2C display module with Raspberry Pi,
276-279
connections, 277
experimentation, 279
parts list, 276
software, 277
OLED library, 277
omega (Ω), 61
OneWire library (Arduino), 224
OpenOffice, 238
operating system, choosing for Raspberry Pi, 28
optoisolators, 257
relay modules with, 262
zero-crossing optoisolators and TRIACs, 258
organic LEDs (see OLED displays)
output power
calculating for PID control, 232
calculating in P (proportional) control, 230
calculating in PI control, 231
P
P-channel transistors, 70
parseInt() function, 99
parts, 313-317
hardware, 316
miscellaneous, 317
resistors and capacitors, 314
semiconductors, 315
suppliers, 313
parts lists
for balloon popper project, 206
for beverage cooler project, 215
330 Indexfor can crusher project, 149
for controlling a bipolar stepper motor, 179
for controlling a DC motor with a relay
module, 106
for controlling a motor, 53
for controlling an LED, 46
for controlling direction and speed of a
motor, 131
for controlling RGB LED strip display, 269
for controlling servomotor position, 156
for house plant waterer project, 115
for I2C OLED display, 276
for LED traffic signal project, 79
for Pepe, dancing Raspberry Pi puppet, 164
for playing sound files on Arduino, 287
for resistor heating experiment, 203
for RGB LED experiment, 88
for talking puppet project, 294
for thermostatic beverage cooler project, 246
for thermostatic on/off control experiment,
221
for timer switch project, 263
for unamplified speaker with Arduino, 284
passive infrared sensors (see PIR sensors)
PCBs (printed circuit boards), 72
PCM (pulse code modulation), 287, 288
PCM library, 289
Peltier effect, 211
Peltier elements, 211, 230
beverage cooler project, 215-218
cooling unit for thermostatic beverage
cooler, 250
how they work, 211
practical considerations, 212
Pepe, dancing Raspberry Pi puppet, 162-174
adding your own movements for, 173
attaching the puppet to servos, 171
construction, 165
adapting the puppet, 168
extending servo arms, 165
gluing the servos, 168
making a chassis, 166
wiring everything up, 169
design of project, 164
parts list, 164
running test program, 170
Twitter notifier, 305-311
putting Pepe on the Internet, 306
voice for Pepe, 293-298
breadboard layout, 295, 295
parts list, 294
software, 296
peristaltic pumps, 111
house plant waterer project, 114-120
photo-TRIACs, 258
Photon, 6, 303
photoresistors, 119
phototransistors, 258
PID control (see proportional-integral-derivative
control)
PID library (Arduino), 234
PIL (Python Image Library), 279
pinMode() function, 17
for controlling an LED, 48
pinouts, 317
L293D H-bridge IC, 130
L298N H-bridge IC, 144
transistor, 69
pins on relay modules, 105
PIR (passive infrared) sensors, 294
movement detection, 296
pitch, 284
PNP (positive negative positive) transistors, 70
pointers (in C), 236
polarized capacitors, 72
pot (see potentiometers)
potentiometers, 247
power, 62
consumed by addressable LEDs, 270
energy versus, 210
for a heating element, 209
from power to temperature increase, 210
of heating elements, 209
power rating for resistors, 64
power connectors (Arduino Uno), 11
power law (P = I V), 204, 209
power LED (Arduino Uno), 10
power socket, attaching (thermostatic cooler),
250
PowerSwitch Tail, 263
in Raspberry Pi timer switch, 263-266
printed circuit boards (PCBs), 72
Index 331printers, stepper motors in, 176
proportional-integral-derivative (PID) control,
219, 229
derivative control, 232
integral control, 231
PID control for beverage cooler, 250
PID thermostatic control experiment, 233-245
Arduino experimentation, 236
Arduino software, 234
hardware, 234
Raspberry Pi connections, 240
Raspberry Pi experimentation, 245
Raspberry Pi software, 241
proportional control, 230
tuning a PID controller, 232
pu value, 233
pull-up resistors
in Raspberry Pi digital inputs, 39
using with digital input in Arduino, 17
pulse code modulation (PCM), 287, 288
installing PCM library in Arduino, 289
pulse width modulation (PWM)
controlling servomotors, 154, 155
hardware modules for, 162
in Arduino PID thermostatic control
experiment, 236, 237
Raspberry Pi controlling servomotor position,
161
pulse-width modulation (PWM), 19, 74
and LEDs, 84
controlling motor speed with, 96
in Arduino sketch for mixing colors in RGB
LEDs, 89
in Python program for RGB LED color mixing,
92
setting in Python program to control motor
speed, 102
pumps, 110
peristaltic, 111
velocity, 112
volumetric flow rate, 112
puppet project (see Pepe, dancing Raspberry Pi
puppet)
PuTTY, downloading and installing on Windows,
31
pygame library, 293
Python
Bottle web server framework, 300
dancing puppet program, 172
dweepy library, 307
map() function, writing, 253
playing sound files, 293
program for controlling a DC motor with a
relay module, 108
program for PID thermostat, 242
program for puppet on the Web, 307
program for puppet voice, 296
program for timer switch, 265
program for traffic signal project, 83
program to control a bipolar stepper motor,
188
program to control a DC motor's speed, 101
program to control a motor's direction and
speed, 141
program to control an LED, 51
comparing to C code, 52
program to control servomotor position, 160
program to set servos' position, 171
programming primer for Raspberry Pi, 35-39
"Hello, World" program, 35
if and while statements, 36
RPi.GPIO library, 37
tabs and indents in code, 35
programs for I2C OLED display, 277
programs for NeoPixel display, 273
puppet project test program, 170
Python 2 versus Python 3, 35
Raspberry Pi and, 2
test.py program, running on Raspberry Pi, 33
R
random balloon popper (see balloon popper
project)
random numbers in Arduino C, 208
Raspberry Leaf, 45
Raspberry Pi, 1, 25-39
alternatives to, 5
analog outputs, 74
Bottle, 300
choosing, Arduino versus, 4
332 Indexcode from this book, 34
connecting a breadboard to, 44
controlling a bipolar stepper motor, 187
experimenting with Raspberry Pi, 190
Python program for, 188
controlling a DC motor with a relay module,
software for, 108
controlling a motor with
breadboard connections, 57
Raspberry Pi experimentation, 58
controlling an LED with
breadboard connections, 49
Python program for, 51
Raspberry Pi experimentation, 52
controlling DC motor's speed (experiment)
Python program for, 101
Raspberry Pi connections, 100
Raspberry Pi experimentation, 102
controlling motor's direction and speed,
130-135
connecting to H-bridge, 140
Python program for, 141
Raspberry Pi experimentation, 142
controlling position of a servomotor
connecting Raspberry Pi, 160
experimenting with Raspberry Pi, 162
Python program for, 160
controlling RGB LED strip display
parts list, 269
Raspberry Pi connections, 271
Raspberry Pi software, 273
differences from other computers running
Linux, 2
digital inputs, 73
digital outputs, 73
GPIO pin current, 62
LED traffic signal project
Raspberry Pi connections, 82
Raspberry Pi software, 83
Linux command line, 32
making network and Internet capable, 299
overview, 25
Pepe, the dancing puppet project, 162-174
running test program, 170
schematic diagram, 164
setting up Pi to use I2C, 171
software for, 172
PID thermostatic control experiment
connecting Raspberry Pi, 240
experimenting with Raspberry Pi, 245
Raspberry Pi software, 241
playing sound files on, 293
programming guide, 35-39
analog outputs, 39
digital inputs, 39
digital outputs, 38
GPIO header, 37
"Hello, World" program, 35
if and while statements, 36
RPi.GPIO library, 37
tabs and indents in Python code, 35
variables, 36
pulse-width modulation (PWM) on output
pins, 85
RGB LED experiment, 90
Python program for, 91
Raspberry Pi experimentation, 93
serial communication, 74
setting up, 27
example of typical setup, 27
preparing microSD card with NOOBS, 28
SSH, 29
switching relays with, 103
timer switch project, 263-266
using I2C display module with, 276-279
connections, 277
experimentation, 279
software, 277
web switch, 301-303
Raspberry Pi 2
model B, overview of, 25
specs, 2
Raspbian OS, 28
updating, 51
raspi-config tool, 30
setting up Pi to use I2C, 171
RasPiRobot V3 board, 148
recording a sound clip, 287
reference (set temperature), 220
relay modules, 105, 260
active-low or active-high, checking, 261
controlling a DC motor with, 106-108
Index 333Arduino software, 107
parts list, 106
Raspberry Pi software, 108
wiring, 106
using safely, 260
relays, 257
controlling DC motors with, 102
switching a relay with Arduino or
Raspberry Pi, 103
electromechanical, 103
solid-state relays (SSRs), 262
Reset button (Arduino Uno), 9
resistance, 61
for MOSFETs, 70
resistive heaters, 203
resistors
bipolar transistors and, 65
color codes, 63
reading, 64
for controlling an LED, 46, 47
for LED traffic signal project, 80
for RGB LED experiment, 88
heat generated by, 203
heating resistor used with DS18B20
temperature sensor, 223
power produced by, 62
power rating, 64
random balloon popper poject, 205-209
reference, 314
resistor heating experiment, 203-205
construction, 204
experimenting, 204
parts list, 203
series resistor online calculator, 77
use with LEDs, 77
current limiting resistors, 77
use with MOSFET transistors, 69
using pull-up resistor with digital input in
Arduino, 17
RGB (red, green, and blue) LEDs, 85, 267
experiment, mixing colors, 86-93
Arduino connections, 88
Arduino experimentation, 90
Arduino software, 89
hardware, 86
parts list, 88
Raspberry Pi connections, 90
Raspberry Pi experimentation, 93
Raspberry Pi software, 91
RGB LED strips, 267
controlling display of, 268-275
RMS voltage, 256
rotors, 96
RPi.GPIO library, 37, 51
PWM feature, 160
RPM (revolutions per minute), 109
S
schematic diagrams
common cathode RGB LED, 85
for an L293D H-bridge, 132
for controlling a bipolar stepper motor, 180
for controlling a motor, 59
for MOSFET transistors, 67
for puppet project, 164
for thermostatic beverage cooler project, 248
for thermostatic on/off control experiment,
222
symbol for LEDs, 71
symbols for capacitors, 72
semiconductors, 315
in Peltier elements, 212
sensors
connecting to analog inputs in Arduino, 19
monitoring actuators, 219
sensors and actuators in control systems (see
control loops)
serial communication, 74
Serial Monitor (Arduino IDE), 12
controlling bipolar stepper motor, 186
controlling servomotor's position with, 159
putting data into a spreadsheet, 238
using in program to control DC motor's
speed, 98
using to control motor speed, 100
using to control motor's direction and speed,
139
using to mix colors in RGB LED experiment,
90
using to test PID control, 236
334 Indexserial peripheral interface (SPI), 74
serial port for Arduino sketch upload, setting, 13
Serial.available() function, 99
Serial.begin() function, 99
servo library (Arduino), 159
servomotors, 153-174
9g and standard, 153
connections, 157
controlling, 154
experiment, controlling position of a
servomotor, 155-162
Arduino experimentation, 159
Arduino software, 158
Arduino, connecting to a servomotor, 157
hardware, 156
parts list, 156
Raspberry Pi connections, 160
Raspberry Pi experimentation, 162
Raspberry Pi software, 160
how they work, 154
project, Pepe dancing Raspberry Pi puppet,
162-173
adapting the puppet, 168
attaching the puppet to servos, 171
construction, 165
design, 164
extending servo arms, 165
gluing the servos, 168
making a chassis, 166
parts list, 164
software, 172
wiring everything up, 169
set temperature, 220
setup() function, 15
defining digital input pin, 17
digital output in Blink example, 16
for controlling an LED, 48
for loops in, 21
SHC (specific heat capacity), 210
shields
for Arduino, 4
H-bridge shields for Arduino and Raspberry
Pi, 148
sine waves, 286
Single Pole Change Over (SPCO) relays, 103
sketches (Arduino), 13
downloading from Github, 14
for balloon popper project, 208
for can crusher, 151
for controlling a bipolar stepper motor, 183
for controlling a DC motor with a relay
module, 107
for controlling an LED, 48
for controlling DC motor's speed, 98
for controlling motor's direction and speed,
137
for controlling RGB LED strip display, 270
for controlling servomotor position, 158
for house plant waterer project, 118
for LED traffic signal project, 81
for PID thermostat experiment, 234
for playing a sound file, 289
for RGB LED experiment, 89
for speaker with Arduino, 285
for thermostatic beverage cooler project, 251
for thermostatic on/off control experiment,
225
solderless breadboards, 41
inner workings of, 43
solenoids, 122
solid-state relays (SSRs), 257, 262
sound, 283-298
amplifiers, 286
connecting Arduino to an amplifier, 290
experiment, playing sound files on Arduino,
287-290
Arduino code, 289
Arduino experimentation, 290
parts list, 287
recording a sound clip, 287
experiment, unamplified speaker and
Arduino, 283-286
Arduino experimentation, 286
Arduino software, 285
parts list, 284
playing sound files on Raspberry Pi, 293
project, voice for Pepe the puppet, 293-298
parts list, 294
software, 296
sound waves, 284
source (MOSFETs), 68
speakers
Index 335amplifiers for, 286
unamplified speaker and Arduino, 283-286
specific heat capacity (SHC), 210
speed of a DC motor, controlling (see motors)
SPI (see serial peripheral interface)
spreadsheet, importing Serial Monitor data into,
238
square waves, 286
SSD1306 library, 281
SSH connection, setting up for Raspberry Pi, 29
on Mac or Linux computers, 32
on Windows computers, 31
SSRs (see solid-state relays)
standard servomotors, 154
stationary magnets (stator), 96
Status area (Arduino IDE), 12
Stepper library (Arduino), 185
stepper motors, 175-202
bipolar, 176
examples of, 176
experiment, controlling a bipolar stepper
motor, 178-190
Arduino connections, 181
Arduino experimentation, 186
Arduino software, 183
Arduino, using, 181
parts list, 179
Raspberry Pi connections, 187
Raspberry Pi experimentation, 190
Raspberry Pi software, 188
Raspberry Pi, using, 187
schematic diagram, 180
identifying leads, 179
unipolar, 190
strings in Python, 36
sudo command, 33
using with Python color mixing program, 93
using with Python program to control a
motor, 58
using with Python program to control an LED,
52
sugar cube relays, 103
superuser (Linux), 33
suppliers for parts, 313
switches
connected to digital input in Arduino, 17
H-bridge using, 126
T
tabs in Python code, 36
taffic signal project with LEDs, 78-84
TB6612FNG H-bridge IC, 147
temperature
from power to temperature increase, 210
set and actual temperature, 220
temperature probe, 248
text, numbers and, 99
thermoelectric effect, 211
thermostats, 219
hysteresis in, 228
on/off thermostatic control experiment,
220-228
breadboard layout, 223
design, 222
parts list, 221
software, 224
PID thermostatic control experiment, 233-245
thermostatic beverage cooler project,
246-254
timer switch project, 263-266
parts list, 263
Raspberry Pi software, 265
using, 266
wiring diagram, 264
TIP120 transistors, 71
Tkinter framework (Python), 91
torque, 108
traffic signal project with LEDs
Arduino connections, 80
Arduino software, 81
design, 80
parts list, 79
Raspberry Pi connections, 82
Raspberry Pi software for, 83
transistors, 53
bipolar, 65
Darlington, 66
FQP30N06L MOSFET, 248
in on/off thermostatic control experiment,
224
336 IndexMOSFET, 67
PNP and P-channel transistors, 70
overview, 64
package types, 65
positioning on a breadboard, 54
power and heat, 62
selection guide, 70
transistor-based optoisolator, 257
TRIACs, 258
using to switch a relay, 103
varied pinouts, 69
TRIACs, 258
try/finally statement (Python), 52
TTL serial, 74
tuning the system, 231
tuning a PID controller, 232
Twitter notifier for Pepe the Puppet (project),
305-311
monitoring Twitter for hashtag mentions with
IFTTT, 309-311
types
in Python, 36
specifying for function parameters in C, 23
U
ultraviolet (UV) LEDs, 76
unipolar stepper motors, 190
unpolarized capacitors, 72
uploading sketches to Arduino board, 11
USB ports (Raspberry Pi), 25
USB socket (Arduino Uno), 9
V
V (volts), 61
variables
in C, 15
global and local variables, 23
in Python, 36
VCC or 5 pins (relay modules), 105
velocity pumps, 111, 112
Verify button (Arduino IDE), 11
Vf (forward voltage), 76
for different colors of LED, 77
video connector, Raspberry Pi, 26
void keyword (in C), 23
voltage
about, 60
AC (alternating current), 256
analog outputs in Arduino, 19
converting analogRead() return to, 18
for bipolar transistors, 65
gate threshold voltage for MOSFETs, 69
using level converter to raise 3V control signal
to 5V, 272
working voltage for a heating element, 209
voltage divider, 290
volts (V), 61
volumetric flow rate, 112
W
W (see watts)
water, boiling, 210
watts (W), 62
joules versus, 210
WAV files
exporting from Audacity, 288
playing on Arduino, 287
playing on Raspberry Pi, 293
web browsers, controlling Pepe the puppet
from, 307
web servers
Arduino or Raspberry Pi acting as, 299
Raspberry Pi and Bottle, 300
web switch (Raspberry Pi), 301-303
while loops
in C, 21, 21
in Python, 36
controlling an LED, 52
True condition, 52
WiFi
Arduino and, 303
ESP8266 module, 304
Photon board, 304
WiFi adapter for Raspberry Pi, 25
Windows systems
Arduino IDE on, 11
dowloading example code from Github, 14
Index 337serial port for Arduino, 13
SSH on, 31
wireless networks, configuring Raspberry Pi to
join, 28
wiring diagrams
for can crusher, 150
for controlling a DC motor with a relay
module, 106
for Raspberry Pi timer switch, 264
WS2812 addressable LEDs, 267
Z
zero-crossing optoisolators, 258
Ziegler-Nichols method (PID tuning), 232, 239
ZIP files, example code downloads, 14


كلمة سر فك الضغط : books-world.net
The Unzip Password : books-world.net
أتمنى أن تستفيدوا من محتوى الموضوع وأن ينال إعجابكم

رابط من موقع عالم الكتب لتنزيل كتاب Make: Action - Movement, Light, and Sound with Arduino and Raspberry Pi
رابط مباشر لتنزيل كتاب Make: Action - Movement, Light, and Sound with Arduino and Raspberry Pi
الرجوع الى أعلى الصفحة اذهب الى الأسفل
 
كتاب Make: Action - Movement, Light, and Sound with Arduino and Raspberry Pi
الرجوع الى أعلى الصفحة 
صفحة 2 من اصل 1
 مواضيع مماثلة
-
» كتاب Make: Bluetooth - Bluetooth LE Projects for Arduino, Raspberry Pi, and Smartphones
» كتاب Make - Jumpstarting the Raspberry Pi Zero W
» كتاب Make - Analog Synthesizers - A modern approach to old-school sound synthesis
» كتاب Make - Getting Started with Arduino
» كتاب Make: Lego and Arduino Projects

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
منتدى هندسة الإنتاج والتصميم الميكانيكى :: المنتديات الهندسية :: منتدى الكتب والمحاضرات الهندسية :: منتدى الكتب والمحاضرات الهندسية الأجنبية-
انتقل الى: