Arduino Home Light Dimming

10

O drywall está apenas começando a subir no projeto do porão da minha família. Eu estive olhando para sistemas de controle de luz residencial. Alguns dos que eu vi foram mais de US $ 2.000. Estou pensando que seria muito mais divertido (e econômico!) Implementar meu próprio sistema baseado em Arduino.

O verdadeiro problema está no controle real das luzes. Cada grupo de luzes precisará ser controlado por um sistema dimmer baseado em comutador. Seria muito mais simples se o microcontrolador fosse o único ponto de controle. Infelizmente, este não é o caso. Estou assumindo que preciso usar um interruptor mais não ofuscante que permita a interface de um dispositivo externo. Isso evitaria o problema completamente, pois o interruptor e o Arduino poderiam controlar as luzes, o Arduino controlaria as luzes através do interruptor mais não ofuscante.

Alguém pode recomendar uma solução / abordagem melhor ou sugerir um interruptor mais não ofuscante que tenha algum tipo de interface "remota"?

Atualização 3/1/2013: Acabei optando por uma solução baseada no Insteon usando um escudo personalizado da Good Robot . Funciona muito bem e pode ser usado para controlar qualquer coisa, não apenas luzes. Vou postar uma resposta aqui quando tiver a chance de escrever algo útil.

Kevin Mark
fonte

Respostas:

4

Montei uma casa inteira com o X10 há cerca de 10 anos e, embora funcionasse, poderia ser meio esquisito. Se eu fosse fazê-lo novamente, procuraria produtos mais modernos como o Insteon . O Insteon deve resolver muitas das falhas que o X10 possui.

Eu não me incomodaria em tentar construir os módulos de controle CA do dispositivo (dimmers, comutadores remotos etc.), pois trabalhar com tensões de rede é muito perigoso, a menos que você realmente saiba o que está fazendo.

ducksauz
fonte
Obrigado pelo link Insteon. Parece que existe algum tipo de protocolo Insteon que me permite interagir com seus dimmers. É alguma variação do X10?
Kevin Mark
Depois de mais algumas pesquisas, os dimmers da Insteon estão realmente parecendo o caminho a seguir. Parece que eu posso pelo menos enviar sinais X10. Pesquisei no Google alguns documentos ou exemplos de projetos. Ainda não encontrei nada.
Kevin Mark
Eu li de volta o kit Insteon. É compatível com X10, pois coexistirá com o X10. Possui uma taxa de dados mais alta, todos os dispositivos são repetidores e todas as mensagens são confirmadas.
Ducksauz
Há uma boa whitepaper aqui: insteon.net/about-whitepapers.html
ducksauz
Obrigado. Isso deve ser útil no caso infeliz de que preciso interagir manualmente com o protocolo INSTEON. ;)
Kevin Mark
4

DMX512 é amplamente utilizado para controlar a iluminação do palco. Como ele usa o EIA-485, o hardware e o software devem ser bastante fáceis de implementar em um Arduino com uma blindagem adequada. Aqui está um projeto do Arduino DMX.

Estão disponíveis controladores de dimmer DMX remotos de baixo custo e bricolage, aqui está um que usa um ATmega8515 AVR, um dispositivo semelhante ao usado no Arduino. Eu estaria inclinado a usar um controlador muito menor e mais barato. A interface mais não ofuscante para as lâmpadas, a "unidade de potência", também é descrita. É um projeto bastante agradável.

Leon Heller
fonte
enquanto isso é verdade, acho que não responde a essa pergunta. Kevin precisaria de um "dimmer DMX" que capte o DMX e apresente uma forma de onda da rede elétrica de corte de fase.
Martin
11
Costumo escrever minhas respostas um pouco de cada vez, adicionando-as à medida que penso em mais coisas.
Leon Heller
É fácil brincar com o DMX, mas provavelmente será um exagero para o que estou fazendo. Especialmente porque este é um sistema embutido na parede.
Kevin Mark
4

Eu brinquei com o X10 e o Insteon - eles funcionam, mas minha experiência em hackear eles foi esmagadora.

Então, eu estou construindo meu sistema de automação residencial inteiramente com rádios XBee. O padrão ZigBee Home Automation é aberto e muito fácil de implementar (se você deseja ser compatível com o HW existente). Mas você não precisa seguir esse caminho, pode implementar seu próprio protocolo (com o binário json, por exemplo - é isso que estou fazendo). Os rádios não são baratos (~ US $ 25), mas a facilidade de uso vale a pena, na minha opinião. Em muitos casos, você nem precisa de um microcontrolador - os XBee têm suas próprias E / S digitais e analógicas. Até agora, construí alguns dispositivos com o XBee - termostato, sensor de movimento, gateway X10 e assistente de estacionamento / sensor de presença de carro. Os rádios ZigBee podem formar redes mesh, portanto a cobertura e o consumo de energia são excelentes.

Construir seus próprios dimmers seria caro (no entanto, a única opção que encontrei foi usar o módulo Velleman K8064 - ~ $ 35); portanto, se você precisar de um dimmer, eu usaria o Insteon ou o X10. Eu tenho alguns módulos de lâmpadas X10 em minha casa e para controlá-los, eu uso a interface PSC04 serial X10 PRO (por ~ US $ 10 é difícil de bater) anexada ao Arduino ( biblioteca X10 para Arduino ).

sudarkoff
fonte
Essa é uma ótima idéia, em geral, mas não tenho certeza de como implementar isso em uma solução para o meu problema. Infelizmente, eu preciso de um interruptor de dimmer físico e controle externo. Insteon se encaixa na conta, mas é bastante caro. Como afirmei antes, eu estava pensando em usar os switches Insteon, mas usando um Arduino para interceptar sinais Insteon. O controlador Insteon que você pode comprar em seu site é primitivo e muito caro.
Kevin Mark
Eu tenho alguns módulos de lâmpadas X10 em minha casa que eu controlo com o Arduino conectado a um controlador serial X10. (Aqui está a biblioteca X10 do Arduino que eu uso: arduino.cc/en/Tutorial/X10 ) AFAIK, o Insteon suporta o X10, para que você possa obter o mesmo resultado.
sudarkoff 28/07
De fato. Definitivamente é isso que vou fazer para começar. Idealmente, eu usaria o protocolo Insteon em vez do X10 antigo e não confiável.
Kevin Mark
2

Se for instalar fiação e novas luzes, eu consideraria instalar luminárias LED. Você não apenas economizará dinheiro a longo prazo devido aos custos mais baixos de eletricidade, mas também economizará na instalação em fiação. Como os LEDs usam voltagens abaixo de 24V, o código elétrico é muito fraco. Você não precisa instalar fios de cobre grossos (caros) em cada tomada, mas uma fiação 20-18 AWG muito mais barata (eu até usei 23AWG em um cabo CAT6). Existem muitas opções para a condução de LEDs de alta potência de um arduino. O meu favorito seria este. Até 128 podem ser controlados a partir de um único arduino. O código para controlá-los é muito fácil. Depois de fazer isso, adicione um escudo ethernet ao arduino e algum javascript básico e, em seguida, controlar suas luzes será tão simples quanto visitar uma página da Web em um computador ou smartphone. Você pode até encaminhar solicitações de entrada da porta 80 para o escudo e permitir que você o controle enquanto estiver fora (talvez para assustar bandidos). Além disso, você teria controle de escurecimento independente sobre todas as luzes do porão (por exemplo, se estivesse assistindo a um filme, você só poderia acender duas luzes nas costas e deixá-las realmente escuras).

charliehorse55
fonte
Essa é realmente uma ótima idéia. Infelizmente, a fiação já está concluída e, portanto, não torna mais viável a iluminação seletiva por LED. Vou manter isso em mente para projetos futuros!
Kevin Mark
Toda a energia de um circuito passa por um interruptor (para tornar as luzes controláveis). Você não pode simplesmente colocar o arduino pelo switch e usar o cabo grosso para os LEDs (exagero, mas ainda funcionaria). A menos que você já tenha adquirido luminárias / lâmpadas?
Charliehorse55
Suponho que isso poderia funcionar. Como preciso ter interruptores "tradicionais" de dimmer e controle por microcontrolador, precisaria criar meus próprios dimmers de parede que se conectem ao Arduino?
Kevin Mark
Você deseja executar tanto as lâmpadas incandescentes tradicionais quanto os LEDs do arduino? Feito facilmente. A maioria dos dimmers de US $ 6 que você pode comprar na loja de ferragens usa um pote de 10k no mostrador mais escuro. Abra a unidade e substitua os fios do pote de 10k pelos fios de um pote digital. O pote digital pode ser controlado a partir do arduino via I2C. Se for um simples ligar / desligar, você pode acionar um mosfet de 5v com o arduino para acionar um controle de 24V para um solenóide.
Charliehorse55
Bom saber. Se eu implementar luzes LED, provavelmente usarei este ou um método semelhante.
Kevin Mark
2

Eu trabalhava para uma empresa que tinha reguladores de pressão com botão de pressão. Você precisará substituir todos os interruptores de parede por botões de pressão com um contato NO (normalmente aberto). A vantagem é que você pode simplesmente colocar todos os pontos de controle em paralelo e alimentar um único sinal lógico para o microcontrolador. Você pode usar a tensão de alimentação do microcontrolador e um resistor de pull-up, mas principalmente em fios longos, você capta muito ruído e também pode ter uma queda de tensão. Melhor executar os botões de pressão em uma tensão mais alta (por exemplo, 24V) e dividir esse nível para combinar com o microcontrolador.

Uma maneira possível de operação:
pressionar um botão por um tempo maior que, por exemplo, meio segundo (re) iniciará um ciclo de escurecimento. Enquanto um botão é pressionado, você diminui a intensidade a uma determinada velocidade, aguarde um segundo no valor máximo e o início diminua, até desligar, após o que o ciclo é reiniciado. O microcontrolador precisa lembrar não apenas o nível atual, mas também se a última ação foi para cima ou para baixo.
Pressionar o botão brevemente (menos de meio segundo) alterna entre desligar e o último valor esmaecido.

Esta é apenas uma funcionalidade possível. Você pode fazer variações nisso, lembre-se de que você só tem um pulso (comprimento variável) como sinal.

stevenvh
fonte
Gosto da ideia, e é uma maneira interessante de fazê-lo, mas será um pouco caro (em termos de tempo) para uso no meu porão. Os dimmers tradicionais que podem utilizar o X10 ou o INSTEON parecem ser a solução mais favorável para o meu projeto.
Kevin Mark
@ Kevin - francamente, eu mesmo não acho a solução mais fácil de usar, mas o produto do meu empregador anterior parece vender bem. A principal razão é provavelmente a fiação simples, e não há necessidade de inteligência fora do redutor.
31711 stevenvh
Concordo que está longe de ser fácil de usar ou intuitivo, até, mas acho interessante do ponto de vista conceitual. Simplifique essencialmente o back-end, simplificando toda a operação física.
Kevin Mark
1

Você pode querer olhar para o X10. Eu não o uso há algum tempo, mas desde que o usei pela última vez, sei que há pelo menos uma interface de porta serial, talvez até sem fio, para que você não precise realmente entrar nas linhas de energia. com o seu hardware. Existem (havia) módulos nos quais você fechou um relé e poderia ativar ou desativar tudo. Para fraca ou brilhante, você precisará de mais controle.

old_timer
fonte
Acho que minha melhor aposta é encontrar um interruptor / dimmer compatível com X10.
Kevin Mark