RU2680791C2 - Всенаправленный колесный человекоподобный робот, основанный на контроллере положения и скорости с линейным прогнозированием - Google Patents
Всенаправленный колесный человекоподобный робот, основанный на контроллере положения и скорости с линейным прогнозированием Download PDFInfo
- Publication number
- RU2680791C2 RU2680791C2 RU2016144008A RU2016144008A RU2680791C2 RU 2680791 C2 RU2680791 C2 RU 2680791C2 RU 2016144008 A RU2016144008 A RU 2016144008A RU 2016144008 A RU2016144008 A RU 2016144008A RU 2680791 C2 RU2680791 C2 RU 2680791C2
- Authority
- RU
- Russia
- Prior art keywords
- robot
- angular velocity
- inclined state
- base
- impact
- Prior art date
Links
- 230000001133 acceleration Effects 0.000 claims abstract description 32
- 238000000034 method Methods 0.000 claims abstract description 20
- 238000005259 measurement Methods 0.000 claims abstract description 18
- 230000006870 function Effects 0.000 claims description 65
- 230000033001 locomotion Effects 0.000 claims description 24
- 238000005070 sampling Methods 0.000 claims description 13
- 238000000605 extraction Methods 0.000 claims description 11
- 230000007704 transition Effects 0.000 claims description 10
- 238000006243 chemical reaction Methods 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 5
- 230000000694 effects Effects 0.000 abstract description 20
- 239000000126 substance Substances 0.000 abstract 1
- 230000006399 behavior Effects 0.000 description 18
- 238000007726 management method Methods 0.000 description 10
- 238000005457 optimization Methods 0.000 description 8
- 230000008901 benefit Effects 0.000 description 6
- 238000011156 evaluation Methods 0.000 description 6
- 210000003414 extremity Anatomy 0.000 description 6
- 230000008451 emotion Effects 0.000 description 5
- 210000003128 head Anatomy 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 238000004088 simulation Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000006073 displacement reaction Methods 0.000 description 3
- 230000005484 gravity Effects 0.000 description 3
- 230000004807 localization Effects 0.000 description 3
- 230000008447 perception Effects 0.000 description 3
- 230000003542 behavioural effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 210000005069 ears Anatomy 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 230000035939 shock Effects 0.000 description 2
- 230000005355 Hall effect Effects 0.000 description 1
- 241001465754 Metazoa Species 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000008909 emotion recognition Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 210000001061 forehead Anatomy 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- GELKBWJHTRAYNV-UHFFFAOYSA-K lithium iron phosphate Chemical compound [Li+].[Fe+2].[O-]P([O-])([O-])=O GELKBWJHTRAYNV-UHFFFAOYSA-K 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 210000003141 lower extremity Anatomy 0.000 description 1
- 238000012045 magnetic resonance elastography Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000005312 nonlinear dynamic Methods 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 230000013707 sensory perception of sound Effects 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000003945 visual behavior Effects 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J5/00—Manipulators mounted on wheels or on carriages
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1615—Programme controls characterised by special kind of manipulator, e.g. planar, scara, gantry, cantilever, space, closed chain, passive/active joints and tendon driven manipulators
- B25J9/162—Mobile manipulator, movable base with manipulator arm mounted on it
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J11/00—Manipulators not otherwise provided for
- B25J11/0005—Manipulators having means for high-level communication with users, e.g. speech generator, face recognition means
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
- B25J19/02—Sensing devices
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J5/00—Manipulators mounted on wheels or on carriages
- B25J5/007—Manipulators mounted on wheels or on carriages mounted on wheels
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/08—Control of attitude, i.e. control of roll, pitch, or yaw
- G05D1/0891—Control of attitude, i.e. control of roll, pitch, or yaw specially adapted for land vehicles
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Aviation & Aerospace Engineering (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Orthopedic Medicine & Surgery (AREA)
- Manipulator (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Toys (AREA)
Abstract
Изобретение относится к области систем программирования роботов. Человекоподобный робот содержит тело, соединенное с всенаправленным мобильным наземным основанием, датчик положения тела, датчик положения основания и датчик угловой скорости для обеспечения замеров, исполнительные механизмы, содержащие двигатели сочленений и по меньшей мере три колеса, расположенные во всенаправленном мобильном основании, средства для извлечения положения тела, положения основания и угловой скорости из воспринятых замеров, диспетчер для вычисления команд положения, скорости и ускорения из извлеченных данных, средство для преобразования команд в инструкции для исполнительных механизмов. Диспетчер содержит контроллер ненаклонного состояния, контроллер наклонного состояния и контроллер переходного состояния, средство оценки угловой скорости при ударе и времени удара при приземлении и средство для выбора контроллера согласно оцененной угловой скорости при ударе и извлеченной угловой скорости. Изобретение направлено на обеспечение способности робота к автономному определению последовательностей его функционирования, приспособленных к контексту, в котором он находится, без вмешательства программиста. 2 н. и 8 з.п. ф-лы, 6 ил.
Description
Настоящее изобретение относится к области систем программирования роботов. Более конкретно, оно применимо к управлению перемещениями роботов, которые перемещаются на сочлененных конечностях или используют их, в частности, роботов в виде человека или животного. Робот может быть квалифицирован как человекоподобный робот тогда, когда он имеет некоторые атрибуты человеческой внешности: голову, туловище, две руки, две кисти, и т.д. Человекоподобный робот может быть, однако, более или менее сложным. Его конечности могут иметь большее или меньшее количество сочленений. Он может контролировать свое собственное равновесие статически или динамически и перекатываться на основании. Он может принимать сигналы из среды («слышать», «видеть», «касаться», «воспринимать», и т.д.) и реагировать согласно более или менее сложным вариантам поведения, а также взаимодействовать с другими роботами или людьми, либо с помощью речи, либо с помощью жестов. Для текущего поколения человекоподобных роботов, программисты могут создавать сценарии, которые могут быть более или менее сложными, в виде последовательностей событий/ действий, на которые реагирует/ которые выполняет робот. Эти действия могут быть обусловлены некоторыми вариантами поведения людей, которые взаимодействуют с роботом. Однако, в этих человекоподобных роботах первого поколения, программирование приложений выполняют в наборе инструментальных средств разработки, и каждое приложение должно быть запущено запускающим событием, появление которого было включено в приложение.
Таким образом, существует потребность в человекоподобном роботе, способном функционировать при «автономном функционировании», подобно человеку, который может вести себя в определенной манере, в зависимости от среды, в которой он находится. Задачей настоящего изобретения является преодоление ограничений роботов предшествующего уровня техники посредством обеспечения робота, который способен к автономному определению последовательностей его функционирования, приспособленных к контексту, в котором он находится, без какого-либо вмешательства программиста.
Мы рассматриваем робота с мобильным основанием, соединенным с телом, также называемым верхним телом.
В стандартном варианте поведения, робот находится в контакте со всеми своими колесами и является динамически устойчивым, в то время как центр давления (Center of Pressure - CoP), который является барицентром сил между землей и роботом, находится строго внутри выпуклой оболочки, определяемой его точками контакта колес. В отсутствие возмущения, это предел CoP всегда соблюдается. Однако, при появлении возмущений, CoP может быть на границах опорной оболочки. В этом случае, робот может начать наклоняться и, если ничего не предпринять, то он может упасть. Таким образом, наша задача состоит в управлении роботом посредством двух динамических моделей: когда робот не наклоняется, и когда он наклоняется.
Когда робот не наклоняется, мы можем найти некоторые работы об управлении мобильным роботом с ограничениями динамической устойчивости, или об управлении двуногими человекоподобными роботами.
Некоторые недавние работы рассматривают управление роботом с динамическими ограничениями, обусловленными конечностями, такими как манипулятор. K. Mingeuk и другие работали над устойчивостью колесной платформы с использованием динамических ограничений: «Устойчивость быстрой четырехколесной платформы с использованием способа обеспечения устойчивости zmp» (ʺStabilization of a rapid four-wheeled mobile platform using the zmp stabilization methodʺ). Они используют прямой способ с линейно-квадратичным регулятором (linear quadratic regulator - LQR) для управления этой платформой. Неудобство этого способа состоит в том, что представленные динамические ограничения требуют наличия CoP (центра давления) в середине платформы. CoP является барицентром контактных сил между роботом и землей. Этот способ включает в себя потерю некоторой степени подвижности (Degree of Freedom - DoF): действительно, для предотвращения падения робота, CoP должен находиться только в выпуклом многоугольнике, определяемом точками контакта между колесами и землей.
В другой работе, Y. Li и другие представляют простой контроллер мобильного робота с динамическими ограничениями: «Критерий динамической устойчивости для колесного человекоподобного робота на основе моделирования zmp» (ʺThe dynamic stability criterion on the wheel-based humanoid robot based on zmp modelingʺ). Отличие от публикации K. Mingeuk и других состоит в том, что эта работа учитывает полное предел CoP, которое является суммой ограничений неравенств. Этот контроллер является pid-регулятором, итерируемым на основании полной модели робота для нахождения команды управления вращающим моментом, при которой CoP находится в опорном многоугольнике.
В отношении человекоподобных роботов, P. B. Wieber, H. Diedam и A. Herdt описали способ для управления человекоподобным двуногим роботом с сильно ограниченной динамикой: «Ходьба без ее обдумывания» (ʺWalking without thinking about itʺ). Этот наиболее современный подход относится к управлению с линейным прогнозированием на основе трехмерной линейной модели перевернутого маятника. С использованием простой модели робота, этот закон управления прогнозирует динамику его состояния в будущем, для обеспечения того, чтобы текущая команда, отправленная к роботу, не вызвала неизбежное падение через несколько секунд. В отношении двуногого человекоподобного робота NAO, реализация этого закона управления может быть найдена в работе, написанной D. Gouaillier, C. Collette и K. Kilner: «Всенаправленная ходьба с замкнутым контуром для NAO» (ʺOmni-directional closed-loop walk for NAOʺ). Но робот NAO является маленьким, и этот способ не обеспечит хороших результатов, в частности, для более высокого человекоподобного робота, показанного на фиг. 1, например, со следующими характеристиками:
- 20 степеней подвижности (DoF) (2 DoF на голове 160), 2*6 DoF на руках 170, 3 DoF на ноге 180 и 3 DoF в мобильным основании 140),
- высота 110 1.37 м,
- ширина 130 0.65 м,
- глубина 120 0.40 м,
- общая масса 30 кг,
- одна нога 180 связана с всенаправленным основанием 140 с тремя колесами 141. Мобильное основание имеет треугольную форму с длиной 0.422 м и способно перемещать робота с максимальной скоростью 1:4 м/с и ускорением 1:7 м/с2 в течение короткого времени. Номинальные скорость и ускорение составляют 0:5 м/с и 1:0 м/с2.
В отношении случая, когда робот наклоняется, мы можем связать эту задачу с управлением одноколесным или двухколесным мобильным роботом. Однако, в нашем случае, мы не хотим управлять роботом около неустойчивого направления равновесия (обычно вертикального), как в случае всех одноколесных или двухколесных мобильных роботов. Могут быть найдены многие работы об управлении такими роботами. Они основаны на разных типах управления, таких как:
- PID силовое управление, описанное в публикации J. K. Ahn и S. J. Lee, «Применение силового управления к мобильному манипулятору с механизмом сохранения равновесия» («Force control application to a mobile manipulator with balancing mechanism"), 2010,
- линейно-квадратичный регулятор, описанный в публикации X. Changkai, L. Ming, и P. Fangyu, «Конструкция системы и lqr-управление двухколесного самоуравновешивающегося мобильного робота (ʺThe system design and lqr control of a two-wheels self-balancing mobile robotʺ, 2011, или
- Управление режимом скольжения, описанное в публикации K. Sho-Tsung, C. Wan-Jung, и H. Ming-Tzu, «Уравновешивание сферического перевернутого маятника с всенаправленным мобильным роботом» (ʺBalancing of a spherical inverted pendulum with an omni-directional mobile robotʺ), многоотраслевая конференция IEEE по системам и управлению, 2013.
Все эти контроллеры имеют целью управление роботом около неустойчивого направления равновесия, в зависимости от силы тяжести и внешних сил.
В отношении человекоподобных роботов, мы можем найти некоторые работы о восстановлении после толчков. Главными концепциями является использование четырех возможностей управления:
- перемещение CoP с использованием верхних тел,
- создание вращающего момента с использованием пятки ступни,
- создание некоторых угловых моментов с использованием рук, и
- выполнение некоторых шагов.
Они не могут быть применены в нашем случае, поскольку они сильно зависят от двуножной механики, которая предполагает, что ступни не могут катиться или скользить по земле, и что они могут сделать некоторый шаг для восстановления после толчка. В нашем случае, CoP не может быть перемещен, поскольку не существует поверхности контакта в направлении наклона. Также, другой трудностью нашей задачи является необходимость учета дискретного переключателя динамической модели (присутствия или отсутствия некоторых контактных сил). Это предполагает, что может произойти некоторый удар. В общем, умение справляться с ударом является сложной задачей для управления в режиме реального времени.
Таким образом, существует необходимость в управлении как мобильным основанием человекоподобного робота, так и его телом, с учетом их динамических ограничений и того, что робот может подвергаться сильным возмущениям и может наклоняться вокруг своих колес.
Таким образом, вместо предложения уникального контроллера, который будет допустимым в разных возможных динамических состояниях, мы определяем два контроллера, один, когда робот не наклоняется, и другой, когда робот наклоняется. Для обеспечения корректного и плавного перехода между этими двумя контроллерами, определено, что третий контроллер имеет дело с фазой приземления, и определено, что диспетчер адресует их соответствующим образом.
Для этой цели, настоящее изобретение обеспечивает человекоподобного робота с телом, соединенным с всенаправленным мобильным наземным основанием, снабженного:
датчиком положения тела, датчиком положения основания и датчиком угловой скорости для обеспечения замеров,
исполнительными механизмами, содержащими двигатели сочленений и по меньшей мере 3 колеса, расположенных во всенаправленном мобильном основании,
средствами извлечения для преобразования воспринятых замеров в полезные данные,
диспетчером, для вычисления команд положения, скорости и ускорения на основании полезных данных,
средством для преобразования команд в инструкции для исполнительных механизмов.
Человекоподобный робот, главным образом, отличается тем, что диспетчер содержит:
- контроллер ненаклонного состояния, контроллер наклонного состояния и контроллер состояния приземления, причем каждый контроллер содержит средство для вычисления, на основании полезных данных, предупорядоченных ориентиров положения и скорости, и ориентиров угла наклона и угловой скорости, установленных на 0, команд положения, скорости и ускорения, на основе модели робота с двумя сосредоточенными массами с наклонным перемещением и на основе закона линейного моделируемого прогнозируемого управления с временем, дискретизируемым согласно периоду Т времени дискретизации и количеству N прогнозируемых отсчетов, выраженного в виде квадратичного оптимизирующего выражения с взвешенной суммой целевых функций, и множеством предварительно заданных линейных ограничений,
- средство оценки угловой скорости при ударе и времени удара при приземлении и
- средство для выбора контроллера согласно оцененной угловой скорости при ударе и полезной угловой скорости.
Преимущество этого робота состоит в устойчивости ко многим типам возмущений. Они могут быть короткими, длительными, быстрыми или множественными, с большим динамическим диапазоном. Мы не выдвигаем никаких гипотез о возмущениях. Кроме того, в случае очень сильных возмущений, после которых невозможно восстановиться, в роботе реализована стратегия менеджера падений, для минимизации удара тела о землю.
Более точно, преимущества этого робота состоят, во-первых, в способности к восстановлению после сильного возмущения, которое заставляет робота наклониться. Вторым преимуществом является простое управление нелинейной динамикой, с использованием дискретного изменения и удара, в режиме реального времени. Третьим преимуществом является способность определять многие варианты поведения робота посредством настройки параметров диспетчера, например, для выбора большего предела механического удара, или для ограничения пройденного расстояния во время восстановления наклона.
Согласно одному варианту осуществления настоящего изобретения, оцененную угловую скорость при ударе вычисляют посредством интегрирования константы.
Может не быть никакого наклона в модели робота; контроллер ненаклона может быть способен, например, вычислить команды положения, скорости и ускорения на основании полезных данных с использованием предупорядоченных ориентиров, с использованием следующих целевых функций:
- целевой функции положения основания,
- целевой функции скорости основания,
- целевой функции, связанной с расстоянием между CoP и центром основания, причем CoP является барицентром контактных сил между роботом и землей,
и с использованием следующих ограничений:
- максимальная скорость и ускорение мобильного основания,
- кинематические пределы тела,
- предел CoP.
Контроллер наклона может быть способен вычислить команды положения, скорости и ускорения на основании полезных данных с использованием предупорядоченных ориентиров и ориентиров угла наклона и угловой скорости, установленных на 0, и с использованием целевых функций, которыми являются минимизация угла наклона и минимизация угловой скорости, и с использованием ограничений, которыми являются кинематические пределы мобильного основания, кинематические пределы тела, положительный угол наклона и перемещение тела только по оси угловой скорости.
Взвешенная целевая функция устойчивости численного решения может быть добавлена к взвешенной сумме целевых функций.
Контроллер приземления может быть способен вычислить команды положения, скорости и ускорения на основании полезных данных с использованием предупорядоченных ориентиров и ориентиров угла наклона и угловой скорости, установленных на 0, с использованием целевых функций, которыми являются целевая функция, связанная с расстоянием между CoP и центром основания, причем CoP является барицентром контактных сил между роботом и землей, и целевая функция устойчивости численного решения, и с использованием ограничений, которыми являются максимальная скорость и ускорение мобильного основания и кинематические пределы тела и предел CoP и перемещение тела только по оси угловой скорости.
Целевая функция скорости основания может быть добавлена к взвешенной сумме этих целевых функций.
Кинематические пределы тела могут быть обнулены.
Согласно одному варианту осуществления настоящего изобретения, по меньшей мере одно колесо является всенаправленным.
Предпочтительно, земля является плоской и горизонтальной.
Настоящее изобретение также обеспечивает способ для управления человекоподобным роботом с телом, соединенным с всенаправленным мобильным наземным основанием, реализуемый в предварительно заданные моменты времени дискретизации и содержащий:
- извлечение замера положения тела, замера положения основания, угла наклона робота и замера угловой скорости робота,
- преобразование этих замеров в полезные данные,
- использование полезных данных, и, согласно состоянию робота, вычисление команд положения, скорости и ускорения с использованием закона управления на основе закона линейного моделируемого прогнозируемого управления с временем, дискретизируемым согласно периоду времени дискретизации и количеству прогнозируемых отсчетов, и выраженного в виде квадратичного оптимизирующего выражения с взвешенной суммой целевых функций с предварительно заданными весами и множеством линейных ограничений,
- преобразование этих команд в инструкции для исполнительных механизмов робота.
Состояние робота может быть определено согласно следующим этапам:
если один из замера угла наклона и/или замера угловой скорости больше, чем нуль, то следует оценить оцениваемую угловую скорость при ударе и оцениваемое время удара,
сначала, робот находится в ненаклонном состоянии,
Ненаклонное состояние:
- если не имеется оцениваемого времени удара, то следует переключиться в наклонное состояние;
- если угловая скорость при ударе является более высокой, чем предварительно заданный предел 1, то следует переключиться в наклонное состояние;
- если измеренная угловая скорость является более высокой, чем предварительно заданный предел 2, то следует переключиться в наклонное состояние;
- иначе, если угол наклона не равен нулю, то следует переключиться в состояние приземления,
- если угол наклона равен нулю, то следует оставаться в ненаклонном состоянии.
Наклонное состояние:
- если измеренная угловая скорость является более высокой, чем предварительно заданный предел 2, то следует оставаться в наклонном состоянии.
- если оцененная скорость удара является меньшей, чем предварительно заданный предел 1, то следует переключиться в состояние приземления,
- иначе, следует оставаться в наклонном состоянии.
Состояние приземления:
- если не имеется оцененного времени удара, то следует переключиться в наклонное состояние;
- если угловая скорость при ударе является более высокой, чем предварительно заданный предел 1, то следует переключиться в наклонное состояние;
- если измеренная угловая скорость является более высокой, чем предварительно заданный предел 2, то следует переключиться в наклонное состояние;
- если угол наклона падает до 0, и если угловая скорость, измеренная в следующий раз, равна 0, то следует переключиться в ненаклонное состояние, иначе, следует оставаться в состоянии приземления.
Настоящее изобретение также обеспечивает компьютерную программу, содержащую компьютерный код, подходящий, при выполнении на компьютере, для исполнения описанного способа.
Настоящее изобретение будет более понятным, и его различные признаки и преимущества проявятся из нижеследующего описания некоторого количества иллюстративных вариантов осуществления и приложенных к нему фигур, в которых:
- фиг. 1 показывает физическую архитектуру человекоподобного робота в нескольких вариантах осуществления настоящего изобретения;
- фиг. 2 показывает функциональную архитектуру программных модулей человекоподобного робота в нескольких вариантах осуществления настоящего изобретения;
- фиг. 3 показывает моделирование перераспределения масс робота, сконструированного согласно настоящему изобретению,
- фиг. 4 показывает моделирование динамики наклона робота согласно настоящему изобретению,
- фиг. 5 показывает геометрическое представление ограничения,
- фиг. 6 схематично представляет функциональную схему диспетчера.
От одной фигуры к другой фигуре, одинаковые элементы обозначены одинаковыми ссылочными позициями.
Фиг. 1 показывает физическую архитектуру человекоподобного робота в нескольких вариантах осуществления настоящего изобретения.
Конкретный робот 100 на этой фигуре используется только в качестве примера человекоподобного робота, в котором настоящее изобретение может быть реализовано. Нижняя конечность 180 робота на этой фигуре не функциональна для ходьбы, но может перемещаться в любом направлении на своем основании 140, которое может катиться по поверхности, на которой оно находится. В качестве примера, этот робот имеет высоту 110, которая может быть около 120 см, глубину 120 около 65 см и ширину 130 около 40 см. В конкретном варианте осуществления, робот настоящего изобретения имеет планшет 150, с помощью которого он может передавать сообщения (звуковые сообщения, видео, веб-страницы) в его среду, или принимать вводы данных от пользователей через тактильный интерфейс планшета. Дополнительно к процессору планшета, робот настоящего изобретения также использует процессор своей собственной системной платы, который может быть, например, процессором ATOM ™ Z530, производимым Intel™. Робот настоящего изобретения также предпочтительно включает в себя процессор, который предназначен для обработки потоков данных между системной платой и исполнительными механизмами, которые управляют двигателями сочленений в конечности и шарами, которые робот использует в качестве колес, в конкретном варианте осуществления настоящего изобретения. Двигатели могут быть разных типов, в зависимости от величины максимального крутящего момента, который необходим для определенного сочленения. Например, могут быть использованы щеточные двигатели постоянного тока без сердечника, производимые e-minebea™ (SE24P2CTCA, например), или бесщеточные двигатели постоянного тока, производимые Maxon™ (EC45_70W, например). MRE предпочтительно относятся к типу, использующему эффект Холла, с точностью 12 или 14 битов.
В вариантах осуществления настоящего изобретения, робот, показанный на фиг. 1, также содержит различные виды датчиков. Некоторые из них используются для контроля положения и перемещений робота. Это имеет место в случае, например, инерциального блока, расположенного в туловище робота, содержащего трехосный гирометр и трехосный акселерометр. Робот может также включать в себя две двумерные цветные RGB-камеры на лбу робота (верхнюю и нижнюю), относящиеся к типу система-на-кристалле (System On Chip - SOC), такие как камеры, производимые Shenzen V-Vision Technology Ltd™ (OV5640), с разрешением 5 мегапикселов при 5 кадрах в секунду и полем зрения (field of view - FOV), составляющим около 57° по горизонтали и 44° по вертикали. Один трехмерный датчик может также находиться позади глаз робота, например, датчик ASUS XTION™ SOC с разрешением 0.3 мегапиксела при 20 кадрах в секунду, приблизительно, с таким же FOV, что и у двумерных камер. Робот настоящего изобретения может быть также снабжен генераторами лазерных линий, например, тремя в голове и тремя в основании для обеспечения возможности восприятия его относительного положения по отношению к объектам /существам в его среде. Робот настоящего изобретения может также включать в себя микрофоны для обеспечения возможности восприятия звуков в его среде. В одном варианте осуществления, четыре микрофона с чувствительностью 300мВ/Па +/-3дБ при 1кГц и полосой частот от 300Гц to 12кГц (по уровню -10дБ относительно 1кГц) могут быть имплантированы на голове робота. Робот настоящего изобретения может также включать в себя два ультразвуковых датчика, возможно, расположенных на передней части и на задней части его основания, для измерения расстояния до объектов/ людей в его среде. Робот может также включать в себя тактильные датчики, на его голове и на его кистях, для обеспечения возможности взаимодействия с людьми.
Для передачи его эмоций и установления связи с людьми в его среде, робот настоящего изобретения может также включать в себя:
- светодиоды, например, в его глазах, ушах и на его плечах;
- громкоговорители, например, два, расположенные в его ушах.
Робот настоящего изобретения может устанавливать связь с базовой станцией или другими роботами через соединение Ethernet RJ45 или WiFi 802.11.
Робот настоящего изобретения может иметь электропитание от литий-железо-фосфатной аккумуляторной батареи с энергий около 400 Вт-час. Робот может осуществлять доступ к зарядной станции, соответствующей типу аккумуляторной батареи, которую он включает в себя.
Положением/ перемещениями робота можно управлять посредством его двигателей, с использованием алгоритмов, которые активируют цепи, находящиеся в каждой конечности, и рабочие органы, находящие на конце каждой конечности, с учетом измерений датчиков.
Фиг. 2 показывает функциональную архитектуру программных модулей человекоподобного робота в нескольких вариантах осуществления настоящего изобретения.
Целью настоящего изобретения является обеспечение способа для обеспечения человекоподобному роботу возможности выполнения видов деятельности автономно, без какого-либо вмешательства программиста, для предвидения условий, которые ожидают робота. В предшествующем уровне техники, робот способен исполнять сценарии, которые были запрограммированы и загружены в его системную плату. Эти сценарии могут включать в себя реакции на условия, которые изменяются в его среде, но робот не будет способен реагировать на условия, которые не были предсказаны и включены в код, загруженный в его системную плату или доступный дистанционно. Напротив, целью настоящего изобретения является обеспечение роботу возможности осуществления автономного поведения, даже ввиду событий/ условий, которые не были предсказаны программистом. Эта цель достигнута посредством функциональной архитектуры, которая показана на фиг. 2.
Эта функциональная архитектура содержит, по существу, четыре основных программных модуля.
Модуль 210 Услуг включает в себя услуги по меньшей мере трех типов:
- Услуги 211 Средств Извлечения, которые принимаются в качестве входных показаний от датчиков робота того типа, который описан в связи с фиг. 1; эти показания датчиков предварительно обрабатывают для извлечения уместных данных (также упомянутых как полезные данные) в отношении положения робота, идентификации объектов/ людей в его среде, расстояния до упомянутых объектов/ людей, слов, произнесенных людьми, или их эмоций; примером Услуг Средств Извлечения являются: Восприятие Людей, для восприятия присутствия людей вблизи робота, Детектирование Перемещения, для детектирования перемещений этих людей, Локализация Звука, для локализации звука, Детектирование Касаний, для интерпретирования касания на тактильном датчике робота, Распознавание Речи, Распознавание Эмоций, для идентификации эмоции, выражаемой человеком вблизи робота посредством его слов или жестов;
- Услуги 212 Исполнительных Механизмов, которые управляют физическими действиями робота, такие как Перемещение, для активизации двигателей сочленений или основания, Средство Отслеживания, для следования за перемещением человека в среде робота, включение светодиодов робота, для передачи эмоций, Динамическая Речь (комбинации речи и жестов), Варианты Поведения; варианты поведения являются комбинацией перемещений, слов, включений освещения, которая может выражать эмоции робота и обеспечивать ему возможность выполнения сложных действий;
- Системные Услуги 213, которые, в частности, включают в себя Информационные Услуги; Информационные Услуги обеспечивают запоминание данных, либо временное, либо долгосрочное; примерами Информационных Услуг являются:
○ Услуга Пользовательского Сеанса, которая запоминает пользовательские данные, и их историю в отношении того, что они делали с роботом;
○ Услуга Менеджера Пакетов, которая обеспечивает масштабируемое хранилище процедур, исполняемых роботом, с их высокоуровневым определением, условиями запуска и тегами.
Модуль 220 Видов Деятельности включает в себя варианты 221 поведения робота, которые были предварительно запрограммированы. Программирование Вариантов Поведения может быть осуществлено с использованием графической интегрированной среды разработки (Choregaphe™), которая является объектом европейской заявки на патент, опубликованной под номером EP2435216, которая закреплена за заявителем настоящей заявки на патент. Варианты Поведения, программируемые с использованием Choregaphe™, объединяют логику на основе времени и логику на основе событий. Каждый Вариант Поведения тегируют с использованием Декларации 222, которая является текстовым файлом, который включает в себя, в частности, условия запуска Варианта Поведения.
Модуль 230 Интеллекта отвечает за выбор одного или нескольких Видов Деятельности для запуска. Для выполнения этого, Интеллект подписывается на Средства Извлечения и оценивает условия запуска всех установленных Видов Деятельности. Переменные этих условий основаны на событиях. Таким образом, для эффективности, должны повторно оцениваться только утверждения условий, которые содержат измененные переменные. На основе результатов алгоритма сортировки, его приоритетов, и жизненного цикла (см. ниже), Виды Деятельности могут быть запущены, и некоторые Виды Деятельности могут быть прекращены.
Исполняемый Вид Деятельности будет основан на API (сокращение от французского выражения «Application Pour Interface» («Интерфейс потока приложений»)) вызовах Услуг для выполнения задачи, которую он запрограммирован выполнить. Всегда, когда Вид Деятельности запущен на сцене или прекращен, Интеллект собирает данные о том, когда это случилось, о текущем состоянии условий, и о том, каким является, как представляется, отклик пользователя, для облегчения обучения.
Если существующее событие Средства Извлечения не является достаточным для условий, то разработчики могут создать дополнительное Средство Извлечения для генерации нового события, и распространить его в пакете с их приложением.
Для выполнения этого, модуль 230 Интеллекта связывает вместе модули Услуг и Видов Деятельности посредством управления выбором Видов Деятельности, и запуска Исполнительных Механизмов на основе показаний Средств Извлечения или на основе алгоритмов, выполняемых в Средствах Выбора, вызванных Интеллектом. Примерами Средств Выбора являются:
- Автономное Функционирование 231, которое исполняет Виды Деятельности; на основе контекста ситуации, Интеллект может указать Автономному Функционированию, на каком виде деятельности следует сфокусироваться (см. примеры ниже); любой Вид Деятельности имеет полный доступ ко всем процедурам вызова модуля API; Виды Деятельности могут включать в себя ограничение, которое будет направлять Автономное Функционирование на фокусировку на определенном Виде Деятельности;
- Базовая Информированность 232, которая подписывается на Услуги Средств Извлечения, такие как Восприятие Людей, Детектирование Перемещения, и Локализация Звука, чтобы указать Услуге Перемещения на то, что следует выполнить перемещение; Интеллект конфигурирует вариант поведения Базовой Информированности на основе ситуации; в другие моменты времени, Базовая Информированность либо действует сама по себе, либо конфигурируется выполняемым Видом Деятельности;
- Диалог 233, который подписывается на Средство Извлечения Распознавания Речи и использует Услугу Исполнительного Механизма Динамической Речи для говорения; на основе контекста ситуации, Интеллект может указать Диалогу, на каких темах следует сфокусироваться; метаданные в декларациях связывают эту информацию в интеллекте; Диалог также имеет свои алгоритмы для управления разговором и обычно действует сам по себе.
Механизм 240 Исполнения запускает API-вызовы для инициирования Услуг.
Целью настоящего изобретения является, более конкретно, управление всенаправленным колесным человекоподобным роботом, который может подвергаться сильным возмущениям и может наклоняться вокруг своих колес. Этот способ основан на двух линейных моделируемых прогнозируемых контроллерах, в зависимости от динамической модели робота, и на третьем контроллере, для обеспечения корректного и плавного перехода между первыми двумя контроллерами. Средство оценки выполнено с возможностью детектирования того, когда робот входит в динамику наклона, или когда он возвращается к своей номинальной устойчивой динамике.
Используются:
- предупорядоченные ориентиры положения и скорости, и ориентиры угла наклона и угловой скорости, установленные на 0,
- данные о положении тела, положении основания и угловой скорости, извлеченные из воспринятых замеров, и называемые полезными данными,
каждый контроллер вычисляет команды положения, скорости и ускорения на основе:
- модели робота с двумя сосредоточенными массами с наклонным перемещением, показанной на фиг. 3 и 4. Первая сосредоточенная масса b представляет центр масс (Center of Mass - CoM) мобильного основания, а вторая сосредоточенная масса с представляет CoM верхнего тела; сочленение между мобильным основанием 140 и телом (или верхним телом) 190, как предполагается, не имеет никакой массы. Когда робот не наклоняется, CoM верхнего тела и CoM мобильного основания являются cc и bc. Углом наклона является ψ; h является высотой cc. Эту модель запоминают в качестве системной информационной услуги 213.
- закона линейного моделируемого прогнозируемого управления с временем, дискретизируемым согласно периоду Т времени дискретизации и количеству N прогнозируемых отсчетов, выраженного в виде квадратичного оптимизирующего выражения с взвешенной суммой целевых функций, и множеством предварительно заданных линейных ограничений. Для определения динамического варианта поведения управляемого тела и основания (c и b), мы должны выбрать, сначала, длительность прогнозирования (горизонт) и период времени между моментами дискретизации. Выбор горизонта как можно меньшим, а периода времени как можно большим, уменьшит время вычислений, но, также, уменьшит устойчивость и робастность управления, в зависимости от класса динамики. Для сохранения линейности системы, мы выбрали класс многочленов 3-го порядка для траекторий тела и основания, чтобы иметь непрерывную траекторию CoP, для предотвращения максимума сил в роботе. Также, в этом контроллере, время дискретизируют, с периодом Т времени дискретизации. Количество прогнозируемых отсчетов равно N. Другое преимущество этого типа управления состоит в том, что легко управлять многими ограничениями неравенств, такими как кинематические пределы робота, пределами максимальной скорости и ускорения мобильного основания и CoP. Этот закон управления запоминают в качестве системной информационной услуги 213, которая обеспечивает API Перемещений.
Вычисление команд положения, скорости и ускорения обеспечивает управление углом наклона и угловой скоростью робота.
Первый контроллер предназначен для ситуации, когда робот не наклоняется: тогда угол наклона равен нулю.
Для обеспечения управления в режиме реального времени, модель робота должна быть как можно более простой. Мы должны вычислить хорошее приближенное представление сил, действующих со стороны основания на землю. Перераспределение масс в роботе не может быть выполнено с использованием модели с единственной сосредоточенной массой, поскольку около половины массы сосредоточено в основании, а остальное в верхнем теле.
Мы можем теперь записать уравнения Ньютона и Эйлера для этой системы, причем ось z является вертикальной осью, а x и y являются двумя горизонтальными осями:
где mc и mb являются массами, соответственно, связанными с c и b, и являются угловыми моментами для каждой сосредоточенной массы. соответствует силам, действующим со стороны мобильного основания на верхнее тело, а соответствует силам, действующим со стороны земли на три колеса мобильного основания.
Также, p является CoP сил , который является их барицентром. Вследствие этого определения, p определена только в выпуклом многоугольнике, представленным контактными точками трех колес.
В этой модели, мы прямо рассматриваем моменты между c и b (3)(4). Это предполагает, что мы пренебрегаем моментом, индуцированным руками. Мы можем это делать, поскольку в наших случаях функционирования они не перемещаются быстро. Объединяя уравнения (1)(2)(3)(4), мы можем записать уравнение динамики системы:
Мы можем отметить в отношении уравнения (5), что уравнение динамики модели с двумя массами является просто суммой двух простых уравнений.
Теперь, для линеаризации уравнения (5), мы сформулируем некоторые гипотезы. Во-первых, мы можем пренебречь общим угловым моментом , поскольку мы выбрали рассмотрение только момента между c и b. Во-вторых, поскольку мы имеем робота с избыточностью, мы можем перемещать CoM с по осям x и y без модификации его положения на оси z. Таким образом, мы рассматриваем , ограниченное постоянным значением h; эта гипотеза является важной для получения линейной модели, но робот может, все же, перекатываться на своем основании без этой гипотезы. Кроме того, для упрощения описания, мы предпочтительно рассматриваем плоскую и горизонтальную землю, так что pz=0. Не существует DoF для управления положением , так что мы можем установить ее равной константе l. Наконец, мы можем отметить правило для силы тяжести, состоящее в том, что gx=gy=0 и gz=g.
С использованием этих гипотез и замечаний, мы можем переписать уравнение (5) в следующем виде:
Мы можем теперь использовать уравнение (6) для обеспечения линейного соотношения между CoP и положениями и ускорениями основания и тела:
Мы можем отметить, что эта модель не учитывает никакой возможности наклона. Таким образом, для обеспечения достоверности этой модели, к контроллеру должно быть добавлено ограничение на CoP для обеспечения того, чтобы CoP находился строго внутри выпуклого многоугольника, определяемого тремя колесами робота: должен быть определен критерий робастности. Мы предполагаем, что является выпуклым многоугольником, представленным точкой контакта каждого колеса с землей; пример многоугольника показан на фиг. 5. По определению, мы всегда имеем . Для обеспечения инвариантности ограничения CoP к повороту, в рамке робота с центром в b, мы разработали консервативное ограничение: , где является окружностью радиуса r с центром b, со свойством .
Количественная оценка робастности этой системы является открытым вопросом. В отсутствие какого-либо моделирования сил возмущения, мы не можем выдвинуть никакой гипотезы об их направлении, амплитуде и динамике. Способность робота компенсировать возмущение может быть связана с положениями CoP и CoM с. Поскольку они могут перемещаться, робот может реагировать на сильное возмущение. Мы можем отметить, что в отсутствие каких-либо гипотез о возмущении, положения CoP и CoM с имеют наибольший диапазон для перемещения в любом направлении, если они являются близкими к b. Таким образом, мы предлагаем критерий робастности, который равен 0 при максимальной робастности:
где является коэффициентом в диапазоне [0; 1], который определяет, какой тип робастности мы считаем наиболее важным, центрирование CoP, или центрирование CoM c.
Эта модель робота, как определено, адресуется к случаю, когда робот не наклоняется, так что мы можем обратиться к соответствующему закону управления.
Мы можем записать соотношение между каждыми состояниями, с использованием явного метода Эйлера:
Существует важная последовательность в выборе периода Т времени дискретизации. Траектория может выйти за пределы ограничений между двумя отсчетами, поскольку мы ограничиваем траекторию только в каждый момент времени дискретизации. Из-за режима реального времени, мы не можем выбирать значение Т слишком малым. Таким образом, необходимо учитывать этот выход за пределы в каждом ограничении в виде границы безопасности.
Предположим, что и подобным образом представим производные c и b и p. Также, предположим, что начальное состояние и подобным образом представим .
С использованием уравнений (9)(10)(11), мы можем записать соотношение между каждой производной траектории тела и командой :
где:
Такой же способ используется для определения динамики b. Мы можем отметить, что , и являются обратимыми, поскольку они являются квадратными нижними треугольными матрицами с ненулевыми элементами на диагонали.
В отношении p, с использованием уравнения (6), мы можем записать это соотношение в виде:
где:
Среди разных способов, которые могут быть использованы для решения задачи определения такого закона управления, обеспечивающего эти условия положений, робастности и динамического поведения, мы выбрали способ в виде задачи оптимизации. Для решения этой задачи оптимизации мы выбрали ее формулировку в виде по меньшей мере квадратичной минимизации с линейными ограничениями или в виде квадратичной оптимизации с целевыми функциями и линейными ограничениями. Главная причина этого состоит в том, что для этого вида задачи можно быстро вычислить средства для ее решения. Добавление нелинейных ограничений или неквадратичных целевых функций минимизации существенно увеличивает время вычисления.
Переменные оптимизации соответствуют управляемому телу и основанию . Таким образом, каждая целевая функция и ограничение должны быть выражены в виде функции от X.
1) Целевые функции управления:
Целевые функции Oi будут выражены в виде по меньшей мере квадратичной минимизации и выражения QP (квадратичной задачи): .
Xt является X при транспонировании.
Первой целевой функцией является управление отслеживанием. В этом управлении, мы выбрали выполнение отслеживания положения/ скорости. Пусть и являются целевыми функциями положения и скорости в пределах горизонта. С использованием (13), мы можем записать целевую функцию О1 управления скоростью:
С использованием (12), мы можем записать целевую функцию О2 управления положением:
Следующей целевой функцией является максимизация робастности. Посредством минимизации ζ мы максимизируем робастность. Пусть Upbb=Upb - Ub. С использованием (8), (12), (16) мы можем записать целевую функцию О3 управления робастностью:
Предпочтительно, мы определяем другую целевую функцию для предотвращения максимума резкого движения робота; таким образом, мы добавляем целевую функцию О4 минимизации резкого движения в управление:
В отношении этой предложенной целевой функции, мы можем отметить, что когда робот падает, траектории c и b растут экспоненциально. Таким образом, посредством минимизации резкого движения этих траекторий, мы прямо содействуем предотвращению экспоненциального расхождения c и b, что способствует устойчивости робота.
2) Ограничения управления:
Первое ограничение R1 предназначено для обеспечения устойчивости, для обеспечения того, чтобы робот не наклонялся сам по себе: ζ должна быть меньшей или равной 1. Это ограничение является нелинейным, поэтому мы вводим консервативное множество линейных ограничений для аппроксимации этого. Мы выбираем использование восьмиугольной формы ограничений , вписанной в окружность , как показано на фиг. 4: это определяет ограничение предела CoP. Пусть . Это ограничение R1, которое относится к границам CoP, можно записать следующим образом:
Второе ограничение R2 относится к кинематическим пределам мобильного основания. Пусть и являются максимальной скоростью и ускорением мобильного основания. Мы можем записать ограничение R2 следующим образом:
Третье и последнее ограничение R3 относится к кинематическим пределам тела. Благодаря своим сочленениям, робот может перемещать CoM своего верхнего тела в прямоугольной зоне вокруг CoM мобильного основания. Пусть kxy являются пределами прямоугольной формы , тогда ограничение R3 можно записать следующим образом:
Кинематические пределы тела могут быть нулевыми. Тогда мы имеем:
cxy=bxy.
Для решения этой задачи оптимизации с этими целевыми функциями и ограничениями, мы используем линейное средство решения квадратичной задачи. Некоторые работы о решении QP могут быть найдены в книге «Численная оптимизация, вторая редакция» (ʺNumerical optimization, second editionʺ), J. Nocedal и S.J. Wright, 2000. Этот вид средства решения находит оптимальное решение задачи следующим образом:
где Q является симметричным и положительно определенным. С использованием уравнений (19), (21), (25), (27), (29), (31), (33), мы можем получить значения Q, p, V, v- и v+:
Q= α1Q1+ α2Q2+ α3Q3+α4Q4+α5Q5 (35)
p= α1p1+ α2p2+ α3p3+α4p4+α5p5 (36)
где αi являются весами, связанными с каждой целевой функцией. Они могут быть выбраны экспериментально.
Выбор значений αi является первичным для определения поведения закона управления. Относительные разницы между каждыми αi определяют, какая целевая функция будет назначена в качестве приоритета, а какой можно пренебречь. Если α1 и α2 являются большими, чем другие веса, то отслеживание траектории будет очень эффективным, но робастность будет менее эффективной, и резкие движения тела и основания могут быть значительными. Если α3 является большим, чем другие веса, то робот будет очень робастным к сильным возмущениям. Мы можем отметить, что в этом режиме поведения, если мы определяем положительную скорость как целевую функцию отслеживания, то робот начнет перемещаться назад перед перемещением вперед, для центрирования CoP. Вес α4 оказывает сглаживающее действие на траектории c и b, если этот вес является большим, чем другие, то оптимальным решением будет не перемещаться. Таким образом, этот вес должен быть малым.
Некоторые другие варианты поведения могут быть получены посредством выбора адекватных весов. Если относительная разница между двумя целевыми функциями является большой (несколько порядков величины), то меньшая целевая функция будет вычислена почти в нулевом пространстве большей целевой функции. Использование этого свойства является полезным, когда мы хотим иметь псевдо-ограничение, которое может быть уменьшено, если оно не может быть выполнено. Например, мы можем добавить целевую функцию с большим весом, CoM верхнего тела, для центрирования его относительно положения мобильного основания, для обеспечения прекрасного визуального поведения. Это будет иметь результатом фиксацию CoM в положении мобильного основания всегда, когда это возможно, но, в случае, когда это невозможно, это псевдо-ограничение будет уменьшено.
Множество весов может быть фиксированным, что означает, что мы выбрали заранее, хотим мы иметь лучшее отслеживание траектории или робастность.
Со ссылкой на фиг. 2, модель робота и закон управления запоминают в виде варианта 221 поведения; их реализуют посредством механизма 240 исполнения и посредством модуля 210 услуг согласно схеме с замкнутым контуром, содержащей следующие этапы:
- извлечение замера положения тела и замера положения основания, из датчиков,
- преобразование этих замеров положений в наблюдаемые замеры положений, с использованием средств 211 извлечения,
- вычисление в системной услуге 213 команд скорости тела и скорости основания, с использованием описанного выше закона управления,
- интегрирование этих скоростей тела и основания, для обеспечения их для средств 211 извлечения,
- преобразование этих команд (положения и скорости для тела и для основания) в инструкции для исполнительных механизмов 212 робота: колес основания и сочленений робота.
Второй контроллер предназначен для ситуации, когда робот наклоняется. Если робот собирается наклониться, например, вследствие возмущения, модель, определенная в предыдущей секции, является недостаточной. Мы должны учесть наклонное перемещение в этой модели, как показано на фиг. 4: угол ψ наклона не равен 0. Сначала, мы предположим, что робот может наклониться только на двух своих колесах. Мы не рассматривает наклон вокруг только одного колеса, поскольку робот освобождает слишком много DoF для правильного управления в этом случае.
Когда робот наклоняется, CoP может изменяться только по линии между двумя контактными колесами. Для минимизации вероятности наклона на одном колесе, CoP ограничивают таким образом, чтобы он находился посередине между двумя контактными колесами. Кроме того, механическая структура робота выполнена с возможностью уменьшения риска наклона на одном колесе. Во время наклонного перемещения, робот освобождает одну DoF, обеспечиваемую колесом, находящимся в воздухе. В результате, робот становится неголономным. Некоторые ограничения в контроллере должны быть добавлены для обработки этого.
Предположим, что является единичным вектором на плоскости xy, и он перпендикулярен оси наклона. p может перемещаться только по оси, определяемой vψ. Также, пусть ψ является углом наклона. Благодаря земле, мы имеем ψ ≥ 0. Мы можем разделить c (и, соответственно, b) на два компонента: управляемую часть cc (и, соответственно, bc), посредством двигателей робота, и другую часть, зависящую от угла наклона, посредством следующих кинематических соотношений:
Для упрощения этих соотношений, мы делаем два предположения:
- dc может считаться константой, поскольку перемещение относительно ψ является пренебрежимо малым во время переходного наклонного перемещения;
- как обычно, мы пренебрегаем эффектами Кориолиса по сравнению с центробежными эффектами: . Таким образом, эти уравнения могут быть переписаны следующим образом:
Наконец, мы линеаризуем эти уравнения около ψ=0, учитывая то, что угол наклона будет оставаться близким к 0. Также, мы можем предположить, что h >> dc sin(ψ), когда ψ≃0. Уравнения принимают вид:
и таким же образом эти уравнения могут быть записаны для b, если заменить dc на db и h на l. Теперь, с использованием (7)(50)(52)(53)(55), мы можем переписать уравнение динамики следующим образом:
Мы отмечаем, что когда угловая скорость является нулевой (что означает, что робот находится в ненаклонном состоянии), мы получаем уравнение (7) моделирования робота, описанное в отношении контроллера ненаклона.
Мы выбрали ограничение положения p посередине между двумя контактными колесами. Таким образом, p полностью определено следующим соотношением:
p=bc+vψ dc (57)
С использованием (56)(57), мы можем теперь выразить связь между ψ и его производной с другими переменными:
Эту модель робота с определенным наклоном мы можем адресовать к соответствующему закону управления.
Мы используем тот же формальный подход, что и в предыдущей секции. Таким образом, мы можем определить траектории ψ:
где
С использованием этих соотношений и уравнения (58), мы имеем:
Мы можем отметить, что мы имеем прямое линейное соотношение между с использованием уравнений (59) (61):
Таким образом, в синтетической форме:
Это соотношение достоверно, только если матрица:
и являются двумя нижними треугольными матрицами с постоянной диагональю со значением , и Т является периодом времени дискретизации. Таким образом, обратимость достоверна, только если:
Решив эту систему, мы имеем условие на Т для обеспечения обратимости этой матрицы (мы предполагаем, что T > 0):
Для робота согласно настоящему изобретению с характеристиками, описанными в преамбуле, связанной с фиг. 1, мы имеем T ≠ 220 мс.
Для решения этой задачи мы используем тот же формальный подход, что и в предыдущей секции (робот не наклоняется). Переменные оптимизации остаются теми же, поскольку несмотря на добавление новой переменной Ψ, мы ограничили CoP p нахождением в одной точке. Таким образом, количество переменных для решения этой задачи не изменяется:
1) Целевые функции управления:
Первой целевой функцией является минимизация нормы ψ, для восстановления наклона. Мы можем выразить соотношение между Ψ и X следующим образом:
где:
Теперь, мы можем записать эту целевую функцию О1:
Второй целевой функцией является минимизация скорости наклона. Для приземления с наименьшей угловой скоростью, для предотвращения отскоков, насколько это возможно, и для минимизации механических ударов, важно минимизировать угловую скорость во время наклона. Мы можем выразить соотношение между и X следующим образом:
Теперь мы можем записать эту целевую функцию O2:
Третья целевая функция предназначена для устойчивости численного решения, подобно случаю без наклона:
2) Ограничения управления:
Первое ограничение относится к кинематическим пределам мобильного основания. Пусть и являются максимальной скоростью и ускорением мобильного основания, тогда мы можем записать ограничение R2 следующим образом:
Второе ограничение относится к кинематическим пределам верхнего тела. Благодаря своим сочленениям, робот может перемещать CoM своего верхнего тела в прямоугольной зоне вокруг CoM мобильного основания. Пусть kxy являются пределами прямоугольной формы , тогда ограничение R2 можно записать следующим образом:
Третье ограничение соответствует присутствию земли, что предполагает, что угол наклона всегда является положительным:
Последнее ограничение означает учет потери DoF мобильного основания. Перемещать b можно только по оси . Ограничение R4 можно записать следующим образом:
Третий контроллер предназначен для фазы приземления. Он является таким же, как первый контроллер (ненаклонное состояние), но без двух целевых функций управления отслеживанием и с наличием ограничения R4 контроллера наклона. Более точно, целевыми функциями являются:
- целевая функция, связанная с расстоянием между CoP и центром основания, причем CoP является барицентром контактных сил между роботом и землей, и
- целевая функция устойчивости численного решения.
Целевая функция скорости основания может быть добавлена к этим целевым функциям.
Ограничениями являются:
- максимальная скорость и ускорение мобильного основания,
- кинематические пределы тела,
- предел CoP,
- перемещение тела только по оси угловой скорости.
В жизненном цикле робота, мы должны выбрать, какой контроллер (показано на фиг. 6) следует использовать:
- первый контроллер 501 для управления роботом, когда он не наклоняется.
- второй контроллер 502, используемый, когда робот наклоняется, для восстановления после возмущения.
- третий контроллер 503, используемый, когда робот находится в фазе приземления.
Согласно этим контроллерам, мы определяем три состояния для робота:
- ненаклонное состояние, когда первый контроллер 501 активирован.
- наклонное состояние, когда второй контроллер 502 активирован.
- состояние приземления, когда третий контроллер 503 активирован.
Мы разработали средство 504 оценки для прогнозирования будущего поведения робота, когда он наклоняется, посредством оценки времени удара при приземлении и угловой скорости при ударе, как описано дополнительно.
Как показано на фиг. 4, в каждый момент времени дискретизации диспетчер 500 выбирает одно из этих трех состояний согласно следующим этапам.
Сначала, робот находится в ненаклонном состоянии.
В каждый момент времени дискретизации мы измеряем угол наклона и скорость наклона: если один из них является большим, чем 0, то мы используем средство оценки для оценивания угловой скорости при ударе и времени удара.
А) Когда робот находится в ненаклонном состоянии.
- если не имеется оцененного времени удара (неустойчивое перемещение), то следует переключиться в наклонное состояние, поскольку робот не сможет восстановиться, не выполнив никаких действий.
- если угловая скорость при ударе является слишком высокой для безопасности робота (=угловая скорость при ударе является более высокой, чем предварительно заданный предел 1), то следует переключиться в наклонное состояние, для уменьшения угловой скорости при ударе.
- если измеренная угловая скорость является слишком высокой (=измеренная угловая скорость является более высокой, чем предварительно заданный предел 2), то, независимо от оцененной скорости удара, следует переключиться в наклонное состояние. Это условие предназначено для обеспечения меньшей задержки для компенсации сильного толчка. Мы предполагаем, что если измерена высокая угловая скорость, то это является следствием того, что кто-то толкает робота для его опрокидывания.
- иначе, нет необходимости в восстановлении угла, но если угол наклона не равен нулю, то следует переключиться в состояние приземления, поскольку робот потерял одну DoF из-за колеса, находящегося в воздухе.
- иначе, если угол наклона равен нулю, то следует оставаться в этом состоянии.
В) Когда робот находится в наклонном состоянии.
В этом состоянии, второй контроллер активирован для минимизации угла наклона и угловой скорости наклона робота. В этой модели, мы не моделируем землю, которая добавит некоторую силу для компенсации наклонного перемещения при ударе. Управление углом при 0 обеспечивает ускорение робота при слишком высокой скорости, для компенсации силы тяжести, действующей на робота при этом угле. Таким образом, нам не нужно ожидать до тех пор, пока наклон не завершится, для прекращения использования этого контроллера.
- если измеренная угловая скорость является слишком высокой (=измеренная угловая скорость является более высокой, чем предварительно заданный предел 2), то, независимо от оцененной скорости удара, следует оставаться в этом состоянии;
- если оцененная скорость удара является меньшей, чем этот предел, то следует переключиться в состояние приземления;
- иначе, следует оставаться в этом состоянии.
С) Когда робот находится в состоянии приземления.
Это состояние управляет плавным переходом между наклонным состоянием и ненаклонным состоянием, во-первых, для предотвращения высокого ускорения основания вследствие немоделируемой земли в контроллере наклона, и, во-вторых, для разрешения колесу, находящемуся в воздухе, упасть, а роботу восстановить потерянную DoF, перед повторной активизацией ненаклонного состояния.
- если не имеется оцененного времени удара, или если угловая скорость при ударе является слишком высокой, или если измеренная угловая скорость является слишком высокой, то следует переключиться в наклонное состояние;
- если угол наклона падает до 0, следует ожидать некоторое время в случае появления отскока, затем, при отсутствии отскоков, следует переключиться в ненаклонное состояние;
- иначе, следует оставаться в этом состоянии.
Теперь мы опишем средство оценки. Мы разработали средство оценки, чтобы знать, упадет робот или нет, и если нет, то какой будет угловая скорость при ударе. С использованием текущего измеренного угла наклона и угловой скорости , мы предполагаем, что мы имеем постоянное ускорение . Когда угол ψ наклона равен 0, угол между CoM мобильного основания и контактной точкой наклона составляет . Это предположение означает, что мобильное основание прекратит ускоряться. Поскольку это средство оценки используется, чтобы знать, можем ли мы использовать режим приземления (который управляет ускорением мобильного основания до 0), предположение постоянного углового ускорения является достоверным. Мы можем решить соответствующую квадратичную систему, для нахождения времени ti контакта и, если оно существует, то можно вычислить угловую скорость в этот момент:
Если , то мы имеем отсутствие удара. Мы можем отметить, что это может произойти, только если . Иначе, время ti удара может быть вычислено следующим образом:
Очевидно, мы выбираем решение, где ti > 0. Таким образом, оцененная скорость удара может быть вычислена следующим образом:
Средство оценки и диспетчер могут быть также запомнены в виде системной информационной услуги 213.
Claims (48)
1. Человекоподобный робот (100), содержащий:
тело (190), соединенное с всенаправленным мобильным наземным основанием (140), причем робот снабжен:
- датчиком положения тела, датчиком положения основания и датчиком угловой скорости для обеспечения замеров,
- исполнительными механизмами (212), содержащими двигатели сочленений и по меньшей мере три колеса, расположенные во всенаправленном мобильном основании, с по меньшей мере одним всенаправленным колесом,
- средствами (211) извлечения для извлечения положения тела, положения основания и угловой скорости из воспринятых замеров,
- диспетчером (500) для вычисления команд положения, скорости и ускорения из извлеченных данных,
- средством для преобразования команд в инструкции для исполнительных механизмов,
отличающийся тем, что диспетчер (500) содержит:
- контроллер (501) ненаклонного состояния, контроллер (502) наклонного состояния и контроллер (503) переходного состояния, причем каждый контроллер содержит средство для вычисления, из извлеченных данных, предупорядоченных ориентиров положения и скорости, и ориентиров угла наклона и угловой скорости, установленных на 0, команд положения, скорости и ускорения на основе модели робота с двумя сосредоточенными массами и на основе закона линейного моделируемого прогнозируемого управления с временем, дискретизируемым согласно периоду Т времени дискретизации и количеству N прогнозируемых отсчетов, выраженного в виде квадратичного оптимизирующего выражения с взвешенной суммой целевых функций, и множеством предварительно заданных линейных ограничений,
- средство (504) оценки угловой скорости при ударе и времени удара при приземлении и
- средство для выбора контроллера согласно оцененной угловой скорости при ударе и извлеченной угловой скорости.
2. Человекоподобный робот по п. 1, отличающийся тем, что угловая скорость при ударе и время удара при приземлении оценивается с предположением, что основание имеет постоянное угловое ускорение для текущего угла наклона, не равного 0.
3. Человекоподобный робот по п. 1 или 2, отличающийся тем, что контроллер ненаклонного состояния основан на ненаклонной модели робота и выполнен с возможностью вычисления команд положения, скорости и ускорения из извлеченных данных с использованием предупорядоченных ориентиров, при этом целевыми функциями являются:
- целевая функция положения основания,
- целевая функция скорости основания,
- целевая функция, связанная с расстоянием между центром давления и центром основания, причем центр давления является барицентром контактных сил между роботом и землей,
и ограничениями являются:
- максимальная скорость и ускорение мобильного основания,
- предел центра давления.
4. Человекоподобный робот по п. 1 или 2, отличающийся тем, что контроллер наклона основан на модели робота с наклонным перемещением и выполнен с возможностью вычисления команд положения, скорости и ускорения из извлеченных данных с использованием предупорядоченных ориентиров и ориентиров угла наклона и угловой скорости, установленных на 0, при этом целевыми функциями являются минимизация угла наклона и минимизация угловой скорости, и ограничениями являются кинематические пределы мобильного основания, кинематические пределы тела, положительный угол наклона и перемещение тела только по оси угловой скорости.
5. Человекоподобный робот по п. 3, отличающийся тем, что взвешенная целевая функция устойчивости численного решения добавлена к взвешенной сумме целевых функций.
6. Человекоподобный робот по пп. 1, 2 или 5, отличающийся тем, что контроллер переходного состояния основан на ненаклонной модели робота и выполнен с возможностью вычисления команд положения, скорости и ускорения из извлеченных данных с использованием предупорядоченных ориентиров и ориентиров угла наклона и угловой скорости, установленных на 0, при этом целевыми функциями являются целевая функция, связанная с расстоянием между центром давления и центром основания, причем центр давления является барицентром контактных сил между роботом и землей, и целевая функция устойчивости численного решения, ограничениями являются максимальная скорость и ускорение мобильного основания и кинематические пределы тела и предел центра давления, а также перемещение тела только по оси угловой скорости.
7. Человекоподобный робот по пп. 1, 2 или 5, отличающийся тем, что целевая функция скорости основания добавлена к взвешенной сумме целевых функций.
8. Человекоподобный робот по п. 3 или 5, отличающийся тем, что ограничения содержат кинематические пределы тела.
9. Способ управления положением человекоподобного робота с телом (190), соединенным с всенаправленным мобильным наземным основанием (140), с исполнительными механизмами, содержащими по меньшей мере три колеса (141) с по меньшей мере одним всенаправленным колесом, включающий:
- извлечение замера положения тела, замера положения основания, угла наклона робота и замера угловой скорости робота в предварительно заданные моменты времени дискретизации,
- преобразование этих замеров в извлеченные данные,
- использование извлеченных данных и согласно определенному наклонному состоянию, или ненаклонному состоянию, или переходному состоянию робота
- вычисление команд положения, скорости и ускорения с использованием закона управления наклонным состоянием, или ненаклонным состоянием, или переходным состоянием, основанного на законе линейного моделируемого прогнозируемого управления с временем, дискретизируемым согласно периоду времени дискретизации и количеству прогнозируемых отсчетов, который выражен в виде квадратичного оптимизирующего выражения с взвешенной суммой целевых функций с предварительно заданными весами и множеством линейных ограничений,
- преобразование этих команд в инструкции для исполнительных механизмов (212) робота.
10. Способ по п. 9, в котором состояние робота определяют согласно следующим этапам:
- если один из замера угла наклона и/или замера угловой скорости больше чем 0, то следует оценить оцениваемую угловую скорость при ударе и оцениваемое время удара,
сначала робот находится в ненаклонном состоянии,
при этом в ненаклонном состоянии:
- если не имеется оцененного времени удара, то следует переключиться в наклонное состояние;
- если угловая скорость при ударе является более высокой, чем предварительно заданный предел 1, то следует переключиться в наклонное состояние;
- если измеренная угловая скорость является более высокой, чем предварительно заданный предел 2, то следует переключиться в наклонное состояние;
- иначе, если угол наклона не равен нулю, то следует переключиться в переходное состояние,
- если угол наклона равен нулю, то следует оставаться в ненаклонном состоянии;
при этом в наклонном состоянии:
- если измеренная угловая скорость является более высокой, чем предварительно заданный предел 2, то следует оставаться в наклонном состоянии;
- если оцененная скорость при ударе является меньшей, чем предварительно заданный предел 1, то следует переключиться в переходное состояние,
- иначе, следует оставаться в наклонном состоянии;
при этом в переходном состоянии:
- если не имеется оцененного времени удара, то следует переключиться в наклонное состояние;
- если угловая скорость при ударе является более высокой, чем предварительно заданный предел 1, то следует переключиться в наклонное состояние;
- если измеренная угловая скорость является более высокой, чем предварительно заданный предел 2, то следует переключиться в наклонное состояние;
- если угол наклона падает до 0, и если угловая скорость, измеренная в следующий раз, равна 0, то следует переключиться в ненаклонное состояние, иначе, следует оставаться в переходном состоянии.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP14305585.3 | 2014-04-17 | ||
EP14305585.3A EP2933069B1 (en) | 2014-04-17 | 2014-04-17 | Omnidirectional wheeled humanoid robot based on a linear predictive position and velocity controller |
PCT/EP2015/058370 WO2015158885A2 (en) | 2014-04-17 | 2015-04-17 | Omnidirectional wheeled humanoid robot based on a linear predictive position and velocity controller |
Publications (3)
Publication Number | Publication Date |
---|---|
RU2016144008A3 RU2016144008A3 (ru) | 2018-05-17 |
RU2016144008A RU2016144008A (ru) | 2018-05-17 |
RU2680791C2 true RU2680791C2 (ru) | 2019-02-26 |
Family
ID=50588609
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2016144008A RU2680791C2 (ru) | 2014-04-17 | 2015-04-17 | Всенаправленный колесный человекоподобный робот, основанный на контроллере положения и скорости с линейным прогнозированием |
Country Status (14)
Country | Link |
---|---|
US (1) | US10232508B2 (ru) |
EP (1) | EP2933069B1 (ru) |
JP (1) | JP6496396B2 (ru) |
KR (1) | KR101977912B1 (ru) |
CN (1) | CN106573370B (ru) |
AU (1) | AU2015248711B2 (ru) |
CA (1) | CA2946049C (ru) |
ES (1) | ES2746754T3 (ru) |
HK (1) | HK1216406A1 (ru) |
MX (1) | MX2016013016A (ru) |
NZ (1) | NZ725275A (ru) |
RU (1) | RU2680791C2 (ru) |
SG (1) | SG11201608204QA (ru) |
WO (1) | WO2015158885A2 (ru) |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9323250B2 (en) | 2011-01-28 | 2016-04-26 | Intouch Technologies, Inc. | Time-dependent navigation of telepresence robots |
US9098611B2 (en) | 2012-11-26 | 2015-08-04 | Intouch Technologies, Inc. | Enhanced video interaction for a user interface of a telepresence network |
US9361021B2 (en) | 2012-05-22 | 2016-06-07 | Irobot Corporation | Graphical user interfaces including touchpad driving interfaces for telemedicine devices |
WO2013176758A1 (en) * | 2012-05-22 | 2013-11-28 | Intouch Technologies, Inc. | Clinical workflows utilizing autonomous and semi-autonomous telemedicine devices |
EP2933069B1 (en) * | 2014-04-17 | 2019-07-03 | Softbank Robotics Europe | Omnidirectional wheeled humanoid robot based on a linear predictive position and velocity controller |
US9594377B1 (en) * | 2015-05-12 | 2017-03-14 | Google Inc. | Auto-height swing adjustment |
WO2018089898A2 (en) * | 2016-11-10 | 2018-05-17 | Ohio University | Autonomous automobile guidance and trajectory-tracking |
CN108345211A (zh) * | 2017-01-23 | 2018-07-31 | 深圳市祈飞科技有限公司 | 双足仿人机器人及其非线性步态规划方法以及控制方法 |
BR112019014550A2 (pt) * | 2017-01-23 | 2020-02-18 | Qualcomm Incorporated | Execução de aplicativos e controle de hardware de visão computacional de processador único |
JP7000704B2 (ja) | 2017-05-16 | 2022-01-19 | 富士フイルムビジネスイノベーション株式会社 | 移動式サービス提供装置及びプログラム |
CN107457767B (zh) * | 2017-07-07 | 2020-04-21 | 歌尔科技有限公司 | 一种紧急避障机器人及其设计方法 |
WO2019095108A1 (zh) * | 2017-11-14 | 2019-05-23 | 深圳先进技术研究院 | 机器人的模仿学习方法、装置、机器人及存储介质 |
CN109960246B (zh) | 2017-12-22 | 2021-03-30 | 华为技术有限公司 | 动作控制方法及装置 |
CN109991989B (zh) * | 2017-12-29 | 2021-12-17 | 深圳市优必选科技有限公司 | 机器人空闲状态下的动态平衡方法、装置及存储介质 |
KR102137173B1 (ko) * | 2018-06-15 | 2020-07-24 | 엘지전자 주식회사 | 안내 로봇 |
CN115351783A (zh) * | 2018-06-22 | 2022-11-18 | 索尼公司 | 机器人系统、控制方法和计算机可读存储介质 |
WO2019244710A1 (ja) | 2018-06-22 | 2019-12-26 | ソニー株式会社 | 滑り検出装置 |
KR102148032B1 (ko) * | 2018-06-25 | 2020-08-26 | 엘지전자 주식회사 | 로봇 |
US11858129B2 (en) * | 2019-01-02 | 2024-01-02 | Lg Electronics Inc. | Mobile robot |
CN109514564B (zh) * | 2019-01-22 | 2021-11-30 | 江西理工大学 | 一种复合二次型多关节机械臂最优控制方法 |
CN110039515B (zh) * | 2019-01-28 | 2022-02-18 | 南京理工大学 | 一种基于代数方法的膝关节外骨骼关节状态估计方法 |
US11338444B2 (en) * | 2019-04-04 | 2022-05-24 | Marmon Foodservice Technologies, Inc. | Robotic carrier device and system for preparing food products |
CN110450159B (zh) * | 2019-08-13 | 2024-05-24 | 之江实验室 | 一种双足机器人的足部状态检测装置以及基于该装置的斜面行走方法 |
CN111221318B (zh) * | 2019-12-11 | 2023-03-28 | 中山大学 | 一种基于模型预测控制算法的多机器人状态估计方法 |
CN111469126A (zh) * | 2020-04-08 | 2020-07-31 | 北京云迹科技有限公司 | 控制机器人的方法、装置以及机器人 |
USD936057S1 (en) * | 2020-11-24 | 2021-11-16 | Vr Media Technology, Inc. | Scanner |
CN114764241A (zh) * | 2021-01-14 | 2022-07-19 | 腾讯科技(深圳)有限公司 | 运动状态的控制方法、装置、设备及可读存储介质 |
CN112882485B (zh) * | 2021-01-25 | 2022-04-26 | 河南大学 | 一种双足机器人逆运动学的几何计算方法 |
CN113050645B (zh) * | 2021-03-22 | 2022-04-01 | 华中科技大学 | 一种双足机器人的弹簧负载倒立摆模型及步态规划方法 |
CN113075931B (zh) * | 2021-03-30 | 2022-04-08 | 西南科技大学 | 一种三轮全向移动机器人及其运动控制方法 |
US20220331966A1 (en) * | 2021-04-09 | 2022-10-20 | Beyond Imagination Inc. | Mobility surrogates |
CN113284319B (zh) * | 2021-05-17 | 2022-06-10 | 首都医科大学宣武医院 | 一种临床用防走失保护装置 |
CN113787502B (zh) * | 2021-09-28 | 2023-02-07 | 千翼蓝犀智能制造科技(广州)有限公司 | 一种基于神经动力学的三轮全向移动机器人状态调整方法 |
CN114193467B (zh) * | 2021-11-29 | 2023-12-22 | 江苏夸米智能科技有限公司 | 一种倾倒时自动抵撑恢复正常工作的酒店服务机器人 |
CN115056230B (zh) * | 2022-07-15 | 2024-04-09 | 海南大学 | 一种基于伪逆的三轮全向移动机械臂重复运动规划方法 |
CN117724336B (zh) * | 2023-12-18 | 2024-06-11 | 中国矿业大学 | 一种基于状态和估计参数触发的机器人系统跟踪控制方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004283958A (ja) * | 2003-03-20 | 2004-10-14 | Sony Corp | ロボット装置、その行動制御方法及びプログラム |
WO2010080370A1 (en) * | 2008-12-19 | 2010-07-15 | Honda Motor Co., Ltd | Inertia shaping for humanoid fall direction change |
Family Cites Families (66)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4638445A (en) * | 1984-06-08 | 1987-01-20 | Mattaboni Paul J | Autonomous mobile robot |
US5432417A (en) * | 1992-04-30 | 1995-07-11 | Honda Giken Kogyo Kabushiki Kaisha | Locomotion control system for legged mobile robot |
JP2000153476A (ja) * | 1998-09-14 | 2000-06-06 | Honda Motor Co Ltd | 脚式移動ロボット |
US6539284B2 (en) * | 2000-07-25 | 2003-03-25 | Axonn Robotics, Llc | Socially interactive autonomous robot |
US7111980B2 (en) * | 2001-04-19 | 2006-09-26 | Honeywell International Inc. | System and method using thermal image analysis and slope threshold classification for polygraph testing |
US6507773B2 (en) * | 2001-06-14 | 2003-01-14 | Sharper Image Corporation | Multi-functional robot with remote and video system |
US6604021B2 (en) * | 2001-06-21 | 2003-08-05 | Advanced Telecommunications Research Institute International | Communication robot |
JP4043289B2 (ja) * | 2002-05-27 | 2008-02-06 | シャープ株式会社 | 探索ロボットシステム |
US20140254896A1 (en) * | 2011-07-18 | 2014-09-11 | Tiger T G Zhou | Unmanned drone, robot system for delivering mail, goods, humanoid security, crisis negotiation, mobile payments, smart humanoid mailbox and wearable personal exoskeleton heavy load flying machine |
EP1586423B1 (en) * | 2002-12-10 | 2011-10-05 | Honda Motor Co., Ltd. | Robot control device, robot control method, and robot control program |
US20090030552A1 (en) * | 2002-12-17 | 2009-01-29 | Japan Science And Technology Agency | Robotics visual and auditory system |
JP4089512B2 (ja) * | 2003-05-22 | 2008-05-28 | トヨタ自動車株式会社 | 倒立振子型台車ロボット |
US8077963B2 (en) * | 2004-07-13 | 2011-12-13 | Yulun Wang | Mobile robot with a head-based movement mapping scheme |
KR101240732B1 (ko) * | 2005-02-18 | 2013-03-07 | 아이로보트 코퍼레이션 | 습식 및 건식 청소를 위한 자동 표면 청소 로봇 |
WO2007041295A2 (en) * | 2005-09-30 | 2007-04-12 | Irobot Corporation | Companion robot for personal interaction |
EP2816434A3 (en) * | 2005-12-02 | 2015-01-28 | iRobot Corporation | Autonomous coverage robot |
ATE534941T1 (de) * | 2005-12-02 | 2011-12-15 | Irobot Corp | Abdeckungsrobotermobilität |
DE102005058867B4 (de) * | 2005-12-09 | 2018-09-27 | Cine-Tv Broadcast Systems Gmbh | Verfahren und Vorrichtung zum Bewegen einer auf einem Schwenk- und Neigekopf angeordneten Kamera entlang einer vorgegebenen Bewegungsbahn |
US7539557B2 (en) * | 2005-12-30 | 2009-05-26 | Irobot Corporation | Autonomous mobile robot |
US20070255115A1 (en) * | 2006-04-27 | 2007-11-01 | Anglin Richard L Jr | Remote diagnostic & treatment system |
US7620477B2 (en) * | 2006-07-05 | 2009-11-17 | Battelle Energy Alliance, Llc | Robotic intelligence kernel |
US7587260B2 (en) * | 2006-07-05 | 2009-09-08 | Battelle Energy Alliance, Llc | Autonomous navigation system and method |
US7584020B2 (en) * | 2006-07-05 | 2009-09-01 | Battelle Energy Alliance, Llc | Occupancy change detection system and method |
US8271132B2 (en) * | 2008-03-13 | 2012-09-18 | Battelle Energy Alliance, Llc | System and method for seamless task-directed autonomy for robots |
US7974738B2 (en) * | 2006-07-05 | 2011-07-05 | Battelle Energy Alliance, Llc | Robotics virtual rail system and method |
US8073564B2 (en) * | 2006-07-05 | 2011-12-06 | Battelle Energy Alliance, Llc | Multi-robot control interface |
US8965578B2 (en) * | 2006-07-05 | 2015-02-24 | Battelle Energy Alliance, Llc | Real time explosive hazard information sensing, processing, and communication for autonomous operation |
US8355818B2 (en) * | 2009-09-03 | 2013-01-15 | Battelle Energy Alliance, Llc | Robots, systems, and methods for hazard evaluation and visualization |
US7801644B2 (en) * | 2006-07-05 | 2010-09-21 | Battelle Energy Alliance, Llc | Generic robot architecture |
US7668621B2 (en) * | 2006-07-05 | 2010-02-23 | The United States Of America As Represented By The United States Department Of Energy | Robotic guarded motion system and method |
US20100243344A1 (en) * | 2006-09-25 | 2010-09-30 | Board Of Trustees Of Leland Stanford Junior University | Electromechanically counterbalanced humanoid robotic system |
KR100812724B1 (ko) * | 2006-09-29 | 2008-03-12 | 삼성중공업 주식회사 | 실내 위치측정시스템을 이용한 벽면 이동 로봇 |
US8180486B2 (en) * | 2006-10-02 | 2012-05-15 | Honda Motor Co., Ltd. | Mobile robot and controller for same |
JP4418905B2 (ja) * | 2007-05-02 | 2010-02-24 | 株式会社国際電気通信基礎技術研究所 | コミュニケーションロボット |
US8489234B2 (en) * | 2007-07-18 | 2013-07-16 | Lg Electronics Inc. | Mobile robot and controlling method thereof |
WO2009038797A2 (en) * | 2007-09-20 | 2009-03-26 | Evolution Robotics | Robotic game systems and methods |
US8140188B2 (en) * | 2008-02-18 | 2012-03-20 | Toyota Motor Engineering & Manufacturing North America, Inc. | Robotic system and method for observing, learning, and supporting human activities |
JP4988625B2 (ja) * | 2008-02-28 | 2012-08-01 | 株式会社Ihi | 移動ロボット及びその制御方法 |
JP5337408B2 (ja) * | 2008-05-28 | 2013-11-06 | 村田機械株式会社 | 自律移動体及びその移動制御方法 |
JP5125806B2 (ja) * | 2008-06-25 | 2013-01-23 | 富士通株式会社 | 自立走行装置 |
JP5111445B2 (ja) * | 2008-09-10 | 2013-01-09 | 三菱電機株式会社 | 空気調和機 |
JP4743347B2 (ja) * | 2008-09-17 | 2011-08-10 | 株式会社村田製作所 | 転倒防止制御装置及びコンピュータプログラム |
KR101553521B1 (ko) * | 2008-12-11 | 2015-09-16 | 삼성전자 주식회사 | 지능형 로봇 및 그 제어방법 |
US10163175B2 (en) * | 2009-02-25 | 2018-12-25 | Humana Inc. | System and method for improving healthcare through social robotics |
KR101026596B1 (ko) * | 2009-04-06 | 2011-04-04 | 순천향대학교 산학협력단 | 옴니휠을 이용한 이동로봇의 주행제어 장치 및 방법 |
FR2946160B1 (fr) | 2009-05-26 | 2014-05-09 | Aldebaran Robotics | Systeme et procede pour editer et commander des comportements d'un robot mobile. |
CN101623865A (zh) * | 2009-07-08 | 2010-01-13 | 北京工业大学 | 独轮机器人系统及其控制方法 |
US9120224B2 (en) * | 2009-09-22 | 2015-09-01 | GM Global Technology Operations LLC | Framework and method for controlling a robotic system using a distributed computer network |
US9586471B2 (en) * | 2013-04-26 | 2017-03-07 | Carla R. Gillett | Robotic omniwheel |
US8234010B2 (en) * | 2010-02-16 | 2012-07-31 | Deere & Company | Tethered robot positioning |
US8457830B2 (en) * | 2010-03-22 | 2013-06-04 | John R. Goulding | In-line legged robot vehicle and method for operating |
US8935005B2 (en) * | 2010-05-20 | 2015-01-13 | Irobot Corporation | Operating a mobile robot |
US9014848B2 (en) * | 2010-05-20 | 2015-04-21 | Irobot Corporation | Mobile robot system |
US8918213B2 (en) * | 2010-05-20 | 2014-12-23 | Irobot Corporation | Mobile human interface robot |
US8918209B2 (en) * | 2010-05-20 | 2014-12-23 | Irobot Corporation | Mobile human interface robot |
JP5803043B2 (ja) * | 2010-05-20 | 2015-11-04 | アイロボット コーポレイション | 移動式ロボットシステム及び移動式ロボットを作動させる方法 |
US9323250B2 (en) * | 2011-01-28 | 2016-04-26 | Intouch Technologies, Inc. | Time-dependent navigation of telepresence robots |
CN104898652B (zh) * | 2011-01-28 | 2018-03-13 | 英塔茨科技公司 | 与一个可移动的远程机器人相互交流 |
JP2012166315A (ja) * | 2011-02-15 | 2012-09-06 | Toyota Motor Corp | ロボット |
US20120283746A1 (en) * | 2011-05-02 | 2012-11-08 | Hstar Technologies | Mobile Medical Robotic System |
US8761933B2 (en) * | 2011-08-02 | 2014-06-24 | Microsoft Corporation | Finding a called party |
KR101913332B1 (ko) * | 2011-12-23 | 2018-10-31 | 삼성전자주식회사 | 이동 장치 및 이동 장치의 위치 인식 방법 |
KR20130074143A (ko) * | 2011-12-26 | 2013-07-04 | 평화산업주식회사 | 옴니인 휠을 구비한 라이더 로봇 |
DE102012003690A1 (de) * | 2012-02-23 | 2013-08-29 | Kuka Roboter Gmbh | Mobiler Roboter |
US9975248B2 (en) * | 2012-03-21 | 2018-05-22 | Kenneth Dean Stephens, Jr. | Replicating the remote environment of a proxy robot |
EP2933069B1 (en) * | 2014-04-17 | 2019-07-03 | Softbank Robotics Europe | Omnidirectional wheeled humanoid robot based on a linear predictive position and velocity controller |
-
2014
- 2014-04-17 EP EP14305585.3A patent/EP2933069B1/en active Active
- 2014-04-17 ES ES14305585T patent/ES2746754T3/es active Active
-
2015
- 2015-04-17 WO PCT/EP2015/058370 patent/WO2015158885A2/en active Application Filing
- 2015-04-17 MX MX2016013016A patent/MX2016013016A/es unknown
- 2015-04-17 KR KR1020167032067A patent/KR101977912B1/ko active IP Right Grant
- 2015-04-17 SG SG11201608204QA patent/SG11201608204QA/en unknown
- 2015-04-17 AU AU2015248711A patent/AU2015248711B2/en not_active Ceased
- 2015-04-17 NZ NZ725275A patent/NZ725275A/en not_active IP Right Cessation
- 2015-04-17 JP JP2017505722A patent/JP6496396B2/ja active Active
- 2015-04-17 CA CA2946049A patent/CA2946049C/en not_active Expired - Fee Related
- 2015-04-17 US US15/300,221 patent/US10232508B2/en active Active
- 2015-04-17 RU RU2016144008A patent/RU2680791C2/ru not_active IP Right Cessation
- 2015-04-17 CN CN201580020076.3A patent/CN106573370B/zh active Active
-
2016
- 2016-04-18 HK HK16104423.1A patent/HK1216406A1/zh unknown
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004283958A (ja) * | 2003-03-20 | 2004-10-14 | Sony Corp | ロボット装置、その行動制御方法及びプログラム |
WO2010080370A1 (en) * | 2008-12-19 | 2010-07-15 | Honda Motor Co., Ltd | Inertia shaping for humanoid fall direction change |
Non-Patent Citations (3)
Title |
---|
FUKUSHIMA H et al. "Transformation Control to an Inverted Pendulum for a Mobile Robot With Wheel-Arms Using Partial Linearization and Polytopic Model Set", IEEE TRANSACTIONS ON ROBOTICS, 28 January 2013, vol. 29, no. 3, abstract. * |
MINGEUK KIM et al. "Stabilization of a rapid four-wheeled mobile platform using the ZMP stabilization method", ADVANCED INTELLIGENT MECHATRONICS (AIM), 2010 IEEE/ASME INTERNATIONAL CONFERENCE ON, 6-9 July 2010, abstract. * |
MINGEUK KIM et al. "Stabilization of a rapid four-wheeled mobile platform using the ZMP stabilization method", ADVANCED INTELLIGENT MECHATRONICS (AIM), 2010 IEEE/ASME INTERNATIONAL CONFERENCE ON, 6-9 July 2010, abstract. FUKUSHIMA H et al. "Transformation Control to an Inverted Pendulum for a Mobile Robot With Wheel-Arms Using Partial Linearization and Polytopic Model Set", IEEE TRANSACTIONS ON ROBOTICS, 28 January 2013, vol. 29, no. 3, abstract. * |
Also Published As
Publication number | Publication date |
---|---|
KR101977912B1 (ko) | 2019-05-13 |
HK1216406A1 (zh) | 2016-11-11 |
KR20170030078A (ko) | 2017-03-16 |
EP2933069B1 (en) | 2019-07-03 |
NZ725275A (en) | 2017-12-22 |
US10232508B2 (en) | 2019-03-19 |
AU2015248711A1 (en) | 2016-11-03 |
SG11201608204QA (en) | 2016-10-28 |
MX2016013016A (es) | 2017-10-04 |
ES2746754T3 (es) | 2020-03-06 |
CA2946049A1 (en) | 2015-10-22 |
CN106573370A (zh) | 2017-04-19 |
RU2016144008A3 (ru) | 2018-05-17 |
CA2946049C (en) | 2018-11-20 |
RU2016144008A (ru) | 2018-05-17 |
JP6496396B2 (ja) | 2019-04-03 |
WO2015158885A2 (en) | 2015-10-22 |
US20170144299A1 (en) | 2017-05-25 |
AU2015248711B2 (en) | 2018-02-01 |
EP2933069A1 (en) | 2015-10-21 |
JP2017513726A (ja) | 2017-06-01 |
WO2015158885A3 (en) | 2015-12-10 |
CN106573370B (zh) | 2019-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2680791C2 (ru) | Всенаправленный колесный человекоподобный робот, основанный на контроллере положения и скорости с линейным прогнозированием | |
RU2680628C2 (ru) | Всенаправленный колесный человекоподобный робот, основанный на контроллере положения и скорости с линейным прогнозированием | |
US11851120B2 (en) | Control of robotic devices with non-constant body pitch | |
JP5845334B2 (ja) | ロボット制御方法および記憶媒体 | |
Yi et al. | Online learning of a full body push recovery controller for omnidirectional walking | |
Yi et al. | Learning full body push recovery control for small humanoid robots | |
Zhao et al. | Terrain classification and adaptive locomotion for a hexapod robot Qingzhui | |
Muecke et al. | Darwin’s evolution: Development of a humanoid robot | |
Bledt | Policy regularized model predictive control framework for robust legged locomotion | |
KR20100065809A (ko) | 학습에 의한 로봇의 보행 방법 및 학습에 의한 보행 메커니즘을 구비한 로봇 | |
Elara et al. | On the redefinition of fan out metric for human robot interactions with humanoid soccer robots | |
Morlando et al. | Tethering a human with a quadruped robot: A guide dog to help visually impaired people | |
Nir et al. | Swing leg retraction using virtual apex method for the ParkourBot climbing robot | |
Altameemi | A Comprehensive Survey of Push Recovery Techniques for Standing and Walking Bipedal Robots | |
Baltes et al. | Complex AI on small embedded systems: Humanoid robotics using mobile phones | |
JAGTAP | A Walking Controller for Humanoid Robots using Virtual Force |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20200418 |