SlideShare une entreprise Scribd logo
1  sur  80
Agenda
2
• Partie 1: Lesapplications IoTenAfrique
• Partie 2: Workshop
• Partie 3 : Tutorial…
ApplicationAndroidavecFirebase
WorkshopInternet desobjets
Plandu workshop
• Objectif du workshop
• Démarche technique
• Première partie :
Problématiques àrésoudre
• Deuxièmepartie :
Brainstorming
• Troisièmepartie :
Démonstration pratique
3
• Lepremier but de cette formation pratique
est de comprendre l’importance de l’IoT en
tant que outil technologique moderne
capable de résoudre desproblématiques
complexes.
• Ledeuxième objectif est de permettre aux
participants d’entamer une démarche
technique de dimensionnement et de choix
technologique d’une architecture IOTen
utilisant desoutils Open source
• Finalement, afin de pouvoir maitriser l’aspect
pratique, nous ferons ensemble une
démonstration de développement d’une
solution IOTayant pour objectif derésoudre
une problématique d’actualité.
Objectif duworkshop
4
Afin de maitriser l’aspect pratique et
comprendre le principe de l’IOT,il estimportant
de découvrir les différents secteurs
d’applications de cette technologie.
Pour cefaire, nous allons évoquer des
problématiques chroniques dansdessecteurs
vitaux et les participants seront invités à
s’inspirer desanciennesformations théoriques
pour définir les éléments de la solution à
proposer.
Ensuite, nous allons échangerensemble au tour
desarchitectures présentées
Finalement nous ferons une application pratique
d’une manière concrète.
Démarchetechnique
5
Premièrepartie : Problématique
6
Lemonde évolue avecla naissancede nouveaux besoinsdans différents
secteursvitaux, principalement l’industrie moteur de l’économie.
Problématique1: Industrieconnectée 4.0
7
Denosjoursle suivi de la productionet le retour d’informationen tempsréel est devenueune nécessité pour assurerla
compétitivitédansle secteurindustriel.Ceciafin de réagir rapidementet afin de prendrelesbonnesdécisions.
Pour cefaire l’internet desobjets s'affirmecomme la convergencedu monde virtuel, de la conceptionnumérique,de la
gestionaveclesproduitset objetsdu monderéel.
Problématique1: Industrieconnectée 4.0
Cahierdescharges
Sujet 1:
Laproblématique consiste àconcevoir une solution
permettantauxindustrielsde suivreen tempsréel et à
distance la consommation énergétique de leurs parc
machines
Sujet 2:
Laproblématique consisteàdévelopperune solutionde
supervisionà distanced’une lignede productionindustriel
8
OutilsHardware : Industrieconnectée 4.0
Centrale de mesureénergétique Capteur detension Capteur decourant Carted’interface
GatewayàBasede carte RaspberryPi GatewayàBasede carteArduino
9
Lemonde évolue avecla naissancede nouveaux besoinsdans différents
secteursvitaux, notamment l’agriculture
Problématique2: Agriculture intelligente
10
L’agricultureprésenteun secteurvital pour le pays.Actuellementl’intégrationdesnouvelles
technologiesest devenu une nécessitépour assurerle développementdurable.
Problématique2: Agriculture intelligente
Cahierdescharges
Sujet 1:
Laproblématique consiste àconcevoir une
solutionpermettant auxagriculteursde gérer
leur systèmed’irrigationàdistance.
Sujet 2:
Laproblématique consiste àdévelopper une
solutionde supervisionàdistanced’une station
d’aquaculture.
11
OutilsHardware: Agriculture intelligente
Capteur oxygènedissous
Electrovanne
Pompeàeau
Stationmétéo
Capteur detempérature
12
Capteur humidité dusol
Gateway
Problématique
Grâceauxnouvelles technologies, la télémédecine permet l'accès àdistance d'un patient àun
médecin ou àune équipe médicale. Elle représente une autre manière de soigner,avecles mêmes
exigencesde qualité et de sécurité
Problématique3 : Télémédecine
13
Latélémédecine regroupe les pratiques médicales permises ou facilitées par les télécommunications.
C'est un exercice de la médecine par le biais destélécommunications et destechnologies qui permettent
les prestations de santé àdistance et l'échangede l'information médicale s'y rapportant.
Problématique3 : Télémédecine
Cahierdescharges
Sujet 1:
Laproblématique consiste àconcevoir une solution
permettant de dépister dessymptômes et dessignes
évoquant de l’infection par covid-19 chezla
populationet permettantde suivrequotidiennement
l’évolutionclinique dessymptômesde l’infection chez
les utilisateurs
Sujet 2:
Laproblématiqueconsisteàdévelopperune solution
de supervision àdistance les paramètres vitaux et le
tracé ECGdespatients hospitalisés.
14
OutilsHardware & Software: Télémédecine
Intelligenceartificielle Basede donnéesmassives Protection desdonnéespersonnelles
CapteurECG
Capteur température
corporelle sanscontact
PlateformeWEB/mobile
15
Problématique
Une ville intelligente est une ville utilisant les technologiesde l'information et de
la communication pour améliorer la qualité desservicesurbains.
Problématique4: Smart City
16
Problématique4: Smart City
Problématique
Une ville intelligente est une ville utilisant les technologies de l'information et de
la communication pour améliorer la qualité desservicesurbains.
Cahierdescharges
Sujet 1:
Laproblématique consiste àconcevoir une solution
permettantauxmunicipalitésde suivreen tempsréel
le pourcentage de remplissagedespoubelles
enterrés. Sujet 2:
Laproblématique consiste àdévelopper une
plateforme WEBet mobile permettantau citoyensde
valoriserleursdéchetsménagerstriés.
17
Outils: Smart City
Capteurultrason ModuleGSM BatterieLithium
LoRaNode LoRaGateway NoSqlDatabase
ModuleGPS
18
Lesattentes de l’exercicede
Brainstorming
19
• Choix de la problématique àrésoudre
• Choixde l’architecture de la solutionIoT
– Exigencesfonctionnelles (sécurité, disponibilité, …)
– Composants de la solution
• Capteurs
• Passerelles
• Technologiesde connectivité (couverture, vie de batterie, bande
passante, vie batterie, coût de connectivité, coût module, spectre)
• Typede la plateforme de développement (middleware, cloud,…)
• Application IoT(services métier àproposer,…)
Outils Software
Plateformenumérique Basede donnéesNoSql
Logiciel dedéveloppement
20
Partie 3:
Plateforme Firebase
21
Outils Software
Firebaseest un ensemble
de servicesd'hébergement pour
n'importe quel type d'application. Il
propose d'héberger en NoSQLeten
temps réel desbasesde données,
du contenu, de l'authentification
sociale, et desnotifications, ou
encore desservices, tel que par
exempleun serveur de
communication tempsréel.
22
Pourquoi FirebasepourIoT?
Lesprincipales enjeux de l’IoTsont:
a)Fournir un contenuà faible latence (FirebaseRealtimeDatabase)
b) Sécuriserla communication entre les appareilset le backend(FirebaseAuthentication).
Outils Software
Lesbasesde données SQL
ont un schémaprédéfini
alors que les basesde
données NoSQLont un
schéma dynamique pour les
données non structurées.
Lesbasesde données SQLsont évolutives verticalement, tandis que les basesde
données NoSQLsont évolutives horizontalement. Lesbasesde données SQLsont
misesàl’échelle en augmentant la puissance du matériel. Lesbasesde données
NoSQLsont mises àl’échelle en augmentant le nombre de serveurs de basesde
données dans le pool de ressources afin de réduire la charge.
Celasignifie que les basesde données SQLreprésentent desdonnées sousla forme
de tables composéesde n nombre de lignes de données, tandis que les basesde
données NoSQLsont la collection de paires clé-valeur, de documents, de basesde
données graphiques, etc. qui ne possèdent2p3asde définitions de schéma standard.
Outils Software
Firebases’occuped’une
grande partie desservices
que normalement les
développeurs eux-mêmes
devraient les créer,
commepar exemple
l’authentification, les
basesdesdonnées, les
notifications,
l’hébergementdes
serveursetc.
Lesservicesofferts par Firebasesonthébergé dansle Cloud et elles sontscalablesavecpeu ou pasd’effort de la part du
développeur.Cesservicesont descomposantsbackendqui sont entièrementgéréeset maintenuespar Google.
Firebaseoffre desSDKclients qui interagissent aveccescomposants de façon directe sansbesoin de placer un
middlewareentre l’applicationet les services
24
Outils Software
SDK(Software DevelopementKit) désigneun ensembled’outilsutiliséespar les développeurspour le
développementd’un logiciel déstinéàune plateforme déterminée(Android,iOS,…).
Un SDKpeut avoir une seuleou plusieurscibles commeun systèmed’exploitation, une applicationweb, un
serveur web, jeu vidéo,etc.
PourdévelopperuneapplicationAndroid,il faut le SDKclientAndroidde Firebase.Pour développerune
applicationweb, il faut le SDKclient web de Firebase,etc.
25
Outils Software
LeSDKde Firebasequi permet
une interaction directe entre un
client et les services Firebase
importe une nouvelle notion de
développent qui diffère de la
méthode traditionnelle où une
partie backendet une partie
frontend doit être développée,
alors que dans lecasde Firebase
on contourne la partie backend
et donc la logique d’exécution
est placé chezle client
(frontend). Voir figure suivante.
L’accèsadministrateur est
fournie par l’espace « Firebase
console».
Comparaisonentre le développementclassiqueet le développementavec
Firebase
26
Outils Software
LesservicesdeFirebase
FirebaseRealtime Database etCloud
Firestore:
Cesont les deux basesdesdonnées
offertes par Firebase, elles sedécrit
commedesbasesde données tempsréel,
hébergéesdans le Cloud etNoSQL)
Lesclients de multi plateforme
partagentla mêmeressourcedansla
basedesdonnées. S’il aune
modification, tout les clients reçoit
automatiquement une mise àjour
instantanée.
Firebasestockentles donnéessousla formatJSONet elle utilise le type NoSQLpour sesbasesdesdonnées,cequi
nousdébrasedu contrainte destables de la basedesdonnéesrelationnelle(SQLpar exemple),permettantainside
créer et dimensionnerd’unefaçon pluslibre et facileune basedesdonnées.
27
Outils Software
FirebaseRealtimeDatabaseVSCloud Firestore
Cloud Storage fournit un stockage des
fichiers massivement scalable, il permet
auxclients(un client peut être un appareil
IoTaussi!)de publier et de téléchargerdes
fichiers (images, texte,etc.)
28
CloudFunctions:
Enutilisantle service CloudFunctions de Firebase,on peut
déployer un code exécutant sur les infrastructures serveur
de Googlequi répond automatiquement au événements
arrivantsd’autresservice de Firebase.
Deuxièmepartie : Brainstorming
29
Elémentsdela solution: Industrieconnectée4.0
Communication viale
protocole industriel
Modbus
30
Technologiedeconnectivité: Wi-Fi, 4G
Elémentsdela solution: Industrieconnectée4.0
Communication en
temps réel entre la
basedesdonnées etla
plateforme
31
Elémentsdela solution: Industrieconnectée4.0
Tableaude bord accessiblesur la plateforme
32
Démonstration
applicationSMART
Irrigation
Lasolution contientprincipalement
un kit de commandeà distancedes
vannesd’irrigation et des
motopompes via une application
mobile. Cetoutil permet à
l’agriculteur d’épargner le
déplacementsursite et il lui permet
de définir destemps d’irrigations
précis. Ladeuxième composante du
projet c’est de faire de
l’échantillonnage sur desdifférents
niveaux de solspourinformer
l’agriculteur sur lepourcentage
d’humidité du sol. Ceciafin de savoir
la quantité d’eau d’irrigation
nécessaire.
Elémentsdela solution: Agriculture
33
Technologie de connectivité : 2G,LoRa
Elémentsdela solution: Agriculture
ent
34
Elémentsdela solution: Agriculture
ent
35
Elémentsdela solution: Agriculture
ent
36
Elémentsdela solution: Télémédecine
37
Objectifs :
 Dépister les symptômes et signesévoquant de l’infection par covid-19 chezla population,
 Suivre quotidiennement l’évolution clinique dessymptômes de l’infection chezles utilisateurs,
 Permettre au staff médical de détecter les patients suspectsporteurs du covid-19,
 Permettre au staff médical d’indiquer la pratique du test de diagnostic du covid-19,
 Permettre au staff médical de sélectionner les patients àrisque de développer desformes graves,
 Permettre au staff médical d’indiquer l’hospitalisation despatients,
 Permettre au staff médical de vérifier le respect du confinement despatients suspectpar la
géolocalisation,
 Permettre au ministère de la santé de générer desstatistiques de l’évolution de l’épidémie,
 Sauvegarderet archiver tous les données et informations collectées desutilisateurs,
 Plateforme WEBaccessiblepar plusieurs utilisateurs aveccontrôle d’accèssécurisé,
 Séparerles informations àcaractère personnelles de celle àutilisation anonyme,
 Dimensionner le serveur pour pouvoir gérer un nombre d’utilisateur simultané >10 millions
Elémentsdela solution: Télémédecine
Technologie de connectivité : Wi-Fi,4G
38
Elémentsdela solution: Télémédecine
Plateforme WEBadministrateur
39
Elémentsdela solution: Télémédecine
40
Elémentsdela solution: Smart City
Technologie de connectivité : LoRa,2G
41
Elémentsdela solution: Smart City
42
Elémentsdela solution: Smart City
43
Troisièmepartie : Démonstration
44
Outils Software
ApplicationAndroid avec Firebase
Il faut tout d’abordavoir un compte
Googlepour utiliser les service de
Firebase, il suffit juste de créer un
nouveau comptegratuitement.
Ensuite,visitezle site web de
Firebase:
https://firebase.google.com/
PourdévelopperuneapplicationsurAndroid,
il nous faut un logiciel d’environnement de
développement (IDE), nous allonsutiliser
l’IDEofficielde Google«AndroidStudio »
téléchargeable sur celien:
https://developer.android.com/studio
45
Cliquez sur Getstarted
Outils Software
Cliquez sur Createproject
46
Démarche de création d’une ApplicationAndroid avecFirebase
Entrezun nomde
votre projet
Outils Software
Acceptezlestermes
de servicesde
Firebase
Vousêtesmaintenant surl’interface « Firebaseconsole»
47
OuvrezAndroidStudioet cliquez sur Starta newAndroid StudioProject
Outils Software
48
Onnousdemandede choisirun Templatede notre projet, on va choisir« EmptyActivity »
Outils Software
49
Attribuer un nom à votre projet et laissertout les autre champsintacte et cliquez sur « Finish»
Nomdu
projet
50
Outils Software
Votre projet est crée! L’interface doitêtre comme celle-ci:
Outils Software
51
Nousallons maintenant
exécuter notre première
application sur unSmartphone
Android, mais avant il faut
configurer son Smartphone en
modedéveloppeur.
Remarque:Onpeut aussi
utiliserle Smartphone virtuel
deAndroidStudio,maisil est
préférable de tester sur un
appareilréel.
52
Accédezaux paramètres de votre Smartphone, puisSystème>Aproposdetéléphone>Numérodebuild
Outils Software
• Appuyiezsuccessivementplusieursfois surle numérode build jusqu’à
que le systèmevousdit que la mode développeurest activée.
• Retournez au système>Optionspour lesdéveloppeurs,assurezvous
que les Optionspour développeuret le débogageUSBsontactivés.
Outils Software
Connectezvotre Smartphoneà votre PCatravers un câble
USB,siun dialogue estapparusurvotre téléphone,cliquer sur
« Toujoursautoriser » puis «OK».
53
Outils Software
54
Lenom de votre Smartphonedoit maintenant apparaitresurAndroidStudio.
Cliquezsur« Run», l’icône vert justeau coté du nom.
Outils Software
• Voici votre première application helloworld!
Supposonsqu’on veut contrôler uneporte à distancevia notre
application, pour arriver àcet objectif nous allons ajouter un
switch àl’interface.
Sion active le switch,la porte concernées’ouvrepar contre si
on le désactivela porte seferme.
55
Pour ajouter un switch dansl’interface graphiquede notre application,cliquer sur le dossier resdans
l’arborescencede projet àgauche,puis layoutet ensuiteactivity_main.xml
Outils Software
56
L'interfacede ci-dessusest apparait,on remarqueque c’estle même contenu que
nousavonsvu sur notre applicationtout àl’heure.
Outils Software
57
Pour ajouter un switch cliquez sur Palette>Buttons>Switch
Outils Software
58
Simplement,glissezle switchàl’interface de l’application,le switchest maintenant
ajouté àl’interface,Veuilleznoter l’id de notre switch.
id
59
Outils Software
Pour que notre
application
connait les
événements
venant de
switch, il faut
créer une
instance de
switch dans le
fichier
MainActivity.jav
a. le fichierdoit
semblerà
l’imagesuivante
60
Outils Software
Cliquez surTools>Firebase
Outils Software
61
Maintenant,il faut associer
notre projet Android au
projet Firebasecrée
précédemment.
AndroidStudiofourni un outil
qui facilite l’association de
différentes services de
Firebase.
Nousallons suivre lesétapes
suivantes pour utiliser la
service FirebaseRealtime
Databasedans notre projet
Android
Choisir Realtime Database>Saveandretreivedata
Outils Software
Ensuitecliquer sur« Connectto Firebase»
62
Votre navigateurva celancer,connectez vousau compte Googleque vousavezutilisé
lorsdu création du projet Firebase,puiscliquez sur autoriser.
Outils Software
63
RevenonsàAndroid Studio,et sélectionnez ChooseanexistingFirebaseonGoogleproject, choisirle
projet et cliquez sur Connectto Firebase.
Outils Software
64
Cliquezsur Addthe RealtimeDatabaseto your appet confirmez les changementsdansle
dialogue quiapparait.
Outils Software
65
Revenonsmaintenant à Firebaseconsole,cliquer sur « Paramètresdu projet».
Outils Software
66
Cliquersur « google.services.json» pour télécharger le fichier de configurationjson de Firebase.
Outils Software
67
Copierle fichier google.services.jsondansle dossier« app» de votre projetAndroid.
Outils Software
68
Leprojet est maintenant associéàFirebase Realtime Database. Vous
pouvez exécuter l’application sur votre téléphone pour vérifier qu’il n’y
apasdes problèmes.
69
• Ajoutons une variable dans la basedesdonnées pour stockerla
variable duporte.
• Laporte a2 états, soit ouverte, soit fermée donc on l’associeavec
une variable booléenne:
true  porte ouverte
false  porte fermée
Outils Software
Dansla console de Firebase,choisir Realtime Databaseet cliquer sur Create Database.
Outils Software
70
Choisir l’option « test mode » et cliquer sur Enable
Outils Software
71
Pour créer une variable porte dansla basedesdonnées,
cliquer sur « +», ensuite fournir le nom du variable (dans
notre casporte), attribuer une valeur booléene (true par
exemple) et valider.
Outils Software
72
Initialiser l’état de switch selon la valeur de la variable porte stockée dans Firebase. Justàla fin
de méthode Create dansle fichier MainActivity.java ajouter les lignes suivants:
Outils Software
73
Maintenant, lire l’événement activer et désactiver du
switch et l’enregistrer dansla basedesdonnées.Ajouter
ceslignes après le code de l’étape précédente:
Outils Software
74
• Exécutezvotre application. Remarquez que tout changement effectué sur le switch
semémorise immédiatement dansla basedesdonnées et vice-versa
• Ajoutons une autre variable nommée température ànotre basede donnée et
attribuer une variable numérique quelconque.
Outils Software
75
Ajouter deux « TextView » dans le fichier
activity_main.xml: la labelle Température et savaleur.
Glisser-déposer
76
Outils Software
• Notez l’id de la valeur de latempérature.
• Changerla taille du texte et le couleur selon votrechoix.
Outils Software
77
Instancierla variabletempérature aprèsla variablemSwitch
Outils Software
Relierla variabletemperature avecle TextViewdansle layout (Interfacegraphique).
78
Afficher la valeur de la température enregistrée dansFirebaseen temps réel
en ajoutant ceslignes àla fin de la méthode onCreate.
Outils Software
79
Maintenant, si vous changezla température
dansFirebase Realtime Database elle sera
changé immédiatement sur l’interface de
l’application!
Outils Software
80
Thank you!
81

Contenu connexe

Similaire à chapitres 3 technologies de communication de l'IoT partie II.pptx

Introduction au développement Android
Introduction au développement AndroidIntroduction au développement Android
Introduction au développement Android
Steve Tremblay
 
Presentation cgt juin2010
Presentation cgt juin2010Presentation cgt juin2010
Presentation cgt juin2010
Pascal Poty
 
Investissements d'avenir axe cloud computing
Investissements d'avenir axe cloud computingInvestissements d'avenir axe cloud computing
Investissements d'avenir axe cloud computing
capdigital
 
Solutions mobiles InterTek Ingénierie
Solutions mobiles InterTek IngénierieSolutions mobiles InterTek Ingénierie
Solutions mobiles InterTek Ingénierie
Philippe Jeandroz
 

Similaire à chapitres 3 technologies de communication de l'IoT partie II.pptx (20)

Webcast eth-mat-thw-final
Webcast eth-mat-thw-finalWebcast eth-mat-thw-final
Webcast eth-mat-thw-final
 
IBM Bluemix Paris meetup #16 20160914 - Introduction à Bluemix -v2
IBM Bluemix Paris meetup #16    20160914 - Introduction à Bluemix -v2IBM Bluemix Paris meetup #16    20160914 - Introduction à Bluemix -v2
IBM Bluemix Paris meetup #16 20160914 - Introduction à Bluemix -v2
 
Edge Datacenters : préparez-vous à un monde où tout devient intelligent
Edge Datacenters : préparez-vous à un monde où tout devient intelligentEdge Datacenters : préparez-vous à un monde où tout devient intelligent
Edge Datacenters : préparez-vous à un monde où tout devient intelligent
 
TelCar : Solution de lecture des informations de bord de véhicule
TelCar : Solution de lecture des informations de bord de véhiculeTelCar : Solution de lecture des informations de bord de véhicule
TelCar : Solution de lecture des informations de bord de véhicule
 
Introduction au développement Android
Introduction au développement AndroidIntroduction au développement Android
Introduction au développement Android
 
Développeurs, c’est vous le chef !!
Développeurs, c’est vous le chef !!Développeurs, c’est vous le chef !!
Développeurs, c’est vous le chef !!
 
Iot & cloud
Iot & cloudIot & cloud
Iot & cloud
 
meetup devops aix-marseille 27/10/2022
meetup devops aix-marseille 27/10/2022meetup devops aix-marseille 27/10/2022
meetup devops aix-marseille 27/10/2022
 
Presentation cgt juin2010
Presentation cgt juin2010Presentation cgt juin2010
Presentation cgt juin2010
 
IBM Bluemix : La plate-forme d’innovation numérique
IBM Bluemix : La plate-forme d’innovation numérique IBM Bluemix : La plate-forme d’innovation numérique
IBM Bluemix : La plate-forme d’innovation numérique
 
SPINALBIM Suite: transformation digitale de l'exploitation et la maintenance
SPINALBIM Suite: transformation digitale de l'exploitation et la maintenanceSPINALBIM Suite: transformation digitale de l'exploitation et la maintenance
SPINALBIM Suite: transformation digitale de l'exploitation et la maintenance
 
Formation mobile-cross-platform
Formation mobile-cross-platformFormation mobile-cross-platform
Formation mobile-cross-platform
 
[TNT19] Hands on: Objectif Top Architecte!
[TNT19] Hands on: Objectif Top Architecte![TNT19] Hands on: Objectif Top Architecte!
[TNT19] Hands on: Objectif Top Architecte!
 
Ppt 2 a jeanpierre-yle-cleach-hec-05022015_sent2hec
Ppt 2   a jeanpierre-yle-cleach-hec-05022015_sent2hecPpt 2   a jeanpierre-yle-cleach-hec-05022015_sent2hec
Ppt 2 a jeanpierre-yle-cleach-hec-05022015_sent2hec
 
Investissements d'avenir axe cloud computing
Investissements d'avenir axe cloud computingInvestissements d'avenir axe cloud computing
Investissements d'avenir axe cloud computing
 
Solutions mobiles InterTek Ingénierie
Solutions mobiles InterTek IngénierieSolutions mobiles InterTek Ingénierie
Solutions mobiles InterTek Ingénierie
 
Introduction_Android_-_Complet.pdf
Introduction_Android_-_Complet.pdfIntroduction_Android_-_Complet.pdf
Introduction_Android_-_Complet.pdf
 
Réseau de capteurs sans fil
Réseau de capteurs sans fil  Réseau de capteurs sans fil
Réseau de capteurs sans fil
 
Petit dej ASTEK Mobilité - Mobil'isez votre SI, pour réussir votre transforma...
Petit dej ASTEK Mobilité - Mobil'isez votre SI, pour réussir votre transforma...Petit dej ASTEK Mobilité - Mobil'isez votre SI, pour réussir votre transforma...
Petit dej ASTEK Mobilité - Mobil'isez votre SI, pour réussir votre transforma...
 
Captronic grenoble 01102014 version presentee
Captronic grenoble 01102014 version presenteeCaptronic grenoble 01102014 version presentee
Captronic grenoble 01102014 version presentee
 

Plus de merazgaammar2 (7)

presentation pour nouvrlle technologie.ppt
presentation pour nouvrlle technologie.pptpresentation pour nouvrlle technologie.ppt
presentation pour nouvrlle technologie.ppt
 
TP7_Master.pdf
TP7_Master.pdfTP7_Master.pdf
TP7_Master.pdf
 
TP7_Master.pdf
TP7_Master.pdfTP7_Master.pdf
TP7_Master.pdf
 
TP_Semaine2.pdf
TP_Semaine2.pdfTP_Semaine2.pdf
TP_Semaine2.pdf
 
cours.pdf
cours.pdfcours.pdf
cours.pdf
 
Deploiement_Lora_exo.pdf
Deploiement_Lora_exo.pdfDeploiement_Lora_exo.pdf
Deploiement_Lora_exo.pdf
 
cours-transmission-serie.pdf
cours-transmission-serie.pdfcours-transmission-serie.pdf
cours-transmission-serie.pdf
 

chapitres 3 technologies de communication de l'IoT partie II.pptx

  • 1. Agenda 2 • Partie 1: Lesapplications IoTenAfrique • Partie 2: Workshop • Partie 3 : Tutorial… ApplicationAndroidavecFirebase
  • 2. WorkshopInternet desobjets Plandu workshop • Objectif du workshop • Démarche technique • Première partie : Problématiques àrésoudre • Deuxièmepartie : Brainstorming • Troisièmepartie : Démonstration pratique 3
  • 3. • Lepremier but de cette formation pratique est de comprendre l’importance de l’IoT en tant que outil technologique moderne capable de résoudre desproblématiques complexes. • Ledeuxième objectif est de permettre aux participants d’entamer une démarche technique de dimensionnement et de choix technologique d’une architecture IOTen utilisant desoutils Open source • Finalement, afin de pouvoir maitriser l’aspect pratique, nous ferons ensemble une démonstration de développement d’une solution IOTayant pour objectif derésoudre une problématique d’actualité. Objectif duworkshop 4
  • 4. Afin de maitriser l’aspect pratique et comprendre le principe de l’IOT,il estimportant de découvrir les différents secteurs d’applications de cette technologie. Pour cefaire, nous allons évoquer des problématiques chroniques dansdessecteurs vitaux et les participants seront invités à s’inspirer desanciennesformations théoriques pour définir les éléments de la solution à proposer. Ensuite, nous allons échangerensemble au tour desarchitectures présentées Finalement nous ferons une application pratique d’une manière concrète. Démarchetechnique 5
  • 6. Lemonde évolue avecla naissancede nouveaux besoinsdans différents secteursvitaux, principalement l’industrie moteur de l’économie. Problématique1: Industrieconnectée 4.0 7
  • 7. Denosjoursle suivi de la productionet le retour d’informationen tempsréel est devenueune nécessité pour assurerla compétitivitédansle secteurindustriel.Ceciafin de réagir rapidementet afin de prendrelesbonnesdécisions. Pour cefaire l’internet desobjets s'affirmecomme la convergencedu monde virtuel, de la conceptionnumérique,de la gestionaveclesproduitset objetsdu monderéel. Problématique1: Industrieconnectée 4.0 Cahierdescharges Sujet 1: Laproblématique consiste àconcevoir une solution permettantauxindustrielsde suivreen tempsréel et à distance la consommation énergétique de leurs parc machines Sujet 2: Laproblématique consisteàdévelopperune solutionde supervisionà distanced’une lignede productionindustriel 8
  • 8. OutilsHardware : Industrieconnectée 4.0 Centrale de mesureénergétique Capteur detension Capteur decourant Carted’interface GatewayàBasede carte RaspberryPi GatewayàBasede carteArduino 9
  • 9. Lemonde évolue avecla naissancede nouveaux besoinsdans différents secteursvitaux, notamment l’agriculture Problématique2: Agriculture intelligente 10
  • 10. L’agricultureprésenteun secteurvital pour le pays.Actuellementl’intégrationdesnouvelles technologiesest devenu une nécessitépour assurerle développementdurable. Problématique2: Agriculture intelligente Cahierdescharges Sujet 1: Laproblématique consiste àconcevoir une solutionpermettant auxagriculteursde gérer leur systèmed’irrigationàdistance. Sujet 2: Laproblématique consiste àdévelopper une solutionde supervisionàdistanced’une station d’aquaculture. 11
  • 11. OutilsHardware: Agriculture intelligente Capteur oxygènedissous Electrovanne Pompeàeau Stationmétéo Capteur detempérature 12 Capteur humidité dusol Gateway
  • 12. Problématique Grâceauxnouvelles technologies, la télémédecine permet l'accès àdistance d'un patient àun médecin ou àune équipe médicale. Elle représente une autre manière de soigner,avecles mêmes exigencesde qualité et de sécurité Problématique3 : Télémédecine 13
  • 13. Latélémédecine regroupe les pratiques médicales permises ou facilitées par les télécommunications. C'est un exercice de la médecine par le biais destélécommunications et destechnologies qui permettent les prestations de santé àdistance et l'échangede l'information médicale s'y rapportant. Problématique3 : Télémédecine Cahierdescharges Sujet 1: Laproblématique consiste àconcevoir une solution permettant de dépister dessymptômes et dessignes évoquant de l’infection par covid-19 chezla populationet permettantde suivrequotidiennement l’évolutionclinique dessymptômesde l’infection chez les utilisateurs Sujet 2: Laproblématiqueconsisteàdévelopperune solution de supervision àdistance les paramètres vitaux et le tracé ECGdespatients hospitalisés. 14
  • 14. OutilsHardware & Software: Télémédecine Intelligenceartificielle Basede donnéesmassives Protection desdonnéespersonnelles CapteurECG Capteur température corporelle sanscontact PlateformeWEB/mobile 15
  • 15. Problématique Une ville intelligente est une ville utilisant les technologiesde l'information et de la communication pour améliorer la qualité desservicesurbains. Problématique4: Smart City 16
  • 16. Problématique4: Smart City Problématique Une ville intelligente est une ville utilisant les technologies de l'information et de la communication pour améliorer la qualité desservicesurbains. Cahierdescharges Sujet 1: Laproblématique consiste àconcevoir une solution permettantauxmunicipalitésde suivreen tempsréel le pourcentage de remplissagedespoubelles enterrés. Sujet 2: Laproblématique consiste àdévelopper une plateforme WEBet mobile permettantau citoyensde valoriserleursdéchetsménagerstriés. 17
  • 17. Outils: Smart City Capteurultrason ModuleGSM BatterieLithium LoRaNode LoRaGateway NoSqlDatabase ModuleGPS 18
  • 18. Lesattentes de l’exercicede Brainstorming 19 • Choix de la problématique àrésoudre • Choixde l’architecture de la solutionIoT – Exigencesfonctionnelles (sécurité, disponibilité, …) – Composants de la solution • Capteurs • Passerelles • Technologiesde connectivité (couverture, vie de batterie, bande passante, vie batterie, coût de connectivité, coût module, spectre) • Typede la plateforme de développement (middleware, cloud,…) • Application IoT(services métier àproposer,…)
  • 19. Outils Software Plateformenumérique Basede donnéesNoSql Logiciel dedéveloppement 20
  • 21. Outils Software Firebaseest un ensemble de servicesd'hébergement pour n'importe quel type d'application. Il propose d'héberger en NoSQLeten temps réel desbasesde données, du contenu, de l'authentification sociale, et desnotifications, ou encore desservices, tel que par exempleun serveur de communication tempsréel. 22 Pourquoi FirebasepourIoT? Lesprincipales enjeux de l’IoTsont: a)Fournir un contenuà faible latence (FirebaseRealtimeDatabase) b) Sécuriserla communication entre les appareilset le backend(FirebaseAuthentication).
  • 22. Outils Software Lesbasesde données SQL ont un schémaprédéfini alors que les basesde données NoSQLont un schéma dynamique pour les données non structurées. Lesbasesde données SQLsont évolutives verticalement, tandis que les basesde données NoSQLsont évolutives horizontalement. Lesbasesde données SQLsont misesàl’échelle en augmentant la puissance du matériel. Lesbasesde données NoSQLsont mises àl’échelle en augmentant le nombre de serveurs de basesde données dans le pool de ressources afin de réduire la charge. Celasignifie que les basesde données SQLreprésentent desdonnées sousla forme de tables composéesde n nombre de lignes de données, tandis que les basesde données NoSQLsont la collection de paires clé-valeur, de documents, de basesde données graphiques, etc. qui ne possèdent2p3asde définitions de schéma standard.
  • 23. Outils Software Firebases’occuped’une grande partie desservices que normalement les développeurs eux-mêmes devraient les créer, commepar exemple l’authentification, les basesdesdonnées, les notifications, l’hébergementdes serveursetc. Lesservicesofferts par Firebasesonthébergé dansle Cloud et elles sontscalablesavecpeu ou pasd’effort de la part du développeur.Cesservicesont descomposantsbackendqui sont entièrementgéréeset maintenuespar Google. Firebaseoffre desSDKclients qui interagissent aveccescomposants de façon directe sansbesoin de placer un middlewareentre l’applicationet les services 24
  • 24. Outils Software SDK(Software DevelopementKit) désigneun ensembled’outilsutiliséespar les développeurspour le développementd’un logiciel déstinéàune plateforme déterminée(Android,iOS,…). Un SDKpeut avoir une seuleou plusieurscibles commeun systèmed’exploitation, une applicationweb, un serveur web, jeu vidéo,etc. PourdévelopperuneapplicationAndroid,il faut le SDKclientAndroidde Firebase.Pour développerune applicationweb, il faut le SDKclient web de Firebase,etc. 25
  • 25. Outils Software LeSDKde Firebasequi permet une interaction directe entre un client et les services Firebase importe une nouvelle notion de développent qui diffère de la méthode traditionnelle où une partie backendet une partie frontend doit être développée, alors que dans lecasde Firebase on contourne la partie backend et donc la logique d’exécution est placé chezle client (frontend). Voir figure suivante. L’accèsadministrateur est fournie par l’espace « Firebase console». Comparaisonentre le développementclassiqueet le développementavec Firebase 26
  • 26. Outils Software LesservicesdeFirebase FirebaseRealtime Database etCloud Firestore: Cesont les deux basesdesdonnées offertes par Firebase, elles sedécrit commedesbasesde données tempsréel, hébergéesdans le Cloud etNoSQL) Lesclients de multi plateforme partagentla mêmeressourcedansla basedesdonnées. S’il aune modification, tout les clients reçoit automatiquement une mise àjour instantanée. Firebasestockentles donnéessousla formatJSONet elle utilise le type NoSQLpour sesbasesdesdonnées,cequi nousdébrasedu contrainte destables de la basedesdonnéesrelationnelle(SQLpar exemple),permettantainside créer et dimensionnerd’unefaçon pluslibre et facileune basedesdonnées. 27
  • 27. Outils Software FirebaseRealtimeDatabaseVSCloud Firestore Cloud Storage fournit un stockage des fichiers massivement scalable, il permet auxclients(un client peut être un appareil IoTaussi!)de publier et de téléchargerdes fichiers (images, texte,etc.) 28 CloudFunctions: Enutilisantle service CloudFunctions de Firebase,on peut déployer un code exécutant sur les infrastructures serveur de Googlequi répond automatiquement au événements arrivantsd’autresservice de Firebase.
  • 29. Elémentsdela solution: Industrieconnectée4.0 Communication viale protocole industriel Modbus 30 Technologiedeconnectivité: Wi-Fi, 4G
  • 30. Elémentsdela solution: Industrieconnectée4.0 Communication en temps réel entre la basedesdonnées etla plateforme 31
  • 31. Elémentsdela solution: Industrieconnectée4.0 Tableaude bord accessiblesur la plateforme 32
  • 32. Démonstration applicationSMART Irrigation Lasolution contientprincipalement un kit de commandeà distancedes vannesd’irrigation et des motopompes via une application mobile. Cetoutil permet à l’agriculteur d’épargner le déplacementsursite et il lui permet de définir destemps d’irrigations précis. Ladeuxième composante du projet c’est de faire de l’échantillonnage sur desdifférents niveaux de solspourinformer l’agriculteur sur lepourcentage d’humidité du sol. Ceciafin de savoir la quantité d’eau d’irrigation nécessaire. Elémentsdela solution: Agriculture 33 Technologie de connectivité : 2G,LoRa
  • 36. Elémentsdela solution: Télémédecine 37 Objectifs :  Dépister les symptômes et signesévoquant de l’infection par covid-19 chezla population,  Suivre quotidiennement l’évolution clinique dessymptômes de l’infection chezles utilisateurs,  Permettre au staff médical de détecter les patients suspectsporteurs du covid-19,  Permettre au staff médical d’indiquer la pratique du test de diagnostic du covid-19,  Permettre au staff médical de sélectionner les patients àrisque de développer desformes graves,  Permettre au staff médical d’indiquer l’hospitalisation despatients,  Permettre au staff médical de vérifier le respect du confinement despatients suspectpar la géolocalisation,  Permettre au ministère de la santé de générer desstatistiques de l’évolution de l’épidémie,  Sauvegarderet archiver tous les données et informations collectées desutilisateurs,  Plateforme WEBaccessiblepar plusieurs utilisateurs aveccontrôle d’accèssécurisé,  Séparerles informations àcaractère personnelles de celle àutilisation anonyme,  Dimensionner le serveur pour pouvoir gérer un nombre d’utilisateur simultané >10 millions
  • 37. Elémentsdela solution: Télémédecine Technologie de connectivité : Wi-Fi,4G 38
  • 40. Elémentsdela solution: Smart City Technologie de connectivité : LoRa,2G 41
  • 44. Outils Software ApplicationAndroid avec Firebase Il faut tout d’abordavoir un compte Googlepour utiliser les service de Firebase, il suffit juste de créer un nouveau comptegratuitement. Ensuite,visitezle site web de Firebase: https://firebase.google.com/ PourdévelopperuneapplicationsurAndroid, il nous faut un logiciel d’environnement de développement (IDE), nous allonsutiliser l’IDEofficielde Google«AndroidStudio » téléchargeable sur celien: https://developer.android.com/studio 45
  • 45. Cliquez sur Getstarted Outils Software Cliquez sur Createproject 46 Démarche de création d’une ApplicationAndroid avecFirebase
  • 46. Entrezun nomde votre projet Outils Software Acceptezlestermes de servicesde Firebase Vousêtesmaintenant surl’interface « Firebaseconsole» 47
  • 47. OuvrezAndroidStudioet cliquez sur Starta newAndroid StudioProject Outils Software 48
  • 48. Onnousdemandede choisirun Templatede notre projet, on va choisir« EmptyActivity » Outils Software 49
  • 49. Attribuer un nom à votre projet et laissertout les autre champsintacte et cliquez sur « Finish» Nomdu projet 50 Outils Software
  • 50. Votre projet est crée! L’interface doitêtre comme celle-ci: Outils Software 51
  • 51. Nousallons maintenant exécuter notre première application sur unSmartphone Android, mais avant il faut configurer son Smartphone en modedéveloppeur. Remarque:Onpeut aussi utiliserle Smartphone virtuel deAndroidStudio,maisil est préférable de tester sur un appareilréel. 52 Accédezaux paramètres de votre Smartphone, puisSystème>Aproposdetéléphone>Numérodebuild Outils Software
  • 52. • Appuyiezsuccessivementplusieursfois surle numérode build jusqu’à que le systèmevousdit que la mode développeurest activée. • Retournez au système>Optionspour lesdéveloppeurs,assurezvous que les Optionspour développeuret le débogageUSBsontactivés. Outils Software Connectezvotre Smartphoneà votre PCatravers un câble USB,siun dialogue estapparusurvotre téléphone,cliquer sur « Toujoursautoriser » puis «OK». 53
  • 53. Outils Software 54 Lenom de votre Smartphonedoit maintenant apparaitresurAndroidStudio. Cliquezsur« Run», l’icône vert justeau coté du nom.
  • 54. Outils Software • Voici votre première application helloworld! Supposonsqu’on veut contrôler uneporte à distancevia notre application, pour arriver àcet objectif nous allons ajouter un switch àl’interface. Sion active le switch,la porte concernées’ouvrepar contre si on le désactivela porte seferme. 55
  • 55. Pour ajouter un switch dansl’interface graphiquede notre application,cliquer sur le dossier resdans l’arborescencede projet àgauche,puis layoutet ensuiteactivity_main.xml Outils Software 56
  • 56. L'interfacede ci-dessusest apparait,on remarqueque c’estle même contenu que nousavonsvu sur notre applicationtout àl’heure. Outils Software 57
  • 57. Pour ajouter un switch cliquez sur Palette>Buttons>Switch Outils Software 58
  • 58. Simplement,glissezle switchàl’interface de l’application,le switchest maintenant ajouté àl’interface,Veuilleznoter l’id de notre switch. id 59 Outils Software
  • 59. Pour que notre application connait les événements venant de switch, il faut créer une instance de switch dans le fichier MainActivity.jav a. le fichierdoit semblerà l’imagesuivante 60 Outils Software
  • 60. Cliquez surTools>Firebase Outils Software 61 Maintenant,il faut associer notre projet Android au projet Firebasecrée précédemment. AndroidStudiofourni un outil qui facilite l’association de différentes services de Firebase. Nousallons suivre lesétapes suivantes pour utiliser la service FirebaseRealtime Databasedans notre projet Android
  • 61. Choisir Realtime Database>Saveandretreivedata Outils Software Ensuitecliquer sur« Connectto Firebase» 62
  • 62. Votre navigateurva celancer,connectez vousau compte Googleque vousavezutilisé lorsdu création du projet Firebase,puiscliquez sur autoriser. Outils Software 63
  • 63. RevenonsàAndroid Studio,et sélectionnez ChooseanexistingFirebaseonGoogleproject, choisirle projet et cliquez sur Connectto Firebase. Outils Software 64
  • 64. Cliquezsur Addthe RealtimeDatabaseto your appet confirmez les changementsdansle dialogue quiapparait. Outils Software 65
  • 65. Revenonsmaintenant à Firebaseconsole,cliquer sur « Paramètresdu projet». Outils Software 66
  • 66. Cliquersur « google.services.json» pour télécharger le fichier de configurationjson de Firebase. Outils Software 67
  • 67. Copierle fichier google.services.jsondansle dossier« app» de votre projetAndroid. Outils Software 68
  • 68. Leprojet est maintenant associéàFirebase Realtime Database. Vous pouvez exécuter l’application sur votre téléphone pour vérifier qu’il n’y apasdes problèmes. 69 • Ajoutons une variable dans la basedesdonnées pour stockerla variable duporte. • Laporte a2 états, soit ouverte, soit fermée donc on l’associeavec une variable booléenne: true  porte ouverte false  porte fermée Outils Software
  • 69. Dansla console de Firebase,choisir Realtime Databaseet cliquer sur Create Database. Outils Software 70
  • 70. Choisir l’option « test mode » et cliquer sur Enable Outils Software 71
  • 71. Pour créer une variable porte dansla basedesdonnées, cliquer sur « +», ensuite fournir le nom du variable (dans notre casporte), attribuer une valeur booléene (true par exemple) et valider. Outils Software 72
  • 72. Initialiser l’état de switch selon la valeur de la variable porte stockée dans Firebase. Justàla fin de méthode Create dansle fichier MainActivity.java ajouter les lignes suivants: Outils Software 73
  • 73. Maintenant, lire l’événement activer et désactiver du switch et l’enregistrer dansla basedesdonnées.Ajouter ceslignes après le code de l’étape précédente: Outils Software 74
  • 74. • Exécutezvotre application. Remarquez que tout changement effectué sur le switch semémorise immédiatement dansla basedesdonnées et vice-versa • Ajoutons une autre variable nommée température ànotre basede donnée et attribuer une variable numérique quelconque. Outils Software 75
  • 75. Ajouter deux « TextView » dans le fichier activity_main.xml: la labelle Température et savaleur. Glisser-déposer 76 Outils Software
  • 76. • Notez l’id de la valeur de latempérature. • Changerla taille du texte et le couleur selon votrechoix. Outils Software 77
  • 77. Instancierla variabletempérature aprèsla variablemSwitch Outils Software Relierla variabletemperature avecle TextViewdansle layout (Interfacegraphique). 78
  • 78. Afficher la valeur de la température enregistrée dansFirebaseen temps réel en ajoutant ceslignes àla fin de la méthode onCreate. Outils Software 79
  • 79. Maintenant, si vous changezla température dansFirebase Realtime Database elle sera changé immédiatement sur l’interface de l’application! Outils Software 80