Создайте своё виртуальное окружение и смоделируйте движения промышленных роботов используя интуитивный интерфейс нашей программы. Перетаскивайте объекты в сцене, чтобы создать нужное вам расположение и запрограммировать робота.
Опыт в программировании не требуется.
Под автономным программированием подразумевается создание управляющих программ для роботов вне производственной среды. Данный вид создания управляющих программ исключает простои производства, вызванные необходимостью программирования в цехе. Моделирование и автономное программирование позволяют исследовать несколько сценариев работы роботизированной ячейки перед настройкой реальной производственной ячейки. RoboDK позволяет вовремя предугадать ошибки, обычно допускаемые при проектировании рабочей ячейки.
Автономное программирование — это лучший способ максимизировать возврат инвестиций в робототехнические системы, который требует соответствующих инструментов моделирования. При этом время на освоение новых программ может быть сокращено с нескольких недель до одного дня, что позволяет роботизировать даже краткосрочное производство.
Получите доступ к возможностям RoboDK API — одному из самых продвинутых программных интерфейсов для программирования промышленных роботов.
RoboDK API позволит вам моделировать и программировать промышленных роботов, используя разные языки программирования и среды разработки.
RoboDK API реализован на языках Python, C#/.Net, C++ и Matlab.
Как только процесс моделирования был завершён, можно создать управляющую программу для нужного робота в два щелчка мышью.
Наши постпроцессоры поддерживают системы управления от более 40 производителей роботов.
На примере ниже представлена управляющая программа для робота фирмы ABB.
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
# Draw a hexagon around Target 1 from robolink import * # RoboDK's API from robodk import * # Math toolbox for robots # Start the RoboDK API: RDK = Robolink() # Get the robot (first robot found): robot = RDK.Item('', ITEM_TYPE_ROBOT) # Get the reference target by name: target = RDK.Item('Target 1') target_pose = target.Pose() xyz_ref = target_pose.Pos() # Move the robot to the reference point: robot.MoveJ(target) # Draw a hexagon around the reference target: for i in range(7): ang = i*2*pi/6 # Angle = 0,60,120,...,360 R = 200 # Polygon radius # Calculate the new position: x = xyz_ref[0] + R*cos(ang) # new X coordinate y = xyz_ref[1] + R*sin(ang) # new Y coordinate z = xyz_ref[2] # new Z coordinate target_pose.setPos([x,y,z]) # Move to the new target: robot.MoveL(target_pose) # Trigger a program call at the end of the movement robot.RunInstruction('Program_Done') # Move back to the reference target: robot.MoveL(target)