Académique Documents
Professionnel Documents
Culture Documents
Automation
Contents
What is IOT?
Framework of IOT
Hardware description
USB WEBCAM
Raspberry Pi
NodeMCU
Relays
L293D
Software description
Project setup
What is IOT?
Internet of Things(IOT): is a new emerging technology which
connects all dumb devices to the internet.
Internet Of Things
Framework of IOT
1)Sensor
2)Connectivity
3)People & Process
Sensor
Sensor is a transducer which senses physical signals and converts it to an
electrical signal.
Ex: Temperature/Humidity sensor
Force/Pressure sensor
Electro magnetic sensor etc.,
Wireless Connectivity
Which allows the devices to communicate each other. Data can be
transmit and receive over these networks.
Bluetooth
Wi-Fi
ZigBee
WLAN
BLOCK DIAGRAM
Wit.ai voice
App
Relays
L293D
Raspberry Pi
NodeMCU
Hardware
USB Webcam
Intex IT-306WC Night
Vision PC
In-built Microphone
Raspberry Pi
Features
4 USB ports
40 GPIO pins
Full HDMI port
Ethernet port
Combined 3.5mm audio jack and composite video
Camera interface (CSI)
Display interface (DSI)
Micro SD card slot
Video Core IV 3D graphics core
VNC SERVER
VNC Client vnc application is installed on remote PC.
VNC Server vnc application is installed on Pi.
Through SSH connection, vnc client can access vnc server directly to view
the remote desktop of Pi.
Here, tightvncserver is installed as a vnc server application.
VNC server software can be installed using the SSH connection that has
been established earlier using PuTTy.
To install VNC server on Raspberry Pi ,
$ sudo apt-get install tightvncserver
The Tightvnc Server can be run by SSH terminal with typing
$ tightvncserver.
NodeMCU
NodeMCU is an open source IoT platform.
It uses the Lua scripting language and built on the ESP8266 SDK 1.4.
ESP8266 Wi-Fi SoC+ development board =NodeMCU
hardware included is ESP-12 module.
Features
open source
Interactive
Programmable
Low cost
Simple
WIFI enabled
It's running at 80MHz
64 KB of instruction RAM
96 KB of data RAM
64 KB boot ROM
L293D Module
L293D is a typical Motor driver or Motor Driver IC which allows DC
motor to drive on either direction.
L293D is a 16-pin IC and Dual H-bridge Motor Driver integrated
circuit (IC).
Why L293D?
Generally Relays are driven by high voltage and requires high current
but most of the embedded systems works at lower voltage.
Their comes the requirement of a circuit which can drive relays taking
input from the micro-controller board and also provide the required
current to drive relays.
Transistors can be used as H-Bridge driver but it makes little
complexity so L293D is used.
RELAYS
A relay is an electrical switch that uses an electromagnet to move the
switch from the off to on position instead of a person moving the
switch.
It takes a relatively small amount of power to turn on a relay but the
relay can control something that draws much more power.
In simple words principle of relay is controlling higher currents with
lower currents.
Software
wit.ai voice app
This app accessible through Firefox, Chrome and Safari and it
is online software.
This app can read text or voice through microphone.
We have to create our own voice app and also trained by the
expressions.
First login to the github website(www.github.com) then only
we can access this voice app features.
Creating intents
Ex: on/off, get_temperature
Train the intents with the expressions as there are many ways to say.
When it shows green color icon indicaticates that good trained otherwise
bad training.
Ex: on/off
expressions are
turn on light
switch on fan
please turn off light
switch off the fan
Wit Bot starts learning with this expressions.
Creating entities
Create entities for each expression by selecting them.
light
on
Fan
off
PROJECT SETUP
wget http://github.com/wit-ai/witd/releases/download/v0.1/witd-armv6
chmod +x witd-armv6
./witd-armv6
by running this in the terminal, Pi acts as server
Sending Requests
Start recording audio and streaming it to wit.ai:
$curl -X GET http://localhost:9877/start?access_token=
<YOUR_ACCESS_TOKEN>
The response is
{"_text":"Hello world","msg_id":"fbe2a1ff-3869-49d8-885d67e23357ffdc","outcomes":[{"_text":"Hello
world","confidence":0.263,"entities":{"location":[{"suggested":true,"val
ue":"Hello world"}]},"intent":"get_weather"}]}
To get the response in a file use this command
> filename.json
along with stop command
To save the executing time , we write all these commands in a shell
file.
Then we only run that shell file, no need to type all commands in a
terminal.
$ sh filename.sh
THANK YOU