发布于 2013-07-21 17:17:08
6楼
楼主是否可以用JL跳转指令;根据MB90的值选择每个工位的动作 下面是我们以前做的设备上一小部分的程序 只不过是2个气缸顺序控制 你看看可不可以借鉴一下
A M 35.1 // 来自HMI
FP M 19.5
= M 19.1 // CAP2装配工位执行一周期 【手动】
A M 35.2 // 来自HMI
FP M 19.6
= M 19.2 // CAP2装配工位单步运行 【手动】
A M 35.3
FP M 19.7
= M 19.3
A M 35.0
O "M171.6"
JCN M007
L 0
T MB 90
M007: NOP 0
A "M112.2"
= "Q17.2" // CAP2导入工位上下气缸工作信号
A "M112.3"
= "Q17.3" // CAP2导入工位前后气缸工作信号
A "I15.6" // CAP2导入工位前后气缸初始位置
A "I16.0" // CAP2导入工位上下气缸初始位置
AN "M112.2"
AN "M112.3"
AN "M48.1" // CAP2装配工位工作时为ON,结束时为OFF
= "M 46.1" // CAP2装配工位初始状态辅助位
L MB 90
JL M001
JU M002 // 等于0时跳转M002
JU M003 // 等于1时跳转M003
JU M004 // 等于2时跳转M004
JU M005 // 等于3时跳转M005
JU M006 // 等于4时跳转M006
M001: BEU
M008: L MB 90
DEC 1
T MB 90
BEU
M002: SET //CAP2装配工位初始状态 【step0】
R "M112.2"
R "M112.3"
R "M48.1"
CLR
L S5T#0MS
SD T 7
A "I15.6" // CAP2导入工位前后气缸初始位置
A "I16.0" // CAP2导入工位上下气缸初始位置
JCN M001
A "M 219.0"
O M 219.1
A "M120.0"
O M 19.1
S "M48.1"
A "M48.1"
O M 19.2
JCN M001
L MB 90
INC 1
T MB 90
BEU
M003: SET // CAP2装配工位 前后气缸工作 【step1】
R "M112.2"
S "M112.3"
A M 19.3
JC M008
A "I15.7" // CAP2工位前后气缸工作位置
JCN M001
A "M48.1"
O M 19.2
JCN M001
L MB 90
INC 1
T MB 90
BEU
M004: SET // CAP2上下,前后气缸工作 【step2】
S "M112.2"
S "M112.3"
A M 19.3
JC M008
A "I16.1" // CAP2工位上下气缸工作位置
L DB102.DBW 12
SD T 7
A T 7
JCN M001
A "M48.1"
O M 19.2
JCN M001
L MB 90
INC 1
T MB 90
BEU
M005: SET // CAP2上下气缸复位 【step3】
R "M112.2"
S "M112.3"
CLR
L S5T#0MS
SD T 7
A M 19.3
JC M008
A "I16.0" // CAP2工位上下气缸初始位置
JCN M001
A "M48.1"
O M 19.2
JCN M001
L MB 90
INC 1
T MB 90
BEU
M006: SET // cap2装配结束,上下、前后回到初始位置 【step4】
R "M112.2"
R "M112.3"
A "I15.6"
A "I16.0"
JCN M001
CLR
= "M48.1"
L 0
T MB 90
BEU