Indholdsfortegnelse:

Smart Power Strip Baseret på Beaglebone Black og OpenHAB: 7 trin (med billeder)
Smart Power Strip Baseret på Beaglebone Black og OpenHAB: 7 trin (med billeder)

Video: Smart Power Strip Baseret på Beaglebone Black og OpenHAB: 7 trin (med billeder)

Video: Smart Power Strip Baseret på Beaglebone Black og OpenHAB: 7 trin (med billeder)
Video: Веб-программирование – информатика для руководителей бизнеса 2016 2024, November
Anonim
Smart Power Strip Baseret på Beaglebone Black og OpenHAB
Smart Power Strip Baseret på Beaglebone Black og OpenHAB
Smart Power Strip Baseret på Beaglebone Black og OpenHAB
Smart Power Strip Baseret på Beaglebone Black og OpenHAB
Smart Power Strip Baseret på Beaglebone Black og OpenHAB
Smart Power Strip Baseret på Beaglebone Black og OpenHAB

!!!!! Det er farligt at lege med lysnettet (110/220V), vær meget MEGET forsigtig !!!

Der er nogle eksisterende smarte power strip -designs baseret på "Raspberry Pi" og to Arduinos, som er vist på billedet "Old design".

Dette nye design adskiller sig fra disse gamle på to måder:

  1. Da Raspberry Pi kan styre nRF24 ved at bruge sit eget SPI, er det ikke effektivt at sætte en Arduino imellem. Jeg foretrækker også Beaglebone Black board, da det er billigt og kraftfuldt, og især har det flere tilgængelige eksterne enheder (som GPIO, SPI) end Raspberry Pi.
  2. I gamle designs er den eneste måde at styre strømstikket på via webgrænsefladen (dvs. OpenHAB). Det er imidlertid meget ubelejligt at gøre det, hvis strømstikket er lige ved hånden. Derfor har strømstikket i dette design en individuel switch til hver stikkontakt, og folk kan tænde/slukke hver stikkontakt med eller uden OpenHAB (hvis med OpenHAB, vil status på OpenHAB blive opdateret, hver gang den fysiske switch skiftes).

Trin 1: Demo

Image
Image

Trin 2: Oversigt

Gateway - hardware
Gateway - hardware

Min smarte strømstik består af to dele: gateway og strømstik (vist på billedet "Mit design").

Gateway -siden omfatter:

  1. Et sort beaglebone -bræt
  2. Et nRF24L01+ modul
  3. OpenHAB + MQTT (meddelelsesbus)

Power strip -siden omfatter:

  1. Tre standardafbrydere+udgangskombinationer (m/ en 3-bånds boks)
  2. Et Arduino pro mini board
  3. Et nRF24L01+ modul
  4. Tre relæmoduler

Detaljerne vil blive dækket i følgende trin.

Trin 3: Gateway - hardware

Gateway - hardware
Gateway - hardware
Gateway - hardware
Gateway - hardware
Gateway - hardware
Gateway - hardware

Materialer:

Et sort beaglebone -bræt

Et nRF24L01+ modul

En 10uF kondensator (RadioShack, ebay osv.), Til forbedring af modtageligheden.

Her viser jeg forbindelsen mellem Beaglebone Black og radiomodulet. Jeg viser også mit kredsløb for det, men et brødbræt vil også gøre jobbet.

To trin er nødvendige for at bruge SPI- og nRF24 -modulet i Bealebone Black.

  1. Aktiver SPI på Beaglebone Black
  2. FÅ NRF24L01+ RADIOER, DER ARBEJDER PÅ BEAGLEBONE SORT

Trin 4: Gateway - Software

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

Hvad angår software på Beaglebone Black, er den overordnede struktur vist på billede 1.

Da der kører en Debian på den, er det meget let at installere software ved hjælp af kommandoen apt-get.

OpenHAB er Java -baseret, så det er nødvendigt at installere Java VM. Se venligst OpenHAB-installationen for detaljer (det er til Raspberry Pi, men apt-get fungerer til begge tavler). For at aktivere MQTT for OpenHAB skal filen "org.openhab.binding.mqtt-x.y.z.jar" sættes i mappen "addons" i OpenHAB-kildemappen. Der er behov for tre konfigurationsfiler (vedhæftet nedenfor), hvor "openhab.cfg", "test.sitemap" og "test.items" skal sættes i mappen "konfigurationer", "konfigurationer/sitemaps" og "konfigurationer/elementer", henholdsvis. Derefter kan OpenHAB startes ved at skrive "./start.sh".

Til MQTT -bussen bruger jeg Mosquitto, som er en open source MQTT -mægler. Mosquito-versionen på apt-get er temmelig gammel, så jeg downloader kildekoden for at kompilere og installere.

  1. Hent kildekoden fra det officielle websted ovenfor.
  2. Opret en ny mappe kaldet "build" i kildekodemappen.
  3. Gå ind i "build", skriv "cmake.."
  4. Gå derefter tilbage til den øverste mappe, skriv "make" og "make install"

Endelig er gateway -programmet broen mellem MQTT -bus og nRF24 -modul, og arkitekturen er vist på billede 2. Der er to køer, hver i en retning (dvs. en til kontrol -CMD fra OpenHAB til strømstik, en til omvendt retning). Grundlæggende er det en simpel implementering af producent/forbrugerlogik. Kildekoden til gateway kan findes her, den bruger nogle C ++ 11 -funktioner (for at installere nyere GCC på Beaglebone Black, se denne artikel) og forudsætter, at nRF24 lib er installeret (se det foregående trin).

Trin 5: Power Strip - Hardware

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

Materialer:

Et Arduino pro mini board.

Et nRF24L01+ modul.

En 10uF kondensator (RadioShack, ebay osv.), Til forbedring af modtageligheden.

Tre 10K modstande (RadioShack, ebay osv.), Til switch.

Tre relæmoduler.

Tre standard switch/outlet combo og en boks, jeg købte dem fra Lowe's.

Et 110vac til 5vdc modul, til at drive Arduino og relæer.

En 5vdc til 3vdc step-down, for at drive nRF24.

Forbindelsen er vist på billede 1.

!!!!! Hvis du vil bruge samme switch/outlet combo som mig, skal du sørge for at skære "breakoff" på den (se billede 2) !!!!! Dette er ekstremt vigtigt, ellers ødelægger du hele dit kredsløb !!!!

Billede 3 viser den færdige strømstik, som du kan se, er det temmelig rodet i kassen (da jeg ikke kan finde noget stort nok fra hyldens strømstik med individuel kontakt til at bruge), men det virker ^_ ^!

Trin 6: Power Strip - Software

Jeg bruger det samme nRF24-bibliotek til Arduino som til Beaglebone Black (her er librf24-bbb-mappen til Beaglebone Black, mens den i rodmappen er til Arduino), men du kan også bruge en mere robust/kraftfuld version til Arduion i her.

Min kildekode til strømstikssiden er vedhæftet her. Brug venligst Arduino IDE (eller andre alternativer) og en korrekt programmerer til at installere den på Arduino pro mini.

Trin 7: Konklusion

God fornøjelse!!!

Anbefalede: