Étape 5: Logiciel - LED de contrôle avec une interface web
1. installation du projet oeuf clair
Le projet est disponible sur GitHub.
Il suffit de le télécharger et l’installer sur la racine de Raspbian :
wget https://github.com/superchauzette/projetRGB/archive/master.zip unzip master.zip cd projetRGB-master sudo npm install
Alors, afin de lancer le projet, nous pouvons faire :
sudo node app.js
L’invite de commandes affiche l’écoute du port 3000 qui est le port de l’interface web.
Le fichier app.js sera le lancement automatiquement au début framboise afin de disposer d’un système autonome.
2. présentation de l’interface Web
2.1 présentation générale
Afin d’accéder à l’interface web, après avoir lancé le fichier app.js, nous avons juste besoin d’écrire sur l’ordinateur dans votre navigateur suivants par adresse IP framboise : 3000. L’instruction précédente n’est disponible pour un ordinateur sur le même réseau que la framboise. De l’extérieur, il faut ouvrir le port 3000 sur votre box internet et écrire l’adresse IP publique avec une redirection de ports. Ces informations se trouvent facilement sur le web.
La version à interface web réel contient trois onglets qui permettent de :
- Tab 1: Choisissez une couleur RVB et modifier son intensité, allumer/éteindre la lumière (couleur blanche), début lever ou un coucher de soleil
- Onglet 2: Ensemble un réveil qui permettent d’allumer la lumière comme un lever de soleil
- Onglet 3: Choisir une lumière d’ambiance
Cette interface utilise framwork de matérialiser ce qui est vraiment utile afin de créer une page web simple et élégante.
2.2 onglet de couleur picker - choix de la couleur de la lumière et de lever/coucher du soleil
Cet onglet a été le premier créé car il utilise des fonctions simples qui permettent d’allumer la lumière avec n’importe quelle couleur RVB. Nous pouvons glisser le « sélecteur » (le stylo noir) afin de choisir la couleur voulue. Nous utilisons également une fonction pour convertir la variable RGB dans variable HSV afin de changer uniquement la luminosité de la couleur choisie avec le V (valeur). Cela peut être fait avec le curseur horizontal.
Ensuite, nous avons intégré le lever et le coucher du soleil. Ces fonctions sont un peu plus complexes car il faut utiliser une conversion de température de couleur. Détails de ces fonctions figurent ci-dessous.
2.3-réveil Tab - mettre en place le réveil
Ensuite, nous avons intégré un réveil sur cette page web afin de régler l’heure quand le lever du soleil sera en marche. Paramètres à régler sont les mêmes que ce que nous pouvons trouvés sur le nôtre, les smartphones, comme la possibilité de choisir le jour du déclenchement.
2.4 ambiance d’onglet - lumière d’ambiances rares
Pour finir, un onglet de l’ambiance a été créé. Ambiances principales sont les conversions de température couleur correspondant, par exemple, le soleil à l’horizon, la lumière produite par une ampoule ou le soleil au zénith...
Une ambiance particulière a été intégrée, ce qui est un feu de cheminée. L’idée était de créer une belle ambiance, il y a quelques projets qui utilisent arduino afin de produire une bougie par exemple, mais toujours avec un algorithme conduisant plusieurs leds. Dans notre cas, nous avons un seul que RGB led, si nous avons décidé de changer, d’une part, l’intensité de la lumière afin de créer la variation des flammes, et d’autre part pour modifier la couleur de la température qui n’est pas constante pour une cheminée feu. Le résultat a été très bon lors du premier test !