# Arduino-Basket

Projet d'IOT - Arduino basket 

## Auteur(s)

| Nom      | Prénom   | login    |
|----------|----------|----------|
| Dulong   | Valentin | dv152069 |
| Houchard | Julien   | hj160532 |

## Travail à réaliser

<https://servuc.github.io/teaching/iot/iot-4.html>

## Matériels

Arduino

Capteur Infrarouge (IR)

Bouton pressoir

Ecran LCD (16*2)

Potentiomètre

Résistance * 2

Cables

Breadbord

Breadbord mini

Cable USB

Cartons (ou autre matière)

Grand gobelet en carton (ou autre matière)

Balles de ping pong (ou balles similaires)

## Montage

![Figure 1](images/arduinoschema_bb.png)

## Visuels

|      Boite ouverte                      |      Boite fermée                    |
|-----------------------------------------|--------------------------------------|
| <img src="images/Boite-ouverte.jpg"/>   | <img src="images/Boite-fermee.jpg"/> | 



## Utilisation

Réaliser le montage arduino

Téleverser "arduino_basket/arduino_basket.io" sur l'arduino

Installer docker et docker-compose si nécessaire

Mettre à jour le port utilisé par l'arduino, dans docker-compose.yml, dans le service express :
```
express:
  build: .
  devices:
    - "<chemin vers le port utilisé par l'arduino>:/dev/ttyACM0"
  ports:
    - "8080:8080"
  depends_on:
    - mongo
  environment:
    - URL_MONGO=mongodb://mongo
    - COM3_PORT=<chemin vers le port utilisé par l'arduino>
```

Pour lancer l'application, executer la commande : ``docker-compose up --build``

Se rendre sur la page https://0.0.0.0:8080/ pour voir l'interface web

![Figure 4](images/interface.png)

![Figure 5](images/lcd.PNG)

## Outils

Express

 - Permet la communication entre l'arduino, la base de données et l'application.

MongoDB

 - Permet de stocker les scores.

Docker

 - Permet de lancer facilement l'application.

