Índice:

Cortinas automatizadas do Windows: 6 etapas (com imagens)
Cortinas automatizadas do Windows: 6 etapas (com imagens)

Vídeo: Cortinas automatizadas do Windows: 6 etapas (com imagens)

Vídeo: Cortinas automatizadas do Windows: 6 etapas (com imagens)
Vídeo: Como Limpar e Liberar Espaço no Disco Local C do Windows / SSD / HD 2024, Julho
Anonim
Image
Image
Cortinas automatizadas para janelas
Cortinas automatizadas para janelas
Cortinas automatizadas para janelas
Cortinas automatizadas para janelas

Uma palavra a frente

Já vi muitos tutoriais sobre como automatizar persianas e persianas manuais, bem neste vamos automatizar persianas elétricas. Abordaremos cortinas elétricas movidas por motores elétricos de corrente contínua (DC) que abrem ou fecham invertendo a polaridade da corrente.

Embora se você comprar persianas elétricas você obterá alguma automação, há motivos para fazer a automação por conta própria, como:

* você pode ter apenas um interruptor perto deles para controle para cima / para baixo

* é mais barato (algumas empresas oferecem automação avançada por muito dinheiro extra)

* mais flexível, você pode programá-los para abrir ou fechar em várias circunstâncias, aprenderemos como fazer um servidor web em python que se conectará à interface bluetooth das cortinas e exporá uma API para controlar as cortinas, também estaremos integrando com o thingspeak e aí você pode fazer coisas como controlar as cortinas em um cronograma ou controlá-lo por meio de entrada de sensor

Este será um tutorial intermediário, você precisará de habilidades como soldagem, programação Arduino, conhecimento eletrônico básico e um pouco de como instalar serviços em um servidor, executando-os e configurando-os.

Se você gostou dos vídeos do youtube, pode se inscrever aqui.

Etapa 1: Coisas necessárias

Coisas Necessárias
Coisas Necessárias
Coisas Necessárias
Coisas Necessárias

Dica: amplie as fotos para ver os rótulos descritivos nelas

Partes:

1. tipo arduino pro mini 16Mhz 5V (eBay) 2 $

2. Módulo bluetooth HC-05 (eBay) 3,3 $

3. 5 V Relés de dois canais (eBay) 1.6 $

4. Tranzistor NPN que é avaliado para pelo menos alguns amperes, usei Tip142T <1 $

5. 220 ohms, rezistor de 0,25 W <1 $

6. diodo, 1N4004 <1 $

7. fios para conectar as peças <1 $

8. PCB (eBay) <1 $ por peça

9. 2 x KF301-2P conector de parafuso (eBay) <1 $ por peça

10. fios de jumper macho-fêmea (eBay) 1,2 $ x 2 por um monte

11. Regulador L7805CV 5V (eBay) <1 $ por peça

12. 5,5 mm DC Power Plug Jack Socket macho e fêmea (eBay) <1 $ por peça

13. Tubulação termorretrátil ou fita isolante

14. Fonte de alimentação, a fonte deve ser classificada para 12V e 2-3A.

Eu recuperei o meu de um carregador 12 V 2 A (eBay) 3,2 $

14. Bloco de terminais (eBay) 15c

15. porta-fusíveis (Aliexpress) 1 $ por peça

16. fusível (eBay) <1 $ por peça

17. conectores pcb masculino e feminino (eBay) <1 $ para o que precisamos

18. Cabo de alimentação AC

19. invólucro de caixa de plástico, o meu tinha 6 x 19 cm

Ferramentas:

1. Ferro de soldar com solda

2. Cortador de fio

3. Várias chaves de fenda

4. Cortador

5. furadeira e broca de 8,5 mm

6. USB para adaptador FTDI serial FT232RL para programar o arduino pro mini

7. Laptop com ArduinoIDE instalado para programar o arduino

8. Mais leve se você usar tubulação termorretrátil

9. Um smartphone capaz de conexão bluetooth (eu uso um Android no exemplo) com um software bluetooth instalado

10. Opcional: lupa, multímetro, alicate

