Table des matières:

Switch-it, prise automatique avec mesure du courant en temps réel : 6 étapes
Switch-it, prise automatique avec mesure du courant en temps réel : 6 étapes

Vidéo: Switch-it, prise automatique avec mesure du courant en temps réel : 6 étapes

Vidéo: Switch-it, prise automatique avec mesure du courant en temps réel : 6 étapes
Vidéo: COMMENT UTILISER UN PROGRAMMATEUR ÉLECTRIQUE 2024, Juillet
Anonim
Switch-it, prise automatique avec mesure du courant en temps réel
Switch-it, prise automatique avec mesure du courant en temps réel
Switch-it, prise automatique avec mesure du courant en temps réel
Switch-it, prise automatique avec mesure du courant en temps réel
Switch-it, prise automatique avec mesure du courant en temps réel
Switch-it, prise automatique avec mesure du courant en temps réel
Switch-it, prise automatique avec mesure du courant en temps réel
Switch-it, prise automatique avec mesure du courant en temps réel

J'aime beaucoup l'automatisation, la capacité de contrôler quand quelque chose doit arriver. C'est ce qui m'a donné cette idée: une prise de courant automatique et faite maison. Il peut être utilisé pour planifier quand les lumières doivent être allumées, quand les téléphones doivent être rechargés ou quand un écran doit être alimenté. En plus de tout cela, vous avez la possibilité de voir combien de courant circule dans la prise.

Les composants nécessaires à ce projet sont:

Fournitures

Avant de commencer, voici les éléments dont vous aurez certainement besoin pour construire une boîte Switch-IT comme la mienne. Ces fournitures coûteront environ 50 à 100 euros selon votre région et les prix en vigueur.

Matériel

Électronique

  • Framboise pi 4
  • Carte Micro SD de 16 Go (ou plus)
  • Arduino Uno
  • Décaleur de niveau 5V-3.3V
  • Module relais 5V
  • ACS712 20A - module courant
  • Module récepteur IR 1838 37,9 kHz
  • Télécommande IR (j'utilise une Elegoo)
  • cathode commune RVB
  • 3 * 330Ω résistances
  • bouton poussoir
  • RFID-RC522
  • ACL 1602A-1
  • Prise murale Niko
  • Potmètre 10K Ω
  • Alimentation 230 à 5V - 7A

Câbles

  • Câble USB-B vers USB-A
  • Câble d'alimentation USB-C
  • câble Ethernet

Divers

  • Cavaliers mâle-femelle
  • Cavaliers mâle-mâle
  • Étain à souder
  • Tube rétractable

Pièces spécifiques au boîtier (EN OPTION)

  • 50 * noix et gras
  • coffret métal 40x40x5 cm avec couvercle
  • ruban adhésif double face
  • Entretoises de 6 * 1 cm de haut
  • porte-led
  • Bande Velcro
  • passe-câbles

Logiciel

  • balenaEtcher:
  • Mastic
  • rasbienne
  • Code Visual Studio
  • IDE Arduino

Étape 1: Configurer Rasbian

Configurer Rasbian
Configurer Rasbian
Configurer Rasbian
Configurer Rasbian

Tout d'abord, nous allons flasher Rasbian sur la carte SD. Nous le ferons en utilisant balenaEtcher.

  1. Ouvrir balenaEtcher
  2. Choisissez l'image Rasbian
  3. Sélectionnez votre carte SD
  4. Appuyez sur Flash et attendez quelques minutes jusqu'à ce qu'il clignote

Ajout d'APIPA dans le répertoire de démarrage: nous utiliserons une adresse APIPA pour programmer et configurer les paramètres sur le RPI. Pour faire ça:

  1. Accéder au répertoire de démarrage sur la carte SD
  2. Ouvrez "cmdline.txt"
  3. Ajoutez "169.254.10.1" à la fin du document et enregistrez-le
  4. Ajoutez un fichier appelé "ssh" au répertoire de démarrage (NE DONNER PAS D'EXTENSION À CE FICHIER)
  5. Après avoir fait cela, vous pouvez éjecter la carte SD de votre PC.

Accéder au RPI avec PuTTy

Nous pouvons maintenant brancher la carte SD dans notre RPI, connecter le RPI à votre PC à l'aide d'un câble Ethernet.

Pour nous connecter au RPI, nous utiliserons PuTTy avec notre adresse APIPA.

  1. Ouvrir PuTTy
  2. Remplissez notre adresse APIPA comme nom d'hôte (169.254.10.1)
  3. Assurez-vous que le port est 22 et que SSH est sélectionné
  4. Vous pouvez maintenant ouvrir la connexion
  5. Le nom d'utilisateur par défaut est: pi
  6. Avec mot de passe par défaut: framboise

paramètres raspi-config

Ouvrez raspi-config en utilisant:

sudo raspi-config

  • Changer le mot de passe utilisateur
  • Dans les options de localisation, sélectionnez votre fuseau horaire
  • Configurez le WiFi en utilisant les options réseau puis l'option Wi-Fi où vous devez renseigner votre SSID et votre mot de passe.

Installer Python 3

Dans ce projet, nous utilisons Python, nous allons donc définir la valeur par défaut sur Python3 au lieu de Python2, en utilisant les commandes suivantes

update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1

update-alternatives --install /usr/bin/python python /usr/bin/python3 2

Paquets Python

Nous aurons besoin de quelques packages pour que tout fonctionne correctement, principalement les packages Flask et un pour établir la connexion avec notre base de données. Nous pouvons installer ces packages à l'aide des commandes suivantes:

pip installer le flacon

pip installer Flask_cors pip installer Flask_socketio pip installer Python-mysql-connecton

Base de données

Ensuite, nous allons installer notre système de gestion de base de données (MariaDB) en utilisant:

sudo apt installer mariadb-server

Tapez « Y » et entrez pour continuer. Après quelques secondes, le processus d'installation est terminé et MariaDB est presque prête à être utilisée.

Pour définir, donnez un mot de passe à la base de données, utilisez la commande:

sudo mysql_secure_installation

Appuyez ensuite sur Entrée, car le mot de passe actuel est vide. Appuyez ensuite sur "Y" pour définir un mot de passe. Vous pouvez maintenant saisir le mot de passe de votre choix, assurez-vous de vous en souvenir car nous en avons besoin pour établir une connexion correcte entre le back-end et le front-end.

Maintenant, appuyez 3 fois sur « Y » pour: supprimer les utilisateurs anonymes, interdire la connexion root à distance et supprimer la base de données de test. Enfin, appuyez à nouveau sur « Y » pour recharger les privilèges.

Maintenant, MariaDB et tous les packages nécessaires sont installés avec succès.

Étape 2: Saisir le code et le configurer

Saisir le code et le configurer
Saisir le code et le configurer
Saisir le code et le configurer
Saisir le code et le configurer

Maintenant que nous avons tous les packages installés, nous pouvons récupérer le code.

Le code est disponible sur Github, vous pouvez donc le cloner en utilisant:

git clone

C'est le front-end

git clone

C'est le backend

Installation de la base de données elle-même

Pour installer la base de données, accédez au fichier.sql qui se trouve dans le dossier principal à l'aide des commandes suivantes (assurez-vous de le définir sur votre propre chemin.

mysql

create database switchit quit mysql -u root -p switchit < Your_Path_to_Backend_Repo/switchit.sql

Installation d'Apache

Maintenant que nous avons tout le code et la configuration de la base de données, nous pouvons installer Apache et exécuter notre backend dessus. Nous le ferons en utilisant:

apt-get install apache2 -y

Remplacez ensuite les fichiers dans /var/ww/html par ceux du dossier du dossier frontend.

Si tout s'est bien passé, vous devriez pouvoir vous connecter à votre site Web en utilisant l'adresse APIPA: 169.254.10.1 dans votre navigateur.

Étape 3: Communication Arduino

Communication Arduino
Communication Arduino

Pour lire notre capteur actuel et notre capteur RFID, nous utilisons un arduino, pour ce faire, utilisez le code arduino donné ci-dessous. Téléchargez-le à l'aide d'un câble USB-A vers USB-B et du logiciel arduino IDE. Une fois téléchargé, la partie arduino est terminée.

Maintenant, nous devons trouver le nom du périphérique série sur le PI. Pour ce faire, assurez-vous que dans /boot/config.txt "enable_uart=1" est bien défini. Assurez-vous également que "console=serial0, 115200" est supprimé de cmdline.txt.

Ensuite, vérifiez les ports en utilisant

ls -l /dev

Ensuite, l'un des noms de série devrait être l'Arduino. Remplissez ce nom dans la fonction arduinocom dans app.py

ser = série. Série('/dev/ttyS0', 9600)

Ne le faites que si la communication série ne fonctionne pas.

Étape 4: Câblage de Switch-it

Câblage Switch-it
Câblage Switch-it
Câblage Switch-it
Câblage Switch-it

Le câblage de tout est assez simple, même si vous devez garder à l'esprit les points suivants:

  • Attention à la prise murale, le 230 volts peut être mortel.
  • Assurez-vous d'utiliser un convertisseur de niveau pour la communication entre le RPI et Arduino.
  • Avant de souder le RGB, assurez-vous d'utiliser la broche rouge et verte. Testez cela avant !
  • Testez si rien n'est court-circuité AVANT d'alimenter le circuit.

Étape 5: Exécuter le code

Maintenant que tout est connecté correctement, nous pouvons exécuter notre programme.

Pour qu'il s'exécute automatiquement au démarrage, créez un fichier en utilisant:

sudo nano myscript.service

Collez ensuite (assurez-vous d'utiliser votre propre répertoire app.py:

[Unit]Description=Switchit After=network.target [Service] ExecStart=/usr/bin/python3 -u app.py WorkingDirectory=//changer dans le répertoire app.py// StandardOutput=inherit StandardError=inherit Restart=always User= pi [Installer] WantedBy=multi-user.target

Appuyez ensuite sur "ctrl + X" et copiez-le dans /etc/systemd/system.

Ensuite, la commande suivante pour le faire s'exécuter automatiquement:

sudo systemctl activer myscript.service

Vous pouvez trouver plus d'informations à ce sujet sur le site RaspBerry Pi.

Redémarrez et c'est fait

Redémarrez maintenant votre PI en utilisant:

sudo reboot -h maintenant

C'est ainsi que vous faites Switch-it!

Merci d'avoir suivi, j'espère que cela a été utile. Si vous avez des conseils ou des commentaires, n'hésitez pas à laisser un commentaire.

Étape 6: (FACULTATIF) le Logement

(FACULTATIF) le Logement
(FACULTATIF) le Logement
(FACULTATIF) le Logement
(FACULTATIF) le Logement
(FACULTATIF) le Logement
(FACULTATIF) le Logement
(FACULTATIF) le Logement
(FACULTATIF) le Logement

Vous pouvez construire le logement entièrement à votre guise. J'ai utilisé un boîtier en métal de 40x40x5 cm avec un couvercle. Comme j'en ai utilisé un en métal, j'ai dû percer des trous et utiliser des entretoises pour tout retirer de la plaque de sol. J'ai choisi d'utiliser un point central où le 5V, 3.3V et gnd est disponible. Chaque connexion électrique est soudée avec un morceau de tube rétractable au-dessus. Pour faire la gestion des câbles, j'ai utilisé des coussinets avec des sangles de transport.

Conseillé: