Програмовані або вузькоспеціалізовані контролери управління рухом: варіанти реалізації складних роботизованих комплексів

  1. Про конфігурації промислових роботів
  2. Огляд профілів управління рухом
  3. Порівняння стандартного і призначеного для користувача алгоритмів управління рухом
  4. висновок

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

Успіхи в розвитку сучасної елементної бази - електродвигунів та драйверів, силових напівпровідникових приладів (МОП-транзисторів і БСІТ), систем управління (які переходять в даний час з аналога на цифру) і датчиків систем зворотного зв'язку дозволяють реалізувати точне управління рухом маніпуляторів простішими способами в порівнянні з тим, як це було кілька років тому. На рис. 1 зображена базова система управління позиціонуванням для робототехніки, яка включає в себе контролер, який виконує алгоритм прикладної програми; драйвери двигунів; силові пристрої; датчики зворотного зв'язку; механічні вузли; електродвигун, як правило, оснащений датчиками; пристрою вимірювання напруг і струмів в контрольних точках. Однак, оскільки вимоги до продуктивності систем різко зросли, в цілому складність проектів залишається на колишньому рівні.

Мал. 1. Базова система управління позиціонуванням в робототехніці

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

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

Ще одне важливе рішення пов'язане з вибором датчиків зворотного зв'язку. У більшості роботизованих систем використовуються певні типи датчиків зворотного зв'язку для точного вимірювання положення робочого органу і, таким чином, для визначення швидкості і прискорення (так як швидкість є похідною за часом від координат об'єкту, а прискорення - похідною за часом від швидкості). В якості перетворювачів сигналів зворотного зв'язку можуть використовуватися датчики Холла, синхронні вирішальні прилади або оптичні кодери.

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

У деяких системах промислової автоматизації реалізовано бездатчикового, так зване векторне управління електродвигунами, що дозволяє знизити вартість і складність механічної частини системи. Алгоритм векторного управління (Field-Oriented Control) використовує точні синхронізовані дані струму і напруги в кожній фазі обмоток двигуна, виконує складні перетворення системи координат і матричні обчислення для визначення положення двигуна в реальному масштабі часу.

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

Про конфігурації промислових роботів

Термін «робот» часто асоціюється серед публіки з мобільним антропоморфних слугою або помічником, однак більшість робототехнічних систем призначене для використання в промисловості та являє собою стаціонарні пристрої, забезпечені різними маніпуляторами і іншими механізмами для виконання певних завдань.

До найбільш поширених конструкцій промислових роботів відносяться:

  • Робот, що працює в декартовій системі координат за трьома лінійним осях руху в площинах x, y і z. Дана конфігурація використовується в машинах, які здійснюють переміщення і установку деталей, нанесення герметизуючих покриттів і прості складальні операції.
  • В роботі циліндричної системи всі рухи обмежені робочою зоною, яка має форму циліндра. Даний тип робота поєднує в собі лінійне рух в площинах y, z і обертальний рух навколо осі z, і використовується для складальних операцій, зміни робочого інструменту і точкового зварювання.
  • Сферичний або полярний робот об'єднує в собі два зчленування з обертовим рухом і одне зчленування з лінійним переміщенням, при цьому маніпулятор з'єднаний з основою обертальним зчленуванням (рис. 2). Даний робот виробляє рух навколо двох поворотних осей і вздовж однієї лінійної осі, що вимагає великого обсягу обчислень для перетворення даних, що відносяться до різних систем координат. Рух маніпулятора задається в полярній системі координат і обмежується сферичною робочою зоною. Даний тип робота знаходить застосування при зварюванні, лиття і зміні робочого інструменту.

Даний тип робота знаходить застосування при зварюванні, лиття і зміні робочого інструменту

Мал. 2. Сферичний або полярний робот

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

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

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

Огляд профілів управління рухом

Завдання управління рухом в робототехніці здається досить простий: привести робочий орган в кінцеве положення настільки швидко і точно, наскільки це можливо з заданим навантаженням. Як і у всіх інженерних рішеннях, тут є компроміси, що дозволяють отримати оптимальний результат в залежності від пріоритетів, що встановлюються конкретним додатком. Наприклад, припустимо більше прискорення і уповільнення з метою швидкого досягнення високої швидкості з ризиком можливого перерегулирования або навіть коливального процесу в кінцевій точці? Якою мірою економічно виправдано точне вимірювання швидкості? Як здійснити оптимальний вибір прискорення, швидкості і координат для переміщення з положення A в положення B? Які пріоритети і параметри, які визначають «оптимум» в даному конкретному додатку?

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

Всі без винятку варіанти включають в себе значні за обсягом обчислення в режимі реального часу на основі поточного набору параметрів і сигналів зворотного зв'язку, однак деякі з них вимагають ще більш високої точності і більшого завантаження обчислювальних ресурсів

Профілі управління рухом включають в себе:

  • Простий трапецієподібний профіль, при якому двигун розганяється з постійним прискоренням від нульової до заданої (максимальної) швидкості і здійснює переміщення об'єкта з цією швидкістю, потім швидко, з постійним прискоренням, скидає швидкість до нуля в заданій позиції. Більш високі значення прискорення дозволяють підвищити швидкість руху в кожному циклі позиціонування, але можуть також викликати раптові зміни в прискоренні, звані ривками, які, в свою чергу, призводять до збільшення похибки позиціонування і перерегулювання.
  • Профіль S-кривої, часто використовуваний в якості поліпшеного варіанта трапецієподібного профілю, створює дедалі більше прискорення від нуля до деякого постійного значення, яке, при досягненні заданого значення швидкості, потім зменшується до нуля (рисунок 3). Далі, в міру наближення маніпулятора до кінцевої позиції, включається прискорення з протилежним знаком і постійною величиною, зменшується до нуля поблизу кінцевої точки. У порівнянні з трьома фазами трапецієподібного профілю, S-крива має сім різних фаз.
  • У профілі руху по контуру користувач встановлює набір окремих позицій, а контролер управління рухом реалізує плавний, без ривків, перехід від однієї точки до іншої, що дозволяє отримати максимальну гнучкість і керованість, необхідні для динамічного управління рухом. Розрахунок напрямків руху, що забезпечують гладку траєкторію, вимагає складних обчислень, при цьому на всіх етапах обчислень необхідно виключити втрату точності, обумовлену помилками округлення і дискретизації.

Розрахунок напрямків руху, що забезпечують гладку траєкторію, вимагає складних обчислень, при цьому на всіх етапах обчислень необхідно виключити втрату точності, обумовлену помилками округлення і дискретизації

Мал. 3. Профіль S-кривої дозволяє зменшити ривки (зміни прискорення) в кожній перехідній точці траєкторії

Порівняння стандартного і призначеного для користувача алгоритмів управління рухом

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

Необхідно відзначити, що в контролерах управління, як правило, відсутня функція безпосереднього управління двигунами (драйвери МОП-транзисторів і БСІТ), що обумовлено двома причинами. По-перше, силові драйвери повинні відповідати типу електродвигуна незалежно від обраного контролера. По-друге, технологічні процеси, засновані на комплементарних структурах «метал-оксид-напівпровідник», які використовуються в цифрових контролерах для отримання високої щільності елементів, значно відрізняються від впровадження нових технологічних процесів виготовлення силових напівпровідникових (п / п) приладів. Однак для управління електродвигунами малої потужності можлива інтеграція контролера з драйверами і силовими п / п-приладами. Незважаючи на фундаментальні відмінності, термін «контролер» часто асоціюється з функціональними блоками пристроїв силової електроніки, що призводить до плутанини при пошуку за ключовими словами.

Наведені далі приклади показують широкий спектр функцій, які охоплюються контролерами управління рухом. Як приклад спеціалізованого функціонально закінченого пристрою можна привести ІС TB6560AFTG виробництва компанії Toshiba, яка об'єднує в собі контролер і драйвер крокової двигуна з широтно-імпульсним мікрошаговий управлінням і синусоїдальною формою вихідного струму. Дана ІС виконана в 48-вивідному корпусі QFN розміром 7 × 7 мм і дозволяє реалізувати ефективне управління в прямому і зворотному напрямках двофазним біполярним кроковим двигуном з використанням тільки одного тактового сигналу. Вбудовані драйвери забезпечують струм в обмотках двигуна до 2,5 А. Однією з проблем управління кроковими двигунами, навіть при їх використанні в мікрошаговий режимі, є вібрації, які можуть виникати при старті або зупинці руху. Хоча в більшості випадків вібрація не становить загрози, вона може стати проблемою при роботі з крихкими об'єктами, наприклад, скляним посудом, або при впливі на власні резонанси механічної системи. Контролер TB6560AFTG надає користувачеві можливість адаптації швидкості наростання і спаду вихідного струму драйвера для мінімізації коливальних процесів.

Верхню частину лінійки контролерів управління роботизованими системами займають пристрої з розширеним набором функцій, наприклад, сімейство мікроконтролерів (МК) C2000 компанії Texas Instruments. C2000 являє собою набір пристроїв з різними комбінаціями базових функцій, обчислювальних ресурсів, типів і кількості портів введення-виведення і вбудованих апаратних функцій - таймерів, сторожових таймерів і генераторів імпульсів з ШИМ. Наприклад, МК TMS320 Delfino серії C2000 (рис. 4). Він містить вбудований модуль для обчислень з плаваючою комою, що дозволяє усунути проблеми, що виникають при обробці чисел з фіксованою комою, а також підтримує перенесення програмного коду між пристроями з фіксованою і плаваючою комою за допомогою віртуального модуля IQMath ™. Це усуває необхідність у використанні другого процесора з одним або двома ядрами, який здатний ефективно виконувати як математичні задачі цифрової обробки сигналів, так і завдання управління системою. До складу TMS320 також входить модуль обчислення тригонометричних функцій (TMU), який прискорює роботу алгоритмів, типових для контурів управління, наприклад, обчислення крутного моменту.

Розробка додатків для даного процесора забезпечується програмно-апратних засобами, наприклад, налагоджування платою LAUNCHXL- F28377 S C2000 Delfino LaunchPad , Що базується на 32-розрядному ядрі процесора TMS320C28x. LaunchPad оснащений МК F28377S , Який забезпечує сумарно 400 млн операцій в секунду (MIPS) за допомогою 200-мегагерцевого центрального процесора C28x і 200-мегагерцевого співпроцесора управління реального часу.

Мал. 4. МК TMS320 Delfino серії C2000 виробництва компанії Texas Instruments

МК містить 1 Мбайт вбудованої пам'яті програм і широкий набір периферійних пристроїв, до яких відносяться 16- і 12-розрядні АЦП, компаратори, 12-розрядні ЦАП, фільтри з дельта-сигма-модуляцією, генератори ШІМ з високою роздільною здатністю, вдосконалені модулі захоплення, імпульсні квадратурні датчики положення, модулі CAN та інше. Отладочная плата LaunchPad містить вбудований ізольований емулятор JTAG XDS100 v2 , Який дозволяє здійснювати за допомогою порту USB програмування і налагодження МК у складі системи в режимі реального часу. Комплект LaunchPad включає в себе також два 40-контактних роз'єми для підключення одночасно двох плат розширення BoosterPack і безкоштовне вільне програмне забезпечення Code Composer Studio (CCS), інтегроване середовище розробки IDE і програмні модулі controlSUITE ™.

висновок

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

Наприклад, припустимо більше прискорення і уповільнення з метою швидкого досягнення високої швидкості з ризиком можливого перерегулирования або навіть коливального процесу в кінцевій точці?
Якою мірою економічно виправдано точне вимірювання швидкості?
Як здійснити оптимальний вибір прискорення, швидкості і координат для переміщення з положення A в положення B?
Які пріоритети і параметри, які визначають «оптимум» в даному конкретному додатку?