Агуулгын хүснэгт:

Iock -ийн тухай Docker Pi цуврал мэдрэгчтэй төвийн самбар: 13 алхам
Iock -ийн тухай Docker Pi цуврал мэдрэгчтэй төвийн самбар: 13 алхам

Видео: Iock -ийн тухай Docker Pi цуврал мэдрэгчтэй төвийн самбар: 13 алхам

Видео: Iock -ийн тухай Docker Pi цуврал мэдрэгчтэй төвийн самбар: 13 алхам
Видео: Джеки чан Змея в тени орла 1978, 2024, Арваннэгдүгээр
Anonim
IOT -ийн тухай Docker Pi цуврал мэдрэгч зангилааны самбар
IOT -ийн тухай Docker Pi цуврал мэдрэгч зангилааны самбар
IOT -ийн тухай Docker Pi цуврал мэдрэгч зангилааны самбар
IOT -ийн тухай Docker Pi цуврал мэдрэгч зангилааны самбар

Сайн байцгаана уу залуусаа, одоо бараг бүх зүйл IOT -тэй холбоотой байдаг, үүнд эргэлзэх зүйлгүй, манай DockerPi цуврал самбар нь IOT -ийг дэмждэг. Өнөөдөр би SensorHub -ийн DockerPi цувралыг IOT -т хэрхэн ашиглах талаар танилцуулахыг хүсч байна.

Azure IOT HUB дээр суурилсан энэ зүйлийг би ажиллуулж байна. Azure IOT HUB нь сая сая IOT төхөөрөмжүүдийн хооронд найдвартай, найдвартай харилцаа холбоо бүхий IOT шийдлүүдийг бий болгоход ашиглаж болох бөгөөд үүл дээр суурилсан шийдлийн арын хэсэг юм.

Жишээлбэл, та өрөөнийхөө температур, хэн нэгэн танай гэрт интернетэд ирсэн эсэхийг манай SensorHub ашиглан мэдэх боломжтой.

Хангамж

  • 1 x Мэдрэгчийн төвийн самбар
  • 1 x RaspberryPi 3B/3B+/4B
  • 1 x 8GB/16GB TF карт
  • 1 x 5V/2.5A цахилгаан хангамж эсвэл RPi 4B -ийн 5v/3A тэжээлийн хангамж

Алхам 1: DockerPi цуврал SensorHub -ийг RaspberryPi ашиглан хэрхэн суулгах талаар

RaspberryPi ашиглан DockerPi цуврал SensorHub -ийг хэрхэн суулгах талаар
RaspberryPi ашиглан DockerPi цуврал SensorHub -ийг хэрхэн суулгах талаар

Raspberry Pi бүхий SensorHub -ийн DockerPi цувралыг хэрхэн суулгах талаар эхлээд үзье

Та зөвхөн 40 зүү зүү оруулах хэрэгтэй.

Суулгахдаа тэжээлээ унтраагаарай

Алхам 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: Програм хангамжийн орчин (1)

Програм хангамжийн орчин (1)
Програм хангамжийн орчин (1)

Эхлээд та python3 -ийн хувилбарыг шалгах хэрэгтэй.

Алхам 6: Програм хангамжийн орчин (2)

Програм хангамжийн орчин (2)
Програм хангамжийн орчин (2)

Дараа нь та Azure -ийн холбогдох бүрэлдэхүүн хэсгүүдийг суулгах хэрэгтэй бөгөөд болгоомжтой байгаарай, та "python3" гэсэн тушаалыг ашиглах ёстой.

Алхам 7: Програм хангамжийн орчин (3)

Програм хангамжийн орчин (3)
Програм хангамжийн орчин (3)

Дараа нь та git хэрэгслийг аль хэдийн суулгасан эсэхээ шалгах хэрэгтэй, хэрэв та git суулгасан бол дараах тушаалуудыг гүйцэтгэнэ үү.

Алхам 8: Кодууд (1)

Код (1)
Код (1)
  1. Дараах лавлах руу очно уу: azure-iot-sdk-python/tree/master/azure-iot-device/дээжүүд/дэвшилтэт hub-хувилбарууд
  2. Дараах файлыг нээнэ үү: update_twin_reported_properties.py
  3. Та зураг дээрх эх файлын кодыг харах болно.
  4. Зураг дээрх дараах кодуудыг өөрчил: HostName … үүнийг Azure вэбсайтаас авах боломжтой.
  5. Get_twin.py файлыг нээгээд ижил зүйлийг хийнэ үү.

Алхам 9: Кодууд (2)

Код (2)
Код (2)

Та мөн update_twin_reported_properties.py файлд зарим python3 номын санг импортлох хэрэгтэй болно:

Алхам 10: Кодууд (3)

Код (3)
Код (3)

Дараа нь зурган дээрх дараах кодыг нэгдээрэй, та мөн файл дээрээ хуулж буулгах боломжтой.

bus = smbus. SMBus (1) хүлээж байгаа device_client.connect () aReceiveBuf = aReceiveBuf.append (0x00) # 占位 符 for i range (0x01, 0x0D + 1): aReceiveBuf.append (bus.read_byte_data (0X17, i)) хэрэв aReceiveBuf [0X01] & 0x01: state0 = "Чипээс гадуурх температур мэдрэгчийг хэтрүүлбэл!" elif aReceiveBuf [0X01] & 0x02: state0 = "Гадаад температур мэдрэгч байхгүй байна!" өөр: төлөв0 = "Одоогийн чипээс гадуур мэдрэгчийн температур = % d Цельсийн" % 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 (0x17, 0x05)) << 16) | ((bus.read_byte_data (0x17, 0x0A) << 8)) | ((bus.read_byte_data (0x17, 0x09))) state = bus.read_byte_data (0x17, 0x0C) if (state == 0): state = "BMP280 -ийн мэдрэгч зүгээр" өөр: төлөв = "BMP280 -ийн мэдрэгч нь муу"

хүн = автобус. унших_байт_ өгөгдөл (0x17, 0x0D)

if (human == 1): human = "амьд бие илэрсэн" өөр: хүн = "амьд бие байхгүй"

Алхам 11: Кодууд (4)

Код (4)
Код (4)

Дараа нь update_twin_reported_properties.py файлыг ажиллуулаад үр дүнг нь харах болно.

Алхам 12: Кодууд (5)

Код (5)
Код (5)

Дараа нь: get_twin.py файлыг нээгээд дараах кодыг оруулаарай, та кодыг хуулж, файл дээрээ буулгаж болно.

хэвлэх ("{}". формат (ихэр ["мэдээлсэн"] ["төлөв0"])) хэвлэх ("Мэдээлсэн гэрэл нь: {}". формат (ихэр ["мэдээлсэн"] ["гэрэл"]), "Люкс ") хэвлэх (" Самбарын мэдээлсэн температур нь: {} ". формат (ихэр [" мэдээлсэн "] [" температур "])," degC ") хэвлэх (" Мэдэгдэж буй чийгшил: {} ". формат (ихэр [" мэдээлсэн "] [" чийгшил "]),"%") хэвлэх (" Мэдрэгчийн мэдээлсэн температур нь: {} ". формат (ихэр [" мэдээлсэн "] [" температур1 "])," degC ") хэвлэх (" Тайлагнасан агаарын даралт нь: {} ". формат (ихэр [" мэдээлсэн "] [" даралт "])," Па ") хэвлэх (" Тайлагнасан {} ". формат (ихэр [" мэдээлсэн "] [" төлөв "])) хэвлэх ("Амьд биеийг илрүүлэх эсэхийг мэдээлсэн: {}". формат (ихэр ["мэдээлсэн"] ["хүн"]))

Алхам 13: Кодууд (6)

Код (6)
Код (6)

Дараа нь get_twin.py файлыг ажиллуулаад update_twin_reported_properties.py файлаас шинэчлэгдсэн үр дүнг харах болно.

Зөвлөмж болгож буй: