Orodha ya maudhui:

Mfululizo wa Docker Pi wa Bodi ya Sensor Hub Kuhusu IOT: Hatua 13
Mfululizo wa Docker Pi wa Bodi ya Sensor Hub Kuhusu IOT: Hatua 13

Video: Mfululizo wa Docker Pi wa Bodi ya Sensor Hub Kuhusu IOT: Hatua 13

Video: Mfululizo wa Docker Pi wa Bodi ya Sensor Hub Kuhusu IOT: Hatua 13
Video: А что Ты знаешь о боли? #1 Прохождение Cuphead. Подписывайтесь на канал 2024, Desemba
Anonim
Mfululizo wa Docker Pi wa Bodi ya Sensor Hub Kuhusu IOT
Mfululizo wa Docker Pi wa Bodi ya Sensor Hub Kuhusu IOT
Mfululizo wa Docker Pi wa Bodi ya Sensor Hub Kuhusu IOT
Mfululizo wa Docker Pi wa Bodi ya Sensor Hub Kuhusu IOT

Halo, kila mtu. Siku hizi, karibu kila kitu kinahusiana na IOT. Bila shaka na hiyo, bodi yetu ya safu ya DockerPi pia inasaidia IOT. Leo, nataka kuanzisha safu ya DockerPi ya SensorHub jinsi ya kuomba IOT kwako.

Ninaendesha bidhaa hii ambayo inategemea Azure IOT HUB. Azure IOT HUB inaweza kutumika kujenga suluhisho za IOT na mawasiliano ya kuaminika na salama kati ya mamilioni ya vifaa vya IOT na suluhisho linalosimamiwa na wingu.

Kwa mfano, unaweza kujua hali ya joto ya chumba chako na ikiwa kuna mtu amewasili nyumbani kwako kwenye wavuti kwa kutumia SensorHub yetu.

Vifaa

  • 1 x Bodi ya Sensor Hub
  • 1 x RaspberryPi 3B / 3B + / 4B
  • 1 x 8GB / 16GB Kadi ya TF
  • 1 x 5V / 2.5A usambazaji wa umeme au 5v / 3A umeme kwa RPi 4B

Hatua ya 1: Jinsi ya kusanikisha safu ya DockerPi ya SensorHub na RaspberryPi

Jinsi ya kusanikisha safu ya DockerPi ya SensorHub Pamoja na RaspberryPi
Jinsi ya kusanikisha safu ya DockerPi ya SensorHub Pamoja na RaspberryPi

Wacha tuangalie kwanza jinsi ya kusanikisha safu ya DockerPi ya SensorHub na Raspberry Pi

Unahitaji tu kuingiza pini zao 40pin ndani yake.

Kuwa mwangalifu Tafadhali tafadhali zima umeme wakati unaziweka

Hatua ya 2: Fungua I2C ya RaspberryPi (1)

Fungua I2C ya RaspberryPi (1)
Fungua I2C ya RaspberryPi (1)

Tekeleza amri kwenye picha: sudo raspi-config

Hatua ya 3: Fungua I2C ya RaspberryPi (2)

Fungua I2C ya RaspberryPi (2)
Fungua I2C ya RaspberryPi (2)

Hatua ya 4: Fungua I2C ya RaspberryPi (3)

Fungua I2C ya RaspberryPi (3)
Fungua I2C ya RaspberryPi (3)

Hatua ya 5: Mazingira ya Programu (1)

Mazingira ya Software (1)
Mazingira ya Software (1)

Kwanza unahitaji kuangalia toleo lako la python3.

Hatua ya 6: Mazingira ya Programu (2)

Mazingira ya Software (2)
Mazingira ya Software (2)

Kisha unahitaji kusanikisha vifaa vinavyohusika vya Azure. Kuwa mwangalifu, lazima utumie amri ambayo ni pamoja na "python3":

Hatua ya 7: Mazingira ya Programu (3)

Mazingira ya Software (3)
Mazingira ya Software (3)

Ifuatayo unahitaji kuangalia ikiwa tayari umeweka zana ya git, ikiwa umeweka git, tafadhali tekeleza amri zifuatazo:

Hatua ya 8: Nambari (1)

Nambari (1)
Nambari (1)
  1. Nenda kwenye saraka ifuatayo: azure-iot-sdk-python / mti / bwana / azure-iot-kifaa / sampuli / hali za hali ya juu
  2. Fungua faili ifuatayo: sasisha_twin_reported_properties.py
  3. Utaona nambari za faili za chanzo zifuatazo kwenye picha:
  4. badili kwa nambari zifuatazo kwenye picha: Jina la mwenyeji… ambalo unaweza kupata kutoka kwa wavuti wa Azure.
  5. Fungua faili: pata_twin.py na ufanye vivyo hivyo:

Hatua ya 9: Nambari (2)

Nambari (2)
Nambari (2)

Unahitaji pia kuagiza maktaba kadhaa za python3 katika faili update_twin_reported_properties.py:

Hatua ya 10: Nambari (3)

Nambari (3)
Nambari (3)

Kisha jiunge na nambari zifuatazo kwenye picha, unaweza pia kunakili na kubandika kwenye faili yako:

basi = smbus. SMBus (1) inasubiri kifaa_client.connect () aReceiveBuf = aReceiveBuf.append (0x00) # 占位 符 kwa i katika masafa (0x01, 0x0D + 1): aReceiveBuf.append (bus.read_byte_data (0X17, i)) ikiwa aReceiveBuf [0X01] & 0x01: state0 = "sensa ya joto ya mbali-chip inazidi!" elif aReceiveBuf [0X01] & 0x02: state0 = "Hakuna sensorer ya joto la nje!" kingine: state0 = "Halijoto ya sasa ya kifaa cha mbali-chip =% d Celsius"% aReceiveBuf [0x01]

mwanga = (bus.read_byte_data (0x17, 0x03) << 8) | (bus.read_byte_data (0x17, 0x02)) temp = bus.read_byte_data (0x17, 0x05) unyevu = bus.read_byte_data (0x17, 0x06) temp1 = bus.read_byte_data (0x17, 0x08) shinikizo = (bus.read_byx_data) << 16) | ((bus.read_byte_data (0x17, 0x0A) << 8)) | ((bus.read_byte_data (0x17, 0x09))) state = bus.read_byte_data (0x17, 0x0C) ikiwa (state == 0): state = "sensor ya BMP280 iko sawa" kingine: state = "the sensor of BMP280 is mbaya"

binadamu = bus.read_byte_data (0x17, 0x0D)

ikiwa (binadamu == 1): binadamu = "mwili hai umegunduliwa" mwingine: binadamu = "hakuna mwili hai"

Hatua ya 11: Nambari (4)

Nambari (4)
Nambari (4)

Kisha endesha sasisho la faili_twin_reported_properties.py na utaona matokeo:

Hatua ya 12: Nambari (5)

Nambari (5)
Nambari (5)

Kisha fungua faili: pata_twin.py na pembejeo nambari zifuatazo, unaweza pia kunakili nambari na kubandika kwenye faili zako:

chapa ("{}". fomati (pacha ["iliripotiwa"] ["state0"])) chapa ("Taa iliyoripotiwa ni: {}". fomati (pacha ["iliripotiwa"] ["mwanga"]), "Lux chapa ("Joto lililoripotiwa la bodi ni: {}". fomati (pacha ["iliripotiwa"] ["joto"]), "degC") chapisha ("Unyevu ulioripotiwa ni: {}". fomati (pacha [" Ripoti "] [" unyevu "]),"% ") chapa (" Joto lililoripotiwa la kihisi ni: {} ". fomati (pacha [" iliripotiwa "] [" joto1 "])," degC ") chapisha (" Imeripotiwa shinikizo la hewa ni: {} ". fomati (pacha [" iliripotiwa "] [" shinikizo "])," Pa ") chapa (" Imeripotiwa {} ". fomati (pacha [" iliripotiwa "] [" serikali "]) chapisha ("Imeripotiwa ikiwa hugundua mwili wa moja kwa moja ni: {}". fomati (pacha ["iliripotiwa"] ["mwanadamu"]))

Hatua ya 13: Nambari (6)

Nambari (6)
Nambari (6)

Kisha endesha faili get_twin.py na utaona matokeo ambayo yanasasishwa kutoka faili update_twin_reported_properties.py:

Ilipendekeza: