Table des matières:
- Étape 1: Matériel requis
- Étape 2: connexion matérielle
- Étape 3: communiquer à l'aide du protocole I2C
- Étape 4: Programmation du module
- Étape 5: Création du fichier et exécution du code
- Étape 6: Candidatures
- Étape 7: Ressources
Vidéo: Domotique avec Raspberry Pi en utilisant la carte relais : 7 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:05
Un grand nombre de personnes veulent un grand confort mais à des prix raisonnables. Nous nous sentons paresseux pour éclairer les maisons tous les soirs lorsque le soleil se couche et le lendemain matin, en éteignant à nouveau les lumières ou pour allumer / éteindre le climatiseur / le ventilateur / les radiateurs selon le temps ou la température ambiante.
Une solution peu coûteuse pour éviter ce travail supplémentaire d'éteindre les appareils en cas de besoin est ici. Il s'agit d'automatiser vos maisons à des coûts comparativement très inférieurs à l'aide de simples produits plug and play. Cela fonctionne comme lorsque la température monte ou descend, il allume le climatiseur ou le chauffage, respectivement. De plus, si nécessaire, il vous aidera à allumer ou à allumer les lumières de votre maison sans les allumer manuellement. Et bien d'autres appareils peuvent être contrôlés. Automatisez le monde. Laissez-nous commencer votre maison.
Étape 1: Matériel requis
Nous utiliserons:
Tarte aux framboises
Le Raspberry Pi est un PC basé sur Linux à carte solitaire. Ce petit PC offre une puissance d'enregistrement puissante, utilisée comme exercice d'électronique, et des opérations sur PC telles que des feuilles de calcul, du traitement de texte, de la navigation sur le Web, des e-mails et des jeux
Bouclier I2C ou en-tête I2C
L'INPI2 (adaptateur I2C) fournit au Raspberry Pi 2/3 un port I²C à utiliser avec plusieurs appareils I2C
Contrôleur de relais I2C MCP23008
Le MCP23008 de Microchip est une extension de port intégrée qui contrôle huit relais via le bus I²C. Vous pouvez ajouter plus de relais, d'E/S numériques, de convertisseurs analogique-numérique, de capteurs et d'autres appareils à l'aide du port d'extension I²C intégré
Capteur de température MCP9808
Le MCP9808 est un capteur de température de haute précision qui fournit des signaux de capteur calibrés et linéarisés au format numérique I²C
Capteur de luminance TCS34903
Le TCS34903 est un produit de la famille des capteurs de couleur qui fournit la valeur de la composante RVB de la lumière et de la couleur
Câble de connexion I2C
Le câble de connexion I2C est un câble à 4 fils destiné à la communication I2C entre deux appareils I2C connectés via celui-ci
Adaptateur micro-USB
Pour alimenter Raspberry Pi, nous avons besoin d'un câble Micro USB
Adaptateur secteur 12V pour carte relais
Le contrôleur de relais MCP23008 fonctionne sur une alimentation externe 12V et cela peut être fourni à l'aide d'un adaptateur secteur 12V
Vous pouvez acheter le produit en cliquant dessus. En outre, vous pouvez trouver d'autres excellents articles sur Dcube Store.
Étape 2: connexion matérielle
Les connexions requises (voir les images) sont les suivantes:
- Cela fonctionnera sur I2C. Prenez un shield I2C pour Raspberry Pi et connectez-le délicatement aux broches GPIO de Raspberry Pi.
- Connectez l'une des extrémités du câble I2C au port d'entrée du TCS34903 et l'autre extrémité au blindage I2C.
- Connectez le pot d'entrée du capteur MCP9808 à la sortie du TCS34903 à l'aide d'un câble I2C.
- Connectez le pot d'entrée du MCP23008 à la sortie du capteur MCP9808 à l'aide d'un câble I2C.
- Connectez également le câble Ethernet au Raspberry Pi. Le routeur Wi-Fi peut également être utilisé pour la même chose.
- Ensuite, alimentez le Raspberry Pi à l'aide d'un adaptateur Micro USB et de la carte relais MCP23008 à l'aide d'un adaptateur 12V.
- Enfin, connectez la lumière avec le premier relais et un ventilateur ou un radiateur avec le deuxième relais. Vous pouvez étendre le module ou connecter plus d'appareils avec les relais.
Étape 3: communiquer à l'aide du protocole I2C
Pour activer Raspberry Pi I2C, procédez comme indiqué ci-dessous:
- Dans le terminal, tapez la commande suivante pour ouvrir les paramètres de configuration: sudo raspi-config
- Sélectionnez « Options avancées » ici.
- Sélectionnez "I2C" et cliquez sur "Oui".
- Redémarrez le système pour le configurer en fonction des modifications apportées à l'aide de la commande reboot.
Étape 4: Programmation du module
La récompense de l'utilisation de Raspberry Pi est qu'elle vous offre la possibilité d'opter pour le langage de programmation dans lequel vous souhaitez programmer pour interfacer le dispositif de détection avec Raspberry Pi. Exploitant cet avantage de Raspberry Pi, nous démontrons ici sa programmation en Java.
Pour configurer l'environnement Java, installez la "libraby pi4j" à partir de https://pi4j.com/1.2/index.html Pi4j est une bibliothèque d'entrée/sortie Java pour Raspberry Pi. Une méthode simple et préférée pour installer le "pi4j library" consiste à exécuter la commande ci-dessous directement dans votre Raspberry Pi:
curl -s get.pi4j.com | sudo bash
OU
curl -s get.pi4j.com
importer com.pi4j.io.i2c. I2CBus;importer com.pi4j.io.i2c. I2CDevice; importer com.pi4j.io.i2c. I2CFactory; importer java.io. IOException; class MCP23008 { public static void main(String args) lève une exception { int status, value, value1= 0x00; // Créer un bus I2C Bus I2CBus = I2CFactory.getInstance(I2CBus. BUS_1); // Obtenir le périphérique I2C, l'adresse I2C du MCP23008 est 0x20(32) I2CDevice device = bus.getDevice(0x20); // Obtenir le périphérique I2C, MCP9808 L'adresse I2C est 0x18(24) I2CDevice MCP9808 = bus.getDevice(0x18); // Obtenir le périphérique I2C, l'adresse I2C TCS34903 est 0x39(55) I2CDevice TCS34903 = bus.getDevice(0x39); // Définir le registre du temps d'attente = 0xff (255), le temps d'attente = 2,78 ms TCS34903.write(0x83, (byte)0xFF); // Activer l'accès au canal IR TCS34903.write(0xC0, (byte)0x80); // Définir le registre Atime sur 0x00 (0), nombre maximum = 65535 TCS34903.write(0x81, (byte)0x00); // Mise sous tension, ADC activé, attente activée TCS34903.write(0x80, (byte)0x0B); Thread.sommeil(250); // Lecture de 8 octets de données avec clear/ir data LSB first byte data1 = new byte[8]; // Lecture des données de température byte data = new byte[2]; état = périphérique.read (0x09); // Configuré toutes les broches comme OUTPUT device.write (0x00, (byte)0x00); Thread.sleep(500); while(true){ MCP9808.read(0x05, données, 0, 2); // Convertir les données int temp = ((data[0] & 0x1F) * 256 + (data[1] & 0xFF)); if(temp > 4096) { temp -= 8192; } double cTemp = temp * 0,0625; System.out.printf("La température en Celsius est: %.2f C %n", cTemp); TCS34903.read (0x94, données1, 0, 8); double ir = ((données1[1] & 0xFF) * 256) + (données1[0] & 0xFF) * 1,00; double rouge = ((données1[3] & 0xFF) * 256) + (données1[2] & 0xFF) * 1,00; double vert = ((données1[5] & 0xFF) * 256) + (données1[4] & 0xFF) * 1,00; double bleu = ((données1[7] & 0xFF) * 256) + (données1[6] & 0xFF) * 1,00; // Calculer l'éclairement double éclairement = (-0,32466) * (rouge) + (1,57837) * (vert) + (-0,73191) * (bleu); System.out.printf("L'éclairement est: %.2f lux%n ", éclairement); if (éclairement 30) { valeur = valeur1 | (0x01); } else { valeur = valeur1 & (0x02); } périphérique.write(0x09, (octet)valeur); Thread.sommeil(300); } } }
Étape 5: Création du fichier et exécution du code
- Pour créer un nouveau fichier où le code peut être écrit/copié, la commande suivante sera utilisée: sudo nano FILE_NAME.javaEg. sudo nano MCP23008.java
- Après avoir créé le fichier, nous pouvons entrer le code ici.
- Copiez le code donné à l'étape précédente et collez-le dans la fenêtre ici.
- Appuyez sur Ctrl+X puis "y" pour quitter.
- Compilez ensuite le code à l'aide de la commande suivante: pi4j FILE_NAME.javaEg. pi4j MCP23008.java
- S'il n'y a pas d'erreurs, exécutez le programme à l'aide de la commande mentionnée ci-dessous: pi4j FILE_NAMEEg. pi4j MCP23008.java
Étape 6: Candidatures
Ce système vous permet de contrôler les appareils sans passer par les interrupteurs muraux. Cela a des capacités étendues car les heures d'allumage ou d'extinction des appareils sont programmées automatiquement. Il existe une poignée d'applications de ce module, des maisons aux industries, des hôpitaux, des gares et de nombreux autres endroits qui peuvent être automatisés de manière abordable et facile grâce à ses composants plug-and-play.
Étape 7: Ressources
Pour plus d'informations sur le contrôleur de relais TSL34903, MCP9808 MCP23008, consultez les liens ci-dessous:
- Fiche technique TSL34903
- Fiche technique MCP9808
- Fiche technique MCP23008
Conseillé:
Interrupteur d'éclairage WiFi domotique avec ESP-01 et module de relais avec bouton poussoir: 7 étapes
Interrupteur d'éclairage WiFi domotique avec ESP-01 et module de relais avec bouton-poussoir: Ainsi, dans les instructions précédentes, nous avons programmé un ESP-01 avec Tasmota à l'aide d'un ESP Flasher et connecté l'ESP-01 à nos réseaux wifi. Maintenant, nous pouvons commencer à le programmer pour allumer/éteindre un interrupteur à l'aide du WiFi ou du bouton poussoir.Pour les travaux électriques
Domotique IR utilisant le relais : 6 étapes (avec photos)
Domotique IR utilisant le relais : système domotique à distance infrarouge (Attention : répliquez le projet à vos risques et périls ! Ce projet implique de la haute tension)
DOMOTIQUE BASÉE SUR UN SERVEUR LOCAL MQTT UTILISANT RASPBERRY PI ET LA CARTE NODEMCU : 6 étapes
DOMOTIQUE BASÉE SUR UN SERVEUR LOCAL MQTT UTILISANT RASPBERRY PI ET NODEMCU BOARD : Jusqu'à présent, j'ai réalisé plusieurs vidéos de tutoriel concernant le contrôle des appareils via Internet. Et pour cela, j'ai toujours préféré le serveur Adafruit MQTT car il était facile à utiliser et convivial également. Mais tout cela était basé sur Internet. Cela signifie que nous
[Domotique] Relais de contrôle de partout en utilisant ESP8266 + Blynk: 4 étapes
[Domotique] Contrôler les relais de partout à l'aide de ESP8266 + Blynk: Il existe de nombreuses façons de créer une domotique, certaines sont compliquées, certaines sont faciles, cette instructable je vais montrer comment faire un simple contrôle de relais à l'aide d'ESP-12E avec Blynk. Pour plus de commodité, la conception était un circuit imprimé à un seul côté. Vous pouvez donc faire par vous-même
(DIY) Comment fabriquer une carte domotique à relais ultra mini et simple ESP8266: 17 étapes
(DIY) Comment fabriquer une carte domotique à relais ultra mini et simple ESP8266 : Bonjour à tous, aujourd'hui, je vous dirai comment faire une carte de relais Wifi Mini Esp 12 mesurant seulement 3,9 cm x 3,9 cm ! Cette carte a des fonctionnalités très intéressantes que tout amateur de technologie adorera avoir. J'ai inclus tous les fichiers dans les prochaines étapes. Cette carte