Բովանդակություն:

Docker Pi Series of Sensor Hub Board IOT- ի մասին. 13 քայլ
Docker Pi Series of Sensor Hub Board IOT- ի մասին. 13 քայլ

Video: Docker Pi Series of Sensor Hub Board IOT- ի մասին. 13 քայլ

Video: Docker Pi Series of Sensor Hub Board IOT- ի մասին. 13 քայլ
Video: Azure IoT with Raspberry Pi-Send Temperature and Humidity Sensor Data to Azure IoT Hub using Python 2024, Նոյեմբեր
Anonim
Docker Pi Series of Sensor Hub Board IOT- ի մասին
Docker Pi Series of Sensor Hub Board IOT- ի մասին
Docker Pi Series of Sensor Hub Board IOT- ի մասին
Docker Pi Series of Sensor Hub Board IOT- ի մասին

Ողջույն, բոլոր տղերք: Այսօր գրեթե ամեն ինչ կապված է IOT- ի հետ: Անկասկած, դրա հետ մեկտեղ, մեր DockerPi սերիայի խորհուրդը նաև աջակցում է IOT- ին: Այսօր ես ուզում եմ ներկայացնել SensorHub- ի DockerPi շարքը, թե ինչպես դիմել ձեզ IOT- ին:

Ես գործարկում եմ այս տարրը, որը հիմնված է Azure IOT HUB- ի վրա: Azure IOT HUB- ը կարող է օգտագործվել IOT լուծումներ ստեղծելու համար միլիոնավոր IOT սարքերի միջև հուսալի և ապահով հաղորդակցման և ամպային լուծման հետևի հետևի:

Օրինակ, կարող եք իմանալ ձեր սենյակի ջերմաստիճանը և արդյոք ինչ -որ մեկը ձեր տուն է ժամանել ինտերնետով ՝ օգտագործելով մեր SensorHub- ը:

Պարագաներ

  • 1 x Sensor Hub Board
  • 1 x RaspberryPi 3B/3B+/4B
  • 1 x 8 ԳԲ/16 ԳԲ TF քարտ
  • 1 x 5V/2.5A էլեկտրամատակարարում կամ 5v/3A էլեկտրամատակարարում RPi 4B- ի համար

Քայլ 1. Ինչպես տեղադրել DockerPi շարքը SensorHub- ով RaspberryPi- ով

Ինչպես տեղադրել DockerPi շարքը SensorHub- ով RaspberryPi- ով
Ինչպես տեղադրել DockerPi շարքը SensorHub- ով RaspberryPi- ով

Եկեք նախ նայենք, թե ինչպես կարելի է տեղադրել Raspberry Pi- ով SensorHub- ի DockerPi շարքը

Պարզապես անհրաժեշտ է տեղադրել դրանց մեջ 40 փին կապում:

Beգույշ եղեք: Խնդրում ենք անջատել հոսանքը, երբ դրանք տեղադրում եք:

Քայլ 2. Բացեք RaspberryPi- ի I2C- ը (1)

Բացեք RaspberryPi- ի I2C- ը (1)
Բացեք RaspberryPi- ի I2C- ը (1)

Կատարեք նկարի հրամանը ՝ sudo raspi-config

Քայլ 3. Բացեք RaspberryPi- ի I2C- ն (2)

Բացեք RaspberryPi- ի I2C- ը (2)
Բացեք RaspberryPi- ի I2C- ը (2)

Քայլ 4. Բացեք RaspberryPi- ի I2C- ը (3)

Բացեք RaspberryPi- ի I2C- ը (3)
Բացեք RaspberryPi- ի I2C- ը (3)

Քայլ 5. Softwareրագրաշարի միջավայր (1)

Softwareրագրային ապահովման միջավայր (1)
Softwareրագրային ապահովման միջավայր (1)

Նախ անհրաժեշտ է ստուգել ձեր python3- ի տարբերակը:

Քայլ 6: Softwareրագրաշարի միջավայր (2)

Softwareրագրային միջավայր (2)
Softwareրագրային միջավայր (2)

Այնուհետև անհրաժեշտ է տեղադրել Azure- ի համապատասխան բաղադրիչները: carefulգույշ եղեք, դուք պետք է օգտագործեք այն հրամանը, որը ներառում է «python3» - ը.

Քայլ 7: Softwareրագրային ապահովման միջավայր (3)

Softwareրագրային ապահովման միջավայր (3)
Softwareրագրային ապահովման միջավայր (3)

Հաջորդը դուք պետք է ստուգեք ՝ արդյո՞ք արդեն տեղադրել եք git գործիքը, եթե տեղադրել եք git- ը, խնդրում ենք կատարել հետևյալ հրամանները.

