在调试机械臂的时候,实验室东西比较多,为了保证安全性,划了一个边界。
def robot_move(dx:float = 0, dy:float = 0, dz:float = 0):
# 等待上一次运动完成
robot_State_Standy()
result_coordinate = []
nRet = cps.HRIF_ReadActPos(0, 0, result_coordinate)
# 读取空间位置变量
dX = float(result_coordinate[6])
dY = float(result_coordinate[7])
dZ = float(result_coordinate[8])
dRx = float(result_coordinate[9])
dRy = float(result_coordinate[10])
dRz = float(result_coordinate[11])
point = [dX, dY, dZ, dRx, dRy, dRz]
point[0]=point[0]+dx # x
point[1]=point[1]+dy # y
point[2]=point[2]+dz # z
print(point)
print(f"移动(mm):dx={dx}, dy={dy}, dz={dz}")
if(point[0]>700 or point[0]<219 or point[1]>510 or point[1]<-103 or point[2]>750 or point[2]< 300 ):
raise RuntimeError("超出运动范围!")
这里比较粗糙,只是一个零时的安全措施