Projet LoRa

Bonjour à tous ! Nous sommes deux étudiants en deuxième année de PeiP à Polytech Angers, Marius LESAULNIER et Maël COCHET. Notre projet a pour but d’utiliser la technologie LoRa (Long Range) qui est une technologie qui permet d’envoyer des données à grande distance afin de détecter une intrusion dans un bâtiment, par exemple un garage.

Contexte :

lora vs sigfox

L’internet des objets (IoT) est un marché en plein essor et plusieurs rapports d’experts annoncent que dans les prochaines années, il y aura plusieurs dizaines de milliards d’objets connectés dans le monde.
Il existe différents réseaux permettant de rendre les objets communicants. Ce sont des réseaux innovants car ils ne sont pas basés sur les technologies cellulaires. Ils sont dédiés à l’IoT (Internet of Things), ce sont les réseaux LPWA : Low Power Wide Area (réseau bas débit longue portée).
Il existe aujourd’hui deux principaux concurrents sur ce marché : Sigfox et LoRa. Sigfox est un réseau privé. LoRa quant à lui est un réseau ouvert et public. Les entreprises qui le souhaitent peuvent donc créer leur propre réseau et l’exploiter.

Le matériel et logiciels utilisés :

Nous avons utilisé une carte arduino MKR 1300 WAN qui est équipée d’une puce LoRa, ce qui nous sera utile pour envoyer les données d’un capteur vers le réseau LoRaWAN “The Things Network”.

Carte arduino et son antenne

Carte arduino et son antenne

Pour envoyer les données de la carte au réseau LoRa, celle-ci doit passer les données par un gateway, c’est là qu’intervient le gateway Kerlink iFemtoCell. Ce gateway sert de passerelle pour permettre une communication bidirectionnelle pour un réseau Lora privé.

Gateway Kerlink iFemtoCell

Gateway Kerlink iFemtoCell

Les capteurs utilisés pour relever les différents états d’un évènement sont simplement des capteurs de contact / magnétiques qui envoient des données binaires (ouvert / fermé) correspondant à la situation.

Le capteur magnétique que nous avons utilisé

Le capteur magnétique que nous avons utilisé

