Talaan ng mga Nilalaman:

Ang Smart Power Strip Batay sa Beaglebone Black at OpenHAB: 7 Hakbang (na may Mga Larawan)
Ang Smart Power Strip Batay sa Beaglebone Black at OpenHAB: 7 Hakbang (na may Mga Larawan)

Video: Ang Smart Power Strip Batay sa Beaglebone Black at OpenHAB: 7 Hakbang (na may Mga Larawan)

Video: Ang Smart Power Strip Batay sa Beaglebone Black at OpenHAB: 7 Hakbang (na may Mga Larawan)
Video: Web Programming - Computer Science for Business Leaders 2016 2024, Nobyembre
Anonim
Ang Smart Power Strip Batay sa Beaglebone Black at OpenHAB
Ang Smart Power Strip Batay sa Beaglebone Black at OpenHAB
Ang Smart Power Strip Batay sa Beaglebone Black at OpenHAB
Ang Smart Power Strip Batay sa Beaglebone Black at OpenHAB
Ang Smart Power Strip Batay sa Beaglebone Black at OpenHAB
Ang Smart Power Strip Batay sa Beaglebone Black at OpenHAB

!!!!! Mapanganib ang paglalaro ng mains (110 / 220V), mangyaring maging napaka-ingat !!!!

Mayroong ilang mga umiiral na mga disenyo ng smart power strip batay sa "Raspberry Pi" at dalawang Arduinos, na ipinakita sa larawang "Lumang disenyo".

Ang bagong disenyo ay naiiba sa mga luma sa dalawang paraan:

  1. Dahil ang Raspberry Pi ay maaaring makontrol ang nRF24 sa pamamagitan ng paggamit ng sarili nitong SPI, hindi ito mahusay na maglagay ng Arduino sa pagitan. Gayundin ginusto ko ang Beaglebone Black board dahil ito ay mura at malakas, at lalo na mayroon itong mas maraming magagamit na mga peripheral (tulad ng GPIO, SPI) kaysa sa Raspberry Pi.
  2. Sa mga lumang disenyo, ang tanging paraan lamang upang makontrol ang power strip ay sa pamamagitan ng web interface (ibig sabihin OpenHAB). Gayunpaman, napaka-abala na gawin ito kung malapit na ang power strip. Samakatuwid sa disenyo na ito, ang power strip ay may indibidwal na switch para sa bawat outlet, at ang mga tao ay maaaring I-ON / OFF ang bawat outlet na mayroon o walang OpenHAB (kung may OpenHAB, ang katayuan sa OpenHAB ay maa-update tuwing ang pisikal na switch ay na-toggle).

Hakbang 1: Demo

Image
Image

Hakbang 2: Pangkalahatang-ideya

Gateway - Hardware
Gateway - Hardware

Ang aking smart power strip ay binubuo ng dalawang bahagi: gateway at power strip (ipinapakita sa larawan na "Aking disenyo").

Kasama sa gilid ng gateway ang:

  1. Isang board na Beaglebone Black
  2. Isang nRF24L01 + module
  3. OpenHAB + MQTT (message bus)

Kasama sa gilid ng strip ng kuryente ang:

  1. Tatlong karaniwang switch + outlet combo (w / isang 3-gang box)
  2. Isang Arduino pro mini board
  3. Isang nRF24L01 + module
  4. Tatlong module ng relay

Saklaw ang mga detalye sa mga sumusunod na hakbang.

Hakbang 3: Gateway - Hardware

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

Mga Materyales:

Isang board na Beaglebone Black

Isang nRF24L01 + module

Isang 10uF capacitor (RadioShack, ebay atbp), para sa pagpapabuti ng pagiging maaasahan ng pagtanggap.

Ipinapakita ko rito ang koneksyon sa pagitan ng Beaglebone Black at ng module ng radyo. Ipinapakita ko rin ang aking circuit para dito, ngunit isang breadboard ang gagawa rin ng trabaho.

Upang magamit ang SPI at nRF24 module sa Bealebone Black, kailangan ng dalawang hakbang.

  1. Paganahin ang SPI sa Beaglebone Black
  2. GET NRF24L01 + RADIOS WORKING ON BEAGLEBONE BLACK

Hakbang 4: Gateway - Software

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

Sa mga tuntunin ng software sa Beaglebone Black, ang pangkalahatang istraktura ay ipinapakita sa larawan 1.

Dahil mayroong isang Debian na tumatakbo dito, napakadaling mag-install ng software gamit ang apt-get na utos.

Ang OpenHAB ay nakabatay sa Java, kaya kinakailangan upang mai-install ang Java VM. Mangyaring mag-refer sa pag-install ng OpenHAB para sa mga detalye (ito ay para sa Raspberry Pi, ngunit gumagana ang apt-get para sa parehong board). Upang paganahin ang MQTT para sa OpenHAB, ang file na "org.openhab.binding.mqtt-x.y.z.jar" ay kailangang ilagay sa folder na "addons" sa OpenHAB source folder. Kailangan ng tatlong mga file ng pagsasaayos (nakakabit sa ibaba), kung saan dapat ilagay ang "openhab.cfg", "test.sitemap" at "test.items" sa "mga pagsasaayos", "mga pagsasaayos / sitemap" at folder na "mga pagsasaayos / item", ayon sa pagkakabanggit. Pagkatapos, ang OpenHAB ay maaaring mailunsad sa pamamagitan ng pag-type ng "./start.sh".

Para sa MQTT bus, gumagamit ako ng Mosquitto na isang open source MQTT broker. Ang bersyon ng Mosquito sa apt-get ay medyo luma na, kaya't na-download ko ang source code upang makatipon at mai-install.

  1. Kunin ang source code mula sa opisyal na site sa itaas.
  2. Sa folder ng source code, lumikha ng isang bagong folder na tinatawag na "build".
  3. Pumunta sa "build", i-type ang "cmake.."
  4. Pagkatapos bumalik sa itaas na folder, i-type ang "make" at "make install"

Panghuli, ang programa ng gateway ay ang tulay sa pagitan ng MQTT bus at nRF24 module, at ang arkitektura ay ipinapakita sa larawan 2. Mayroong dalawang pila, bawat isa para sa isang direksyon (ie isa para sa control CMD mula sa OpenHAB patungo sa power strip, isa para sa magkasalungat na daan). Talaga ito ay isang simpleng pagpapatupad ng tagagawa / consumer lohika. Ang source code ng gateway ay matatagpuan dito, gumagamit ito ng ilang mga tampok na C ++ 11 (upang mai-install ang mas bagong GCC sa Beaglebone Black, sumangguni sa artikulong ito) at ipinapalagay na ang nRF24 lib ay na-install (sumangguni sa nakaraang Hakbang).

Hakbang 5: Power Strip - Hardware

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

Mga Materyales:

Isang Arduino pro mini board.

Isang nRF24L01 + module.

Isang 10uF capacitor (RadioShack, ebay atbp), para sa pagpapabuti ng pagiging maaasahan ng pagtanggap.

Tatlong 10K resistors (RadioShack, ebay atbp), para sa switch.

Tatlong module ng Relay.

Tatlong karaniwang switch / outlet combo at isang kahon, binili ko ang mga ito mula kay Lowe.

Isang 110vac hanggang 5vdc module, upang mapagana ang Arduino at mga relay.

Isang 5vdc hanggang 3vdc na step-down, upang mapagana ang nRF24.

Ang koneksyon ay ipinapakita sa larawan 1.

!!!!! Kung nais mong gumamit ng parehong switch / outlet combo tulad ng sa akin, mangyaring tiyakin na pinutol mo ang "breakoff" dito (tingnan ang larawan 2) !!!!! Napakahalaga nito o maaari mong sirain ang iyong buong circuit !!!!!

Ipinapakita ng larawan 3 ang natapos na strip ng kuryente, tulad ng nakikita mo, ito ay medyo gulo sa kahon (dahil hindi ko makita ang anumang malaking sukat mula sa istante ng power strip na may indibidwal na switch na gagamitin), ngunit gumagana ito ^ _ ^!

Hakbang 6: Power Strip - Software

Gumagamit ako ng parehong nRF24 library para sa Arduino tulad ng para sa Beaglebone Black (narito, ang librf24-bbb folder ay para sa Beaglebone Black, habang ang nasa root folder ay para sa Arduino), ngunit maaari mo ring gamitin ang isang mas matatag / malakas na bersyon para sa Arduion sa dito

Ang aking source code para sa power strip side ay nakakabit dito, mangyaring gamitin ang Arduino IDE (o anumang iba pang mga kahalili) at isang tamang programmer upang mai-install ito sa Arduino pro mini.

Hakbang 7: Konklusyon

Enjoy !!!

Inirerekumendang: