УСТРОЙСТВО ДЛЯ ИГР
DEVICE FOR GAMES

Изобретение относится к устройствам для игр, в частности к игрушкам, имитирующим подвижные объекты: всевозможные существа, в том числе антропоморфные и зооморфные существа, вымышленные и сказочные существа, объекты техники, такие как экскаваторы, краны, роботы и роботы-трансформеры, с частями, движущимися независимо от движения фигурки в целом.
Игрушки для детей дошкольного возраста представляют самый быстрорастущий сегмент рынка игр и игрушек (CAGR 15-20%). Однако этот сегмент испытывает острую нехватку интерактивных продуктов и интерфейсных решений, основанных на особенностях возрастной психофизиологии маленьких пользователей.
Маленькие дети плохо понимают радости кнопочного дистанционного управления. Оно для них слишком абстрактно. Игровой способ освоения реальности, свойственный ребенку, требует значительно большей вовлеченности собственной тактильной и проприоцептивной чувствительности. Ребенок все пробует на зуб, на ощупь, на мышечное чувство. Дети всегда играли и играют в кукол (солдатиков) так, чтобы те совершали нужные телодвижения. Ребенок берет ручки куклы в свои - и кукла хлопает в ладоши; берет рукой лошадку - и лошадка скачет; берет рыцаря с мечом - и делает движение, как будто рыцарь рубит. Даже когда ребенок относительно пассивно смотрит мультик, держа игрушку в руках, он этой игрушкой активно производит движения, перекликающиеся с поведением экранного персонажа. Это фундаментальная потребность, обусловленная возрастной психофизиологией.
С другой стороны, виртуальная реальность в виде мультфильмов, телепередач и компьютерных игр сегодня занимает огромное место в жизни ребенка. Оперативная связка этой реальности с вещным и осязаемым миром напрашивается и ставит вопрос о более естественном интерфейсном решении (сравнительно с существующими клавиатурами, пультами, джойстиками и проч.). На текущем этапе развития техники трудно представить более подходящий предмет для превращения его в универсальное устройство ввода-вывода, чем собственно физическая игрушка. Этому немало способствует и растущая год от года степень интерактивности детских игрушек.
Внутренне присущие ребенку черты магического сознания делают интерактивную игрушку самым естественным проводником и посредником, связывающим виртуальный и непосредственно-чувственный миры ребенка. Коммуникация с куклой и через куклу в равной мере естественна и для общения детей между собой на детской площадке, и для взаимодействия их с компьютерными персонажами.
Это важное обстоятельство давно понято лидерами индустрии игрушек, которые уже предприняли ряд шагов в направлении его коммерциализации. Так, плюшевые собачки WebKinz, выпущенные в 2005 г., были снабжены уникальным идентификатором для входа в игровую он-лайн среду, где они могли развиваться и общаться. В 2007 г. WebKinz привлекли 3,6 млн. уникальных пользователей. Сходное решение предложено для общения пользователей куклы Barbie, которые в 2006 и 2007 гг. создали по 2 млн. уникальных он-лайн эккаунтов. Эти примеры виртуального представительства физических игрушек не исключительны. Есть целый ряд аналогичных продуктов, таких как Bratz World, Rescue Pets, Club Penguin, Web Neopets и другие, включая многочисленных диснеевских персонажей. Следующим шагом стали интерфейсные куклы FAMPS, выпущенные компанией Mattel в 2010 г. Новаторство их в том, что не требуется набирать на клавиатуре идентификационный номер: кукла помещается внутрь кольца, содержащего катушку и соединенного проводом с USB-портом компьютера. Опознавание и вход в виртуальную среду происходит автоматически. Однако создателям FAMPS не удалось уйти от кнопочного интерфейса: переключение эмоциональных состояний куклы производится нажатием соответствующих клавиш на кольце.
Принципиальная проблема FAMPS, уж не говоря о предшествовавших им WebKinz - в их примитивности. Это, по существу, не более чем ключики для входа в виртуальную среду. Настоящей интерактивности они не обеспечивают. Подключение голосового интерфейса решит проблему лишь отчасти. Существенно, и особенно важно для детей младшего возраста, чтобы коммуникация через виртуальную среду не ограничивалась абстрактно-символьным или вербальным каналами, но как можно полнее вовлекала моторную активность и стимулировала благотворную для ребенка «мышечную радость» (И.П.Павлов).
Требуемым дополнительным - а во множестве приложений и основным - способом коммуникации может стать манипулирование интерфейсной куклой. Ребенок берет такую куклу в руки и заставляет ее совершать все те движения, которые он хочет, чтобы совершил виртуальный персонаж-двойник или на которые ответил виртуальный персонаж-оппонент. Например, взяв ручки куклы, можно похлопать ими в ладоши, закрыть лицо руками, поманить к себе, почесать затылок и сделать множество других красноречивых жестов. Интерфейсная кукла может ходить, прыгать, танцевать, драться - и тем самым управлять поведением соответствующего экранного персонажа. Предпочтительно, чтобы связь с отображающим устройством осуществлялась беспроводным способом и никаких иных приспособлений для управления экранным действием, кроме куклы самой по себе, не требовалось. Заявленное изобретение направлено на реализацию данной задачи.
Конечно, наиболее выразительная пластика и наиболее точное действие потребуют от кукловода-манипулятора немалой ловкости. Но, во-первых, нам того и нужно: мы развиваем мелкую моторику и иные полезные навыки ребенка. Во-вторых, поначалу особой ловкости не потребуется: даже самые простые, легко осваиваемые маленьким ребенком движения конечностей и головы куклы дают большое выразительное разнообразие. Особенно, если они будут поддержаны развитым интерпретирующим программным обеспечением отображения. Наконец, в-третьих, в качестве интерфейсной куклы может использоваться моторизованный автомат (робот), который часть движений будет производить сам, в зависимости от приложенных манипуляций.
Игрушечный робот (как и другие интерактивные игрушки), в свою очередь, может управляться и/или взаимодействовать с манипулируемой интерфейсной куклой. Дух «Toy Stories» (вместе со множеством своих предшественников) давно стучится в дверь, требуя воплощения. Интерфейсная кукла эту дверь широко отворяет.
В отличие от ситуации на рынке готовых продуктов подходы к созданию интерфейсной куклы на уровне патентных решений идут гораздо дальше. Общим недостатком этих решений, однако, является их половинчатость, чем, вероятно, и объясняется тот факт, что они пока не доведены до конечных продуктов.
Так, в патенте US 6290565 Interactive game apparatus with game play controlled by user-modifiable toy (1999, Nearlife, Inc.) описывается физическая игрушка в виде рыбки или антропоморфного существа, которая может быть составлена из разных частей, каждая из которых опознается при соединении с основной частью. На экране компьютера при этом отображается двойник игрушки, причем его свойства и способ действия в виртуальной среде меняются в зависимости от того, из каких частей составлена физическая игрушка. Соединение с компьютером проводное. Упомянуто, без конкретизации, что некоторые из сменяемых частей могут иметь сенсоры, данные с которых могут меняться в зависимости от приложенных манипуляций.
В патенте US 5752880 Interactive doll (1995, Creator Ltd.) описывается интерактивная кукла, управляемая с компьютера по радиоканалу, причем вызванное командой с компьютера движение игрушки или какой-либо ее части по механизму обратной связи влияет на состояние системы и компьютерное управление куклой.
В патенте US 7137861 Interactive three-dimensional multimedia I/O device for a computer (2003, Carr, Geldbauch) описывается антропоморфная фигурка с подвижными частями тела, соединенная с базовой станцией, которая, в свою очередь, соединена с компьютером. Фигурка служит для привлечения внимания пользователя к случившимся в системе событиям (статус принтера, полученный email и т.д.). В ответ на каждое такое событие фигурка жестикулирует и издает различные звуки. Фигурка может также использоваться как устройство ввода-вывода в компьютерной игре, представляя персонажа игры.
В отличие от настоящего изобретения ни в одном из упомянутых выше патентов US 6290565, US 5752880, US 6159101, US 7137861 не определяется точное положение подвижных частей относительно корпуса куклы и не используется принцип взаимной магнитной индукции.
В патенте US 7081033 Toy figure for use with multiple, different game systems (2000, Hasbro, Inc.) игрушечный персонаж используется, прежде всего, как универсальный переносчик информации о текущем состоянии игры и самого персонажа между различными аппаратными игровыми платформами. Персонаж может изменить статус игры, но не используется для оперативного управления игрой. Магнитная индукция может использоваться для передачи информации между персонажем и игровым устройством.
В патенте US 6471565 Interactive Toy (2001, Simeray) электромагнитная индукция используется для опознания интерактивной куклой своих аксессуаров. В частности, кукла-младенец распознает свою соску или погремушку и по-разному на них реагирует.
В патенте US 7361073 Motion responsive toy (2005, Mattel, Inc.) описана игрушка, в корпусе которой смонтированы сенсор электромагнитного поля и эффекторы, например, светодиоды. Источник электромагнитного поля, имеющий вид, например, волшебной палочки, подносится к корпусу и детектируется сенсором игрушки. В зависимости от величины определяемого магнитного поля меняется выходной сигнал, например, в виде различного режима свечения светодиодов. Возникает магический эффект: игрушка интерактивно реагирует на движения волшебной палочки, производимые над ней.
В патентной заявке US 2007/0015588 A1 Game information, information storage medium and game apparatus (2004, NAMKO, Ltd.) предложен планшет (tablet), использующий метод электромагнитной индукции, и фигурки-персонажи, содержащие катушки для осуществления коммуникации с использованием метода электромагнитной индукции при помещении этих фигурок на планшет. Планшет определяет изменение позиции и направление движения фигурок, а компьютерная система отображает перемещение соответствующих персонажей. Фигурки на планшете могут сталкиваться, имитируя сражение, а компьютерные персонажи при этом будут сражаться.
В планшете располагается множество катушек, и устройство определяет, какая из катушек имеет наибольшую взаимную индукцию с фигуркой; считается, что фигурка находится около этой катушки. Такая система позволяет определять фиксированное количество позиций, определяемое количеством катушек, которое не может быть слишком большим, при этом детектируемый предмет должен находиться около поверхности планшета. Данный метод не применим для определения положения конечностей куклы.
Наиболее близким аналогом к заявленному изобретению является интерактивный игровой продукт (патент US 6159101 Interactive toy products, 1998, Tiger Electronics, Ltd.), предпочтительное воплощение которого представляет собой антропоморфную куклу с экраном на теле, оснащенную сенсорами, способными определять движения конечностей. Продукт является устройством для игр в видеоигры, управление персонажем в которых осуществляется путем манипуляций с конечностями куклы; предусматиривается как отображение игры на встроенном экране, так и передача информации на внешнюю игровую приставку и отображение игры на большом экране.
В качестве сенсоров, определяющих движение конечностей, в патенте описаны кнопки, встраиваемые в сустав или потенциометры. Упоминания про возможность измерения положения конечностей при помощи раскрываемого в данной заявки метода, основанного на взаимной индукции, отсутствуют.
Указанные в патенте US 6159101 сенсоры, так же как и большинство других известных на существующем уровне развития науки и техники, требуют реализации в кукле жестких суставов, что крайне нежелательно, поскольку они имеют низкую надежность при интенсивной игре ребенка. Кнопки и потенциометры удовлетворительно реализуют определение только одной степени свободы конечности, и при условии, что конечность движется как единое целое. Реализация определения положения двухзвенной конечности, состоящей из плеча и предплечья, при помощи кнопок или потенциометров, будет крайне громоздкой в отличие от реализации, раскрытой в данной заявке.
Реалистичность современных игр, связанных с действиями в моделируемом трехмерном мире, требует новое средство управления виртуальным персонажем, позволяющее эффективно управлять конечностями. Современным пользователям уже недостаточно схематичной двухмерной фигурки, способной к нескольким заранее нарисованным действиям. Благодаря развитию трехмерной графики пользователи ожидают увидеть в игре трехмерный персонаж, которым также легко управлять, как собственным телом, и раскрываемое в данной заявке решение является существенным продвижением к этому.
Настоящее изобретение решает, в первую очередь, задачу определения положения подвижных частей относительно условно неподвижного корпуса.
Техническим результатом при использовании изобретения является расширение функциональных возможностей, заключающееся в том, что все вышеописанные функции, реализуемые различными устройствами, а также получение информации о пространственном положении элементов выполняются единым устройством для игр.
Технический результат достигается тем, что в устройстве для игр, которое содержит корпус, по меньшей мере, одну, связанную с корпусом подвижную часть, вычислительное средство и управляемое вычислительным средством устройство, обеспечивающее эффект, воспринимаемый пользователем, в указанной, по меньшей мере, одной подвижной части закреплена, по меньшей мере, одна катушка индуктивности, также, по меньшей мере, одна катушка индуктивности закреплена в корпусе, при этом устройство снабжено средством измерения взаимной индукции между катушками, связанным с вычислительным средством, которое предназначено для определения взаимного расположения указанных катушек индуктивности по величинам взаимной индуктивности, полученным от указанного средства измерения, и связано с устройством, предназначенным для создания воспринимаемых пользователем эффектов на основе информации о взаимном расположении катушек индуктивности.
Устройство для игр выполнено с возможностью определения пяти степеней свободы подвижной части при наличии на подвижной части только одной катушки и игнорировании поворота подвижной части вокруг оси катушки.
Устройство для игр содержит двухзвенную конструкцию конечностей, в которой первое звено соединено с корпусом, а второе - с первым звеном, при этом, по меньшей мере, одна катушка установлена во втором звене конечностей, а вычислительное средство выполнено с возможностью определения положения первого звена конечностей, исходя из известного положения второго звена, игнорируя поворот первого звена вокруг линии, соединяющей две ее точки крепления.
Подвижная часть имеет ось, вращение вокруг которой несущественно с точки зрения формирования эффектов, воспринимаемых пользователем, и катушка располагается так, чтобы ее ось совпадала или была параллельна упомянутой оси подвижной части.
Устройство для игр ограничивает перемещение центра катушки малой областью, такой, что в ее пределах положение центра катушки можно считать неизменным и известным, и вычислять только направление оси катушки.
Катушка расположена в подвижной части непосредственно около места крепления подвижной части к корпусу.
Перемещение подвижной части относительно корпуса ограничено таким образом, что ее положение может быть полностью определено при помощи одной катушки на ней.
Устройство для игр может быть выполнено в виде антропоморфного или зооморфного объекта, причем в подвижную часть - голову, катушку устанавливают так, что ее ось направлена от темени к носу, а механическая конструкция шеи выполнена так, что вращение головы вокруг этой оси возможно только совместно с перемещением катушки.
Устройство для игр содержит, по меньшей мере, одну подвижную часть, имеющую шесть степеней свободы, в которой установлены две несоосные катушки, что позволяет определять все степени свободы.
Управляемое устройство расположено в корпусе или в подвижной части.
Управляемое устройство выполнено с возможностью создания звуковых и/или световых и/или иных эффектов, воспринимаемых пользователем. Создаваемые эффекты включают речь и/или, имитацию мимики, при этом создаваемые эффекты включают, по меньшей мере, одно самостоятельное движение, по меньшей мере, одной подвижной частью.
Устройство для игр выполнено с возможностью коррекции движения подвижной части, используя сигнал обратной связи, сформированный по информации о положении этой части.
Устройство для игр снабжено дополнительными средствами определения действий внешних предметов и/или пользователя, средствами противодействия и/или помощи и/или инициации движения в ответ на действия внешних предметов и/или пользователя.
Устройство для игр выполнено с возможностью изменения поведения игровой системы согласно заданному алгоритму в ответ на действия внешних предметов и/или пользователя.
Устройство для игр выполнено с возможностью определения характера манипуляций пользователя с корпусом по траектории движения подвижной части относительно корпуса под действием силы тяжести и инерции.
Устройство для игр выполнено с возможностью определения отклонения корпуса от вертикального положения по траектории движения относительно него подвижной части.
Устройство для игр выполнено с возможностью определения ускорения корпуса по траектории движения подвижной части относительно него.
Устройство для игр включает, по меньшей мере, одну подвижную часть, прикрепленную к корпусу с возможностью вращения этой части вокруг соответствующей оси или точки корпуса, что обеспечивает возможность определения вращения корпуса относительно инерциальной системы отсчета.
Устройство для игр включает акселерометр, связанный с вычислительным средством, при этом вычислительное средство определяет отклонение корпуса от вертикального положения, ускорение корпуса, в том числе обнаруживает резкие рывки устройства, по данным с акселератора.
Устройство для игр включает дополнительное средство, определяющее перемещение корпуса устройства в пространстве.
Устройство для игр включает дополнительное средство, обеспечивающее определение вращения корпуса относительно инерциальной системы отсчета.
Устройство для игр физически разделено на управляющую часть, включающую корпус и подвижные части, в которых расположены катушки, и средство измерения взаимной индукции между катушками, и управляемую часть, включающую устройство, предназначенное для создания воспринимаемых пользователем эффектов, а вычислительное средство расположено в управляющей или в управляемой части, при этом обе части содержат средства для связи друг с другом по каналу связи.
Управляемая часть является средством для игры в видеоигры, причем управление одним из персонажей игры осуществляется посредством манипуляции с управляющей частью.
Устройство для игр выполнено с возможностью воспроизведения персонажем видеоигры движений подвижных частей устройства.
Устройство для игр выполнено с возможностью формирования команд для управления видеоигрой при выполнении соответствующих движений подвижных частей относительно корпуса.
Устройство для игр выполнено с возможностью изменения поведения игровой системы согласно заданному алгоритму в ответ на действия внешних предметов и/или пользователя.
Сущность изобретения поясняется рисунками, которые иллюстрируют варианты выполнения изобретения и вместе с описанием служат для его пояснения.
На фиг.1 представлен предпочтительный вариант устройства для игр;
На фиг.2 изображен вариант упрощенного устройства для игр;
На фиг.3 показано использование устройства для игр, состоящего из одного игрового устройства и управляемого устройства, представляющего собой средство отображения информации (дисплей);
На фиг.4 и 5 приведены варианты блок-схемы электронного модуля;
Фиг.6 иллюстрирует способ определения наклонов и поворотов устройства для игр.
Предпочтительный вариант устройства для игр (фиг.1) содержит корпус (туловище) 1, с которым соединены подвижные части: голова 2, первое звено конечностей 4 (у верхних конечностей это плечо, у нижних - бедро), второе звено конечностей 3 и внешнее устройство для создания эффектов воспринимаемых пользователем 5. В корпусе 1 и подвижных частях 2, 3 расположены катушки индуктивности 6, 7, 8 соответственно, при этом катушки 6 являются принимающими, а катушки 7, 8 излучающими. Наиболее предпочтительное число принимающих катушек - шесть, излучающих - по одной в голове 2 и втором звене конечностей 3. Электронный модуль 9, размещенный в корпусе 1, содержит средство измерения взаимной индукции между принимающими катушками 6 и излучающими катушками 7, 8 и вычислительное средство для определения взаимного расположения катушек индуктивности 7, 8 относительно катушек 6 по величинам взаимной индуктивности, полученным от указанного средства измерения. Эти данные служат для определения положения подвижных частей 2, 3 относительно корпуса 1. Посредством проводов (на чертеже не показано) электронный модуль 9 соединен с принимающими катушками 6 и излучающими катушками 7, 8. Электронный модуль 9 и внешнее устройство 5, создающее эффект, воспринимаемый пользователем, связаны беспроводным каналом связи. Внешнее устройство 5 реализует видеоигру, при этом реальное устройство, состоящее из корпуса и подвижных частей, используется для управления виртуальным персонажем 12 видеоигры.
Работа устройства осуществляется следующим образом.
Электронный модуль 9 выполняет две основные функции: измеряет взаимную индуктивность каждой излучающей катушки с каждой принимающей катушкой и вычисляет положение каждой излучающей катушки относительно принимающих катушек исходя из измеренной взаимной индукции. Результаты данных измерений и вычислений позволяют определить положение подвижных частей относительно туловища и, таким образом, решить поставленную настоящим изобретением задачу.
Предполагается два основных варианта использования информации о положении подвижных частей. Во-первых, игрушка, обладающая возможностью определения положения своих подвижных частей, может являться интерфейсом для управления персонажем в компьютере и видеоиграх, как показано на фиг.3, где ребенок играет в видеоигру, используя игрушку 13 для управления персонажем видеоигры 12. Во-вторых, интеллектуальная кукла или робот может использовать эту информацию для выбора ответной реакции (например, в случае говорящей куклы для выбора произносимой фразы).
Рассмотрим первый вариант использования информации о положении конечностей на двух примерах - предпочтительном (фиг.1) и упрощенном (фиг.2).
Электронный модуль 9 перебирает излучающие катушки 7, 8 одна за другой, для каждой измеряя ее взаимную индукцию с каждой принимающей катушкой 6. В каждый момент времени измеряется взаимная индукция одной излучающей и одной из принимающих катушек. Как говорилось выше, в рассматриваемом предпочтительном варианте устройства шесть принимающих катушек 6 установлены в корпусе 1, а пять излучающих катушек 7, 8 - на подвижных частях 2, 3. Измерение шести взаимных индуктивностей излучающих катушек 7, 8 со всеми принимающими катушками 6 позволяет вычислить положение этих излучающих катушек 7, 8 относительно принимающих катушек 6. Определение положения излучающих катушек 7, 8 относительно принимающих катушек 6 обеспечивает определение положения подвижных частей 2 и 3 относительно корпуса 1.
Под определением положения катушек понимается определение трех координат ее центра и двух координат, задающих ориентацию катушки в пространстве. Следовательно, определяется пять из шести возможных степеней свободы положения твердого тела в пространстве, шестая степень свободы - вращение катушки вокруг своей оси не определяется. Так поворот катушки 8 и, соответственно, второго звена конечностей 3 вокруг своей оси 10 не обнаруживается. Это вызвано тем, что при вращении катушки вокруг оси ее взаимная индуктивность с любой другой катушкой в первом приближении не меняется.
Очевидным в определении положений подвижных частей 2, 3, 4 является прямолинейный подход, который состоит в том, чтобы на каждую подвижную часть устанавливать две несоосные катушки. Однако можно обойтись одной катушкой на движущейся части. Во-первых, если движущаяся часть достаточно оси симметрична, как второе звено конечностей 3, то можно расположить катушку соосно с осью 10 подвижной части. В этом случае не будет обнаруживаться вращение второго звена конечностей 3 вокруг оси симметрии 10, что не будет восприниматься пользователем негативно, поскольку такое вращение значительно менее информативно по сравнению с другими движениями конечности, не передает важных жестов, часто не физиологично и может игнорироваться.
Другой подход состоит в том, чтобы ограничить движение твердого тела и уменьшить количество степеней свободы до пяти или меньше. Для этого требуется, чтобы вращение вокруг своей оси было неизбежно связано с перемещением центра катушки. В терминах механики такое ограничение называется связью. При наличии такой связи одна катушка позволит полностью определить положение этой движущейся части, поскольку вращение без перемещения центра катушки невозможно, а это перемещение центра может быть определено. В предпочтительном варианте устройства этот подход используется для определения положения головы 2. Излучающая катушка 7 расположена в подвижной части - голове 2, так что ось катушки направлена от темени к носу. Механическая конструкция шеи ограничивает вращение головы 2 вокруг этой оси, но не ограничивает наклоны головы 2 в стороны, которые обнаруживаются по перемещению катушки 7. В результате положение головы 2, в том числе кивания, наклоны, определяется местоположением катушки 7.
При производстве игрушек обычно применяются простые механические решения и связь, соединяющая голову с корпусом, может иметь значительную слабину. В этом случае возможно небольшое вращение катушки вокруг своей оси без перемещения и такое вращение не будет обнаруживаться. Поскольку это вращение соответствует вращению головы вокруг оси, проходящей от темечка к носу, такое ограничение не ухудшает продукт с точки зрения пользователя до тех пор, пока оно удерживается связью в разумных пределах.
В предпочтительном варианте устройство содержит по одной излучающей катушке 8, установленной во втором звене конечностей 3, что позволяет определить положение и первого звена конечностей 4. Таким образом, зная положение катушки 8, можно определить положение второго звена конечностей 3, а зная положение конечностей 3, определяют положение первого звена конечностей 4, поскольку данное звено 4 соединяет второе звено конечностей 3 с корпусом 1. При этом не определяются повороты первого звена 4 вокруг оси 11, соединяющей точки крепления этого звена к корпусу и ко второму звену 3. Эти повороты неинформативны и могут быть проигнорированы аналогично поворотам второго звена 3 относительно оси 10.
Таким образом, излучающие катушки 7, 8 обеспечивают определение положения всех подвижных частей 2, 3, 4. Возможность определения конечностей третьего звена (кистей и стоп) в рассматриваемом примере не показана, но для специалиста это очевидно из вышесказанного.
Для игрушек, содержащих большее количество подвижных частей, используют дополнительные излучающие катушки для определения положения этих частей. Например, в игрушке, имитирующей животное, может быть установлена катушка в хвост для определения его положения. Необходимым условием является лишь соединение излучающей катушки проводом с электронным модулем в корпусе. Способ крепления подвижной части к корпусу может варьироваться для различных воплощений.
Форма, размеры и расположение катушек играют важную роль в обеспечении возможности определения положения излучающих катушек и точности измерений. В рассматриваемом варианте устройства шесть принимающих катушек 6 сгруппированы в два блока, каждый из которых представляет три катушки намотанных ортогонально друг другу на куб с длиной ребра 6 см. При вертикальном расположении игрушки верхние и нижние грани куба расположены горизонтально. Один куб располагается над другим и повернут относительно первого вокруг вертикальной оси (фиг.1) на 45 градусов, между кубами оставлен зазор порядка 1 см.
Форма, размеры и расположение катушек могут быть оптимизированы специалистом, владеющим современным уровнем науки и техники в области физики переменных магнитных полей, либо с приемлемым результатом подобраны экспериментально инженером электронщиком.
Далее, после определения положения подвижных частей 2, 3, 4 относительно корпуса 1, электронный модуль 9 посредством беспроводного канала связи передает информацию о положении подвижных частей 2, 3, 4 относительно корпуса 1 на внешнее устройство 5.
Измерение взаимной индуктивности производится следующим образом.
На фиг.4 представлена структурная блок-схема электронного модуля 9. Излучающая катушка 7, 8 (ИК) возбуждается синусоидальным сигналом, в предпочтительном воплощении синусоидальный сигнал генерируется схемой, состоящей из цифроаналогового преобразователя 20 (ЦАП) и полосового фильтра 21 (Ф). ЦАП 20 генерирует сигнал с выбранной частотой, а полосовой фильтр 21 (Ф), настроенный на ту же частоту, подавляет паразитные частоты, присутствующие на выходе ЦАП 20, в первую очередь кратные частоты. В предпочтительном воплощении такой сигнал усиливается и подается на демультиплексор 22 (ДМ), который подключает выход усилителя к выбранной излучающей катушке. Частота сигнала в предпочтительном воплощении находится в диапазоне 100-500 кГц, однако может быть выбрана и вне этого диапазона.
Частота возбуждения передающей катушки выбирается отличной для каждой модели игрушки и в предпочтительном варианте устройства фиксируется при ее производстве. Это позволяет пользователю иметь набор игрушек и играть с ними одновременно. Благодаря разным используемым частотам они не будут создавать помехи друг для друга, даже если окажутся рядом.
Переменный ток в излучающей катушке создает переменное магнитное поле, которое в свою очередь индуцирует переменную ЭДС в принимающей катушке 6 (ПК). ЭДС катушек усиливается в блоке 23 (У) и подается на вход АЦП 24 для преобразования в цифровой вид. Далее информация обрабатывается в цифровом вычислительном средстве 25 (Ц). Цифровое вычислительное средство 25 осуществляет управление измерением индуктивности, подает требуемые цифровые данные на ЦАП 20, принимает данные с АЦП 24 и производит вычисления с целью определения положения катушек. Полученные данные о положении подвижных частей вычислительное средство 25 (Ц) передает на устройство, создающее эффекты, воспринимаемые пользователем посредством блока связи (на фиг.4 не показан).
В предпочтительном варианте устройства используется один АЦП 24 для измерения ЭДС всех катушек. Для этого между катушками и усилителем устанавливается мультиплексор 26 (М), который подключает одну из катушек к усилителю. Цикл измерения проводится поочередно для каждой принимающей катушки.
АЦП 24 захватывает сигнал с принимающей катушки и преобразует его в цифровой вид. В предпочтительном варианте устройства частота дискретизации АЦП 24 в четыре раза превосходит частоту, подаваемую на излучающую катушку. Обе частоты привязаны к частоте общего тактового генератора. Тактовая частота ЦАП 20 и тактовая частота АЦП 24 это поделенная на соответствующий коэффициент частота общего тактового генератора. Это приводит к тому, что частота сигнала, подаваемого на катушку, и частота работы АЦП 24 строго синхронны между собой.
При измерении взаимной индуктивности производится вычисление квадратурных компонентов приходящего гармонического сигнала. Для улучшения отношения сигнал/шум данные с АЦП 24 накапливаются в течение многих периодов. Далее эта операция описывается более детально.
Обозначим накопленные данные S(n), где n - номер отсчета может варьироваться от 1 до М*4, где М количество накопленных периодов сигнала.
По этим данным вычисляется
Фаза приходящего сигнала φ может быть вычислена путем решения системы уравнений
I=-Lsin(φ), где L это величина, пропорциональная искомой взаимной индуктивности.
А модуль взаимной индуктивности А может быть вычислен по формуле
Действительно, пусть
где T - период излучаемой частоты. В этой формуле T строго фиксировано и далее сократится, L зависит от взаимного положения катушек, а φ зависит от конструкции устройства и не зависит от положения катушек.
Поскольку частота работы АЦП в четыре раза больше излучаемой частоты, то отсчет с номером i производится во время i*T/4, из этого получается
S(i)=Lcos(pi*i/2+φ).
Подставляя это в формулы (1), получаем
R=Lcos(φ)
I=-Lsin(φ), то есть формулу (2).
Подставляя полученные выражения для R и I в формулу (3), получим A=sqrt(L^2), то есть A это абсолютная величина от L и эта величина не зависит от фазы φ.
Определить из этих формул знак L при неизвестной фазе φ невозможно, поскольку как изменение знака L, так и сдвиг φ на 180 градусов приводят к одному и тому же эффекту - принимаемый сигнал инвертируется. Чтобы определить знак L, нужно ограничить возможный диапазон φ.
Как уже упоминалось, φ определяется только конструкцией устройства и не зависит от положения катушек. Пусть сигнал, выдаваемый на ЦАП, имеет форму
T(t)=Acos(2*pi*t/T+θ),
тогда φ является суммой
φ=θ+Δ.
В этой сумме Δ определяется конструкцией электронной схемы устройства и включает, например, такие компоненты, как сдвиг выходного фильтра, сдвиг на π/2 ЭДС в принимающей катушке относительно тока в излучающей, сдвиг по фазе вносимым усилителем перед АЦП и т.д. Эти величины могут меняться от устройства к устройству, у экземпляра устройства в процессе работы, они также могут различаться у одного устройства на разных принимающих катушках. θ задается программным обеспечением и потому в предпочтительном воплощении θ задается равным по величине типичному Δ и противоположенным ему по знаку, что приводит к тому, что φ=θ+Δ оказывается близко к нулю. При помощи приемов, известных в области конструирования электронных схем, можно обеспечить, чтобы в наихудшем случае φ отклонялся от нуля не более чем на π/2 на любом устройстве серии, при любых ожидаемых для игрушки условиях эксплуатации.
В этом случае cos(φ) всегда больше нуля. А значит, знак взаимной индуктивности совпадает со знаком R. Модуль взаимной индуктивности определяется по формуле (3), при этом возможные отклонения фазы φ не влияют на точность вычисления L, поскольку фаза φ не входит в формулу (3).
В результате модуль взаимной индуктивности равен значению A, полученному по формуле (3), а знак такой же, как у величины R, вычисленной по формуле (2).
Для того чтобы получить результат в общепринятых единицах, например C, индуктивность, вычисленная этим методом, должна быть умножена на некоторый коэффициент, который в свою очередь может быть вычислен исходя из конструкции устройства. Это, однако, не требуется, поскольку предпочтительный алгоритм, изложенный в этой заявке, использует процедуру калибровки, и калибровочные коэффициенты запоминаются в тех же единицах, которые выдает изложенный выше метод.
При разработке тракта принимающего сигнал с катушки следует учитывать, что амплитуда сигнала на катушке может очень сильно меняться, что связано с сильным падением взаимной индуктивности с расстоянием. Так при геометрии фиг.1 сигнал на приемной катушке при различных положениях конечности отличается более чем в 100 раз. Поэтому требуется обеспечить большой динамический диапазон тракта принимающего сигнал с катушки. В предпочтительном воплощении это обеспечивается установкой перед АЦП 24 усилителя с дискретно управляемыми коэффициентами усиления. Вычислительное средство, анализируя величину поступающего с АЦП 24 сигнала, управляет коэффициентом усиления этого усилителя.
Аналогичным образом измеряется взаимная индуктивность каждой пары излучающей и принимающей катушек. Набор взаимных индуктивностей заданной излучающей катушки со всеми принимающими и является результатом работы этой операции.
Алгоритм вычисления положения катушек, расположенных на подвижных частях в качестве исходных данных, получает комплект величин взаимных индуктивностей Lij, где i - номер излучающей катушки, a j принимающей.
Из общей физики известно, что взаимная индукция обладает свойством Lij=Lji, то есть взаимная индукция, измеренная подавая ток на катушку i и измеряя ЭДС на катушке j, равна взаимной индуктивности, измеренной подавая ток на катушку j и измеряя ЭДС на катушке i. Поэтому для вычислений неважно, каким образом измерены взаимные индуктивности, размещены ли принимающие катушки в корпусе, а излучающие на подвижных частях или наоборот.
Пусть принимающая катушка имеет координаты x, y, z, и единичный вектор направления D=(Dx,Dy,Dz). Основным постулатом, на котором строятся вычисления, является
где
LCxij(x,y,z) это взаимная индуктивность между катушками i и j при условии, что катушка j направлена вдоль оси X
LCyij(x,y,z) это взаимная индуктивность между катушками i и j при условии, что катушка j направлена вдоль оси Y
LCzij(x,y,z) это взаимная индуктивность между катушками i и j при условии, что катушка j направлена вдоль оси Z.
Этот постулат проще обосновать, если предположить, что на корпусе находятся излучающие катушки, а на подвижных частях принимающие.
Действительно, пусть излучающая катушка создает поле B в точке x,y,z при единичном токе. Тогда в предположении, что поле однородно на характерных размерах катушки,
где D это единичной вектор направления катушки, a S это эффективная площадь катушки, равная площади витка, умноженной на количество витков.
Если определить Lcxij=Sj*Bix, Lcyij=Sj*Biy, LCzij=Sj*Biz и поставить в формулу 6, то получится формула 5.
Эта формула обоснованная исходя из расположения передающих катушек на корпусе, а принимающих на подвижных частях верна и в обратном случае исходя из известного свойства равенства взаимных индуктивностей.
Эта формула верна при допущении, что поле в области принимающей катушки равномерно, что заведомо не так в данном случае. Расстояние до излучающей катушки сравнимо по порядку величины с самой излучающей катушкой и только на порядок превосходит размеры принимающей катушки, из чего следует, что поле должно быть неоднородным. Это неизбежно приводит к погрешностям в определении положения и направления катушки по раскрытой в данной заявке методике, что и наблюдалось на опытном образце. Однако, несмотря на то, что стандартные научные требования для использования данного приближения не выполнены, погрешности оказались приемлемыми для данного применения и раскрытое изобретение имеет большие возможности по практическому применению.
Для работы данного алгоритма электронного модуля требуется знать функции Lcxij(x,y,z), Lcyij(x,y,z), LCzij(x,y,z). В предпочтительном воплощении выбирается конечный набор точек (x, y, z), для которых эти значения получаются путем экспериментального измерения в процессе калибровки. Точки выбираются так, чтобы равномерно покрывать область, в которой возможно движение конечностей.
Исходными данными для данного алгоритма является комплект взаимных индуктивностей Lij.
Результатом работы алгоритма электронного модуля является определение положения центра катушки (x, y, z), совпадающего с одной из точек набора, и направление катушки Dx, Dy, Dz при ограничении Dx^2+Dy^2+Dz^2=1.
Упрощенно данный алгоритм состоит из следующих шагов:
1. Перебираются все точки, для которых проведена процедура калибровки; для каждой выполняются шаг 2.
2. Для очередной точки (х, y, z) вычисляется наиболее правдоподобное направление Dx, Dy, Dz, при котором взаимные индуктивности согласно приведенным выше формулам, имеют наименьшее среднеквадратичное отклонение от поступивших на вход алгоритма. Полученные направление и среднеквадратичное отклонение сохраняются в памяти.
3. Среди значений, сохраненных в памяти, ищется минимальное среднеквадратичное отклонение, извлекается направление, при котором оно достигнуто, и определятся, при какой выбранной точке оно получено.
Результатом работы электронного модуля является определение направления и координаты, полученные на шаге 3, то есть соответствующие минимальному среднеквадратичному отклонению, полученному за все итерации шага 2.
Рассмотрим более детально шаг 2. На этом шаге ищется наиболее правдоподобное направление катушки при заданном положении (x, y, z). Выбранное положение подставляется в формулу (5), в левую часть формулы подставляются значения, поступившие на вход алгоритма (то есть измеренные экспериментально), и формула превращается в систему линейных уравнений с неизвестными Dx, Dy, Dz. Помимо линейных уравнений в систему входит одно нелинейное Dx^2+Dy^2+Dz^2=1. Система имеет меньше неизвестных, чем уравнений, поэтому в общем случае решения не имеет. Эта система решается методом наименьших квадратов, который обеспечивает именно то, что требуется в шаге 2.
Реальное положение центра катушки, безусловно, не точно совпадает с положением, найденным алгоритмом. Максимальная погрешность по координате составляет около половины максимального расстояния между точками калибровки. В предпочтительном воплощении область возможного движения конечности разбивалась на кубы с длиной грани 2 см и точки калибровки выбирались на вершинах кубов. Таким образом, максимальное удаление центра катушки от точки калибровки составляет около 1,7 см и ошибка в определении координаты, связанная с величиной сетки калибровки, приблизительно составляет эту величину.
Помимо описанного варианта реализации устройства в виде антропоморфного существа, техническое решение может быть реализовано другими воплощениями, например, в виде животных, экзотических змей, осьминогов, пауков, объектов техники (кранов, экскаваторов, роботов-трансформеров).
На фиг.2 изображен вариант упрощенного устройства, в котором имитируются движения только во втором звене конечностей 3.
В упрощенном варианте конечности 3 движутся как единое целое, аналогов локтевого или коленного суставов нет. Все движения этих конечностей 3 можно представить как повороты вокруг некоторой точки в месте присоединения конечности 3 к корпусу 1, и у конечности 3 остается только три степени свободы. Одной из степеней свободы является вращение конечности вокруг своей оси, но оно игнорируется по тем же причинам, что и в предпочтительном варианте. Катушка 8 устанавливается соосно с осью конечности 3, максимально близко к точке вращения конечности 3 относительно корпуса 1. В результате при любых движениях катушка 3 остается внутри некоторой небольшой области, поэтому ее поступательным движением можно пренебречь, полагается, что катушка j всегда находится в некоторой точке xj, yj, zj. Возникает задача определения ориентации катушки при заданном положении, то есть определения координат по двум степеням свободы. Для решения этой упрощенной задачи используются три катушки 6 в корпусе 1. Теоретически количество принимающих 6 катушек может быть уменьшено до двух. Так же как и в предпочтительном варианте, электронный модуль 9 выполняет функции измерения взаимной индуктивности катушек 8 и 6, и функции вычислительного средства определяющего положение катушек 8 относительно катушек 6 по измеренным значениям взаимной индукции. В данном воплощении используется упрощенный вариант вычислений, раскрытых при описании предпочтительного воплощения. Так, набор точек, в которых Lcxij(x,y,z), LCyij(x,y,z), Lczij(x,y,z) определяется путем калибровки, сводится для заданной катушки j только к одной точке, xj, yj, zi, в окрестности которой всегда находится катушка. Если набор точек в раскрываемом алгоритме сводится к одной точке, то выполнение шага 1 и шага 3 не требуется и выполняется только шаг 2.
Преимуществом данного варианта является простота конструкции, упрощение вычислений и помехоустойчивость. Помехоустойчивость обеспечивается тем, что катушки 8 в этом варианте воплощения не удаляются от корпуса 1 устройства.
Для каждого персонажа выбирается собственная частота, и она фиксируется при производстве устройства. Поскольку количество персонажей игрушек потенциально может быть огромным, то частотного ресурса может не хватить. Также на зафиксированной при производстве частоте, на месте эксплуатации игрушки может присутствовать помеха, и целесообразно было бы использовать другую частоту, свободную от помех. Для исключения вышеперечисленных недостатков предлагается альтернативное воплощение, которое находит частоту, свободную от помех, препятствующих работе устройства.
Для этого в цикле работы устройства резервируется временной интервал, в течение которого устройство только принимает сигнал и не излучает. Если в этом интервале амплитуда принимаемого сигнала ниже некоторого предустановленного порога, то данная частота пригодна для использования, и устройство продолжает функционировать, используя ее. Если в зарезервированном интервале амплитуда принимаемого сигнала выше этого порога, то данная частота не пригодна для использования. В этом случае электронная схема согласно алгоритму меняет рабочую частоту и проводит проверку пригодности для использования другой частоты. Частоты перебираются из некоторого заранее выбранного разработчиком набора допустимых частот, пока не будет найдена та, на которой амплитуда внешних сигналов приемлема для работы. Если все частоты из этого заданного набора не приемлемы для работы, то устройство не функционирует. Все аналоговые цепи и принимающего, и передающего трактов должны пропускать любую частоту из выбранного набора допустимых частот.
В предпочтительном варианте устройство содержит один АЦП 24 и один усилитель перед ним, а катушки подключаются к входу усилителя по очереди посредством мультиплексора. Возможен вариант, когда каждая катушка имеет свой индивидуальный измерительный тракт, и в устройстве функционирует по одному АЦП 24 на каждую приемную катушку, блок-схема электронного модуля, соответствующего этому варианту, изображена на фиг.5. В этом варианте за счет усложнения аппаратной части можно обеспечить более быстрое измерение всех взаимных индуктивностей, что повысит скорость реакции устройства на действия пользователя. Разработчик может также оставить скорость реакции системы без изменения, но увеличить длительность накопления сигнала с целью улучшения отношения сигнал/шум.
В предпочтительном воплощении функции Lcxij(x,y,z), Lcyij(x,y,z), LCzij(x,y,z) измеряются в конечном наборе точек в процессе калибровки и эти значения хранятся в памяти вычислительного средства. Однако возможен вариант, когда эти функции задаются аналитически, в том числе и в простейшем варианте, когда используются формулы для дипольного приближения.
В некоторых воплощениях можно реализовать качественный полосовой фильтр, отказаться от ЦАП 20, заменив его таймером, который на вход фильтра подает прямоугольный сигнал требуемой частоты. Полосовой фильтр значительно подавляет все частоты, кроме основной, и на выход подается сигнал, близкий к синусоидальному.
Как уже было указано выше, в предпочтительном варианте на подвижных частях располагаются излучающие катушки, а на корпусе принимающие. Однако можно поместить принимающие катушки на подвижные части, а излучающие на корпус.
Из общей физики известно, что взаимная индукция обладает свойством Lij=Lji, то есть взаимная индукция, измеренная подавая ток на катушку i и измеряя ЭДС на катушке j, равна взаимной индуктивности, измеренной подавая ток на катушку j и измеряя ЭДС на катушке i. Поэтому для вычислений неважно, каким образом измерены взаимные индуктивности, размещены ли принимающие катушки в корпусе, а излучающие на подвижных частях или наоборот.
Для измерения взаимной индукции могут быть использованы другие методы. В качестве альтернативного решения может быть выбрана генерация синусоидального сигнала аналоговым методом и измерение амплитуды сигнала с принимающей катушки на принципах синхронного детектирования.
Другим альтернативным решением является суммирование сигнала по формуле (1) аналоговым способом с использованием схем на переключаемых конденсаторах (switched capacitors). Схемотехника на переключаемых конденсаторах очень популярна при разработке микроэлектронных решений на кристалле, хотя практически не применяется при разработке схем на дискретных компонентах. Вход электронной схемы, разработанной на принципах прыгающих конденсаторов, подключается к принимающей катушке. В заданные моменты времени переключаемый конденсатор подключается ко входу схемы и напряжение, присутствующее в этот момент на входе, запоминается в виде заряда на конденсаторе. Далее схема проводит аналоговое суммирование захваченных напряжений согласно формуле (1), и аналого-цифровое преобразование уже проводится над суммой. Это позволяет значительно снизить требования по скорости аналого-цифрового преобразования, что в свою очередь позволяет поднять точность преобразования и понизить энергопотребления. В частности, появляется возможность использования сигма-дельта преобразователя. Преимуществом сигма-дельта преобразователя является большой динамический диапазон, что требуется в данном приложении. В этом случае можно отказаться от усилителя с регулируемым коэффициентом усиления.
Изобретение может быть реализовано в виде плюшевых игрушек, в которых подвижные части выполнены из пластика или твердого поролона с ограничением их перемещения. Для измерения взаимной индукции применяется описанный метод.
В таком варианте реализации технического решения в дальнюю от туловища половину конечности помещается деталь из трудно деформируемого материала, с прикрепленной к ней излучающей катушкой. Эта деталь выполняет функции подвижной части, имитирует вторые звенья конечностей 3, фиг.1. Первое звено конечностей не имеет твердых частей и выполнено по стандартной технологии плюшевых игрушек. Так же как и в предпочтительном варианте по положению подвижной части, во втором звене конечности определяется положение первого и второго звена за исключением их вращения вокруг собственной оси.
Такое воплощение устройства в виде плюшевой игрушки обеспечивает уникальную гибкость конечностей, что повышает выразительность игрушки, если она используется для управления персонажем видеоигры. Полное отсутствие любых жестких механических соединений увеличивает надежность и срок службы устройства.
Возможно воплощение изобретения в виде робота, способного к самостоятельному движению. Раскрытый способ определения положения подвижных частей может использоваться для реализации обратной связи при управлении манипуляторами робота, то есть для определения их положения с целью корректировки управляющего воздействия на электромеханику, осуществляющую движение.
В другом варианте воплощения робот может быть оборудован дополнительными сенсорами, позволяющими отличить касание пользователя от касания других предметов. Робот позволяет пользователю манипулировать своими конечностями и пытается распознать команду или смысл его действий. Например, постановка манипуляторов робота, имитирующих руки в боксерскую стойку, означает команду сражаться, а дружественное помахивание манипулятором робота означает команду дружить с другим роботом. При соответствующем уровне развития робототехники станет возможным задать роботу движения танца, которые он сможет воспроизводить под музыку.
Выше рассматривалась возможность определения положения конечностей первого, второго звена и головы относительно корпуса. Аналогичным образом можно измерять наклон корпуса устройства.
Для измерения наклона корпуса 1 в устройстве (фиг.6) предусматривают специальную подвижную часть 15, прикрепленную при помощи растяжек 16 к корпусу устройства. На фиг.6 корпус не изображен, указаны лишь точки крепления 17 к корпусу. Подвижная часть 15 располагается внутри корпуса, что исключает механические воздействия на нее пользователя или каких-либо тел. При наклоне, под действием силы тяжести, подвижная часть 15, а вместе с ней и катушка 18 смещается из точки равновесия. Соответственно, измерив положение катушки 18 относительно корпуса, определяют наклон корпуса относительно вертикали.
Чтобы избежать механических колебаний катушки 18 вокруг новой точки равновесия, материал растяжек 16 подбирают таким образом, чтобы механическая энергия перемещения катушки больше поглощалась материалом, а не накапливалась в его деформации. Это позволяет погасить или значительно уменьшить амплитуду колебаний и катушка скорее «перетекает» в новое положение, чем колеблется вокруг новой точки равновесия. Дополнительно используют математическую обработку данных о положении катушки, которая по траектории движения катушки определяет положение новой точки равновесия и, следовательно, направление силы тяжести, используя факт, что механические свойства системы известны сравнительно точно.
На определение наклона негативно воздействуют рывки и другие манипуляции пользователя. Один и тот же измеряемый эффект, смещение подвижной части, может быть вызван как наклоном, так и рывком. В первом случае оно вызвано поворотом вектора силы тяжести относительно корпуса устройства, во втором случае смещение вызвано силой инерции. По траектории подвижной части можно вычислить только суммарную силу F, являющейся суммой двух сил: силы тяжести и силы инерции F=Fg+Fa.
Поэтому требуется специальная математическая обработка для выделения наклонов.
Ключевым отличием силы инерции от силы тяжести является то, что в условиях применения игрушки ее среднее стремится к нулю при увеличении времени усреднения. Сила тяжести обладает противоположным свойством, она не зависит от времени и при постоянном наклоне ее среднее равно ей самой.
Другой эффективный критерий для разделения силы инерции и силы тяжести может дать второй интеграл по времени силы, вызвавшей смещение подвижной части из точки равновесия. Двойной интеграл силы инерции по времени пропорционален смещению в пространстве за время интегрирования и при штатных операциях с игрушкой не может превосходить десятков сантиметров за секунду. А вот двойной интеграл силы тяжести пропорционален второй степени времени интегрирования и поэтому сильно растет со временем.
Таким образом, для определения наклона вычисляется второй интеграл силы F за время порядка одной секунды и полагается, что компонентом составляющей Fa в нем можно пренебречь. И в предположении постоянного наклона из Fg вычисляется наклон устройства.
Метод определения наклонов можно использовать и для обнаружения рывков устройства (резких перемещений) по всем трем измерениям. Такой рывок может быть сознательным действием пользователя (игрока) и, например, рывок влево может означать команду виртуальному персонажу отпрыгнуть влево. Математическая обработка данных о положении катушки позволит по траектории движения катушки приблизительно определить направление и силу рывка.
Пожалуй, недостатком определения наклона и обнаружения рывков является то, что один и тот же измеряемый эффект, а именно смещение подвижной части может быть вызван как наклоном, так и рывком.
Если учитывать особенности области применения в детских игрушках, различия наклона и рывков не вызывает сомнений во многих практически полезных случаях. Так, например, при воплощении данного метода в интерактивной кукле требуется, в первую очередь, отличать вертикальное положение от горизонтального, а время реакции системы на наклон в несколько секунд вполне допустимы. Наклон почти на 90 градусов в течение нескольких секунд эквивалентен разгону куклы до скорости в десятки метров в секунду, и поэтому может быть четко отделен от любых манипуляций, не связанных с таким наклоном. Вместе с этим данный метод позволяет определять покачивания, которые использует мать, когда укладывает ребенка спать, в этом случае не стоит задачи отделения наклона от ускорения. Требуется идентифицировать периодичность движений и, в зависимости от периода и амплитуды движений, реагировать положительно либо отрицательно. Раскрытый метод обнаружения рывков сможет обнаруживать падение куклы на пол или другие факты грубого обращения.
Специалист, владеющий современными методами проектирования видеоигр, может выбрать решения по управлению персонажем, которые смягчат недостатки раскрытого метода определения рывков и наклонов и упростят задачу специалиста по математической обработке данных, полученных с датчиков.
Наконец, метод обнаружения рывков может применяться для игрушек, наклон которых невозможен, например, для машин, перемещаемых по полу.
Изложенный метод измерения угла наклона корпуса можно расширить и обеспечить обнаружение резких поворотов корпуса. Данная функция также может быть реализована с использованием подвижной части, изображенной на фиг.6. С целью уменьшения момента силы, передаваемой на отвес 15 при вращении корпуса устройства, растяжки 16 крепятся к подвижной части 15 максимально близко к центру масс 19. А момент инерции подвешенной подвижной части 15 сделан максимальным с учетом других ограничений устройства. Это приводит к тому, что при резких поворотах корпуса устройства катушка 18 остается практически неподвижной или поворачивается незначительно относительно инерциальной системы отсчета, поэтому с некоторым приближением поворот корпуса относительно катушки 18 можно считать его поворотом относительно окружающего пространства. Поворот катушки определяется методом, раскрытым в данной заявке.
Данный метод обнаружения поворотов корпуса может быть использован для измерения поворотов вокруг одной, двух или трех осей устройства. Для этого требуется разработать подвес, который обеспечит малый момент силы, передаваемый на подвижную часть при повороте вокруг любой из требуемых осей. На фиг.6 изображено решение, которое обеспечивает малый момент силы при повороте вокруг любой оси, но изображенная катушка 18 пригодна только для измерения поворотов вокруг любой горизонтальной оси. Определить поворот вокруг вертикальной оси при изображенном расположении катушки невозможно. Для измерения поворота вокруг всех трех осей на подвешенную подвижную часть устанавливается две катушки.
Если изложенный метод применяется для обнаружения поворотов вокруг горизонтальной оси, то он дополняет изложенный метод определения наклона, основанный на смещении подвижной части из положения равновесия под действием силы тяжести. Метод определения поворотов тела вокруг оси хорошо определяет резкие повороты, тогда как медленные и длительные повороты хуже. Метод определения наклона, основанный на смещении подвижной части из положения равновесия, наоборот, не определяет резких поворотов, но хорошо определяет средний наклон за интервал времени порядка секунды и больше. Сочетание этих методов обеспечивает качественное отслеживание любых наклонов. При этом требуется решить стандартную задачу косвенного измерения одной величины (наклона) при помощи двух датчиков, использующих разный принцип. Данная задача является типичной для многих разделов науки и техники, включая обработку результатов научного эксперимента, и может быть решена специалистом, владеющим современным уровнем науки и техники в этих областях.
Информация о наклоне в свою очередь позволяет определять рывки. По траектории движения подвижной части определяется вектор суммы силы тяжести и силы инерции. Вектор силы тяжести известен, поскольку известен наклон устройства, следовательно, разность определенного вектора и вектора силы тяжести может быть вычислена, и эта разность является вектором силы инерции. Возможность определения и наклона устройства и рывков и других манипуляций, связанных с ускорением, имеет огромную практическую ценность для управления персонажем в видеоиграх и других применений.
Описанный метод определения поворота вокруг оси может быть применен для определения поворота вокруг вертикальной оси, это особенно востребовано для управления персонажем в видеоиграх, где повороты реального игрового устройства преобразуются в повороты персонажа в видеоигре. Пользователь может повернуть устройство вокруг вертикальной оси произвольное количество раз, в том числе и очень большое. Однако растяжки при вращении закручиваются и позволяют сделать только ограниченное число поворотов катушки относительно тела устройства (провод, идущий к катушке, тоже ограничивает количество возможных оборотов). По достижении этого ограничения катушка будет вращаться вместе с телом, и дальнейшие вращения тела адекватно обнаруживаться не будут. Данное свойство является крайним проявлением более общего недостатка предложенного метода измерения - этот метод оптимален для обнаружения резких поворотов на небольшой угол (до 90 градусов) и слабо подходит для определения угла больших поворотов, на которых сказывается неидеальность подвеса. Это ограничение не столь существенное, если учесть, что человеку удобно поворачивать игрушку, не перехватывая ее, на угол в несколько десятков градусов. Повороты игрушки на большие углы требуют перехвата и потому менее удобны.
Исходя из этого может быть использован следующий метод управления игровым персонажем. Поворот реального персонажа влево или вправо соответствует команде крутиться влево или вправо, то есть отклонение на фиксированный угол соответствует вращению виртуального персонажа с заданной угловой скоростью, а не повороту на заданный угол. Это воспроизводит способ управления джойстиком, когда отклонение джойстика в сторону задает интенсивность движения в эту сторону. Возврат в исходное положение тела устройства относительно катушки прекращает вращение. Возможные побочные эффекты, связанные с тем, что обнаруживается поворот тела устройства относительно катушки внутри, а не относительно комнаты, могут быть устранены математической обработкой и подбором правил управления персонажем в игре.
Изложенное решение является примером общего подхода, когда перемещение реальной игрушки не воспроизводится виртуальным персонажем идентично. В этом случае движение игрушки является лишь управляющим воздействием на алгоритм, который по некоторому закону преобразует управляющее воздействие в действие виртуального персонажа. Другим примером такого подхода может быть игра, в которой управление осуществляется виртуальным персонажем волшебника, и определенная манипуляция с реальной игрушкой вызывает проявление определенного волшебства в виртуальном мире.
Помимо раскрытого в данной заявке метода определения наклонов и рывков (скачков), эти функции могут быть реализованы и акселерометром, например, таким как MEMS акселерометры компании ANALOG DEVICES. Такой акселерометр выдает ускорение, состоящее из двух компонент a=ag+am, где am это реальное ускорение акселерометра в инерциальной системе отсчета, a ag это компонента, вызванная силой тяжести. Поэтому возникают те же самые проблемы разделения наклона и рывков, как и в раскрытом методе на принципе обнаружения смещения подвижной части. Акселерометр обеспечит более точное измерение ускорения и позволит более точно определять рывки и наклон устройства.
Метод, основанный на измерении смещения подвижной части из точки равновесия, может иметь преимущество более низкой себестоимости по сравнению с методом, использующим акселерометр. Другим преимуществом метода, основанного на смещении подвижной части, является возможность на той же подвижной части определять поворот устройства. Для определения поворота акселерометра уже недостаточно и требуется другое средство, например гироскоп, что приводит к дальнейшему росту себестоимости устройства. В случае детских игрушек цена имеет существенное значение, и замена акселерометра с гироскопом на простое механическое устройство с катушкой индуктивности может дать значительное конкурентное преимущество.
Выше описаны варианты реализации заявленного устройства для игр, которые не следует рассматривать как ограничение патентных притязаний изобретения. В описанные варианты могут быть внесены различные изменения и дополнения, которые очевидны специалистам данной области техники, при этом не выходящие за пределы правовой охраны настоящего изобретения.