Выбор правильного постпроцессора для робота: практическое руководство
Не знаете, какой постпроцессор выбрать? Вот 5 шагов к идеальному постпроцессору для вашего робота.
Постпроцессоры — мост между автономным программным обеспечением и вашим роботом.
Если выбрать правильный постпроцессор, программа будет работать «из коробки» — реальный робот двинется так же, как в симуляции. Если же выбрать неправильный — ждут проблемы: робот может двигаться хаотично, в неправильном направлении или вообще не двигаться.
RoboDK предоставляет множество постпроцессоров. Стоит разобраться, как они работают, как выбрать правильный и как настроить или создать свой, если готовых не подходит.
Эта статья расскажет всё о постпроцессорах в RoboDK.
Что такое постпроцессор?

Большинство робототехнических программ содержат одни и те же базовые команды, используемые повторно. Три самые частые:
- Move Joint (Перемещение по суставам) — перемещает робот в точку пространства, отправляя суставы в нужное положение самым быстрым путем. Удобно для перемещений в свободном пространстве.
- Move Linear (Линейное перемещение) — перемещает робот из текущей позиции в точку пространства по точной линии. Удобно для захвата объекта, покраски и т.д.
- Set Speed (Установка скорости) — задает скорость рабочего органа и/или суставов робота.
Автономное ПО создает программы, используя обобщенные версии этих (и других) команд, применимые к любому роботу.
Роботы говорят на разных языках
Проблема в том, что у каждого производителя свой способ программирования команд. Многие имеют собственные языки, некоторые даже используют немного разные команды для разных версий контроллеров.
Например, вот как три команды выше выглядят для разных контроллеров. В скобках — минимальное число параметров для управления 6-осевым роботом:
| Робот | Joint Move | Linear Move | Set Speed | Path Rounding |
| ABB IRC5 | MoveJ (4) | MoveL (4) | speeddata(4) | zonedata(4) |
| Fanuc RJ3 | J (2) | L (2) | speed (1) | CNT (1) |
| Kawasaki | JMOVE (1) | LMOVE (1) | SPEED (1) | ACCURACY (1) |
| KUKA KRC | PTP (1) | LIN/SPL (1) | $VEL.CP (1) | $APO.CDIS (1) |
| Motoman JBI | MOVJ (2) | MOVL (2) | VJ/V (1) | PL (1) |
| Universal Robots | movej (1) | movel/movep (1) | v(1) | r (1) |
Как видите, команды похожи, но отличаются формулировками и количеством требуемой информации.
Без автономного программирования и постпроцессоров пришлось бы учить новый язык программирования для каждого типа робота. Это сильно замедляет процесс.
Постпроцессоры упрощают жизнь
Постпроцессоры переводят обобщенные команды в специфическую программу для вашей модели робота.
С RoboDK не нужно учить язык программирования, чтобы заставить робота двигаться. Встроенных постпроцессоров обычно достаточно для генерации рабочего, безошибочного кода для более чем 30 брендов роботов.
Постпроцессор также генерирует весь необходимый инициализирующий код и определения переменных, что в текстовом программировании часто бывает утомительно.
5 шагов к идеальному постпроцессору
RoboDK поставляется с более чем 40 постпроцессорами. Нужно выбрать подходящий для вашего контроллера.
Как выбрать между ними?
Если вы использовали робота из нашей Библиотеки роботов, то один постпроцессор уже выбран по умолчанию. Часто это предполагает использование последней (или стандартной) версии контроллера для этого робота. Но может потребоваться другой, если дефолтный не подходит вашему приложению или настройке.

1. Выберите постпроцессор для бренда вашего робота
Обычно лучше сначала попробовать дефолтный или базовый постпроцессор.
У некоторых брендов только один вариант в RoboDK по умолчанию, например Mecademic, Kawasaki, CLOOS и др. В этом случае выбор прост.
2. Выберите постпроцессор для вашего контроллера
У некоторых брендов разные постпроцессоры для разных контроллеров или версий языка программирования. Например, у Denso есть постпроцессор для старых контроллеров RC7 и для новых RC8, так как они перешли с языка PAC на PacScript.
Используйте постпроцессор для вашего конкретного контроллера, если он есть. Если вариант для вашего контроллера отсутствует, попробуйте тот, который ближе к номеру версии вашего контроллера.
3. Выберите постпроцессор для вашего приложения
У некоторых брандов довольно много постпроцессоров. У KUKA — 10!
Некоторые дополнительные постпроцессоры предназначены для специфических приложений или настроек. Например, для контроллера KUKA KRC2 есть 5 постпроцессоров. Два — для приложений с их аддоном CamRob для фрезеровки или управлением KUKA CNC, позволяющим тысячи строк кода в одном файле (подходит для роботизированной обработки). Один — специально для дуговой сварки. Аналогично, есть постпроцессор UR с интеграцией захватов Robotiq.
Если есть постпроцессор для вашего контроллера, подходящий для вашего конкретного приложения или настройки — используйте его. Если нет — используйте базовый постпроцессор для вашего бренда и контроллера.
4. Выберите постпроцессор, который легко обновлять
Иногда программа, сгенерированная RoboDK, не идеально подходит для вашего приложения. Можно захотеть добавить строки кода для расширения функционала. Это легко, если вы немного знакомы с языком программирования вашего робота.
Некоторые постпроцессоры предоставлены именно для упрощения изменения и обновления кода.
Например, у KUKA KRC2 есть опции генерации DAT-файла. Это интересная особенность контроллера KUKA. В этой конфигурации позиции хранятся как переменные в отдельном DAT-файле, что иногда упрощает обновление кода: достаточно изменить переменные, чтобы изменить позиции.
Аналогично, есть два постпроцессора Siemens Sinumerik: один с позициями в миллиметрах, другой — в дюймах.
Выбирайте постпроцессор, который максимально упростит обновление кода робота при необходимости.
5. Создайте или настройте постпроцессор
В некоторых случаях может потребоваться написать свой постпроцессор, например при уникальной конфигурации робота.
Можно также захотеть адаптировать существующий постпроцессор под свою настройку или приложение.
В RoboDK очень легко писать собственные постпроцессоры, так как все они — программы на Python и написаны в похожем формате.
Простой туториал по созданию или обновлению постпроцессора доступен в этом видео.
Подробнее на странице постпроцессоров в нашей документации.
Какие у вас вопросы о постпроцессорах? Напишите в комментариях или присоединитесь к обсуждению в LinkedIn, Twitter, Facebook или Instagram.
Промышленный робот
- Облачные вычисления: эволюция, сервисы и ключевые преимущества
- Контейнеры против Serverless: практическое руководство для современных разработчиков
- Аутсорсинг обслуживания: повысьте надежность, сократите затраты, оптимизируйте операции
- Пигментные дисперсии: полное руководство по безопасности, производительности и выбору лучших индийских прои…
- Стратегия планирования мощностей: комплексное руководство по оптимизации производственных ресурсов
- Мастерство IoT-обслуживания: экспертные стратегии мониторинга здоровья активов
- Мастерство ковки ножей: 9 экспертных шагов к созданию прочных лезвий
- Технические чертежи: Ключевые инсайты для инженеров и производителей
- Полное руководство по металлическому литью: технологии, материалы и применения
- Ремонт промышленных сцеплений: полное руководство по техническому обслуживанию