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

IOT зүрхний цохилтын хяналт (ESP8266 ба Android програм): 5 алхам
IOT зүрхний цохилтын хяналт (ESP8266 ба Android програм): 5 алхам

Видео: IOT зүрхний цохилтын хяналт (ESP8266 ба Android програм): 5 алхам

Видео: IOT зүрхний цохилтын хяналт (ESP8266 ба Android програм): 5 алхам
Видео: Хэм алдагдалтай иргэдэд зориулсан сургалт - Дэлхийн зүрхний өдөр 2021 #WHD 2024, Арваннэгдүгээр
Anonim
Image
Image

Төгсгөлийн жилийн төслийнхөө хүрээнд би таны зүрхний цохилтыг хянах төхөөрөмж зохион бүтээхийг хүсч, өгөгдлөө сервер дээр хадгалж, зүрхний цохилт хэвийн бус байх үед танд мэдэгдэх болно. Энэхүү төслийн цаад санаа нь зүрхний асуудалтай байгаа үед хэрэглэгчдэд мэдэгдэх fit-bit програм бүтээх гэж оролдсон боловч бодит цагийн мэдээллийг хэрхэн яаж ашиглахаа олж чадаагүй юм. зүрхний цохилтыг хэмжих физик хэлхээ, дохио боловсруулах код бүхий ESP8266 Wi-Fi модуль, кодыг хадгалах сервер, зүрхний цохилтыг харуулах Андройд апп зэрэг.

Физик хэлхээг нарийвчлан харуулсан видеог дээрээс үзнэ үү. Төслийн бүх кодыг миний Github дээрээс олж болно.

Алхам 1: Хэлхээ

Хэлхээ
Хэлхээ

Зүрхний цохилтыг хэмжих хоёр үндсэн арга байдаг боловч энэ төслийн хувьд би хэт ягаан туяа эсвэл улаан гэрлийн эх үүсвэрийг ашиглан арьсны эхний хэдэн давхаргаар хугарсан фотоплетизмографи (PPG) ашиглахаар шийдлээ. Гэрлийн эрч хүчний өөрчлөлтийг хэмжихийн тулд гэрэл мэдрэгчийг ашигладаг (судсаар цус урсаж байх үед). PPG дохио нь маш их чимээ шуугиантай байдаг тул би шаардлагатай давтамжийг шүүхийн тулд зурвасын дамжуулагч шүүлтүүр ашигласан. Хүний зүрх 1-16 Гц давтамжтай цохилдог. Миний ашигладаг op-amp бол lm324 байсан бөгөөд энэ нь надад байгаа бүх op-amp-ийн хамгийн сайн хүчдэлийн унтраалттай байв. Хэрэв та энэ төслийг дахин бүтээж байгаа бол нарийвчлалтай оп-өсгөгч нь илүү сайн сонголт байх болно.

ESP8266 дээрх хамгийн их хүчдэлийн хүлцэл нь 3.3v бөгөөд би самбараа гэмтээхийг хүсээгүй тул ердөө хоёр ашиг олсон.

Дээрх хэлхээг дагаж, талхны тавцан дээр ажиллуулахыг хичээ. Хэрэв танд гэртээ осциллограф байхгүй бол гаралтыг Arduino -д залгаж, төлөвлөж болох боловч хүчдэл нь arduino эсвэл микроконтроллерийн хүлцэлээс өндөр биш байгаа эсэхийг шалгаарай.

Энэ хэлхээг талхны тавцан дээр туршиж үзээд LED болон гэрэл транзистор дээр хуруугаа байрлуулахад гаралтын өөрчлөлт ажиглагдсан. Дараа нь би видеонд үзүүлээгүй самбарыг хамтдаа гагнахаар шийдсэн.

Алхам 2: Дохио боловсруулах код ба серверийн харилцаа холбоо

Image
Image
Дохио боловсруулах код ба серверийн харилцаа холбоо
Дохио боловсруулах код ба серверийн харилцаа холбоо

Би Arduino IDE -ийг ESP8266 дээр ашиглахаар шийдсэн тул ашиглахад тун хялбар болсон. Дохио төлөвлөхөд энэ нь маш их чимээ шуугиантай байсан тул би аравны дээж бүхий FIR хөдлөх дундаж шүүлтүүрээр цэвэрлэхээр шийдэв. Үүнийг хийхийн тулд би Arduino програмыг "тэгшлэх" гэж өөрчилсөн. Дохионы давтамжийг хэмжих аргыг олохын тулд бага зэрэг туршиж үзсэн. Зүрх нь дөрвөн төрлийн импульс, PPG дохионы шинж чанараас шалтгаалан импульс нь янз бүрийн урт, далайцтай байв. Би импульс бүрийн хувьд лавлах цэг болгон дохио үргэлж гаталж байсан мэдэгдэж буй дунд утгыг сонгосон. Би цагираг буфер ашиглан дохионы налуу нь эерэг эсвэл сөрөг байгааг тодорхойлсон. Эдгээр хоёрын хослол нь дохио эерэг бөгөөд тодорхой утгатай тэнцүү байх үеийн импульс хоорондын хугацааг тооцоолох боломжийг надад олгосон юм.

Програм хангамж нь үнэн зөв ашиглах боломжгүй BPM -ийг нэлээд буруу хийсэн. Нэмэлт давталтаар илүү сайн програм зохиож болох боловч цаг хугацааны хязгаарлалтын улмаас энэ нь сонголт биш юм. Кодыг доорх линкээс олж болно.

ESP8266 програм хангамж

Алхам 3: Сервер ба өгөгдлийн харилцаа холбоо

Сервер ба өгөгдлийн харилцаа холбоо
Сервер ба өгөгдлийн харилцаа холбоо

Би өгөгдөл хадгалахын тулд Firebase -ийг ашиглахаар шийдсэн бөгөөд энэ нь үнэгүй үйлчилгээ бөгөөд мобайл аппликейшнд ашиглахад тун хялбар юм. ESP8266 -тай Firebase -ийн албан ёсны API байдаггүй боловч Arduino номын сан маш сайн ажилладаг болохыг олж мэдсэн.

ESP8266WiFi.h номын санд SSID болон Нууц үг ашиглан чиглүүлэгчтэй холбогдох боломжийг олгодог жишээ програм байдаг. Үүнийг самбарыг интернетэд холбоход ашигласан тул өгөгдөл илгээх боломжтой байв.

Өгөгдөл хадгалахад хялбар байсан боловч HTTP POST хүсэлтээр түлхэх мэдэгдлийг илгээхтэй холбоотой олон асуудал байсаар байна. Би Google үүл зурвас болон ESP8266 -ийн HTTP номын сангаар дамжуулан үүнийг хийх хуучин аргыг ашигласан Github -ийн талаархи сэтгэгдлийг олсон. Энэ аргыг миний Github дээрх кодоос харж болно.

Firebase дээр би төсөл үүсгэж, програм хангамж дахь API болон бүртгэлийн түлхүүрүүдийг ашигласан. Firebase клоуд мессежийг хэрэглэгч рүү түлхэх мэдэгдэл илгээх зорилгоор уг аппликэйшнд ашигласан. Харилцааг туршиж үзэхэд ESP8266 ажиллаж байх үед өгөгдлийг мэдээллийн санд харах боломжтой байв.

Алхам 4: Андройд апп

Андройд апп
Андройд апп

Маш энгийн Android програмыг хоёр үйлдлээр бүтээсэн. Эхний үйл ажиллагаа нь хэрэглэгчийг Firebase API ашиглан гарын үсэг зурсан эсвэл бүртгүүлсэн. Би өгөгдлийн хүснэгтийг судалж, Firebase -ийг мобайл програмтай хэрхэн ашиглах талаар янз бүрийн заавар олж авлаа. Хэрэглэгчийн өгөгдлийн хэрэглэгчийг бодит цагийн үйл явдлын сонсогчийг харуулсан үндсэн үйл ажиллагаа тул хэрэглэгчийн АДБ -д өөрчлөлт ороход мэдэгдэхүйц саатал гараагүй болно. Түлхэх мэдэгдлийг өмнө дурдсан Firebase үүл мессеж ашиглан хийсэн. Үүнийг хэрхэн хэрэгжүүлэх талаар Firebase мэдээллийн хуудсан дээр маш их хэрэгтэй мэдээлэл байгаа бөгөөд програмыг Firebase вэбсайт дээрх хяналтын самбараас мэдэгдэл илгээх замаар туршиж үзэх боломжтой.

Үйл ажиллагаа явуулах бүх код, үүл зурвасын аргуудыг миний Github репозитороос олж болно.

Алхам 5: Дүгнэлт

Хэрэглэгчийн BPM -ийг хэмжихэд зарим томоохон асуудлууд гарсан. Утга нь маш олон янз байсан бөгөөд хэрэглэгчийн эрүүл мэндийг тодорхойлоход ашиглах боломжгүй байв. Энэ нь ESP8266 дээр хэрэгжүүлсэн дохио боловсруулах код руу буцсан. Нэмэлт судалгаа хийсний дараа зүрх нь өөр өөр хугацаатай дөрвөн өөр импульстэй болохыг олж мэдсэн тул програм хангамж буруу байсан нь гайхах зүйл биш юм. Үүнтэй тэмцэх арга бол массивын дунджаар дөрвөн импульсийг авч, зүрхний импульсийн зүрхний хугацааг тооцоолох явдал юм.

Системийн үлдсэн хэсэг нь ажиллагаатай байсан боловч энэ нь объектын боломжтой эсэхийг мэдэхийн тулд би бүтээхийг хүссэн маш туршилтын төхөөрөмж юм. Түлхэх мэдэгдэл илгээхэд ашиглаж байсан хуучин код удахгүй ашиглах боломжгүй болно, хэрэв та үүнийг 2018 оны сүүлээр эсвэл сүүлээр уншсан бол өөр аргыг ашиглах шаардлагатай болно. Энэ асуудал нь зөвхөн ESP -тэй холбоотой байдаг, гэхдээ хэрэв та үүнийг WiFi -тэй Arduino дээр ашиглахыг хүсвэл асуудалгүй болно.

Хэрэв танд ямар нэгэн асуулт, асуудал байгаа бол Instructables дээр над руу мессеж бичээрэй.

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