Etapa 2: preparações

Preparativos
Preparativos
Preparativos
Preparativos
Preparativos
Preparativos

Escolhendo a fonte de alimentação e a caixa de plástico

A primeira coisa é determinar quanta corrente e qual tensão os motores das cortinas operam.

Isso pode ser feito lendo as especificações ou fazendo medições com o multímetro. Normalmente eles operam 12 V e 1-3 Amps (os meus são 2,5 A e 12 V). Multiplique a corrente por quantos deles você precisa para dirigir simultaneamente (eu dirijo dois) para descobrir a corrente máxima necessária. Você deve encontrar uma fonte de alimentação que seja exatamente a mesma voltagem e idealmente a mesma amperagem ou um pouco mais alta.

Nesta etapa, eu trapaceei um pouco, usando uma fonte de alimentação de 12 V e 2,5 A para acionar dois motores de 12 V e 2,5 A, o que significa que os motores usam o dobro da potência que a fonte de alimentação pode fornecer. Mas, usando uma técnica chamada PWM (verifique o link para ver mais detalhes), consegui acionar o motor simultaneamente em uma velocidade menor.

O motivo pelo qual fiz isso é para economizar espaço na caixa (escolhi uma caixa menor).

O invólucro de plástico precisará abrigar a fonte de alimentação, dois relés, uma pequena placa de circuito impresso com os componentes eletrônicos e os fios, então escolha o tamanho para que tudo se encaixe.

Minha fonte de alimentação tinha um invólucro de plástico que rasguei com uma ferramenta dremel, cortei os fios existentes e, assim, consegui uma fonte de alimentação pequena e barata adequada para o meu projeto (ver fotos).

Prepare os cabos do motor

Você precisa calcular o comprimento dos cabos do motor, ou seja, até chegarem à caixa de controle que estamos construindo. As chances são de que os cabos existentes não sejam longos o suficiente e você precisará estendê-los, descascar os dois fios (o cabo das lâminas existentes e os cabos de extensão) em uma extremidade, colocar tubos termorretráteis, soldar os fios e aplicar calor com um mais leve para isolar.

No final do cabo de extensão, haverá um conector macho de 5,5 mm DC Power Plug. Você precisa soldar os dois fios no soquete e o resultado final ficará como nas fotos.

Inserindo o plugue de alimentação DC fêmea de 5,5 mm na caixa

Usando a máquina de perfuração, faça dois orifícios grandes o suficiente para que o macaco deslize. Insira os plugues de alimentação, aparafuse usando as porcas. Em seguida, solde os fios pretos e vermelhos grossos em cada uma das entradas dos conectores e, em seguida, isole-os usando um tubo termorretrátil. Os fios devem ser longos o suficiente para entrar facilmente no bloco de terminais, mas não para ocupar muito espaço.

Conectando o porta-fusível com o fusível

Em um lado da caixa, faça um pequeno orifício para colocar uma pequena porca que segura o porta-fusível. Em seguida, usando o alicate, uma chave de fenda e a porca, aperte bem na posição. O porta-fusível deve estar próximo ao local da fonte de alimentação e deve estar dentro da caixa. Mais uma vez verifique as fotos.

Etapa 3: Construindo o PCB com eletrônicos

Construindo o PCB com eletrônicos
Construindo o PCB com eletrônicos
Construindo o PCB com eletrônicos
Construindo o PCB com eletrônicos
Construindo o PCB com eletrônicos
Construindo o PCB com eletrônicos

A placa de circuito impresso conterá o microcontrolador, a comunicação bluetooth, o módulo RTC, um tranzistor de potência com um diodo para proteção e um pequeno rezistor, conectores de fios e um regulador de 5V.

Anexei o esquema fritzig para que as coisas sejam fáceis. A primeira imagem representa a imagem exportada do esquema e também anexei sketch.fzz (o arquivo original, você pode abri-lo com esta ferramenta)

Etapas de soldagem:

1. corte os conectores PCB fêmea, existem dois conectores de 12 pinos para o microcontrolador, há também um conector de 6 pinos para o bluetooth e um outro conector de 12 pinos no lado direito do microcontrolador e um conector de dois pinos para o negativo do relé e poder positivo

2. Depois que todos os conectores são cortados, eles devem ser soldados na parte traseira do PCB

3. Solde os dois conectores KF301-2P

4. Coloque o regulador L7805CV 5V no PCB. Dobre suas pernas e solde do outro lado, em seguida, corte as pernas em excesso com o cortador de cabos

5. Solde o tranzistor NPN Tip142T e o diodo de proteção 1N4004, corte as pernas em excesso após

6. Solde o rezistor de 220 ohms entre o pino digital 5 correspondente e o pino da base do tranzistor

7. Solde os fios mais grossos entre o tranzistor e os plugues KF301-2P (vermelho e preto conforme marcados nas fotos)

8. Solde todos os fios finos vermelho (+), preto (-) e branco (sinal) de acordo com o esquema de Fritzig

9. Solde os pinos machos no microcontrolador, você precisa de dois 12 pinos machos nas laterais

10. Faça as conexões entre cada um dos pinos fêmeas correspondentes do lado direito do microcontrolador (está melhor explicado nas fotos). As conexões serão feitas usando apenas solda (os pinos serão fechados)

11. Opcional: com a lupa inspecione as soldas para curtos-circuitos e verifique se os fios estão devidamente soldados na parte traseira do PCB, também você pode verificar com o multímetro (configuração de resistência) se há um curto-circuito entre positivo e conexões negativas. Outro teste é ligar o circuito sem o microcontrolador bluetooth

12. Coloque o microcontrolador e o bluetooth HC-05 no pcb

Etapa 4: Fiação e montagem

Fiação e Montagem
Fiação e Montagem
Fiação e Montagem
Fiação e Montagem

Agora temos nosso pcb pronto, nossa caixa de plástico pronto, os cabos das cortinas e nossos outros componentes preparados. Tudo o que precisamos fazer agora é conectar o sistema.

1. através do orifício lateral superior da caixa, insira o cabo de alimentação CA, descasque o cabo e solde-o na fonte de alimentação (se a fonte de alimentação tiver parafusos, aparafuse-os)

2. Usando um fio vermelho, solde a saída (+) da fonte de alimentação em um dos fusíveis, use um pouco de tubo termorretrátil para esconder o fio desencapado exposto.

3. soldar outro fio vermelho ao outro lado do fusível e aplicar tubo de contração, o outro lado do fio deve ser inserido e aparafusado na entrada (+) do conector de parafuso KF301-2P

4. solde um fio preto no lado da saída (-) da fonte de alimentação e, em seguida, aparafuse-o no conector de parafuso KF301-2P da entrada da placa de circuito impresso

4. Usando conectores de placa de ensaio macho-fêmea, conecte o relé positivo e negativo aos conectores fêmea positivo e negativo da pcb. Também conecte os pinos 8 e 9 do microcontrolador (usando os conectores mãe do pcb à esquerda do PCB) aos pinos do gatilho do relé

5. conecte um lado do bloco de terminais aos fios vermelhos e pretos que vêm dos conectores de plugue de alimentação CC fêmea de 5,5 mm. Se você tiver mais de um conector fêmea de 5,5 mm como eu, todos os fios vermelhos irão terminar no lado superior esquerdo do bloco de terminais e todos os fios pretos no lado superior direito do bloco de terminais (ver fotos) Quando você operar as cortinas, se elas não se moverem na mesma direção, inverteremos os fios aqui (mais sobre isso mais tarde)

6. conecte os fios positivo e negativo que vêm do conector de parafuso KF301-2P (saída) ao meio dos terminais do relé. O meio dos terminais é chamado de comum.

7. conecte o lado esquerdo do relé esquerdo (não importa como você está voltado para a realidade) ao lado esquerdo do relé direito ao lado esquerdo inferior do bloco de terminais. Em seguida, conecte o lado direito do relé esquerdo ao lado direito do relé direito ao lado direito inferior do bloco de terminais. O bloco de terminais terá o lado superior conectado aos conectores fêmeas de 5,5 mm (consulte a etapa 5).

