Архив июля, 2011

Прямая задача о скорости состоит в определении вектора скорости рабочего органа в декартовой системе координат по заданным обобщен­ным координатам звеньев.

Для решения поставленной задачи продифференцируем по времени систему уравнений (1):

Полученную систему представим в матричной форме:

где- вектор-столбец декартовых скоростей рабочего

органа;- вектор-столбец обобщенных скоростей

манипулятора; J – матрица Якоби размерности (2 х 2).

Элементами матрицы Якоби являются соответствующие частные производные, входящие в выражения (5):

Элементы матрицы Якоби зависят от длин звеньев и значений обобщенных координат, определяющих текущую информацию манипу­лятора.

Решим систему алгебраических уравнений (1) относительно обоб­щенных координат (q1, q2). Введенные дополнительные переменные   представлены на рисунке.

По теореме косинусов имеем для треугольника ОРА:

Отсюда определяем значение угла Учитывая, что уголполучаем выражение для второй обобщенной ко­ординаты:

По теореме синусов определим си­нус угла

Подставим найденное выражение (2) в формулу (3):  Из прямоугольного треугольника ОРВ имеем

Тогда получаем следующее выражение для первой обобщенной ко­ординаты:

где

Найденное решение (2), (4) обратной задачи о положении для двух-звенного манипулятора требует вычисления обратных тригонометриче­ских, степенных и дробных функций. Решение является неоднозначным, в особых конфигурациях возникает неопределенность.

Прямая задача о положении состоит в определении декартовых ко­ординат (х, у) характеристической точки Р манипулятора по заданным обобщенным координатам (q1, q2) многозвенного механизма.

Решение этой задачи используется при построении рабочей зоны манипулятора (п. 1.2). Также полученная система уравнений является исходной для решения последующих кинематических задач. Полученное решение представляет собой совокупность двух нелинейных функций, которые устанавливают связь между обобщенными и декартовыми коор­динатами манипулятора:

При анализе свойств и разработке алгоритмов управления многосте­пенными мехатронными системами требуется решение четырех основ­ных кинематических задач:

•  прямой задачи о положении;

•  обратной задачи о положении;

•  прямой задачи о скорости;

•  обратной задачи о скорости.

Рассмотрим методику их решения на примере двухзвенного мани­пулятора типа "SCARA", представленного на рис. 1.14.

При этом обработка навигационных переменных, а также парамет­ров текущего состояния робота осуществляется на управляющем компь­ютере в рамках работы управляющей программы независимо от операто­ра и временной задержки сети Интернет. Таким образом, в случае воз­никновения критического режима работы аварийный останов робота произойдет автоматически по сигналу управляющей программы.

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

Основными частями разработанного программного комплекса явля­ются управляющая роботом программа и CGI-модуль. Разработаны мето­ды, позволяющие осуществить интеграцию этих двух частей таким обра­зом, что с помощью CGI-модуля оператор имеет возможность запускать и останавливать управляющую программу, а также изменять значения ее переменных. За счет такой интеграции удалось значительно повысить скорость обработки команд оператора, а следовательно, и надежность системы дистанционного управления, работающей в условиях неста­бильности канала связи – сети Интернет и возможных непредсказуемых изменений в окружающей мобильный робот среде.

Оператору предоставляется возможность давать команду "старт/стоп", изменять скорость и направление движения робота. Теку­щие значения сигналов с датчиков отображаются в виде графиков, стре­лочных и цифровых индикаторов на динамически обновляемой web-странице на мониторе оператора. Реализована также передача видеоизоб­ражения с камеры.

подпись:

На рис. 6.5-6.8 показаны модули, предназначенные для обработки и преобразования сенсорной информации, поступающей от системы тех­нического зрения, ультразвуковых и микроволновых датчиков, а также угловых датчиков колес мобильного робота.

подпись:

Для создания человекомашинного интерфейса – клиентской части системы управления – необходимо создать HTML-документ, в котором реализован интерфейс с оператором. В языке HTML это возможно по­средством форм. При их разработке использована встроенная возмож­ность Lab VIEW по опубликованию в виде HTML лицевой панели вирту­ального инструмента.

Серверная часть состоит из исполняемого модуля, решающего ос­новные задачи обработки данных, поступающих от оператора, обращения к управляющей роботом программе и формирования ответа в формате HTML. Как было отмечено выше, такой модуль называется CGI-модулем и реализуется на базе технологии общего интерфейса маршрутизации.

Для реализации взаимодействия клиент-сервер важно, какой метод HTTP-запроса использует клиентская часть при обращении к web-серверу. В общем случае запрос – это сообщение, посылаемое клиентом серверу. Первая строка HTTP-запроса включает в себя: метод, который должен быть применен к запрашиваемому ресурсу, идентификатор ре­сурса (UPJ-Uniform Resource Identifier) и используемую версию HTTP-протокола. В рассматриваемом случае клиентская часть применяет мето­ды запроса POST и GET.

Метод POST используется для запроса серверу, чтобы тот принял информацию, включенную в запрос, как относящуюся к ресурсу, указан­ному идентификатором ресурса. Метод GET используется для получения любой информации, идентифицированной идентификатором ресурса в HTTP-запросе. CGI определяет 4 информационных потока: переменные окружения, стандартный входной поток, стандартный выходной поток.

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

подпрограмм – виртуальных подприборов. Каждый из них выполняет определенный набор функций и для каждого строго определены входные и выходные параметры. Соединения между функциональными блоками отражают потоки данных при работе программы, а объединение несколь­ких функциональных блоков в "рамки" – отражает использование таких структур, как циклы, последовательности, case-структуры.

Использование среды Lab VIEW при разработке управляющей про­граммы позволило за счет подключения внешних библиотек обеспечить работу с многофункциональной платой ввода-вывода Lcard-650. Таким образом, переменные определяют изменение сигнала на выходе ЦАП платы и управляют переключением цифровых линий. Оператору также предоставляется возможность изменять параметры АЦП (частоту дискре­тизации, номера опрашиваемых каналов и т.п.) и наблюдать показания датчиков в виде графиков, стрелочных и световых индикаторов на лице­вой панели.

В числе других достоинств LabVIEW можно отметить возможность встраивания в блок диаграммы подпрограмм пользователя, написанных на традиционных "текстовых" языках программирования (Си, С++, Pascal, Visual Basic), компилированных в виде динамически подключае­мых библиотек, а также скриптов, написанных в широко распространен­ной среде MatLab. Это позволяет обеспечить преемственность программ­ного обеспечения и исключает необходимость повторной разработки ра­нее созданных подпрограмм.

Решающими аргументами в пользу LabVIEW при выборе средства разработки являлись следующие преимущества:

1.  Возможность разработки CGI-приложений, что позволяет реали­зовать концепцию интеграции программного обеспечения web-сервера с управляющей роботом программой.

2.  Поддержка операционной системы жесткого реального времени LabVIEW RT, что позволяет осуществлять разработку кода, а также мо­ниторинг и отладку программы в среде LabVIEW под управлением опе­рационной системы Microsoft Windows, а затем загрузить созданный код на компьютер (бортовой контроллер), работающий под управлением опе­рационной системы жесткого реального времени.

3.  Наличие в дополнительной библиотеке "Internet Developers for G Toolkit" встроенного G web-сервера – базисного компонента, позволяю­щего на его основе разрабатывать интернет-приложения.

Программы в языке G принято называть виртуальными приборами – VI (virtual instrument – англ.). Программа состоит из диаграммы и лице­вой панели виртуального прибора. Оператор имеет возможность изме­нять значения переменных, определяющих скорость робота, направление движения и т.д., нажимая на кнопки и переключатели, поворачивая регу­ляторы на лицевой панели виртуального прибора (рис. 6.3).