Talaan ng mga Nilalaman:

Ultra-low Power WiFi Home Automation System: 6 Hakbang (na may Mga Larawan)
Ultra-low Power WiFi Home Automation System: 6 Hakbang (na may Mga Larawan)

Video: Ultra-low Power WiFi Home Automation System: 6 Hakbang (na may Mga Larawan)

Video: Ultra-low Power WiFi Home Automation System: 6 Hakbang (na may Mga Larawan)
Video: Camera-LAMP with tracking and identification of a person. 2024, Nobyembre
Anonim
Ultra-mababang Power WiFi Home Automation System
Ultra-mababang Power WiFi Home Automation System
Ultra-mababang Power WiFi Home Automation System
Ultra-mababang Power WiFi Home Automation System

Sa proyektong ito ipinapakita namin kung paano ka makakabuo ng isang pangunahing lokal na sistema ng automation ng bahay sa ilang mga hakbang. Gagamitin namin ang isang Raspberry Pi na kikilos bilang isang sentral na aparato ng WiFi. Samantalang para sa mga end node ay gagamit kami ng IOT Cricket upang makagawa ng isang baterya na mga aparatong WiFi na pinapatakbo ng baterya hal. temperatura sensor at ikonekta ito sa RPi nang hindi nagsusulat ng isang solong linya ng code.

Ang aming system ay ibabatay sa MQTT komunikasyon protocol, na kung saan ay hugely pinagtibay sa karamihan ng mga sistema ng awtomatiko sa bahay. Upang mai-set up ito ay pipiliin namin ang Mosquitto MQTT broker (server) at mai-install ito sa Raspberry Pi (aming gitnang hub).

Ang IOT Cricket ay may kasamang suporta sa HTTP (S) at MQTT na mga proteksyon. I-configure namin ito upang magamit ang MQTT upang direktang makipag-usap sa aming RPi MQTT broker.

Ang proyektong ito ay maaaring napagtanto ng mga gumagawa sa lahat ng mga antas ng kasanayan. Maaaring mangailangan ito ng ilang pangunahing paghihinang subalit hindi ito nangangailangan ng anumang pag-coding o pagprograma. Sa pagtatapos ng proyektong ito makakakuha ka ng isang solidong ideya kung paano mo madaling mabuo ang iyong sariling system at mabilis na mapalawak sa pamamagitan ng pagdaragdag ng iyong sariling mga IOT end node sa system.

Mga Pantustos:

  • Raspberry Pi (ginamit namin ang ver. 3 para sa proyektong ito)
  • IOT Cricket WiFi module
  • 2xAAA na may hawak ng baterya
  • 2xAAA na mga baterya

Hakbang 1: Ano ang MQTT?

Nagbibigay ang MQTT protocol ng isang magaan na pamamaraan ng pagsasagawa ng pagmemensahe gamit ang isang i-publish / mag-subscribe na modelo. Ginagawa nitong angkop para sa pagmemensahe sa Internet ng Mga Bagay tulad ng mga low power sensor o mobile device tulad ng mga telepono, naka-embed na computer o microcontroller. (pinagmulan: mosquitto.org)

Maaari kaming gumamit ng maraming mga aparato hangga't gusto naming mag-subscribe sa mga paksa at makinig para sa mga mensahe na dumating. Kung ang ilang (mga) aparato ay naglathala ng isang mensahe sa paksang iyon kung gayon ang lahat ng mga aparato, na naka-subscribe sa paksa, ay agad na natatanggap ang mensaheng iyon. Ang paksa ay maaaring maging anumang di-makatwirang string na karaniwang nagsasama sa / mga character upang payagan na bumuo ng mga paksang hierarchical. Ang pinaka-karaniwang paggamit ng MQTT ay ang pagkakaroon ng isang gitnang server kung saan ang mga aparato ay maaaring mag-subscribe at mag-publish ng mga mensahe. Pinapadali nito ang lahat ng komunikasyon sa pagitan ng mga aparato na konektado sa server na iyon. Sa proyektong ito gagamitin namin ang RPi upang kumilos bilang aming gitnang MQTT broker at ang lahat ng iba pang mga aparato ay magpapadala ng mga mensahe sa pamamagitan ng broker na ito. Ang pinakamahusay na paraan upang malaman ang tungkol dito, ay malinaw naman sa pamamagitan ng paggawa nito sa ating sarili. Maraming mapagkukunan na magagamit sa internet sa MQTT. Gayunpaman, para sa proyektong ito dapat kang maging okay sa isang pangunahing pagpapakilala, na ibinigay namin sa itaas.

