Domotisation d’un meuble TV clos

Hello tous !

Alors aujourd’hui, je vous propose un projet un peu fou ^^
Mon pote Tommy a décidé de se fabriquer un meuble TV sur mesure et 100% fermé.

Un projet très design mais avec quelques inconvénients…

Alors un meuble TV fermé, c’est joli, c’est très classe, mais ce n’est pas sans inconvénient… Le premier inconvénient est le pilotage des appareils infrarouge. Problème vite résolu car il existe des solutions sur le marché comme le Harmony Hub, qui permet de piloter des appareils dans des meubles fermés. C’est pratique !

Il y a cependant un second problème… Les appareils hi-fi chauffent ! Si on ajoute des ventilateurs pour refroidir le meuble, cela va faire du bruit… il faut donc pouvoir les réguler et les arrêter.

Le troisième problème, spécifique, est qu’il y a un second ampli, il sert pour la zone 2 avec les enceintes colonnes dévolues à l’écoute musicale. C’est un ampli de sono, donc sans asservissement infrarouge. Il faut trouver une solution pour pouvoir l’allumer et l’arrêter en même temps que les autres équipements.

Et enfin, c’est la problématique « what the f*ck » du projet : une trappe doit pouvoir s’ouvrir quand c’est nécessaire pour dévoiler l’enceinte centrale, et se refermer après utilisation. C’est classe !

Alors, quelles solutions ?

Qu’à cela ne tienne, j’ai proposé mon aide sur la partie électronique, pour fabriquer un module qui s’occupe de tout cela.

Vous l’aurez compris, on va utiliser un… **roulement de tambours**… Arduino ! (bingo!). J’ai retenu l’Arduino Nano, il se chargera de tout gérer. Même chipset que le Uno, mais avec 2 entrées analogiques supplémentaires et un encombrement réduit. Très pratique pour notre besoin !

Refroidissement

Pour le refroidissement, on a opté pour 2 ventilateurs Noctua de 120mm, et équipé de PWM. On a opté également pour une CTN afin de capter la température dans le compartiment des amplis.

Étude très rapide, car si vous avez suivi mon projet Aquila Reloaded, vous trouverez tous les plans ici, au chapitre 7 et au chapitre 8.

Asservissement de l’ampli

Pour l’asservissement de l’ampli, on a opté pour un simple relais 5V opto-isolé, et un récepteur infrarouge TSOP4838. On se servira de consignes envoyées en infrarouge par le Harmony Hub pour allumer ou éteindre le relais.

Trappe de l’enceinte centrale

Alors ca c’est la partie WTF : la première chose qu’il faut est un moteur afin d’ouvrir et fermer la porte. On va très certainement faire un système façon « porte de garage », avec une vis sans fin. Pour des questions de précision, on va utiliser un moteur pas à pas de 12V avec un couple suffisamment puissant.

Comme il nous faut le matériel rapidement, on a passé une commande sur Amazon. Pas le choix le plus judicieux financièrement mais c’est livré rapidement.

Comme c’est un moteur bipolaire, on a choisi d’utiliser un double pont en H L298D, également acheté chez Amazon.

Au niveau rendu, un pont en H produira le même résultat Le principe de fonctionnement est cependant quelque peu différent par rapport à que nous avons vu au chapitre 2, je vous invite à lire l’article de ce blog.

Enfin, pour détecter les fins de course, on utilisera 2 butées mécaniques.

Ensuite, a quel moment ouvrir ou fermer la trappe ? Deux options :

  • Soit on ouvre la porte à la réception de codes infrarouge spécifiques (activation zone 1 en 5.1 par exemple)
  • Soit on utilise la détection de présence de son sur l’enceinte centrale.

On se réserve les 2 possibilités. Donc pour la première, on utilisera le récepteur IR TSOP prévu pour l’ampli. Facile.

Pour la seconde possibilité, nous avons décidé de se brancher en parallèle de l’enceinte centrale et de lire la tension appliquée en analogique. Plusieurs problèmes pour cela !

  • Premier problème : le plan de masse de l’ampli ne doit pas se mélanger avec le plan de masse du circuit. Il faut une isolation galvanique
  • Second problème : le Arduino ne sait lire en analogique qu’une tension comprise entre 0 et 5V. Ni plus,… et ni moins. Or un signal sonore peut être négatif (c’est une tension alternative), et peut dépasser 5V vu qu’on est en niveau ligne.

La solution technique retenue se base sur un adaptateur d’impédance pour voitures. Ce type d’adaptateur se branche sur les sorties haut-parleurs d’un autoradio et créée une sortie ligne isolée. De surcroit le gain est réglable. C’est exactement ce qu’il nous faut ! Dispo sur Amazon ou dans n’importe quel centre auto.

Pour protéger l’Arduino, on y ajoutera quand même une diode Zener de 3,3V, une résistance, ainsi qu’une diode classique. Ce trio bloquera les alternances négatives tout en limitant la tension appliquée.

Montage

Voici le plan de câblage retenu en fonction de tous les prérequis (PWM, INT, Analogique, …)

