Taula de continguts:
- Subministraments
- Pas 1: configureu Rasbian
- Pas 2: agafar el codi i configurar-lo
- Pas 3: Comunicació Arduino
- Pas 4: Connexió de commutació
- Pas 5: execució del codi
- Pas 6: (OPCIONAL) l'habitatge
Vídeo: Switch-it, sortida automàtica amb mesura de corrent en temps real: 6 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:12
M'agrada molt l'automatització, la capacitat de controlar quan ha de passar alguna cosa. Això és el que em va fer sorgir aquesta idea: una presa automàtica de sortida. Es pot utilitzar per planificar quan cal encendre els llums, quan cal carregar els telèfons o quan cal alimentar una pantalla. A més de tot això, podeu veure la quantitat de corrent que circula per la sortida.
Els components necessaris per a aquest projecte són:
Subministraments
Abans de començar, aquestes són les coses que definitivament necessiteu per construir una caixa Switch-IT com la meva. Aquests subministraments costaran entre 50 i 100 euros, segons la vostra regió i els preus actuals.
Maquinari
Electrònica
- Raspberry pi 4
- Targeta micro SD de 16 GB (o més)
- Arduino Uno
- Canviador de nivell 5V-3.3V
- Mòdul de relé de 5V
- ACS712 20A: mòdul actual
- Mòdul de receptor IR de 37,9 kHz de 1838
- Comandament IR (faig servir un Elegoo)
- càtode comú RGB
- Resistències de 3 * 330Ω
- polsador
- RFID-RC522
- LCD 1602A-1
- Presa de paret Niko
- Potòmetre de 10K Ω
- Alimentació de 230 a 5V - 7A
Cables
- Cable USB-B a USB-A
- Cable d'alimentació USB-C
- Cable Ethernet
Diversos
- Jumperwires masculí-femení
- Jumperwires masculí-masculí
- Llauna de soldar
- Tub de contracció
Parts específiques del cas (OPCIONAL)
- 50 * fruits secs i negreta
- caixa metàl·lica de 40x40x5 cm amb tapa
- cinta de doble cara
- Espaciadors de 6 * 1cm d'alçada
- portador de leds
- Cinta de velcro
- guies de cable
Programari
- balenaEtcher:
- MUNTATGE
- rasbian
- Visual Studio Code
- IDE Arduino
Pas 1: configureu Rasbian
Primer de tot, llançarem Rasbian a la targeta SD. Ho farem amb balenaEtcher.
- Obre balenaEtcher
- Trieu la imatge Rasbian
- Seleccioneu la vostra targeta SD
- Premeu Flash i espereu uns minuts fins que parpellegi
Afegir APIPA al directori d’arrencada: utilitzarem una adreça APIPA per programar i configurar els paràmetres a l’RPI. Fer això:
- Accediu al directori d’arrencada de la targeta SD
- Obre "cmdline.txt"
- Afegiu "169.254.10.1" al final del document i deseu-lo
- Afegiu un fitxer anomenat "ssh" al directori d'arrencada (NO DONAR UNA EXTENSIÓ A AQUEST FITXER)
- Un cop fet això, podeu expulsar la targeta SD del vostre PC.
Accediu a l'RPI mitjançant PuTTy
Ara podem connectar la targeta SD al nostre RPI, connectar-lo al vostre PC mitjançant un cable Ethernet.
Per connectar-nos al RPI utilitzarem PuTTy amb la nostra adreça APIPA.
- Obriu PuTTy
- Empleneu la nostra adreça APIPA com a nom d'amfitrió (169.254.10.1)
- Assegureu-vos que el port és 22 i que SSH està seleccionat
- Ara podeu obrir la connexió
- El nom d'usuari per defecte és: pi
- Amb contrasenya per defecte: gerd
configuració de raspi-config
Obriu raspi-config mitjançant:
sudo raspi-config
- Canvieu la contrasenya d’usuari
- A les opcions de localització, seleccioneu la vostra zona horària
- Configureu el WiFi mitjançant les opcions de xarxa i, a continuació, l’opció Wi-Fi, on heu d’emplenar el vostre SSID i la vostra contrasenya.
Instal·leu Python 3
En aquest projecte estem utilitzant Python, per tant establirem el valor predeterminat a Python3 insteat de Python2, mitjançant les ordres següents
update-alternatives --install / usr / bin / python python /usr/bin/python2.7 1
actualització-alternatives --install / usr / bin / python python / usr / bin / python3 2
Paquets Python
Necessitarem uns quants paquets perquè tot funcioni correctament, principalment els paquets Flask i un per establir connexió amb la nostra base de dades. Podem instal·lar aquests paquets mitjançant les ordres següents:
pip instal·lar Flask
pip install Flask_cors pip install Flask_socketio pip install Python-mysql-connecton
Base de dades
A continuació, instal·larem el nostre sistema de gestió de bases de dades (MariaDB), ho farem utilitzant:
sudo apt install mariadb-server
Escriviu "Y" i Retorn per continuar. Al cap d’uns segons, el procés d’instal·lació s’ha completat i el MariaDB ja està a punt d’utilitzar-se.
Per definir, doneu a la base de dades una contrasenya, utilitzeu l'ordre:
sudo mysql_secure_installation
A continuació, premeu Retorn, ja que la contrasenya actual està buida. A continuació, premeu "Y" per establir una contrasenya; ara podeu emplenar la contrasenya que vulgueu. Assegureu-vos de recordar-la perquè la necessitem per establir una connexió correcta entre la part posterior i la part frontal.
Ara, premeu "Y" 3 vegades per: eliminar usuaris anònims, no permetre l'accés root a distància i eliminar la base de dades de prova. Finalment, torneu a prémer “Y” per tornar a carregar els privilegis.
Ara MariaDB i tots els paquets necessaris estan instal·lats amb èxit.
Pas 2: agafar el codi i configurar-lo
Ara que tenim tots els paquets instal·lats, podem agafar el codi.
El codi està disponible a Github perquè pugueu clonar-lo mitjançant:
git clone
Aquest és el frontend
git clon
Aquest és el backend
Instal·lació de la pròpia base de dades
Per instal·lar la base de dades, aneu al fitxer.sql que es troba a la carpeta del backend mitjançant les ordres següents (assegureu-vos d’establir-la al vostre propi camí d'accés.
mysql
crear base de dades switchit sortir de mysql -u root -p switchit <Your_Path_to_Backend_Repo / switchit.sql
Instal·lació d’Apache
Ara que tenim tot el codi i la configuració de la base de dades, podem instal·lar Apache i executar-lo. Ho farem mitjançant:
apt-get install apache2 -y
A continuació, substituïu els fitxers de / var / ww / html pels de la carpeta de la carpeta frontal.
Si tot va bé, hauríeu de poder connectar-vos al vostre lloc web mitjançant l’adreça APIPA: 169.254.10.1 al navegador.
Pas 3: Comunicació Arduino
Per llegir el nostre sensor actual i el nostre sensor RFID, estem utilitzant un arduino, per fer-ho, utilitzeu el codi arduino que es mostra a continuació. Pengeu-lo mitjançant un cable USB-A a USB-B i el programari IDE arduino. Quan es penja, la part arduino està acabada.
Ara hem de trobar el nom del dispositiu sèrie al PI. Per fer-ho, assegureu-vos que a /boot/config.txt "enable_uart = 1" estigui ajustat correctament. Assegureu-vos també que "console = serial0, 115200" s'elimina de cmdline.txt.
A continuació, comproveu els ports mitjançant
ls -l / dev
Aleshores, un dels noms de sèrie hauria de ser l’Arduino. Empleneu aquest nom a la funció arduinocom a app.py
ser = serial. Serial ('/ dev / ttyS0', 9600)
Feu-ho només si la comunicació en sèrie no funciona.
Pas 4: Connexió de commutació
Connectar-ho tot és bastant senzill, tot i que heu de tenir en compte les coses següents:
- Aneu amb compte amb la presa de corrent, ja que 230 volts poden ser mortals.
- Assegureu-vos d’utilitzar un convertidor de nivell per a la comunicació entre el RPI i Arduino.
- Abans de soldar el RGB, assegureu-vos que utilitzeu el pin vermell i verd. Proveu-ho prèviament.
- Comproveu si no hi ha cap curtcircuit ABANS d’alimentar el circuit.
Pas 5: execució del codi
Ara tot està connectat correctament i podem executar el nostre programa.
Per fer-lo funcionar automàticament a l'inici, creeu un fitxer mitjançant:
sudo nano myscript.service
A continuació, enganxeu-lo (assegureu-vos d'utilitzar el vostre propi directori app.py:
[Unitat] Descripció = Switchit After = network.target [Servei] ExecStart = / usr / bin / python3 -u app.py WorkingDirectory = // canvia al directori app.py // StandardOutput = hereta StandardError = hereta Reinicia = sempre Usuari = pi [Instal·lar] WantedBy = multi-usuari.target
A continuació, premeu "ctrl + X" i copieu-lo a / etc / systemd / system.
A continuació, l'ordre follwing perquè s'executi automàticament:
sudo systemctl habilita myscript.service
Podeu trobar més informació al respecte al lloc RaspBerry Pi.
Reinicieu i llest
Ara reinicieu PI mitjançant:
sudo reiniciar -h ara
Així és com feu Switch-it.
Gràcies per seguir-ho, espero que sigui útil. Si teniu consells o suggeriments, no dubteu a deixar un comentari.
Pas 6: (OPCIONAL) l'habitatge
Podeu construir l’habitatge completament al vostre gust. He utilitzat una caixa metàl·lica de 40x40x5 cm amb tapa. Com que en feia servir un de metall, vaig haver de foradar i fer servir espaciadors per treure-ho tot de la placa de terra. Vaig optar per utilitzar un punt central on estiguessin disponibles 5V, 3,3V i gnd. Totes les connexions elèctriques es solden amb un tros de tub retràctil a sobre. Per fer la gestió de cables he utilitzat coixinets amb tirants.
Recomanat:
Mesura del temps (rellotge de cinta mètrica): 5 passos (amb imatges)
Mesura del temps (Tape Measure Clock): per a aquest projecte, nosaltres (Alex Fiel i Anna Lynton) vam agafar una eina de mesura diària i la vam convertir en un rellotge. El pla original era motoritzar una cinta mètrica existent. En fer-ho, vam decidir que seria més fàcil crear el nostre propi intèrpret d'ordres per acompanyar
La diferència entre (corrent altern i corrent continu): 13 passos
La diferència entre (corrent altern i corrent continu): tothom sap que l’electricitat és majoritàriament corrent continu, però, què us sembla un altre tipus d’electricitat? Coneixeu Ac? Què significa AC? Es pot utilitzar llavors DC? En aquest estudi coneixerem la diferència entre els tipus d’electricitat, fonts, aplicacions
Fer un rellotge amb M5stick C mitjançant Arduino IDE - Rellotge RTC en temps real amb M5stack M5stick-C: 4 passos
Fer un rellotge amb M5stick C mitjançant Arduino IDE | Rellotge en temps real RTC amb M5stack M5stick-C: Hola, nois en aquest instructable, aprendrem a fer un rellotge amb la placa de desenvolupament m5stick-C de m5stack mitjançant Arduino IDE. Així, m5stick mostrarà data, hora i amp; setmana del mes a la pantalla
Com fer un rellotge en temps real amb la pantalla Arduino i TFT - Arduino Mega RTC amb pantalla TFT de 3,5 polzades: 4 passos
Com fer un rellotge en temps real amb pantalla Arduino i TFT | Arduino Mega RTC amb pantalla TFT de 3,5 polzades: visiteu el meu canal de Youtube. Introducció: - En aquest post vaig a fer "Rellotge en temps real" amb LCD TFT tàctil de 3,5 polzades, Arduino Mega Mòdul RTC 2560 i DS3231 … Abans de començar … comproveu el vídeo del meu canal de YouTube … Nota: - Si utilitzeu Arduin
Registre de dades MPU-6050 / A0 en temps real amb Arduino i Android: 7 passos (amb imatges)
Registre de dades MPU-6050 / A0 en temps real amb Arduino i Android: m'ha interessat utilitzar l'Arduino per a l'aprenentatge automàtic. Com a primer pas, vull crear una pantalla i registre de dades en temps real (o bastant a prop) amb un dispositiu Android. Vull capturar dades de l’acceleròmetre de la MPU-6050, així que dissenyo