Автономное программирование
с RoboDK

Простое моделирование и программирование манипуляторов промышленных роботов с помощью интуитивно понятного и удобного интерфейса. Вы можете щелкать и перетаскивать объекты для создания макета и программирования робота.

Для работы с программой RoboDK опыт программирования не требуется.

Подробнее о программном обеспечении RoboDK

Автономное программирование

Автономное программирование (или программирование вне линии) означает программирование роботов вне производственной среды. Автономное программирование исключает простои производства, связанные с программированием в цеху.

Моделирование и автономное программирование позволяют изучить несколько сценариев рабочей ячейки робота до создания производственной ячейки. Ошибки, которые обычно допускаются при проектировании рабочей ячейки, могут быть своевременно спрогнозированы.

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

API для робототехники

Получите доступ к API RoboDK - самому современному API для программирования манипуляторов роботов.

С помощью API RoboDK вы можете моделировать и программировать любого промышленного робота, используя предпочтительный язык программирования и среду разработки.

API RoboDK доступен для Python, C#/.Net, C++ и Matlab.

Узнайте больше об API RoboDK

Постпроцессоры

После того как моделирование даст желаемый результат, вы сможете генерировать программы для роботов в автономном режиме всего за 2 клика (Offline Programming).

RoboDK включает в себя более 100 постпроцессоров для создания программ для более чем 1200 роботов и 80 производителей роботов.

Подробнее о постпроцессорах

В качестве примера можно привести следующую программу для робота ABB.

Результат автономного программирования робота для контроллера ABB IRC5:

MODULE MOD_HexagonPath

PROC HexagonPath()
  ! Program generated by RoboDK for ABB IRB 1600ID-4/1.5
  ConfJ \On;
  ConfL \On;
  tl.tframe:=[-4,0,371.3],[0.92387953,0,0.38268343,0];
  MoveJ [[1010.6,-114.4,662.2],[0,0,1,0],[-1,0,-1,0],ex],sp,z1,tl;
  MoveL [[810.6,-114.4,662.2],[0,0,1,0],[-1,0,-1,0],ex],sp,z1,tl;
  MoveL [[910.6,58.7,662.2],[0,0,1,0],[0,-1,0,0],ex],sp,z1,tl;
  MoveL [[1110.6,58.7,662.2],[0,0,1,0],[0,-1,0,0],ex],sp,z1,tl;
  MoveL [[1210.6,-114.4,662.2],[0,0,1,0],[-1,0,-1,0],ex],sp,z1,tl;
  MoveL [[1110.6,-287.6,662.2],[0,0,1,0],[-1,0,-1,0],ex],sp,z1,tl;
  MoveL [[910.6,-287.6,662.2],[0,0,1,0],[-1,0,-1,0],ex],sp,z1,tl;
  MoveL [[810.6,-114.4,662.2],[0,0,1,0],[-1,0,-1,0],ex],sp,z1,tl;
  Program_Done;
  MoveL [[1010.6,-114.4,662.2],[0,0,1,0],[-1,0,-1,0],ex],sp,z1,tl;
ENDPROC
ENDMODULE

Пример программы с использованием API RoboDK

# Нарисуйте шестиугольник вокруг цели 1
from robolink import *    # RoboDK API
from robodk import *      # Математический инструментарий для роботов
 
# Запустите API RoboDK:
RDK = Robolink()
 
# Извлеките робота
robot = RDK.Item('', ITEM_TYPE_ROBOT)
 
# Получите ссылку на цель:
target = RDK.Item('Target 1')
target_pose = target.Pose()
xyz_ref = target_pose.Pos()
 
# Переместите робота к опорной цели:
robot.MoveJ(target)
 
# Нарисуйте шестиугольник вокруг опорной цели:
for i in range(7):
    ang = i*2*pi/6 # Угол = 0,60,120,...,360
    R = 200        # Радиус
    
    # Рассчитайте новую позицию:
    x = xyz_ref[0] + R*cos(ang) # новая координата X
    y = xyz_ref[1] + R*sin(ang) # новая координата Y
    z = xyz_ref[2]              # новая координата Z
    target_pose.setPos([x,y,z])
    
    # Переместитесь к новой цели:
    robot.MoveL(target_pose)
 
# Запуск вызова программы в конце движения
robot.RunInstruction('Program_Done')
 
# Вернитесь к контрольной мишени:
robot.MoveL(target)