Съдържание:

IDC2018IOT Tracker Running Tracker: 6 стъпки
IDC2018IOT Tracker Running Tracker: 6 стъпки

Видео: IDC2018IOT Tracker Running Tracker: 6 стъпки

Видео: IDC2018IOT Tracker Running Tracker: 6 стъпки
Видео: FOSSIL GEN6: Things To Know // How Accurate Is It? 2024, Ноември
Anonim
IDC2018IOT Tracker Running Tracker
IDC2018IOT Tracker Running Tracker

Излязохме с тази идея като част от курса „Интернет на нещата“в IDC Herzliya.

Целта на проекта е да подобри физическите дейности, които включват бягане или ходене с помощта на NodeMCU, няколко сензора и сървър. Резултатът от този проект е много полезно IOT устройство, което може да се превърне в бъдеще в истински производствен продукт, който ще се използва навсякъде! Моля, уведомете ни какво мислите:)

Преди да започнете, уверете се, че имате:

* NodeMCU устройство.

* 1 Пиезоелектричен сензор.

* Сензор MPU6050.

* Една голяма матрица.

* Еластично въже.

* Профил във Firebase.

По избор:

* Множество пиезоелектрични сензори

* мултиплексор

Стъпка 1: Настройка и калибриране на MPU6050

Image
Image

"loading =" мързелив"

Настройка на Piezo
Настройка на Piezo

Инструкции:

  • Свържете пиезото с 1M резистор (вижте приложената снимка).
  • Качете приложената скица.
  • Свържете устройството към единия крак с помощта на еластичното въже.
  • Отворете "сериен плотер".
  • Гледайте видеоклипа, който е приложен към тази стъпка.

Стъпка 3: Интегриране на сензорите към Arduino

Image
Image
Интегриране на сензорите към Arduino
Интегриране на сензорите към Arduino

Видяхме как да калибрираме сензорите, сега ще интегрираме и двата сензора в NodeMCU!

  • Свържете двата сензора към устройството, използвайте същите щифтове, както в стъпки 1+2.
  • Заредете приложената скица.
  • Свържете устройството с двата сензора към един крак.
  • Отворете "сериен плотер".
  • Гледайте прикаченото видео.

Стъпка 4: Изпращане на данни в облака

Изпращане на данни в облака!
Изпращане на данни в облака!
Изпращане на данни в облака!
Изпращане на данни в облака!
Изпращане на данни в облака!
Изпращане на данни в облака!

В тази стъпка ще свържем нашето устройство с облака и ще изпратим данни, за да видим някои невероятни диаграми!

Ще използваме протокола MQTT и ще изпращаме данни до безплатен сървър, наречен "Adafruit".

ЗАБЕЛЕЖКА: Adafruit не поддържа изпращане на данни няколко пъти всяка секунда, той работи на по -бавни темпове, затова ще изпратим усредняване на нашите точки от данни, а не на самите точки от данни. Ще преобразуваме данните от нашите 2 сензора в усреднени данни, като използваме следните трансформации:

* Времето за откриване на стъпки ще се трансформира в стъпки в минута. Продължителността на всяка стъпка може да бъде намерена чрез (millis () - step_timestamp), а усредняването може да се извърши с помощта на филтър, както видяхме по -рано: val = val * 0.7 + new_val * 0.3.

* Стъпковата мощност ще бъде трансформирана в средна степенна мощност. Ще използваме същата методология за използване на "max" за всяка стъпка, но ще използваме филтър, за да направим усредняване, използвайки средно за филтъра = средно * 0,6 + new_val * 0,4.

Инструкции:

  • Въведете уебсайта на Adafruit на адрес io.adafruit.com и се уверете, че имате акаунт.
  • Създайте ново табло за управление, можете да го кръстите „Моят детектор на стъпки“.
  • Вътре в таблото за управление натиснете бутона + и изберете „линейна диаграма“и създайте емисия с име „steps_per_min“.
  • Вътре в таблото за управление, натиснете бутона + и изберете „линейна диаграма“и създайте емисия, наречена „average_step_power“.
  • Сега трябва да видите 2 празни диаграми за всяко от полетата.
  • Използвайте приложената скица и задайте следната конфигурация:

USERNAME = потребителското ви име Adafruit.

KEY = вашият ключ Adafruit

WLAN_SSID = Име на WIFI

WLAN_PASS = WIFI пропуск

mpuStepThreshold = Праг от стъпка 2

След това можете да свържете устройството към един крак и скицата ще изпрати данни за стъпките към сървъра!

Стъпка 5: Използване на 2 устройства едновременно

Използване на 2 устройства едновременно
Използване на 2 устройства едновременно
Използване на 2 устройства едновременно
Използване на 2 устройства едновременно

На тази стъпка ще симулираме 2 души, които ходят с устройството едновременно!

Ще използваме 2 различни устройства - със същите точки на данни, както е обяснено в стъпка 4.

Така че това е наистина лесно, има 3 прости задачи:

1) създайте допълнителни емисии за данните от второто устройство, предлагаме да се даде поправка след „_2“

2) променете блоковете в таблото за управление, за да представите данни от двете емисии.

3) променете името на емисиите в скицата на второто устройство.

4) Вижте резултатите!

ЗАБЕЛЕЖКА:

Adafruit устояват на данни, които идват твърде бързо, може да се наложи да регулирате честотата, на която данните се изпращат до сървъра. направете това, като намерите следното в скицата:

// Изпращайте на всеки 5 секунди и не надвишавайте лимита на Adafruit за безплатни потребители. // Ако използвате премиум или собствен сървър, не се колебайте да промените. // Всеки път, когато изпращате алтернативна точка от данни. if (millis () - lastTimeDataSent> 5000) {

Стъпка 6: Подобрения, бележки и бъдещи планове

Основното предизвикателство:

Основното предизвикателство в проекта беше тестването на NodeMCU при физическа активност. USB кабелът се изключва често и при опит за бързо придвижване може да възникнат проблеми с отделянето на щифтовете. Много пъти дебъгирахме парче код, който действително работеше и проблемът беше във физическата сфера.

Преодоляхме това предизвикателство, като пренесохме лаптопа близо до бегача и написахме всяко парче код наведнъж.

Друго предизвикателство беше да накараме различните компоненти да си взаимодействат гладко:

  • Пиезото с акселерометъра: Запомни го, както е описано в стъпка 3, от творческа идея, която имахме.
  • Сензорите със сървъра: както е описано в стъпка 4, трансформирахме стойностите в други стойности, които могат да бъдат изпратени до сървър с по -бавни темпове.

Ограниченията на системата:

  • Преди употреба се нуждае от калибриране.
  • Трябва да се превърне в по -твърд продукт, който не се разпада лесно при физическа активност.
  • Пиезоелектричният сензор не е много точен.
  • Нуждае се от wifi връзка. (Лесно се решава с гореща точка за мобилен телефон)

Бъдещи планове

Сега, когато имаме напълно работещо устройство за наблюдение на краката, могат да се направят допълнителни подобрения!

Няколко пица!

  • Свържете пиезос към различни области на стъпалото.
  • Използвайте мултиплексор, тъй като NodeMCU поддържа само един аналогов извод.
  • Може да покаже топлинна карта на стъпалото, за да опише зоните на удара.
  • Може да използва тези данни за създаване на сигнали за неправилна стойка и баланс на тялото.

Много устройства!

  • Показахме ви как да свържете 2 устройства едновременно, но можете да свържете 22 пиезота към 22 футболисти!
  • Данните могат да бъдат изложени по време на играта, за да покажат някои интересни показатели за играчите!

Разширени сензори

Използвахме пиезо и акселерометър, но можете да добавите други устройства, които ще обогатят изхода и ще дадат повече данни:

  • Точни лазери за откриване на стъпки.
  • Измерете разстоянието между стъпалото и земята.
  • Измерване на разстоянието между различни играчи (в случай на множество устройства)

Препоръчано: