{"id":7969,"date":"2022-12-16T22:23:35","date_gmt":"2022-12-16T21:23:35","guid":{"rendered":"https:\/\/telefab.fr\/?p=7969"},"modified":"2026-04-30T17:33:30","modified_gmt":"2026-04-30T15:33:30","slug":"zanimo-solution-technique","status":"publish","type":"post","link":"https:\/\/hub.imt-atlantique.fr\/fablab\/zanimo-solution-technique\/","title":{"rendered":"Zanimo &#8211; Solution Technique"},"content":{"rendered":"<p><b>Equipe\u00a0<\/b><\/p>\n<p><span style=\"font-weight: 400;\">Divya RAMDOO<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Le Kim NGUYEN<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Moussa OYEWOLE<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Maxime RICORDEAU<\/span><\/p>\n<p><strong>I. Contexte<\/strong><\/p>\n<p><span style=\"font-weight: 400;\">Dans le cadre de la th\u00e9matique d\u2019approfondissement CoOC (Conception d\u2019Objets Communicants), notre \u00e9quipe pluridisciplinaire s&rsquo;est int\u00e9ress\u00e9e \u00e0 la probl\u00e9matique de la perte d\u2019animaux. En effet, 70 000 animaux ont \u00e9t\u00e9 d\u00e9clar\u00e9s perdus ou abandonn\u00e9s en France en 2021. Pour participer \u00e0 la r\u00e9solution de cette probl\u00e9matique, nous nous sommes concentr\u00e9 sur la r\u00e9alisation d\u2019une solution bas\u00e9e sur un collier traceur.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Dans cet article, nous nous efforcerons \u00e0 vous expliquer le cheminement de la cr\u00e9ation de cette solution \u00e9tape par \u00e9tape.<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><b>II. R\u00e9alisation<\/b><\/p>\n<p><span style=\"font-weight: 400;\">1. Liste des mat\u00e9riaux<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\"><a href=\"https:\/\/pycom.io\/product\/pytrack-2-0-x\/\"><span style=\"font-weight: 400;\">Expansion Boards : Pytrack 2.0 X<\/span><\/a><\/li>\n<li style=\"font-weight: 400;\"><a href=\"https:\/\/pycom.io\/product\/lopy4\/\"><span style=\"font-weight: 400;\">Development Boards : LoPy4<\/span><\/a><\/li>\n<li style=\"font-weight: 400;\"><a href=\"https:\/\/www.digikey.fr\/fr\/products\/detail\/pycom-ltd.\/SIGFOX%2FLORA%2520ANTENNA%2520KIT\/7721843?utm_adgroup=RF%20Antennas&amp;utm_source=google&amp;utm_medium=cpc&amp;utm_campaign=Shopping_Product_RF%2FIF%20and%20RFID&amp;utm_term=&amp;productid=7721843&amp;gclid=CjwKCAiAvK2bBhB8EiwAZUbP1KNOojLmFMYHQHEUhXGKa4andT7YcQKFyJiSNLwMUxXhkBVn5v2pfBoCujsQAvD_BwE\"><span style=\"font-weight: 400;\">Antenna Kit<\/span><\/a><span style=\"font-weight: 400;\"> x2 (ou de plus petit format si possible)<\/span><\/li>\n<li style=\"font-weight: 400;\"><a href=\"https:\/\/fr.aliexpress.com\/item\/1005004518123312.html?spm=a2g0o.ppclist.product.6.1cfc8swT8swTvC&amp;pdp_npi=2%40dis%21EUR%21%E2%82%AC%203%2C68%213%2C68%20%E2%82%AC%21%21%21%21%21%400b0a0c5216679989463276048e2080%2112000029446830649%21btf&amp;_t=pvid%3A2d523bfd-313d-41f0-bf54-ecde749929aa&amp;afTraceInfo=1005004518123312__pc__pcBridgePPC__xxxxxx__1667998946&amp;gatewayAdapt=glo2fra\"><span style=\"font-weight: 400;\">Batterie Lipo Rechargeable, 3.7V, 1200mAh, 603450<\/span><\/a><span style=\"font-weight: 400;\"> (ou autre batterie 5V)<\/span><\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400;\">2. Electronique<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Premi\u00e8rement, assurez-vous d\u2019avoir un logiciel de programmation tel que <\/span><a href=\"https:\/\/docs.pycom.io\/gettingstarted\/software\/vscode\/\"><span style=\"font-weight: 400;\">Visual Studio Code<\/span><\/a><span style=\"font-weight: 400;\"> et de l\u2019extension Pymakr, qui permet de reconna\u00eetre la LoPy4.\u00a0<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400;\">\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 a. Gateway (passerelle)<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Apr\u00e8s avoir connect\u00e9 la carte LoPy4 au moyen d\u2019un c\u00e2ble USB, suivez les instructions qui suivent, pour communiquer avec cette derni\u00e8re, et lancer un 1er programme en python : <\/span><a href=\"https:\/\/docs.pycom.io\/gettingstarted\/\"><span style=\"font-weight: 400;\">Getting Started<\/span><\/a><span style=\"font-weight: 400;\">.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Dans notre githlab vous trouverez ensuite un dossier \u201clorawan-nano-gateway\u201d contenant tous les \u00e9l\u00e9ments pour configurer la gateway. Vous pourrez ainsi connecter une carte LoPy \u00e0 un r\u00e9seau LoRaWAN tel que The Things Networks (TTN), afin de l\u2019utiliser comme une nano-gateway.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Ce code utilise des param\u00e8tres sp\u00e9cifiques pour la connexion au TTN dans la r\u00e9gion europ\u00e9enne de 868 MHz. Pour le configurer en fonction de votre utilisation sp\u00e9cifique, veuillez consulter le fichier config.py.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Le code de la Nano-Gateway est divis\u00e9 en 3 fichiers, main.py, config.py et nanogateway.py. Ces fichiers sont utilis\u00e9s pour configurer et sp\u00e9cifier comment votre passerelle se connectera \u00e0 votre r\u00e9seau pr\u00e9f\u00e9r\u00e9 et comment elle peut agir en tant que transitaire de paquets.<\/span><\/p>\n<p><span style=\"font-weight: 400;\"><em>Main<\/em> (main.py)<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Ce fichier s&rsquo;ex\u00e9cute au d\u00e9marrage et appelle les fichiers library et config.py pour initialiser la nano-gateway. Une fois la configuration d\u00e9finie, la nano-gateway est alors d\u00e9marr\u00e9e.<\/span><\/p>\n<p><span style=\"font-weight: 400;\"><em>Configuration<\/em> (config.py)<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Ce fichier contient les param\u00e8tres sp\u00e9cifiques au serveur et au r\u00e9seau auquel il se connecte. En fonction de votre r\u00e9gion et de votre fournisseur (TTN, Loriot, etc.), ces param\u00e8tres varient.<\/span><\/p>\n<p><span style=\"font-weight: 400;\"><em>Library<\/em> (nanogateway.py)<\/span><\/p>\n<p><span style=\"font-weight: 400;\">La biblioth\u00e8que nano-gateway contr\u00f4le toute la g\u00e9n\u00e9ration et la transmission des paquets pour les donn\u00e9es LoRa.<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400;\">Ensuite, pour configurer la passerelle avec The Things Network (TTN), il faut cr\u00e9er\/enregistrer un compte, comprenant un nom d\u2019utilisateur et une adresse \u00e9lectronique. Une fois le compte cr\u00e9\u00e9, vous pouvez commencer \u00e0 enregistrer votre nano-gateway. Pour ce faire, vous devez vous rendre sur la page Web de la console TTN.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Dans la console TTN, vous avez deux options : applications et passerelles. S\u00e9lectionnez passerelles, puis cliquez sur enregistrer une passerelle. Cela vous permettra de configurer et d&rsquo;enregistrer une nouvelle nano-gateway.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Remplissez <\/span><b>Gateway EUI<\/b><span style=\"font-weight: 400;\"> et cliquez sur <\/span><b>Confirm<\/b><span style=\"font-weight: 400;\">. Certaines passerelles n&rsquo;utilisent pas <\/span><b>Gateway EUI<\/b><span style=\"font-weight: 400;\"> (par exemple, la passerelle The Things Kickstarter), auquel cas vous pouvez simplement cliquer sur <\/span><b>Continue without EUI<\/b><span style=\"font-weight: 400;\">.<\/span><\/p>\n<p><a href=\"https:\/\/hub.imt-atlantique.fr\/fablab\/wp-content\/uploads\/archives\/2022\/12\/Image1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-7970\" src=\"https:\/\/hub.imt-atlantique.fr\/fablab\/wp-content\/uploads\/archives\/2022\/12\/Image1.png\" alt=\"\" width=\"926\" height=\"195\" \/><\/a><\/p>\n<p><span style=\"font-weight: 400;\">Sur le formulaire d&rsquo;enregistrement manuel, remplissez le <\/span><b>Frequency Plan<\/b><span style=\"font-weight: 400;\"> et <\/span><b>Gateway ID<\/b><span style=\"font-weight: 400;\"> s&rsquo;il n&rsquo;a pas \u00e9t\u00e9 pr\u00e9-rempli, les autres champs sont facultatifs. Cliquez sur <\/span><b>Register Gateway<\/b><span style=\"font-weight: 400;\"> pour terminer.<\/span><\/p>\n<p><a href=\"https:\/\/hub.imt-atlantique.fr\/fablab\/wp-content\/uploads\/archives\/2022\/12\/Image2.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-7977\" src=\"https:\/\/hub.imt-atlantique.fr\/fablab\/wp-content\/uploads\/archives\/2022\/12\/Image2.png\" alt=\"\" width=\"940\" height=\"787\" \/><\/a><\/p>\n<p><span style=\"font-weight: 400;\">Votre passerelle sera cr\u00e9\u00e9e et vous serez redirig\u00e9 vers la page d&rsquo;aper\u00e7u de votre passerelle nouvellement cr\u00e9\u00e9e.<\/span><\/p>\n<p><a href=\"https:\/\/hub.imt-atlantique.fr\/fablab\/wp-content\/uploads\/archives\/2022\/12\/Image3.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-7978\" src=\"https:\/\/hub.imt-atlantique.fr\/fablab\/wp-content\/uploads\/archives\/2022\/12\/Image3.png\" alt=\"\" width=\"928\" height=\"384\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400;\">Maintenant vous avez juste besoin de fournir une alimentation 5V et une connexion r\u00e9seau \u00e0 la passerelle. La passerelle se connectera automatiquement au The Things Network.<\/span><\/p>\n<p>&nbsp;<\/p>\n<p>b. Collier (end-device)<\/p>\n<p><span style=\"font-weight: 400;\">Pour configurer le collier, vous trouverez dans notre githlab, un dossier \u201cget_data_and_send\u201d contenant tous les \u00e9l\u00e9ments pour configurer cette fois le collier et r\u00e9cup\u00e9rer les donn\u00e9es (coordonn\u00e9es) et les transmettre sur TTN.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Encore une fois, ce dossier contient trois fichiers principaux : main.py, config.py, pytrack_2.py et un dossier contenant la library, elle m\u00eame divis\u00e9e en trois fichiers d\u00e9taill\u00e9s plus bas.<\/span><\/p>\n<p><span style=\"font-weight: 400;\"><em>Main<\/em> (main.py)<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Utilis\u00e9 pour activer end-device automatiquement lorsqu&rsquo;il est aliment\u00e9 par une batterie.<\/span><\/p>\n<p><em><span style=\"font-weight: 400;\">Library\u00a0<\/span><\/em><\/p>\n<p><span style=\"font-weight: 400;\">L76GNSS.py est le module GPS qui peut fournir des donn\u00e9es de localisation \u00e0 votre application. Vous trouverez plus de d\u00e9tails ici GPS (pycom.io)<\/span><\/p>\n<p><span style=\"font-weight: 400;\">LIS2HH12.py est un acc\u00e9l\u00e9rom\u00e8tre 3 axes qui fournit des sorties pour l&rsquo;acc\u00e9l\u00e9ration, le roulis et le tangage. Vous trouverez plus de d\u00e9tails ici Accelerometer (pycom.io)<\/span><\/p>\n<p><span style=\"font-weight: 400;\">pycoproc2.py est une biblioth\u00e8que python de soutien pour les tableaux d&rsquo;extension Pysense 2 et Pytrack 2. Vous trouverez plus de d\u00e9tails ici Pycoproc2 (pycom.io)<\/span><\/p>\n<p><em><span style=\"font-weight: 400;\">Pytrack_2.py<\/span><\/em><\/p>\n<p><span style=\"font-weight: 400;\">Ce fichier de code python a deux t\u00e2ches. Tout d&rsquo;abord, il va se connecter \u00e0 la passerelle via OTAA. Lorsque la connexion est r\u00e9ussie, il utilise la biblioth\u00e8que L76GNSS pour obtenir les donn\u00e9es de coordonn\u00e9es et les transmettre \u00e0 la passerelle en utilisant la connexion pr\u00e9c\u00e9demment \u00e9tablie.<\/span><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>3. Boitier pour le collier<\/p>\n<p><span style=\"font-weight: 400;\">Pour que les composants puissent tenir sur l\u2019animal, nous avons d\u00e9cid\u00e9 d\u2019imprimer un bo\u00eetier pouvant s\u2019accrocher \u00e0 n\u2019importe quel collier ou harnais.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Les plans SDM sont disponibles sur notre githlab dans le dossier \u201cboitier\u201d. <\/span><span style=\"font-weight: 400;\">Vous trouverez nos premiers plans et une version am\u00e9lior\u00e9e.\u00a0<\/span><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400;\">4. Application<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Comme le projet doit permettre de lier le collier avec son syst\u00e8me GPS avec une application mobile, nous avons choisi de programmer notre application avec un framework facile et natif, permettant donc de programmer une seule fois pour les 2 plateformes que sont Android et IOS.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Ainsi, notre code est d\u00e9velopp\u00e9 en orient\u00e9 objet, facilement compr\u00e9hensible et debuggable pour quiconque a les bases dans les langages utilis\u00e9s.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Pour ce faire, nous avons d\u00e9velopp\u00e9 l\u2019application mobile avec le framework Flutter de Google (Lien vers la documentation de Flutter : <\/span><a href=\"https:\/\/docs.flutter.dev\/\"><span style=\"font-weight: 400;\">https:\/\/docs.flutter.dev\/<\/span><\/a><span style=\"font-weight: 400;\">).<\/span><\/p>\n<p><span style=\"font-weight: 400;\">C\u2019est un Framework qui a aujourd\u2019hui une communaut\u00e9 avec des millions de personnes, une documentation riche et facile permettant une prise en main facile et une grande quantit\u00e9 de tutoriel et de projets en open source r\u00e9utilisable.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Enfin, une API a \u00e9t\u00e9 d\u00e9velopp\u00e9e afin de permettre la r\u00e9cup\u00e9ration des donn\u00e9es depuis TTL. Cette API permet de faire le lien entre l\u2019application et la base de donn\u00e9es sur laquelle les coordonn\u00e9es GPS sont.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">L\u2019API a \u00e9t\u00e9 d\u00e9velopp\u00e9e tr\u00e8s facilement avec le langage Python et la librairie Flask. Pour un d\u00e9but, un fichier texte est utilis\u00e9 comme base de donn\u00e9es.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">L\u2019ensemble du code (Application mobile et Api) est pr\u00e9sent sur le GitHub <\/span><a href=\"https:\/\/github.com\/Qamardine\/zanimo\"><span style=\"font-weight: 400;\">ici<\/span><\/a><span style=\"font-weight: 400;\">. L\u2019API se trouve dans le r\u00e9pertoire zanimo\/lib\/api (<\/span><a href=\"https:\/\/github.com\/Qamardine\/zanimo\/tree\/main\/lib\/api\"><span style=\"font-weight: 400;\">https:\/\/github.com\/Qamardine\/zanimo\/tree\/main\/lib\/api<\/span><\/a><span style=\"font-weight: 400;\">).<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400;\">5. Interface mobile<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Afin de permettre aux utilisateurs de voir l\u2019itin\u00e9raire vers le chien, nous avons d\u00e9velopp\u00e9 une application mobile qui re\u00e7oit les coordonn\u00e9es GPS et \u00e0 l\u2019aide de l\u2019API de Google Maps , affiche la position du choix sur la carte et l\u2019itin\u00e9raire vers celui-ci.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">L\u2019application dispose aussi d\u2019autres fonctionnalit\u00e9s qui n\u2019ont pas pu toutes \u00eatre termin\u00e9es mais la fonctionnalit\u00e9 de base qui est celle de la localisation du chien et l\u2019itin\u00e9raire jusqu\u2019\u00e0 lui a \u00e9t\u00e9 totalement d\u00e9velopp\u00e9e.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Pour l\u2019int\u00e9gration de l\u2019API de Google Maps, il faut aller sur le site Google cloud (<\/span><a href=\"https:\/\/console.cloud.google.com\/google\/maps-apis\"><span style=\"font-weight: 400;\">https:\/\/console.cloud.google.com\/google\/maps-apis<\/span><\/a><span style=\"font-weight: 400;\">) et cr\u00e9er une nouvelle cl\u00e9 API.<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><a href=\"https:\/\/hub.imt-atlantique.fr\/fablab\/wp-content\/uploads\/archives\/2022\/12\/Image4.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-7989\" src=\"https:\/\/hub.imt-atlantique.fr\/fablab\/wp-content\/uploads\/archives\/2022\/12\/Image4.png\" alt=\"\" width=\"902\" height=\"534\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400;\">Cette cl\u00e9 API sera utilis\u00e9e dans le code et permettra d\u2019utiliser les services externes de Google.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Il faut ensuite activer tous les services qui seront utilis\u00e9s par cette cl\u00e9 API. Dans notre cas, on aura besoin d\u2019activer les services : Maps SDK for Android; Maps SDK for IOS et Directions API.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Les services API de Google sont payants. Mais pour une premi\u00e8re utilisation, nous disposons d\u2019une p\u00e9riode de 3 mois d\u2019essai gratuit.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Les interfaces d\u2019inscription et de connexion de notre application ont \u00e9t\u00e9 d\u00e9velopp\u00e9es. Il ne reste que la partie du backend pour stocker ces informations dans une base de donn\u00e9es.<\/span><\/p>\n<p><a href=\"https:\/\/hub.imt-atlantique.fr\/fablab\/wp-content\/uploads\/archives\/2022\/12\/Image5.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-7990\" src=\"https:\/\/hub.imt-atlantique.fr\/fablab\/wp-content\/uploads\/archives\/2022\/12\/Image5.png\" alt=\"\" width=\"903\" height=\"580\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400;\">Le dashboard \u00e9galement a \u00e9t\u00e9 d\u00e9velopp\u00e9. Il ne reste plus qu\u2019\u00e0 lier cel\u00e0 au backend qui permettra de mettre les informations dynamiquement.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">La page permettant d\u2019afficher la carte jusqu\u2019au point du collier et de d\u00e9finir un point de r\u00e9f\u00e9rence ( le foyer du chien) est quant \u00e0 elle termin\u00e9e. Et enfin le front end de la page de r\u00e9glage a \u00e9t\u00e9 d\u00e9velopp\u00e9.<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><a href=\"https:\/\/hub.imt-atlantique.fr\/fablab\/wp-content\/uploads\/archives\/2022\/12\/Image6.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-7998\" src=\"https:\/\/hub.imt-atlantique.fr\/fablab\/wp-content\/uploads\/archives\/2022\/12\/Image6.png\" alt=\"\" width=\"949\" height=\"646\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p><strong>III. R\u00e9sultats et perspectives d\u2019am\u00e9lioration<\/strong><\/p>\n<p><span style=\"font-weight: 400;\">Voici premi\u00e8rement une vid\u00e9o de d\u00e9monstration de cette solution :<\/span><\/p>\n\n<p>\u00a0<\/p>\n<p>Perspectives :<\/p>\n<ul>\n<li>Position du t\u00e9l\u00e9phone comme r\u00e9f\u00e9rence pour l\u2019itin\u00e9raire (plut\u00f4t que la position du foyer)<\/li>\n<li>D\u00e9velopper les options de la page d\u2019accueil (alerte si en dehors de la zone\/d\u00e9terminer le rayon de la zone \u2026)<\/li>\n<li>D\u00e9velopper le tra\u00e7age d&rsquo;une zone libre pour l&rsquo;animal et le syst\u00e8me d&rsquo;alerte s&rsquo;il la quitte<\/li>\n<li>Utilisation de composants plus performants pour renforcer l&rsquo;instabilit\u00e9 du GPS<\/li>\n<li>Optimisation de la consommation d&rsquo;\u00e9nergie en d\u00e9veloppant un mode veille gr\u00e2ce \u00e0 l&rsquo;acc\u00e9l\u00e9rom\u00e8tre<\/li>\n<li>Optimisation de la taille du boitier, son \u00e9tanch\u00e9it\u00e9 et son ouverture\/fermeture, en se procurant des composants plus petits<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Equipe\u00a0 Divya RAMDOO Le Kim NGUYEN Moussa OYEWOLE Maxime RICORDEAU I. Contexte Dans le cadre de la th\u00e9matique d\u2019approfondissement CoOC (Conception d\u2019Objets Communicants), notre \u00e9quipe pluridisciplinaire s&rsquo;est int\u00e9ress\u00e9e \u00e0 la probl\u00e9matique de la perte d\u2019animaux. En effet, 70 000 animaux ont \u00e9t\u00e9 d\u00e9clar\u00e9s perdus ou abandonn\u00e9s en France en 2021. Pour participer \u00e0 la r\u00e9solution [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[113],"tags":[155],"class_list":["post-7969","post","type-post","status-publish","format-standard","hentry","category-couad","tag-zanimo"],"acf":{"article_projet":[10668]},"_links":{"self":[{"href":"https:\/\/hub.imt-atlantique.fr\/fablab\/wp-json\/wp\/v2\/posts\/7969","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hub.imt-atlantique.fr\/fablab\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hub.imt-atlantique.fr\/fablab\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hub.imt-atlantique.fr\/fablab\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/hub.imt-atlantique.fr\/fablab\/wp-json\/wp\/v2\/comments?post=7969"}],"version-history":[{"count":2,"href":"https:\/\/hub.imt-atlantique.fr\/fablab\/wp-json\/wp\/v2\/posts\/7969\/revisions"}],"predecessor-version":[{"id":10671,"href":"https:\/\/hub.imt-atlantique.fr\/fablab\/wp-json\/wp\/v2\/posts\/7969\/revisions\/10671"}],"acf:post":[{"embeddable":true,"href":"https:\/\/hub.imt-atlantique.fr\/fablab\/wp-json\/wp\/v2\/projet\/10668"}],"wp:attachment":[{"href":"https:\/\/hub.imt-atlantique.fr\/fablab\/wp-json\/wp\/v2\/media?parent=7969"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hub.imt-atlantique.fr\/fablab\/wp-json\/wp\/v2\/categories?post=7969"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hub.imt-atlantique.fr\/fablab\/wp-json\/wp\/v2\/tags?post=7969"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}