2. 基于CFC的电机启停控制回路实现
控制任务与信号定义
本例在CFC中搭建一个典型的电机启停控制回路,控制对象为三相异步电机M01,通过接触器KM1实现主回路通断。控制逻辑包含三个核心功能:启动(Start)、停止(Stop)、故障复位(Fault Reset)。电机运行状态由接触器辅助触点反馈至DI通道,故障信号由热继电器FR1的常开触点提供。
先明确I/O分配与信号极性约定:
| 信号名称 | 类型 | 地址 | 有效电平 | 说明 |
|---|---|---|---|---|
| Start_PB | DI | I0.0 | 1=按下 | 启动按钮(常开) |
| Stop_PB | DI | I0.1 | 0=按下 | 停止按钮(常闭) |
| Fault_FR1 | DI | I0.2 | 1=故障 | 热继电器动作 |
| Run_FB | DI | I0.3 | 1=运行 | KM1辅助触点反馈 |
| Reset_PB | DI | I0.4 | 1=按下 | 故障复位按钮 |
| KM1_Cmd | DO | Q0.0 | 1=吸合 | 接触器KM1线圈 |
| Run_Lamp | DO | Q0.1 | 1=亮 | 运行指示灯 |
| Fault_Lamp | DO | Q0.2 | 1=亮 | 故障指示灯 |
CFC回路结构与逻辑设计
在CFC编辑器中,从PCS 7 Library V8.1的Blocks文件夹拖入以下功能块:AND、OR、NOT、RS(复位优先触发器)、TON(延时接通)。电机启停采用RS触发器实现自保持,启动条件为Start_PB上升沿且无故障,停止条件为Stop_PB断开或故障动作。
关键逻辑关系:
- RS触发器的S端 = Start_PB AND NOT Fault_FR1 AND NOT Stop_PB
- RS触发器的R1端 = Stop_PB OR Fault_FR1
- RS输出Q → KM1_Cmd(DO)和Run_Lamp(DO)
- Fault_Lamp = Fault_FR1 AND NOT Reset_PB(复位后熄灭)
- Run_FB反馈用于状态监视,不参与控制逻辑,仅接入OS画面显示
注意:Stop_PB为常闭触点,正常时I0.1=1,按下时I0.1=0。因此停止条件应取NOT Stop_PB,即I0.1=0时触发停止。在CFC中通过NOT块将I0.1取反后接入RS的R1端。
CFC组态关键步骤
- 在CFC编辑器中新建一个CFC图表,命名为
MotorCtrl_M01,插入到AS站的CFC文件夹下。 - 从PCS 7 Library V8.1的
Blocks文件夹中拖入所需功能块:2个AND、1个OR、2个NOT、1个RS。 - 将DI通道驱动块(
PCS7 DiIn)拖入,分别关联I0.0至I0.4,设置通道驱动块的PV_In连接到实际地址。 - 将DO通道驱动块(
PCS7 DoOut)拖入,分别关联Q0.0至Q0.2。 - 按上述逻辑关系连接各功能块的输入输出引脚。注意RS块的S端为置位输入,R1端为复位输入(复位优先),Q为输出。
- 编译CFC图表,检查无错误后下载到PLCSIM。
RS触发器在PCS 7中默认复位优先,即当S和R1同时为1时,输出Q=0。这符合电机控制的安全要求:停止和故障信号优先于启动信号。
PLCSIM验证方法
打开PLCSIM并下载硬件组态与CFC程序后,通过PLCSIM的输入输出监视功能模拟DI信号变化,观察DO输出状态:
| 测试场景 | 操作 | 预期KM1_Cmd | 预期Run_Lamp | 预期Fault_Lamp |
|---|---|---|---|---|
| 正常启动 | I0.0置1后复位,I0.1保持1,I0.2=0 | 1 | 1 | 0 |
| 正常停止 | I0.1置0 | 0 | 0 | 0 |
| 故障动作 | I0.2置1 | 0 | 0 | 1 |
| 故障复位 | I0.2置0后,I0.4置1再复位 | 0 | 0 | 0 |
| 故障后启动 | I0.2=1时按I0.0 | 0 | 0 | 1 |
PLCSIM中DI信号需手动置位/复位模拟。Stop_PB为常闭触点,正常运行时I0.1应保持为1,测试停止功能时将其置0。若忘记此约定,会导致启动后立即停止。
常见问题与排查
- 启动后无法自保持:检查RS块的S端是否在Start_PB复位后仍为1。若S端直接接Start_PB,按钮释放后S=0,RS输出会保持,但若R1端误接Stop_PB原始信号(常闭=1),则R1=1导致复位。确认R1端接的是NOT Stop_PB。
- 故障后无法复位:检查Reset_PB是否关联到故障灯逻辑的NOT块输入,以及Fault_FR1是否已恢复为0。RS块本身不需要复位,故障消失后重新启动即可。
- DO输出无动作:检查DO通道驱动块的地址是否正确映射到Q0.0,以及CFC图表是否已编译下载。