Taula de continguts:

Domòtica econòmica i eficaç amb Raspberry Pi: 11 passos (amb imatges)
Domòtica econòmica i eficaç amb Raspberry Pi: 11 passos (amb imatges)

Vídeo: Domòtica econòmica i eficaç amb Raspberry Pi: 11 passos (amb imatges)

Vídeo: Domòtica econòmica i eficaç amb Raspberry Pi: 11 passos (amb imatges)
Vídeo: И ЭТО ТОЖЕ ДАГЕСТАН? Приключения в долине реки Баараор. БОЛЬШОЙ ВЫПУСК (Путешествие по Дагестану #3) 2024, Desembre
Anonim
Domòtica econòmica i eficaç amb Raspberry Pi
Domòtica econòmica i eficaç amb Raspberry Pi
Domòtica econòmica i eficaç amb Raspberry Pi
Domòtica econòmica i eficaç amb Raspberry Pi
Domòtica econòmica i eficaç amb Raspberry Pi
Domòtica econòmica i eficaç amb Raspberry Pi

Sempre he volgut poder controlar els llums sense fils, però les opcions comercials solen ser costoses. Els llums Philips Hue costen uns 70 dòlars i els llums connectats a WiFi també són cars. Aquest tutorial us explicarà com controlar fins a cinc llums / làmpades / fils de llum de Nadal per uns 50 dòlars i es pot ampliar per incloure-hi també més llums.

Pas 1: què necessiteu

El que necessitareu
El que necessitareu

Materials:

Raspberry Pi Zero W (edició sense fils)

Targeta Micro SD (com a mínim 4 GB)

Cable / convertidor Mini HDMI a HDMI (hi ha una diferència entre mini i micro, assegureu-vos d’aconseguir el correcte!)

Cable / convertidor de micro USB a USB

Teclat USB

Nota: Vaig obtenir un kit d’inici Raspberry Pi Zero W d’Amazon que venia amb Raspberry Pi Zero W, targeta SD, estoig, cable d’alimentació, convertidor HDMI i convertidor USB. Per només 30 dòlars, és una bona opció (enllaç)

Podeu utilitzar un model diferent de Raspberry Pi, però el Raspberry Pi ha de tenir algun tipus de connexió a Internet i el Pi Zero W és l’opció més barata.

Preses remotes: les he fet servir

Transmissor i receptor de RF (Nota: la freqüència del transmissor / receptor ha de coincidir amb la freqüència de les preses remotes): he utilitzat aquests

Filferro per a antena (he utilitzat filferro de coure de nucli sòlid de calibre 22, pot funcionar un altre fil)

Taula de pa, cables de pont, capçalera home a home de 40 pins

Programari:

Sistema operatiu Raspberry Pi (descarregar Raspbian Desktop)

Imager de disc Etcher (per escriure el sistema operatiu Pi a la targeta SD)

Eines:

Soldador

Ordinador per descarregar Pi OS i Etcher

Pas 2: configureu els punts de venda

Configureu els punts de venda
Configureu els punts de venda
Configureu els punts de venda
Configureu els punts de venda

Comenceu endollant els endolls a una presa de corrent. Seguiu les instruccions incloses per configurar-les i connecteu els llums / electrodomèstics. Assegureu-vos que el comandament està correctament emparellat i que controla els endolls.

Pas 3: configureu un compte de PubNub

PubNub és un servidor d’internet gratuït que us permet comunicar-vos entre dispositius a qualsevol part del món. L'escriptura python rep missatges d'una pàgina web i utilitza la informació del missatge per encendre o apagar els llums. Podeu inscriure-us al vostre compte gratuït aquí. Un cop us hàgiu registrat, inicieu la sessió al vostre compte. Això us portarà a una pàgina de gestió d'aplicacions. Feu clic a "Crea una aplicació nova". Doneu-li un nom a l'aplicació i seleccioneu-lo a la llista d'aplicacions (si aquesta és la vostra primera aplicació, serà l'única). Això us portarà a la pàgina de claus de l'aplicació. Feu clic a "Conjunt de claus de demostració" i hauríeu de veure tres claus diferents. Mantingueu aquesta pàgina activada, necessitareu aquestes claus més endavant. Ara que ja teniu el vostre compte de PubNub, podeu configurar el vostre raspberry pi.

Pas 4: prepareu Raspberry Pi

Baixeu Etcher i el sistema operatiu Raspberry Pi al vostre ordinador (enllaços a la llista de parts)

Instal·leu Etcher a l'ordinador i descomprimiu (si cal) el sistema operatiu Raspberry Pi. Introduïu la targeta Micro SD a l'ordinador i obriu Etcher. Feu clic a "Selecciona imatge" i aneu al fitxer descomprimit Raspberry Pi OS. Seleccioneu-lo i feu clic a "Selecciona unitat" i seleccioneu la vostra targeta micro SD de la llista. Feu clic a "Flash" i espereu a completar Etcher. Un cop finalitzat Etcher, traieu la targeta SD de l'ordinador (Etcher l'expulsa automàticament) i inseriu-la al Raspberry Pi. En aquest moment, haureu de connectar el vostre Raspberry Pi a un monitor amb el convertidor HDMI. Connecteu un teclat (i un ratolí si teniu un concentrador multi-USB) i connecteu el cable d’alimentació. Hi ha dos ports micro USB. Un és per alimentar, l’altre és un port USB real. El més proper al final del Pi és el poder, mentre que el més proper al mig és el USB. El vostre raspberry pi ara començarà a arrencar. Pot reiniciar-se unes quantes vegades durant la primera arrencada, però això és normal. Un cop s'hagi iniciat el raspberry pi, connecteu-lo al vostre WiFi. Després de connectar-lo a WiFi, és possible que utilitzeu un servidor SSH, però ara em resulta més fàcil utilitzar la GUI. Obriu una finestra de terminal i introduïu aquestes ordres:

sudo pip3 instal·la 'pubnub == 3.9.0'

cd git clon git: //git.drogon.net/wiringPi clon git

clon sudo git https://github.com/timleland/rfoutlet.git / var / www / rfoutlet

sudo chown root.root / var / www / rfoutlet / codesend sudo chmod 4755 / var / www / rfoutlet / codesend

cablejat cdPi

./ construir

Ara, obriu el navegador de fitxers Raspberry Pi i hauríeu de veure la carpeta pi-home-automatització. Feu-hi doble clic i hauríeu de veure un fitxer anomenat RFControl.py. Copieu-lo (feu clic i seleccioneu "Copia") i torneu a la carpeta pi i enganxeu-lo allà.

Apagueu el raspberry pi (ja sigui al menú o executant sudo poweroff des de la línia d'ordres) i desconnecteu-lo un cop el llum verd deixi de parpellejar.

Pas 5: Creació del circuit

Creació del circuit
Creació del circuit
Creació del circuit
Creació del circuit
Creació del circuit
Creació del circuit

Ara és hora de crear el circuit. He utilitzat una taula de tall, però podeu fer-ho com vulgueu.

En primer lloc, hem de crear una antena per al transmissor de RF. Aquest tutorial instructable explica com fer una antena per a un transmissor de RF. Seguiu les instruccions i, a continuació, soldeu-lo al pin d'antena del transmissor (en el que he utilitzat tenia l'etiqueta ANT) amb el costat més curt més proper al transmissor

Connecteu el transmissor

El transmissor utilitza aquests pins:

DADES: GPIO 17, pin físic 11

VCC: Raspberry Pi 5v, pin físic 2

GND: Raspberry Pi GND, pin físic 6

Connecteu el receptor

El receptor utilitza aquests pins:

GND: Raspberry Pi GND, pin físic 9

VCC: Raspberry Pi 5v, pin físic 4

DADES: GPIO 27, pin físic 13 (Hi ha dos pins de dades al receptor que he utilitzat i he utilitzat el més proper a VCC)

Pas 6: Obteniu els codis RF

Obteniu els vostres codis RF
Obteniu els vostres codis RF

Un cop el circuit estigui connectat al vostre Raspberry Pi, comproveu-lo dues vegades per assegurar-vos que tot estigui al seu lloc i torneu a engegar-lo. Un cop encès, obriu un terminal i escriviu

sudo / var / www / rfoutlet / RFSniffer

A continuació, obriu el programa RFControl. Posar la finestra del terminal i la finestra del programa una al costat de l’altra pot ser útil en el següent pas.

Necessiteu el comandament a distància que s’inclou al kit de sortida ara. Mantingueu-lo a prop del receptor i premeu cada botó individual. En prémer un botó, veureu dos números impresos a la pantalla. Un d’ells serà un codi de sis o set dígits i l’altre un codi de 3 dígits. Haureu d’editar el diccionari de codis del programa. Introduïu el codi de 7 dígits al lloc del commutador corresponent al programa i, per a cada botó d’encès / apagat, introduïu el codi de 3 dígits (aquesta és la longitud) a la len del commutador corresponent al programa.

Per exemple, si l’interruptor 1 activat té un codi 1234567, un codi apagat 7654321 i una longitud de 890, el codi tindria aquest aspecte:

codis = {

'switch1': {'on': 1234567, # This is switch 1 on 'off': 7654321, #this is switch 1 off 'len': 890, #this is switch 1 code length}, 'switch2': {… }, …}

Repetiu-ho per a cada botó. Mentre editeu aquest fitxer, canvieu les cadenes que diuen "YOUR-SUB-KEY" a la vostra clau de subscripció de PubNub i "YOUR-PUB-KEY" a la vostra clau de publicació.

Un cop s'hagi gravat cada botó, podeu continuar amb la secció següent.

Pas 7: Execució del programa

Execució del programa
Execució del programa

Ara que teniu tots els codis, aneu a aquesta pàgina de GitHub (a l'ordinador, no raspberry pi) i feu clic al botó verd que diu "Clona o descarrega" i, a continuació, feu clic a "Descarrega ZIP". Un cop descarregat aquest fitxer, descomprimiu-lo i obriu la carpeta. Obriu el fitxer anomenat main.js. Haureu d'introduir les vostres claus de subscripció i publicació al programa substituint "YOUR-PUB-KEY" per la vostra clau de publicació i "YOUR-SUB-KEY" amb la vostra clau de subscripció.

A continuació, torneu al vostre Raspberry Pi i entreu

python3 RFControl.py

Quan imprimiu "A punt", torneu al vostre ordinador i obriu el fitxer index.html en un navegador web fent un clic oposat, seleccioneu "Obre amb" i seleccioneu el navegador preferit. Hauríeu de veure 2 columnes de 5 botons, amb els noms dels commutadors entre ells. Premeu qualsevol dels botons. Si controla correctament el sòcol, fantàstic! Si no, aquí teniu algunes coses a provar:

  1. Assegureu-vos que el Raspberry Pi rebi missatges. S’ha d’imprimir a la pantalla sempre que rep un missatge de la pàgina web. Si no, assegureu-vos que les vostres claus de subscripció / publicació són correctes.
  2. Si el Raspberry Pi rep missatges, assegureu-vos que els codis de RF són correctes. Assegureu-vos que els punts de venda estan emparellats amb el comandament a distància, que el control remot els pot controlar i que els codis que heu introduït al programa són correctes.
  3. Si els codis de RF són correctes, assegureu-vos que el vostre Raspberry Pi estigui a l’abast dels punts de venda. Si comencen a funcionar després d’apropar-la, potser haureu de tornar a fer l’antena.
  4. Si encara no funcionen, digueu-me el vostre problema als comentaris i intentaré ajudar-vos-hi.

Pas 8: executar-se a l'inici

Per fer que el vostre programa Python s'executi a l'inici, introduïu-lo al vostre terminal de raspberry pi:

crontab -e

A continuació, aneu a la part inferior del fitxer i introduïu això:

@reboot python3 /home/pi/RFControl.py &

Això farà que el vostre script Python s’executi cada cop a l’inici. Ara reinicieu el Raspberry Pi.

Pas 9: afegir més commutadors

Addició de més commutadors
Addició de més commutadors

Si voleu afegir més punts de venda, seguiu aquestes instruccions:

Obriu RFControl.py al vostre Raspberry Pi i afegiu un nou commutador al diccionari de commutadors.

Exemple:

commutadors = {

… altres commutadors … "NAME-OF-SWITCH": {'on': xxxxxxx, 'off': aaaaaaa, 'len': zzz,},}

A continuació, afegiu un botó nou a la vostra aplicació web editant la variable switches de main.js a l'ordinador.

Exemple:

var commutadors = [… antics commutadors … ['NOM-A-DISPLAY', 'NOM-DE-INTERRUPTOR'],];

Substituïu NAME-TO-DISPLAY pel nom que vulgueu que es mostri a la pàgina web i NAME-OF-SWITCH a tots dos fitxers per qualsevol cosa que vulgueu. Deu ser únic dels altres.

Pas 10: Prendre-ho més enllà

Portant-ho més enllà
Portant-ho més enllà

PubNub és compatible amb moltes plataformes diferents, cosa que significa que podeu enviar missatges des de gairebé qualsevol dispositiu. He utilitzat un kit de veu Raspberry Pi AIY i PubNub per enviar ordres amb la meva veu, però pot ser que aquest sigui el tema d’un instructable posterior. Gràcies per llegir el meu Instructable, espero que sigui útil.

Pas 11: Crèdits

Gràcies a Tim Leland pel tutorial sobre la configuració del transmissor de RF: tutorial

Gràcies a diy_bloke pel tutorial sobre la creació d’una antena: tutorial

Gràcies també a qualsevol altra persona que hagi publicat tutorials en línia que he vist per obtenir ajuda.

Recomanat: