УСТРОЙСТВО ДЕТЕКТИРОВАНИЯ ДВИЖЕНИЙ ТЕЛА, СПОСОБ ДЕТЕКТИРОВАНИЯ ДВИЖЕНИЙ ТЕЛА И ПРОГРАММА ДЕТЕКТИРОВАНИЯ ДВИЖЕНИЙ ТЕЛА
DEVICE FOR DETECTING THE BODY MOVEMENTS, MEANS OF DETECTING THE BODY MOVEMENTS AND PROGRAME OF  DETECTING THE BODY MOVEMENTS

Таким образомОбласть техники, к которой относится изобретение
Настоящее изобретение относится, например, к устройству, способу и программе, которые детектируют и используют движение тела пользователя, например, как в шагомере.
Уровень техники
Чтобы следить за собственным здоровьем или тому подобное, часто определяют количество упражнений человека, используя шагомер. Во многих обычных шагомерах для точного учета количества шагов, в связи с их конструкцией, существуют ограничения в отношении положения установки или направления установки основных модулей. В последние годы, однако, для дополнительного улучшения удобства и простоты использования были предложены устройства детектирования движений тела с произвольным положением установки и направлением установки. Среди них были предложены способ и устройство оценки осанки, в котором используется многоосевой датчик ускорения и выполняется детектирование движения тела с помощью того же датчика. Такой подход является предпочтительным, поскольку возможно его воплощение с незначительными затратами по сравнению со способом использования датчика угла или тому подобное для оценки осанки.
Например, в публикации находящейся на экспертизе заявки на японский патент №2004-141669 раскрыт способ, в котором детектируют ускорение, используя множество датчиков движения тела, имеющих взаимно разные направления детектирования, при этом рабочую ось определяют/выбирают путем анализа структуры сигнала отдельных датчиков, и детектирование ходьбы осуществляют путем анализа сигнала рабочей оси. Кроме того, в публикации, находящейся на экспертизе заявки на японский патент №2005-140533, раскрыт способ, в котором установлен датчик ускорения, имеющий взаимно ортогональные две оси или три оси, при этом направление движений тела в ходе упражнений оценивают по комбинированному вектору сигналов датчика для отдельных осей, и движение тела детектируют путем анализа компонентов сигнала по оцененному направлению упражнения.
Сущность изобретения
Однако в соответствии со способом, раскрытым в публикации находящейся на экспертизе заявки на японский патент №2004-141669, поскольку выбирают только один датчик, пригодный для измерения из множества датчиков в качестве датчика рабочей оси, возникают случаи, когда направление движения тела пользователя, которое требуется детектировать (направление упражнения), не совпадает с выбранной рабочей осью, при этом, по-видимому, существует вероятность ситуации, в которой невозможно точно подсчитывать ряд шагов при выполнении других движений тела, кроме ходьбы. Кроме того, в соответствии со способом, раскрытым в публикации находящейся на экспертизе заявки на японский патент №2005-140533, поскольку свойство колебаний сигнала не учитывают и рассматривают только интенсивность сигнала, по-видимому, существует вероятность того, что также будут подсчитаны другие движения тела, кроме ходьбы.
Здесь другие движения тела, кроме ходьбы, означают другие действия, кроме действий, которые происходят при вертикальном направлении тела пользователя во время ходьбы, и рассматриваются различные действия, такие как действия в случае, когда шагомер, предназначенный для подсчета количества шагов пользователя, удерживают в руке пользователя, и при этом возникает качание в горизонтальном направлении, маятниковые движения, которые возникают в случае, когда, например, шагомер для измерения количества шагов пользователя подвешен на шее пользователя с помощью ремешка для подвески.
Таким образом, желательно, чтобы можно было точно детектировать только движения тела пользователя в вертикальном направлении, возникающие во время ходьбы, и можно было бы подсчитывать их, без влияния других движений тела пользователя, помимо ходьбы, таким образом, чтобы было возможно точно подсчитывать количество шагов пользователя. Кроме того, при детальном изучении движений тела пользователя можно видеть, что в некоторых случаях оно имеет неподвижное состояние или, что также существуют переходные состояния от состояния ходьбы в неподвижное состояние. Кроме того, существуют разные состояния, даже при сравнении состояний действий, таких как состояние ходьбы и состояние бега. Таким образом, возможно точно определять шаг ходьбы пользователя (скорость ходьбы или количество шагов (количество раз) за единицу времени), при этом возможно точно определять состояние действий пользователя, которые используются для более точного измерения количества шагов и т.д.
С учетом описанного выше, цель настоящего изобретения состоит в том, чтобы обеспечить возможность точно детектировать движение тела (действие) пользователя в вертикальном направлении без влияния различных типов шумов и также сделать возможным точно детектировать и использовать частоту движений тела (действие) пользователя, в случае необходимости.
Для того чтобы решить описанные выше проблемы, устройство детектирования движений тела в соответствии с изобретением по п.1 формулы изобретения отличается тем, что оно включает в себя датчик ускорения, выполненный с возможностью его установки на теле пользователя;
средство извлечения вертикального компонента, предназначенное для извлечения вертикального компонента ускорения из выходного сигнала детектирования датчика ускорения;
средство разделения, предназначенное для выполнения разделения компонентов вертикального компонента, выделенного средством выделения вертикального компонента, на высокочастотный компонент и низкочастотный компонент;
средство детектирования, предназначенное для детектирования вероятного положения пика на основе низкочастотного компонента вертикального компонента, разделенного средством разделения;
средство идентификации, предназначенное для идентификации вероятного положения пика, детектируемого средством детектирования, в качестве вероятного положения пика, в случае, когда отношение между энергией низкочастотного компонента и энергией высокочастотного компонента в заданном диапазоне, включающем в себя вероятное положение пика, меньше чем заданное значение; и
средство детектирования движений тела, предназначенное для детектирования движений тела пользователя на основе вероятного положения пика, идентифицированного средством идентификации.
В соответствии с устройством детектирования движений тела в соответствии с изобретением по п.1 формулы изобретения, вертикальный компонент движения тела пользователя выделяют с помощью средства выделения вертикального компонента из выходного сигнала детектирования датчика ускорения. Выделенный вертикальный компонент разделяют с помощью средства разделения на высокочастотный компонент и низкочастотный компонент. Низкочастотный компонент, полученный в результате разделения, включает в себя компоненты, соответствующие движению тела пользователя, и средство детектирования использует его для детектирования вероятного положения пика движения тела.
Кроме того, для каждого заданного диапазона, включающего в себя каждое детектируемое возможное положение пика, получают отношение энергии высокочастотного компонента к энергии низкочастотного компонента. Шумы, вероятно, смешиваются с высокочастотным компонентом. Таким образом, в случае, когда отношение энергии высокочастотного компонента к энергии низкочастотного компонента меньше, чем заданное значение, вероятное положение пика в заданном диапазоне идентифицируют как положение пика. И, наоборот, в случае, когда отношение энергии высокочастотного компонента к энергии низкочастотного компонента больше, чем заданное значение, вероятного положения пика в заданном диапазоне исключают из вероятных положений пика. На основе вероятных положений пика, идентифицированных как указано выше, детектируют движение тела пользователя с помощью средства детектирования движений тела.
В соответствии с этим становится возможным точно детектировать движение тела пользователя в вертикальном направлении, без влияния шумов или тому подобное.
Кроме того, устройство детектирования движений тела в соответствии с изобретением по п.2 формулы изобретения настоящей заявки представляет собой устройство детектирования движений тела по п.1 формулы изобретения, отличающееся тем, что оно включает в себя:
средство принятия решения для определения диапазона предмета сравнения и сравнения форм колебаний, относящихся к заданному диапазону, включающему в себя каждого вероятного положения пика, идентифицированного средством идентификации, и определяя вероятного положения пика в качестве положения пика в случае достижения соответствия,
в котором средство детектирования движений тела детектирует движение тела пользователя на основе положения пика, определенного средством принятия решения.
В соответствии с устройством детектирования движений тела в соответствии с изобретением по п.2 формулы изобретения, в отношении заданного сегмента, включающего в себя каждое вероятное положение пика, идентифицированное средством идентификации, определяют сегмент, который используется как пара, и сравнивают формы колебаний, и вероятное положение пика опорного сигнала сравнения определяют как положение пика в случае, когда формы колебаний обоих сегментов совпадают, и вероятное положения пика исключают из положений пика в случае, когда формы колебаний не совпадают.
В соответствии с этим исключают случай, в котором пик случайно возникает в результате смешения шумов, и только положение пика, истинно соответствующее движению тела пользователя в вертикальном направлении, выделяют и идентифицируют таким образом, что становится возможным точно детектировать движение тела пользователя.
Кроме того, устройство детектирования движений тела в соответствии с изобретением по п.3 формулы изобретения представляет собой устройство детектирования движений тела по пп.1 или 2 формулы изобретения, отличающееся тем, что оно включает в себя
средство оценки интервала, предназначенное для оценки интервала шага, в результате выполнения анализа, относящегося к структуре временной последовательности, сформированной из множества вероятных положений пиков, идентифицированных средством идентификации, или к структуре временной последовательности, сформированной из множества положений пиков, определенной средством принятия решения; и
средство разделения, предназначенное для разделения, по меньшей мере, трех состояний, таких как "неподвижное" состояние, "ходьба/бег" и "неопределенное" состояние, в качестве состояний действий пользователя на основе интервала шага, оценку которого выполняют средством оценки интервала.
В соответствии с устройством детектирования движений тела, в соответствии с изобретением по п.3, средство оценки интервала выполняет оценку интервала шага вероятных положений пика, идентифицированных средством идентификации (интервал между идентифицированными вероятными положениями пика) или интервала шага положений пика, определенных средством принятия решения (интервал между определенными положениями пика), и на основе оценки интервала шага средство разделения определяет, является ли состояние действий пользователя "неподвижным" состоянием, состоянием "ходьбы/бега" или "неопределенным" состоянием.
В соответствии с этим становится возможным точно определять состояние действия пользователя и управлять устройством в соответствии с состоянием действий пользователя, и также становится возможным точно определять интервал шага в случае, когда пользователь находится в состоянии "ходьбы/бега".
Кроме того, устройство детектирования движений тела в соответствии с изобретением по п.11 представляет собой устройство детектирования движений тела по п.1, отличающееся тем, что:
датчик ускорения представляет собой датчик многоосевого типа, и
средство выделения вертикального компонента рассчитывает вектор гравитационного ускорения из вектора ускорения, который представляет собой выходной сигнал детектирования многоосевого датчика ускорения, и выделяет вертикальный компонент ускорения, выполняя расчет, используя вектор ускорения, полученный из многоосевого датчика ускорения, и рассчитанный вектор гравитационного ускорения.
В соответствии с устройством детектирования движений тела, в соответствии с изобретением по п.11 формулы изобретения, средство выделения вертикального компонента рассчитывает вектор гравитационного ускорения по выходному сигналу детектирования (вектор ускорения) из многоосевого датчика ускорения, и выделяет вертикальный компонент ускорения, выполняя расчет, используя выходной сигнал детектирования многоосевого датчика ускорения и рассчитанный вектора гравитационного ускорения.
В соответствии с этим, независимо от способа установки многоосевого датчика ускорения на теле пользователя, становится возможным логически и точно выделять вертикальный компонент его выходного сигнала детектирования (вектор ускорения).
Краткое описание чертежей
На фиг.1 показана блок-схема, поясняющая основную конфигурацию устройства детектирования движений тела в соответствии с вариантом воплощения.
На фиг.2 показана схема, поясняющая вектор an ускорения, вектор g гравитационного ускорения и вертикальный компонент vn вектора an ускорения в случае, когда используется трехосевой датчик ускорения.
На фиг.3 показана схема, поясняющая случай, в котором вертикальный компонент vn вектора an ускорения получают, учитывая углы наклона вектора g гравитационного ускорения в случае, когда используется трехосевой датчик ускорения.
На фиг.4 показана схема, поясняющая случай, когда горизонтальный компонент hn вектора an ускорения получают в случае, когда используется трехосевой датчик ускорения.
На фиг.5 показана схема, поясняющая вектор an ускорения, вектор g гравитационного ускорения и вертикальный компонент vn вектора an ускорения в случае, когда используется двухосевой датчик ускорения.
На фиг.6 показана схема, поясняющая пример графика данных (А) ускорения, длины вектора (В) ускорения, вертикального компонента (С) и горизонтального компонента (D).
На фиг.7 показана схема, представляющая графики сигналов ускорения, детектируемых в случае, когда устройство детектирования движений тела в соответствии с вариантом воплощения используется при установке его на части пояса пользователя.
На фиг.8 показана схема, представляющая график сигналов ускорения, детектируемых в случае, когда устройство детектирования движений тела в соответствии с вариантом воплощения используется при размещении его в кармане брюк пользователя.
На фиг.9 показана схема, поясняющая способ расчета для получения отношения d энергии.
На фиг.10 показана схема, представляющая графики в случае, когда сигналы неправильной формы также смешаны с низкочастотным компонентом xl(n) вертикального компонента x(n) вектора ускорения, детектируемого многоосевым датчиком 1 ускорения.
На фиг.11 показана схема, поясняющая переход состояний действия пользователя.
На фиг.12 показана схема, представляющая форму колебаний в случае, когда шаги детектируют (положение пика определяют) по выходу детектирования датчика 1 ускорения в устройстве детектирования движений тела, показанном на фиг.1.
На фиг.13 показана схема, поясняющая пример уравнения для расчета опорного шага Ps.
На фиг.14 показана схема, поясняющая пример случая, в котором возникает потеря детектирования положения пика в состоянии "ходьбы/бега".
На фиг.15 показана блок-схема, поясняющая шагомер, в котором применяется вариант воплощения настоящего изобретения.
На фиг.16 показана блок-схема последовательности операций, предназначенная для пояснения процесса выделения вертикального компонента.
На фиг.17 показана блок-схема последовательности операций, предназначенная для пояснения процесса детектирования и идентификации вероятного положения пика.
На фиг.18 показана блок-схема последовательности операций, предназначенная для пояснения процесса детектирования положения пика из положений, идентифицированных как вероятные положения пика, и подсчета количества шагов пользователя на основе положений пиков.
На фиг.19 показана блок-схема последовательности операций, предназначенная для пояснения процесса предотвращения потери подсчета, в основном, в непосредственной близости к началу.
На фиг.20 показана блок-схема последовательности операций, поясняющая процесс оценки типа движений тела и процесс подсчета количества шагов.
На фиг.21 показана блок-схема последовательности операций, продолжающая фиг.20.
На фиг.22 показана блок-схема, поясняющая устройство 200 воспроизведения звука, в котором применяется вариант воплощения настоящего изобретения.
На фиг.23 показана блок-схема последовательности операций, поясняющая процесс, в случае, когда соответствующий список воспроизведения выбирают в соответствии с состоянием действий пользователя.
Подробное описание изобретения
Далее, со ссылкой на чертежи, будут описаны вариант воплощения устройства, способ и программа в соответствии с настоящим изобретением.
Основная конфигурация устройства детектирования движений тела
На фиг.1 показана блок-схема, поясняющая основную конфигурацию устройства детектирования движений тела в соответствии с данным вариантом воплощения. Как показано на фиг.1, устройство детектирования движений тела в соответствии с данным вариантом воплощения сформировано из датчика 1 ускорения, модуля 2 выделения вертикального компонента, модуля 3 разделения высокой частоты/низкой частоты, модуля 4 обработки детектирования/определения пика и модуля 5 анализа положения шага.
Устройство детектирования движений тела в соответствии с данным вариантом воплощения используется путем установки его на теле пользователя. Датчик 1 ускорения детектирует ускорение, соответствующее движению тела пользователя в каждый постоянный момент времени, и передает выходной сигнал такого детектирования в модуль 2 выделения вертикального компонента. Из выходного сигнала детектирования датчика 1 ускорения, модуль 2 выделения вертикального компонента выделяет вертикальный компонент вектора ускорения, включающий в себя компонент, соответствующий движению тела в вертикальном направлении, в случае, когда пользователь выполнил упражнение, такое как ходьба или бег, и передает его в модуль 3 разделения высокой частоты/низкой частоты. Следует отметить, что может выполняться аналогово-цифровое (А/Ц, A/D) преобразование вектора ускорения, детектируемого датчиком ускорения 1, на стороне датчика 1 ускорения, на стороне модуля 2 выделения вертикального компонента или между датчиком 1 ускорения и модулем 2 выделения вертикального компонента.
Модуль 3 разделения высокой частоты/низкой частоты разделяет вертикальный компонент вектора ускорения, поступающий из модуля 2 выделения вертикального компонента на высокочастотный компонент, в котором, вероятно, примешаны шумы, и низкочастотный компонент, который включает в себя компонент, соответствующий движению тела пользователя в вертикальном направлении, и подает каждый из этих компонентов в модуль 4 обработки детектирования/определения пика. Модуль 4 обработки детектирования/определения пика представляет собой часть, которая выполняет детектирование пика и детектирование движений тела на основе детектируемых пиков, в ответ на подачу высокочастотного компонента и низкочастотного компонента вертикального компонента вектора ускорения из модуля разделения высокой частоты/низкой частоты.
Таким образом, модуль 4 обработки детектирования/определения пика детектирует вероятное положение пика на основе низкочастотного компонента вертикального компонента вектора ускорения, переданного из модуля 3 разделения высокой частоты/низкой частоты, и идентифицирует положение пика в качестве вероятного положения пика вертикального компонента в случае, когда отношение энергии высокочастотного компонента к энергии низкочастотного компонента в заданном диапазоне, включающем в себя вероятного положения пика, меньше, чем заданное значение.
Причина использования отношения энергии высокочастотного компонента к энергии низкочастотного компонента, как описано выше, состоит в том, что, как будет описано ниже, шумы, вероятно, накладываются на высокочастотный компонент, и необходимо удалить пик, который возникает в результате смешения шумов. На основе вероятного положения пика, идентифицированного, как описано выше, становится возможным детектировать движение тела пользователя в вертикальном направлении с относительно хорошей точностью. Однако для детектирования движений тела пользователя в вертикальном направлении с еще лучшей точностью модуль 4 обработки детектирования/определения пика устройства детектирования движений тела в соответствии с настоящим вариантом воплощения также выполняет обработку сопоставления формы колебаний.
Таким образом, для каждого идентифицированного вероятного положения пика модуль 4 обработки детектирования/определения пика устанавливает заданный диапазон, включающий в себя вероятное положения пика, выполняет сопоставление с формой колебаний в другом заданном диапазоне, используя форму колебаний в каждом заданном диапазоне, который установлен как предмет, и определяет вероятное положение пика, включенное в форму колебаний предмета сравнения, в качестве положения пика в случае получения соответствия. Причина выполнения сопоставления, как описано выше, состоит в том, что периодические упражнения пользователя, такие как ходьба или бег, надежно детектируются, и что, если форма колебаний в заданных диапазонах, включающих в себя разные вероятные положения пика, аналогична, становится возможным определять, что вероятные положения пика возникают периодически.
Положение пика, определенное, как описано выше, несомненно, является положением пика, которое возникло в соответствии с движением тела пользователя в вертикальном направлении, таким образом, становится возможным точно детектировать движение тела пользователя в вертикальном направлении в соответствии с определенным положением пика. Кроме того, в устройстве детектирования движений тела в соответствии с данным вариантом воплощения предусмотрен модуль 5 анализа положения шага.
Модуль 5 анализа положения шага выполнен с возможностью приема предоставляемой информации, обозначающей положение пика, определенное модулем 4 обработки детектирования/определения пика и анализа ее таким образом, что можно детектировать частоту движений тела при ходьбе или беге пользователя (темп ходьбы или бега). Кроме того, как будет подробно описано ниже, обеспечивается возможность выполнения управления различным образом в соответствии с детектированной частотой движений тела пользователя.
Следует отметить, что термин "частота движений" означает частоту или количество раз в случае, когда одно и то же движение повторяется, или что-либо выполняется через одинаковые интервалы. Таким образом, термин "частота движений тела" означает частоту или количество раз движений тела, и означает скорость ходьбы (скорость ходьбы) или количество шагов за единицу времени, когда движение тела представляет собой ходьбу.
Кроме того, в данном описании в качестве термина - синонима для "частоты движений" в некоторых случаях также используется термин "темп". Термин "темп" изначально означает частоту, определенную для оценки музыки при выполнении музыкального произведения (частота следования музыкального произведения). Таким образом, когда упоминается "темп игры" музыкального произведения, имеется в виду скорость во время воспроизведения музыкальных данных, и это означает количество тактов в минуту (ВРМ (ТВМ): количество тактов в минуту).
Кроме того, когда упоминается "темп движений тела (темп действий)" пользователя, он представляет собой частоту движений (действий) тела и означает количество единиц (одно действие (движение тела)) подсчитываемого минимального действия пользователя в минуту, например количество шагов в минуту, в случае, когда движение тела (действие) пользователя представляет собой ходьбу или бег, или количество прыжков в минуту, в случае, когда действие представляет собой прыжки. Как описано выше, термин "частота движений" и термин "темп", используемые в отношении движений тела (действий) пользователя, используются как, по существу, термины-синонимы в данной заявке.
Функции и работа отдельных частей устройства детектирования движений тела
Функции и работа отдельных частей, составляющих устройство детектирования движений тела, в соответствии с данным вариантом воплощения, будут более подробно описаны ниже.
Датчик 1 ускорения
Вначале будет описан датчик 1 ускорения. Устройство детектирования движений тела в этом изобретении позволяет точно детектировать движения тела в вертикальном направлении, которые соответствуют ходьбе или бегу пользователя, на основе выходного сигнала детектирования, поступающего из датчика 1 ускорения, который выполнен с возможностью установки его на теле пользователя. В качестве датчика 1 ускорения возможно использовать датчик одноосевого (одна ось) типа или датчик многоосевого типа, такой как датчик двухосевого или трехосевого типа.
В случае, когда одноосевой датчик ускорения используется в качестве датчика 1 ускорения, для того, чтобы обеспечить возможность детектирования движений тела пользователя в вертикальном направлении, накладывается определенная степень ограничения для положения установки и направления установки. Здесь существует возможность того, что эффект проявится в другом направлении, кроме вертикального направления, в зависимости от положения установки, например, в случае, когда одноосевой датчик ускорения будет установлен на руке, ноге или тому подобное, при этом возможно проявление влияния качания рукой или ногой.
Таким образом, в случае, когда одноосевой датчик ускорения используется в качестве датчика 1 ускорения для того, чтобы как можно более точно детектировать движения тела в вертикальном направлении, которые соответствуют, например, ходьбе или бегу пользователя, возникает ограничение, состоящее в том, что одноосевой датчик ускорения должен быть установлен на части пояса пользователя таким образом, чтобы направление детектирования ускорения было вертикальным направлением. Однако в случае, когда соблюдают такое ограничение, выходной сигнал детектирования одноосевого датчика ускорения можно использовать как вертикальный компонент ускорения. В этом случае сам одноосевой датчик ускорения имеет функцию модуля 2 выделения вертикального компонента.
В отличие от этого, при использовании двухосевого или трехосевого датчика ускорения, который составлен датчиком 1 ускорения, установленным с взаимно ортогональными осями, становится возможным обеспечить гибкость в отношении положения установки и направления установки датчика 1 ускорения. Однако в случае, когда многоосевой датчик ускорения используется в качестве датчика 1 ускорения, становится необходимым выделять вертикальный компонент из выходного сигнала многоосевого детектирования. В устройстве детектирования движений тела в соответствии с этим вариантом воплощения используют, например, трехосевой датчик ускорения в качестве датчика 1 ускорения. Таким образом, модуль 2 выделения вертикального компонента предусмотрен в следующем каскаде датчика 1 ускорения.
Модуль 2 выделения вертикального компонента
Модуль 2 выделения вертикального компонента выполняет обработку для (1) оценки, используя выходной сигнал детектирования многоосевого датчика 1 ускорения, вектор гравитационного ускорения в его поле гравитации, и (2) на основе результата оценки вектора гравитационного ускорения, выделяет компонент сигнала в вертикальном направлении из того же выходного сигнала детектирования датчика 1 ускорения.
В результате выделения вертикального компонента путем всестороннего использования выходных сигналов детектирования, относящихся ко всем осям многоосевого датчика 1 ускорения, как описано выше, нет необходимости выполнять оценку рабочей оси, поэтому становится возможным точно детектировать упражнение пользователя в вертикальном направлении, без влияния положения установки и направления установки датчика 1 ускорения относительно пользователя.
Здесь, в частности, будет описан случай, в котором в качестве датчика 1 ускорения используется трехосевой датчик ускорения. Предположим, что датчик 1 ускорения имеет три оси, такие как ось X, ось Y и ось Z, и что вектор an ускорения в определенный момент времени n, полученный датчиком 1 ускорения, выражается как axn (компонент оси X), ayn (компонент оси Y) и azn (компонент оси Z), как показано в уравнении (1-1) на фиг.2. Вектор g гравитационного ускорения оценивают по вектору ускорения (последовательность данных вектора ускорения), как показано в уравнении (1-1) на фиг.2, и также детектируют движение тела.
В частности, для упрощения оценки вектора g гравитационного ускорения существует способ, в котором рассчитывают среднее значение движения по отдельным осям вектора an ускорения, и их средний вектор используют в качестве вектора g гравитационного ускорения. В этом случае для уменьшения влияния компонентов сигнала, связанных с движением тела, требуется, чтобы расчет средних значений движения был выполнен с использованием достаточно длинного сегмента. Кроме того, можно использовать способ, в котором вектор g гравитационного ускорения рассчитывают путем анализа значения отдельных осей вектора an ускорения с помощью способа наименьших квадратов или тому подобное.
Пусть результат оценки вектора G гравитационного ускорения при использовании вектора an ускорения будет выражен как gx (компонент оси X), gy (компонент оси Y) и gz (компонент оси Z), как показано в уравнении (1-2) на фиг.2. В этом случае вертикальный компонент вектора vn ускорения может быть получен путем расчета, показанного в уравнении (1-3) на фиг.2. Таким образом, как показано в уравнении (1-3) на фиг.2, вертикальный компонент vn вектора an ускорения может быть получен путем деления произведения внутреннего произведения вектора g гравитационного ускорения и вектора an ускорения на абсолютное значение (величину) вектора g гравитационного ускорения.
Как отмечено выше, возможно более точно получить вертикальный компонент vn по расчетам на основе вектора an ускорения, детектируемого трехосевым датчиком ускорения 1 и вектора g гравитационного ускорения, полученного из вектора ускорения. Таким образом, настоящее изобретение выполнено на основе концепции, что возможно точно детектировать движение тела пользователя в вертикальном направлении путем всестороннего использования выходных сигналов детектирования трехосевого датчика 1 ускорения и выделения из него только вертикального компонента путем численных расчетов.
Кроме того, аналогичные расчеты также могут быть выполнены путем получения углов наклона вектора g гравитационного ускорения в трехмерном пространстве, и поворота вектора an ускорения. Таким образом, когда углы θ и φ наклона, относящиеся к вектору g гравитационного ускорения, определяются, как показано в позициях (2-1) и (2-2) на фиг.3, компонент a'xn, рассчитанный по уравнению (2-3) на фиг.3, представляет собой вертикальный компонент вектора an ускорения, и компонент a'xn совпадает с вертикальным компонентом vn. Кроме того, внутреннее произведение вектора a'yn и вектора a'zn представляет собой ортогональную проекцию вектора an ускорения на плоскость, для которой вектор g гравитационного ускорения представляет собой нормальный вектор.
Таким образом, поскольку возможно выполнить разделение компонентов вектора an ускорения, полученного по выходным сигналам детектирования трехосевого датчика 1 ускорения, на вертикальный компонент и горизонтальный компонент, также возможно детектировать движение тела в горизонтальном направлении путем анализа также горизонтального компонента, как и вертикального компонента. В частности, длину hn горизонтального вектора можно получить с помощью уравнения (3-1) на фиг.4 или уравнения (3-2) на фиг.4.
В случае, когда для расчетов используют уравнение, в котором рассматривают углы наклона вектора гравитационного ускорения, как описано выше, становится возможным получать относительно просто и также точно движения тела пользователя в вертикальном направлении и в горизонтальном направлении.
Следует отметить, что, хотя здесь было приведено описание случая, в котором в качестве примера используется трехосевой датчик 1 ускорения, в этом отношении не установлены ограничения. Основная концепция настоящего изобретения может применяться для случая, в котором используют двухосевой датчик ускорения, аналогично случаю, в котором используют трехосевой датчик ускорения.
Таким образом, при детектировании с помощью двухосевого датчика ускорения вектора an ускорения и вектора g гравитационного ускорения, выраженным в соответствии с уравнением (4-1) (вектор ускорения) по фиг.5 и уравнением (4-2) (вектор гравитационного ускорения) по фиг.5, аналогично случаю, в котором используется трехосевой датчик ускорения, становится возможным рассчитать вертикальный компонент в соответствии с уравнением (1-3) по фиг.2.
Кроме того, при выражении угла θ наклона вектора g гравитационного ускорения, как показано в уравнении (4-3) на фиг.5, становится возможным выполнить разделение компонента вектора an ускорения на его вертикальный компонент a'xn и его горизонтальный компонент a'yn, перпендикулярный ему, в соответствии с уравнением (4-4) на фиг.5, и при этом a'xn совпадает с вертикальным компонентом vn.
Как отмечено выше, в соответствии с уравнением, показанным на фиг.5 и уравнением (1-3), показанным на фиг.2, даже в случае, когда используется двухосевой датчик ускорения, становится возможным точно детектировать движение тела пользователя в вертикальном направлении. Кроме того, в случае, когда учитывают угол θ наклона вектора g гравитационного ускорения, также становится возможным точно детектировать движение тела пользователя в горизонтальном направлении.
На фиг.6 показаны в форме графиков полученные данные ускорения и данные, полученные в случае, когда данные ускорения разделяют на компоненты в соответствии с основной концепцией настоящего изобретения, описанного выше для случая, когда данные ускорения получают в течение четырех секунд при частоте выборки 50 Гц, используя трехосевой датчик ускорения, выполненный с возможностью его установки на теле пользователя, в то время, как пользователь выполняет упражнение, такое как ходьба. На фиг.6 по горизонтальной оси отмечено время (миллисекунды) и по вертикальной оси отмечено ускорение (G) гравитации. Кроме того, также на фиг.7, фиг.8, фиг.10, фиг.12 и фиг.14, которые будут описаны ниже, по горизонтальной оси отмечено время (миллисекунды) и на вертикальной оси отмечено ускорение (G) гравитации.
Таким образом, на фиг.6А показан график данных ускорения, полученных с помощью трехосевого датчика ускорения, на фиг.6В показан график длины (величины) вектора ускорения, рассчитанной по данным ускорения по трем осям, и на фиг.6С показан график вертикального компонента, полученного в результате расчета данных ускорения по трем осям, с использованием способа, описанного со ссылкой на фиг.2-4. Кроме того, на фиг.6D показан график горизонтального компонента, выведенный путем расчета по данным ускорения, полученным по трем осям, с помощью способа, описанного со ссылкой на фиг.2-4.
Кроме того, на графике, показанном на фиг.6, представлен случай, когда во время детектирования данных ускорения при выполнении пользователем упражнения, в основном в вертикальном направлении, происходит движение в горизонтальном направлении приблизительно на 80-й выборке, приблизительно на 100-й выборке и на 170-й выборке, и он здесь присутствует как компонент шума.
Однако, поскольку компонент шума присутствует в горизонтальном компоненте, в результате выполнения разделения компонентов данных ускорения (вектора ускорения) на вертикальный компонент (фиг.6С) и горизонтальный компонент (фиг.6D), в соответствии с основной концепцией настоящего изобретения, становится возможным удалить шумы горизонтального компонента из вертикального компонента, таким образом, как следует понимать, становится возможным точно детектировать движение тела пользователя в вертикальном направлении. Очевидно, поскольку шумы вертикального компонента могут быть удалены из горизонтального компонента, становится возможным точно детектировать движение тела пользователя в горизонтальном направлении. Таким образом, в результате разделения компонентов достигается эффект уменьшения шумов.
Следует отметить, что, хотя вертикальный компонент вектора ускорения выделяют в данном случае путем расчета, здесь отсутствуют какие-либо ограничения. Например, длина (величина) вектора ускорения для каждой оси может быть получена с помощью расчетов, и вектор ускорения с наибольшей длиной можно использовать как вертикальный компонент вектора ускорения, наилучшим образом отображающий движения тела пользователя, или выход детектирования (вектор ускорения) оси, оцениваемой как лучше всего отражающей движения тела пользователя, можно использовать как вертикальный компонент.
Однако в случае, когда идентифицируют вертикальный компонент или оценивают ось, соответствующую вертикальному компоненту, в соответствии с длиной вектора ускорения, возникают ситуации, когда определенная степень ограничения накладывается на положение установки и направления установки многоосевого датчика 1 ускорения относительно тела пользователя. Однако в случае, когда вертикальный компонент вектора ускорения выделяют путем расчетов, как описано выше, не накладываются ограничения в отношении положения установки или направления установки многоосевого датчика 1 ускорения относительно тела пользователя, что позволяет улучшить гибкость установки устройства детектирования движений тела относительно пользователя может быть.
Модуль 3 разделения высокой частоты/низкой частоты
Далее будут описаны функция и работа модуля 3 разделения высокой частоты/низкой частоты. Как описано выше, пусть вертикальный компонент vn, выделенный модулем 2 выделения вертикального компонента, будет обозначен функцией x(n). Вертикальный компонент x(n) вектора ускорения, полученный из модуля 2 выделения вертикального компонента, поступает в модуль 3 разделения высокой частоты/низкой частоты. Модуль 3 разделения высокой частоты/низкой частоты выполнен, например, как LPF (ФНЧ, фильтр низкой частоты), и выполняет разделение полос вертикального компонента x(n) вектора ускорения, для разделения его на высокочастотный компонент, h(n) и низкочастотный компонент xl(n).
При этом желательно, чтобы характеристики модуля 3 разделения высокой частоты/низкой частоты, в качестве ФНЧ, были такими, чтобы полоса пропускания составляла от 2 Гц до 4 Гц и включала в себя основные компоненты ускорения при ходьбе или беге. Кроме того, желательно, чтобы вертикальный компонент x(n), высокочастотный компонент xh(n) и низкочастотный компонент xl(n) находились в фазе.
Причина разделения вертикального компонента x(n) на высокочастотный компонент xh(n) и низкочастотный компонент xl(n), как описано выше, состоит в том, что, как описано выше, низкочастотный компонент xl(n) включает в себя большое количество компонентов, которые изменяются при движении тела пользователя в вертикальном направлении, и компоненты шумов, вероятно, примешаны к высокочастотному компоненту xh(n). Высокочастотный компонент xh(n) и низкочастотный компонент xl(n), разделенные модулем 3 разделения высокой частоты/низкой частоты, как описано выше, поступают в модуль 4 обработки детектирования/определения пика.
Функции и работа модуля 4 обработки детектирования/определения пика
Как описано выше, модуль 4 обработки детектирования/определения пика детектирует вероятное положение пика на основе низкочастотного компонента xl(n) вертикального компонента xh(n) вектора ускорения, и идентифицирует вероятное положение пика на основе отношения компонентов между энергией низкочастотного компонента и энергией высокочастотного компонента для каждого заданного диапазона, используя вероятные положения пика в качестве опорного сигнала.
Причина использования отношения компонентов между энергией низкочастотного компонента и энергией высокочастотного компонента, как указано выше, будет описана далее. На фиг.7 и 8 показаны схемы, представляющие графики сигналов ускорения в отдельных полосах, детектируемые в случаях, когда устройство детектирования движений тела в соответствии с данным вариантом воплощения установлено в различных частях тела пользователя. В частности, на фиг.7 показана схема, представляющая график сигналов ускорения, детектируемых в случае, когда устройство детектирования движений тела в соответствии с данным вариантом воплощения используется при закреплении его на части пояса пользователя. На фиг.8 показана схема, представляющая график сигналов ускорения, детектируемых в случае, когда устройство детектирования движений тела в соответствии с данным вариантом воплощения используется при размещении его в кармане брюк пользователя.
На обеих фиг.7 и 8 сигналы ускорения, детектируемые трехосевым датчиком 1 ускорения при ходьбе пользователя измеряли с выборкой с частотой 50 Гц. Кроме того, на обеих фиг.7 и 8 графики в самом верхнем ряду (фиг.7А, фиг.8А) представляют вертикальный компонент, выделенный из трехосевого вектора ускорения, то есть x(n), график, показанный в среднем ряду (фиг.7В, фиг.8В), представляет низкочастотный компонент xl(n) в вертикальном компоненте x(n), и график в самом нижнем ряду (фиг.7С, фиг.8С), представляет высокочастотный компонент xh(n) вертикального компонента x(n).
Кроме того, как показано на фиг.7, в выходном сигнале детектирования трехосевого датчика 1 ускорения, в случае, когда устройство детектирования движений тела в соответствии с данным вариантом воплощения установлено в части пояса пользователя, периодические изменения концентрируются в низкочастотном компоненте xl(n), показанном в среднем ряду, и периодические изменения практически отсутствуют в высокочастотном компоненте, xh(n), показанном в самом нижнем ряду, поэтому следует понимать, что в качестве сигналов ускорения, по существу, измеряют только компоненты, соответствующие движениям вверх и вниз, связанным с ходьбой.
Таким образом, в случае, когда устройство детектирования движений тела в соответствии с данным вариантом воплощения используются при установке его на части пояса пользователя, становится возможным эффективно измерять только компоненты, соответствующие движению тела пользователя в вертикальном направлении. Таким образом, становится возможным детектировать движения тела, такие как ходьба или бег, путем сверки с пороговым значением или детектирования пика формы колебаний низкочастотного компонента xl(n) вертикального компонента x(n), с выполнением их обработки путем подсчета, при этом возможно воплотить шагомер, который позволяет точно подсчитывать количество шагов.
Симметрично этому, как показано на фиг.8, в выходном сигнале детектирования трехосевого датчика 1 ускорения, в случае, когда устройство детектирования движений тела в соответствии с данным вариантом воплощения используется при помещении его в кармане пользователя, возникают компоненты вибрации (компоненты шумов), отличающиеся от периодического движений вверх и вниз, соответствующих ходьбе, как в низкочастотном компоненте xl(n), показанном в среднем ряду, так и в высокочастотном компоненте xh(n), показанном в самом нижнем ряду, в частности, большое их количество возникает в высокочастотном компоненте xh(n), показанном в самом нижнем ряду. Таким образом, даже если выполняется проверка по пороговому значению или детектирование пика для низкочастотного компонента, очень высока вероятность неправильного детектирования шумового компонента, отличающегося от ходьбы, в качестве движения тела.
Кстати, как показано в сегменте А, сегменте В и сегменте С на фиг.8, на графике низкочастотного компонента, представленного в среднем ряду, в случае, когда определяют сегмент (область), где амплитуда ниже 1 G, форма колебаний, соответствующая движениям вверх и вниз, связанная с ходьбой, которая представляет собой периодическое упражнение, представляет собой форму колебаний сигнала сегмента А и сегмента В, и форма колебаний сегмента С является непериодической и представляет собой вибрацию, отличающуюся от ходьбы, то есть шумовой компонент. Кроме того, как показано на фиг. 8, в отличие от сегмента А и сегмента В, в которых высокочастотный компонент слабый, в сегменте С высокочастотный компонент сильный.
Как упомянуто выше, компоненты, соответствующие движениям вверх и вниз пользователя, связанные с ходьбой, которая представляет собой периодическое упражнение, отлично видны в низкочастотном компоненте xl(n), и шумовые компоненты сильно выражены в высокочастотном компоненте xh(n). Таким образом, для каждого вероятного положения пика, детектируемого в качестве вероятного положения пика, определяют заданную область, имеющую заданную ширину времени до и после вероятного положения пика.
Например, заданный диапазон может быть определен как М сегментов выборки перед и М сегментов выборки после вероятного положения пика (М представляет собой целое число, большее чем или равное 1). Следует отметить, что на фиг.7 и 8 минимальное значение, которое относительно невосприимчиво к воздействию шумов, детектируется как значение пика, и положение пика, соответствующее ему, идентифицируется как вероятные положения пика.
В каждом заданном диапазоне, включающем в себя вероятное положение пика, определенное, как упомянуто выше, получают отношение d между энергией низкочастотного компонента xl(n) и энергией высокочастотного компонента xh(n). На фиг.9 показана схема, поясняющая способ расчета для получения отношения d энергии. Энергия eh высокочастотного компонента xh(n) вертикального компонента x(n) вектора ускорения может быть получена с использованием уравнения (5-1), показанного на фиг.9. Кроме того, энергия 1 низкочастотного компонента xl(n) вертикального компонента xh(n) вектора ускорения может быть получена с помощью уравнения (5-2) на фиг.9.
Следует отметить, что в уравнении (5-1) и уравнении (5-2) на фиг.9 n1 обозначает начальное положение заданной области, включающей в себя вероятное положение пика, и n2 обозначает конечное положение заданной области, включающее в себя вероятное положение пика. Кроме того, отношение d энергии между энергией низкочастотного компонента xl(n) и энергией высокочастотного компонента xh(n) может быть получено с помощью уравнения (5-3), показанного на фиг.9.
В случае, когда отношение d энергии, полученное как упомянуто выше, меньше, чем заданное пороговое значение D, положение, детектируемое, как вероятное положение пика, включенное в заданную область, идентифицируют как вероятное положение пика. Таким образом, положение, идентифицированное как вероятное положение пика, определяют как формирующее пик, соответствующий упражнению пользователя, такому как ходьба или бег, и при этом возможно точно подсчитать количество шагов пользователя, который выполняет ходьбу или бег, путем подсчета вероятных положений пика. Таким образом, путем определения заданного порогового значения D и определения состояния ходьбы или бега только, когда отношение d энергии < порогового значения D, можно исключить компоненты вибрации, отличающиеся от ходьбы или бега.
Однако, как описано выше, для детектирования изменений, соответствующих движениям тела пользователя, таким как ходьба или бег, даже если вероятные положения пика детектируются на основе низкочастотного компонента xl(n) вертикального компонента x(n) вектора ускорения и вероятного положения пика, будут идентифицированы с учетом отношения d энергии между энергией el низкочастотного компонента xl(n) и энергией eh высокочастотного компонента xh(n), тем не менее, по-видимому, возможны случаи, когда возникает неправильное определение.
На фиг.10 показана схема, представляющая графики (нерегулярные формы колебаний) в случае, когда нерегулярные сигналы также смешиваются с низкочастотным компонентом xl(n) вертикального компонента x(n), детектируемого многоосевым датчиком 1 ускорения, в результате влияния других, кроме периодических движений тела пользователя, таких как при ходьбе или беге. В случае, когда происходит неравномерная работа, отличающаяся от ходьбы или бега, например, когда пользователь падает, роняет устройство детектирования движений тела, или прыгает, как представлено на графике низкочастотного компонента xl(n) в среднем ряду фиг.10, возникают ситуации, когда примешиваются компоненты нерегулярного движения тела, отличающегося от ходьбы или бега.
Когда компоненты неравномерного движения тела, отличающегося от ходьбы или бега, примешиваются к низкочастотному компоненту xl(n) вертикального компонента x(n) вектора ускорения, как упомянуто выше, по-видимому, возникают случаи, когда они будут неправильно определены, как движения тела, соответствующие ходьбе или бегу, которые представляют собой периодические упражнения. Таким образом, выполняют сравнение, являются ли формы сигнала аналогичными в некоторых сегментах, и определяют, что выполняется ходьба или бег, если формы сигналов аналогичны.
Например, на фиг.10, которая представляет собой график примера вертикального компонента x(n) (фиг.10А), низкочастотный компонент xl(n) (фиг.10В) и высокочастотный компонент xh(n) (фиг.10С) вектора ускорения в случае, когда выполняется нерегулярное действие, отличающееся от ходьбы или бега, становится возможным детектировать положение А, положение В и положение С, как пиковые положения. Что касается этих положений, формируются пары между положением А и положением В, положением В и положением С и положением А и положением С, и получают соответствие в отношении форм колебаний вокруг отдельных положений пика между парой.
В этом случае, как можно видеть на фиг.10, в форме колебаний в непосредственной близости к положению А, в форме колебаний в непосредственной близости к положению В и в форме колебаний в непосредственной близости к положению С отсутствуют взаимно аналогичные пары, таким образом, эту форму определяют как отличающуюся от движений тела при ходьбе или беге, которые представляют собой периодические движения тела, и при этом такую форму можно определить, как движение, не являющееся движением тела во время ходьбы или бега.
В отличие от этого, как показано на фиг.7 и 8, в случае, когда детектируют вертикальный компонент x(n), низкочастотный компонент xl(n) и высокочастотный компонент xh(n) вектора ускорения, в случае, когда установлен заданный сегмент, включающий в себя положение, идентифицированное как вероятные положения пика, и выполняют процесс поиска соответствия с формами колебаний в одном или больше предыдущем или последующих заданных периодах, положение, идентифицированное как вероятные положения пика, поскольку существует аналогичный случай, может быть определено как формальное положение пика.
В частности, в случае примера, показанного на фиг.7, для уменьшения влияния шумов, в связи с минимальным значением, которое следует принять как значение пика на графике низкочастотного компонента xl(n), поскольку степень подобия между формами колебаний, включающими в себя соседние положения пика, очень высока, становится возможным определять положение, идентифицированное как каждое вероятное положение пика, в качестве положения пика. Кроме того, также в случае примера, показанного на фиг.8, для уменьшения влияния шумов, минимальное значение отбирают как значение пика на графике низкочастотного компонента xl(n). Таким образом, степень подобия между формами колебаний, включающими в себя каждое другое положение пика среди вероятных положений пика, очень высока, поэтому положение, идентифицированное как каждое вероятное положение пика, может быть определено как положение пика.
Как описано выше, идентифицируют вероятное положение пика, определяют другой заранее определенный сегмент, с которым выполняют сравнение (получают соответствие) формы колебаний в заданном сегменте, включающем в себя вероятные, и в случае, когда формы колебаний за оба, заранее определенные периоды времени сравнивают друг с другом и степень подобия высока, вероятное положение пика, включенное в заданный сегмент объекта сравнения, может быть определено как положение пика.
Другой заданный сегмент, который сравнивают, может быть определен как соответствующий, например, между расположенными рядом друг с другом, заранее определенными сегментами, между заданными сегментами с одним сегментом между ними, или между заданными сегментами с двумя сегментами между ними. В качестве альтернативы возможно произвольно устанавливать положения или количество заданных сегментов, которые сравнивают, таким образом, при выполнении сравнения с одним или больше предыдущими заданными сегментами (в направлении в прошлое) и при этом определяют вероятное положение пика в заданном сегменте опорного сигнала для сравнения в качестве положения пика, в случае, когда степень подобия с двумя или больше заданными сегментами высока.
Как описано выше, в устройстве детектирования движений тела в соответствии с данным вариантом воплощения модуль 4 обработки детектирования/определения пика не только детектирует вероятное положение пика из информации (формы колебаний) низкочастотного компонента xl(n) вертикального компонента x(n) вектора ускорения и идентифицирует вероятное положение пика с учетом отношения d энергии между энергией el низкочастотного компонента и энергией eh высокочастотного компонента, но также выполняет сравнение формы колебаний (сопоставление формы колебаний) между заданными сегментами, включающими в себя вероятные положения пика, таким образом, что становится возможным точно детектировать периодическое движение тела пользователя, например, во время ходьбы или бега.
Кроме того, поскольку становится возможным точно детектировать периодическое движение тела пользователя, например, во время ходьбы или бега, путем учета движения тела пользователя, обеспечивается возможность воплотить шагомер, который позволяет точно подсчитывать количество шагов пользователя во время ходьбы или бега. Следует отметить, что, если допустимо некоторое ухудшение точности, как описано выше, количество шагов может быть подсчитано в соответствии с вероятными положениями пика, идентифицированными, используя отношение d энергии, без выполнения сопоставления формы колебаний.
Функция и работа модуля 5 анализа положения шага
Используя функции описанных выше отдельных частей датчика 1 ускорения, модуля 2 выделения вертикального компонента, модуля 3 разделения высокой частоты/низкой частоты и модуля 4 обработки детектирования/определения пика, на основе выходных сигналов детектирования, поступающих из датчика 1 ускорения, установленного на теле пользователя, становится возможным точно детектировать движение тела в вертикальном направлении, которое происходит с телом пользователя при ходьбе или во время бега пользователя. Путем подсчета движений тела, детектированных, как описано выше, также становится возможным точно учитывать количество шагов пользователя.
Однако состояние действий пользователя не всегда представляет собой состояние действий, при котором выполняются ходьба или бег, и в некоторых случаях это состояние представляет собой неподвижное состояние или неопределенное состояние, которое не является ни неподвижным состоянием, ни состоянием действия. Таким образом, если возможно точно определить состояние действий пользователя, в случае, когда подсчитывают количество движений тела, например когда подсчитывают количество шагов, становится возможным дополнительно исключить неправильную работу, такую как подсчет движений тела, даже в неподвижном состоянии или в неопределенном состоянии.
Кроме того, если подразумевается, что пользователь находится в состоянии действия, в котором выполняется упражнение, такое как ходьба или бег, становится возможным точно детектировать движение тела пользователя в течение этого периода, точно определять частоту движений тела (темп движений тела) пользователя и управлять устройством в соответствии с переходной частотой движений пользователя. Таким образом, в устройстве детектирования движений тела в соответствии с настоящим вариантом воплощения модуль 5 анализа положения шага выполнен с возможностью приема подаваемой информации, обозначающей положение пика, определенной модулем 4 обработки детектирования/определения пика, и на основе этого точно определять состояние действия пользователя, и также выполнен с возможностью точно детектировать частоту движений тела в случае, когда пользователь выполняет периодическое упражнение, такое как ходьба или бег.
На фиг.11 показана схема, поясняющая переход состояния действий пользователя. Как показано на фиг.11, предполагается, что существуют три состояния "неопределенное", "неподвижное" и "ходьба/бег", как состояния действий пользователя. Здесь "неподвижное" означает состояние, в котором движение тела пользователя полностью отсутствует, "ходьба/бег" означает состояние, в котором пользователь идет или бежит, и "неопределенное" означает другое состояние, кроме описанных выше двух состояний. Кроме того, предполагается, что исходное состояние начинается с "неопределенного". Помимо этого, предполагается, что в случае перехода из "неподвижного" состояния в состояние "ходьбы/бега" или в случае перехода из состояния "ходьбы/бега" в "неподвижное" состояние, происходит переход через "неопределенное" состояние.
Кроме того, в модуле 5 анализа положения шага, на основе определенной информации положения пика из модуля 4 обработки детектирования/определения пика, вначале определяют состояние действий пользователя. Здесь, на фиг.11, путем разделения отдельных состояний перехода, таких, как переход А в переход G, разделяют состояние действий пользователя.
Таким образом, переходы состояний действия подробно определяются, учитывая также случай, в котором каждое состояние поддерживается как одно переходное состояние, например, случай, когда сохраняется "неопределенное" состояние, представляет собой переход А, случай, когда происходит изменение из "неопределенного" состояния в состояние "ходьбы/бега", представляет собой переход В, случай, когда поддерживается состояние "ходьбы/бега", представляет собой переход С, случай, когда происходит переход из состояния "ходьбы/бега" в "неопределенное" состояние, представляет собой переход D, случай, когда происходит переход из "неопределенного" состояния в "неподвижное" состояние, представляет собой переход Е, случай, когда происходит переход из "неподвижного" состояния в "неопределенное" состояние, представляет собой переход F, и случай, когда поддерживается "неподвижное" состояние, представляет собой переход G.
Далее будут описаны условия для разделения отдельных состояний перехода. Как описано выше, разделение отдельных состояний перехода выполняют на основе положения пика, определенного модулем 4 обработки детектирования/определения пика. Ниже "определенное положение пика" также называется "детектируемыми шагом". То есть положение пика, определенное модулем 4 обработки детектирования/определения пика, рассматривается как шаг, соответствующий движению тела пользователя в вертикальном направлении. Кроме того, (1), если ни одно из условий для случая перехода В или условий для случая перехода С, описанных выше, не удовлетворяется, состояние определяют как переход А, и поддерживается "неопределенное" состояние.
Кроме того, (2) после того, как будет определено, что состояние представляет собой переход А, для самых новых детектируемых шагов (определенных положений пика) рассчитывают интервалы времени между соседними шагами. В случае, когда интервалы времени являются постоянными, определяют, что состояние представляет собой переход В, при котором происходит переход из "неопределенного" состояния в состояние "ходьбы/бега", и что состояние действий пользователя стало состоянием "ходьбы/бега". В этом случае опорный интервал шага (опорная частота Ps) рассчитан заранее. Как будет описано ниже, опорный интервал шага представляет собой среднее значение интервалов между шагами, используемое для определения того, что состояние представляет собой переход В.
Кроме того, (3) после того, как будет определено, что состояние представляет собой переход В или переход С, в случае, когда интервал между вновь детектированным шагом и непосредственно предшествующим шагом находится в пределах определенного диапазона ошибки относительно значения кратного целому числу опорного интервала шага (опорная частота Ps), состояние определяется как переход С, и поддерживается состояние "ходьбы/бега". С другой стороны, после того, как состояние будет определено как переход В или переход С, в случае, когда условие для определения состояния как (3) переход С, как описано выше, не удовлетворяется, определяют, что состояние представляет собой переход D, и что состояние действий пользователя представляет собой "неопределенное" состояние.
Кроме того, (5) после того, как состояние будет определено как переход А или переход D, в случае, когда шаги не детектируются (не определяется положение пика) в течение заданного периода времени или дольше, определяют, что состояние представляет собой переход Е, в котором происходит переход из "неопределенного" в "неподвижное", и что состояние действий пользователя представляет собой "неподвижное" состояние. Кроме того, (6) после того, как будет определено, что состояние представляет собой переход Е или переход G, в случае, когда шаг детектируется (определяют положение пика), определяют, что состояние представляет собой переход F, при котором происходит переход из "неподвижного" в "неопределенное" состояние, и что состояние действий пользователя стало "неопределенным" состоянием.
С другой стороны, (7) после того, как состояние будет определено, как переход Е или переход G, в случае, когда шаг не детектируется (положение пика не определяется), состояние определяется как переход G, и в качестве состояния действия пользователя. Поддерживается "неподвижное" состояние.
Следует отметить, что при определении (2), является ли состояние переходом В, как описано выше, критерий определения, является ли интервал шага постоянным, может быть определен в соответствии с наличием вариаций или среднеквадратичного отклонения интервалов шагов, или в соответствии с тем, является ли различие между наибольшим значением и наименьшим значением меньшим или равным пороговому значению. Кроме того, в качестве опорного интервала шага можно использовать среднее значение интервалов времени шагов, используемых для определения, как описано выше. В качестве альтернативы, можно использовать среднее значение интервалов времени шагов, используемых для определения.
На фиг.12 показана схема, представляющая формы колебаний в случае, когда шаг детектируют (определяют положение пика) по выходным сигналам детектирования датчика 1 ускорения, используя функции отдельных частей датчика 1 ускорения, модуля 2 выделения вертикального компонента, модуля 3 разделения высокой частоты/низкой частоты и модуля 4 обработки детектирования/определения пика устройства детектирования движений тела, показанного на фиг.1. Кроме того, как показано на фиг.12, пик получают на стороне минимального значения. Форма колебаний, показанная на фиг.12А, представляет собой форму колебаний в случае, когда детектируют четыре этапа (определенные положения пика) из "неопределенного" состояния. На фиг.12В представлена форма колебаний в случае, когда детектируют непосредственно следующий шаг из состояния, показанного на фиг.12А. Используя фиг.12, в частности, будет описан пример перехода состояния.
Вначале предположим, что исходное состояние представляет собой "неопределенное" состояние по форме колебаний, показанной на фиг.12А. Затем, поскольку детектированы четыре шага (определены два положения пика), модуль 5 анализа положения рассчитывает отдельные интервалы шагов для соседних сегментов Т1, Т2 и Т3 шагов, и сравнивает эти интервалы шагов. В случае данного примера, поскольку интервалы отдельных сегментов Т1, Т2 и Т3 шагов являются, по существу, постоянными, в данном случае состояние может быть определено как переход В, при котором происходит переход из "неопределенного" состояния в состояние "ходьбы/бега".
В это время модуль 5 анализа положения шага рассчитывает опорную частоту Ps движений (опорный интервал шага), используя уравнение (6-1), показанное на фиг.13. Следует отметить, что уравнение (6-1), показанное на фиг.13, представляет собой уравнение для расчета опорной частоты Ps в состоянии, показанном на фиг.12А, и если сегменты шага увеличиваются, эти сегменты добавляют в числитель и количество сегментов в знаменателе изменяется.
Затем, в случае, когда происходит изменение из состояния, показанного на фиг.12А в состояние, показанное на фиг.12В, интервал шага самого последнего сегмента Т4 шага сравнивают с опорной частотой Ps, рассчитанной по уравнению (6-1) на фиг.13. В этом случае, поскольку интервал шага сегмента Т4 шага, и опорная частота Ps движений, по существу, одинаковы, определяют, что разность находится в пределах диапазона ошибки, состояние определяют как переход С, и поддерживают состояние "ходьбы/бега".
Следует отметить, что в качестве представительного значения периода (интервала шага) частоты движений во время ходьбы или бега в состоянии "ходьбы/бега", можно использовать опорную частоту движений или среднее значение интервала шага в пределах определенного сегмента времени или можно использовать среднее значение для заданного количества интервалов шагов.
Кроме того, в приведенном выше описании, не делая различия между состоянием "ходьбы" и состоянием "бега", состояние определяют как одно состояние "ходьбы/бега". Однако здесь не накладываются ограничения. Может быть разрешено определять состояние "ходьбы" и состояние "бега" по отдельности, как разные состояния.
В качестве критериев различия между ходьбой и бегом, в дополнение к условию определения перехода В для положения (2), описанного выше, возможно (А) определить состояние как состояние "бега" в случае, когда интервал шага меньше, чем определенное значение, и определить состояние, как состояние "ходьбы" в других случаях, или (В) определить состояние как состояние "бега" в случае, когда максимальное значение формы колебаний ускорения больше, чем или равно определенному значению, и определить состояние как состояние "ходьбы" в других случаях. Очевидно, что любое из условий (А) или (В), описанных выше, можно использовать, как описано выше, или можно использовать оба условия (А) и (В), описанные выше.
Кроме того, хотя состояние "ходьбы" и состояние "бега" могут быть определены как полностью разные состояния действий, как описано выше, если предположить, что переход состояния происходит в соответствии с фиг.11, в качестве атрибута состояния "ходьбы/бега", используя одно или оба из условий (критериев) (А) и (В), описанных выше, состояние "ходьбы" и состояние "бега" можно определять по отдельности.
Кроме того, при определении, является ли состояние переходом С, вместо непосредственного сравнения интервала шага и опорной частоты (опорного интервала шага) Ps движений, выполняют определение, используя в качестве опорного значения значение, кратное целому числу опорной частоты Ps движений. Таким образом, предотвращается непреднамеренный переход состояния в случае, когда происходит потеря шага при детектировании.
Например, в устройстве детектирования движений тела в данном варианте воплощения, как описано выше, в модуле 4 обработки детектирования/определения пика детектируют вероятное положение пика, вероятное положение пика идентифицируют с учетом энергии высокочастотной полосы и низкочастотной полосы, и, кроме того, выполняют сравнение формы колебаний для каждого заданного интервала, включающего в себя вероятное положение пика, определяя, таким образом, положение пика.
Однако возможно, что подобие при сопоставлении соседних форм колебаний не будет определено, и произойдет потеря детектирования, если форма колебаний ускорения будет временно нарушена, даже, когда пользователь продолжает идти. Таким образом, как описано выше, в случае, когда выполняют определение перехода С с помощью модуля 5 анализа положения шага, путем "определения со ссылкой на значение, кратное целому числу опорной частоты" в модуле 4 обработки детектирования/определения пика на предыдущем этапе, становится возможным стабильно выполнять оценку состояния, даже если происходит потеря детектирования шага при ходьбе (потеря определения положения пика).
Например, на фиг.14 показан пример случая, когда в состоянии "ходьбы/бега" происходит потеря детектирования (потеря подсчета) двух шагов (положений пика), обозначенных знаком × (знаком крестика), таким образом, что интервал между шагом (положениями пика), определенным последним, и шагом (положением пика), определенным непосредственно перед ним, соответствует трем шагам.
В случае примера, показанного на фиг.14, в состоянии определения, в котором состояние представляет собой переход С, в состоянии, когда интервал между вновь детектируемым шагом и непосредственно предыдущим шагом находится в пределах определенного диапазона ошибки относительно значения, кратного целому числу опорного интервала шага (опорной частоты Ps), состояние определяют, как переход С, и поддерживают состояние "ходьбы/бега".
Таким образом, вместо простого накопления детектируемых шагов один за другим, даже в случае, когда шаг (положение пика) не детектируется, в случае, когда поддерживается состояние "ходьбы/бега", используя кратные значения опорной частоты в качестве предметов накопления, становится возможным более точно подсчитывать количество шагов. Поэтому, при применении настоящего изобретения в шагомере, также можно улучшить точность работы шагомера.
Как описано выше, в устройстве детектирования движений тела в соответствии с данным вариантом воплощения отдельные части датчика 1 ускорения, модуля 2 выделения вертикального компонента, модуля 3 разделения высокой частоты/низкой частоты, модуля 4 обработки детектирования/определения пика и модуля 5 анализа положения шага работают организованно таким образом, что становится возможным точно детектировать движение тела пользователя, например, во время ходьбы или бега, и определять его.
Применение в конкретном устройстве
Ниже будут описаны случаи применения устройства, способа и программы в конкретных устройствах. Далее приведено отдельное описание для случая применения настоящего изобретения в шагомере и для случая применения в устройстве воспроизведения звука.
Применение в шагомере
Вначале будет описан случай, в котором вариант воплощения устройства, способа и программы в соответствии с настоящим изобретением применяют в шагомере. На фиг.15 показана блок-схема, поясняющая шагомер 100 в соответствии с данным вариантом воплощения. Как показано на фиг.15, шагомер 100 в данном варианте воплощения сформирован путем соединения трехосевого датчика 101 ускорения с модулем 110 управления через А/Ц преобразователь 102, и путем соединения модуля 103 дисплея с модулем 104 операций.
В качестве трехосевого датчика 101 ускорения можно использовать либо датчик, сформированный путем установки одноосевых датчиков ускорения по трем осям, таким как ось X, ось Y и ось Z, ортогональным друг к другу, или датчик, сформированный путем размещения датчиков ускорения по ортогональным трем осям в одной упаковке. Отдельные выходные сигналы детектирования (аналоговые выходы) оси X, оси Y и оси Z трехосевого датчика 101 ускорения подают в А/Ц преобразователь 102, где их преобразуют в цифровые данные в формате, в котором обеспечивается возможность обработки модуля 110 управления, и цифровые данные поступают в модуль 110 управления.
Модуль 110 управления управляет отдельными частями шагомера 100 в соответствии с данным вариантом воплощения и, как показано на фиг. 15, выполнен как микрокомпьютер, в котором ЦПУ (CPU, центральное процессорное устройство) 111, ПЗУ (ROM, постоянное запоминающее устройство) 112, ОЗУ (RAM, оперативное запоминающее устройство) 113 и энергонезависимое запоминающее устройство 114 соединены через шину 115 ЦПУ.
Здесь ЦПУ 111 выполняет различные программы для формирования сигналов управления, поступающих к отдельным частям, для выполнения различных типов расчетов и т.д., и используется как основной модуль обработки или управления в модуле 110 управления. В ПЗУ 112 сохранены и содержатся различные типы программ, выполняемых ЦПУ 111, или данные, необходимые для обработки.
Кроме того, ОЗУ 113 используется, в основном, как рабочая область, в которой временно сохраняются промежуточные результаты обработки, и которая также используется как буферное запоминающее устройство, или тому подобное, в котором сохраняют и содержат данные ускорения в форме цифровых значений, поступающие из датчика 101 ускорения через А/Ц преобразователь 102. Энергонезависимое запоминающее устройство 114 представляет собой память, в которой сохраненные данные не удаляются, даже при отключении запоминающего устройства, такое как СППЗУ (EEPROM, электрически стираемое, программируемое ПЗУ) или память типа флэш, и в нем сохраняются и содержатся данные, которые должны сохраняться, даже когда питание отключено, такие как параметры, которые были установлены, добавленные программы и т.д.
Кроме того, модуль 103 дисплея, соединенный с модулем 110 управления, включает в себя схему управления дисплеем, и в нем предусмотрен элемент дисплея, такой как ЖКД (LCD, жидкокристаллический дисплей), органический ЭЛ (EL, электролюминесцентный) дисплей, или ЭЛТ (CRT, электронно-лучевая трубка), и на нем отображают значения подсчета количества шагов, различную информацию наставлений и т.д., в соответствии с управлением, осуществляемым модулем 110 управления. В частности, в ответ на подачу данных отображения из модуля 110 управления, модуль 103 дисплея формирует видеосигналы, передаваемые в элемент дисплея, из данных отображения, и передает видеосигналы в элемент дисплея, в результате чего информация отображения, соответствующая данным отображения из модуля 110 управления, отображается на экране дисплея элемента дисплея.
Кроме того, в модуле 104 операций предусмотрена кнопка сброса, различные функциональные кнопки и т.д., и он выполнен с возможностью приема входных команд операций пользователя и передачи электрического сигнала, соответствующего этим командам. Модуль 110 управления выполнен с возможностью управления отдельными частями в ответ на электрический сигнал и выполнения обработки в соответствии с инструкцией пользователя.
Кроме того, в шагомере 100 в соответствии с данным вариантом воплощения, модуль 110 управления воплощает функции модуля 2 выделения вертикального компонента, модуля 3 разделения высокой частоты/низкой частоты, модуля 4 обработки детектирования/определения пика и модуля 5 анализа положения шага устройства детектирования движений тела, показанного на фиг.1, и также воплощает функцию модуля измерения шага, который выполняет измерение шага.
Таким образом, на основе выходных сигналов детектирования из датчика 101 ускорения, как описано со ссылкой на фиг.1, модуль 110 управления шагомера 100 в соответствии с данным вариантом воплощения выполняет выделение вертикального компонента, разделение высокой частоты/низкой частоты вертикального компонента, детектирование вероятного положения пика и идентификацию вероятного положения пика, и принимает решение о положении пика в результате сопоставления формы колебаний, и измеряет количество шагов на основе детектируемого положения пика.
Кроме того, на основе определенного положения пика обеспечивается возможность точно определять состояния действий пользователя и точно определять частоту движений тела при ходьбе, беге или тому подобное, таким образом, что в случае состояния действий пользователя "ходьба/бег" становится возможным более точно подсчитывать количество шагов пользователя на основе частоты движений тела.
Ниже, со ссылкой на блок-схему последовательности операций, показанную на фиг.16-21, будут более подробно описаны различные процессы, выполняемые в основном в модуле 110 управления шагомера в соответствии с настоящим вариантом воплощения, показанным на фиг.15.
Процесс выделения вертикального компонента
На фиг.16 показана блок-схема последовательности операций, предназначенная для пояснения процесса выделения вертикального компонента, выполняемого, в основном, в модуле 110 управления шагомера 100 в соответствии с настоящим вариантом воплощения, показанным на фиг.15. Когда шагомер 100 в соответствии с данным вариантом воплощения включают и вводят инструкцию для выполнения подсчета количества шагов через модуль 104 операций, ЦПУ 111 модуля 110 управления вначале выполняют процесс, показанный на фиг.16.
Модуль 110 управления начинает процесс получения данных ускорения (данных вектора ускорения), передаваемых через А/Ц 102 преобразователь и размещает данные ускорения в буфере ОЗУ 113 (этап S101), и рассчитывает исходное значение вектора g гравитационного ускорения, используя полученный вектор ускорения (этап S102). Затем счетчик с выборок сбрасывают (сбрасывают в ноль) (этап S103). Процесс с этапа S101 до этапа S103 соответствует тому, что называется исходным процессом после включения.
Затем модуль 110 управления определяет, превышает ли значение счетчика с выборок заданное значение N (этап S104). В данном варианте воплощения, для уменьшения количества расчетов выполняют повторный расчет вектора g гравитационного ускорения через интервалы N (N представляет собой целое число, большее или равное 1) выборок.
Когда определяют в процессе определения на этапе S104, что счетчик с выборок содержит большее значение, чем заданное значение N, модуль 110 управления выполняет процесс повторного расчета вектора g гравитационного ускорения (этап S105), и затем устанавливает значение 0 в счетчик с выборок (этап S106). Таким образом, процесс на этапе S106 представляет собой процесс сброса счетчика с выборок. Затем, используя вектор g гравитационного ускорения, полученный в результате самого последнего повторного расчета, и вектор an ускорения, получают вертикальный компонент vn путем расчета, как описано со ссылкой на фиг.2 или фиг.3 (этап S107).
Кроме того, в случае, когда на этапе S104 определяют, что значение в счетчике с выборок не больше, чем значение N, используя исходное значение вектора g гравитационного ускорения, рассчитанное на этапе S102 и самый последний вектор an ускорения, как описано выше, получают вертикальный компонент vn в результате расчета, как описано со ссылкой на фиг.2 или фиг.3 (этап S107).
Затем, после выполнения процесса на этапе S107, модуль 110 управления получает самые последние данные ускорения (этап S108), добавляет 1 к счетчику с выборок (этап S109) и повторяет процесс с этапа S104. Вертикальный компонент вектора ускорения, полученный на этапе S107, как описано выше, используется для процесса разделения высокой частоты/низкой частоты.
В данном варианте воплощения процесс повторного расчета вектора g гравитационного ускорения на этапе S105 и процесс расчета исходного значения вектора гравитационного ускорения на этапе S102, в принципе, представляют собой одни и те же процессы, и вектор g гравитационного ускорения рассчитывают как значение оценки гравитационного ускорения путем отбора среднего значения данных движения по отдельным осям вектора ускорения.
В частности, будут описаны процессы, выполняемые на этапе S102 и этапе S105. Здесь рассмотрен случай, когда текущее положение выборки представляет собой nl, и гравитационное ускорение получено из данных ускорения за последние М выборок. В этом случае, для получения вектора gx гравитационного ускорения по оси Х получают сумму путем сложения данных axn ускорения по оси Х для отдельных выборок от выборки, которая находится на расстоянии М+1 выборок перед текущим положением n1 выборки, и эту сумму делят на значение М, в результате чего получают вектор gx гравитационного ускорения по оси X.
Аналогично в случае, когда требуется получить вектор gy гравитационного ускорения по оси Y, получают сумму путем сложения данных ayn ускорения по оси Y для отдельных выборок от выборки, которая находится на расстоянии М+1 выборок перед текущим положением n1 выборки, и делят эту сумму на значение М, в результате чего получают вектор gy гравитационного ускорения по оси Y. Кроме того, в случае, когда требуется получить вектор gz гравитации по оси Z, получают сумму путем сложения данных azn ускорения по оси Z в отдельных выборках от выборки, которая находится на расстоянии М+1 выборок перед текущим положением n1 выборки, и делят эту сумму на значение М, в результате чего получают вектор gz гравитационного ускорения по оси Z.
В случае, когда вектор гравитационного ускорения рассчитывают так, как описано выше, требуется, чтобы среднее значение было получено с использованием достаточно длинного сегмента таким образом, чтобы компоненты ускорения, связанные с движением, усреднялись и взаимно уравновешивались. Однако, если сегмент слишком длинный, он не может соответствовать наклону устройства (он не может правильно отражать наклон устройства), таким образом, например, целесообразно устанавливать период, равный приблизительно нескольким секундам.
Кроме того, в процессе выделения вертикального компонента на этапе S107, как описано выше, возможно получать (выделять) вертикальный компонент vn на основе самого последнего вектора ускорения и вектора g гравитации с использованием уравнения (1-3), показанного на фиг.2, или уравнения (2-3), показанного на фиг.3.
Как описано выше, модуль 110 управления воплощает функцию модуля 2 выделения вертикального компонента в результате выполнения процесса, показанного на фиг.16.
Следует отметить, что хотя оценка гравитационного ускорения выполняется на интервалах N выборок, для уменьшения количества расчетов, выполняемых шагомером 100 в соответствии с данным вариантом воплощения, как показано на фиг.16, в этом отношении отсутствуют какие-либо ограничения. Оценка гравитационного ускорения может выполняться для каждого образца. Процесс расчета для оценки гравитационного ускорения не ограничивается получением средних значений движения для данных по отдельным осям. Например, можно использовать способ наименьших квадратов или тому подобное.
Процесс разделения высокой частоты/низкой частоты вертикального компонента
Затем вертикальный компонент вектора ускорения, выделенный с помощью процесса, показанного на фиг.16, разделяют на высокочастотный компонент и низкочастотный компонент. В результате, как описано выше, например, путем выделения, в качестве низкочастотного компонента, компонента в полосе от 2 Гц до 4 Гц, которая включает в себя основные компоненты ускорения, связанные с ходьбой или бегом, и путем выделения в качестве высокочастотного компонента, компонентов в полосе, превышающей 4 Гц, становится возможным разделять вертикальный компонент на высокочастотный компонент в заданном диапазоне и низкочастотный компонент в заданном диапазоне.
В вертикальном компоненте x(n), выделенном с помощью процесса, показанного на фиг.16, возникают пики, соответствующие движениям вверх и вниз, получаемые при выполнении пользователем упражнения ходьба. В частности, в низкочастотном компоненте xl(n) вертикального компонента x(n) возникают явно выраженные пики, соответствующие движениям вверх и вниз, связанные с выполняемым пользователем упражнением ходьба. Таким образом, вероятное положение пика детектируют на основе низкочастотного компонента xl(n), полученного в результате разделения вертикального компонента x(n), и вероятного положения пика идентифицируют на основе отношения между энергией низкочастотного компонента xl(n) и энергией высокочастотного компонента xh(n).
Процесс детектирования и идентификации вероятного положения пика
На фиг.17 показана блок-схема последовательности операций, предназначенная для пояснения процесса детектирования и идентификации вероятного положения пика, выполняемого, в основном, модулем 110 управления шагомера 100 в соответствии с данным вариантом воплощения, показанным на фиг.15. Процесс, показанный на фиг.17, выполняют, например, для каждой выборки на основе низкочастотного компонента xl(n) и высокочастотного компонента xh(n), полученных путем разделения вертикального компонента x(n), выделенного в процессе выделения вертикального компонента, описанного с использованием фиг.16.
Вначале, как описано выше, модуль 110 управления выполняет процесс поиска для (детектирования) вероятного положения пика на основе низкочастотного компонента xl(n), отделенного от вертикального компонента x(n) (этап S201). В частности, что касается низкочастотного компонента xl(n), например, для каждой выборки сравнивают последние полученные данные низкочастотного компонента и непосредственно предшествующие данные низкочастотного компонента, и в случае, когда непосредственно предшествующие данные низкочастотного компонента больше, и непосредственно предшествующие данные низкочастотного компонента больше чем или равны заданному значению, непосредственно предшествующие данные низкочастотного компонента детектируют как вероятные значения пика, и положение значения пика детектируют как вероятные положения пика.
Затем модуль 110 управления определяет, было ли детектировано вероятное положение пика (этап S202), и когда определяется, что вероятное положение не было детектировано, модуль 110 управления заканчивает обработку, показанную на фиг.17, и снова выполняет процесс, показанный на фиг.17 в следующий момент времени выборки.
С другой стороны, когда в процессе определения на этапе S202 определяют, что вероятное положение пика было детектировано, модуль 110 управления, используя низкочастотный компонент xl(n) в непосредственной близости к вероятному положению пика, рассчитывает энергию el низкочастотного компонента xl(n) в заданном диапазоне, включающем в себя вероятное положение пика, в соответствии с уравнением (5-2) по фиг.9 (этап S203). Кроме того, аналогично, модуль 110 управления, в результате использования высокочастотного компонента xh(n) в непосредственной близости к вероятному положению пика, рассчитывает энергию eh высокочастотного компонента xh(n) в заданном диапазоне, включающем в себя вероятное положения пика, в соответствии с уравнением (5-1) по фиг.9 (этап S204).
Затем, в соответствии с уравнением (5-3) по фиг.9, модуль 110 управления рассчитывает отношение d энергии между энергией el низкочастотного компонента xl(n), рассчитанной на этапе S203, и энергии eh высокочастотного компонента xh(n), рассчитанной на этапе S204, (этап S205), и определяет, является ли рассчитанное отношение d энергии меньшим, чем заданное пороговое значение D (этап S206).
В случае, когда в процессе определения на этапе S206 определяют, что отношение d энергии не меньше, чем заданное пороговое значение D, то есть, что большой уровень шумов присутствует в высокочастотном компоненте xh(n), поскольку высока вероятность того, что положение, детектируемое в качестве вероятного положения пика, является неправильным детектированием, детектированное вероятное положения пика не идентифицируется как вероятные положения пика, процесс, показанный на фиг.17, заканчивается, и процесс, показанный на фиг.17, выполняется снова в следующий момент времени выборки.
В случае, когда в процессе определения на этапе S206 определяют, что отношение d энергии меньше, чем заданное пороговое значение D, то есть шумы высокочастотного компонента xh(n) малы, поскольку надежность положения, детектированного в качестве вероятного положения пика, высока при определении положения пика, это детектированное вероятное положение пика идентифицируется в качестве вероятного положения пика, и этот вероятные положения пика записывают, например, в буфер записи положения пика, такой как ОЗУ 113 (этап S207). Затем процесс, показанный на фиг.17, заканчивается, и снова выполняется процесс, показанный на фиг.17, в следующий момент времени выборки.
Как описано выше, модуль 110 управления шагомера 100 в соответствии с данным вариантом воплощения детектирует вероятное положение пика на основе низкочастотного компонента xl(n), полученного путем разделения полосы вертикального компонента x(n), выделенного из вектора an ускорения и, кроме того, идентифицирует в качестве вероятного положения пика только положение, которое было надежно определено в качестве вероятного положения пика, на основе энергии el низкочастотного компонента xl(n) и энергии eh высокочастотного компонента xh(n) в заданном диапазоне, включающем в себя положение, детектируемое как вероятное положение пика.
Следует отметить, что процесс, показанный на фиг.17, представляет собой вариант воплощения функции детектирования пика (функция детектирования и идентификации вероятного положения пика) среди функций модуля обработки детектирования/определения пика, воплощенного на основе модуля 110 управления.
Процесс сопоставления формы колебаний и подсчета количества шагов
На фиг.18 показана блок-схема последовательности операций, поясняющая процесс определения положений пика среди положений, идентифицированных в качестве вероятных положений пика, и подсчета количества шагов пользователя на основе положений пика, причем этот процесс выполняется, в основном, в модуле 110 управления шагомера 100 в соответствии с данным вариантом воплощения, показанным на фиг.15.
В процессе, показанном на фиг.18, на основе вероятных положений пика, идентифицированных в процессе, показанном на фиг.17, выполняют сопоставление формы колебаний между заданными сегментами, включающими в себя вероятные положения пика, для определения истинных положений пика, и подсчитывают определенные положения пика, точно подсчитывая, таким образом, количество шагов пользователя.
Вероятные положения пика, идентифицированные в результате процесса, показанного на фиг.18, сохраняют в буфере записи положения пика, например в ОЗУ 113 или тому подобное, используя обработку на этапе S207 в процессе, показанном на фиг.17. Таким образом, модуль 110 управления находит (выполняет поиск) вероятные положения пика, которые еще требуется проверить, из буфера записи положения пика (этап S301). Следует ли еще проверить вероятное положение пика, может быть определено в соответствии с тем, установлен ли флаг "уже проверен" для каждого идентифицированного вероятного положения пика в состояние ВКЛЮЧЕНО/ВЫКЛЮЧЕНО, как будет описано ниже. Обычно, последнее записанное вероятное положение пика становится вероятным положением пика, которое еще требуется проверить.
Затем модуль 110 управления определяет, было ли найдено вероятное р1 положение пика, которое еще требуется проверить, в процессе на этапе S301 (этап S302). Когда в процессе определения на этапе S302 определяют, что вероятное р1 положение пика, которое еще требуется проверить, было найдено, выполняется процесс сопоставления между формой колебания в заданном диапазоне, включающем в себя вероятное р1 положение пика, и формой колебания в заданном диапазоне, включающем в себя другое вероятное положение пика в диапазоне последних N секунд от вероятного р1 положения пика (этап S303).
Следует отметить, что при обработке, выполняемой на этапе S303, хотя это зависит от частоты выборки, выполняют сопоставление с формами колебаний в одном или больше заданных диапазонов. Кроме того, что касается форм колебаний, используемых для сопоставления, его выполняют на основе форм колебаний низкочастотного компонента xl(n). Очевидно, что в качестве форм колебаний для сравнения можно использовать формы колебаний вертикального компонента x(n).
Затем, на основе процесса, выполняемого на этапе S303, модуль 110 управления определяет, был ли найдено последнее вероятное р2 положение пика, соответствующее вероятному р1 положению пика, которое еще требуется проверить (этап S304). Таким образом, в процессе определения на этапе S304 определяют, была ли найдена форма колебаний в заданном диапазоне, включающем в себя последнее вероятное положение пика, имеющее высокую степень подобия с формой колебаний в заданном диапазоне, включающем в себя вероятное р1 положение пика, которое еще требуется проверить.
Когда в процессе определения на этапе S304 определяют, что было найдено последнее вероятное р2 положение пика, соответствующее вероятному р1 положению пика, которое еще требуется проверить, вероятное р1 положение пика, которое еще требуется проверить, определяют как положение пика, и "1" добавляют к величине подсчета количества шагов, и устанавливают флаг "уже подсчитан" для вероятного р1 положения пика, которое еще требуется проверить (этап S305).
Кроме того, определяют, ВКЛЮЧЕН ли флаг "уже подсчитан" для последнего вероятного р2 положения пика, которое в настоящее время было определено как соответствующее (этап S306). В случае, когда флаг "уже подсчитан" последнего вероятного р2 положения пика ВКЛЮЧЕН, флаг "уже проверен" для вероятного р1 положения пика, который еще требуется проверить, включают (этап S307), при этом процесс, показанный на фиг.18, заканчивается, и выполняют ожидание следующего момента времени выполнения.
С другой стороны, когда в процессе определения на этапе S306 определяют, что флаг "уже подсчитан" последнего вероятного р2 положения пика не ВКЛЮЧЕН, в отношении последнего вероятного р2 положения пика, хотя соответствующий пик раньше не существовал, поскольку он в первый раз соответствует вероятному р1 положению пика, последнее вероятное р2 положение пика также определяют как положение пика, и "1" добавляют к величине подсчета количества шагов, и устанавливают флаг "уже подсчитан" для последнего вероятного р2 положения пика (этап S308). Переходя к процессу, выполняемому на этапе S307, флаг устанавливают "уже проверен" для вероятного р1 положения пика, которое еще требуется проверить, (этап S307), при этом процесс, показанный на фиг.18, заканчивается, и выполняют ожидание следующего момента времени выполнения.
Кроме того, в случае, когда в процессе определения на этапе S302 определяют, что вероятное р1 положение пика, которое еще требуется проверить, не найдено, и в случае, когда в процессе определения на этапе S304 определяют, что последнее вероятное р2 положение пика, соответствующее вероятному р1 положению пика, которое еще требуется проверить, не найдено, обработка, показанная на фиг.18, заканчивается, и выполняют ожидание следующего момента времени выполнения.
Как описано выше, после идентификации вероятных положений пика в процессе, описанном с использованием фиг.17, определяют положения пика, и эти определенные положения пика подсчитывают в ходе процесса, показанного на фиг.18, таким образом, что становится возможным точно посчитывать количество шагов, соответствующих ходьбе или бегу пользователя.
Следует отметить, что, хотя количество шагов, соответствующее ходьбе или бегу пользователя, точно подсчитывается здесь путем подсчета определенных положений пика в результате процесса, выполняемого, как показано на фиг.18, пока может обеспечиваться предполагаемая точность, количество шагов, соответствующее ходьбе или бегу пользователя, можно подсчитывать путем подсчета количества вероятных положений пика, идентифицированных в процессе, показанном на фиг.17.
Следует отметить, что в процессе, показанном на фиг.18, воплощены функции определения положения пика среди функций модуля 4 обработки детектирования/определения пика, воплощенного модулем 110 управления, и также воплощена функция подсчета количества шагов, выполняемая шагомером.
Обработка предотвращения потери подсчета в начале работы
Следует отметить, для процесса, показанного на фиг.18, в случае, когда пик отсутствует в последние N секунд, например, в начале состояния ходьбы после неподвижного состояния, происходит потеря подсчета. При этом возможно предотвратить потерю подсчета путем добавления процесса получения соответствия прошлого пика с текущим пиком, как показано на фиг.19.
Таким образом, в случае, когда следует предотвратить потерю подсчета количества шагов непосредственно после начала действия (упражнения), выполняемого пользователем, процесс, показанный на фиг.19, добавляют перед или после процесса, показанного на фиг.18. В этом случае модуль 110 управления находит (выполняет поиск) вероятного р1 положения пика, который представляет собой вероятные положения пика, находящегося за N секунд до настоящего времени и, который все еще следует подсчитать, извлекая его из буфера записи положения пика (этап S401).
Процесс, выполняемый на этапе S401, представляет собой обработку поиска прошлого вероятного положения пика, который еще следует подсчитать. Вкратце, этот процесс представляет собой первоначальный поиск вероятного положения пика. Модуль 110 управления определяет, были ли найдены вероятные положения пика, которые еще следует подсчитать (этап S402).
Когда в процессе определения на этапе S402 определяют, что вероятное р1 положение пика, которое еще требуется подсчитать, было найдено, учитывая в качестве предмета диапазон от вероятного р1 положения пика, которое еще требуется подсчитать, до настоящего момента времени, выполняют сопоставление между формой колебания в заданном диапазоне, включающем в себя вероятное р1 положение пика, которое еще требуется подсчитать, и формой колебания в заданном диапазоне, включающем в себя вероятное положения пика, существующего в диапазоне от вероятного р1 положения пика, которое еще требуется подсчитать, до настоящего времени (этап S403).
В отличие от процесса, выполняемого на этапе S303, показанного на фиг.18, который представляет собой процесс сопоставления формы колебаний в направлении от настоящего момента времени в прошедшее, процесс на этапе S403 представляет собой обработку сопоставления формы колебаний в направлении от прошлого к настоящему.
Затем, на основе процесса, выполняемого на этапе S403, модуль 110 управления определяет, было ли найдено вероятное р2 положение пика в настоящем направлении, соответствующее вероятному р1 положению пика, которое еще требуется проверить (этап S404). Таким образом, в процессе определения, выполняемом на этапе S404, определяют, была ли найдена форма колебаний в заданном диапазоне, включающем в себя вероятное положение пика, имеющее высокую степень подобия, с формой колебаний в заданном диапазоне, включающем в себя вероятное р1 положение пика, которое еще требуется подсчитать, в направлении настоящего времени (направление течения времени).
Когда в процессе определения на этапе S404 определяют, что было найдено вероятное р2 положение пика в направлении настоящего времени, соответствующее вероятному р1 положению пика, которое еще требуется проверить, "1" добавляют к величине подсчета количества шагов, и флаг "уже подсчитан" устанавливают для вероятного р1 положения пика, которое еще требуется проверить (этап S405).
Таким образом, в случае, когда прошлые вероятные положения пика не были определены как положение пика, поскольку в прошлом вероятное положение пика отсутствует, форма колебаний, имеющая высокую степень подобия, существует в сравнении с последующей формой колебаний, возможно определить прошлое вероятное положение пика, как положение пика, и подсчитать это положение пика.
Кроме того, модуль 110 управления определяет, ВКЛЮЧЕН ли флаг "уже подсчитан" для вероятного р2 положения пика в направлении к настоящему времени (этап S406). Когда в процессе определения на этапе S406 определяют, что флаг "уже подсчитан" ВКЛЮЧЕН для вероятного р2 положения пика в направлении настоящего времени, вероятное р2 положение пика в направлении настоящего времени также определяется как положение пика, при этом значение "1" добавляют к величине подсчета количества шагов, и устанавливают флаг "уже подсчитан" для вероятного р2 положения пика в направлении настоящего времени (этап S407).
Затем, в случае, когда в процессе определения на этапе S406 определяют, что флаг "уже подсчитан" для вероятного р2 положения пика в направлении настоящего времени ВКЛЮЧЕН, или после обработки на этапе S407, модуль 110 управления заканчивает процесс, показанный на фиг.19, и ожидает следующего момента времени выполнения.
В результате выполнения процесса, показанного на фиг.19, в дополнение к процессу, показанному на фиг.19, например, в отношении формы колебаний в непосредственной близости к первому пику, становится возможным получить соответствие с формой колебания, расположенной в непосредственной близости к более позднему по времени (будущему) пику для определения, действительно ли он является пиком, и для его подсчета, когда он представляет собой пик.
Обработка оценки типа движения тела и обработка подсчета количества шагов
Как описано выше, путем идентификации вероятного положения пика и подсчета вероятных положений пика, или путем определения истинных положений пика из вероятных положений пика, и путем учета положений пика, становится возможным подсчитывать количество шагов во время упражнения, выполняемого пользователем, например, такого как ходьба или бег. Однако возникают ситуации, когда пики, для которых соответствие не было получено, появляются в результате воздействия шумов или тому подобное.
Таким образом, в шагомере 100 в соответствии с данным вариантом воплощения, с помощью функции, такой как выполняется модулем 5 анализа положения шага, воплощенного в модуле 110 управления, также возможно точно определить состояние действия пользователя (тип движения тела, соответствующий состоянию действия), и, в случае, когда выполняются ходьба или бег, точно подсчитать количество шагов пользователя, даже в течение периода, когда существует пик, для которого невозможно получить соответствие.
На фиг.20 и 21 показаны блок-схемы последовательности операций, предназначенные для пояснения процесса оценки типа движения тела и процесса подсчета количества шагов, выполняемых в основном в модуле 110 управления шагомера 100 в соответствии с данным вариантом воплощения. В качестве информации об используемых положениях пиков, в процессах, показанных на фиг.20 и 21, используют данные о вероятных положениях пиков, идентифицированных в процессе, показанном на фиг.17, и записанных в буфер записи положения пика, и выполняют процесс определения положения пика путем сопоставления формы колебаний, процесс оценки типа движения тела и процесс подсчета количества шагов.
Таким образом, после процессов, показанных на фиг.16 и 17, выполняется обработка, представленная на фиг.20 и 21. Процессы на фиг.20 и 21 воплощены с помощью функции модуля 4 обработки детектирования/определения пика и функции модуля 5 анализа положения шага.
Затем модуль управления 110 находит (выполняет поиск) вероятного положения пика, который еще требуется проверить, из буфера записи положения пика, такого как ОЗУ 113 (этап S501). Как будет описано ниже, определяют, можно ли различить вероятное положение пика, который еще требуется проверить, на основе состояния ВКЛЮЧЕНО/ВЫКЛЮЧЕНО флага "уже проверен", установленного для каждого идентифицированного вероятного положения пика. Обычно последнее записанное вероятное положение пика становится вероятным положением пика, которое еще требуется проверить.
Затем модуль 110 управления определяет, был ли найдено вероятное положение пика, которое еще требуется проверить, при обработке на этапе S501 (этап S502). Когда в процессе определения, выполняемом на этапе S502, определяется, что было найдено вероятное положение пика, которое требовалось найти, значение "0 (ноль)" устанавливают в таймер С неподвижного состояния - (этап S503). Затем модуль 110 управления выполняет процесс сопоставления между формой колебаний в заданном диапазоне, включающем в себя вероятное р1 положение пика, и формой колебаний в заданном диапазоне, включающем в себя другое вероятное положение пика, в диапазоне за последние N секунд от вероятного р1 положения пика (этап S504).
Следует отметить, что в процессе, показанном на этапе S504, хотя это зависит от частоты выборки, выполняют сопоставление форм колебаний в одном или больше последних заданных диапазонах. Кроме того, что касается форм колебаний, используемых для сопоставления, оно может быть выполнено на основе форм колебаний низкочастотного компонента xl(n). Очевидно, в качестве форм колебаний, используемых для сравнения, можно использовать формы колебаний вертикального компонента x(n).
Затем, на основе обработки, выполняемой на этапе S504, модуль 110 управления определяет, было ли найдено прошлое вероятное р2 положение пика, соответствующее вероятному р1 положению пика, которое еще требуется проверить (этап S505). Таким образом, в процессе определения на этапе S505 определяют, была ли найдена форма колебаний в заданном диапазоне, включающем в себя последнее вероятное положение пика, имеющее высокую степень подобия, с формой колебаний в заданном диапазоне, включающем в себя вероятное р1 положение пика, которое еще требуется проверить.
Когда в процессе определения, выполняемом на этапе S505, определяют, что было найдено прошлое вероятное р2 положение пика, соответствующее вероятному положению пика р1, которое еще требуется проверить, вероятное положение пика р1, которое еще требуется проверить, определяют как положение пика, значение "1" добавляют к величине подсчета количества шагов, и устанавливают флаг "уже подсчитан" для вероятного р1 положения пика, которое еще требуется проверить (этап S506).
Затем определяют, установлен ли флаг "уже подсчитан" для прошлого вероятного р2 положения пика, которое в данный момент времени определено как соответствующее, в положение ВКЛЮЧЕНО (этап S507). В случае, когда в процессе определения на этапе S507 определяют, что флаг "уже подсчитан" для прошлого вероятного р2 положения пика, ВКЛЮЧЕН, процедура переходит к процессу, показанному на фиг.21.
С другой стороны, когда в процессе определения на этапе S507 определяют, что флаг "уже подсчитан" для прошедшего вероятного р2 положения пика не установлен в положение ВКЛЮЧЕНО в отношении прошедшего р2 вероятного положения пика, хотя прежде не существовал сопоставленный пик, поскольку данный пик является новым пиком, который соответствует вероятному положению пика р1, прошедшее вероятное положение пика р2 также определяется как положение пика, значение "1" добавляют к величине подсчета количества шагов, устанавливают флаг "уже подсчитан" для прошедшего вероятного р2 положения пика (этап S508), и процедура переходит к процессу, показанному на фиг.21.
Кроме того, когда в процессе определения на этапе S502, показанном на фиг.20, определяют, что вероятное р1 положение, которое еще требуется проверить, не было найдено, значение "1" добавляют к таймеру С1 неподвижного состояния (этап S509), и определяют, стало ли значение таймера С1 неподвижного состояния больше, чем опорное значение (этап S510).
Когда в процессе определения на этапе S510 определяют, что значение таймера С1 неподвижного положения стало больше, чем опорное значение, состояние действия пользователя устанавливают как "неподвижное" состояние (этап S511), процессы, показанные на фиг. 20 и 21 заканчиваются, и ожидают следующего момента времени выполнения. С другой стороны, когда в процессе определения на этапе S510 определяют, что значение таймера С1 неподвижного положения не стало больше, чем опорное значение, и при этом ничего не происходит, процессы, показанные на фиг.20 и 21, заканчиваются, и ожидают следующего момента времени для выполнения.
Затем, в случае, когда в процессе определения на этапе S507 определяют, что флаг "уже подсчитан" для последнего вероятного р2 положения пика ВКЛЮЧЕН, как описано выше, и после обработки на этапе S508, выполняют процесс, показанный на фиг.21. В процессе, показанном на фиг.21, модуль 110 управления вначале включает флаг "уже подсчитан" для следующего вероятного р1 положения пика, который требуется проверить (этап S512).
Затем, модуль 110 управления идентифицирует прошедшее положение р1' пика, расположенное ближе всего к положению р1 пика, для которого флаг "уже проверен" был включен последним в процессе на этапе S512 (этап S513), и рассчитывает интервал Т0 между положением р1 пика и непосредственно ближайшим положением р1' пика (этап S514). В шагомере 100 в соответствии с данным вариантом воплощения, как описано со ссылкой на фиг.12, возможно сохранять три положения Т0, Т1 и Т2 пика, определенные по отдельности между непосредственно соседними четырьмя положениями пика. Очевидно, что может содержаться и использоваться большее количество интервалов между пиками.
Затем, модуль 110 управления определяет, является ли результат определения последнего состояния действия пользователя состоянием [ходьба/бег] (этап S515). Когда в процессе определения на этапе S515 определяют, что состояние движения пользователя не является состоянием [ходьба/бег], как описано выше, рассчитывают среднее значение Та для трех интервалов Т0, Т1 и Т2, определенное в соответствии с непосредственно соседними друг к другу четырьмя положениями пика (этап S516), значение, полученное в результате вычитания среднего значения Та, получают по отдельности для всех интервалов Т0, Т1 и Т2 пиков, и определяют, являются ли полученные значения меньшими, чем опорное значение для всех интервалов пика (этап S517).
Процесс определения на этапе S517 представляет собой процесс определения, представляют ли интервалы Т0, Т1 и Т2 пиков, по существу, ту же частоту движений, что и ходьба или бег, которые представляют собой периодические движения тела. Когда в процессе определения, выполняемом на этапе S517, определяют, что каждая из разностей между отдельными интервалами Т0, Т1 и Т2 пика меньше чем или равна опорному значению, модуль 110 управления устанавливает среднее значение Та, в качестве опорной частоты Ps движений и определяют (идентифицирует) состояние действия пользователя как состояние "ходьба/бег" (этап S518).
Затем модуль 110 управления выполняет процесс сдвига интервалов Т0, Т1 и Т2 пика (этап S519). Таким образом, интервал Т1 пика сдвигают к интервалу Т2 пика, и интервал Т0 пика сдвигают к интервалу Т1 пика. Следует отметить, что для интервала Т0 пика может быть выполнена инициализация.
После процесса на этапе S519 и в процессе определения на этапе S517, когда в процессе определения на этапе S517 определяют, что каждая из разностей между отдельными интервалами Т0, Т1 и Т2 пика и средним значением Та не меньше чем или равна опорному значению, модуль 110 управления заканчивает обработку, показанную на фиг.20 и 21, и ожидает следующего момента времени выполнения.
Кроме того, когда в процессе определения на этапе S515 определяют, что состояние действия пользователя представляет собой [ходьбу/бег], модуль 110 управления разделяет самый последний интервал Т0 пика на опорную частоту Ps движений, для расчета значения r (этап S520). Процесс на этапе S520 представляет собой процесс, в котором учитывают случай, когда то, что предполагается как детектируемое в качестве значения пика, не детектируется как значение пика, и представляет собой процесс расчета числа, на которое требуется умножить интервал Т0 пика, детектированный последним, для того, чтобы он стал опорной частотой Ps движений.
Затем рассчитывают целое число R, которое ближе всего находится к значению r, рассчитанному на этапе S520 (этап S521). Например, в случае, когда значение r равно "0,1", "0,2" или тому подобное, целое число R равно "0", в случае, когда значение r равно "0,9", "1,1" или тому подобное, целое число R равно "1", и если значение r равно "1,9" или "2,1", целое число R равно "2". Затем модуль 110 управления определяет, является ли абсолютное значение величины, полученной в результате вычитания целого числа R из значения r, меньшим, чем заданное опорное значение (этап S522).
Процесс определения на этапе S522 представляет собой процесс определения, является ли самый последний интервал Т0 пика кратным целому числу значением опорной частоты Ps движений. Когда в процессе определения на этапе S522 определяют, что абсолютное значение для значения, полученного путем вычитания целого числа R из значения r, не меньше, чем заданное опорное значение, определяют, что самый последний интервал Т0 пика не представляет собой значение, кратное целому числу опорной частоты Ps движений, и определяют (идентифицируют), что состояние действия пользователя представляет собой "неопределенное" состояние (этап S523). Затем модуль 110 управления заканчивает процессы, показанные на фиг.20 и 21, и ожидает следующего момента времени выполнения.
С другой стороны, когда в процессе определения на этапе S522 определяют, что абсолютное значение величины, полученной в результате вычитания целого числа R и значения r, меньше, чем заданное опорное значение, определяют, что самый последний интервал Т0 пика представляет собой значение, кратное целому числу опорной частоты Ps, и определяют, превышает ли целое число R1 значение "1" (этап S524). Процесс определения на этапе S524 представляет собой процесс определения, превышает ли или равен интервал Т0 пика удвоенному значению опорной частоты Ps движений.
Когда в процессе определения на этапе S524 определяют, что целое число R не больше чем 1, поскольку самый последний интервал Т0 пика не представляет собой сегмент, превышающий или равный удвоенному значению опорной частоты движений, модуль 110 управления заканчивает обработку, представленную на фиг.20 и 21, не выполняя ничего, и ожидает следующего момента времени выполнения.
С другой стороны, когда в процессе определения на этапе S524 определяют, что целое число R больше, чем 1, поскольку самый последний интервал Т0 пика представляет собой сегмент, больший, чем или равный удвоенному значению опорной частоты движений, модуль 110 управления добавляет значение, полученное в результате вычитания 1 от целого числа R к подсчитанному количеству (этап S525), заканчивает обработку, показанную на фиг.20 и 21, и ожидает следующего момента времени выполнения.
Как описано выше, в случае, когда выполняются ходьба или бег, при точном разделении состояния действий пользователя с помощью обработки, показанной на фиг.20 и 21, даже в период, когда существует пик, для которого не было получено соответствие, становится возможным точно подсчитывать количество шагов пользователя. Кроме того, также возможно различать в режиме реального времени четыре состояния действий (типы движения тела, соответствующие состояниям действия), такие как "неподвижное" состояние, "неопределенное" состояние, состояние "ходьбы" и состояние "бега".
Следует отметить, что в процессах, описанных на фиг.20 и 21, когда самый последний интервал Т0 пика представляет собой сегмент, который представляет собой значение, кратное целому числу опорной частоты движений, количество шагов измеряют в соответствии с положением пика, в котором произошла ошибка измерения. Однако это не устанавливает ограничения. Таким образом, когда самый последний интервал Т0 пика представляет собой сегмент, который представляет собой значение, кратное целому числу опорной частоты движений, учитывая амплитуду низкочастотного компонента вертикального компонента и амплитуду самого вертикального компонента в сегменте, можно различать, надежно ли существует положение пика в положении значения, кратного целому числу опорной частоты движений.
В частности, предусмотрено опорное значение для амплитуды в положении значения, кратного целому числу опорного пика, и если эта амплитуда больше, чем или равна опорному значению, ее распознают в качестве значения пика и положения пика, и если амплитуда меньше, чем опорное значение, ее не распознают как значение пика и положение пика. Следует отметить, что возможно установить соответствующее значение в качестве опорного значения, выполняя эксперименты.
Применение в устройстве воспроизведения звука
Далее будет описан случай, в котором вариант воплощения устройства, способа и программы в соответствии с настоящим изобретением применяются в устройстве воспроизведения звука. На фиг.22 показана блок-схема, поясняющая устройство 200 воспроизведения звука в соответствии с настоящим вариантом воплощения. Как будет описано ниже, устройство 200 воспроизведения звука в соответствии с данным вариантом воплощения является устройством портативного типа, которое выполнено с возможностью использования носителя записи с относительно большой емкостью, для сохранения пьес музыкальных данных (музыкальных данных).
В качестве носителя записи можно использовать различные типы носителей информации, такие как жесткий диск, магнитооптический диск, такой как MD (минидиск (зарегистрированный товарный знак)), оптический диск, такой как CD или DVD, карта памяти или полупроводниковое запоминающее устройство. Однако здесь для простоты описания будет приведено описание, предполагая, что носитель записи для сохранения данных содержания, таких как пьесы музыкальных данных, представляет собой жесткий диск.
Как показано на фиг.22, в устройстве 200 воспроизведения звука в соответствии с данным вариантом воплощения, трехосевой датчик 201 ускорения соединен с модулем 210 управления через А/Ц преобразователь 202, и в качестве носителя записи с относительно большой емкостью памяти подключены база данных 203 музыкальной пьесы (ниже называется БД (DB) музыкальной пьесы) и модуль 204 сохранения списка воспроизведения.
Кроме того, к модулю 210 управления подключен громкоговоритель 206, через модуль 205 обработки воспроизведения звука, и также подключены модуль 221 операций и модуль 222 дисплея, используемые в качестве интерфейса пользователя. Кроме того, устройство выполнено с выводом 224 ввода/вывода, который подключен через внешний интерфейс (ниже называется внешним интерфейсом) 223.
Аналогично датчику ускорения 101 шагомера 100, описанному выше в качестве трехосевого датчика 201 ускорения, можно использовать либо датчик, сформированный путем установки одноосевых датчиков ускорения по трем осям, таким как ось X, ось Y и ось Z, ортогональным друг другу, или датчик, сформированный путем установки датчиков ускорения с ортогональными тремя осями в одном пакете. Отдельные выходные сигналы детектирования (аналоговые выходные сигналы) по оси X, оси Y и оси Z трехосевого датчика 201 ускорения поступают в А/Ц преобразователь 202, где их преобразуют в цифровые данные в формате, в котором разрешена обработка модулем 210 управления, и эти цифровые данные передают в модуль 210 управления.
Модуль 210 управления управляет отдельными частями устройства 200 воспроизведения звука в данном варианте воплощения, и аналогично модулю 110 управления шагомера 100, описанному выше, он выполнен как микрокомпьютер, в котором ЦПУ 211, ПЗУ 212, ОЗУ 213 и энергонезависимое запоминающее устройство 214 соединены через шину 215 ЦПУ.
Здесь ЦПУ 211 выполняет различные программы для формирования сигналов управления, подаваемых к отдельным частям, для выполнения различных типов расчета и т.д., и используется как основной модуль для обработки или управления в модуле 210 управления. В ПЗУ 212 записаны и содержатся различные типы программ, выполняемых ЦПУ 211, или данные, необходимые для обработки.
Кроме того, ОЗУ 213 используется, в основном, как рабочая область, в которой временно сохраняются промежуточные результаты обработки, и которая также используется как буферная память или тому подобное, в которой сохраняют и содержат данные ускорения в форме цифровых значений, поступающих от датчика 201 ускорения через А/Ц преобразователь 202. Энергонезависимое запоминающее устройство 214 представляет собой память, в которой сохраненные данные не удаляют, даже когда отключают питание запоминающего устройства, такое как СППЗУ или запоминающее устройство типа флэш, и в нем сохраняются и содержатся данные, которые должны сохранятся, даже при отключении питания, такие как установленные параметры, добавленные программы и т.д.
Кроме того, как описано выше, каждая из БД 203 музыкальной пьесы и модуль 204 сохранения списка воспроизведения выполнены как жесткий диск. В базе данных музыкальной пьесы записаны и содержатся данные большого количества музыкальных пьес, которые можно воспроизводить с помощью устройства 200 воспроизведения звука в соответствии с данным вариантом воплощения, например, как данные, сжатые в соответствии с заданным способом сжатия данных.
Кроме того, в модуле 204 сохранения списка воспроизведения записаны и содержатся списки воспроизведения для неподвижного положения, которые представляют собой инструкции для воспроизведения музыкальных пьес, когда пользователь находится в "неподвижном" состоянии, списки воспроизведения для ходьбы, которые содержат инструкции на воспроизведение музыкальных пьес, когда пользователь находится в состоянии "ходьбы", и списки воспроизведения для бега, которые содержат инструкции для музыкальных пьес, воспроизводимых, когда пользователь находится в состоянии "бега".
Таким образом, что касается списков воспроизведения, сохраненных в модуле 204 сохранения списка воспроизведения, разрешено делать различие между списками воспроизведения для неподвижного состояния, списками воспроизведения для состояния ходьбы и списками воспроизведения для состояния бега, например, используя информацию, такую как тип списка воспроизведения, прикрепленную к каждому списку воспроизведения. Кроме того, множество списков воспроизведения присутствуют по отдельности в виде списков воспроизведения для неподвижного состояния, списков воспроизведения для состояния ходьбы и списков воспроизведения для состояния бега. Каждый список воспроизведения сформирован путем регистрации заранее, например, для воспроизведения, ИД (ID) музыкальных пьес (идентификаторов музыкальных пьес), таких как названия файлов, идентифицирующие одну или больше музыкальных пьес для воспроизведения.
Следует отметить, что хотя БД 203 музыкальных пьес и модуль 204 сохранения списка воспроизведения для ясности представления конфигурации показаны отдельно на фиг.22, очевидно, что существуют случаи, когда они сформированы на одном и том же жестком диске.
Модуль 205 обработки воспроизведения звука принимает данные музыкальных пьес, считываемые из БД 203 музыкальных пьес модулем 210 управления, выполняет обработку разворачивания данных музыкальных пьес для восстановления первоначальных данных музыкальных пьес, какими они были до сжатия данных, формирует аналоговые аудиосигналы в формате, поддерживаемом громкоговорителем 206, из восстановленных данных музыкальных пьес, и передает аналоговые аудиосигналы в громкоговоритель 206. Таким образом, звук, соответствующий данным музыкальной пьесы, выбранный для воспроизведения, выводится через громкоговоритель 206.
Следует отметить, что, хотя это и не показано на чертеже, модуль 205 обработки воспроизведения звука в соответствии с данным вариантом воплощения также выполнен с возможностью его подключения к выводам головного телефона. В случае, когда головные телефоны подключены к выводу головных телефонов, аудиосигналы, обработанные модулем 205 обработки воспроизведения звука, поступают в головные телефоны, подключенные к выводу головных телефонов, через вывод головных телефонов, вместо громкоговорителя 206, таким образом, что обеспечивается возможность прослушивания воспроизводимого звука через головные телефоны.
Кроме того, в модуле 221 операций предусмотрена кнопка воспроизведения, кнопка остановки, кнопка быстрой перемотки вперед, кнопка быстрой перемотки назад и различные другие функциональные кнопки или тому подобное, и обеспечивается возможность приема входных команд, задаваемых операциями пользователя, и подачи соответствующих им электрических сигналов в модуль 210 управления. В ответ на электрические сигналы модуль 210 управления выполнен с возможностью управления отдельными частями и выполнения обработки в соответствии с инструкциями пользователя.
Кроме того, модуль 222 дисплея включает в себя схему управления дисплеем, и в нем предусмотрен элемент дисплея, такой как ЖКЖ (жидкокристаллический дисплей), органический ЭЛ (электролюминесцентный) дисплей или ЭЛТ (электронно-лучевая трубка), и он отображает различную информацию наставления и т.д. в соответствии с управлением, осуществляемым модулем 210 управления. В частности, в ответ на подачу данных отображения из модуля 210 управления, модуль 222 дисплея формирует видеосигналы, которые подают в элемент дисплея из данных отображения, и передает эти видеосигналы в элемент дисплея, в результате чего информация отображения, соответствующая данным отображения, из модуля 210 управления, отображается на экране дисплея элемента дисплея.
Кроме того, устройство может быть подключено к внешнему устройству, такому как персональный компьютер, через внешний интерфейс 223 и вывод 224 ввода/вывода. Кроме того, оно может принимать данные музыкальной пьесы или список воспроизведения из внешнего устройства через вывод 224 ввода/вывода и внешний интерфейс 223 и сохранять данные музыкальной пьесы в БД 203 музыкальной пьесы с сохранением списка воспроизведения в модуле 204 сохранения списка воспроизведения.
И, наоборот, под управлением модуля 210 управления также обеспечивается возможность вывода данных музыкальной пьесы, сохраненных в БД 203 музыкальной пьесы, во внешнее устройство через модуль 210 управления, внешний интерфейс 223 и вывод 224 ввода/вывода и формирование резервной копии на носителе записи внешнего устройства или для аналогичного формирования резервной копии списка воспроизведения, сохраненного и содержащегося в модуле 204 сохранения списка воспроизведения на носителе записи внешнего устройства.
Кроме того, путем отображения краткого списка данных музыкальных пьес, сохраненных в БД 203 музыкальных пьес, на модуле 222 дисплея и выбора предполагаемых данных музыкальных пьес через модуль 221 операций и ввода различия между списком воспроизведения для неподвижного состояния, списком воспроизведения для состояния ходьбы и списком воспроизведения для состояния бега, также становится возможным сформировать список воспроизведения в устройстве 200 воспроизведения звука в соответствии с данным вариантом воплощения.
Кроме того, в устройстве 200 воспроизведения звука в соответствии с данным вариантом воплощения данные музыкальной пьесы, выбранные через модуль 221 операций, считывают из БД 203 музыкальной пьесы с помощью модуля 210 управления и подают в модуль 205 обработки воспроизведения звука. В соответствии с этим становится возможным воспроизводить музыкальную пьесу в соответствии с инструкцией, поступившей от пользователя через модуль 221 операций, таким образом, что обеспечивается возможность прослушивания музыкальной пьесы.
Кроме того, в случае, когда через модуль операций поступает инструкция на использование списка воспроизведения, данные музыкальной пьесы считывают из БД 203 музыкальных пьес с помощью модуля 210 управления в соответствии со списком воспроизведения, в отношении которого поступила инструкция, и передают в модуль 205 обработки воспроизведения звука, таким образом, что обеспечивается возможность воспроизведения музыкальной пьесы в соответствии со списком воспроизведения.
Кроме того, в случае, когда выбирают режим для автоматического выбора списка воспроизведения, также обеспечивается возможность выбора соответствующего списка воспроизведения в соответствии с состоянием действия пользователя. В устройстве 200 воспроизведения звука в соответствии с данным вариантом воплощения, модуль 210 управления воплощает функции модуля 2 выделения вертикального компонента, модуля 3 разделения высокой частоты/низкой частоты, модуля 4 обработки детектирования/определения пика и модуля 5 анализа положения шага в устройстве детектирования движений тела, показанном на фиг.1, и точно определяет частоту действий (темп действий) пользователя, таким образом, что становится возможным автоматически выбирать соответствующий список воспроизведения из списков воспроизведения, относящихся к неподвижному положению, списков воспроизведения для случая ходьбы, и списков воспроизведения для случая бега в соответствии с состоянием действий пользователя.
Таким образом, модуль 210 управления устройства 200 воспроизведения звука в соответствии с данным вариантом воплощения имеет функцию выполнения процессов, таких как выделение вертикального компонента, разделение вертикального компонента на компоненты высокой частоты/низкой частоты, детектирование вероятного положения пика и идентификация вероятного положения пика, и принятие решения о положении пика путем сопоставления формы колебаний на основе выходных сигналов детектирования датчика 201 ускорения, как описано со ссылкой на фиг.1.
Кроме того, на основе детектируемого положения пика обеспечивается возможность точно определять состояние действия пользователя и точно определять частоту движений тела при ходьбе, беге или тому подобное, таким образом, что также учитывается частота движений тела, обеспечивается возможность автоматического выбора соответствующего списка воспроизведения в соответствии с состоянием действий пользователя, и музыкальная пьеса может быть воспроизведена с использованием выбранного списка воспроизведения.
Далее, со ссылкой на блок-схему последовательности операций, показанную на фиг.23, будет описана обработка в случае, когда соответствующий список воспроизведения выбирают в соответствии с состоянием действий пользователя для случая, когда используется режим автоматического выбора списка воспроизведения в устройстве воспроизведения звука в соответствии с данным вариантом воплощения. На фиг.23 показана блок-схема последовательности операций, предназначенная для пояснения обработки, выполняемой в случае, когда соответствующий список воспроизведения выбирают в соответствии с состоянием действий пользователя в устройстве воспроизведения звука в соответствии с данным вариантом воплощения.
Процесс, показанный на фиг.23, выполняется, в основном, модулем 210 управления устройства 200 воспроизведения звука в соответствии с данным вариантом. Вначале, аналогично случаю модуля 110 управления шагомера 100, показанного на фиг.15, модуль 210 управления выполняет процесс оценки типа движений тела (этап S601). Процесс, выполняемый на этапе S601, представляет собой процесс, в котором (1), как описано со ссылкой на фиг.16, вертикальный компонент выделяют из вектора ускорения, полученного с помощью трехосевого датчика 201 ускорения, (2), выделенный вертикальный компонент разделяют на высокочастотный компонент и низкочастотный компонент, (3), используя эти компоненты, как описано со ссылкой на фиг.17, идентифицируют вероятных положений пика, и (4), используя информацию об идентифицированных вероятного x положения пика, выполняют процессы, показанные на фиг.20 и 21, для определения состояния действий и частоты действий пользователя.
Следует отметить, что в процессах, показанных на фиг.20 и 21, нет необходимости выполнять обработку подсчета количества шагов. При этом нет необходимости выполнять процессы, выполняемые на этапах S506-S508, и процессы, выполняемые на этапе S525.
Затем модуль 210 управления определяет, изменилось ли состояние действий пользователя (этап S602). В процессе определения, например в качестве результатов определения состояния действий, сохраняют результат предыдущего определения и результат текущего определения таким образом, что становится возможным определять изменение состояния действий в случае, когда эти результаты отличаются друг от друга.
Когда в процессе определения на этапе S602 определяют, что состояние действий не изменилось, процесс, показанный на фиг.23, заканчивается, и ожидают следующего момента времени выполнения. Когда в процессе определения на этапе S602 определяют, что состояние действий изменилось, определяют, является ли состояние после изменения, то есть результат текущего определения "неподвижным" состоянием (этап S603).
Если в процессе определения на этапе S603 будет определено, что результат текущего определения представляет собой "неподвижное" состояние, используют список для случая неподвижного воспроизведения, сохраненный в модуле 204 сохранения списка воспроизведения, и музыкальную пьесу (музыку) воспроизводят в соответствии со списком воспроизведения для случая неподвижного состояния (этап S604). Затем процесс, показанный на фиг.23, заканчивается, и ожидают следующего момента времени выполнения.
С другой стороны, когда в процессе определения на этапе S603 определяют, что результат текущего определения не представляет собой "неподвижное" состояние, определяют, является ли результат текущего определения состоянием "ходьбы/бега" (этап S605). Когда в процессе определения на этапе S605 определяют, что результат представляет собой состояние "ходьбы/бега", определяют, является ли опорная частота движений, полученная в результате выполнения процесса, показанного на фиг.20 и 21, который представляет собой процесс, выполняемый на этапе S601, меньшей чем заданное значение (этап S606).
Заданное значение, используемое в процессе определения на этапе S606, представляет собой значение для определения, является ли состояние действий пользователя ходьбой или бегом. В случае, когда опорная частота Ps движений не меньше, чем заданное значение, становится возможным определить, что опорная частота движений еще не достаточно велика и, что состояние представляет собой состояние ходьбы. С другой стороны, в случае, когда опорная частота движений меньше, чем заданное значение, становится возможным определить, что опорная частота движений достаточно велика и что состояние представляет собой состояние бега.
Таким образом, когда в процессе определения на этапе S606 определяют, что опорная частота Ps движений не меньше, чем заданное значение, состояние действия пользователя определяют как состояние "ходьбы", используют список воспроизведения для случая ходьбы, сохраненный в модуле 204 сохранения списка воспроизведения, и музыкальную пьесу (музыку) воспроизводят в соответствии со списком воспроизведения для случая ходьбы (этап S607). Затем модуль 210 управления заканчивает обработку, показанную на фиг.23, и ожидает следующего момента времени выполнения.
С другой стороны, когда в процессе определения на этапе S606 определяют, что опорная частота Ps движений меньше, чем заданное значение, состояние действий пользователя определяют как состояние "бега", используют список воспроизведения для случая бега, сохраненный в модуле 204 сохранения списка воспроизведения, и музыкальную пьесу (музыку) воспроизводят в соответствии со списком воспроизведения для случая бега (этап S608). Затем модуль 210 управления заканчивает обработку, показанную на фиг.23, и ожидает следующего момента времени выполнения.
Как указано выше, устройство 200 воспроизведения звука в соответствии с данным вариантом воплощения выполнено с возможностью соответствующим образом определять состояние действия пользователя и автоматически переключаться на список воспроизведения в соответствии с состоянием действий пользователя так, что становится возможным воспроизводить музыкальную пьесу в соответствии с движениями тела пользователя.
Следует отметить, что как описано выше, существуют случаи, когда множество списков воспроизведения подготавливают отдельно в качестве списков воспроизведения для случая неподвижного состояния, списков воспроизведения для случая ходьбы и списков воспроизведения для случая бега. В таких ситуациях порядок использования может быть определен заранее таким образом, что списки воспроизведения используют в соответствии с этим порядком, или частоты использования отдельных списков воспроизведения могут быть сохранены, и может применяться список воспроизведения с низкой частотой использования, или наоборот, может использоваться список воспроизведения с высокой частотой использования. В качестве альтернативы, пользователь может заранее определить списки воспроизведения, которые будут использоваться, по отдельности для списков воспроизведения для случая неподвижного состояния, списков воспроизведения для случая ходьбы и списков воспроизведения для случая бега.
Кроме того, также в шагомере 100, описанном выше, в результате выполнения процесса по фиг.19 перед процессами, показанными на фиг.20 и 21, становится возможным точно измерять количество шагов с начала процесса измерения количества шагов.
Кроме того, было описано, что в шагомере 100 и в устройстве 200 воспроизведения звука, описанных выше, используются трехосевые датчики 101 и 201 ускорения. Однако в этом отношении отсутствуют какие-либо ограничения. Может использоваться одноосевой датчик ускорения, или может использоваться двухосевой датчик ускорения. Однако в случае, когда используется одноосевой или двухосевой датчик ускорения, такой датчик ускорения должен быть установлен в таком направлении, чтобы основные компоненты движения тела можно было снимать в виде сигналов.
Однако предпочтительно использовать трехосевой датчик ускорения, поскольку при этом не возникают ограничения в отношении положения установки или направления установки при использовании трехосевого датчика ускорения и, как описано выше, при выполнении таких процессов, как выделение вертикального компонента и учет отношения энергии между высокочастотным компонентом и низкочастотным компонентом.
Кроме того, хотя в описанных выше вариантах воплощения используется трехосевой датчик ускорения, и вертикальный компонент выделяют из трехосевого вектора ускорения, в этом отношении отсутствуют какие-либо ограничения. Например, можно учитывать сигнал по оси с наибольшей интенсивностью сигнала среди трех осей, и можно его выбирать как вертикальный компонент.
Кроме того, хотя период частоты движений тела получают путем детектирования положений пиков вертикального компонента вектора ускорения в шагомере 100 и в устройстве 200 воспроизведения звука, описанном выше, в этом отношении отсутствуют какие-либо ограничения. В качестве средства идентификации положений пиков (положений шагов) может быть предусмотрен такой механизм, в котором переключатель предусмотрен на подошве ботинка, и контакт переключателя замыкается при шаге ноги во время ходьбы или бега, или средство детектирования шагов может быть предусмотрено в виде датчика деформации на подошве ботинка.
Кроме того, поскольку становится возможным точно измерять шаг движений тела (темп ходьбы или темп бега) пользователя в устройстве 200 воспроизведения звука в соответствии с описанным выше вариантом воплощения, благодаря обеспечению управления с помощью модуля 210 управления модулем 205 обработки воспроизведения звука, становится возможным управлять темпом воспроизведения музыкальной пьесы, которая воспроизводится в соответствии с темпом движений тела пользователя.
В результате управления темпом воспроизведения музыкальной пьесы, которую воспроизводят в соответствии с темпом движений тела пользователя, как описано выше, у пользователя возникает чувство единства с музыкальной пьесой, которую воспроизводят, таким образом, что становится возможным эффективно выполнять упражнение, такое как ходьба или бег, или продолжать его в удобных условиях.
Кроме того, устройство детектирования движений тела, способ детектирования движений тела и программа детектирования движений тела в соответствии с вариантами воплощения, описанными выше, могут применяться к различным типам электронных устройств, которые должны использоваться в соответствии с детектированием движений тела пользователя в вертикальном направлении, например, с устройствами-тренажерами, такими как устройства для бега в домашних условиях, используемые в фитнес-клубах или тому подобное, или со стационарными устройствами воспроизведения звука, а также шагомерами и портативными устройствами воспроизведения звука.
Кроме того, на фиг.16-21 и на фиг.23 представлены варианты применения способов и программ в соответствии с данным изобретением, и при этом возможно использовать способы в соответствии с настоящим изобретением, с помощью процессов выполнения в соответствии с блок-схемами последовательности операций, показанными на фиг.16-21 и фиг.23, и при этом возможно воплотить программы в соответствии с данным изобретением путем создания программ в соответствии с блок-схемами последовательности операций, показанными на фиг.16-21 и на фиг.23.
Кроме того, путем определения процессов в модуле управления таким образом, что воплощаются функции отдельных частей, показанных на фиг.1, становится возможным воплотить способы в соответствии с настоящим изобретением. Аналогично, если создать программы, которые должны выполняться модулем управления таким образом, что будут воплощены функции отдельных частей, показанных на фиг.1, становится возможным воплотить программы в соответствии с настоящим изобретением.
В соответствии с настоящим изобретением возможно удалять шумы и точно детектировать движение тела пользователя в вертикальном направлении. Таким образом, становится возможным воплотить устройство, способ и программу для детектирования движений тела, которое является устойчивым к действию шумов (невосприимчивым к действию шумов).