Похожие презентации:
intro
1.
IoT Ecosystemshttp://makse.site/IoTE/
2.
IoT Ecosystems3.
IoT EcosystemsSergey (L) Makarov smakarov@hse.ru
associate professor at the School of Software Engineering
http://makse.site/IoTE/
2 modules, 28 lecture hours, 28 seminar hours.
The course is practice-oriented – “a lil less conversation, a lil more action” (c)
Result = 0.8*(0.35*X+0.65*Y)+0.2*HA,
where X – arithmetical mean of all marks of completed Arduino Uno tasks
(23 total), Y - arithmetical mean of all marks of completed Raspberry Pi 3/4
tasks (8 total).
HA is the homework assignment: a hardware-software project
(Arduino/Raspberry-Arduino IDE/Android Studio application, preferably
mobile application) based on a simple network of the things with a certain
purpose (smart home, smart weather station, smart plant, smart lock etc.).
HA stands for Exam, but you can get 8 without it!
4.
IoT Ecosystems5.
IoT EcosystemsIf we take a look at the Gartner curve on emerging technologies, we can spot
IoT at its peak in 2014-2015, its disappearance in 2016-2017 replacing it with a
new technology on the curse – IoT Platform, and then moving the IoT Platform
trend closer to disappointment in 2018. But, as everybody knows, a real 2.0
reliable and thoughtful technologies emerge after that fall on the Gartner
curve. Despite of the disappearance of the IoT from the hype area on the curve
in 2019 and later, the IoT area is being developed actively, which we can spot
according to some articles by Gartner, Forbes etc. According to [2], for
example, by the year 2030 it is prognosed that there will be around 29 billion
IoT-devices. According to a Forbes article, any modern industry is IoT industry.
That is why every self-respecting programmer or IT specialist should know the
basics of this technology and be able to apply various approaches to building
Internet of Things systems for various tasks.
6.
IoT Ecosystems7.
IoT Typical SchemeEnd point devices base stations cloud/server
(sensors)
(transmit the
(collects and
data)
stores the data)
software
applications /
business logics
8.
IoT Components- breadboard;
- resistors (pull-ups, series);
- LEDs;
- buttons;
- breadboard wires;
- a lot of sensors;
- board (Raspberry Pi 3).
- HDMI monitor;
- HDMI cable;
- USB-miniUSB cable;
- GPIO Extension board;
- IDE 40 pin F-F cable;
- microSD card;
- card reader;
- power adapter for Raspberry Pi;
- board case.
9.
IoT Boards (SoM –System on Modules)- Arduino;
- Argon;
- Asus;
- Banana Pi;
- BeagleBone;
- CubieBoard;
- Firefly;
- FriendlyARM;
- Intel IoT boards;
- Khadas;
- LattePanda;
- Microbit;
- MiQi;
- ESP;
- Odroid;
- Orange Pi;
- Pico;
- Raspberry Pi;
- Samsung Artik;
- etc.
10.
Examples from real life1) Subway car controlled led strip or display
11.
Examples from real life2) Electro fridge (Whirlpool) control board
12.
Examples from real life3) This classroom RFID reader: magnetic lock, RFID module, your (my)
card, LED, relay module
13.
Examples from real life4) Temperature sensors outside and inside of the tram car + the LED
monitor / arrival monitor at stations
14.
Examples from real life4) Electric scooter display
15.
Examples from real life5) Smart Bird House
16.
Examples from real life6) Squirrel Feeder Course Project
17.
Examples from real life7) ??? ASMR futuristic video capabilities? LOL
(https://www.youtube.com/watch?v=_qGmdLgntVs)
18.
That’s hardware, what about the software?We are gonna be using:
Arduino IDE
Android Studio (Java)
Thonny (Python)
Mosquitto
MATLAB ThingSpeak
But you can use anything you like, e.g. Jeanny, IntelliJ IDEA, Kotlin, etc.
19.
Our 8 Raspberry Pi practice projectsFirst Project – RGB LED
Second Project – Spying Eye
Third Project – Environmet Monitoring System
Fourth Project – RGB Strip Controlling System
Fifth Project – Remote Weather Station
Sixth Project – Working with Cloud IoT Platform
Seventh Project – Home Invasion Detection System
Eighth Project – Smart Home Voice Control
20.
First Project – RGB LED21.
Second Project – Spying Eye22.
Third Project – Environmet Monitoring System23.
Fourth Project – RGB Strip Controlling System24.
Fifth Project – Remote Weather Station25.
Sixth Project – Working with Cloud IoT Platform26.
Seventh Project – Home Invasion Detection System27.
Eighth Project – Smart Home Voice Control28.
THINGSYOU
SHOULD
REMEMBER
29.
Classroom rulesYou should leave the classroom as it had been before you entered it.
There are a lot of unhappy professors who come to the classroom after
us and realize their students can’t switch on computers because the
cable is missing or can’t use the keyboard because it is unplugged, or
don’t see anything on the monitor because it was plugged into some
other device and HDMI cable is resting on a table while it’s supposed to
be plugged in back to the desktop computer, etc., etc., etc.
So please, take some time after the classers and bring things back to
how they were! Pay attention, since I collected some sad forgotten
Raspberry Pi power supplies from the classroom sockets on multiple
occasions throughout all those years!
Also, remember that it takes time to bring things back, and I also need
time to collect the boxes and check the classroom, so plan your leaving
ahead! Stop whatever you’re doing if the classes are already over!
30.
Safety first!!!Things you need to know and follow before touching anything within the
practice classes:
1) Electronics can hurt you: don’t use yourself as a circuit part, don’t
touch the board components, be smart. If the board is not working
and heats a lot switch it off and don’t touch it. Wash up afterwards.
2) You can hurt electronics. It is static-sensitive: don’t shuffle your feet
& touch, don’t touch while wearing a pullover of sweater made of
wool and synthetics, don’t touch your hair while working with
hardware – touch something metal first to eliminate static charge.
Don’t touch the board components. If you are not sure where the +
and – are, ask, or check the book.
3) NEVER build or change the circuit components if the board is
connected and active. First switch the board off, then rebuild your
circuit.
4) Always check the polarity and the circuit twice! If something goes
wrong it means you made something wrong!
5) The black fire sensor reacts not to the TEMPERATURE, but to the
flame infrared SPECTRE. Don’t burn the fire sensor down with your
lighter!
6) Don’t apply extreme physical force while putting a board into the
case or closing the box with components after the classes.
31.
Safety first!!!Things you need to know and follow before touching anything within the
practice classes:
1) Electronics can hurt you: don’t use yourself as a circuit part, don’t
touch the board components, be smart. If the board is not working and
heats a lot switch it off and don’t touch it. Wash up afterwards.
32.
Safety first!!!Things you need to know and follow before touching anything within the
practice classes:
2) You can hurt electronics. It is static-sensitive: don’t shuffle your feet &
touch, don’t touch while wearing a pullover of sweater made of wool
and synthetics, don’t touch your hair while working with hardware –
touch something metal first to eliminate static charge. Don’t touch the
board components. If you are not sure where the + and – are, ask, or
check the book.
33.
Safety first!!!Things you need to know and follow before touching anything within the
practice classes:
3) NEVER build or change the circuit components if the board is
connected (powered) and active. First switch the board off, then
rebuild your circuit.
34.
Safety first!!!Things you need to know and follow before touching anything within the
practice classes:
4) Always check the polarity and the circuit twice! If something goes
wrong, in most of the cases it means you made something wrong!
35.
Safety first!!!Things you need to know and follow before touching anything within the
practice classes:
5) The black fire sensor reacts not to the TEMPERATURE, but to the
flame infrared SPECTRE. Don’t burn the fire sensor down with your
lighter! (BLACK LED)
36.
Safety first!!!Things you need to know and follow before touching anything within the
practice classes:
6) Don’t apply extreme physical force while putting a board into the
case or closing the box with components after the classes.
37.
Safety first!!!Things you need to know and follow before touching anything within the
practice classes:
6) Don’t apply extreme physical force while putting a board into the
case or closing the box with components after the classes.
38.
Something else: example 1Just like there’s theory and practice, there’s schematics and reality.
Please understand the difference!
Task 3 on Arduino:
39.
Something else: example 2Just like there’s theory and practice, there’s schematics and reality.
Please understand the difference!
Task 15 on Arduino:
40.
BreadboardBreadboards are a common tool for
quickly prototyping circuits without
needing to solder components together.
This allows you to make wiring changes
during development until the design is
stable. Breadboards can also be useful
in testing, by allowing you to connect
instrumentation easily and probe
various connections in the circuit.
The holes of a breadboard are internally
connected together in rows and
columns to allow multiple components
to share the same connection point.
The outer rows are connected
perpendicular to the rest of the board
and form a single bus in each row
across the top and bottom. These rows
are typically used to connect power and
ground, or other common signals
needed across the entire circuit.
41.
ResistorsResistors on schemes:
Typical resistors in kits:
In many digital interface
circuits, resistors are
connected between the I/O
signal pins and VCC or ground.
These are known as pull-up
and pull-down resistors,
respectively. They guarantee
that each signal has a stable
default state that the rest of
the system can rely on,
without significantly affecting
the input or output signal
directly.
42.
Resistors43.
ResistorsA digital input that is not actively
connected to any signal is
a floating input. Floating inputs
are susceptible to electromagnetic
interference, which affects the
value reported to your app
and causes unpredictable
readings. Pull-up or pull-down
resistors ensure that the line is
driven to a stable value,
even when nothing else is
connected.
The resistor values you choose affect the system in different ways. Low value
resistors are considered "strong" because more current flows. Strong pull-ups
(or pull-downs) draw more power overall, but they can reset the signal to an
idle level more quickly than a "weak" resistor with a higher value.
Pull-up and pull-down resistor values are typically between 1kΩ and 10kΩ.
44.
ResistorsEach output pin has a limited
capability to source (when high)
or sink (when low) current
from the circuitry connected
to it. Peripherals that draw more
current than the pin can
handle — even temporarily
— can damage the output.
To protect the pin, insert a
current-limiting resistor in
series with the load.
Series resistor values are
typically between 100Ω and 300Ω.
To control higher power transducers, such as motors, buffer the load from the
output pin using a transistor or similar electronically controlled switch and
power the transducer directly from the power supply.
The source/sink capacity of I/O pins will vary by device. Check your hardware
documentation to better understand what your board can support.
45.
ResistorsResistors can be:
- current limiting;
- pull-ups and pull-downs;
- series;
- voltage splitterts;
- with constant resistance;
- with changing resistance;
- potentiometers (resistance can be changed manually by some toddler);
- varistors (variable resistors) – for security (in electrical line filters);
- termistors (change their resistance according to the temperature);
- photoresistors (change their resistance according to the illumination intensity)
46.
LEDsLEDs (Light Emitting Diodes) – the emit light
when the current goes through them from
anode (+) to cathode (-). Anode leg is longer
and is supposed to go to the + of power supply;
cathode leg is the shorter one and goes to the ground (-).
Typical scheme:
LED own resistance is very low and without a resistor limiting the current
flow the LED will burn.
For example, one of the simple rules of using LEDs is:
for making the LED work with 20mA current value from 5V power supply
use 150-360 Ω resistor.
47.
ButtonsButton is a simple mechanism which contains
1 line or 2 lines (pair of rails) connected when
the button is pressed.
Buttons have the bounce effect which is microsparks when pressing and
releasing the button which lead to tens of wrongly registered switches ot
the button during tens of millisecons:
To avoid that effect use ready driver libraries for Android Things which
include reaction to the bounce effect.
48.
ButtonsButton schemes:
with pull-up resistor:
wrong:
with pull-down resistor:
49.
Breadboard WiresNothing to tell about, really.
50.
Sensors: Arduino UNO3 Starter Kit51.
Sensors: Basic starter learning kit 01 for Raspberry Pi52.
The rest (not very interesting)- HDMI monitor;
- HDMI cable;
- USB-miniUSB cable;
- GPIO Extension board;
- IDE 40 pin F-F cable;
- microSD card;
- card reader;
- power adapter for Raspberry Pi 3;
- board case.
53.
Questions?54.
References1.
2.
3.
Internet of Things: Unlocking True Digital Business Potential
[Электронный ресурс] / Gratner, Inc. and/or its affiliates, 2023.
Language: English. - URL: https://www.gartner.com/en/informationtechnology/insights/internet-of-things?cm_sp=news-_-hub-_2970017
Eseye’s Insights from the 2023 Gartner Magic Quadrant for Managed
IoT Connectivity Services, Worldwide [Электронный ресурс] / Nick
Earle, Eseye, 2023. Language: English. - URL:
https://www.eseye.com/resources/blogs/insights-2023-gartnermagic-quadrant-managed-iot-connectivity/
Android Things: the Developer Preview [Electronic resource] / Google
Inc, 2017-2022. – URL:
https://developer.android.com/things/index.html
4.
Android Things Peripheral I/O [Electronic resource] / Google
CodeLabs, 2017-2022. – URL: https://kiosk-dot-codelabssite.appspot.com/codelabs/androidthingsperipherals/index.html?index=..%2F..index#0
5.
https://esp8266.ru/modules-esp8266/
55.
References6.
https://www.led-genial.de/mediafiles/Sonstiges/AI-Thinker_ESP12F.pdf
7.
https://onpad.ru/catalog/cubie/arduino/arduino/1626.html
8.
Wireless IoT networks / master class by Tatyana Volkova, Samsung
Research Center, 2017.
9.
Bionic Arduino Class 1 / lecture by Tod E. Kurt, 2017.
10. https://iot-analytics.com/leading-iot-software-companies/
11. Hardware 101 [Electronic Resource] / Android Developers Site,
Google Inc., 2017. - URL:
https://developer.android.com/things/hardware/hardware-101.html
12. DC Circuit Theory [Electronic Resource] AspenCore Inc., 2017-2021. URL: http://www.electronics-tutorials.ws/dccircuits/dcp_1.html
13. Ohms Law and Power [Electronic Resource] AspenCore Inc., 20172020. - URL: http://www.electronicstutorials.ws/dccircuits/dcp_2.html
56.
References14. LED [Electronic Resource] / Amperka Wiki., 2013-2020. - URL:
http://wiki.amperka.ru/конспект-arduino:светодиод
15. Resistor [Electronic Resource] / Amperka Wiki., 2013-2020. - URL:
http://wiki.amperka.ru/конспект-arduino:резистор
16. Pull-up Resistors [Electronic Resource] / AspenCore Inc., 2017-2020. URL: http://www.electronics-tutorials.ws/logic/pull-up-resistor.html
17. Button [Electronic Resource] / Amperka Wiki., 2013-2020. - URL:
http://wiki.amperka.ru/конспект-arduino:кнопка