Arduino PinFonctionConnecté àComposants de sécurisationRemarque
0RXDUSB-
1TXDUSB-
2INT0Ventilo 1, tachymètre10K
3INT1 + PWMVentilo 2, tachymètre10K
4Moteur PAPPont en H (driver)
5PWMMoteur PAPPont en H (driver)
6PWMMoteur PAPPont en H (driver)
7Moteur PAPPont en H (driver)
8
9PWMVentilo 1, PWM10K + Zener
10PWMVentilo 2, PWM10K + Zener
11PWMRelaisBC337 + 330R + Diode roue libre
12TSOP (infrarouge)1K
13LEDLED témoin intégrée-
A0Bouton butée 1-PullUp logiciel
A1Bouton butée 2-PullUp logiciel
A2Bouton manœuvre manuelle-PullUp logiciel
A3Bouton manœuvre manuelle-PullUp logiciel
A4
A5Lecture analogique temperature 10K ou 4K7
A6Analog OnlyLecture analogique enceinte 47K + Zener + Diode
A7Analog Only

Et voici le résultat final !

Next-Step, la programmation logicielle et l’intégration dans le meuble 😉 Stay tuned !

Aquila Reloaded – Chapitre 10 : Interaction en CLI et création d’un mode « debug »

Hello world ! Dans ce chapitre, nous allons voir comment interagir avec notre Aquila, et plus généralement comment interagir avec un Arduino en général. C’est plutôt trivial donc je vais surtout me concentrer sur quelques astuces. Nous verrons comment : Envoyer des informations Recevoir des informations Optimiser l’occupation mémoire Créer un « mode debug » Envoyer des […]

Aquila Reloaded – Chapitre 9 : Utilisation de l’EEPROM pour sauvegarder la configuration

Bonjour tout le monde, Ci-dessous un nouveau sujet sur mon projet « Aquila Reloaded » ! C’est un sujet quelque peu « off topic » et qui peut servir pour d’autres besoins. En effet, il est parfois nécessaire de mémoriser des données en mémoire, on va voir comment utiliser la mémoire EEPROM de l’Arduino : Comment lire et écrire […]

Aquila Reloaded – Chapitre 8 : Pilotage de ventilateurs PWM et monitoring vitesse

Bonjour tout le monde ! Je continue encore et toujours mon projet « Aquila Reloaded ». Dans notre montage, la LED de puissance nécessite beaucoup plus d’attention car elle est très sensible aux hautes températures. De surcroit, contrairement à notre lampe halogène ELC 250W, il est très compliqué de la remplacer. Afin d’éviter de griller notre LED, […]

Aquila Reloaded – Chapitre 7 : Surveillance de la température

Hello, Dans les 5 chapitres précédents, nous avons réussi à reproduire toutes les fonctions de l’Aquila, à savoir : Gestion de la lampe Gestion des moteurs Pas à Pas Gestion du capteur de basses Gestion des DIP Switchs Gestion du signal DMX « Ah bah c’est bon t’as fini alors ! » Heu… Non 🙂 Car je […]

Aquila Reloaded – Chapitre 6 : Capteur ambiant de basses

Bonjour à tous, Je continue le développement de ma carte Aquila Reloaded. On va voir maintenant comment faire pour capter des basses avec le micro intégré. AOP : Amplificateur opérationnel Comme je l’ai dit dans le premier chapitre, l’objectif du projet est aussi de réutiliser un maximum de composants déjà présents sur le circuit original. […]

Aquila Reloaded – Chapitre 5 : Utilisation d’une LED de puissance de 100W

Bonjour à tous ! (oh mon Dieu il n’a pas dit « hello world » ^^), Je continue mon projet « Aquila Reloaded », et on va passer à d’autres tests unitaires, à savoir le pilotage de notre LED de puissance. Nous allons au cours de ce chapitre voir comment allumer et éteindre une LED de puissance à l’aide […]

Aquila Reloaded – Chapitre 4 : Lire les valeurs des DIP Switchs avec un Arduino

Hello world ! Après la lecture et l’écriture de valeurs sur le bus DMX, on va passer à un chapitre qui parait très banal mais qui pourtant a toute son importance ! En effet, on va voir comment adresser et configurer notre équipement DMX512 à partir de DIP Switchs. Utilisation des « boutons » : pas si […]

Aquila Reloaded – Chapitre 3 : Recevoir (et envoyer) des commandes DMX512 avec un Arduino

Hello world ! On continue sur nos tests unitaires sur notre Aquila Reloaded. On va voir comment lire des valeurs en DMX512. Le DMX512, kézako ? Le DMX512 est un protocole basé sur la norme de transmission RS485. Il s’agit d’une liaison série cadencée à 250k bauds sur laquelle sont transférées de façon cyclique un […]

Aquila Reloaded – Chapitre 2 : piloter des moteurs pas à pas avec un Arduino

Hello world, Maintenant que j’ai acheté et démonté un de mes 2 scans, il est temps de passer à la suite, à savoir piloter mes moteurs. Pour réaliser ces tests, j’ai choisi d’utiliser l’Arduino Nano v3. Il est déprécié chez Arduino, mais qu’à cela ne tienne, on peut toujours compiler des programmes dessus et il […]