Hakbang 2: Pag-install ng MQTT Broker sa Raspberry Pi

Para sa proyektong ito gumagamit kami ng isang bukas na mapagkukunan ng Mosquitto MQTT broker. Ito ay magaan at angkop para magamit sa lahat ng mga aparato mula sa mababang kapangyarihan ng solong mga computer ng board hanggang sa buong mga server.

Bago kami magsimulang mag-install, magandang kasanayan na i-update muna ang mga bahagi ng system:

$ sudo apt-get update $ sudo apt-get upgrade

I-install ang Mosquitto broker. Magbukas ng isang terminal at i-type ang sumusunod na utos:

$ sudo apt-get install mosquitto -y

I-configure ang Mosquitto broker. I-edit ang config file:

$ sudo vi /etc/mosquitto/mosquitto.conf

at idagdag ang mga sumusunod na linya sa itaas:

port 1883allow_anonymous totoo

I-restart ang RPi upang mailapat ang mga pagbabago:

$ sudo reboot

Ayan yun! Tumatakbo na ang aming MQTT broker ngayon!

TANDAAN: alang-alang sa pagiging simple ng proyektong ito hindi kami lumilikha ng mga account. Kaya't ang sinumang nasa loob ng aming lokal na network ay maaaring kumonekta sa MQTT broker na ito nang walang mga kredensyal. Kung nais mong magdagdag ng pagpapatotoo ng gumagamit at gawin itong mas ligtas, maraming mga tutorial sa internet kung paano ito gawin.

Ngayon, kailangan lamang naming makakuha ng IP address upang makapagpadala kami ng mga mensahe sa aming Mosquitto broker mula sa iba pang mga aparato sa network:

Kumuha ng IP address:

$ hostname -ako

iyong_RPi_IP_address (hal. 192.168.1.10)

Hakbang 3: Ikonekta ang IOT Cricket sa RaspberryPi Higit sa MQTT

Ikonekta ang IOT Cricket sa RaspberryPi Higit sa MQTT
Ikonekta ang IOT Cricket sa RaspberryPi Higit sa MQTT
Ikonekta ang IOT Cricket sa RaspberryPi Higit sa MQTT
Ikonekta ang IOT Cricket sa RaspberryPi Higit sa MQTT

Sa proyektong ito ginagamit namin ang module ng IOT Cricket WiFi para sa isang simpleng sensor upang mag-ulat ng temperatura bawat 30 segundo sa aming system. Tatakbo ito sa isang baterya upang mai-stick namin ito kahit saan sa bahay o sa hardin. Sa paglaon maaari mong gamitin ang IOT Cricket upang makabuo ng iba't ibang mga sensor na pinapatakbo ng baterya, mga alarma, pindutan, switch at ikonekta din ang mga ito sa aming RPi MQTT broker sa labas ng kahon.

Sa unang hakbang ikonekta ang mga baterya sa Cricket.

Ang Cricket ay mayroong built-in na sensor ng temperatura. Kailangan lang naming i-configure ito upang maipadala ang halaga ng temperatura sa aming MQTT broker sa pamamagitan ng pagtatakda ng RPi IP address. Upang magawa iyon buksan ang panel ng pagsasaayos ng Cricket (tingnan ang mga hakbang dito) at ilapat ang mga sumusunod na setting (tulad ng ipinakita sa imahe sa ibaba, mangyaring ayusin ang IP address sa kahon na "url" sa iyong RPi)

Ngayon ay maaari na kaming lumabas mula sa mode ng pagsasaayos. Handa na ang aparato! Nagpapadala na ng data ang Cricket sa aming MQTT broker bawat 30 segundo.

Hakbang 4: Suriin ang Mga Mensahe ng MQTT

Suriin ang Mga Mensahe ng MQTT
Suriin ang Mga Mensahe ng MQTT

Upang matingnan / makatanggap ng mga mensahe na ipinadala sa aming MQTT broker maaari kaming gumamit ng iba't ibang mga tool.

Ang pinakamadaling isa ay maaaring isang command line tool na mosquitto_sub. Maaari naming mai-install ito alinman sa anumang computer sa aming network o sa aming RPi gamit ang utos na ito:

$ sudo apt-get install mosquitto-kliyente -y

Ngayon ay maaari naming ipatupad ang sumusunod na utos na makinig sa LAHAT ng mga paksa at mensahe na ipadala sa pamamagitan ng aming MQTT broker:

$ mosquitto_sub -v -h iyong_RPi_IP_address -p 1883 -t '#'

… / 59A98F494C / aparato_pangalan MyTemperatureDev / 59A98F494C / aparato_sn 59A98F494C / 59A98F494C / hwc_wake_up 3794 / 59A98F494C / hwc_wifi_enified 3763 / 59A98F494C / hwc_message …… 049F / 491 59F / 491 59F / 0104 0/4

Ang nasa itaas ay isang halimbawa ng output ng kung ano ang ipinapadala ng IOT Cricket sa aming broker. Kabilang sa iba pang mga data na maaari naming makita mayroong isang temperatura:

/ 59A98F494C / temp 26.0

Ang kagandahan ng MQTT ay pinapayagan kaming mag-subscribe sa mga paksa lamang na interesado kami. Kung nais naming makatanggap ng isang temperatura lamang, maaari kaming mag-subscribe sa / 59A98F494C / temp na paksa sa pamamagitan ng paggamit ng sumusunod na utos:

$ mosquitto_sub -h iyong_RPi_IP_address -t '/ 59A98F494C / temp'

…26.126.527.227.6…

Hakbang 5: Buod

Buod
Buod

Ipinakita namin sa proyektong ito ang isang mahalagang hardware at software upang simulan ang pagbuo ng mababang lakas, mahusay sa enerhiya, mga system ng automation ng bahay batay sa WiFi. Ang MQTT ay ang kakanyahan upang mabuo para sa mas sopistikadong mga system.

Ang ecosystem ng software at mga serbisyo na maaaring isama sa MQTT ay MALAKI! Mayroong maraming mga mahusay na mga sistema tulad ng Home Assistant, Node RED, Grafana, atbp upang hayaan kang magkaroon ng isang mahusay na karanasan ng gumagamit ng iyong sariling system. Hindi lamang tayo makakagawa ng isang simpleng pag-print ng isang temperatura, ngunit maaari kaming magkaroon ng mahusay na mga dashboard na nakikita ang data at pamamahala ng iyong mga aparato.

Ngayon dahil mayroon kaming pangunahing imprastraktura ng system, ang kalangitan ang aming limitasyon sa kung ano ang iba pang mga aparato ng WiFi na maaari naming maitayo gamit ang mga IOT Cricket module at idaragdag sa aming system ng pag-aautomat ng bahay.

Salamat sa pagkuha hanggang dito. Inaasahan namin na nasiyahan ka sa tutorial na ito!

Koponan ng Things On Edge

Hakbang 6: Tungkol Sa Amin

Ang Things On Edge ay isang kumpanya na nakabase sa Cambridge, UK. Nagdidisenyo kami ng module ng Cricket Wi-Fi na pinapatakbo ng baterya na ultra upang mabigyan ka ng pagkakakonekta ng iba't ibang mga elektronikong aparato sa mga smartphone o ibang mga serbisyo sa internet nang literal sa ilang minuto. Hindi ito nangangailangan ng anumang programa at pag-coding. Pinapayagan kang isama ang iyong mga aparato sa isang malaking serbisyo ng ecot ng IOT sa paglipas ng MQTT at HTTP apis.

Inirerekumendang: