Work Space Limits/zh-hans

From SoftMC-Wiki
Jump to: navigation, search
语言: English  • 中文(简体)‎

描述

每个机器人工作环境都包含多个具有不同的定义和限制的坐标系。 工作空间限制命令的目的是定义每个坐标系的限制,并在所有约束条件下进行组合。

定义

这些坐标系定义为:

  • World - 通用坐标系
  • Base - #{X,Y,Z,y,p,r}
  • Tool - #{X,Y,Z,y,p,r}
  • MachineTable - #{X,Y,Z,y,p,r}
  • WorkPiece - #{X,Y,Z,y,p,r}

#代表笛卡尔坐标点时。


机器人SetPoint参数定义为机器人工具的边缘点。 当所有框架被设置为#{0,0,0,0,0,0}时,robot.SetPoint命令将显示:SetPoint = Pb,其中Pb是机器人边缘相对于其基坐标系的矢量(不是工具 边缘)。

一般来说,机器人的robot.SetPoint参数计算如下:
SetPoint = WorkPiece-1:MachineTable-1:Base:Pb:Tool
这里显示了坐标系和Pb向量之间的关系:
ws 1.png ws 2.png

工作空间限制的定义

Each frame has its own limitations. In order to define them, one should use <Frame>.command, for example: 每个框架都有其自身的局限性。为了定义它们,应该使用<Frame>.command,例如:

Base.Xmax = 150
?MachineTable.Zmin
Tool.Zmax = 1230


NOTE-Info.svgNOTE
如果这些参数在没有坐标系的情况下被引用,则为WORLD坐标系设置参数

当发出运动指令时,检查点是否未超过定义的限制。
对于MovesCircle 命令,检查检查整个路径没有超出定义的限制。 对于 Move命令,只检查最后一个点。
例如:


ws 3.png


另一个例子:


ws 4.png

限制检查

为了检查某个点是否在允许的工作区域内,robot.SetPoint应该被转换成每个帧,然后应该检查转换点是否在坐标系的范围内。

每个坐标系的转换计算如下:

坐标系 公式
WorkPiece CheckPoint = SetPoint = WorkPiece-1:MachineTable-1:Base:Pb:Tool


MachineTable CheckPoint = WorkPiece:SetPoint = MachineTable-1:Base:Pb:Tool


World CheckPoint = MachineTable:WorkPiece:SetPoint = Base:Pb:Tool


Base CheckPoint = Base-1:MachineTable:WorkPiece:SetPoint = Pb:Tool


Tool CheckPoint = Tool-1:Pb,0-1:Base-1:MachineTable:WorkPiece:SetPoint=Tool-1:Pb,0-1:Pb:Tool


NOTE-Info.svgNOTE
对于工具坐标系,绝对限制是在定义工具坐标系限制时相对于 Pb定义的。 这个位置被定义为Pb,0


检查拟定开始于 World frame Base frame MachineTable frame WorkPiece frame Tool frame,
在每个坐标系的检查顺序是 Xmax Xmin Ymax Ymin Zmax Zmin

NOTE-Info.svgNOTE
如果移动命令在任何参数中都是无效的,程序将停止检查,并引发 错误信息

示例

6自由度(DOF)机器人

坐标系 Xmin, Xmax Ymin, Ymax Zmin, Zmax
WorkPiece #{20,70,150,0,90,-90} -200, 200 -200, 200 -200, 200
MachineTable #{400,100,0,0,0,0} 0, 400 0, 400 0, 800
Base #{300,200,1000,0,180,180} -1000, 1000 -1000, 1000 0, 1000
Tool #{50,0,0,90, 45, 0} -200, 200 -200, 200 -200, 200
World None -1500, 1500 -1500, 1500 0, 2000


假设所需的SetPoint是:#{100,100,0,0,0,0},Pb,0是:#{100,100,900,-45,90,0} - 是否在限制的工作区域?


坐标 公式 在限制内?
WorkPiece CheckPoint = SetPoint = : #{100,100,0,0,0,0} Yes


MachineTable CheckPoint = WorkPiece:SetPoint = #{20,-30,50,0,90,-90} No - Ymin
Base CheckPoint = Base-1:MachineTable:WorkPiece:SetPoint = #{120,130,950,0,90,90} Yes


Tool CheckPoint = Tool-1:Pb,0-1:Base-1:MachineTable:WorkPiece:SetPoint = #{30,100,20,0,0,0} Yes


World CheckPoint = MachineTable:WorkPiece:SetPoint = #{420,70,50,0,90,-90} Yes


4自由度(DOF)机器人

坐标系 Xmin, Xmax Ymin, Ymax Zmin, Zmax
WorkPiece #{100, 50, 0, 0} -100, 250 -300, 30 -200, 200
MachineTable #{320, 120, 350, 0} 0, 700 0, 500 0, 500
Base #{0, 0, 0, 0} -1000, 1000 -1000, 1000 0, 1000
Tool #{0, 20, 40, 25} -30, 20 -30, 20 -30, 20
World None -1500, 1500 -1500, 1500 0, 2000

假设所需的SetPoint是: #{380 , -150 , -310 , 25} ,Pb,0是: #{780, -50, 0, 0} - 是否在限制的工作区域?


坐标系 公式 在限制内?
WorkPiece CheckPoint = SetPoint = : #{380 , -150 , -310 , 25} No - Xmax and Zmin


MachineTable CheckPoint = WorkPiece:SetPoint = #{480 , -100 , -310 , 25} No - Ymin and Zmin
Base CheckPoint = Base-1:MachineTable:WorkPiece:SetPoint = #{800, 20, 40, 0} Yes


Tool CheckPoint = Tool-1:Pb,0-1:Base-1:MachineTable:WorkPiece:SetPoint = #{111.762 , 3.05356 , 0 , 0} No - Xmax


World CheckPoint = MachineTable:WorkPiece:SetPoint = #{800, 20, 40, 0} Yes

参考