发表于:2011/11/10 20:04:50
#0楼
我用的是西门子S7-300 ,用到FM353增量模式,在程序运行是,我通过监控变量表发现,增量模式没有正常工作,电机无法运转,出现的问题主要是这样的。在没发正转或反转指令的时候,没有报错信息。当是要是发个正转或反转指令,"DB_FM".ST_ENBLD变FALSE ,但"DB_FM".WORKING不能转化为TURE,出现报警信息"DB_FM".OT_ERR_NO 2 ,"DB_FM".OT_ERR_CL 5.我们也查阅了这个报错信息,但是没找到解决办法。
还有一点就是这个增量模式我们设的是当前值作为参考点,我直接置位 "DB_FM".REFPT_EN来获得"DB_FM".SYNC信号的。不知道这里有没有问题。下面是增量模式的程序,请高手给我解答下,望回复。非常感谢!
L B#16#4 // Code for ref. point approach mode
L "DBEX".MODE_OUT // Mode checkback
==I
JC SYN // Jump if Incremental Relative mode active
L 4
T "DB_FM".MODE_IN
L "DB_FM".MODE_OUT
L 4
<>I
JC END
SYN: L B#16#1
= "DB_FM".REFPT_EN //SYNC同步
A "DB_FM".SYNC
R "DB_FM".REFPT_EN
A "DBEX".DRV_EN // Drive enable ?
= "DB_FM".DRV_EN // Entry in user DB
A "DBEX".SERVO_EN // Servo enable ?
= "DB_FM".SERVO_EN // Entry in user DB
L "DBEX".OVERRIDE // Default = 100%
T "DB_FM".OVERRIDE
L L#10000
T "DB_FM".VLEVEL_1
L L#8000
T "DB_FM".VLEVEL_2
A "DB_FM".VLEV_D // Transfer velocity levels and
JC DIR
DIR: L 254
T "DB_FM".MODE_TYPE //选择增量表254行
L L#100
T "DB_FM".TRG254 //设置随机位置值
S "DB_FM".TRG254_EN //将随机位置传送到FM353中
A "DBEX".EX4.DIR_P // Travel + command
= "DB_FM".DIR_P
A "DBEX".EX4.DIR_M
= "DB_FM".DIR_M
A "DBEX".EX4.STOP // Stop
= "DB_FM".STOP // Stop signal in user DB
还有一点就是这个增量模式我们设的是当前值作为参考点,我直接置位 "DB_FM".REFPT_EN来获得"DB_FM".SYNC信号的。不知道这里有没有问题。下面是增量模式的程序,请高手给我解答下,望回复。非常感谢!
L B#16#4 // Code for ref. point approach mode
L "DBEX".MODE_OUT // Mode checkback
==I
JC SYN // Jump if Incremental Relative mode active
L 4
T "DB_FM".MODE_IN
L "DB_FM".MODE_OUT
L 4
<>I
JC END
SYN: L B#16#1
= "DB_FM".REFPT_EN //SYNC同步
A "DB_FM".SYNC
R "DB_FM".REFPT_EN
A "DBEX".DRV_EN // Drive enable ?
= "DB_FM".DRV_EN // Entry in user DB
A "DBEX".SERVO_EN // Servo enable ?
= "DB_FM".SERVO_EN // Entry in user DB
L "DBEX".OVERRIDE // Default = 100%
T "DB_FM".OVERRIDE
L L#10000
T "DB_FM".VLEVEL_1
L L#8000
T "DB_FM".VLEVEL_2
A "DB_FM".VLEV_D // Transfer velocity levels and
JC DIR
DIR: L 254
T "DB_FM".MODE_TYPE //选择增量表254行
L L#100
T "DB_FM".TRG254 //设置随机位置值
S "DB_FM".TRG254_EN //将随机位置传送到FM353中
A "DBEX".EX4.DIR_P // Travel + command
= "DB_FM".DIR_P
A "DBEX".EX4.DIR_M
= "DB_FM".DIR_M
A "DBEX".EX4.STOP // Stop
= "DB_FM".STOP // Stop signal in user DB