Nous avons aussi utilisé l’application Arduino afin de programmer notre carte et lui indiquer les données à envoyer sur le réseau. Ensuite nous avons fait le choix de travailler sur le site web The Things Network (https://www.thethingsnetwork.org/) qui est un réseau Lora WAN communautaire et open source pour l’Internet des Objets (IoT en anglais). Actuellement le réseau se compose de plus de 40000 contributeurs regroupés en plus de 400 communautés dans 90 pays ayant déployé plus de 4000 passerelles. Ce site est la référence actuelle quand on veut créer un réseau Lora WAN, et exploiter les données de celui-ci. Notre choix s’est donc naturellement tourné vers ce site.
Afin de transmettre les différentes informations envoyées sur le réseau et les transmettre ensuite à différentes applications (mail, message, etc), nous avons utilisé le site IFTT (https://ifttt.com/), et les webhooks (aussi appelé lien de rappel HTTP qui est en programmation Web une méthode permettant de modifier le comportement d’une page Web ou d’une application (whats-webhook/).

Après ces quelques explications, passons à la réalisation du projet !

Déroulement du projet :

Tout d’abord, nous devons configurer le gateway et le connecter au réseau. Pour cela, nous avons recherché et lu beaucoup de documentations sur ce gateway mais sans pour autant arriver à ce que cela fonctionne. On a donc décidé de contacter le support technique du magasin qui nous avait vendu le gateway et il nous a été d’une grande aide. Grace à la documentation plus spécifique que le technicien nous a envoyée et de ses conseils, nous avons pu configurer le gateway et le mettre à jour comme on vous le montre dans la vidéo tutorielle juste en dessous :

Configuration du gateway et mise à jour

Vidéo de la configuration du gateway et mise à jour

Une fois le gateway connecté et mis à jour, nous avons pu paramétrer la carte Arduino MKR 1300 WAN pour transmettre des données sur TTN (The Things Network). Pour cela, nous nous sommes aidés de tutoriels et de documentations (tutoriel de connexion de la carte arduino sur TTN). Voici ci-dessous notre vidéo tutorielle pour connecter sa carte sur TTN et envoyer un message sur TTN.

Configuration Carte Arduino MKR  WAN 1300

Vidéo de la configuration de la Carte Arduino MKR WAN 1300

Après avoir réussi à envoyer des données sur TTN, il nous a fallu modifier le script Arduino pour pouvoir récupérer les données du capteur. Pour ne pas envoyer des données tout le temps sur TTN car cela est limité (le but n’étant pas d’envoyer un flux de données constant), nous avons choisi de n’envoyer des données que lorsque dans notre cas : l’état du capteur magnétique passe de 1 (porte fermée donc contact) à 0 (porte ouverte). L’envoi de données est donc unique (un par ouverture de porte).
Maintenant que les données sont envoyées avec succès sur TTN, nous devons les récupérer pour les transmettre à nos appareils. C’est cette partie du projet qui nous a demandée le plus de temps. En effet, n’étant pas habitués à utiliser TTN, nous avons eu beaucoup de mal à trouver la bonne intégration à utiliser pour pouvoir transférer nos données à notre téléphone. De plus, tous les tutoriels que nous trouvions sur internet n’étaient plus valables car juste au moment de notre projet, TTN passait de sa version V2 à V3 et donc il n’existait pas de nouveau tutoriel ou document expliquant comment fonctionnait la version V3. Mais nous avons eu la chance que la communauté TTN soit très active et ils ont donc pu nous guider pour résoudre ce problème en nous conseillant d’utiliser IFTTT. Nous nous sommes donc penchés sur cette méthode et avons réussi à transmettre nos données. Voici ci-dessous la vidéo tutorielle de cette configuration.

Configuration de IFTTT sur TTN

Vidéo de la configuration de IFTTT sur TTN

Application concrète de notre projet :

Pour finir, une fois toute les étapes réalisées, (envoi de l’information du capteur à TTN via un gateway puis envoi de cette information sur notre téléphone via IFTTT) nous avons pu tester notre système. Pour cela, nous avons fixé un aimant sur une porte et un capteur magnétique sur le mur pour pouvoir détecter l’ouverture de cette porte. Voici ci-dessous la vidéo qui illustre notre expérimentation :

Mise en situation du projet avec l'ouverture d'une porte

Mise en situation du projet avec l’ouverture d’une porte

Comme vous avez pu le voir, je reçois bien une notification à l’ouverture de la porte. L’avantage de IFTTT est que l’on peut choisir sous quelle forme on veut envoyer la notification car on peut aussi très bien envoyer un mail ou même imaginer un journal enregistrant les ouvertures de la porte sur google sheet (avec à chaque ouverture la date et l’heure).

Pour terminer cette présentation, on vous propose un Quizz sur la technologie LoRa qui vous permettra d’en savoir plus sur cette innovation.

QUIZZ_LORA

Conclusion :

Ce projet nous a permis de travailler en autonomie, mais également de chercher les informations nécessaires à l’avancement du projet par nous-mêmes, notamment grâce à Internet et divers forums.
On a également pu comprendre la notion de Internet of Things. Avec l’essor des objets connectés cette technologie et ces applications ont de grande chance de se développer de plus en plus dans les années à venir.
Ce projet a été l’occasion pour nous d’utiliser différents outils liés à la technologie LoRa et IoT, tels que The Things Network, My devices Cayenne, Arduino, IFTTT, etc…
Nous tenons à remercier Mr Bouljroufi Hassan pour sa disponibilité et sa bienveillance tout au long de ce projet.

Merci pour l’intérêt porté à notre projet
Maël COCHET
Marius LESAULNIER

Soufflerie aérodynamique à flux laminaire

Bonjour à tous!

En cette fin de cycle préparatoire de Polytech Angers, nous avons pu réaliser un projet de conception. Nous nous sommes imposé comme objectif de réaliser un projet qui nécessiterait la mise en pratique de compétences et connaissances acquises durant ce cycle préparatoire.Quant au choix de notre sujet, nous avons décidé d’approfondir un phénomène découvert lors d’une séance de travaux pratique de mécanique appliquée. En effet, ce TP était consacré à l’étude de l’écoulement de l’air. Concept que nous avions déjà abordé en première année, en mécanique des fluides. L’un des objectifs, ce jour-là, fut de mesurer la portance et la traînée aérodynamiques d’une aile pour différents angles d’attaques d’un profil d’aile.

avion plat
Nous avons pu conclure qu’après un certain angle d’incidence entre l’aile et le flux d’air généré par le tunnel, l’aile perd subitement la plupart de sa portance aérodynamique ce qui s’apparente à sa capacité à “voler”. Cela correspond dans l’aviation au phénomène de décrochage, qui est la principale cause d’accident mortel en aviation commerciale.avion décollage
Ainsi, nous avons choisi d’étudier ce phénomène et de l’expliquer de manière simple et visuelle en construisant notre propre soufflerie aérodynamique à flux laminaire.

Objectifs :

Afin d’expliquer simplement comment une aile subit un décrochage nous avons donc construit une soufflerie, avec l’ajout de vapeur épaisse pour visualiser l’action de l’air sur l’aile. En effet lors du décrochage, on peut visuellement noter des turbulences dans l’air.

Observez sur le dessin ci-dessous les flux d’air sur toute la surface de l’aile.

aile plat

À mesure que l’angle d’attaque augmente, le flux d’air supérieur commence à se séparer de la queue de l’aile. Cela crée des turbulences dans son sillage.

aile décollage

Enfin, l’avion décroche lorsque l’angle d’attaque critique, spécifique à la surface portante, est dépassé. Après quoi, le flux d’air supérieur se sépare soudainement de l’aile, ce qui réduit dangereusement la portance. L’avion est donc en situation de décrochage.

aile décrochage

Expérimentations :

Une de nos première réalisation fut de créer une ébauche en 3D de notre projet afin de pouvoir étudier les problèmes auxquels nous allions être confrontés. Pour cela, nous avons utilisé le logiciel Sketchup Web qui a l’avantage d’être sur un serveur en ligne et donc d’être accessible sur n’importe quel ordinateur, sans avoir à télécharger de logiciel.

projet 3D

  • Un des éléments principaux de notre soufflerie , l’aile(4), fut imprimés en 3D afin d’assurer une pièce la plus lisse possible. Le forme de l’aile est un véritable profilé, car il correspond au profil NACA 4418 utilisé sur de véritables aéronefs.
  • Pour notre expérience, nous avions besoin d’amener de la vapeur dans notre tunnel, nous avons donc placé un ventilateur(5) à l’envers, à sa sortie. Ce qui a pour effet d’aspirer l’air, avec peu de perturbations.
  • Toutefois, cet air est très turbulent et donc rend la visualisation difficile, nous avons donc placé une structure en nid d’abeilles(1), imprimée en 3D, afin de rectifier le flot d’air et ainsi avoir un flux plus ou moins laminaire.
  • Afin de pouvoir observer les flux de vapeur plus facilement nous avons placé une rangée de LEDs(2) sur le dessus du tunnel.
  • Pour pouvoir mesurer la vitesse du vent nous avons mis en place une sonde de Pitot(3), nous l’avons placé sur le bas du tunnel, là où elle génère le moins de turbulence.

photo légende

Enfin, le pilotage de l’ensemble fut réalisé grâce à la carte programmable Arduino Uno. Le pilotage du ventilateur, des lumières et du servomoteur se fait à l’aide de potentiomètre et de bouton-poussoir.
La mesure de la vitesse du vent dans le tunnel est lisible depuis l’environnement de développement d’Arduino.

breadboard

Aperçu du rendu final :

Conclusion :

L’expérience fut donc enrichissante et stimulante, que ce soit en terme de travail d’équipe ou de résolution de problèmes. De plus, ce fut l’occasion d’en apprendre davantage sur des sujets qui nous passionnent, et d’expérimenter dans ces domaines. Nous avons pu travailler avec de nombreux professeurs et techniciens qui nous ont partagé leurs connaissances et expériences, ce que nous avons particulièrement apprécié et nous les en remercions.

Macadré Clément
Guerineau Maxence

Projet Peip2 : Dépollution, un serious game basé sur Unity3D

Logo du jeu - Dépollution

Logo du jeu – Dépollution

    Bonjour chers lecteurs et lectrices,

Nous sommes trois étudiants du second cycle préparatoire de Polytech Angers, Alexandre, Arthur et Veton. Durant notre quatrième semestre, nous devions travailler sur un projet de conception pour un total de 80h. Nous avions choisi celui qui portait sur la mise en sécurité d’un site industriel pour l’intérêt qu’il offrait à la fois sur les filières BEMS et SAGI par le biais des contrôles de sécurité sur un site industriel et sur l’utilisation d’un moteur graphique. Dépollution est un serious game basé sur Unity 3D.

Photo de groupe De gauche à droite : Veton G., Arthur C. et Alexandre B.

Photo de groupe
De gauche à droite : Veton Gashi, Arthur Cochennec et Alexandre Bataille

  • Notre objectif

    Le but de ce projet est d’apprendre à reconnaître les différents polluants et dangers que nous pourrions trouver sur un site industriel désaffecté et de pouvoir évaluer leur dangerosité. Le joueur devra utiliser la solution adéquate pour décontaminer chaque composant sensible du site suivant les mesures qui lui seront annoncés.

    Le jeu se veut à la fois sérieux et ludique, principe du serious game en anglais. Vous jouerez le rôle de l’ancien directeur dont son but consiste à nettoyer toute la zone dans un temps imparti.

    Avec cette article nous voulons vous présenter comment nous en sommes arrivé là. D’une part, nous avons découpé le travail en trois parties: la conception du terrain, le codage et la collecte de données. Pour le dernier, nous n’en parlerons que brièvement. Il ne s’agit que de recherches approfondies sur les différents produits et matériaux toxiques que l’on peut retrouver dans une centrale.

  • Le level design

    Petite aparté, le level design consiste en la création des niveaux et l’environnement présent(s) dans un jeux vidéos ainsi que ses éléments décoratifs.

    Dans notre cas, nous avons décidé de démarrer sur une île pour sa simplicité aux niveaux des bordures (la carte étant entourée d’eau) et qui est plutôt grande afin de créer différentes zones.

    Capture d'écran de notre usine sur Unity 3D

    Capture d’écran de notre usine sur Unity 3D


    L’usine présente un complexe industriel similaire aux centrales à charbon déjà existantes. Nous avons choisi une usine à charbon plutôt qu’une centrale nucléaire par exemple, parce que celle-ci présente davantage d’éléments polluants de risques différents et plus ou moins dangereux pour l’homme et l’environnement.

    Capture d'écran de la carrière sur ledit logiciel

    Capture d’écran de la carrière sur ledit logiciel


    Nous souhaitions rajouter une carrière afin d’ajouter un autre univers lié à l’exploitation des ressources naturelles, ici celle du charbon.

    Capture d'écran du lac (Unity 3D)

    Capture d’écran du lac (Unity 3D)


    Enfin, nous avons créé un lac pour le refroidissement de la centrale, lui-même lié à la carrière via l’écoulement des eaux.

  • Le game design

    Le game design quant à lui décrit tout ce qui se rapporte aux règles du jeu, à l’élaboration des mécaniques de gameplay, à la physique des éléments et bien plus.

    Celui-ci se résume au codage que nous avons fait avec le langage C#. Le codage est sans aucun doute la partie la plus fastidieuse et la plus complexe du projet.

    D’une part, nous avions choisi de commencer par l’élaboration d’un cycle jour/nuit ainsi qu’un chronomètre. Très vite, nous avons remplacé le second par une barre de vie qui diminue au fil du temps et qui décélère plus le joueur arrive à dépolluer correctement. Nous avons ensuite ajouté une fenêtre de fin pour indiquer que le joueur a réussi sa mission et a contrario, un game over. Puis nous avons fini sur les éléments toxiques, avec des interactions pouvant ajouter une couleur en fonction du bon ou du mauvais choix qui a été émis.

    Voici une petite présentation du jeu en vidéo :

  • Les problèmes rencontrés

    Nous avions rencontré quelques problèmes au cours de nos sessions de projet. Avant toute chose, nous devions nous approprier le logiciel Unity3D à l’aide du cours de M. Richard et le projet initial mis à disposition par M. Capelle, nos deux professeurs référents. Malheureusement, nous n’avons pas reçu la partie xml du fichier sur laquelle nous devions nous reposer afin de générer un texte automatique.
    À cela s’ajoute la corruption de données dû aux mises à jour. Il était donc important de vérifier que nous avions la bonne version de Unity, celle avec laquelle nous avions commencé la première fois. D’autre part, le jeu est assez volumineux et pas bien optimisé ce qui rajoute de la latence lorsque nous voulons ajouter de la flore sur la carte, comme des arbres par exemple ou bien de l’eau en mouvement. Ainsi, nous avons dû nous dispenser de ces idées pour la conception du terrain.

  • Ce que nous retenons de ce projet

    Le projet était en somme très attrayant, nous avons pu découvrir les différentes étapes lors de la conception d’un jeu vidéo, mais aussi comprendre le fonctionnement d’un moteur graphique. Également, ce projet nous a permis d’approfondir nos connaissances au niveau de la programmation avec des exemples concrets comme la création d’un game over.

    La partie sur l’élaboration du terrain demandait assez de minutie et de patience mais le rendu final était au delà de ce que nous nous imaginions. L’environnement est soigné, détaillé et les textures sont de plutôt bonne qualité.

    D’un point de vue global, ce projet nous a permis de progresser sur notre manière d’appréhender un travail de groupe, sur la diffusion des connaissances et sur notre organisation.