Քայլ 8: Կոդեր (1)

Կոդեր (1)
Կոդեր (1)
  1. Գնացեք հետևյալ գրացուցակին.
  2. Բացեք հետևյալ ֆայլը ՝ update_twin_reported_properties.py
  3. Նկարում կտեսնեք աղբյուրի ֆայլի կոդերը.
  4. փոխեք նկարի հետևյալ կոդերը ՝ HostName…, որը կարող եք ստանալ Azure վեբ կայքից:
  5. Բացեք ֆայլը ՝ get_twin.py և նույնը կատարեք.

Քայլ 9: Կոդեր (2)

Կոդեր (2)
Կոդեր (2)

Դուք նաև պետք է ներմուծեք python3 գրադարաններ update_twin_reported_properties.py ֆայլում ՝

Քայլ 10: Կոդեր (3)

Կոդեր (3)
Կոդեր (3)

Այնուհետև միացեք նկարի հետևյալ կոդերին, կարող եք նաև պատճենել և տեղադրեք ձեր ֆայլի վրա.

bus = smbus. SMBus (1) սպասում են device_client.connect () aReceiveBuf = aReceiveBuf.append (0x00) # 占位 符 i in range (0x01, 0x0D + 1): aReceiveBuf.append (bus.read_byte_data (0X17, թ)) եթե aReceiveBuf [0X01] & 0x01: state0 = "Չիփի ջերմաստիճանի տվիչը չափից դուրս է": elif aReceiveBuf [0X01] & 0x02: state0 = "Արտաքին ջերմաստիճանի տվիչ չկա": else: state0 = "Ընթացիկ անջատված սենսորային ջերմաստիճան = % d Celsius" % aReceiveBuf [0x01]

լույս = (bus.read_byte_data (0x17, 0x03) << 8) | (bus.read_byte_data (0x17, 0x02)) temp = bus.read_byte_data (0x17, 0x05) խոնավություն = bus.read_byte_data (0x17, 0x06) temp1 = bus.read_byte_data (0x17, 0x08) ճնշում = (bus.read_byte_data) << 16) | ((bus.read_byte_data (0x17, 0x0A) << 8)) | ((bus.read_byte_data (0x17, 0x09))) վիճակ = bus.read_byte_data (0x17, 0x0C), եթե (վիճակ == 0): state = "BMP280- ի սենսորը լավ է" այլ: state = "BMP280- ի տվիչը վատ »

մարդ = bus.read_byte_data (0x17, 0x0D)

եթե (մարդ == 1) ՝ մարդ = «կենդանի մարմին է հայտնաբերվել», այլապես ՝ մարդ = «կենդանի մարմին չկա»

Քայլ 11: Կոդեր (4)

Կոդեր (4)
Կոդեր (4)

Այնուհետև գործարկեք ֆայլը update_twin_reported_properties.py և կտեսնեք արդյունքը.

Քայլ 12: Կոդեր (5)

Կոդեր (5)
Կոդեր (5)

Այնուհետև բացեք ֆայլը ՝ get_twin.py և մուտքագրեք հետևյալ ծածկագրերը, կարող եք նաև պատճենել կոդերը և տեղադրեք ձեր ֆայլերի վրա.

տպել («{}». ձևաչափ (երկվորյակ [«զեկուցվել»] [«վիճակ0»])) տպել («Հաղորդվող լույսը ՝ {}». ձևաչափ (երկվորյակ [«հաղորդվել»] [«լույս»]), «Լյուքս ") print (" Տախտակի հաղորդվող ջերմաստիճանն է ՝ {} ". ձևաչափ (երկվորյակ [" հաղորդված "] [" ջերմաստիճան "])," degC ") տպագիր (" Հաղորդվող խոնավությունը ՝ {} ". ձևաչափ (երկվորյակ [" հաշվետվություն »] [« խոնավություն »]),«%») տպել (« Սենսորի հաշվետու ջերմաստիճանը ՝ {} ». օդի ճնշումը հետևյալն է ՝ {} ".) տպել («Հաղորդվում է, թե արդյոք հայտնաբերված կենդանի մարմինն է ՝ {}». ձևաչափ (երկվորյակ [«հաղորդված»] [«մարդ»]))

Քայլ 13: Կոդեր (6)

Կոդեր (6)
Կոդեր (6)

Այնուհետև գործարկեք get_twin.py ֆայլը և կտեսնեք արդյունքը, որը թարմացվում է ֆայլից update_twin_reported_properties.py:

Խորհուրդ ենք տալիս: