51
1 The future is now! JWorks Competence Center IoT Frederick Bousson Kevin Van den Abeele

Cc internet of things @ Thomas More

Embed Size (px)

Citation preview

Page 1: Cc internet of things @ Thomas More

1

The future is now!JWorks Competence Center IoT

Frederick Bousson

Kevin Van den Abeele

Page 2: Cc internet of things @ Thomas More

2

Who are we?

Bringing you innovative Java/JavaScript based solutions with a topteam.

Tech blog: http://ordina-jworks.github.io/Slideshare: http://slideshare.net/OrdinaORAJ/Youtube: https://youtube.com/channel/UCsebfWdqV7LqNNDMDvCESIA

Page 3: Cc internet of things @ Thomas More

3

What we will talk about today!

● What is IoT● Technologies● Hardware● What is LoRa● LoRa in depth● In depth: using the Raspberry Pi for IoT● A look into the future● Q&A

Page 4: Cc internet of things @ Thomas More

4

What is IoT

Page 5: Cc internet of things @ Thomas More

5

What is IoT

“IoT describes a system where items in the physical world, and sensors within or attached to these items, are connected to the Internet via wireless and wired Internet connections.”

- Cisco

The main IoT concepts are:● Low power devices● Gather data● Process data● Improve business

Page 6: Cc internet of things @ Thomas More

6

What was old is new again

Page 7: Cc internet of things @ Thomas More

7

What was old is new again

Gathering data with sensors is not new!

Has been done for ages with older tech (PLCs)→ This older tech is not versatile and very expensive

The new IoT ‘movement’ revives this old concept by using low power devices and sensors which are connected via the internet.

With today’s technologies; big data, analytics it is possible to detect trends and make predictions with the data that is gathered.

Page 8: Cc internet of things @ Thomas More

8

Technologies

Page 9: Cc internet of things @ Thomas More

9

Technologies

Some of the technologies that are used:

Hardware:● Wireless (2/3/4g, LoRa, Bluetooth LE, RF, …)

○ Point to point, mesh networks, Internet connected,...● Small low power components

○ ARM CPUs (x86 making a comeback)○ Highly efficient radios○ Lipo batteries

● Uncountable hardware platform, a lot of which are Arduino based

Software:● Big data, store and analyse the data● Machine Learning

Page 10: Cc internet of things @ Thomas More

10

Hardware

Page 11: Cc internet of things @ Thomas More

11

Hardware

IoT capable devices come in many forms. Below is a list of some of the most used devices:

● Arduino● Raspberry Pi● Intel Edison● Tessel.io● Particle.io● Pinoccio● And many many others!

Making a custom device is also an option, especially when specific functionality is required.

Page 12: Cc internet of things @ Thomas More

12

Devices - Arduino

Page 13: Cc internet of things @ Thomas More

13

Devices - Arduino

The Arduino platform is a well known one, used by a lot of people. It is very versatile and easy to get started with. Can be used for a wide range of project including IoT

● Different models (Uno, Due, Mini, Nano, …)● Languages: Arduino (based on C/C++)● Storage: 32KB flash● https://www.arduino.cc/

Page 14: Cc internet of things @ Thomas More

14

Devices - Raspberry Pi

Page 15: Cc internet of things @ Thomas More

15

Devices - Raspberry Pi

The Raspberry Pi is also a well known platform. It features a lot more powerful hardware than the Arduino (it is in fact a fully fledged pc).

● Different models: A(+) / B(+) / 2 / Zero / 3● Multiple use cases, digital signage, media player, electronics,...● Languages: C/C++, Java, Javascript, PHP, Ruby, …● Storage: SD card or external storage via USB● https://www.raspberrypi.org/

Page 16: Cc internet of things @ Thomas More

16

Devices - Intel Edison

Page 17: Cc internet of things @ Thomas More

17

Devices - Intel Edison

The Intel Edison is a ‘new’ platform that brings the power of the x86 instruction set to the IoT field. More expert knowledge is required to use this in comparison with the Raspberry Pi.

● X86 based CPU, a lot more powerful● Languages: C/C++, Arduino Sketch, Javascript, Python● Storage: 4GB onboard● Integrated WiFi (802.11 a/b/g/n @ 2.4 & 5GHz)● Integrated BLE● http://www.intel.com/content/www/us/en/do-it-yourself/edison.html

Page 18: Cc internet of things @ Thomas More

18

Devices - Tessel.io

Page 19: Cc internet of things @ Thomas More

19

Devices - Tessel.io

Tessel 2 is a modular hardware platform that is meant to get your project prototype up and running very quickly. You however lock yourself into their ecosystem!

● Highly modular hardware platform● Languages: Javascript, Python, Rust● Integrated WiFi (802.11 b/g/n @ 2.4 & 5GHz)● https://tessel.io/

Page 20: Cc internet of things @ Thomas More

20

Devices - Particle.io

Page 21: Cc internet of things @ Thomas More

21

Devices - Particle.io

Particle.io is a platform that focusses specifically on the IoT field. It is mostly Arduino compatible and therefore is also easy to get started with.

● Different models: Spark Core, Photon (wifi), Electron (2/3g)● From prototyping to full rollout● Ready-to-go device: hardware & software already supplied● Connects to cloud● Manage and control devices using a REST api● Arduino code compatible (mostly)● https://www.particle.io/

Page 22: Cc internet of things @ Thomas More

22

Devices - Pinoccio

Page 23: Cc internet of things @ Thomas More

23

Devices - Pinoccio

The pinoccio platform aims to be fully ready out of the box with the inclusion of wifi/2/3g and a streaming REST api.

● Prototyping - Arduino compatible● Languages: ScoutScript, extendable with custom C/C++● Ready-to-go device● Manage devices using the cloud infrastructure● Program unit through web app or arduino IDE● https://www.crowdsupply.com/pinoccio/mesh-sensor-network

Page 24: Cc internet of things @ Thomas More

24

What is LoRa

Page 25: Cc internet of things @ Thomas More

25

What is LoRa

Page 26: Cc internet of things @ Thomas More

26

LoRa in depth

Page 27: Cc internet of things @ Thomas More

27

LoRa in depth

Page 28: Cc internet of things @ Thomas More

28

LoRa in depth

Base station

CO2, PIR, Humidity, Luminance, Temperature, Pressure, …

The sky’s the limit when it comes to sensors!

Sensor Types

Page 29: Cc internet of things @ Thomas More

29

LoRa Alliance

https://www.lora-alliance.org

Page 30: Cc internet of things @ Thomas More

30

LoRa in Belgium

Page 31: Cc internet of things @ Thomas More

31

LoRa in Belgium

Proximus has launched its LoRa Beta program in Belgium● Limited coverage (10 cities)● Preview access to SEaaS (Sensor as a Service) API● 6 months free access to the network● http://www.proximus.be/nl/id_cl_iot/grote-bedrijven-en-

overheden/oplossingen/internet-en-netwerken/internet-of-things.html

Wireless Things network in Belgium● Wider coverage than Proximus● Wide support for LoRaWan devices● http://wirelessthings.be/nl/index.php

Page 32: Cc internet of things @ Thomas More

32

LoRa Devkit (Proximus)

Page 33: Cc internet of things @ Thomas More

33

LoRa Devkit (Proximus)

The devkit: http://www.allthingstalk.com/lora-rapid-development-kit

● IoT Computer - SODAQ Arduino● Grove modular connectors ● Bee socket (Radio module)● Micro SD slot● RTC

The included LoRa radio is pre-configured for the ProximusIoT network and has a range of up to 15 km.

Page 34: Cc internet of things @ Thomas More

34

Java on the Raspberry Pi

Page 35: Cc internet of things @ Thomas More

35

Java on the Raspberry Pi

Java runs pretty well on the Raspberry Pi, especially on model 2.The Raspbian OS has Java 1.8 installed by default.

Capabilities:● Most normal jars will run just fine (slower and memory limited)● Can run complex user interfaces when using JavaFx

○ Has full hardware acceleration for UI rendering○ Forget Swing and AWT!○ The Devoxx screens were running on a Pi with JavaFx

Info & download: http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

Page 36: Cc internet of things @ Thomas More

36

Java and IO pins

Page 37: Cc internet of things @ Thomas More

37

Java and IO pins

Model A and B:● 26 pins● https://www.raspberrypi.org/documentation/usage/gpio/● 17 of 26 pins are for GPIO

Model A+, B+, Zero and 2:● 40 pins● https://www.raspberrypi.org/documentation/usage/gpio-plus-and-raspi2/● 26 of 40 pins are for GPIO

These GPIO pins can be used to collect data from sensors, to drive servos, LEDs and other peripherals: http://wiringpi.com/pins/

Page 38: Cc internet of things @ Thomas More

38

Java and IO pins… Continued

Page 39: Cc internet of things @ Thomas More

39

Java and IO pins… Continued

To use the GPIO pins from within Java an extra library is needed, as there is no native support within Java.

This is where PI4J comes in. It is a easy to use library to control the GPIO pins.

Installation is easy and is documented on http://pi4j.com/install.htmlUsage is also not that difficult: http://pi4j.com/usage.html

Page 40: Cc internet of things @ Thomas More

40

Alternatives?

Page 41: Cc internet of things @ Thomas More

41

Running Node.js

Node.js is built on Chrome's V8 JavaScript engine and uses an event-driven, non-blocking I/O model.

● Easy to setup and use● Uses ‘plain’ javascript● Requires no compilation● Code is portable (like java)● Can also make use of the Raspberry Pi’s I/O

○ https://www.npmjs.com/package/pi-gpio

More information: https://nodejs.org/en/

Page 42: Cc internet of things @ Thomas More

42

Example WeatherGenie

WeatherGenie is a node.js application that runs on the Raspberry Pi 2.

Website: https://www.weathergenie.be/Sources: https://www.github.com/beele/WeatherGenie

Page 43: Cc internet of things @ Thomas More

43

Example WeatherGenie

Page 44: Cc internet of things @ Thomas More

44

Example WeatherGenie

The data processing is done on a separate node worker instance. This way the application remains responsive while it is working on the new data.

Weather data comes from:● openweathermap.com

○ current and predicted weather conditions● buienradar.be

○ Rain data is extracted from animated gifs○ lat/lon can be converted to rain intensity

● blitzortung.org○ Lightning data is obtained through

a websocket connection

Page 45: Cc internet of things @ Thomas More

45

Suit and tie

Page 46: Cc internet of things @ Thomas More

46

Big business

People think there is no business incentive for IoT.

“Toys, fun and giggles”- Random business type person

They are wrong! IoT can have a significant impact for businesses.● Status and product tracking● Acquire and analyze data● Adapt to changing conditions➔ Reducing costs – optimizing workflow – greater control

Page 47: Cc internet of things @ Thomas More

47

Big business… Continued

There are a lot of viable business cases, a few examples:● Enhanced tracking of packets/parcels● Workforce tracking (cars/route optimizations)● Early warning systems● Parking lot detection systems● Medical tracking (with internal or external sensors)● …

IoT and big data go hand in hand. But an often overlooked aspect is security. If we start tracking everything we must also be certain that all this data is secure. Privacy is another concern that must be kept in mind when tracking objects/people.

Page 48: Cc internet of things @ Thomas More

48

A look into the future

Page 49: Cc internet of things @ Thomas More

49

The IoT world is currently experiencing a surge of new and improved technologies. The future will bring new and exciting opportunities to explore previously unexplored areas.

● Better battery technology/lower power consumption● A better IoT network (improved WiFi/LoRa/Bluetooth/gsm/cdma/…)● Better and more sensors● Better data analyzing techniques● Smart -everything-

○ Watches○ Homes○ Cars○ ...

A look into the future

Page 50: Cc internet of things @ Thomas More

50

Questions?!

Page 51: Cc internet of things @ Thomas More

51

Thank you for attending!