Observação: descrevi o bloco de terminais como tendo um lado superior e um inferior, cada um com um lado esquerdo e um lado direito. Não importa como você segura o bloco de terminais, desde que você se lembre de que lado é o quê. Você pode verificar as fotos e principalmente o esquema fritzig.

Etapa 5: o código do Arduino

O Código Arduino
O Código Arduino

O código precisa ser carregado no arduino pro mini usando o adaptador USB para FTDI serial FT232RL.

Você precisará conectar os pinos GND, VCC, Rx, Tx e DTR ao arduino pro mini. Em seguida, abra o software arduino, selecione ferramentas / porta e qualquer porta que estiver usando. Em seguida, Ferramentas / Placa / Arduino Pro ou Pro Mini. Em seguida, Ferramentas / Placa / Processador / ATmega328 (5V 16Mhz).

Por fim, abra o esboço abaixo e pressione upload.

Ajustes: A única coisa que pode ser ajustada no esboço é o pwmPower. O valor pode estar entre 0 e 255 e representa aproximadamente quanto da energia da fonte de alimentação irá para os motores das cortinas. Basicamente, ele liga e desliga a energia rapidamente. Eu o implementei principalmente para permitir que eu use uma fonte de alimentação menor sem superaquecer ou desligar. Se sua fonte de alimentação tiver uma potência maior do que os motores irão consumir, você pode definir o pwmPower para 255.

Então, como funciona este programa: primeiro ele escuta a linha serial (um serial de software secundário) para as transmissões de entrada. Quando chega uma transmissão, a mensagem é lida em um buffer até o ";" está presente ou o fim do buffer é alcançado. Em seguida, é analisado e se estiver no formato correto (ex: O45;) a função toggleState é chamada com o primeiro estado do parâmetro e, em seguida, a duração.

Para obter a chave de polaridade, ambos os relés são abertos ou fechados. O tranzistor é ligado e desligado usando o PWM para a duração especificada. O45 significa aberto por 45 segundos.

Depois que o comando é executado, o buffer é limpo.

Etapa 6: Uso

Uso
Uso
Uso
Uso
Uso
Uso

Podemos usar os controles de mais de uma maneira

1. Via um aplicativo bluetooth Android ou iphone (mais simples)

Na minha demonstração, escolhi um aplicativo Android chamado Bluetooth Controller. Este aplicativo permite que você personalize botões que enviarão dados seriais. Criei dois botões chamados Up e Down, associei Up ao código "C40;" e o Down com "O35;".

"C40;" significa que vou fechar (retrair) as cortinas por 40 segundos, "035" significa que vou abrir (elas sobem) por 35 segundos. ";" é o terminador de comando que escolhi em meu esboço, o que significa que ele sinaliza o fim de um comando.

2. Por meio de um script Python que está sendo executado continuamente em segundo plano

Esta é a parte avançada do tutorial. Eu mandei um script python que será executado em um servidor como um raspberry pi ou laptop com acesso à Internet. Ele se conectará ao bluetooth na caixa de controle e exibirá uma API http. A API pode ser acessada diretamente ou por meio do thingspeak.

Vou explicar passo a passo o que você precisa fazer

uma. a primeira coisa é emparelhar o bluetooth

você usará o comando bluetoothctl do console, digite dentro

ligar

detectável no agente em par padrão-agente na varredura do par xx: xx: xx: xx: xx: xx (e insira a senha) trust xx: xx: xx: xx: xx: xx (se não houver senha):

em seguida, abra o arquivo de configuração do bluetooth

vim /etc/bluetooth/rfcomm.conf

dentro, você precisará configurar seu dispositivo bluetooth assim:

rfcomm1 {

vincular sim; dispositivo your_bluetooth_mac_address algo como 97: D3: 31: 21: A0: 51; canal 1; comentário "Conexão com meus tons bt"; }

ligar, reinicie os serviços bluetooth

sudo rfcomm bind allsudo /etc/init.d/bluetooth reiniciar sudo hciconfig hci0 up

