安全停止 2 (SS2)
此指令仅适用于
Compact GuardLogix
5380、 GuardLogix
5580 和 ControlLogix 5590 控制器。“安全停止 2”(SS2) 指令用于在设定的限值内启动并监视电机或轴减速过程,以确保电机进入运行停止状态。停止后,SS2 会继续监视电机的运行停止状态。
可用语言
梯形图

功能块
此指令不可用于功能块中。
结构化文本
此指令不可用于结构化文本中。
“安全停止 2”应用
“安全停止 2”用于提供电机或轴速度和位置的 CIP Safety 驱动器,可与安全反馈接口 (SFX) 指令结合使用,对反馈进行变换。在运行过程中,当轴速度小于等于静止速度时,SS2 指令会进行指示。若达到静止状态,SS2 会启动 SOS(安全运行停止),继续监视静止状态。
操作数
重要提示:
以下情况下会导致运行出现意外:
- 输出标签操作数被覆盖。
- 结构操作数的成员被覆盖。
- 多条指令共用结构操作数。
警告:
SS2 安全控制结构包含内部状态信息。如果在运行模式下更改任何指令操作数,必须接受待定的编辑内容,并将控制器模式从编程模式循环切换到运行模式,以使更改生效。
下表给出了用于配置指令的操作数。
操作数 | 数据类型 | 格式 | 说明 |
|---|---|---|---|
Safety Control | SAFE_STOP_2 | 标签 | 指令正确运行所需的数据结构。 |
Restart Type | 列表项 | 该输入用于选择指令的“重启类型”。 手动 (0) 在“请求”移除后,需要“复位”输入由 0 跳变为 1 才能使指令运行。 自动 (1) 当“请求”已移除且不存在故障 [FP=0] 时,该指令会复位。复位后,指令将能够运行。 ![]() 注意: 只有在确定使用自动重启不会引发不安全状况的应用中,才可以使用自动重启。 | |
Cold Start Type | 列表项 | 此输入用于选择接通控制器电源或将控制器模式更改为“运行”时的行为。 手动 (0) 在“请求”移除后,需要“复位”输入由 0 跳变为 1 才能使指令运行。 自动 (1) 当“请求”移除后,指令会复位。 |
下表介绍指令输入。
操作数 | 数据类型 | 格式 | 说明 |
|---|---|---|---|
Stop Monitor Delay | INT | 立即数 标签 | 该操作数用于指定请求执行 SS2 和开始进行减速监视之间的延时时间。请参见“正常运行”部分的时序图,了解停止监视延时和 SS2 时序。 范围:0 到 32767 单位:毫秒 |
Stop Delay | DINT | 立即数 标签 | 该操作数用于指定停止监视延时时间到期后,允许轴达到静止速度的最长时间。该输入还用于计算在指令执行期间轴必须低于的速度斜坡或减速度限制。请参见“正常运行”部分的时序图,了解停止延时和 SS2 时序。 范围:1 到 3000000 单位:毫秒 |
SS2 Standstill Speed | REAL | 立即数 标签 | 该操作数指定用于认定运动停止的速度限制。当检测到的速度小于或等于配置的静止速度时,驱动器处于静止状态。当达到 SS2 静止速度后,开始执行 SOS 静止监视。请参见“正常运行”部分的时序图,了解静止速度和 SS2 时序。 范围: 0单位:位置单位/时间单位 |
Decel Ref Speed | REAL | 立即数 标签 | 该操作数用于计算在指令执行期间轴必须低于的速度斜坡或减速度限制。减速度由 SS2 指令在内部以减速参考速度/停止延时的形式进行计算。请参见“正常运行”部分的时序图,了解减速参考速度和 SS2 时序。 范围: 0单位:位置单位/时间单位
小贴士:
输入作为减速参考速度的最大轴速度以及作为停止延时的减速至静止的最长时间。
|
Decel Speed Tolerance | REAL | 立即数 标签 | 该操作数用于设置与速度斜坡相关的速度公差,在指令执行期间轴必须低于此公差。请参见“正常运行”部分的时序图,了解减速速度公差和 SS2 时序。 范围: 0单位:位置单位/时间单位 |
Mode | SINT | 立即数 标签 | 该操作数用于选择 SOS 监视期间进行速度检查还是位置检查。 范围:1 或 2 1:位置检查 2:速度检查 |
Check Delay | INT | 立即数 标签 | 该操作数用于指定 SOS 指令启动与开始进行静止监视之间的延时时间。 范围:0 到 32767 单位:毫秒 |
SOS Standstill Speed | REAL | 立即数 标签 | 该操作数用于设置在选择速度检查模式时,SOS 静止监视期间指令发生故障之前允许的最大速度。 范围: 0 |
Standstill Deadband | REAL | 立即数 标签 | 该操作数用于设置在“检查延迟”到期时与所捕获位置之间的最大增量偏差。如果超过该最大偏差,该指令将产生故障。 范围: 0 |
Feedback SFX | SAFETY_FEEDBACK_INTERFACE | 标签 | 操作数“反馈 SFX”用于提供位置和速度数据。该操作数将分配给与 SS2 指令实例搭配使用的 SFX 指令的安全控制标签。使用“SFX 安全控制”标签的以下成员:
单位:反馈计数
单位:位置单位/时间单位
单位:反馈计数/位置单位 |
Request | BOOL | 标签 | “请求”输入用于使 SS2 指令运行。 ON(1):开始执行 SS2 指令。 OFF (0):允许根据“重启类型”将指令复位 |
Reset 1 | BOOL | 标签 | 该操作数用于复位 SS2 指令。假设“请求”操作数为关闭 (OFF) (0) 且所有故障条件都已清除,则该操作数由关闭 (OFF) (0) 跳变为打开 (ON) (1) 时将复位 SS2 指令及“存在故障”[FP]。需要复位信号来复位该指令时,“需要复位”[RR] 输出会进行指示。 |
1
某些安全标准要求监控复位输入的转换。当复位用于复位安全功能时,可能需要额外的逻辑来验证复位输入从高电平到低电平或从低电平到高电平的转换。下表介绍指令输出。输出可以是外部标签(安全输出模块),也可以是用在其他逻辑例程中的内部标签。
操作数 | 数据类型 | 说明 |
|---|---|---|
Output 1 [O1] | BOOL | ON(1):表示指令正在执行,并且未出现故障。 OFF (0):以下任何一种条件:
|
Reset Required [RR] | BOOL | ON(1):表示需要“复位”信号来重启指令或清除故障。有关“复位”顺序的信息,请参见“复位”输入。 OFF (0):“自动重启”运行下的正常运行。 |
Fault Present [FP] | BOOL | ON(1):指令中存在故障。 OFF (0):指令正常运行。 |
Diagnostic Code | SINT | 此输出指示指令的诊断状态。有关具体代码和措施,请参见“诊断代码与纠正措施”部分。 |
SS2 Fault Type | SINT | 此输出用于指示所发生的 SS2 故障的类型。有关具体代码和措施,请参见“故障代码与纠正措施”部分。 |
SOS Fault Type | SINT | 此输出用于指示所发生的 SOS 故障的类型。有关具体代码和措施,请参见“故障代码与纠正措施”部分。 |
Stop Monitor Delay Active | BOOL | ON(1):指示停止监视延时计时器已激活。 |
Check Delay Active | BOOL | ON(1):指示检查延迟计时器已激活。 |
Speed Limit | REAL | 当“停止延时”操作数为 ON (1) 时,此输出用于指示所监视轴的实际速度限值。如果超过该速度,则该指令将产生故障。如“正常运行”部分的图片所示,在停止延时期间,速度限制是逐渐降至零速的斜坡函数。单位:位置单位/时间单位。 |
Deceleration Ramp | REAL | 如“正常运行”部分的图片所示,该输出指示在无“减速速度公差”项情况下的实时斜坡函数。 单位:位置单位/时间单位。 |
Standstill Set Point | REAL | 当 SOS 监视开始时,此输出将设为实际位置。 |
下表介绍了写入用户指定标签的指令输出。
操作数 | 数据类型 | 格式 | 说明 |
|---|---|---|---|
SS2 Active | BOOL | 标签 | SS2 指令将“SS2 激活”状态写入该标签。 OFF (0):SS2 未激活 ON(1):SS2 激活 若在复位后请求执行 SS2,“SS2 激活”操作数将设为打开 (ON) (1)。 SS2 指令复位后,“SS2 激活”操作数将复位为关闭 (OFF) (0)。
小贴士:
将“SS2 激活”操作数分配给与驱动器模块运动安全实例对应的安全输出标签结构的 SS2 激活成员。在驱动器轴标签结构中将自动更新对应的“轴安全状态”,以协调运动控制任务与安全任务。
|
SS2 Fault | BOOL | 标签 | SS2 指令将“SS2 故障”状态写入该标签。 OFF (0):无故障 ON(1):故障 对于下列故障类型和对应条件,“SS2 故障”操作数将设为 ON (1):
小贴士:
“SS2 故障”操作数将分配给与驱动器模块运动安全实例对应的安全输出标签结构的 SS2 故障成员。在驱动器轴标签结构中将自动更新对应的“轴安全故障”标签,以协调运动控制任务与安全任务。
|
SOS Active | BOOL | 标签 | SS2 指令将“SOS 激活”状态写入该标签。 OFF (0):SOS 未激活 ON(1):SOS 激活
小贴士:
将“SOS 激活”操作数分配给与驱动器模块运动安全实例对应的安全输出标签结构的 SOS 激活成员。在驱动器轴标签结构中将自动更新对应的“轴安全状态”,以协调运动控制任务与安全任务。
|
SOS Standstill | BOOL | 标签 | SS2 指令将“SOS 静止”状态写入该标签。 OFF (0):速度或位置未处于静止状态。 ON(1):速度或位置处于静止限制范围内。
小贴士:
“SOS 静止”操作数将分配给与驱动模块运动安全实例对应的安全输出标签结构的“SOS 静止”成员。在驱动器轴标签结构中将自动更新对应的“轴安全状态”,以协调运动控制任务与安全任务。
|
SOS Fault | BOOL | 标签 | SS2 指令将“SOS 故障”状态写入该标签。 OFF (0):无故障 ON(1):故障 对于下列故障类型和对应条件,“SOS 故障”操作数将设为 ON (1) 状态。
小贴士:
将“SOS 故障”操作数分配给与驱动器模块运动安全实例对应的安全输出标签结构的 SOS 故障成员。在驱动器轴标签结构中将自动更新对应的“轴安全故障”标签,以协调运动控制任务与安全任务。
|
重要提示:
在任何情况下,均不要对任何指令输出标签执行写操作。
影响数学状态标志
否
严重/轻微故障
没有特定于此指令的故障。请参见“数组索引编制”,了解关于数组索引故障的信息。
执行
条件/状态 | 执行的操作 |
|---|---|
预扫描 | 输出 .O1、.FP、.RR、.SS2Active、.SS2Fault、.StopMonitorDelayActive、.SpeedLimit、.DecelerationRamp、.SOSActive、.SOSStandstill、.SOSFault 和 .CheckDelayActive 均设为 OFF(0)。 “诊断代码”输出设为 0。 “故障类型”输出设为 1。 |
梯级输入条件为假 | 输出 .O1、.SS2Active、.SOSActive、.SOSStandstill、.StopMonitorDelayActive 和 .CheckDelayActive 均设为 OFF(0)。 “速度限值”输出将设为 0 “减速度斜坡”将设为 0 “静止设置点”将设为 0 如果梯级变为假时存在指令故障,故障状态将保持不变,并显示诊断代码。 |
梯级输入条件为真 | 指令执行。 |
后扫描 | 不适用 |
操作
正常运行
如果 SS2 指令之前已复位,且“请求”输入已跳变为打开 (ON) (1),则该指令会开始执行。此时,停止监视延时计时器开始计时。停止监视延时计时器到期时,将捕获当前轴速度并启动停止延时计时器。停止延时计时器运行时,将根据速度限制函数 S(t) 实时监视轴的速度,监视过程从停止延时计时器开始:
速度限制函数
S(t) = S0 + St - (Sr/ Ts)(t)
其中:
S(t) = 速度限制
S0 = 停止监视延时结束时捕获的速度
St= 减速速度公差
Sr = 减速参考速度
Ts = 停止延时
t = 停止延时计时器值
当达到 SS2 静止速度时,SS2 指令内的安全运行停止 (SOS) 监视功能开始执行。请注意,在正常运行时,会在停止延时计时器到期之前达到 SS2 静止速度。
当 SOS 监视开始执行时,会启动“检查延迟计时器”。在检查延迟计时器到期后,将捕获位置。根据模式设置,将 SFX 指令提供的速度或位置与 SOS 静止速度或静止死区进行比较。在检查延迟到期后,只要速度低于 SOS 静止速度且指令未出现故障,静止输出就会设为 ON(1)。只要 SOS 监视功能未出现故障且“请求”输入为 ON(1),该功能就会保持激活状态。如果受监视轴的速度超过静止速度限值,则 SOS 功能会出现故障。
SS2 指令所用位置值的单位为位置单位。SS2 指令所用速度值的单位为位置单位/时间单位。位置单位由用户根据特定应用定义,并在 SFX 指令中进行配置。时间单位同样在 SFX 指令中配置,可以选择秒或分。
传递标签
安全运动监视驱动器具有一个或多个由运动任务控制的运动轴。安全运动监视驱动器还具有一个或多个运动安全实例,用于支持安全控制器的安全任务中使用的安全功能。与驱动器运动安全实例相关的标签中,有些是传递标签。下表列出了用于 SS2 指令的传递标签及对应的轴标签:
SS2 指令输出 | 运动安全实例的传递标签 | 安全运动监视驱动器的动作 | 轴标签 |
|---|---|---|---|
SS2 Active | 模块 1 :SO.SS2Active[instance2 ] | 更新标签 | axis3.SS2ActiveStatus |
SS2 故障 (SS2 Fault) | 模块 1 :SO.SS2Fault[instance2 ] | 更新标签 | axis3.SS2Fault |
SOS 激活 | module 1 :SO.SOSActive[instance2 ] | 更新标签 | axis3.SOSActiveStatus |
SOS 静止 (SOS Standstill) | module 1 :SO.SOSStandstill[instance2 ] | 更新标签 | axis3.SOSStandstillStatus |
SOS Fault | module 1 :SO.SOSFault[instance2 ] | 更新标签 | axis3.SOSFault |
1
module 是 Logix Designer I/O 配置树中驱动器模块的名称。2
对于双轴驱动器,instance 取 1 或 2,对于其他驱动器,则为空3
axis 是 Logix Designer 运动组中的轴名称,与模块相关将“SS2 激活”、“SOS 激活”、“SOS 静止”、“SS2 故障”和“SOS 故障”输出分配给运动安全实例传递标签时,在运动控制器中将自动更新对应的“轴安全状态”和“轴安全故障”标签。运动控制器的运动控制任务将读取“轴安全状态”和“轴安全故障”标签,以协调安全任务与运动控制任务。以下所列为典型的事件序列:
- 安全应用程序收到停止轴的输入。
- 安全应用程序将“请求”输入设为 ON(1),请求执行 SS2 指令。
- SS2 指令将输出“SS2 激活”置位并对驱动器中运动安全实例的 module:SO.SS2Active[instance] 标签执行写操作。
- 驱动器中的运动安全实例将更新运动控制器读取的“轴安全状态”标签。
- 然后,运动控制应用程序会根据停止斜坡曲线将驱动器停止。
- SS2 指令会对轴进行监视,确保轴速度不会超过“随时间变化的停止速度”斜坡。
- 当 SS2 指令检测到 SS2 静止时,SS2 指令会对驱动器中运动安全实例的 module:SO.SOSActive[instance] 标签执行写操作。
- 当 SOS 指令检测到 SOS 静止时,SS2 指令会对驱动器中运动安全实例的 module:SO.SOSStandstill[instance] 标签执行写操作。
- 运动应用读取“轴安全状态”标签并保持位置不变或维持零速不变。
正常运行,自动重启
下图所示为配置为自动重启时的正常运行时序图。正常运行时,只要 SS2 指令尚未被复位,“SS2 激活”输出就会保持 ON(1)。在配置为自动重启的情况下运行时,如果未出现故障,会在“请求”设为 OFF(0) 时复位 SS2 指令。SS2 指令复位时,输出 O1 将设为 ON(1),用于指示该指令已做好运行准备。
在图中,速度限制函数显示为一条稳定的红线,向零速倾斜。速度必须低于速度限制函数才能保持正常运行。达到 SS2 静止速度时,“SOS 激活”输出将设为 ON(1),用于指示 SS2 内的 SOS 功能处于激活状态,并且只要“请求”保持 ON(1) 状态,该输出就将保持 ON(1) 状态。

正常运行,手动重启
配置为手动重启时,必须先复位 SS2 指令,然后再执行后续操作。“需要复位”输出表明在“请求”输入设为 OFF(0) 后,“复位”输入必须由 OFF(0) 跳变为 ON(1) 才能复位此指令。下图所示为配置为自动重启时的正常运行状况。

出现故障时的运行状况
减速度故障下的运行
下图所示为发生减速故障的 SS2 的时序图,图中显示,因轴速度超出速度限值,导致出现减速故障。请注意,该时序图适用于“手动重启”的情况。自动重启的时序图与此类似,但需要复位 [RR] 输出在发生故障后才会跳变为 ON(1)。

出现故障(静止速度故障)时的运行状况
下图所示为出现静止速度故障的 SS2 时序。如图所示,轴速度达到了 SS2 和 SOS 静止速度,但在执行 SOS 指令期间,速度会继续增大,直至超过 SOS 静止速度,由此引发故障。请注意,该时序图适用于“手动重启”的情况。自动重启的时序图与此类似,但需要复位 [RR] 输出在发生故障后才会跳变为 ON(1)。

故障代码与处理措施
SS2 故障代码
故障代码 | 说明 | 纠正措施 |
|---|---|---|
1 | 无故障 | 无。 |
2 | 无效配置故障 |
|
3 | 减速度故障 - 处于停止监视的轴速度超出指令计算出的速度限制斜坡。 |
|
4 | 最长时间故障 - 超出允许的达到 SS2 静止速度的最长时间。 |
|
102 | “SFX 指令未就绪”故障 | 确保向该 SS2 实例提供输入的 SFX 指令正在运行,且在请求执行 SS2 之前未发生故障。 |
SOS 故障代码
故障代码 | 说明 | 纠正措施 |
|---|---|---|
1 | 无故障 | 无。 |
2 | 无效配置故障 |
|
3 | 静止位置故障 | 确保在检查延迟到期后运动处于静止死区内。 |
4 | 静止速度故障 | 确保在检查延迟到期前运动速度低于静止限制。 |
101 | 位置窗口计算溢出故障。来自“反馈 SFX”标签的“位置变换”与“位置窗口”的乘积超过 (2^31 – 1) |
|
诊断代码与纠正措施
Diagnostic Code | 说明 | 纠正措施 |
|---|---|---|
0 | 无诊断信息。 | 无 |
10 | 当指令执行时,梯级变为假。 | 确保该指令已启用。 |
20 | 停止监视延时值无效。 | 必须使用 0 至 32767 之间的 INT 值 |
21 | 停止延时值无效。 | 必须使用 0 至 3,000,000 之间的 DINT 值 |
22 | “SS2 静止速度”值无效。 | “SS2 静止速度”必须为非负 REAL 型值 |
23 | 减速参考速度值无效。 | 必须为非负 REAL 型值 |
24 | 减速速度公差值无效。 | 必须为非负 REAL 型值 |
25 | 模式值无效。 | 必须使用 INT 值 1(速度检查)或 2(位置检查)。 |
26 | 检查延迟值无效。 | 必须使用 0 至 32767 之间的 INT 值。 |
27 | “静止死区”无效 | 必须为非负 REAL 型值。 |
28 | “静止速度”无效 | 必须为非负 REAL 型值。 |
示例

提供反馈

0