Examples
Generate URScript
import math
from ur_py_ctl import Motion, move_to_conf, move_to_pose
# rotate joint0 to 45 degrees and the rest to zero moving 10 degrees/s
move_instruction1 = move_to_conf([math.pi / 2, 0, 0, 0, 0, 0], v=math.radians(10))
# move to coordinate .250, .500, .300 in a straight line with blend radius 1 cm
# and 250 mm/s
move_instruction2 = move_to_pose(
0.25, 0.5, 0.3, 0, 0, 0, mode=Motion.LINEAR, r=0.01, v=0.25
)
print(move_instruction1)
print(move_instruction2)
Send script without feedback
import logging
import socket
import ur_py_ctl.urscript_commands as ur_cmd
TAB = " "
SERVER_ADRESS = "marius-vikarie.d.control.lth.se"
SERVER_PORT = 30002
def get_script():
script = "def program():\n"
script += TAB + ur_cmd.popup("Program starting.") + "\n"
script += TAB + ur_cmd.set_tcp(0, 0, 0, 0, 0, 0) + "\n"
for i in range(10):
script += (
TAB
+ ur_cmd.move_to_pose(
-0.1 + i * 0.01, 0, 0.3, 0, 0, 0, v=50 / 1000, r=5 / 1000
)
+ "\n"
)
script += TAB + ur_cmd.text_msg(f"Sending command number: {i}") + "\n"
script += ur_cmd.text_msg("End program")
script += "end\n\n"
script += "program()\n"
return script.encode()
def send_script():
send_socket = socket.create_connection((SERVER_ADRESS, SERVER_PORT), timeout=2)
send_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
script = get_script()
# send file
send_socket.send(script)
send_socket.close()
logging.debug("File sent")
if __name__ == "__main__":
send_script()
Send script with feedback
Note
TODO: Make better version of old send_file.py