Índice:

Smart Power Strip baseado em Beaglebone Black e OpenHAB: 7 etapas (com imagens)
Smart Power Strip baseado em Beaglebone Black e OpenHAB: 7 etapas (com imagens)

Vídeo: Smart Power Strip baseado em Beaglebone Black e OpenHAB: 7 etapas (com imagens)

Vídeo: Smart Power Strip baseado em Beaglebone Black e OpenHAB: 7 etapas (com imagens)
Vídeo: Don't Do This At Home 2024, Novembro
Anonim
Smart Power Strip baseado em Beaglebone Black e OpenHAB
Smart Power Strip baseado em Beaglebone Black e OpenHAB
Smart Power Strip baseado em Beaglebone Black e OpenHAB
Smart Power Strip baseado em Beaglebone Black e OpenHAB
Smart Power Strip baseado em Beaglebone Black e OpenHAB
Smart Power Strip baseado em Beaglebone Black e OpenHAB

!!!!! Brincar com a rede elétrica (110 / 220V) é perigoso, tenha MUITO, MUITO cuidado !!!

Existem alguns designs de réguas de energia inteligentes baseados em "Raspberry Pi" e dois Arduinos, que são mostrados na imagem "Design antigo".

Este novo design difere dos antigos de duas maneiras:

  1. Como o Raspberry Pi pode controlar o nRF24 usando seu próprio SPI, não é eficiente colocar um Arduino no meio. Também prefiro a placa Beaglebone Black por ser barata e poderosa, e especialmente por ter mais periféricos disponíveis (como GPIO, SPI) do que Raspberry Pi.
  2. Em designs antigos, a única maneira de controlar o filtro de linha é por meio da interface da web (ou seja, OpenHAB). No entanto, é muito inconveniente fazê-lo se o filtro de linha estiver disponível. Portanto, neste projeto, o filtro de linha tem interruptor individual para cada tomada, e as pessoas podem LIGAR / DESLIGAR cada tomada com ou sem OpenHAB (se for com OpenHAB, o status no OpenHAB será atualizado sempre que o interruptor físico for alternado).

Etapa 1: demonstração

Image
Image

Etapa 2: Visão geral

Gateway - Hardware
Gateway - Hardware

Meu filtro de linha inteligente é composto de duas partes: gateway e filtro de linha (mostrado na imagem "Meu design").

O lado do gateway inclui:

  1. Um quadro negro Beaglebone
  2. Um módulo nRF24L01 +
  3. OpenHAB + MQTT (barramento de mensagem)

O lado do filtro de linha inclui:

  1. Três interruptores padrão + combinações de tomadas (com uma caixa de 3 grupos)
  2. Uma mini placa Arduino pro
  3. Um módulo nRF24L01 +
  4. Três módulos de relé

Os detalhes serão abordados nas etapas a seguir.

Etapa 3: Gateway - Hardware

Gateway - Hardware
Gateway - Hardware
Gateway - Hardware
Gateway - Hardware
Gateway - Hardware
Gateway - Hardware

Materiais:

Um quadro negro Beaglebone

Um módulo nRF24L01 +

Um capacitor de 10uF (RadioShack, ebay etc.), para melhorar a confiabilidade da recepção.

Aqui eu mostro a conexão entre o Beaglebone Black e o módulo de rádio. Eu também mostro meu circuito para ele, mas uma placa de ensaio também fará o trabalho.

Para usar o módulo SPI e nRF24 em Bealebone Black, são necessárias duas etapas.

  1. Ativar SPI em Beaglebone Black
  2. OBTENHA NRF24L01 + RÁDIOS TRABALHANDO COM BEAGLEBONE PRETO

Etapa 4: Gateway - Software

Gateway - Software
Gateway - Software
Gateway - Software
Gateway - Software

Em termos de software no Beaglebone Black, a estrutura geral é mostrada na figura 1.

Uma vez que existe um Debian rodando nele, é muito fácil instalar o software usando o comando apt-get.

O OpenHAB é baseado em Java, portanto é necessário instalar o Java VM. Consulte a instalação do OpenHAB para obter detalhes (é para Raspberry Pi, mas apt-get funciona para ambas as placas). Para habilitar o MQTT para OpenHAB, o arquivo "org.openhab.binding.mqtt-x.y.z.jar" precisa ser colocado na pasta "addons" na pasta de origem do OpenHAB. São necessários três arquivos de configuração (anexados abaixo), onde "openhab.cfg", "test.sitemap" e "test.items" devem ser colocados nas pastas "configurations", "configurations / sitemaps" e "configurations / items", respectivamente. Em seguida, o OpenHAB pode ser iniciado digitando "./start.sh".

Para o barramento MQTT, eu uso o Mosquitto, que é um broker MQTT de software livre. A versão do Mosquito no apt-get é bem antiga, então eu baixei o código-fonte para compilar e instalar.

  1. Obtenha o código-fonte do site oficial acima.
  2. Na pasta do código-fonte, crie uma nova pasta chamada "build".
  3. Vá em "build", digite "cmake.."
  4. Em seguida, volte para a pasta superior, digite "make" e "make install"

Por último, o programa de gateway é a ponte entre o barramento MQTT e o módulo nRF24, e a arquitetura é mostrada na figura 2. Existem duas filas, cada uma para uma direção (ou seja, uma para o CMD de controle do OpenHAB para o filtro de linha, uma para o direção oposta). Basicamente, é uma implementação simples da lógica do produtor / consumidor. O código fonte do gateway pode ser encontrado aqui, ele usa alguns recursos do C ++ 11 (para instalar o GCC mais recente no Beaglebone Black, consulte este artigo) e assume que a lib nRF24 está instalada (consulte a Etapa anterior).

Etapa 5: Power Strip - Hardware

Power Strip - Hardware
Power Strip - Hardware
Power Strip - Hardware
Power Strip - Hardware
Power Strip - Hardware
Power Strip - Hardware

Materiais:

Uma mini placa Arduino pro.

Um módulo nRF24L01 +.

Um capacitor de 10uF (RadioShack, ebay etc.), para melhorar a confiabilidade da recepção.

Três resistores de 10K (RadioShack, ebay etc.), para alternar.

Três módulos de relé.

Três combinações de interruptores / tomadas padrão e uma caixa, comprei na Lowe's.

Um módulo 110vac a 5vdc, para alimentar o Arduino e os relés.

Uma redução de 5vdc para 3vdc, para alimentar o nRF24.

A conexão é mostrada na figura 1.

!!!!! Se você quiser usar a mesma combinação de interruptor / tomada que eu, certifique-se de cortar o "breakoff" nela (veja a figura 2) !!!!! Isso é extremamente importante ou você pode destruir todo o seu circuito !!!!

A Figura 3 mostra o filtro de linha acabado, como você pode ver, está uma bagunça na caixa (já que não consigo encontrar nenhum filtro de linha grande o suficiente com interruptor individual para usar), mas funciona ^ _ ^!

Etapa 6: Power Strip - Software

Eu uso a mesma biblioteca nRF24 para Arduino e Beaglebone Black (aqui, a pasta librf24-bbb é para Beaglebone Black, enquanto a da pasta raiz é para Arduino), mas você também pode usar uma versão mais robusta / poderosa para Arduion em aqui.

Meu código-fonte para o lado do filtro de linha está anexado aqui, por favor, use o IDE do Arduino (ou qualquer outra alternativa) e um programador correto para instalá-lo no Arduino pro mini.

Etapa 7: Conclusão

Aproveitar!!!

Recomendado: