- Компоненте потребне
- АДКСЛ335 Акцелерометар
- Кружни дијаграм
- Како педометар ради?
- Програмирање бројача корака Ардуино
- Тестирање Ардуино педометра
Фитнес бендови данас постају веома популарни, што не само да броји кораке, већ и прати сагоревање калорија, приказује откуцаје срца, време приказивања и још много тога. А ови ИоТ уређаји се синхронизују са облаком тако да на паметном телефону можете лако да добијете сву историју физичке активности. Такође смо изградили ИоТ заснован систем за праћење пацијената где су критични подаци послати у ТхингСпеак како би се надзирали са било ког места.
Педометри су уређаји који су се користили само за бројање корака. Дакле, у овом упутству ћемо направити једноставан и јефтин ДИИ педометар користећи Ардуино и акцелерометар. Овај педометар ће избројати број корака и приказати их на ЛЦД модулу од 16к2. Овај педометар се може интегрисати са овим Ардуино паметним сатом.
Компоненте потребне
- Ардуино Нано
- АДКСЛ 335 Акцелерометар
- 16 * 2 ЛЦД
- ЛЦД И2Ц модул
- Батерија
АДКСЛ335 Акцелерометар
АДКСЛ335 је комплетни 3-осни аналогни акцелерометар и ради на принципу капацитивног сензора. То је мали, танки модул мале снаге са полисилицијумским површински микро-обрађеним сензором и склоповима за кондиционирање сигнала. АДКСЛ335 акцелерометар може мерити статичко и динамичко убрзање. Овде у овом пројекту Ардуино педометар, АДКСЛ335 акцелерометар ће деловати као сензор педометра.
Аццелерометер је уређај који се може претворити убрзање у било ком смеру одговарајућу променљивог напона. То се постиже употребом кондензатора (референца слика), док се Аццел помера, кондензатор који се налази у њему такође ће претрпети промене (референца слика) на основу кретања, јер је капацитивност променљива, такође се може добити променљиви напон.
Испод су слике за акцелерометар са предње и задње стране, заједно са описом игле -
Пин Опис акцелерометра:
- Вцц-5 волт напајање треба да се повеже на овом пину.
- Кс-ОУТ - Овај пин даје аналогни излаз у к смеру
- И-ОУТ - Овај пин даје аналогни излаз у правцу и
- З-ОУТ - Овај пин даје аналогни излаз у правцу з
- ГНД- Гроунд
- СТ- Овај пин се користи за подешавање осетљивости сензора
Много пројеката градимо помоћу акцелерометра АДКСЛ335, укључујући робота којим се управља гестом, аларм за детекцију земљотреса, игру за пинг понг итд.
Кружни дијаграм
Дијаграм кола за бројач корака Ардуино Аццелерометер је дат у наставку.
У овом кругу повезујемо Ардуино Нано са АДКСЛ335 акцелерометром. Прибадаче Кс, И и З акцелерометра повезане су са аналогним пиновима (А1, А2 и А3) Ардуино Нано-а. За повезивање 16к2 ЛЦД модула са Ардуином користимо И2Ц модул. СЦЛ и СДА пинови И2Ц модула повезани су на А5 и А4 пинове Ардуино Нано-а. Комплетне везе дате су у доњој табели:
Ардуино Нано | АДКСЛ335 |
3.3В | ВЦЦ |
ГНД | ГНД |
А1 | Икс |
А2 | И. |
А3 | З. |
Ардуино Нано | ЛЦД И2Ц модул |
5В | ВЦЦ |
ГНД | ГНД |
А4 | СДА |
А5 | СЦЛ |
Прво смо направили овај педометар користећи Ардуино подешавање на табли
А након успешног тестирања копирали смо га на Перфбоард лемљењем све компоненте на Перфбоард како је приказано доле:
Како педометар ради?
Педометар израчунава укупан број корака које је особа предузела користећи три компоненте покрета које су напред, вертикално и бочно. Систем корака користи акцелерометар да би добио ове вредности. Акцелерометар континуирано ажурира максималне и минималне вредности убрзања са 3 осе након сваког дефинисаног бр. узорака. Просечна вредност ових 3-осних (Мак + Мин) / 2 назива се динамичким нивоом прага и та вредност прага се користи за одлучивање да ли ће се корак предузети или не.
Током трчања педометар може бити у било којој оријентацији, па педометар израчунава кораке помоћу осе чија је промена убрзања највећа.
Сада ћу вам дати кратко упутство о раду овог Ардуино педометра:
- Прво педометар започиње калибрацију чим се укључи.
- Затим у функцији воид лооп непрекидно прима податке са Кс, И и З осе.
- После тога израчунава вектор укупног убрзања од почетне тачке.
- Вектор убрзања је квадратни корен (к ^ 2 + и ^ 2 + з ^ 2) вредности Кс, И и З осе.
- Затим упоређује просечне вредности убрзања са вредностима прага да би бројао број корака.
- Ако вектор убрзања пређе граничну вредност, онда повећава број корака; у супротном, одбацује неваљане вибрације.
Програмирање бројача корака Ардуино
Комплетни код Ардуино бројача корака дат је на крају овог документа. Овде објашњавамо неке важне исечке овог кода.
Као и обично, започните код укључивањем свих потребних библиотека. АДКСЛ335 акцелерометар не захтева библиотеку јер даје аналогни излаз.
#инцлуде
После тога дефинишите Ардуино Пинс, где је акцелерометар повезан.
цонст инт кпин = А1; цонст инт ипин = А2; цонст инт зпин = А3;
Дефинишите граничну вредност за акцелерометар. Ова гранична вредност упоредиће се са вектором убрзања да би се израчунао број корака.
плутајући праг = 6;
Унутар поставке празнине , функција калибрише систем када се напаја.
цалибрате ();
Унутар функције празнине петље очитаће вредности Кс, И и З осе за 100 узорака.
фор (инт а = 0; а <100; а ++) {каццл = флоат (аналогРеад (кпин) - 345); кашњење (1); иаццл = флоат (аналогРеад (ипин) - 346); кашњење (1); заццл = флоат (аналогРеад (зпин) - 416); кашњење (1);
Након добијања вредности оси 3, израчунајте укупни вектор убрзања узимајући квадратни корен вредности Кс, И и З осе.
тотвецт = скрт (((каццл - кавг) * (каццл - кавг)) + ((иаццл - иавг) * (иаццл - иавг)) + ((звал - завг) * (звал - завг)));
Затим израчунајте просек максималних и минималних вредности вектора убрзања.
тотаве = (тотвецт + тотвецт) / 2;
Сада упоредите просечно убрзање са прагом. Ако је просек већи од прага, повећајте број корака и подигните заставицу.
иф (тотаве> праг && флаг == 0) {кораци = кораци + 1; застава = 1; }
Ако је просек већи од прага, али је застава подигнута, онда не предузимајте ништа.
иначе ако (тотаве> праг && флаг == 1) {// Не рачунај}
Ако је укупан просек мањи од прага и застава је подигнута, ставите је.
иф (тотаве <праг && флаг == 1) {флаг = 0; }
Одштампајте број корака на серијском монитору и ЛЦД-у.
Сериал.принтлн (кораци); лцд.принт ("Кораци:"); лцд.принт (кораци);
Тестирање Ардуино педометра
Када су хардвер и код спремни, повежите Ардуино са преносним рачунаром и отпремите код. Сада узмите подешавање педометра у руке и крените корак по корак, требало би да приказује број корака на ЛЦД-у. Понекад повећава број корака када педометар вибрира врло брзо или врло споро.
Комплетни радни видео и код за АДКСЛ335 педометар Ардуино дати су у наставку.