桑格芝士网

百科知识分享平台,汇聚全球百科全书与学习资源

PLC控制伺服系统实现暂停功能的深度解析

在自动化设备中,伺服电机因其高精度、高响应性和可控性而被广泛应用。设备运行过程中,常常需要实现暂停功能,例如进行临时检查、排除故障、等待物料或响应急停信号后的安全暂停等。在PLC控制的伺服系统中,实现平滑、可靠且位置保持准确的暂停功能至关重要。以下是几种常用且可靠的实现方式及其详细步骤:


核心思想:暂停的本质


暂停的核心在于让伺服电机立即停止在当前位置并保持住,且在收到“继续运行”指令后,能平滑地、无冲击地从当前位置继续执行后续的运动轨迹或程序。这涉及到对伺服驱动器内部位置环、速度环和电流环(扭矩环)的精确控制。


方法一:利用伺服驱动器的“暂停”输入端子(DI信号) - 最常用、最可靠


◆ 这是最推荐、最直接、响应最快的方式,利用了伺服驱动器本身的功能。


原理

◆大多数伺服驱动器(如安川Yaskawa、三菱Mitsubishi、松下Panasonic、台达Delta、汇川Inovance等)都提供专用的数字量输入(DI)端子,如`P-CON`(松下)、`P-OT` / `N-OT`(三菱,需配置)、`C-MODE`(安川,配置为内部速度0)、`SI/SO`(台达,配置为暂停)等。当这个DI信号被激活(ON或OFF,取决于驱动器参数设置)时,驱动器会:


1. 立即停止: 中断当前接收到的任何来自PLC的运动指令(脉冲、模拟量、通讯指令)。

2. 位置保持: 进入“位置控制模式”并锁定当前位置。驱动器内部的位置环会持续工作,产生必要的扭矩(电流)来抵抗外力(如重力、惯性),将电机轴精确地保持在当前位置。

3. 指令缓冲: PLC发送的运动指令可能会被驱动器暂时忽略或缓冲(取决于驱动器和通讯协议)。


实现步骤


1. 硬件准备:

确认伺服驱动器是否有专用的“暂停”、“保持”、“内部速度0”或可配置为暂停功能的DI端子。查阅驱动器手册。

将PLC的一个数字量输出(DO)点连接到该驱动器的指定DI端子上。

确保接线正确、可靠(常使用屏蔽双绞线,注意共地/隔离)。


2. 驱动器参数设置:

找到对应DI端子功能的参数(如Panasonic的`Pr0.01` - DI1功能选择,设为`17: P-CON`;Mitsubishi的`Pr418` / `Pr419` 配置`P-OT`/`N-OT`模式;Yaskawa配置`C-MODE`为内部速度0等)。

设置该DI信号的有效电平(常开NO/常闭NC)。

可能需要设置“暂停模式”下的其他参数,如保持扭矩限制(防止过载)、滤波时间等。参考具体驱动器手册。


3. PLC程序编写:

在需要暂停的位置(如HMI暂停按钮按下、传感器触发异常、急停连锁解除后需保持等),置位(SET)连接至驱动器暂停DI的那个PLC输出点(`Yxx`)。

在需要恢复运行的位置(如HMI继续按钮按下、异常解除等),位(RST) 该PLC输出点。

示例(结构化文本ST):

```structuredtext

IF bPauseButton OR bEmergencyStopReleased THEN // 暂停条件:按下暂停按钮或急停解除后需要保持

Y_PauseDI := TRUE; // 激活驱动器暂停DI信号

ELSIF bContinueButton THEN // 继续条件

Y_PauseDI := FALSE; // 取消驱动器暂停DI信号

// 可选:在此处触发继续运动的指令(如果驱动器暂停时缓冲了指令,则可能不需要)

END_IF;

```


4. 恢复运行:

当PLC复位暂停DI信号后,驱动器会立即退出暂停状态。

关键点:

如果暂停期间PLC停止了脉冲发送或运动指令(通常应该停止,避免指令堆积),恢复时需要重新触发目标运动指令(绝对定位、相对定位、速度模式启动等)。驱动器会从当前位置开始执行新指令。

如果驱动器在暂停期间缓冲了PLC发送的运动指令(某些总线通讯协议或特定驱动器模式可能支持),复位暂停信号后,驱动器可能会自动继续执行被缓冲的指令。需要仔细查阅驱动器通讯协议文档。

为了确保恢复平滑,新触发的运动指令起始速度应设置为0(或接近0),并应用合适的加减速时间。避免从0速直接跳到高速造成冲击。


优点

响应最快: 硬件级响应,通常在毫秒级完成停止和锁定。

位置保持最精确: 直接由驱动器位置环控制,抗干扰能力强。

对PLC要求低: PLC只需控制一个DO点,不占用CPU运动控制资源。

独立性强: 暂停功能独立于PLC的运动指令发送方式(脉冲、模拟量、总线通讯都适用)。

可靠性高。


缺点

需要驱动器支持专用DI功能。

占用一个PLC DO点和一个驱动器DI点。

需要配置驱动器参数。


方法二:利用PLC运动控制模块/指令的“暂停”功能


许多中高端PLC的运动控制模块或指令集(如西门子S7-1500T / S7-1500 Motion Control、罗克韦尔Logix 5000 Motion、三菱FX5U / Q系列内置SSCNET、汇川AM/AX系列等)提供专门的“暂停”运动控制指令。


原理

PLC通过其运动控制引擎,向伺服驱动器发送特定的“暂停”命令(通常通过总线通讯,如EtherCAT、Profinet IRT、CANopen、MECHATROLINK等)。驱动器收到此命令后,执行与方法一类似的动作:停止并保持当前位置。


实现步骤


1. 硬件与组态:

使用支持高级运动控制的总线通讯(非脉冲方式)。

在PLC编程软件中正确组态运动轴和驱动器。


2. 调用专用指令:

在PLC程序中,找到并调用运动控制库中提供的“暂停轴”或类似指令(如西门子的`MC_Pause`,罗克韦尔的`MAF` - Motion Axis Function with Pause command)。

将需要暂停的轴对象(Axis)作为输入参数传递给该指令。

使用一个BOOL变量(如`Execute`)触发暂停动作。

通常有`Done`、`Busy`、`Error`等状态输出。


3. 恢复运行:

调用“继续运行”或“重新启动”指令(如西门子的`MC_Continue`,罗克韦尔的`MAF` with Continue command)。

同样,恢复指令通常会自动处理从当前位置平滑启动的问题(内部应用加减速)。


优点

编程标准化: 使用PLC标准指令,程序结构清晰。

集成度高: 与PLC的运动规划紧密集成,状态管理方便。

适用于复杂运动: 在多轴协调运动中,可以同步暂停多个轴。

通常能较好地处理恢复时的平滑性。


缺点

依赖特定PLC和运动控制模块: 低端PLC或脉冲控制方式通常不支持。

响应速度略慢于方法一: 需要经过PLC CPU处理、总线通讯传输。

通讯延迟影响: 总线通讯的实时性和抖动可能影响暂停和恢复的精确性(在高质量网络中通常可接受)。


方法三:在PLC侧停止发送运动指令 + 速度模式置零(需谨慎)


● 这种方法相对原始,控制精度和可靠性通常不如前两种。


原理

1. 停止指令源: PLC停止向伺服驱动器发送运动指令(停止脉冲输出、将模拟量速度指令设为0、停止通过通讯发送运动指令)。

2. 切换到速度模式并置零(关键): 在PLC停止运动指令的同时,通过另一个DI点或通讯命令,将伺服驱动器切换到“速度控制模式”,并将速度指令设定值设置为0。在速度模式下设定值为0,驱动器会尝试将电机速度保持在0 RPM,间接达到保持位置的目的(依靠速度环)。


实现步骤


1. 硬件/软件准备:

需要控制驱动器模式切换(DI或通讯)。

需要控制速度指令源(模拟量需输出0V;通讯需发送速度0指令)。


2.PLC程序编写:

◆ 暂停时:

停止当前的运动指令输出(如禁用脉冲通道、设置模拟量输出为0、停止运动指令发送)。

发送命令将驱动器切换到“速度控制模式”(通过DO点或通讯)。

确保速度指令设定值为0(在切换模式前或同时设置好)。

◆ 恢复时:

发送命令将驱动器切换回原来的控制模式(如位置模式)。

重新启动所需的运动指令(从当前位置开始)。


缺点与风险( 强烈注意!)

位置保持精度差: 仅靠速度环为0来保持位置。无法抵抗恒定外力(如垂直轴的重力)!电机会在重力作用下缓慢下滑(溜车),直到速度环检测到速度不为0(但此时位置已偏移),产生反向扭矩试图阻止下滑,导致电机在“0速”附近**来回震荡(爬行现象),无法真正锁住位置。

响应慢: 模式切换需要时间。

控制复杂: 需要管理模式切换和指令源切换,逻辑容易出错。

冲击风险: 恢复时如果模式切换和指令启动不同步,容易产生冲击。

能耗和发热: 震荡状态下电机持续出力,增加能耗和发热。


适用场景

仅适用于水平轴且负载惯性不大、对暂停位置精度要求极低、或者允许短时间缓慢移动的场合。

不推荐用于需要精确定位保持的场合,尤其是垂直轴或有较大恒定外力的场合!


方法四:触发“立即停止”指令 + 记录/恢复位置


1. 暂停时:

触发驱动器的“立即停止”指令(如`P-OT`/`N-OT`限位DI,或`RES/S-RDY`断开,或专门的`STOP`指令)。驱动器会按照预设的急停减速率停止。

关键: 在触发停止的同时或之前,PLC立即读取并记录伺服电机的当前实际位置值(通过编码器反馈,通常需通讯支持)。

2. 恢复时:

使用记录下的实际位置值作为新的起始点。

向驱动器发送一条绝对定位(Absolute Position)指令,目标位置就是刚才记录的位置值(或者发送一条相对定位指令,移动距离为0)。

驱动器会规划一条从当前位置(暂停停止后的位置)到目标位置(记录的位置)的路径。因为目标位置=记录位置,这条路径长度为0,但驱动器会执行回零运动(如果偏差很小,且伺服闭环控制,实际电机可能几乎不动,或者微调)。然后,再执行后续真正的运动指令。


优点

利用了标准的停止功能。


缺点与风险

复杂且不精确: 在触发停止到记录位置之间存在微小延迟,电机位置可能已有微小变化(特别是高速时)。记录的位置可能不是真正停止时的位置。

“回到原位”运动**: 发送目标位置=记录位置的绝对定位指令,驱动器会试图运动到那个点。虽然距离短,必然有一个运动过程(即使是0距离,驱动器也可能有微小调整),可能产生不必要的机械动作或延迟。这不是真正的“保持”后无缝继续。

◆ 实现逻辑复杂。

响应不如方法一快。


总结

● 这种方法本质上是停止并重新定位到停止前记录的位置,而不是真正的动态保持。它试图模拟“保持”,但效果通常不理想,且复杂。不推荐作为主要的暂停保持方法。


关键注意事项与最佳实践总结


1. 首选方法一(驱动器DI暂停): 对于绝大多数需要可靠位置保持的应用,这是最优解。

2. 安全第一: 暂停功能常与急停关联。确保急停触发时,驱动器能安全停止(通常用独立的安全回路触发驱动器的安全扭矩关断STO或安全停止SS1/SS2)。暂停功能本身不是安全功能。

3. 保持扭矩限制: 在驱动器参数中设置暂停状态下的最大保持扭矩(`P-CON`扭矩限制等),防止过载损坏机械或驱动器。

4. 恢复平滑性: 无论哪种方法,恢复运行时务必注意起始速度和加减速。利用驱动器或运动控制指令内置的平滑启动功能。

5. 垂直轴/重力负载: 必须使用方法一或方法二。方法三(速度0)在垂直轴完全不可靠!方法四也不理想。确保驱动器有足够的扭矩保持负载。

6. 通讯 vs 脉冲: 方法一在脉冲控制系统中同样有效且简单。方法二通常需要总线通讯。

7. 测试与调试:

在不同速度、不同负载(尤其是最大负载)下测试暂停功能。

观察暂停瞬间是否有过冲或振动。

测量暂停期间的位置漂移(应极小,通常在几个脉冲或微米级以内)。

测试恢复运行是否平滑、无冲击、位置是否连续。

模拟断电恢复:恢复供电后,驱动器能否保持位置(需要驱动器有编码器电池或绝对值编码器)。

8. HMI交互: 清晰指示“暂停中”状态和“继续”按钮。


结论


在PLC控制伺服系统中实现暂停功能,利用伺服驱动器自带的专用暂停输入端子(DI信号)是最为高效、可靠、精确的方式。它直接作用于驱动器的控制环,响应快,位置保持精度高,实现相对简单。对于集成度要求高的复杂系统,PLC运动控制指令提供的暂停功能也是一个不错的选择,但需注意通讯延迟。应极力避免仅靠停止指令源和速度置零(方法三)来实现需要位置保持的暂停,尤其是在垂直轴应用中。理解不同方法的原理和适用场景,结合具体驱动器型号和PLC功能,并进行充分的测试,是成功实现稳定可靠暂停功能的关键。

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言