Giter VIP home page Giter VIP logo

automiam's Introduction

AutoMiam

logo

Contexte

AutoMiam est un projet réalisé dans le cadre de l’enseignement Smart Environments, enseigné au sein du Master 2 Intelligence Artificielle de l'université Claude Bernard Lyon 1. Il est encadré par Lionel Medini et a pour sujet les objets connectés, l’internet des objets (IoT), et le web des objets (WoT).

Objectif

L'objectif du projet était de réaliser un pet feeder intelligent, capable d’identifier les animaux enregistrés, afin d’adapter son comportement pour chacun.

Le système conçu peut délivrer de la nourriture, de manière automatique, aux animaux enregistrés qui s'en approche. Il identifie un animal avant de le nourrir, à l’aide d’une caméra, pour analyser ses besoins et lui fournir une dose de nourriture quotidienne adaptée. L'utilisateur peut enregistrer ses animaux dans le système et suivre leur consommation grâce à une interface web.

Dans le cadre du projet, nous avons restreint les animaux aux chiens, et le nombre de chiens reconnus à deux : Mina et Jappeloup.

Mina Jappeloup
Mina Jappeloup

Architecture

  • doc/ : Documents de rendu du projet
  • app/ : Contient les modules de l'application
    • ui/ : Interface web utilisateur
    • dog-identifier/ : Serveur python pour identifier et gérer les chiens enregistrés
    • pet-feeder/ :
      • thing/ : App Node.js pour exposer l'objet connecté
      • controller/ : App Node.js pour consommer l'objet connecté

Exécution

Pour exécuter le projet, il faut lancer trois modules :

  • dog-identifier (serveur python)
  • pet-feeder/thing (App Node.js)
  • pet-feeder/controller (App Node.js)
  • (Optionnel) Interface web utilisateur

Pré-requis

Il est nécessaire d'avoir une carte Arduino, montée avec StandardFirmataPlus, branchée selon les spécifications décrites ici et reliée en filaire à la machine. Cependant, il est possible d'exécuter le code sans arduino en modifiant le fichier app/pet-feeder/thing/src/Thing.ts. Par ailleurs, certains modules peuvent être utilisés indépendamment (app/dog-identifier & app/pet-feeder/thing/).

Installation et compilation

Depuis le dossier source :

cd app/dog-identifier && pip install flask tensorflow &&
cd ../pet-feeder/thing && npm run buildAll &&
cd ../controller && npm install &&

Run

Lancement automatique (Linux)

Exécute les trois modules dans des terminaux séparés : app/run.sh

Lancement manuel

  • Exposer l'objet connecté : cd app/pet-feeder/thing && npm run start
  • Serveur python : cd app/dog-identifier && python3 server.py
  • Controller : cd app/pet-feeder/controller && npm run start
  • UI : firefox app/ui/Home.html

Auteurs

  • Gaspard GOUPY
  • Titouan KNOCKAERT

Licence

Voir Licence

automiam's People

Contributors

ggoupy avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.