Код документа: RU2672654C2
ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
Настоящее изобретение относится к способу и системе для определения по меньшей мере одного свойства, например, податливости манипулятора, и компьютерным продуктам для определения и использования полученного по меньшей мере одного свойства.
УРОВЕНЬ ТЕХНИКИ
Роботы широко применяются во многих отраслях промышленности. В некоторых отраслях промышленности применяется труд, опасный для человеческого здоровья, или труд, осуществляемый в условиях, невыносимых для человека. Другие отрасли промышленности предусматривают повторяющиеся задания, которые могут выполняться гораздо более эффективно и точно роботом.
Большинство промышленных роботов содержит манипулятор, предназначенный для манипулирования материалами, где манипулятор обычно имеет механизм наподобие руки, состоящий из нескольких сегментов, каждый из которых в дальнейшем именуется связью. Движение манипулятора может определяться либо вручную оператором, либо автоматически путем осуществления инструкций согласно пользовательской программе, которая определяет задание робота. В последнем случае манипулятор управляется пользовательской программой, загруженной или введенной в контроллер для достижения запрограммированной позы (позиции и ориентации для желаемого размещения рабочего органа). Контроллер является частью робота, которая управляет движением манипулятора путем активации движений связей с помощью двигателей, трансмиссий и сочлененных механических компоновок, образующих механизм с определенной кинематической структурой.
Количество независимых параметров, которые определяют позиционное состояние твердого тела (жесткой связи) или механизма именуется степенями свободы. Свободное твердое тело в 3-мерным (евклидовом) пространстве имеет 6 степеней свободы (три поступательных и три вращательных). Твердая или жесткая связь содержит такое твердое тело. Каждая кинематическая пара связей соединена сочленением, которое обычно является скользящим (сочленение также может именоваться призматическим, линейным или поступательным сочленением) или шарнирным (сочленение также может именоваться поворотным или вращательным сочленением). Одно такое сочленение ограничивает пять из шести возможных степеней свободы одной связи относительно другой связи в паре связей, которая в несингулярной конфигурации манипулятора добавляет одну степень свободы последней связи (оканчивающейся торцевым фланцем для монтажа инструмента) манипулятора. Благодаря кинематической структуре связей и сочленений, степени свободы манипулятора можно рассматривать как минимальное количество координат, необходимых для задания кинематической конфигурации.
Поскольку инструмент, именуемый рабочим органом робота (или, эквивалентно, механизм смены инструмента, позволяющий менять рабочий орган вручную или без помощи человека), является другим физическим телом, перемещаемым в евклидовом пространстве, манипуляторы с 6 степенями свободы являются наиболее распространенными, поскольку они содержат минимум для полной подвижности рабочего органа, что для нормальной несингулярной конфигурации требует 6 вышеупомянутых сочленений. Существуют и другие типы сочленений, например, сферические и цилиндрические сочленения, но их можно рассматривать как комбинации вышеупомянутых более простых сочленений, и в дальнейшем именуются сочленениями. Сочленения, как упомянуто, могут быть вращательными или поступательными, но оба случая эквивалентно охвачены в дальнейшем. Это соответствует установленной системе обозначений обобщенных координат сочленения в литературе по робототехнике. Координаты сочленения степеней свободы манипулятора задают кинематическую конфигурацию, которая также задает позу рабочего органа, но, возможно, не однозначно.
Сочленение обычно приводится в действие двигателем с управлением посредством обратной связи через трансмиссию, включающую в себя редукторы для снижения оборотов двигателя до более низких оборотов сочленения. В этом случае трансмиссия, в основном, является передачей, но предполагается идеальный двигатель, и любая подходящая динамика привода/двигателя включена в трансмиссию. В так называемом безредукторном сочленении трансмиссия отсутствует, но вследствие практических и фундаментальных проблем с прямыми приводами, почти все роботы построены с трансмиссий для каждого сочленения. Однако нижеследующее описание охватывает также безредукторные сочленения, являющиеся особым случаем известной и идеальной трансмиссии с передаточным числом один. Здесь типичной компоновкой сочленения и связи, включающей в себя двигатель для активации и любую трансмиссию, считается ось.
Полная кинематическая структура манипулятора часто включает в себя внутреннюю кинематику сочленения, когда движения сочленения связаны внутри манипулятора, что является очень обычным для движений запястья, и это справедливо для оси 5 и оси 6 манипулятора 2 на фиг. 1. Хотя внутренняя кинематика сочленения может иметь отношение к методам работы настоящего изобретения, в дальнейшем ее можно игнорировать, поскольку принципы настоящего изобретения относятся к движениям, обусловленным крутящими моментами на сочленении, как если бы каждое сочленение было безредукторного типа. Поэтому, благодаря упомянутой здесь кинематике, сочленения и связи образуют конструкцию руки манипулятора.
Упомянутый обычный механизм наподобие руки, содержащий манипулятор, обычно означает чисто последовательный кинематический манипулятор или механизм (SKM, в литературе, относящейся к эквивалентной системе обозначений последовательной кинематической машины), в том смысле, что после каждой связи следует сочленение и затем следующая связь, образуя последовательную цепь от опоры (или подвижного основания) робота к торцевому фланцу. Альтернативно, связи также могут располагаться параллельно, образуя, таким образом, параллельный кинематический манипулятор (PKM). Можно построить большое количество комбинаций конструкций SKM и PKM.
В областях применения роботов, например, промышленных роботов в производстве, очень желательно, чтобы результирующая физическая поза, с некоторыми допусками, согласовывалась с запрограммированной позой. Для поддержки эффективной спецификации поз рабочего органа, либо вручную, либо в пользовательской программе и, возможно, из данных CAD, контроллер содержит кинематическую модель манипулятора. Кинематическая модель включает в себя сочленения и связи и их геометрические соотношения для манипулятора, предполагая, что эти части содержат твердые тела. Поскольку манипуляторы не являются абсолютно твердыми, возможны отклонения вследствие массы и сил, действующих при обработке, приводящие к расхождению в положении рабочего органа. Расхождение между запрограммированной позой и физической позой может быть в одном положении или в нескольких положениях вдоль пути, или при любом использовании робота. Управление расхождениями пользователем посредством корректировок в пользовательской программе или посредством обучения на основе небольших отклонений от запрограммированных поз, ограничивает повторное использование заданий робота и увеличивает стоимость программирования и установки робота.
В течение первых десятилетий развития робототехники основные расхождения были обусловлены недостаточным управлением, например, неправильной генерацией траекторий (например, без учета насыщений крутящего момента на сочленении) и слишком примитивной компенсацией положительной обратной связи (например, с погрешностями пути, обусловленными погрешностями сервоуправления сочленениями). Знание детальных параметров манипулятора не приносило пользы в ранних системах, ввиду отсутствия использующих их функций управления. Последующее широкое применение управления на основе моделей, с использованием знания о свойствах манипулятора, для оптимизации управления, привело к значительным улучшениям эксплуатационных показателей и появлению роботов, действующих в близком соответствии с программой, с середины 1980-х и далее. И все же роботы отклоняются от своего запрограммированного движения ввиду отсутствия компенсации управления нескольких конкретных свойств манипулятора. Современный контроллер обычно имеет подходящую структуру и функциональные возможности для такой компенсации, но не располагает данными, относящимися к фактическому роботу, ввиду отсутствия практических способов получения и поддержания этих данных. Поэтому приходится работать с этими расхождениями для получения как можно меньшего отклонения от запрограммированной позы, что диктует необходимость в практическом способе определения соответствующих свойств манипулятора.
Существует несколько причин отклонений от запрограммированной позы. Одной причиной могут быть неточности в геометриях связи и сочленения, т.е. кинематические погрешности. Кинематические погрешности можно устранять посредством кинематической калибровки, которая обычно доступна от изготовителя роботов. Еще одна причина отклонений связана с неточностями механики сочленения и руки и/или управления динамикой руки в ходе высокоскоростного движения, например, насыщением крутящего момента вследствие эффектов сочленений или множества тел. Обычно такие отклонения устраняются посредством управления на основе моделей, обеспеченного изготовителем роботов. Еще одна причина отклонений от запрограммированной позы кроется в неточностях, обусловленных силовым взаимодействием между рабочим органом манипулятора и заготовкой, а также силой тяжести и другими силами, действующими на манипулятор. Такие отклонения также связаны с динамикой сочленения вокруг или вдоль движения сочленения вследствие допусков подшипников или других деталей сочленения.
Роботы малой массы и проворные роботы с хорошо оптимизированным управлением приобретают все большую популярность для промышленных применений. Это предъявляет новые требования к управлению на основе моделей, поскольку еще одним источником расхождений является отклонение вследствие податливости связей манипулятора. Податливую связь можно определить как нежесткую связь, т.е. связь, демонстрирующую некоторую степень упругости. Еще одним источником расхождений является податливость сочленений манипулятора в направлениях, отличных от направления вращения сочленения, например, в направлении, ортогональном направлению вращения сочленения. Промышленные роботы имеют гораздо более высокую податливость, чем традиционные машинные инструменты для операций механической обработки. Это предъявляет более высокие требования к модели упругости робота для вычисления фактической позиции центральной точки инструмента (TCP), когда на робота действуют силы.
Были предприняты попытки разработать модель податливости связи и сочленения с использованием квазистатической и динамической модели манипулятора, например, описанной в работе Moberg S. "Modeling and control of flexible manipulators" опубликованной в 2010 г. В публикации податливые сочленения описаны как система 25 пружина-масса с четырьмя связями связь 1 - связь 4, тремя двигателями М1-М3 и разными массами и пружинными постоянными как показано на фиг. 2. Упругость связи моделируется посредством матрицы жесткости. Однако, по мнению Моберга, моделирование нескольких неактивированных сочленений и их положений неочевидно. (Неактивированные сочленения, упомянутые Мобергом, вписываются в предложенный нами более общий принцип упругих степеней свободы, представляющий сочленения и связи, которые могут деформироваться согласно моделям упругости.)
Существуют несколько типов решений, которые имеют дело с некоторыми типами вышеупомянутых расхождений, где наиболее распространены оптические системы для измерений и отслеживания позы. Такие системы, именуемые внешними калибровочными системами, можно использовать для оперативной компенсации движений рабочего органа без параметров для источников расхождений, или можно использовать для калибровки параметров кинематической модели. Хотя современная калибровочная система не захватывает параметры, описывающие отклонения вследствие силы, высокопроизводительный роботы в общем применении сравнительно жестки и поэтому полезны. Во многих других случаях, либо роботы являются менее жесткими, либо требования применения к точности являются более настоятельными, и очень желательна внешняя регистрация или улучшенная компенсация. Несмотря на то, что применение большого количества роботов облегчает крупномасштабное производство, стоимость упомянутой внешней калибровочной системы часто превышает стоимость одного робота. В производстве меньшего масштаба, опирающемся на работу одного или нескольких роботов, такие внешние калибровочные системы неприменимы вследствие слишком высокой стоимости. Один пример внешней калибровочной системы описан в WO 9912082. Помимо калибровки, внешние датчики, регистрирующие крутящий момент или позицию сочленений или механизма смены инструментов, можно использовать для повышения устойчивости к неизвестному изменению в манипуляторе или в производственном процессе, в случае наличия силового взаимодействия между инструментом и заготовкой.
Другой подход к калибровке представлен в статье "Kinematic Calibration by Direct estimation of the Jacobian Matrix" Bennet, Hollerbach и Henri, представленной на ICRA, 1992 г., в Ницце, Франция. Согласно статье, параметры в якобиане робота оцениваются сначала путем зажатия робота в заранее заданной позе и затем приведения в действие сочленений робота. На основании информации от внешнего датчика силы/крутящего момента, присоединенного к концевой связи вблизи точки зажима, можно определить неизвестные кинематические параметры. Якобиан выражает зависимость между скоростями концевых точек и скоростями сочленений, или, соответственно, для сил/крутящих моментов. Данные, полученные из набора таких активаций, дают набор таких матриц, которые используются для вычисления кинематических параметров. Даже при осуществлении кинематической калибровки, также способом на основе силы/крутящего момента без учета динамики привода к сочленению, расхождения вследствие динамических сил и силовых взаимодействий с заготовкой остаются.
Таким образом, определение коэффициентов матрицы жесткости описанное Мобергом, с использованием вышеописанных традиционных калибровочных систем манипулятора, либо является нетривиальным, либо такие калибровочные системы просто не предназначены для измерения и компенсации податливости связи и податливости сочленения в направлениях, отличных от первичного направления.
В статье "Cartesian compliance model for industrial robots using virtual joints" E. Abele et al, Prod. Eng. Res. Devel., 2008, описано моделирование конструкции робота и идентификация его параметров. На фиг. 3а проиллюстрирован общий подход к элементарному сочленению 30, где проиллюстрировано кручение между ведущей стороной (q2) и выходной стороной редуктора (θz), которое прилагается, если общую упругость можно, в основном, присваивать упругости редукторов. Связи робота и соединение сочленения и связи считаются негибкими. На фиг. 3b проиллюстрировано виртуальное сочленение 31 с двумя дополнительными степенями свободы по сравнению с элементарным сочленением, показанным на фиг. 3a, и, таким образом, податливость в двух дополнительных степенях свободы можно рассматривать при создании модели конструкции робота. Однако для обеспечения возможности измерения податливости сочленения каждый раз нагружается только одно сочленение. Таким образом, при измерении оси (i) все оси от основания до предыдущей оси (i-1) нужно зажимать, при этом идентифицированная ось является первым свободно движущимся сочленением, таким образом, делая довольно времязатратным процесс определения любой податливости робота.
Поэтому для уменьшения расхождений путем компенсации на основании калиброванных моделей, включающих в себя податливость, ограничения существующих технологий делают необходимым более точный, простой и недорогой способ определения таких параметров связей и сочленений робота.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Задачей настоящего изобретения является решение по меньшей мере некоторых вышеупомянутых проблем существующей технологии.
Согласно первому аспекту, задача достигается, по меньшей мере частично, посредством способа определения по меньшей мере одного свойства, связанного с выбранной осью манипулятора, причем манипулятор выполнен с возможностью действовать под управлением контроллера, и содержит по меньшей мере одну ось, содержащую сочленение и звено, соединенное с сочленением, причем сочленение выполнено с возможностью приведения в действие приводом.
Способ содержит:
- зажатие подвижной части манипулятора в точке в пространстве путем управления манипулятором в результате чего манипулятор приобретает зажатую кинематическую конфигурацию;
- выбор набора сочленений идентификации, содержащего по меньшей мере одно сочленение манипулятора, причем по меньшей мере одно сочленение из набора сочленений идентификации выполнено с возможностью управления упомянутой выбранной осью, по меньшей мере одно свойство которой подлежит определению, и ее отслеживания;
- выбор набора сочленений возбуждения, содержащего по меньшей мере одно сочленение манипулятора, которое, для зажатой кинематической конфигурации манипулятора, выполнено с возможностью возбуждения по меньшей мере одной связи, соединенной с по меньшей мере одним сочленением из набора сочленений идентификации;
- выбор набора сочленений зажимной конфигурации манипулятора;
- приведение в действие упомянутого набора сочленений возбуждения, в результате чего упомянутая выбранная ось возбуждается при управлении набором сочленений зажимной конфигурации, поддерживая при этом зажатую кинематическую конфигурацию;
- отслеживание одной или более величин, связанных с крутящим моментом привода и/или позицией сочленения для по меньшей мере одного сочленения в наборе сочленений идентификации и/или наборе сочленений возбуждения;
- определение по меньшей мере одного свойства упомянутой выбранной оси на основании одной или более отслеживаемых величин.
Способ позволяет определять такие свойства как податливость связей и сочленений манипулятора, и затем использовать свойства для достижения более точного управления манипулятором. Для определения свойств не требуется демонтировать какие-либо компоненты манипулятора, что позволяет обеспечить способ более быстрый и более экономичный, чем предыдущие способы.
Согласно одному варианту осуществления, способ содержит определение по меньшей мере одного свойства выбранной оси на основании комбинации одной или более отслеживаемых величин, связанных с крутящим моментом привода и/или позицией сочленения. Таким образом, можно определять большее количество свойств.
Согласно одному варианту осуществления, способ содержит определение по меньшей мере одного свойства для каждой из множества выбранных осей манипулятора. Таким образом, можно определять несколько свойств.
Согласно еще одному варианту осуществления, способ содержит повторение способа, в котором достигнутая зажатая кинематическая конфигурация манипулятора отличается, в этом способе, от ранее достигнутой зажатой кинематической конфигурации манипулятора, и определение по меньшей мере одного свойства выбранной оси на основании определенных свойств выбранной оси в разных зажатых кинематических конфигурациях. Изменяя зажатую кинематическую конфигурацию можно получать множество величин для более точного определения по меньшей мере одного свойства.
Согласно другому варианту осуществления, этап определения по меньшей мере одного свойства содержит определение матрицы жесткости манипулятора для манипулятора на основании одной или более отслеживаемых величин. Матрица жесткости манипулятора образована одной или несколькими компонентными матрицами жесткости, например, матрицами жесткости связей, для определения свойств жесткости манипулятора в целом.
Согласно одному варианту осуществления, способ содержит организацию свойств согласно структуре матрицы жесткости манипулятора, которая связывает возможно неизвестные перемещения связей и сочленений с крутящими моментами и силами, что позволяет моделировать любую комбинацию последовательных и параллельных звеньев, тем самым, облегчая определение этих свойств. Свойствами могут быть параметры жесткости манипулятора.
Согласно еще одному варианту осуществления, этап определения по меньшей мере одного свойства содержит осуществление оптимизации на основании одной или более отслеживаемых величин. Манипулятор может быть снабжен датчиком, выполненным с возможностью генерации сигнала датчика с данными датчика, находясь в зажатой кинематической конфигурации, причем способ дополнительно содержит этап включения данных датчика из манипулятора в оптимизацию. Датчик может представлять собой датчик силы, выполненный с возможностью генерации сигнала датчика сданными силы.
Согласно одному варианту осуществления по меньшей мере одно сочленение из набора сочленений зажимной конфигурации не входит в набор сочленений идентификации и набор сочленений возбуждения. Таким образом, сочленения из набора сочленений зажимной конфигурации не влияют ни на другие наборы сочленений, ни на отслеживаемые величины.
Согласно одному варианту осуществления, набор сочленений зажимной конфигурации управляется таким образом, что набор сочленений зажимной конфигурации не оказывает существенного влияния на определение по меньшей мере одного свойства, связанного с выбранной осью.
Согласно одному варианту осуществления, способ содержит сравнение по меньшей мере одного свойства с ранее полученным значением свойства или заранее заданным значением свойства, определение значения разности между по меньшей мере одним свойством и предыдущим полученным значением свойства или заранее заданным значением свойства, сравнение значения разности с пороговым значением разности и определение износа манипулятора на основании результата сравнения. Таким образом, износ манипулятора можно определять путем анализа, отличается ли определенное свойство от каких-либо ранее полученных значений свойств или заранее заданного значения свойства, представляющего свойство, например, отсутствие существенного износа.
Согласно одному варианту осуществления, манипулятор является параллельным кинематическим манипулятором. Альтернативно, манипулятор может быть последовательным кинематическим манипулятором. Таким образом, способ можно использовать в любом случае.
Согласно еще одному варианту осуществления, способ содержит получение конкретных кинематических параметров посредством кинематической калибровки манипулятора и обновление кинематических параметров манипулятора на основании по меньшей мере одного определенного свойства выбранной оси. Таким образом, манипулятор можно лучше калибровать с использованием полученного по меньшей мере одного свойства. Кинематические параметры, подлежащие обновлению, могут быть номинальными параметрами манипулятора или кинематическими параметрами, полученными традиционными способами калибровки.
Изобретение также относится к использованию по меньшей мере одного свойства, определенного согласно любому из этапов раскрытого здесь способа, для обновления номинальных кинематических параметров манипулятора. Кроме того, способ относится к использованию по меньшей мере одного свойства, определенного согласно любому из этапов раскрытого здесь способа, для обновления программ робота или параметров управления движением манипулятора. Таким образом, можно повысить точность управления манипулятором.
Согласно второму аспекту, задача достигается, по меньшей мере частично, посредством системы для определения по меньшей мере одного свойства, связанного с выбранной осью манипулятора. Система содержит манипулятор, по меньшей мере одна ось которого содержит сочленение и звено, соединенное с сочленением. Система дополнительно содержит по меньшей мере один привод, выполненный с возможностью приведения в действие сочленения и контроллер, выполненный с возможностью управления манипулятором, причем контроллер содержит блок управления и компьютерно-считываемое запоминающее устройство, содержащее инструкции, предписывающие блоку управления:
- зажимать подвижную часть манипулятора в точке в пространстве путем управления манипулятором в результате чего манипулятор приобретает зажатую кинематическую конфигурацию;
- выбирать набор сочленений идентификации, содержащий по меньшей мере одно сочленение манипулятора, причем по меньшей мере одно сочленение из набора сочленений идентификации выполнено с возможностью управления связью упомянутой выбранной оси, по меньшей мере одно свойство которой подлежит определению, и ее отслеживания;
- выбирать набор сочленений возбуждения, содержащий по меньшей мере одно сочленение манипулятора, которое, для зажатой кинематической конфигурации манипулятора выполнен с возможностью возбуждения по меньшей мере одной связи, соединенной с по меньшей мере одним сочленением из набора сочленений идентификации;
- выбирать набор сочленений зажимной конфигурации манипулятора;
- приводить в действие набор сочленений возбуждения, таким образом, что выбранная ось возбуждается при управлении набором сочленений зажимной конфигурации, поддерживая при этом зажатую кинематическую конфигурацию;
- отслеживать одну или более величин, связанных с крутящим моментом привода и/или позицией сочленения для по меньшей мере одного сочленения в наборе сочленений идентификации и/или в наборе сочленений возбуждения;
- определять по меньшей мере одно свойство выбранной оси на основании одной или более отслеживаемых величин;
- генерировать сигнал свойства, указывающий по меньшей мере одно свойство.
Согласно третьему аспекту, изобретение относится к компьютерной программе (Р), связанной с системой, причем компьютерная программа (Р) содержит компьютерные инструкции, предписывающие блоку управления осуществлять способ согласно любому из раскрытых здесь этапов.
Согласно четвертому аспекту, изобретение относится к компьютерному программному продукту, содержащему компьютерные инструкции, хранящиеся на компьютерно-считываемом носителе данных для осуществления способа согласно любому из раскрытых здесь этапов. Изобретение также относится к компьютерному программному продукту, содержащему по меньшей мере одно свойство, полученное при осуществлении способа согласно любому из раскрытых здесь этапов, в котором по меньшей мере одно свойство хранится на компьютерно-считываемом носителе данных.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Изобретение будет подробно описано ниже со ссылкой на прилагаемые чертежи, в которых:
Фиг. 1 демонстрирует систему для определения свойства связей и сочленений манипулятора согласно одному варианту осуществления настоящего изобретения.
Фиг. 2 демонстрирует традиционную модель манипулятора с податливостью связи и сочленения.
Фиг. 3а демонстрирует традиционную модель элементарного податливого сочленения.
Фиг. 3b демонстрирует традиционную модель сочленения с податливостью в направлениях, отличных от степеней свободы этого сочленения.
Фиг. 4 упрощенно демонстрирует манипулятор с податливыми сочленениями и связями.
Фиг. 5 демонстрирует податливость идеальной балки.
Фиг. 6а демонстрирует часть манипулятора с податливой связью и соседними с ней сочленениями с обозначенной податливостью.
Фиг. 6b демонстрирует двухмерную перспективу фиг. 6а с обозначенной податливостью сочленения.
Фиг. 6 с демонстрирует направление силы тяжести, действующей на податливую связь.
Фиг. 6d демонстрирует, как силу тяжести, показанную на фиг. 6 с, можно представить двумя частями, что позволяет упростить нижеследующие уравнения.
Фиг. 6е демонстрирует конкретный пример податливости связи.
Фиг. 7 демонстрирует кинематическую схему манипулятора, показанного на фиг. 1.
Фиг. 8 демонстрирует один пример представления расхождений вследствие податливости, соответствующего определенной кинематической конфигурации манипулятора, показанного на фиг. 1.
Фиг. 9 демонстрирует блок-схему операций одного варианта осуществления способа согласно настоящему изобретению.
Фиг. 10 демонстрирует пример деформации связи и сочленения.
Фиг. 11а демонстрирует пример построения глобальной матрицы жесткости для примера, приведенного на фиг. 10.
Фиг. 11b демонстрирует пример построение глобального полного якобиана для примера, представленного на фиг. 10.
Фиг. 12a-12d демонстрируют манипулятор с двумя сочленениями и тремя связями в разных зажатых кинематических конфигурациях и результирующую податливость, когда манипулятор приводится в действие согласно способу.
Фиг. 13а-13b демонстрируют несколько циклов нагрузки оси 2 и оси 3 другого робота.
ПОДРОБНОЕ ОПИСАНИЕ
Определения признаков
Робот: комбинация манипулятора и контроллера, который выполнен с возможностью управления движением одной или нескольких осей манипулятора.
Манипулятор: механическая рука, содержащая одну или несколько осей, образующих одну или несколько кинематических цепей.
Ось (множественное число: оси): сочленение и связь, включающие в себя двигатель для активации и любую трансмиссию.
Звено: одна или несколько связей, которые соединены между собой сочленениями.
Жесткость: жесткость объекта, заданная как
Податливость: величина, обратная жесткости.
Податливая связь: нежесткая связь. Масса податливой связи распределена между двумя сочленениями, которые она соединяет, и поэтому податливая связь формально имеет бесконечную степень свободы и бесконечную последовательность резонансных мод вследствие физики распределенной массы. В настоящем изобретении имеет значение только самая низкая резонансная частота, в качестве указателя податливости связей с определенной массой. Эту частоту можно измерять в свободном движении, и ее также можно использовать как ограничение производительности, но она не является основной частью способа. Соответственно, инерцию самой связи можно аппроксимировать сосредоточенной массой в центре тяжести. Кроме того, упругодинамическая модель, определенная в зажатой конфигурации, является соответствующей квазистатической моделью, которая достаточна для компенсации расхождения вследствие сил, действующих при обработке. Благодаря этому упрощению, считается, что податливая связь имеет шесть дополнительных степеней свободы, которые задают конец связи (позу следующего сочленения в кинематической цепи) относительно начала этой связи (позы предыдущего сочленения).
Компонентная матрица жесткости: матрица, используемая для моделирования деформации компонента, например, деформации связи вследствие сил и/или крутящих моментов на сочленении. Матрица жесткости используется как линейное отображение, предполагая, что отклонения связи малы по сравнению с размерами и движениями связи. Деформацию связи можно задавать в локальной системе координат связи и после этого преобразовывать в глобальную систему координат.
Матрица жесткости манипулятора: в то время как компонентная матрица жесткости может быть постоянной, жесткость манипулятора изменяется с конфигурацией, которая задается координатами сочленения (имеющими элементы степеней свободы манипулятора). При этом на практике различием между поступательным движением двигателя и связи можно пренебречь, поскольку даже большие эффекты трансмиссии оказывают довольно малое влияние на поступательное движение. Таким образом, помимо отдельных поз, углы двигателя достаточно хорошо представляют углы сочленения. Для каждой отдельной конфигурации матрицы жесткости связей можно объединять, тем самым, формируя более крупную матрицу жесткости манипулятора (MSM). MSM также именуется глобальной матрицей жесткости.
Ортогональная податливость сочленения: податливость связи в любом направлении, которое ортогонально движению, описанному свободной координатной сочленения, представляющей движение сочленения.
Неортогональная податливость сочленения: податливость связи вдоль или вокруг координаты движения. Нелинейная податливость включена в свойства трансмиссии сочленения (которые сначала можно определять и, таким образом, можно компенсировать, или альтернативно, устранять путем выбора специальной конфигурации зажатой позы), и, таким образом, для понимания настоящего изобретения можно предположить, что неортогональная податливость сочленения является линейной.
Сила тяжести, действующая на связь: для SKM, масса связи приводит к силам тяжести, которые необходимо уравновешивать крутящими моментами на сочленении соседних осей. Для PKM, наборы параллельных связей должны уравновешивать силы тяжести соответственно. В обоих случаях, потенциально для любого сочленения в зависимости от кинематической конфигурации, силы (обработки или тяжести), действующие на торцевой фланец (например, вес смонтированного рабочего органа, или силы реакции вследствие зажатой позиции) могут добавляться к силам, действующим на каждую ось. Особенность экспериментов по зажатию состоит в том, что силы тяжести можно уравновешивать со стороны торцевого фланца, тем самым обеспечивая малые/нулевые крутящие моменты на сочленении (например, для определения люфта) несмотря на большие силы тяжести. Любой из вышеописанных случаев рассмотрены ниже, хотя описания сосредоточены на случае SKM для наглядности и общего промышленного использования.
Гравитационное влияние на сочленение: обычно, практически для всех роботов, присутствующих на рынке в настоящее время, наибольшее действие тяготения обусловлено соответствующим влиянием твердого тела на предыдущие сочленения в кинематической цепи. Это гравитационное влияние наилучшим образом измеряется при движении в свободном пространстве, наиболее практично во время измерений трения в свободном пространстве (но с учетом среднего крутящего момента в ходе медленного двунаправленного движения, а не гистерезиса, который отражает трение), при достаточно большом количестве кинематических конфигураций для определения крутящего момента привода, необходимого для противодействия силе тяжести. Передаточные числа известны (из спецификаций или из измерений, очевидных специалисту в данной области техники), и, таким образом, известно линейное преобразование между крутящими моментами на сочленении и связи, и, таким образом, силу тяжести, действующую на (твердую) связь, можно эквивалентно рассматривать на стороне двигателя каждого сочленения. Несимметричное трение может снижать точность идентификации тяготения, поэтому в этом случае можно использовать несколько разных полезных нагрузок (изменяя силу тяжести, но не трение).
Гоавитационное влияние на связь: помимо гравитационного влияния на сочленение, вес податливой связи влияет на форму самой связи (см. фиг. 8, где изображен 2D случай), в том смысле, что тяготение способствует изгибанию связи.
Зажатая кинематическая конфигурация: конфигурация манипулятора, где манипулятор (или любая его подвижная часть) зажат в строго определенной позе.
Набор сочленений идентификации: набор сочленений, включающий в себя по меньшей мере одно сочленение, который в определенной зажатой конфигурации выполнен с возможностью управления и отслеживания оси, или осей, которые относятся к соответствующему набору связей, свойства которых необходимо определить. Это сконфигурированное управление и отслеживание осуществляется посредством некоторого контроллера, который, таким образом, управляет этим набором сочленений, которые приводят в движение связи, свойства которых необходимо определить.
Набор сочленений возбуждения: набор сочленений, по меньшей мере и обычно одно (например, одно сочленение в наилучших условиях для приложения сил для обеспечения идентификации), который для текущей зажатой кинематической конфигурации возбуждает одну или несколько связей, приводимых в движение одним или несколькими сочленениями, принадлежащими набору сочленений идентификации. "Возбуждать" здесь означает воздействовать на одну или несколько связей, активируемых или приводимых в действие сочленениями, принадлежащими набору сочленений идентификации.
Набор сочленений зажимной конфигурации: сочленения, которые не принадлежат ни набору сочленений возбуждения, ни набору сочленений идентификации. Эти сочленения управляются таким образом, чтобы достигалась такая кинематическая конфигурация, в которой эти сочленения существенно не влияют на идентификацию свойств осей, и таким образом, чтобы поддерживалась зажатая поза.
Свойство: свойство является любым из линейной податливости сочленения или связи, ортогональной податливости сочленения, нелинейной податливости связи или ортогонального люфта сочленения. Свойство можно определять как значение жесткости для связей и сочленений.
Система
На фиг. 1 проиллюстрирована система 1 согласно одному варианту осуществления, которая будет объяснена со ссылкой на эту фигуру. Система 1 содержит манипулятор 2, проиллюстрированный здесь с шестью сочленениями 3, 5, 7, 8, 11, 12 и шестью связями 4, 6, 9, 10, 13, 14. Каждое сочленение 3, 5, 7, 8, 11, 12 выполнено с возможностью приведения в действие приводом, например, двигателем (не показан), прямо или косвенно через передачу (именуемую здесь трансмиссией, не показана), благодаря чему обороты двигателя преобразуются в низкоскоростные движения, указанные толстыми стрелками. Толстые стрелки демонстрируют, как может двигаться каждая связь 4, 6, 9, 10, 13, 14 вокруг соединенного с ней сочленения 3, 5, 7, 8, 11, 12. Сочленение 3 и соединенная с ним связь 4 совместно образуют ось 1. Направление движения для оси 1, когда связь 4 вращается вокруг сочленения 3, указано толстыми стрелками, обозначенными как ось 1. Кроме того, сочленение 5 соединено со связью 6, образуя ось 2. Направление движения для оси 2, когда звено 6 вращается вокруг сочленения 5, указано толстыми стрелками, обозначенными как ось 2. Ось 3 представляет движение связи 9 вокруг сочленения 7, но активация осуществляется трансмиссией, которая действует на связь 23, что мы называем параллельным сочленением для оси 3. Далее, сочленение 8 совместно со связью 10 образует ось 4, сочленение 11 совместно со связью 13 образует ось 5, и сочленение 12 совместно со связью 14 образует ось 6. Их направление движения, соответственно, указано на фигуре стрелками. Для простоты, и поскольку настоящее изобретение относится к механизму сочленений и связей на стороне руки, приводы/двигатели и трансмиссии, входящие в состав каждой оси, не показаны и не упомянуты.
Механизм 16 смены инструментов (показанный отсоединенным на фиг. 1) можно присоединять его стороной манипулятора к фланцу 15 монтажа инструмента, и различные инструменты или рабочие органы можно присоединять к механизму 16 смены инструментов на его стороне инструмента.
Такой манипулятор 2 с шестью сочленениями также именуется манипулятором шести степеней свободы, поскольку он может позиционировать присоединенный рабочий орган, присоединенный к фланцу 15 монтажа инструмента в шести степенях свободы на рабочем месте манипулятора 2. Система 1 может содержать любое количество сочленений, т.е. одно или несколько сочленений, и любое количество связей, соединенных с одним или несколькими сочленениями, и количества не критичны для осуществления изобретения.
Система 1 дополнительно содержит контроллер 19, содержащий блок 20 управления и компьютерно-считываемое запоминающее устройство 21 с инструкциями для осуществления способа согласно любому из вариантов осуществления, которые будут здесь описаны. В частности, система 1 выполнена с возможностью определения по меньшей мере одного свойства, связанного с выбранной осью манипулятора 2, и контроллер 19 выполнен с возможностью генерировать сигнал свойства, указывающий по меньшей мере одно свойство.
Контроллер 19 выполнен с возможностью управления движением манипулятора 2 и, в необязательном порядке, стыковочной детали 18. В зависимости от предпочтения, контроллер 19 может быть внешним, в форме вручную или автоматически оперируемого контроллера 19 (или цифрового компьютера) или внутренним, т.е. встроенным в сам манипулятор 2.
Манипулятор 2 может содержать встроенные датчики, например, кодеры или датчики положения, присоединенные к валам двигателей, и т.п., для регистрации позиций привода сочленений 3, 5, 7, 8, 11, 12 для регистрации позиции рабочего органа относительно внутренней системы координат, которая охватывает пространство сочленения, и для перевода позиции рабочего органа во внешнюю систему координат (обычно, охватывающую декартово пространство). Эти датчики, обычно используемые для управления манипулятором с обратной связью, также, согласно настоящему изобретению, можно использовать для определения данных, которые можно использовать для определения свойств сочленения и связи, например, податливости. Такие параметры как скорость движения, сила или жесткость можно преобразовывать между пространством сочленения и декартовым пространством. Аналогичным образом, параметры, описывающие пространство привода, например, углы сочленения, приводимого в действие силой или крутящим моментом двигателя, можно преобразовывать параметры, описывающие пространство сочленения, например, позиции сочленения, известные из кинематической калибровки. Поэтому, в надлежащих условиях управления, можно предполагать, что данные, полученные регистрацией величин двигателя, содержат информацию об общих свойствах манипулятора, например, податливости связей, и, таким образом, отклонениях позиций рабочего органа вследствие полезной нагрузки и внешних сил.
Манипулятор 2 может быть пристыкован или присоединен к зажимной детали 18, как показано на фигуре, или к другой зажимной детали, в результате чего, манипулятор 2 приобретает зажатую кинематическую конфигурацию. Один способ достижения зажатой кинематической конфигурации состоит в том, что контроллер 19 (автоматически или по командам, подаваемым вручную) управляет манипулятором 2 таким образом, что подвижная часть манипулятора 2 достигает точки в пространстве, где находится зажимная деталь 18. Подвижная часть обычно является концевым фланцем на последней связи манипулятора 2, предпочтительно, снабженным механизмом 16 смены инструментов. Механизм 16 смены инструментов, предпочтительно, согласуется на его стороне инструмента с ответной частью зажимной детали 18, например, выступом 17. Точка в пространстве определяется здесь, таким образом, позицией выступа 18. Контроллер 19 также может управлять зажимной деталью 18 для обеспечения определенной точки в пространстве для стыковки с манипулятором 2. Можно использовать любую комбинацию движения манипулятора и движения зажимной детали, при условии, что манипулятор достигает желаемого зажатого состояния.
В зависимости от свойств, которые нужно получить, на рабочем месте робота можно обеспечить одну или несколько фиксированных точек, заданных, например, стороной инструмента механизма 16 смены инструментов. Использование перенастраиваемой зажимной детали 18, как показано на фиг. 1, позволяет осуществлять стыковку в одном положении, например, фиксированную и мягкую, незаблокированными ногами зажимной детали 18 с податливыми концевыми упорами, допускающими высокоскоростную стыковку. После этого зажатие происходит путем блокировки ног зажимной детали 18 в положении, заданном манипулятором 2. Положениями можно управлять вручную или автоматически.
Точки в пространстве, или зажимная деталь 18, для простоты предполагаются жесткими по сравнению с податливостью манипулятора, но способ можно легко распространить на податливый зажим. Таким образом, зажимная деталь 18 не является жесткой, но имеет известную или заранее определенную жесткость. Жесткость зажимной детали 18 можно измерять с помощью датчиков позиции и силы, и определять стандартными способами или согласно настоящему изобретению как удлинение манипулятора 2. Особыми случаями являются множественные руки манипулятора, с одним или несколькими контроллерами, стыкующиеся друг с другом и попеременно прикладывающие зажимные силы. Стыковочная деталь 18, показанная на фиг. 1, является параллельным механизмом, который позволяет эффективно обеспечивать позы переместимого, но жесткого зажатия.
Другой пример параллельного механизма можно рассматривать как часть манипулятора 2, показанного на фиг. 1, где активация сочленения 7 и, таким образом, оси 3, осуществляется через параллельную тягу 23, соединенную со связью 9. Эту тягу можно рассматривать как параллельную связь в PKM, который является частью всего SKM. Вместо этого, связь 9 можно рассматривать как часть сочленения 7. В этом случае предполагается, что связь 9 только передает силы вдоль своего направления, т.е. только передает тяговые и/или толкательные силы без значительного изгибания и/или кручения, что позволяет включать упругодинамические свойства связи 9 в свойства сочленения, которые можно определять, например, согласно способу, описанному в WO 2014065744 A1. Когда такое предположение оправдывается, этот тип сочленения именуется параллельным сочленением, и манипулятор является SKM.
Некоторые высокоточные роботы и/или машины имеют параллельные компоновки в трансмиссии, например, применительно к сдвоенным двигателям, действующим частично против друг друга во избежание эффектов люфта. Ситуация, когда двигателей и/или приводов больше, чем степеней свободы, именуется избыточной активацией сочленения в описанном случае. Затем свойства обеих ветвей активации можно определять по одному, двойными экспериментами для трансмиссии, приводимой в действие двумя двигателями. Таким образом, избыточно активируемое сочленение является особым случаем способа, представленного в WO 2014065744 A1, и дополнительно здесь не рассмотрено. В случае параллельных сочленений или параллельных связей, избыточная активация означает нагружение некоторых сочленений и связей против друг друга.
Упомянутое устранение избыточной активации означает, что некоторый привод или сочленение временно делается пассивным в ходе идентификации свойств, представляющих интерес. Робот также может включать в себя пассивное сочленение, для особого использования в ходе нормальной работы или переконфигурирования. Такое сочленение можно блокировать под конкретным углом, благодаря чему оставшаяся кинематическая конфигурация особенно пригодна для имеющегося задания. Оно может быть временно пассивным, как часть конкретного динамического поведения (например, колебательного движения), или может получать результирующий угол вследствие некоторого внешнего механизма. В любом случае, пассивные сочленения могут входить в состав кинематической конфигурации в нижеследующем описании. Манипулятор 2, по умолчанию и согласно современным методам работы в промышленности, является полностью активированным, тогда как недостаточно активированный манипулятор имеет меньше осей, чем степеней свободы. Пассивные сочленения представляют недостаточную активацию. Затем либо этими сочленениями и соединенными связями можно управлять тем же способом с адекватной блокировкой и/или фиксацией, либо такое сочленение не влияет на движение через свойства, представляющие интерес, и, таким образом, пассивные сочленения являются управляемыми, но дополнительно здесь не описаны.
Еще один тип манипулятора имеет число степеней свободы манипулятора, которое больше, чем необходимое число степеней свободы рабочего органа, причем последнее, возможно, меньше шести в случае применений и инструментов, которые сами по себе оставляют одну или несколько степеней свободы незаданными. Типичными примерами являются сварка и фрезерование. Тогда одна ось вращения, в идеале, не имеет значения с точки зрения применения, при этом инструмент обладает поворотной симметрией. Поэтому многие роботы для дуговой сварки имеют только пять степеней свободы, а в погрузочно-разгрузочных работах используются роботы с четырьмя степенями свободы для укладки на поддон. Тем не менее, большинство роботов в настоящее время имеют шесть степеней свободы, что приводит, например, к одной избыточной степени свободы для дуговой сварки и двух для укладки на поддон. Манипулятор с по меньшей мере одной избыточной степенью свободы является избыточным манипулятором, который допускает движения в так называемом нуль-пространстве; движение в нуль-пространстве состоит из движения сочленений и связей, но не эффективного рабочего органа. Хотя такой манипулятор, в принципе, более дорог (вследствие дополнительной оси/осей), кинематическая избыточность практически полезна (например, для наилучшей жесткости в ходе фрезерования, ориентация шлангов относительно сварочного пистолета и т.д.). Поскольку избыточное движение инструмента обычно не совпадает с движением, обусловленным какой-либо конкретной осью, все оси манипулятора должны быть хорошо управляемыми, и, таким образом, сохраняется необходимость в идентификации свойств манипулятора.
Избыточные манипуляторы с двумя или более руками, каждая из которых имеет семь или более степеней свободы наподобие человеческой руки, приобретают все большую важность, поскольку они хорошо подходят для осуществления заданий на человеческих рабочих местах. Такой манипулятор позволяет, например, ориентировать локоть таким образом, чтобы добиться наилучших компромиссов между достижимостью, силой, устойчивостью и пространством. Типичным применением является сборка, обычно требующая шести степеней свободы для заготовки и для удерживающего его инструмента, таким образом, оставляющая одну избыточную степень свободы, образующую нуль-пространство. В этом случае движение в нуль-пространстве состоит из движения сочленений и связей, но не рабочего органа. Движения в нуль-пространстве могут осуществляться, таким образом, также изменяя кинематическую конфигурацию, если рабочий орган приобрел зажатую позу. Это предполагает, однако, что совершенно жесткий робот также имеет совершенно верную кинематическую модель во избежание физически невозможной избыточно активируемой конфигурации в некотором измерении, или что робот с некоторыми кинематическими погрешностями также имеет некоторую податливость. Последнее является реалистической и типичной ситуацией с податливыми роботами, которая приводит к проблеме обработки изменений и расхождений в практических применениях вследствие податливостей сочленения и связи. Податливость
Фиг. 4 схематически демонстрирует модель упругости манипулятора 40 с упругими связями 43, 45 и 47 и упругими сочленениями 42, 44 и 46. Моделируя конструкцию манипулятора с использованием упругих сочленений и упругих связей, можно описать податливое поведение манипулятора 40. Манипулятор 40 присоединен к твердому основанию 41. Каждая из упругих связей 43, 45 и 47 представлена линейным пружинным элементом с определенной пружинной постоянной, характеризующей величину, обратную податливости связи. Считается, что каждая из упругих связей 43, 45, 47 имеет постоянную длину. Каждое из упругих сочленений 42, 44 и 46 представлено пружинным элементом, как показано на фигуре. Кроме того, считается, что пружинные элементы приводят к довольно малым отклонениям. В дальнейшем будет описано, как проиллюстрированная упругость обуславливает податливость связей и сочленений манипулятора 2 и как податливость можно определять как свойства связей и сочленений. Свойства могут содержать, например линейную податливость сочленения или связи, ортогональную податливость сочленения, нелинейную податливость связи или ортогональный люфт сочленения.
Фиг. 5 демонстрирует идеальную упругую балку 50 под влиянием силы и крутящего момента, когда один из ее концов жестко закреплен, и другой конец свободно движется. Под идеальной упругой балкой здесь подразумевается, что малые упругие деформации балки обуславливают, по существу, линейное его поведение. Когда балка 50 больше не находится под влиянием силы и крутящего момента, балка 50 возвращается к своей первоначальной форме и ориентации, и, таким образом, здесь равномерно проходит вдоль главной оси 51. Таким образом, балка 50 проходит вдоль главной оси 51 и имеет высоту а и ширину о. Связь манипулятора можно характеризовать как идеальную упругую балку 50. Как явствует из фигуры, балка 50 отклоняется под действием силы и/или крутящего момента посредством изгибания и кручения от главной оси 51 балки 50. Кроме того, упругодинамическая модель манипулятора 2, определенная в зажатой конфигурации манипулятора, является соответствующей квазистатической моделью, которая достаточна для компенсации расхождений вследствие сил, действующих при обработке. Таким образом, полную динамическую модель с более точными инерциями и множественными резонансами (каждый формально вносит вклад с некоторой дополнительной упругой степенью свободы) можно внутренне использовать в контроллере 19, но в дальнейшем можно игнорировать, поскольку мы имеем дело с точностью роботов для лучшего осуществления их заданий, а не с динамикой управления сочленением. Благодаря этому упрощению, можно рассмотреть податливую связь, имеющую шесть дополнительных упругих степеней свободы, которые задают конец связи, т.е. позу следующего сочленения, относительно начала этой связи, т.е. позу предыдущего сочленения. Податливость балки 50 можно характеризовать угловым отклонением от главной оси 51 с использованием поступательных и угловых перемещений δz, δy, εx, εy и εz, как показано на фиг. 5. Ось х проходит вдоль главной оси 51 балки 50, ось y проходит по высоте а связи 50, и ось z проходит по ширине b связи 50. На фигуре δz и δy представляет удлинение вдоль осей z и y соответственно, εx представляет кручение балки 50, εy представляет поворот вокруг оси у, и εz представляет поворот балки 50 вокруг оси z.
Фиг. 6а демонстрирует упругую связь 60 в трехмерной системе координат, заданной осями х, y и z, соответствующими системе координат на фиг. 5. Упругая связь 60 имеет, по существу, упругое поведение идеальной балки 50, показанной на фиг. 5, и подвергается здесь действию соответствующей силы и/или крутящего момента, как для идеальной балки 50. Изогнутая форма связи 60, конечно зависит от ее формы и материалов, из которых она выполнена. Обычно изогнутую форму можно вычислить с использованием общеизвестного метода конечных элементов (FEM), и такой анализ (например, единичной связи) даже может быть включен в вычислительную схему согласно настоящему изобретению (что будет описано на той же теоретической основе, что и FEM). Однако, отражая промышленные потребности в точности рабочего органа, в дальнейшем будем игнорировать форму нагруженных связей, и вместо этого приведем пример структуры, которая поддерживает идентификацию параметров, которые приводят к желаемой точности при использовании в компенсациях посредством контроллера 19. Упругая связь 60 соединяет первое сочленение 61 и второе сочленение 62. Связь 60 и первое сочленение 61 совместно с его трансмиссией образуют ось 64, и первое сочленение 61 выполнено с возможностью вращать связь 60 вокруг оси z. Связь 60, в основном, проходит вдоль оси х, которая ориентирована по линии соединяющей сочленения 61 и 62 перпендикулярно к этим двум осям вращения в их номинальном ненагруженном состоянии. Ось х соответствует главной оси 51 на фиг. 5.
На фиг. 6b, связь 60 проиллюстрирована в двух измерениях в плоскости х-y, для упрощенного случая нагрузки в этой плоскости. На фигурах 6а и 6b, θk и θk+1 обозначают вынужденное вращательное перемещение к сочленениям 61 и 62 вокруг оси z от любого предыдущего податливого сочленения и/или связи, соответственно, и ϕk и ϕk+1 обозначают вращательное перемещение после сочленений 61 и 62 вокруг оси z вследствие вращательного перемещения самого сочленения и вынужденных предыдущих вращательных перемещений θk и θk+1, соответственно. Вращательное перемещение первого сочленения 61 проиллюстрировано как угловое расхождение ϕk-θk вокруг оси z, таким образом, в плоскости х-y. Вращательное перемещение второго сочленения 62 проиллюстрировано как угловое расхождение ϕk+1-θk+1 вокруг оси z, таким образом, в плоскости х-y. Изгибание вокруг оси z связи 60 вследствие упругости связи 60 проиллюстрировано как угловое расхождение θk+1-ϕk, которое равно вынужденному повороту к сочленению 62 (6k+i) минус поворот после сочленения 61 (ϕk).
Фиг. 6 с демонстрирует упругую связь 60 в таком же двухмерном виде, как на фиг. 6b, но с указанным действием силы тяжести. Здесь предполагается, что центр масс 63 связи 60 находится в центре связи 60. Масса связи 60 обуславливает силу тяжести, которой в ходе нормального движения в свободном пространстве противодействуют крутящие моменты на предыдущем сочленении (не показано). Это предыдущее сочленение является левым сочленением 61 на этой фигуре, которое включает в себя действие силы F и крутящего момента М на второе сочленение 62 и, таким образом через изогнутую связь 60 влияет на равновесие крутящих моментов сочленения 61. Результирующая величина вращения в положении сочленения 62 изображена углом θc, таким образом, поворотом вокруг оси z. Перемещение связи 60 в положении сочленения 62 вдоль оси y под действием силы тяжести указано как δ относительно ненагруженной (здесь горизонтальной) осевой линии (например, 51, но не показана). На фиг. 6 с также проиллюстрирована связь 60 в другой возможной позиции, изображенной пунктирной связью 65. Здесь та же нагрузка F и М, выраженная в компонентной системе координат (которая для связи 65 показана пунктирными координатными осями на сочленении 61), дают такие же расхождения δ и θc (не помеченные для связи 65), но направление силы тяжести отличается. Эта зависимость от номинального угла сочленения (здесь, для сочленения 61) критична для управления, но, как следует из фиг. 6с, направление силы тяжести также изменяется вследствие испытываемой податливости. Однако отклонения малы по сравнению с движениями, и изменение силы тяжести вследствие податливости мало, и для типичного манипулятора им можно пренебречь (что и будет сделано в дальнейшем).
Фиг. 6d демонстрирует такую же упругую связь 60, как на фиг. 6с, где масса связи 60 представлена двумя соответствующими силами тяжести половинных масс, действующими на сочленения 61 и 62. Затем можно обеспечить действие массы связи 60 на другие сочленения, а также изгибание связи 60 под действием собственной массы. Это распределение можно использовать в нижеследующих уравнениях. Масса связи 60 может быть заранее определенной или оцениваться с использованием способа, например, объясненного в заявке WO 2014065744 A1.
Фиг. 6е демонстрирует такую же упругую связь 60, как в предыдущих фиг. 6a-6d, когда на связь 60 действуют сила и/или крутящий момент, в результате чего, позиции первого и второго сочленений 61, 61, по существу, не перемещаются, но сама связь 60 показана изогнутой в другую возможную форму, которая являются связью 66, показанной пунктирными линиями. Связь 60 вращательно переместилась вокруг оси z, таким образом, в плоскости х-y, на угол ϕk если смотреть от первого сочленения 61, и вращательно переместилась вокруг оси z на втором сочленении на угол θk+1 если смотреть от второго сочленения 62. Разность углов ϕk и θk+1 соответствует θk+1-ϕk на фиг. 6b. Такого рода расхождение также можно определить с использованием представленного способа.
На фиг. 6a-6d проиллюстрирован частный случай связи 60 с двумя присоединенными к ней сочленениями 61, 62, и параметризованы результирующая податливость в разных направлениях и углы. В дальнейшем будет описан способ получения этих параметров и также получения свойств податливости более сложного манипулятора 2 (фиг. 1).
В целях объяснения способа, на фиг. 7 проиллюстрирована кинематическая схема манипулятора 2. Кинематическая схема демонстрирует связность разных связей и сочленений манипулятора 2. Как показано, манипулятор 2 соединен с твердым основанием связью 22. Основание и связь 22 соответствует основанию, с которым соединено сочленение 3, показанное на фиг. 1. Присоединение основания манипулятора к опорной плите или к полу не рассматривается как операция стыковки и не будет рассматриваться как таковая в этом описании. Остальные связи 4, 6, 9, 10, 13 и 14 и сочленения 3, 5, 7, 8, 11 и 12 также имеют свои дубликаты на фиг. 7.
На фиг. 8 манипулятор 80 проиллюстрирован в двух измерениях, с множеством сочленений 5, 7, 11 и множеством связей 6, 81, 82, 83. Манипулятор 80 на фигуре демонстрирует манипулятор 2 в определенной кинематической конфигурации, где ось 1, 4 и 6 (см. фиг. 1) фиксирована, благодаря чему, оставшийся оси движутся в изображенной одной плоскости. Упомянутые величины представляют одну возможную параметризацию, которая облегчает идентификацию податливости на основании полученных данных датчика. Как следует из ссылочных позиций, сочленения 5, 7 и 11 имеют свои непосредственные дубликаты в манипуляторе 2, показанном на фиг. 1, и, таким образом, являются сочленениями 5, 7 и 11. Кроме того, связь 6 имеет свой непосредственный дубликат, будучи связью 6 манипулятора 2, показанного на фиг. 1. Остальные связи 81, 82 и 83 являются, в этой конфигурации, комбинацией связей и сочленений. Таким образом, связь 81 здесь представляет сочленение 3 и связь 4, связь 82 представляет сочленение 8 и связь 10, и связь 83 представляет сочленение 12 и связи 9, 13 и 14 манипулятора 2, показанного на фиг. 1 и фиг. 7. Величины, проиллюстрированные на фиг. 8, относятся к разным сочленениям и связям. Таким образом, xk обозначает перемещение вдоль оси х соответствующего сочленения, yk обозначает перемещение вдоль оси y соответствующего сочленения, θk обозначает вращательное перемещение до сочленения, ϕk обозначает вращательное перемещение после сочленения, и qk обозначает угол сочленения следующей связи в цепи. Как упомянуто, углы сочленения используются при преобразовании в глобальные координаты.
Способ
На фиг. 9 блок-схема операций демонстрирует этапы способа определения по меньшей мере одного свойства, связанного с выбранной осью манипулятора 2. Как упомянуто ранее, ось задается как сочленение, включающее в себя двигатель и трансмиссию для активации, и присоединенное к нему звено. Звено может содержать одну или несколько связей. Манипулятор 2, согласно способу, управляется контроллером 19 для осуществления разных этапов способа вручную или автоматически. Способ может храниться в виде инструкций робота или компьютера в компьютерной программе Р на компьютерно-считываемом носителе данных 21 и выполняться блоком 20 управления. Для объяснения способа обратимся к блок-схеме операций. Блок-схему операций не следует интерпретировать как несколько этапов, осуществляемых в конкретном порядке; проиллюстрированные этапы могут осуществляться в порядках, отличных от проиллюстрированного.
Согласно способу, подвижная часть манипулятора 2 зажимается в точке в пространстве путем управления манипулятором 2, в результате чего манипулятор 2 приобретает зажатую кинематическую конфигурацию (А1). Как упомянуто ранее, точка в пространстве может обеспечиваться стыковочной деталью 18 (фиг. 1). Манипулятор 2 может быть запрограммирован для смены своего рабочего органа с использованием механизма смены инструментов для соединения с инструментом на стеллаже для инструментов. Манипулятор 2, который не снабжен механизмом смены инструментов в ходе его нормальной работы, можно вручную снабжать таким же или любым другим зажимным приспособлением для осуществления способа, и, таким образом, можно калибровать любой манипулятор 2 робота. Зажатая кинематическая конфигурация ранее была задана как конфигурация манипулятора, где манипулятор пристыкован в заранее определенной позе, которая фиксирует по меньшей мере одну степень свободы рабочего органа (или любую подвижную часть манипулятора 2, которую нужно зажать). Поскольку практично зажимать все шесть степеней свободы рабочего органа (или степеней свободы торцевого фланца или механизма смены инструментов), это и предполагается в дальнейшем. Хотя манипулятор 2 зажимается в точке в пространстве, контроллер 19 выполнен с возможностью считывания выходных значений из внутренних датчиков сочленений манипулятора 2. Эти значения могут быть параметрами трансмиссии, которые можно преобразовывать в параметры сочленения, например, люфт, податливость и другие возможные параметры. Это более подробно объяснено в WO 2014065744 A1 на страницах 13-22 совместно с фиг. 2-7 той заявки.
Способ дополнительно содержит выбор набора сочленений идентификации, содержащего по меньшей мере одно сочленение манипулятора 2, причем по меньшей мере одно сочленение из набора сочленений идентификации выполнено с возможностью управления и отслеживания выбранной оси, по меньшей мере одно свойство которой подлежит определению (А2). Набор сочленений идентификации является набором сочленений, по меньшей мере и обычно одного, которые в ходе нормальной работы манипулятора приводят в действие соответствующий набор связей, свойства которых необходимо определить. Для идентификации связи, изгибающейся в плоскости движения сочленения (фиг. 5) для каждой оси этого набора, управление двигателем осуществляется таким образом, что прилагается определенный крутящий момент на сочленении (с компенсацией нелинейных эффектов трансмиссии сочленения), и измеряются (опять же, с компенсацией нелинейных эффектов трансмиссии сочленения) позиция и крутящий момент этого сочленения. Для идентификации других (ортогональных относительно движения предыдущего движения сочленения) свойств связи, управление сочленением в этом наборе несущественно. Сочленение или сочленения в этом наборе может (могут), таким образом, оставаться неизменяемым(и) или неуправляемым(и), и могут только отслеживаться на предмет соответствия определенным предположениям.
Кроме того, способ содержит выбор набора сочленений возбуждения, содержащего по меньшей мере одно сочленение манипулятора 2, которое, для зажатой кинематической конфигурации манипулятора 2, выполнено с возможностью возбуждения по меньшей мере одной связи, соединенной с по меньшей мере одним сочленением из набора сочленений идентификации (A3). Способ также предусматривает выбор набора сочленений зажимной конфигурации манипулятора 2 (А4). Набор сочленений зажимной конфигурации обычно включает в себя сочленения, которые не присутствуют ни в наборе сочленений возбуждения, ни в наборе сочленений идентификации. Эти сочленения управляются таким образом, чтобы достигать кинематической конфигурации, в которой эти сочленения существенно не влияют на идентификацию свойств осей, и таким образом, чтобы достигать и поддерживать зажатую позу. Для последнего обычно требуется регулировка позы стыковки, обеспеченной зажимным приспособлением, но (обычно PKM) сочленения зажимного приспособления (по определению) не принадлежат ни одному сконфигурированному набору сочленений. По меньшей мере одно сочленение из набора сочленений зажимной конфигурации, согласно одному варианту осуществления, не входит ни в набор сочленений идентификации, ни в набор сочленений возбуждения.
Разные рассмотренные выше наборы сочленений могут быть заранее заданными, могут вычисляться контроллером 19 при выполнении ряда условий, или могут произвольно выбираться, пока используемые матрицы не приобретут достаточно высокий ранг.
Затем способ продолжается путем приведения в действие набора сочленений возбуждения, таким образом, что выбранная ось возбуждается при управлении набором сочленений зажимной конфигурации, при поддержании зажатой кинематической конфигурации (А5). Набор сочленений зажимной конфигурации, согласно одному варианту осуществления, управляется таким образом, что набор сочленений зажимной конфигурации не оказывает существенного влияния на определение по меньшей мере одного свойства, связанного с выбранной осью.
Крутящий момент привода или крутящие моменты, используемые для приведения в действие набора сочленений возбуждения, могут составлять 10-15% максимального крутящего момента привода(ов). При приведении в действие набора сочленений возбуждения отслеживаются одна или более величин, связанных с крутящим моментом привода и/или позицией сочленения, для по меньшей мере одного сочленения в наборе сочленений идентификации и/или наборе сочленений возбуждения (А6). На основании отслеживаемых одной или более величин, определяется по меньшей мере одно свойство выбранной оси (А7). По меньшей мере одно свойство выбранной оси может базироваться на комбинации одной или более отслеживаемых величин, связанных с крутящим моментом привода и/или позицией сочленения, для определения по меньшей мере одного свойства для множества выбранных осей манипулятора 2.
Этапы А1-А6 преимущественно повторяются для множества разных зажатых кинематических конфигураций, чтобы иметь возможность вычисления всех свойств, представляющих интерес. Например, можно определять по меньшей мере одно свойство для каждой из множества выбранных осей манипулятора 2. Таким образом, этапы А1-А6 повторяются, причем достигнутая зажатая кинематическая конфигурация манипулятора 2 отличается, согласно способу, от ранее достигнутой зажатой кинематической конфигурации манипулятора 2, и на основании определенных свойств выбранной оси в разных зажатых кинематических конфигурациях определяется по меньшей мере одно свойство выбранной оси.
Этап А7 может содержать использование метод матрицы жесткости. Метод матрицы жесткости использует соотношения жесткостей связей и сочленений для вывода перемещения связей и сочленений манипулятора 2. Как проиллюстрировано на фиг. 5-6е, манипулятор 2 можно моделировать как набор идеализированных связей, соединенных между собой на разных сочленениях манипулятора 2. Затем свойства жесткости этих элементов можно, с использованием матричного исчисления, скомпилировать в единое матричное уравнение, которое определяет поведение всей идеализированной структуры. В дальнейшем метод матрицы жесткости будет описано со ссылкой на пример простого манипулятора 100, представленного на фиг. 10. Манипулятор 100 содержит две связи, связь А и связь В, соединенные сочленением АВ. На фигуре, один конец связи А соединен с сочленением АВ, и другой конец связи А жестко соединен с основанием. Соответственно, один конец связи В соединен с сочленением АВ, и другой конец связи В проиллюстрирован как жестко соединенный с другим основанием. Это соответствует зажатию манипулятора 100 в определенной зажатой кинематической конфигурации. Связи А и В имеют свою основную протяженность вдоль оси х, и ось y задается перпендикулярной оси х. Конец связи А, соединенный с основанием, образует первый узел, сочленение АВ образует второй узел, и конец связи В, соединенный со вторым основанием, образует третий узел. На фигуре, перемещения узлов проиллюстрированы как xk, которое является перемещением вдоль оси х, yk, которое является перемещением вдоль оси у, θk который является перемещением вокруг оси вращения (оси z) сочленения АВ до сочленения АВ, и ϕk, который является перемещением вокруг оси z после сочленения АВ. Перемещение первого узла проиллюстрировано как x0, y0 и ϕ0, таким образом, начальное перемещение первого узла равно нулю, поскольку первый узел жестко присоединен к основанию. Перемещение второго узла проиллюстрировано как x1, y1, ϕ1 и θ1, и перемещение третьего узла проиллюстрировано как x2, y2 и θ2. Поскольку первый и третий узел не могут перемещаться, х2=0, y2=0 и θ2=0. Здесь также можно обратиться к фиг. 8, демонстрирующей соответствующие перемещения более сложного манипулятора 80.
Пусть∧ обозначает, что координаты компонента заданы в локальной системе координат компонента. В целом можно моделировать упругое поведение любого компонента со степенью свободы
где
Существует много разных вариантов представления структуры связи и матрицы жесткости связи. Для плоского манипулятора, допустимо обеспечивать связи шесть упругих степеней свободы, по три на каждом конце. Матрица жесткости связи для каждой связи должна быть задана для захвата предполагаемых деформаций на компонентном уровне. Матрицу жесткости
где параметры α1…α4 обозначают общие неизвестные параметры жесткости.
Шесть упругих степеней свободы податливой связи возбуждаются не напрямую, а опосредованно через силы от задействованных сочленений, которые зависят от жесткости связи в разных направлениях. Для моделирования отклонения связи вследствие сил/крутящих моментов сочленений, удобно и принято (в механике твердого тела) использовать компонентную матрицу жесткости (как линейное отображение, предполагая, что отклонения связи малы по сравнению с размерами и движениями связи). Для упрощения способа согласно изобретению, а также для практического использования, касающегося идентификации и компенсации, некоторые элементы матрицы жесткости можно задать равными нулю, в том смысле, что они либо равны нулю, либо компонент податливости достаточно хорошо захватывается другими элементами жесткости. Известную жесткость (например, из FEM-анализа связи) можно задавать как постоянный элемент жесткости. На практике, и для упрощения описания, предполагается изгибание связи согласно фиг. 6b, в том смысле, что матрица жесткости связи (3) содержит только четыре параметра, симметрично распределенные в матрице 6×6, соответствующей аксиальному, поперечному и вращательному перемещению на каждом конце. Ниже приведен пример компонентной матрицы жесткости, где компоненты имеют постоянное поперечное сечение с площадью А:
где L обозначает длину связи, E обозначает модуль упругости при растяжении, известный из закона Гука, и I обозначает момент инерции поперечного сечения.
Сочленения также можно представлять многими разными способами. Компонентную матрицу жесткости
где cj обозначает жесткость оси вращения сочленения i. При этом сочленение предполагается твердым во всех направлениях, кроме как вокруг оси вращения. Модель сочленения также включает в себя двигатель, развивающий крутящий момент τ. Тогда суммарная сила на сочленении задается в виде:
где θ - вращательное перемещение до сочленения, и ϕ - вращательное перемещение после сочленения.
Теперь можно построить глобальную матрицу жесткости (MSM) с использованием компонентных матриц жесткости для каждой связи и сочленения. Поскольку матрица жесткости связи задана в локальной системе координат, где матрица жесткости связи постоянна, для построения глобальной матрицы жесткости матрицы нужно преобразовать в глобальную систему координат. Такое преобразование зависит от конфигурации, которая задается координатами сочленения, имеющими элементы степеней свободы манипулятора. Преобразование меняет местами позиции параметров жесткости в компонентной матрице жесткости; однако параметры жесткости остаются неизменными. Поэтому жесткость манипулятора изменяется с конфигурацией, соответствующей преобразованию координат. Здесь, разность позиций привода/двигателя и связи вследствие эффектов трансмиссии обычно не критична, поскольку обычно мала по сравнению с углами сочленения, но, в принципе, углы сочленения существенны (и вычисляются согласно WO 2014065744 A1).
Для каждой отдельно взятой зажатой кинематической конфигурации матрицы жесткости связей можно объединять с образованием более крупной MSM. Для каждой зажатой кинематической конфигурации некоторые элементы MSM равны нулю, а другие отражают постоянные элементы жесткости связи. Для другой конфигурации, другие части MSM не равны нулю и допускают идентификацию посредством измерений, производимых в зажатой кинематической конфигурации. Таким образом, содержимое MSM можно использовать для выбора нескольких конфигураций, что позволяет определить все параметры связи, представляющие интерес, например, путем нелинейной оптимизации. Таким образом, задается структура MSM. Манипулятор 2 может быть снабжен датчиком, выполненным с возможностью генерации сигнала датчика с данными датчика, находясь в одной или нескольких зажатых кинематических конфигурациях, для получения данных датчика, подлежащих использованию при последующей оптимизации. Датчик может представлять собой датчик силы, выполненный с возможностью генерации сигнала датчика с данными силы.
В дальнейшем построение MSM будет описано со ссылкой на фиг. 11а-11b. С координатами перемещения, перечисленными как показано слева и вверху матрицы К на фиг 11а, MSM для SKM приобретает иллюстративную структуру с блоками связи вдоль и вокруг диагонали матрицы, и с блоками сочленения на диагонали, перекрывающей связи, которые она соединяет. Для PKM или любого манипулятора, включающего в себя любое параллельное соединение, существуют элементы MSM, образованные более чем двумя перекрывающимися компонентными матрицами, поскольку существует более двух компонентов, соединенных с одним и тем же сочленением. Например, если связь С соединена с сочленением АВ (вносящим вклад в перемещения x1 и у1), это означает, что больше элементов перекрывается с блочной матрицей 2×2, которая на фиг. 11а является перекрытием связи А и связи В (для глобальных координат перемещения x1 и y1). Параллельное сочленение или избыточный манипулятор также может иметь перекрытия элементов сочленения. Поскольку MSM основана на всех глобальных перемещениях, и любая комбинация звеньев может накладываться на натянутую структуру согласно балансам силы/крутящего момента в положениях перемещение, можно представить любой манипулятор или механизм. Это облегчает определение неизвестных параметров для любого типа робота.
Из законов Ньютона известно, что в статическом случае, сумма всех сил равна нулю. Это справедливо для узлов в нашей модели, а также где-либо еще. Известно, что силы от компонента k представляют собой
газы xk и yk - перемещения в глобальной системе координат, ux проходит вдоль главной оси связи, uy проходит по высоте связи. Изменение координат не влияет на повороты ϕk и θk в плоском случае, но для общей трехмерной системы также существует отображение между вращательными координатами. Из соотношений в уравнениях (7) и (8) можно вывести матрицу преобразования координат L в виде:
Матрица преобразования координат преобразует компонентную матрицу жесткости в локальной системе координат в компонентную матрицу жесткости в глобальных координатах. В 3-мерном случае, когда связи могут иметь любую ориентацию, матрица преобразования имеет более сложный вид, но может задаваться через кватернион, описывающий ориентацию связи. Тогда компонентная матрица жесткости Kk в глобальных координатах к для компонента k задается в виде:
В этом случае силы от компонента k на узлах, соединенных с компонентом k, задается в виде:
Теперь просуммируем все силы, действующие в каждом направлении на каждом узле. Это осуществляется путем добавления компонентных матриц жесткости Kk, выраженных в глобальных координатах, в соответствующие положения в K. Это аналогично построению матрицы жесткости в FEM. Кроме того, имеются некоторые граничные условия на основании манипулятора и зажатом рабочем органе, здесь перемещения равны нулю. Процесс построения проиллюстрирован на фиг. 11а. Как указано на фиг. 11а, существуют прямоугольные блоки матрицы К MSM, которые равны нулю, т.е. не являющиеся частью каких-либо помеченных подматриц. Иллюстративная блочная структура матрицы K, конечно зависит от перечисления перемещений. Перечисление, используемое в этом примере, записано вверху и слева матрицы K на фиг. 11а. Перекрывание блоков матрицы означает наличие суммирования влияний перекрывающихся компонентов, включающих в себя тригонометрию, необходимую для преобразования локального перемещения в глобальное перемещение согласно строке матрицы K, таким образом, что равновесие сил/крутящих моментов поддерживается в точке с этой глобальной координатой. В этом примере, элементы связи А, которая перекрывается с элементами связи В, образующие здесь блочную матрицу 2×2 для глобальных координат перемещения x1 и y1. Аналогичным образом, сочленение АВ перекрывается со связями, с которыми оно соединено. Поскольку это не пассивное сочленение, крутящий момент на сочленении τ, обусловленный активацией (двигателем через трансмиссию, не показаны на фиг 10) приводит к образованию ненулевых элементов в этих строках вектора F. Дополнительно, для каждой зажатой конфигурации некоторые из элементов матрицы связей MSM равны нулю, тогда как другие элементы MSM имеют значения, представляющие жесткости связей и сочленений. В отличие от уравнения (1), которое включает в себя компонентную матрицу жесткости в координатах, локальных относительно связи, система, изображенная на фиг. 11а, следующая из уравнения (12) и уравнения (13), опирается на глобальную систему координат, и, таким образом, постоянная матрица жесткости связи появляется в MSM посредством соответствующих преобразований, которые для каждого элемента включают в себя тригонометрические функции. Эти функции могут выражаться неявно кватернионными элементами, представляющими ориентацию связи, соответствующую углам сочленения q (см. фиг. 8).
Вышеописанное моделирование обеспечивает систему уравнений в форме Ku=F. Пусть nα - количество упругих степеней свободы податливого манипулятора, которое эквивалентно количеству строк и столбцов в и равно количеству строк в u или F. Матрица К состоит из nα неизвестных параметров жесткости
и
что можно осуществлять с использованием традиционного ньютонова итерационного решателя. Таким образом, оптимизация осуществляется на основании одной или более отслеживаемых величин. В частности, функция S линеаризуется к виду:
где S0=S(X0) и Х0 - начальная оценка неизвестных параметров, Ik - якобиан S(X) относительно параметров жесткости αk и Ju - якобиан относительно деформаций uk для одной и той же начальной посылки X=X0. Вектор X решается итерационным методом с приращениями δX полученными путем решения уравнения:
Якобиан имеет nu строк и nα+nu-3 столбцов, и всегда остается сингулярным при na>6. Для преодоления сингулярностей, манипулятор располагается в дополнительных конфигурациях. Для каждой новой конфигурации получаем nu новых уравнений, а также nu-6 новых неизвестных. Параметры жесткости одинаковы во всех конфигурациях, тогда как деформации отличаются. Поэтому вектор X прирастает nu-6дополнительными деформациями. На столько же увеличивается количество столбцов якобиана. Затем можно решать глобальную матрицу жесткости и определять параметры жесткости
Минимально возможное количество конфигураций для получения несингулярного якобиана составляет:
Из уравнения (14) следует только то, что якобиан гарантированно является сингулярным, если количество уравнений меньше nCONF, однако может иметь место линейная зависимость между столбцами, и может быть полезной для добавления дополнительных конфигураций. Два якобиана вычисляются для каждой конфигурации и объединяются в глобальный полный якобиан, как показано на фиг. 11b.
Способ проиллюстрирован здесь в связи с упрощенным примером, приведенным на фиг. 10, но следует понимать, что способ можно применять к любому манипулятору, например, манипулятору 2, показанному на фиг. 1.
Манипулятор 2 подвергается действию силы тяжести, и масса манипулятора 2, таким образом, влияет на форму связей и приводит к отклонению компонентов манипулятора. Это означает, что сила тяжести дополнительно изгибает связь. Гравитационное влияние можно подразделить на гравитационное влияние на связь и гравитационное влияние на сочленение. Согласно одному варианту осуществления, способ содержит определение значения гравитационного воздействия, действующего на выбранную ось, и компенсацию определенного по меньшей мере одного свойства выбранной оси в отношении определенного значения гравитационного воздействия. Объясненная матрица (3) жесткости связи, в принципе, моделирует это изгибание, вызванное тяготением, но различие состоит в том, что, хотя матрица жесткости связи (3) захватывает изгибание вследствие сил F и крутящих моментов М, сила тяжести влияет на другое неизвестное положение на связи. Одна приемлемая модель в целях компенсации основных динамических эффектов состоит в предположении, что масса связи является точечной массой в центре масс связи, как представлено на фиг. 6с, и что связь имеет равномерное распределение изгибания между соседними сочленениями, как представлено на фиг. 6d. С одной стороны это выглядит, как противоречие, поскольку распределенное и равномерное изгибание предполагает распределенную массу, в отличие от точечной массы предложенной упрощенной модели гравитационного влияния на связь. С другой стороны, такое упрощение является согласованным и имеет ряд преимуществ:
- полный якобиан после всех необходимых экспериментов является частью переопределенного уравнения, или системы уравнений, решаемых посредством вычисления псевдообратных матриц или нелинейной оптимизации с последующим устранением неточностей.
- предположения согласуются с конструкцией большинства современных роботов.
- более детализированная модель требуют FEM-анализа (или аналогичного моделирования нежесткого тела) связи, который может осуществляться, но требует инженерного искусства, которое способ этого изобретения на практике избегает.
- параметры жесткости
- существует (после отдельных экспериментов в свободном пространстве, определяющих гравитационные воздействия на сочленение) ясный и автоматический способ включения гравитационных воздействий на связь в идентификацию свойств связи. Даже если эти эффекты не являются в точности истинными, они являются подходящими упрощениями для компенсаций, которые используют свойства связи.
- квазистатическое предположение для упругодинамических моделей предусматривает, что инерция связи вокруг ее центра масс пренебрежимо мала.
Согласно одному варианту осуществления, способ содержит сравнение по меньшей мере одного свойства с предыдущим полученным значением свойства или заранее заданным значением свойства, определение значения разности между по меньшей мере одним свойством и предыдущим полученным значением свойства или заранее заданным значением свойства, сравнение значения разности с пороговым значением разности и определение износа манипулятора на основании результата сравнения. Таким образом, износ манипулятора можно определять путем анализа, отличается ли определенное свойство от каких-либо предыдущих полученных значений свойств или заранее заданного значения свойства, представляющего свойство выбранной оси, например, отсутствие существенного износа или допустимый износ. Например, значения свойства можно определять в разные моменты времени и сравнивать. Если разность значений больше порогового значения разности, можно определить, что выбранная ось изношена, и, возможно, ее части подлежат замене.
Согласно одному варианту осуществления, манипулятор является параллельным кинематическим манипулятором.
Согласно другому варианту осуществления, манипулятор является многоруким манипулятором или множественными роботами с некоторым совместно используемым рабочим местом. Тогда способ можно осуществлять, обеспечивая зажатую кинематическую конфигурацию путем прижатия руки манипулятора одного манипулятора (или любой его выбранной подвижной части) к руке манипулятора любого другого манипулятора (или любой его выбранной подвижной части).
Согласно одному варианту осуществления, способ содержит получение конкретных кинематических параметров посредством кинематической калибровки манипулятора 2 и обновление кинематических параметров на основании по меньшей мере одного определенного свойства выбранной оси.
Определенное по меньшей мере одно свойство манипулятора 2 можно использовать для множества применений и способов. Например по меньшей мере одно свойство можно использовать для обновления номинальных кинематических параметров манипулятора 2. По меньшей мере одно свойство можно использовать для кинематической калибровки манипулятора. Согласно другому варианту осуществления по меньшей мере одно свойство используется для обновления программ робота или параметров управления движением манипулятора 2.
Изобретение также относится к компьютерной программе Р, связанной с системой 1, причем компьютерная программа Р содержит компьютерные инструкции, предписывающие блоку 19 управления осуществлять способ согласно любому из ранее проиллюстрированных этапов. Изобретение дополнительно относится к компьютерному программному продукту, содержащему компьютерные инструкции, хранящиеся на компьютерно-считываемом носителе данных 21 для осуществления способа согласно любому из ранее проиллюстрированных этапов. Кроме того, изобретение относится к компьютерному программному продукту, содержащему по меньшей мере одно свойство, полученное при осуществлении способа согласно любому из ранее проиллюстрированных этапов, в котором по меньшей мере одно свойство хранится на компьютерно-считываемом носителе данных 21.
Проиллюстрированный способ может осуществляться для множества роботов одной и той же серии для получения номинальных средних значений для свойств связей и сочленений, которые, с использованием статистики, можно использовать для определения статистического распределения этих свойств по серии роботов. Затем эти данные можно использовать для компенсации податливостей связей и сочленений в роботе того же типа.
Объясненный выше способ обеспечивает повышенную точность при определении податливости робота, чем предыдущие известные решения. Затраты можно снизить, например, ввиду отсутствия необходимости в калибровочных системах или демонтаже робота или блокировке определенных частей для осуществления способа, что также упрощает осуществление способа по сравнению с предыдущими известными решениями.
Пример
Теперь, со ссылкой на фиг. 12a-12d, рассмотрим пример, демонстрирующий манипулятор 80 (фиг. 8), используемый в примере в недеформированном (R1) и деформированном состояниях (R2) в множестве зажатых кинематических конфигураций. Деформации на фигурах для наглядности преувеличены. Манипулятор 80 содержит три сочленения и четыре связи. Каждая связь имеет четыре параметра жесткости, и каждое сочленение имеет один параметр жесткости. Крутящие моменты двигателей прилагаются на сочленениях, что обеспечивает деформацию манипулятора. Значения сочленения при моделировании зажатого манипулятора, были произвольно выбраны как число между -2 и 2 радиан, и крутящие моменты двигателей были выбраны произвольно как число между -1 Нм и +1 Нм, и для составления уравнений использовалось 16 конфигураций, четыре из которых показаны на фиг. 12.
Манипулятор 80 является плоский видом манипулятора 2 в определенной кинематической конфигурации. Таким образом, сочленения 1, 4 и 6 манипулятора 2 образуют набор сочленений зажимной конфигурации. В этом примере со случайным возбуждением, все остальные сочленения принадлежат как набору сочленений идентификации, так и набору сочленений возбуждения. Этот подход полезен в отсутствие высокоуровневой информации о конструкции робота, но квалифицированный оператор может выбирать конфигурации (обычно с углами, более близкими к прямому), когда сочленения разделены по разным наборам, что требуют меньше конфигураций для определения всех свойств.
Отдельные параметры жесткости манипулятора были получены с использованием значений крутящего момента и значений силы двигателя, как в случае использования датчика силы/крутящего момента на рабочем органе (также дающего базовые силы, исходя из того, что сила тяжести и крутящие моменты двигателей известны). Таким образом, силы на любой из концевых точек манипулятора известны (т.е. F и R на фиг. 11а известны). Рабочий орган манипулятора зажимается в наборе фиксированных позиций при осуществлении способа, но без необходимости в дополнительном зажатии между сочленениями или связями и демонтажа каких-либо компонентов. Этот пример и численные решения пригодны для описанного последовательного манипулятора, но те же принципы можно применять к параллельным кинематическим манипуляторам. Упругости моделируются матрицами жесткости для каждого компонента, которые объединяются в глобальную матрицу жесткости для всех компонентов системы манипулятора аналогичным образом, как собираются элементы в FEM. Как указано ранее, податливость связи можно характеризовать как изгибание, удлинение и кручение связи вследствие движения сочленений, влияющих на связь, а также вследствие сил тяжести, действующих на связь и сочленение. Традиционная кинематическая модель манипулятора используется для определения новой позиции и ориентации компонентов в модели жесткости вследствие податливости и т.д. Затем деформации предполагаются малыми, что позволяют аппроксимировать упругое поведение линейной моделью в недеформированном состоянии. В этом случае на выходе кинематической модели получается информация, необходимая для преобразования каждой компонентной матрицы (3) жесткости в глобальную систему координат совместно с описанием отображения локальных степеней свободы компонента в глобальные степени свободы. В случае будущего чрезмерно податливого манипулятора, для которого предположение о малых деформациях не выполняется, глобальная матрица жесткости зависит от позиций и ориентаций компонентов (т.е. сочленений робота), а также деформаций компонентов.
Этот пример следует рассматривать лишь как иллюстративный пример способа изобретения, но не как ограничение изобретения, которое непосредственно распространяется на другие кинематические структуры, на три измерения и/или на манипуляторы с дополнительными степенями свободы.
Практическое использование
Согласно еще одному варианту осуществления, способ содержит определение одного или нескольких свойств, не удовлетворяющих предположениям описанных моделей, или наличия таких свойств. Когда предположения модели выполняются, и при достаточных численных условий, норма остатка г, которая вычисляется из вышеупомянутых уравнений (12), (13) и (14), практически равно нулю. Благодаря правильному масштабированию величин, численное условие улучшается, и уравнения решаются всего за несколько итераций. Если же решатель не сходится к малому остатку, манипулятор имеет какое-то не смоделированное свойство, например, разрушенные подшипники в сочленении или какой-либо другой механический дефект, обусловленный нарушением конструкции или условий производства того или иного соединения. В порядке примера, фиг. 13а и 13b демонстрируют данные использования способа, описанного в WO 2014065744 A1 для определения параметров трансмиссии манипулятора, в этом случае для манипулятора шести степеней свободы с максимальной полезной нагрузкой 185 кг, но нагруженного примерно на 15% максимального крутящего момента оси 2 и оси 3 в зажатой конфигурации. Этот робот (не показан) имеет оси, аналогичные показанным на фиг. 1, но без параллельной части 23 оси 3.
Фиг. 13а демонстрирует измеренные величины позиции и крутящего момента для оси 2. Движение начинается в центре с последующими несколькими циклами движения с практически повторяющимся поведением. Вертикальная разность между кривыми равна удвоенному трению в сочленении, и наклон равен жесткости сочленения. Незначительное изменение этих двух параметров, очевидно, является повторяющимся, что позволяет скомпенсировать его посредством управления сочленением, таким образом, что предположения моделей сочленения и связи очень хорошо выполняется.
Фиг. 13b соответствует фиг. 13а с несколькими циклами нагрузки, но для оси 3, которая демонстрирует неидеальное поведение. В основном, наклоны (линий, пересекающих нулевой уровень крутящего момента), соответствующие жесткости сочленения, которая зависит от направления нагрузки, и вертикальный зазор, демонстрирующий удвоенное трение в сочленении, не согласуется ни с одним строго определенным значением параметра. Использование этого сочленения в наборах сочленений возбуждения или идентификации, со значениями из более чем одного цикла, приводит к слишком большому остатку, и наибольшие элементы остатка можно использовать для определения сбойного сочленения.
Для прилагаемых циклических нагрузок, графики зависимости позиции от крутящего момента, показанные на фиг. 13а и 13b, должны быть одинаковыми для каждого цикла. Напротив, хотя кривая нагрузки на фиг. 13а демонстрирует предполагаемую повторяемость, кривая на фиг. 13b отличается для разных циклов. Таким образом, вследствие механического дефекта локтя этого робота, в таком случае остаток г остается больше предполагаемого, если измеренные величины получаются из таких множественных циклов. Тогда ненулевые элементы г содержат информацию о том, какая часть манипулятора является проблемной, несмотря на отсутствие численного значения, представляющего определенное свойство, поскольку это выходит за рамки модели, которая представляет правильно действующие руки робота. Таким образом, такую ситуацию можно обнаруживать современным способом.
Благодаря разделению сочленений таким образом, что неидеальные оси, которые были только осью 3 для упомянутого робота, имеют свои сочленения в наборе сочленений зажатой конфигурации с постоянной нагрузкой в ходе определения свойств всех остальных связей, остаток для этой оптимизации (не определяющей параметры оси 3) очень близок к нулю. Второй набор экспериментов, где исследуется только ось 3, подтверждает несогласованность. Специалист в данной области техники может наблюдать проблему, изучая фиг. 13b, но численная проверка остатка согласно настоящему изобретению больше подходит для анализа самих роботов.
Настоящее изобретение не ограничивается вышеописанными предпочтительными вариантами осуществления. Можно использовать различные альтернативы, модификации и эквиваленты. Например, зажатие предпочтительно выполнять, ограничивая одну или несколько степеней свободы в обоих направлениях соответствующего движения, но разделяя его на две части для каждой степени свободы, двойные эксперименты, охватывающие одну сторону, могут, в принципе, осуществляться и затем совместно согласовываться. Вывод состоит в том, что роботы, вступающие в контакт с любым объектом, который является твердым или имеет известную податливость, будут способны определять некоторое свойство сочленения и/или связи. Поэтому вышеописанные варианты осуществления не следует рассматривать как ограничение объема изобретения, который задается нижеследующей формулой изобретения.
Изобретение относится к способу и системе для определения податливости, связанной с выбранной осью манипулятора. Изобретение позволяет моделировать упругость связей и сочленений манипулятора и определять результирующую податливость. Способ используют для управления манипулятором таким образом, что определенные величины, связанные с крутящим моментом привода и/или позицией сочленения, можно определять для определенной кинематической конфигурации манипулятора. В зависимости от сложности манипулятора манипулятор управляется во множестве разных кинематических конфигураций, и в этих конфигурациях определяются величины. После этого определяют матрицу жесткости для каждого компонента манипулятора, и глобальную матрицу жесткости для манипулятора в целом для определения податливости выбранной оси. 3.н. и 33 з.п. ф-лы, 13 ил.