b. instalar o frasco, autenticação básica do frasco:

sudo -H pip install Flask Flask-BasicAuth

c. crie um arquivo server.py com o seguinte código e execute o servidor:

# uso: python httpToBluetooth nome de usuário senha bluetooth_address

# Nota: nome de usuário e senha são usados

importar os, bluetooth, sys, threading

from flask import Flask from flask_basicauth import BasicAuth from queue import Queue app = Flask (_ name_) configuration = sys.argv app.config ['BASIC_AUTH_USERNAME'] = configuração [1] app.config ['BASIC_AUTH_PASSWORD'] = configuração [2] = Queue () basic_auth = BasicAuth (app) class BluetoothBackground (threading. Thread): def _init _ (self, bluetooth_address, queue): threading. Thread._ init _ (self) self._ bluetooth_address = bluetooth_address self._ queue = queue self.shutdown = Falso def run (self): self._ bluetooth = self.get_bluetooth () enquanto não self.shutdown: message = self._ queue.get () self._ bluetooth.send (message) self._ bluetooth.close () def get_bluetooth (self): conexão = bluetooth. BluetoothSocket (bluetooth. RFCOMM) connection.settimeout (Nenhum) try: connection.connect ((self._ bluetooth_address, 1)) exceto Exceção, e: imprimir 'Erro de conexão com bluetooth' + str (e) conexão.setblocking (False) retorna classe de conexão Webserver (threading. Thread): def run (self): port = in t (os.environ.get ('PORT', 5000)) app.run (host = '0.0.0.0', port = port, debug = True, use_reloader = False) @ app.route ("/ send_to_serial /") @ basic_auth.required def send_to_serial (command): queue.put (command) return 'ok' threads = threads.append (BluetoothBackground (configuração [3], fila)) threads.append (Webserver ()) [thread.start () para discussão em tópicos]

para executar o servidor, execute:

senha de usuário python server.py 97: D2: 31: 20: A0: 51

Ok, então server.py é nosso script, usuário e senha são as credenciais usadas para sua autenticação e "97: D2: 31: 20: A0: 51" é seu endereço MAC bluetooth.

d. use seu servidor para enviar comandos de qualquer lugar do mundo

no tipo de navegador: https:// your_ip: 5000 / send_to_serial / C30;

- insira o usuário e a senha que você configurou anteriormente quando iniciou o servidor python

- "C30;" é o comando que será encaminhado para o dispositivo bluetooth (nossa caixa que controlará as cortinas)

- verifique se a porta 5000 não está bloqueada pelo seu firewall (estamos usando essa porta)

- se você estiver atrás de um roteador (por exemplo, um raspberry pi), você precisa fazer um encaminhamento de porta do roteador da porta 5000 para a porta 5000

e. você pode usar o thingspeak para fazer coisas como controlar as cortinas em uma programação de tempo ou quando alguns dados do sensor do canal mudam. Por exemplo, você poderia conectar um sensor de luz (externo) ao thinkspeak e quando o nível de luz cair para um determinado valor (anoitecer), você pode fechar as cortinas para que as pessoas de fora não o vejam.

Você pode conectar as sombras (servidor python que configuramos anteriormente) com o thingspeak usando ThingHTTP.

Incluí uma imagem do formulário ThingHTTP com os dados preenchidos como exemplo e uma imagem com TimeControl. Portanto, para obter o máximo de flexibilidade, o thingspeak deve fazer o que você precisar.

3. Por meio do meu aplicativo de automação residencial

Isso é um pouco mais complicado, meu aplicativo de automação residencial faz muito mais do que controlar as cortinas.

Ele também controla as luzes, a porta, tem vários sensores, integra-se com interruptores e tem regras complexas definidas pelo usuário que podem, por exemplo, abrir as cortinas se o nível de luz interno for baixo ou se for de manhã.

Você pode verificar meu repositório github e, se tiver perguntas, ficarei feliz em respondê-las.

Se você achou meu tutorial de alguma forma útil, compartilhe-o ou adicione-o aos favoritos. E também quero ver alguns comentários interessantes:)

Recomendado: