Электронный шагомер на основе трехосного цифрового акселерометра

10.04.2024 |

В статье рассмотрен электрон­ный шагомер, измеряющий чис­ло шагов, пройденное расстояние, скорость движения и число сжи­гаемых калорий, выполненный на основе трехосного акселерометра ADXL345.

Н. Жао

Шагомеры пользуются большим спросом сре­ди людей, активно занимающихся физкульту­рой и спортом. До последнего времени в качестве шагомеров для подсчета числа шагов использо­вались механические приборы маятникового или шарикового типа. Они содержали детектор шагов и простой механический счетчик.

Современные электронные шагомеры стро­ятся с использованием твердотельных инер­циальных сенсоров, выполненных по MEMS- технологии. Эти сенсоры позволяют более точно фиксировать число шагов, кроме того, они имеют меньшие габариты, вес и стои­мость по сравнению с механическими анало­гами и могут встраиваться в плейеры и мо­бильные телефоны. Для построения элек­тронных шагомеров могут быть использова­ны миниатюрные трехосные акселерометры компании Analog Devices типа ADXL335, ADXL345 и ADXL346.

В статье рассматривается электронный шаго­мер, выполненный на основе акселерометра ADXL345 и позволяющий кроме числа шагов из­мерять пройденное расстояние, скорость движе­ния и, как результат, число сгоревших калорий.

Акселерометр ADXL345 содержит FIFO-па­мять на 32 слова, что позволяет разгрузить про­цессор при обработке считываемых с его выхо­да данных. Его разрешение составляет 13 бит, а величина ЕМР – 4 мg, что позволяет измерять число шагов даже при очень медленном движе­нии с ускорением не более 55 мg, при этом сохраняется приемлемая точность подсчета чис­ла шагов и измерения других параметров.

Акселерометр ADXL345 позволяет измерять ускорение в трех направлениях: горизонтальном, вертикальном и боковом, рис. 1. Для обеспечения высокой точности измерения нет необходимости специально ориентировать шагомер, построен­ный на основе такого акселерометра.

Рассмотрим подробнее отдельные элементы ходьбы. На рис. 2 представлены отдельные ста­дии одного шага, а также показано, какие уско­рения действуют на каждой из этих стадий.

На рис. 3 приведена типовая диаграмма ускорений бегущего человека по каждой из осей X, Y, Z акселерометра ADXL345. Из диаграммы следует, что изменение ускорения по одной из осей имеет существенно большую величину, чем изменение этого параметра по двум другим осям. Это значит, что независимо от положения шагомера в пространстве для надежной регист­рации шагов будет использована ось с наиболь­шим пиковым значением ускорения.

 

Рис. 1. Направление осей ускорений бегущего человека

Рис. 2. Диаграмма стадий шага идущего человека


Рис. 3. Диаграмма ускорений бегущего человека

 

Для сглаживания сигналов на выходе акселе­рометра используется цифровой фильтр, рис. 4.

 

 

Рис. 4. Структура цифрового фильтра

 

Результаты фильтрации сигналов акселерометра по оси с наибольшим изменением ускорения приведены на рис. 5. В шагомере происходит об­новление результатов (текущих значений макси­мумов и минимумов сигналов) через каждые 50 выборок. Уровень (макс.+мин.)/2 является ди­намическим пороговым уровнем. В течение 50 выборок этот порог используется для определе­ния события: был ли или не был сделан очеред­ной шаг. Функциональная схема принятия ре­шения о том, произошло или нет ожидаемое событие, приведена на рис. 6. Она содержит ли­нейный сдвиговый регистр и узел, задающий ди­намический пороговый уровень. Линейный сдвиговый регистр включает два регистра, один из которых хранит новую выборку данных (sample_new), другой – предыдущую (samp- le_old). Данные из регистра sample_new сменяют данные в регистре sample_old только в том слу­чае, если измеренное ускорение превышает за­данный динамический порог. Это свидетельству­ет о регистрации выполненного пешеходом шага. Счетчик шагов регистрирует число шагов в соответствии с числом сдвигов в сдвиговом ре­гистре, причем для измерения и регистрации ис­пользуется та ось акселерометра, по которой из­менение ускорения имеет наибольшее значение. Отметим, что на шагомер могут воздействовать ложные вибрации, которые регистрируются как шаги. Для исключения влияния ложных вибраций в алгоритм регистрации числа шагов введе­ны ограничения в виде интервального окна с длительностью от 0.2 с (период шагов бегущего человека) до 2 с (период шагов идущего челове­ка). Акселерометр ADXL345 обеспечивает орга­низацию считывания данных в режиме заданно­го интервального окна. Обработка данных может быть выполнена микроконтроллером ADuC7024 в соответствии с алгоритмом, подробно описан­ным в полном тексте статьи N. Zhao. После под­счета числа шагов N согласно приведенному ниже уравнению может быть определена длина пройденной дистанции S.

Рис. 5. Данные на выходе акселерометра

Рис. 6. Функциональная схема принятия решений при регистрации шагов идущего человека

 

S = N •Δ S,

где ΔS -длина шага.

Отметим, что длина шага зависит от скоро­сти бега или ходьбы и роста пешехода. Чем выше пешеход и чем быстрее он движется, тем больше длина его шага. Спроектированный шагомер обновляет данные о количестве ша­гов, длине пройденной дистанции, скорости движения и сожженных калориях каждые две секунды. В табл. 1 приведены эксперимен тальные зависимости для определения прой­денной дистанции в зависимости от скорости движения и роста пешехода.

Таблица 1. Экспериментальные зависимости пройденной дистанции от скорости движения и роста пешехода

 

Число шагов за 2 с Длина пройденной дис­танции, [рост (м)/К *]
0…2 рост/5
2…3 рост/4
3…4 рост/3
4…5 рост/2
5…6 рост/1.2
6…8 рост
более 8 1.2 рост

* К коэффициент.

 

Частота выборки шагомера составляет 50 Гц. Для разгрузки процессора ИМС акселерометра ADXL345 содержит встроенную FIFO-память. Как уже отмечалось, максимальная скорость че­ловека составляет 5 шагов в секунду. Таким об­разом, данные шагомера должны обновляться не чаще, чем каждые 0.2 с, т.е. микроконтрол­лер может работать в режиме прерывания с ми­нимальным интервалом прерывания 0.2 с.

Для определения скорости движения пеше­хода V может быть использовано следующее выражение:

V = (N •ΔS)/t.

Электронный шагомер кроме основных функ­ций может вычислять число калорий, сгоревших во время ходьбы пешехода. Конечно, этот ре­зультат носит приблизительный характер, т.к. для точного вычисления числа сгоревших кало­рий необходимо знать не только параметры дви­жения, но и учитывать вес пешехода, интенсив­ность метаболизма и т.п. Обычно для таких вы­числений используют типовые эксперименталь­ные зависимости, приведенные в табл. 2.

 

Таблица 2. Число сгоревших калорий в зависимости от скорости движения пешехода

 

Скорость движения, км/ч Число сгоревших калорий на 1 кг веса, ккал/час
8 10
12 15
16 20
20 25

Рис. 7. Упрощенная схема включения акселерометра ADXL345 в электронном шагомере

 

Упрощенная схема включения цифрового акселерометра ADXL345 для реализации функций шагомера приведена на рис. 7. В ка честве микроконтроллера использована ИМС ADuC7024. Для обработки данных может быть использован ПК, в который пользователь предварительно вводит значения своего веса и роста.

ВЫВОДЫ

  1. Электронные шагомеры, выполненные на основе акселерометра типа ADXL345, поз­воляют не только определять число шагов, скорость и длину пройденного пути, но и число калорий, сгоревших за время бега или ходьбы пешехода.
  2. Акселерометр ADXL345 имеет миниа­тюрные размеры и может работать в энергосбе­регающем режиме. При построении электрон­ного шагомера на его основе напряжение пита­ния может составлять не более 1.7 В.