Académique Documents
Professionnel Documents
Culture Documents
Imaginez un monde où tous les objets sont capables d’échanger des informations et
de communiquer entre eux. Des objets capables aussi de communiquer et d’interagir avec
leurs utilisateurs en utilisant Internet mais aussi d’autres réseaux de communication bien
moins connus mais tous efficaces. C’est le monde de l’Internet des Objets.
D’ici 2020, l’Institut Gartner prévoit plus 50 milliards d’objets connectés sur le marché.
Autant vous dire que nous sommes en train d’assister à une véritable révolution numérique
qui va radicalement changer nos styles de vie.
Pour illustrer, prenons un exemple dans le domaine de l’habitat intelligent, aussi connu sous
le nom de Smart Home. Imaginez que votre réfrigérateur devienne intelligent. Un
réfrigérateur capable de vous dire en temps réel le type de denrées qu’il y a à l’intérieure et
capable de passer commande pour vous quand vous avez besoin de vous réapprovisionner.
Le réfrigérateur est un exemple. Mais le nombre d’objets qu’il est aujourd’hui possible de
connecter est illimité. Le potentiel qu’offre l’Internet des Objets pour chacun d’entre nous,
mais aussi pour les entreprises et les industries est immense.
Pour l’heure, dans le domaine du Grand Public, l’IoT relève encore beaucoup de la
gadgétisation et n’apporte qu’une faible valeur à ses utilisateurs. Là où les champs
d’application vont réellement être intéressants concernent la gestion de l’énergie dans les
bâtiments, dans le domaine de l’industrie, dans l’agriculture, la sécurité, le transport ou
encore pour la santé.
Cet
"objet" véhiculé par le concept de l'internet des objets désigne tout objet pouvant contenir un
dispositif informatique embarqué et connecté. Ainsi, un "objet" dans l'internet des objets peut
aussi bien être un conteneur maritime doté d'une étiquette RFID qu'une montre grand public
équipée d'une puce WiFi qui envoie des données sur la condition physique ou de courts
messages à un serveur quelque part sur internet. L’IoT repose avant tout sur les objets
connectés. Un objet connecté a la capacité de capter une donnée et de l’envoyer, via le
réseau Internet ou d’autres technologies, pour que celle-ci soit analysée et visualisée sur des
tableaux de bord dédiés. Les objets connectés interagissent avec leur environnement par le
biais de capteurs : température, vitesse, humidité, vibration… Dans l’Internet des Objets, un
objet peut aussi bien être un véhicule, qu’une machine industriel ou encore une place de
parking.
Il existe une panoplie de domaines d'applications pour les secteurs de l'internet des objets, du
machine to machine et des objets connectés que ce soit dans le monde industriel ou dans la vie
de tous les jours.
1. Les applications médicales : Dans le domaine santé, les objets connectés peuvent servir à
plusieurs choses. On peut par exemple les utiliser comme dispositif de surveillance ou de
monitoring sous forme de bracelet connecté ou de montre connectée qui permettront de suivre
à tout moment nos activités physiques en nous informant de signes irrégulières.
Si vous êtes une personne qui prend des médicaments ces objets connectés peuvent également
vous informer quand il est temps de prendre vos médicaments En outre, cela pourrait
éventuellement informer votre médecin d'une situation d'urgence lui permettant ainsi de vous
localiser grâce à votre appareil.
Je pense que pour les personnes âgées l'automatisation des procédures de prises en charge
médicales pourraient être précieuse. Supposons par exemple qu'une personne âgée soit
tombée hasardeusement et qu'elle soit incapable de se lever. Elle peut avoir de sérieux
problèmes si elle vit seule sans assistance.
Maintenant, imaginez qu'elle ait porté un dispositif qui pourrait alerter son entourage ou ses
proches quand la personne reste inactive après X temps pendant la journée. Le dispositif
connecté pourra avertir automatiquement le soignant ou médecin désigné par la suite. Ainsi,
les applications des objets connectés dans le monde médical sont infinies.
Si vous n'êtes pas électronicien et que vous souhaitez apprendre à concevoir un objet
connecté, vous aurez besoin d'avoir un minimum de connaissances sur systèmes embarqués et
l'électronique analogique/numérique.
Des bases telles sur que les capteurs, les microcontrôleurs, les protocoles de réseaux de
capteurs sans fil et M2M, les technologies sans fil comme le Wi-Fi, le Bluetooth, le
Zigbee etc.. seront nécessaires.
Une fois ces différents concepts acquis, vous pouvez commencer à vous intéresser aux cartes
électroniques comme Arduino, Raspberry Pi, Beaglebone etc..
En effet ces cartes électroniques ont l'avantage d'être très abordables niveau prix,aussi leur
programmation reste aisée.
Si vous n'êtes pas familier avec la programmation informatique,je vous conseille de
commencer avec les langages C/C++ ou python qui sont les must pour les langages évolués
dans le monde de l'électronique embarquée.
Une fois que vous maitrisez tout ce qui est programmation hardware via l'apprentissage avec
les cartes Arduino et Raspberry Pi, vous allez maintenant attaquer la programmation Web.
La programmation Web vous permettra par exemple de créer des applications Web pour
contrôler et superviser vos objets connectés à distance à partir de votre ordinateur, téléphone
ou tablette tactile.
Tout ce dont vous aurez besoin c'est d'avoir un navigateur internet comme Firefox ou google
Chrome.
Dans le monde de la programmation Web, vous pouvez utiliser des langages comme PHP,
Java ou Python pour concevoir des interfaces graphiques dynamiques. Des frameworks
web comme Django pour python ou Symphony pour PHP vous faciliteront la tâche lors de
vos développements. Des notions sur les concepts d'architechtures clients/serveurs vous
seront aussi d'une grande utilité. Ils vous permettront par exemple de récupérer les données de
vos différents capteurs afin de les stocker dans des bases de données, ceci via des dispositfs
qui peuvent être distants.
Vous pourrez commencer développer avec de simples projets comme par exemple récupérer
la valeur de la température ambiante d'une salle et l'afficher de manière dynamique sur
un navigateur internet. Pour cela, vous aurez besoin des langages Webs comme le HTML,
le Javascript, le Jquery et le CSS.
Enfin des connaissances sur le Cloud computing ainsi que la programmation mobile
android vous permettront de déployer des applications mobiles performantes.
Vous êtes designer, électronicien, informaticien ou juste un amateur, si vous voulez vous
initier au domaine de l’IoT,vous pouvez commencer avec les technologies open source.
Comme dispositif matériel open source on a l’Arduino ou le Raspberry Pi qui sont de bons
supports de prototypages. Il existe même des systèmes d’exploitation qui fonctionnement sur
ces cartes électroniques. C’est le cas de Windows 10 IoT qui peut être installé sur le
Raspberry Pi.
Arduino peut être un très bon outil pour s'initier à l'IoT,c 'est une carte très abordable niveau
prix et peux être connectée à des capteurs (température, pression, mouvement etc..) ou avec
des modules d'extension pour lui donner des fonction supplémentaire (communication
Bluetooth, infrarouge, GSM etc..). Il existe plusieurs kits qui vous permettent de débuter avec
Arduino sans avoir à souder des composants électroniques. En effet ces kits comportent des
breadboards qui permettent d'implanter manuellement un composant sur carte sans le souder.
C'est très pratique si on ne connait pas beaucoup le monde de l'électronique.
(Breadboard) Une platine d'expérimentation est un dispositif qui permet de réaliser le prototype d'un circuit
électronique et de le tester. L'avantage de ce système est d'être totalement réutilisable, car il ne nécessite
pas de soudure. .
Pour les kits comprenant une carte électronique Arduino Uno, pour doter de la carte d'une
connexion Wifi, vous aurez besoin d'un module supplémentaire ou Shield Wifi comme le
ESP8266. Il existe cependant des cartes Arduino avec WiFi (Yun) ou Bluetooth, mais leur
prix est beaucoup plus élevé que l'Arduino UNO. Les cartes Arduino sont dotées de
microcontrôleurs qui répondent parfaitement aux besoins pour des calculs pas très complexes.
En effet, si on veut implémenter des notions plus avancées tel que le cryptage de données ou
l'implémentation d'un serveur web, le microcontrôleur 8 bits de l'Arduino a ses limites. Il y'a
les cartes Arduino avec des puces plus puissantes comme le zéro (ARM) ou 101 (Intel Curie),
mais encore une fois ils sont plus chers.
Si vous allez côté Raspberry Pi, la CPU est plus puissant, mais les cartes Raspberry pi 1 et
Raspberry pi 2 n'ont pas de WiFi. Le Raspberry Pi 3 quant à elle possède le wifi et est simple
d'utilisation. Elle s'utilise comme un PC traditionnel. Grâce à ses connecteurs GPIO vous
pouvez facilement concevoir vos applications IoT.
Vous devez aussi vous initier à la programmation C/C++/Java afin de pouvoir programmer les
dispositifs électroniques. Pour la partie applicative vous devez vous familiariser avec le
HTML, le CSS, la programmation Android ou l’Objective C pour la conception d’application
pour iPhone.
CONCLUSION
L'internet of things aura un impact énorme sur notre vie sociale ce qui va révolutionner nos
habitudes. En effet, une grande partie de notre travail sera automatisé et nous aurons recours
de plus en plus aux machines dans nos activités quotidiennes. L'intégration des systèmes «
IoT » dans nos voitures, machines à laver, réfrigérateurs etc…va nous aider à automatiser et à
anticiper nos tâches, ce qui nous permettra de gagner en productivité et en efficacité.
CHAPITRE II : Généralités sur les systèmes
embarqués
Les systèmes embarqués sont désormais utilisés dans des applications diverses tels que
le transport (avionique, espace, automobile, ferroviaire), dans les appareils électriques et
électroniques (appareils photo, jouets, postes de télévision, électroménager, systèmes audio,
téléphones portables), dans la distribution d'énergie, dans l'automatisation, …, etc.
1) Caractéristiques spécifiques
Les systèmes embarqués fonctionnent généralement en Temps Réel (TR) : les opérations de
calcul sont alors faites en réponse à un événement extérieur (interruption matérielle). La
validité et la pertinence d'un résultat dépend du moment où il est délivré. Une échéance
manquée induit une erreur de fonctionnement qui peut entraîner soit une panne du système
(plantage).
Dans les systèmes embarqués autonomes, la consommation d'énergie est un point critique
pour le coût. En effet, une consommation excessive augmente le prix de revient du système
embarqué, car il faut alors des batteries de forte capacité.
Les systèmes embarqués requièrent souvent un faible encombrement (faible poids). Leur
technologie fait alors appel à une électronique et à des applications portables où l'on doit
minimiser aussi bien l'encombrement que la consommation électrique. Par conséquent, la
réalisation du packaging afin de faire cohabiter sur une faible surface de l'électronique
analogique, de l'électronique numérique, des composantes RF (Radiofréquence) sans
interférences est une tâche difficile.
2) Définition :
Quelle que soit la nature et la complexité du système, on décompose un système embarqué en
:
Le système contrôlé
Le système de contrôle
Un système électronique embarqué est un élément constitutif d'un système plus complexe
pour lequel il rend des services bien précis (contrôle, surveillance, communication). Il est
constitué de parties matérielles et logicielles qui sont conçues spécifiquement pour réaliser
une fonction dédiée.
Un objet technique, intégrant de l’électronique, fait souvent apparaitre des fonctions ayant
pour rôle le traitement d’informations : opération arithmétiques (addition, multiplication…)
ou logiques (ET, OU…) entre plusieurs signaux d’entrée permettant de générer des signaux
de sortie.
ORGANISATION FONCTIONNELLE D’UN SYSTEME A MICROCONTROLEUR
Ces fonctions peuvent être réalisées par des circuits intégrés analogiques ou logiques.
Mais, lorsque l’objet technique devient complexe, et qu’il est alors nécessaire de réaliser un
ensemble important de traitement d’informations, il devient plus simple de faire appel à une
structure à base de microcontrôleur.
Un microprocesseur (C.P.U.)
De la mémoire de données (RAM et EEPROM)
De la mémoire programme (ROM, OTPROM, UVPROM ou EEPROM)
Des interfaces parallèles pour la connexion des entrées/ sorties.
Des interfaces séries (synchrone ou asynchrone) pour le dialogue avec d’autres
unités.
Des timers pour générer ou mesurer des signaux avec une grande précision
temporelle.
Des convertisseurs analogiques/ numérique pour le traitement de signaux
analogiques.
Avantage :
Encombrement réduit
Circuit imprimé ou peu complexe
Faible consommation
Cout réduit
Inconvénients :
Système de développement onéreux
Programmation nécessitant un matériel adapté.
La vitesse de transmission : elle est définie en bit par seconde ou bauds. Elle peut
prendre des valeurs allant de 110 à 115 200 bds.
Niveau de tension : Un ‘’0’’ logique est matérialisé par une tension comprise entre
3et 25V, un ‘’1’’ par une tension comprise entre -25 et -3 V. Des circuits spécialisés
comme le MAX 232 réalise la conversion à partir de niveau TTL.
Communication RS232 entre le port série du PC et microcontrôleur 16F877
L’échange des données entre PC et microcontrôleur via le port USB est aussi possible.
Le schéma ci-dessous est le schéma bloc de cette communication.
La carte rouge est le module FTDI comportant le circuit intégré FTDI en noir. Le
microcontrôleur Atmega328P peut communiquer avec le PC via le port USB
1.7 Le TIMER
Le Timer permettant de réaliser les fonctions suivantes :
Génération d’un signal périodique modulé ou non en largeur d’impulsion,
Génération d’une impulsion calibrée
Temporisation
Comptage d’évènements.
Plusieurs registres associés au Timer permettent de configurer les différents modes décrits
précédemment.
2-MODE DE FONCTIONNEMENT
Le microprocesseur exécute séquentiellement les instructions codées en binaire et
présentent dans la mémoire programme. L’initiation de cette séquence peut se faire de
différentes manières selon le mode de fonctionnement.
Celles-ci sont vues du microcontrôleur comme des demandes d’interruption. On note deux
types d’interruption :
Dans tous les cas, le programme principal est interrompu après la fin de l’instruction
en cours.
Le processeur doit sauvegarder le contenu du PC (Program Counter) dans la pile :
Le processeur exécute une séquence privilégiée (sous-programme), reflet du type de
traitement d’interruption
Recharge le contenu de la pile dans le PC pour que le programme principal puisse se
poursuivre à l’endroit où il s’était arrêté.
NB : La prise en compte d’une interruption ne se fait jamais pendant l’exécution d’une
instruction.
Lorsque le signal du RESET est activé, tous les registres sont initialisés et le compteur
programme (Program Counter) se place à une adresse spécifique appelée ‘’Vecteur de
RESET’’.