Work Space Limits/zh-hans
语言: | English • 中文(简体) |
---|
Contents
描述
每个机器人工作环境都包含多个具有不同的定义和限制的坐标系。 工作空间限制命令的目的是定义每个坐标系的限制,并在所有约束条件下进行组合。
定义
这些坐标系定义为:
- 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向量之间的关系:
工作空间限制的定义
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 | |
如果这些参数在没有坐标系的情况下被引用,则为WORLD坐标系设置参数 |
当发出运动指令时,检查点是否未超过定义的限制。
对于Moves和 Circle 命令,检查检查整个路径没有超出定义的限制。 对于 Move命令,只检查最后一个点。
例如:
另一个例子:
限制检查
为了检查某个点是否在允许的工作区域内,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 | |
对于工具坐标系,绝对限制是在定义工具坐标系限制时相对于 Pb定义的。 这个位置被定义为Pb,0 |
检查拟定开始于 World frame → Base frame → MachineTable frame → WorkPiece frame → Tool frame,
在每个坐标系的检查顺序是 Xmax → Xmin → Ymax → Ymin → Zmax → Zmin
NOTE | |
如果移动命令在任何参数中都是无效的,程序将停止检查,并引发 错误信息 |
示例
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 |
参考
- Robot Working Frames
- robot.BASE
- robot.WorkPiece
- robot.MACHINETABLE
- robot.Tool
- robot.BASE.XMAX
- robot.BASE.XMIN
- robot.BASE.YMAX
- robot.BASE.YMIN
- robot.BASE.ZMAX
- robot.BASE.ZMIN
- robot.WORKPIECE.XMAX
- robot.WORKPIECE.XMIN
- robot.WORKPIECE.YMAX
- robot.WORKPIECE.YMIN
- robot.WORKPIECE.ZMAX
- robot.WORKPIECE.ZMIN
- robot.MACHINETABLE.XMAX
- robot.MACHINETABLE.XMIN
- robot.MACHINETABLE.YMAX
- robot.MACHINETABLE.YMIN
- robot.MACHINETABLE.ZMAX
- robot.MACHINETABLE.ZMIN
- robot.TOOL.XMAX
- robot.TOOL.XMIN
- robot.TOOL.YMAX
- robot.TOOL.YMIN
- robot.TOOL.ZMAX
- robot.TOOL.ZMIN