05-01-2019, 10:10 PM
Yes, the call to RunInstruction will block (wait) until the program you want to execute completes. Make sure to add a space between the ID of the program and the name. For example:
robot.RunInstruction("Program 2", INSTRUCTION_CALL_PROGRAM)
I'm sorry I missed your question regarding the startup of the program on the robot from the API. This is possible. By default, this option only works with Universal Robots (given they are collaborative, it is possible to easily start a program remotely).
You can customize this implementation in the ProgSendRobot call of your post processor. Let us know if you need help to implement this behavior with a KUKA robot.
robot.RunInstruction("Program 2", INSTRUCTION_CALL_PROGRAM)
I'm sorry I missed your question regarding the startup of the program on the robot from the API. This is possible. By default, this option only works with Universal Robots (given they are collaborative, it is possible to easily start a program remotely).
You can customize this implementation in the ProgSendRobot call of your post processor. Let us know if you need help to implement this behavior with a KUKA robot.
Code:
def ProgSendRobot(self, robot_ip, remote_path, ftp_user, ftp_pass):
"""Send a program to the robot using the robot IP provided.
This method is executed right after ProgSave if we select
the option "Send Program to Robot".
The connection parameters (IP and port) can be provided
in the robot connection menu of RoboDK or hard coded here"""
UploadFTP(self.PROG_FILES, robot_ip, remote_path, ftp_user, ftp_pass)