Смекни!
smekni.com

Промислові роботи (стр. 8 из 12)

Трьохмірний зір. Задачі, розглянуті вище, являються двомірними. Для робототехнічних систем дуже важливі і трьохмірні задачі. Інформація відносно дальності необхідна по ряду причин. Робочий простір по суті трьохмірний, хоча спеціальні засоби і обмеження можуть зменшити потребу в третьому вимірі, така інформація все ж необхідна. Штамповані плати і інтегральні схеми мають важливі вертикальні компоненти. Маніпулювання в робочому просторі в основному трьохмірне, це відноситься і до задачі монтажу, де необхідно користуватися інформацією відносно глибини. Інформація відносно дальності важлива також і в тому відношенні, що це може часто спростити розпізнавання форми, орієнтацію, а також складність і габарити роботів.

Розпізнавання являється одним з етапів рішення трьохмірних задач. Наприклад, в триангуляційній схемі необхідно ідентифікувати одні і ті ж точки предметів в різних ракурсах. При розпізнаванні сцен інформація по дальності дозволяє проводити просторову сегментацію і тим самим виділяти окремі предмети в робочому просторі, відновлювати просторову форму об’єктів, для цього необхідна калібраційна процедура відповідності координатної системи відеодатчика з координатною системою робота.

Одним з шляхів підвищення точності маніпуляторів являється збільшення їх механічної складності, що зв’язане із збільшенням маси і габаритів. Більш легкі і дешеві маніпулятори при збереженні точності позиціювання можна отримати за допомогою зворотнього відеозв’язку. Такий відеозв’язок дозволяє корегувати рух захватного механізму по траєкторії, оперативно виробляючи команди корекції, що забезпечує задану точність без використання прецизійних механізмів.

9.2 Програмування обчислювальних пристроїв робототехнічних систем

В даному розділі розглядатимуться роботоорієнтовні мови програмування. Поряд з традиційними методами програмування увага приділяється також програмування робототехнічних систем з використанням графічних засобів.

Методи і мови в програмуванні роботів.

Методи програмування роботів можна розділити на наступні:

- пряме навчання;

- роботоорієнтоване програмування;

- задачно-орієнтоване програмування.

Пряме навчання – це простий метод програмування роботів, одержав найбільше поширення. Він передбачає ручне переміщення робота у всі потрібні положення і запис відповідних їм координат з’єднання. Крім того, для деяких положень вказується необхідність виконання таких операцій, як змикання захватного пристрою та ін. Виконання програми полягає в переміщенні робота у відповідності з заданою послідовністю положень. Пряме навчання – простий і легкий в реалізації метод програмування ,однак для нього характерні суттєві обмеження. Цей метод не потребує застосування універсальних обчислювальних машин, тому він був широко розповсюджений на протязі ряду років, доки введення обчислювальних засобів в промислові роботи настало економічно оправданим. Обмеження цього методу пов’язані з неможливістю використання давачів. Користувач визначає послідовність дій роботів, яка не може містити умовних переходів, обчислювальних і циклічних операцій. Цей метод в основному ефективний в деяких областях, зв’язаних з точковим зварюванням, фарбуванні і при простих завантажувально – розвантажувальних роботах. В більш складних технологічних процесах, таких, як механічне складання чи контроль якості, послідовність дій робота необхідно визначати в залежності від сигналів давача, а також від інформації, яка отримується з баз даних або яка отримується в результаті тих чи інших вимірів.

В методі робототехнічного. Перевага цього методу заключається в можливості використання сенсорної інформації від давачів сил, тактильних давачів та інших для корекції руху роботів. Завдяки використанню давачів робот може функціонувати в ситуації, коли для даних про зовнішні об’єкти властива деяка ступінь невизначеності, що розширює область застосування робототехніки. До недоліків робототехнічних мов відноситься те, що користувач повинен мати достатньо високу кваліфікацію в області програмування.

Спростити процедуру програмування можна використанням в робототехнічних мовах програмування методів машинної графіки. Цей шлях пов’язаний з заміною методу прямого вивчення моделюванням робочого простору роботів.

В методі задачно-орієнтованого програмування визначається не рух роботів, а бажане розміщення об’єктів. Задачно-орієнтоване програмування дозволяє абстрагуватися від особливостей конкретного робота, і при цьому користувачу не приходиться визначати траєкторії руху і положення, які залежать від геометрії і кінематики робота. Вихідною інформацією для задачно-орієнтованого програмування являється геометрична модель робочого простору і робота.

Задачно-орієнтовані системи програмування називаються також системами моделювання робочої обстановки.

На даний момент розроблено велике число систем програмування роботів на основі методів прямого вивчення і роботоорієнтованого програмування. В той же час методи задачно-орєнтованого програмування знаходиться на стадії експериментального дослідження. Якщо провести аналогію з мовами програмування ЕОМ, то задачно-орєнтоване програмування відноситься до роботоорієнтованого програмування так само, як і мови високого рівня відносяться до мови асемблера і інших мов низького рівня.

Роботоорієнтовані мови програмування. Розглянемо декілька роботоорієнтованих мов.

1. МНІ Ця роботоорієнтована мова програмування, створена для одного з перших роботів, керованих за допомогою ЕОМ, який був розроблений в Массачусетському технологічному інституті(США).Основні прийоми програмування в системі МНІ базується на концепції обережного руху, тобто руху, який здійснюється доти, поки не буде отриманий певний сигнал від давача .За допомогою МНІ неможна виконати арифметичні та інші дії, які виходять за рамки опитування давачів.

2. WAVE Мова створена в Стенфордському університеті(США).Основні допуски закладені в цій мові полягають в тому, що параметри руху можуть бути розраховані наперед і в процесі виконання руху необхідні лиш деякі відхилення від заданої траєкторії.

3. MINI Мова MINI отримана шляхом введення в мову LISP деякого числа додаткових функцій, які забезпечують сумісність з спеціалізованою обчислювальною машиною, на якій виконується програма в реальному масштабі часу. Мова використовується для програмування роботів ,виконавчий орган яких переміщається в декартовій системі координат

4. В мові AL об’єднуються специфічні робототехнічні функції і можливості мов програмування високого рівня, таких як ALGOL і PASCAL .В цій системі програма виконується на двох ЕОМ. На першій – компіляція програми, на другій – отримана програма низького рівня виконується в реальному часі на керуючій ЕОМ.

5. VAL. Ця система програмування представляє собою інтерпритатор, вдосконалені методи розрахунку траєкторії дозволяють виключити етап попередніх розрахунків. Система VAL допускає сумісність з системою технічного зору роботів і може визначати систему координат деталей, потрапивших в поле зору телекамери.

6. AML. За допомогою цієї мови можна запрограмувати алгоритм взаємодії з системою технічного зору, також можна виконувати операції над векторами і матрицями повороту, а також програмувати алгоритми планування траєкторії при обмеженнях по швидкості та положенню робота.

7. ТЕАСН. У цій мові вирішуються дві проблеми, яких не торкалися в інших мовах програмування: парелельне виконання декількох задач і написання роботонезалежних програм. Однак навіть засобів такої спеціально розробленої мови, як ТЕАСН не завжди достатньо для розрахунку складних задач групового управління.

Задачно-орієнтоване програмування. Опис завдання на робототехнічних мовах передбачає специфікацію дій, необхідних для їх виконання роботом. При задачно-орієнтованому програмуванні завдання вказується шляхом специфікації дій, які виконуються над об’єктами. За допомогою транслятора задач задачно-орієнтовані специфікації перетворюються в роботоорієнтовані. Для цього необхідна наявність опису об’єктів, над якими проводяться маніпуляції робота, і середовища, включаючи опис його початкового та кінцевого стану. Транслятор задач генерує роботоорієнтовані інструкції, які дозволяють досягти бажаного кінцевого стану із вихідного початкового. Для надійного виконання задач використовуються методи обережного руху, а також методи знаходження помилок. Тому транслятор задач повинен забезпечувати синтез роботоорієнтованої програми, в якій проводиться аналіз сенсорної інформації.

Задачно-орієнтоване програмування являється продовженням робіт в області автоматизованих систем проектування, а також систем штучного інтелекту.

Трансляцію завдання можна розділити на три етапи: Моделювання робочої установки, вказання задачі і синтез програми управління роботом.

Моделювання робочої установки. Модель містить наступну інформацію:

- геометричний опис об’єктів і роботів в робочому просторі, фізичний опис всіх об’єктів зі вказанням моментів інерції і значень мас;

- кінематичний опис всіх зв’язків;

- описання характеристик роботів – з’єднань, меж рухомості, допустимих прискорень, типів інформації, яка отримується від давачів, і т.д.

Завдання представляється для транслятора як послідовність моделей робочої установки, відповідних визначеним етапам виконання завдання.

Синтез програми управління роботом. На основі специфікації завдання здійснюється синтез роботоорієнтованої програми. Вона в основному ділиться на етапи планування захоплення предметів, планування руху і перевірки виконання плану.