Innehållsförteckning:

Smart Power Strip Baserat på Beaglebone Black och OpenHAB: 7 steg (med bilder)
Smart Power Strip Baserat på Beaglebone Black och OpenHAB: 7 steg (med bilder)

Video: Smart Power Strip Baserat på Beaglebone Black och OpenHAB: 7 steg (med bilder)

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

!!!!! Att leka med elnät (110/220V) är farligt, var mycket MYCKET försiktig !!!!

Det finns några existerande smarta power strip -design baserade på "Raspberry Pi" och två Arduinos, som visas på bilden "Old design".

Denna nya design skiljer sig från de gamla på två sätt:

  1. Eftersom Raspberry Pi kan styra nRF24 med sitt eget SPI är det inte effektivt att sätta en Arduino emellan. Jag föredrar också Beaglebone Black board eftersom det är billigt och kraftfullt, och särskilt har det fler tillgängliga kringutrustning (som GPIO, SPI) än Raspberry Pi.
  2. I gamla mönster är det enda sättet att styra strömuttaget via webbgränssnittet (dvs. OpenHAB). Det är dock mycket obekvämt att göra det om strömkabeln är till hands. Därför i denna design har strömuttaget individuella omkopplare för varje uttag, och människor kan slå PÅ/AV varje uttag med eller utan OpenHAB (om med OpenHAB uppdateras statusen på OpenHAB varje gång den fysiska omkopplaren växlas).

Steg 1: Demo

Image
Image

Steg 2: Översikt

Gateway - Hårdvara
Gateway - Hårdvara

Min smarta strömkabel består av två delar: gateway och strömkabel (visas på bilden "Min design").

Gateway -sidan inkluderar:

  1. En svart bräda från Beaglebone
  2. En nRF24L01+ modul
  3. OpenHAB + MQTT (meddelandebuss)

Strömlistens sida innehåller:

  1. Tre standardbrytare+utloppskombinationer (med en 3-gångers låda)
  2. En Arduino pro mini board
  3. En nRF24L01+ modul
  4. Tre relämoduler

Detaljerna kommer att täckas i följande steg.

Steg 3: Gateway - hårdvara

Gateway - Hårdvara
Gateway - Hårdvara
Gateway - Hårdvara
Gateway - Hårdvara
Gateway - Hårdvara
Gateway - Hårdvara

Material:

En svart bräda från Beaglebone

En nRF24L01+ modul

En 10uF kondensator (RadioShack, ebay etc.), för att förbättra mottagningssäkerheten.

Här visar jag kopplingen mellan Beaglebone Black och radiomodulen. Jag visar också min krets för det, men en brödbräda kommer också att göra jobbet.

För att använda SPI- och nRF24 -modulen i Bealebone Black krävs två steg.

  1. Aktivera SPI på Beaglebone Black
  2. FÅ NRF24L01+ RADIOS FUNGERAR PÅ BEAGLEBONE SVART

Steg 4: Gateway - Programvara

Gateway - Programvara
Gateway - Programvara
Gateway - Programvara
Gateway - Programvara

När det gäller programvara på Beaglebone Black visas den övergripande strukturen i bild 1.

Eftersom det finns en Debian som körs på den är det mycket enkelt att installera programvara med apt-get-kommandot.

OpenHAB är Java -baserat, så det är nödvändigt att installera Java VM. Se OpenHAB-installationen för detaljer (det är för Raspberry Pi, men apt-get fungerar för båda korten). För att aktivera MQTT för OpenHAB måste filen "org.openhab.binding.mqtt-x.y.z.jar" läggas in i "addons" -mappen i OpenHAB-källmappen. Tre konfigurationsfiler behövs (bifogas nedan), där mappen "openhab.cfg", "test.sitemap" och "test.items" ska placeras i "konfigurationer", "konfigurationer/webbplatskartor" och "konfigurationer/objekt", respektive. Sedan kan OpenHAB startas genom att skriva "./start.sh".

För MQTT -bussen använder jag Mosquitto som är en open source MQTT -mäklare. Myggversionen på apt-get är ganska gammal, så jag laddar ner källkoden för att kompilera och installera.

  1. Hämta källkoden från den officiella webbplatsen ovan.
  2. Skapa en ny mapp som heter "build" i källkodmappen.
  3. Gå till "build", skriv "cmake.."
  4. Gå sedan tillbaka till den övre mappen, skriv "make" och "make install"

Slutligen är gateway -programmet bron mellan MQTT -bussen och nRF24 -modulen, och arkitekturen visas i bild 2. Det finns två köer, var och en för en riktning (dvs en för styrning CMD från OpenHAB till kraftuttaget, en för omvänd riktning). I grund och botten är det en enkel implementering av producent/konsumentlogik. Källkoden för gateway kan hittas här, den använder några C ++ 11 -funktioner (för att installera nyare GCC på Beaglebone Black, se den här artikeln) och förutsätter att nRF24 lib är installerat (se föregående steg).

Steg 5: Power Strip - Hårdvara

Power Strip - Hårdvara
Power Strip - Hårdvara
Power Strip - Hårdvara
Power Strip - Hårdvara
Power Strip - Hårdvara
Power Strip - Hårdvara

Material:

En Arduino pro mini board.

En nRF24L01+ modul.

En 10uF kondensator (RadioShack, ebay etc.), för att förbättra mottagningssäkerheten.

Tre 10K -motstånd (RadioShack, ebay etc.), för switch.

Tre relämoduler.

Tre standard switch/outlet -kombination och en låda, jag köpte dem från Lowe's.

En 110vac till 5vdc modul, för att driva Arduino och reläer.

En 5vdc till 3vdc step-down, för att driva nRF24.

Anslutningen visas i bild 1.

!!!!! Om du vill använda samma switch/outlet -kombination som jag, var noga med att klippa "breakoff" på den (se bild 2) !!!!! Detta är extremt viktigt eller så kan du förstöra hela din krets !!!!!

Bild 3 visar det färdiga eluttaget, som du kan se är det ganska rörigt i lådan (eftersom jag inte hittar någon tillräckligt stor från hyllplanet med individuell omkopplare att använda), men det fungerar ^_ ^!

Steg 6: Power Strip - Programvara

Jag använder samma nRF24-bibliotek för Arduino som för Beaglebone Black (här är mappen librf24-bbb för Beaglebone Black, medan den i rotmappen är för Arduino), men du kan också använda en mer robust/kraftfull version för Arduion i här.

Min källkod för nätsladden är bifogad här, använd Arduino IDE (eller andra alternativ) och en korrekt programmerare för att installera den på Arduino pro mini.

Steg 7: Slutsats

Njut av!!!

Rekommenderad: