1. 项目概述:基于S7-1200 PLC的四层电梯控制系统
去年给本地一家小型商业楼改造电梯控制系统时,我选择了西门子S7-1200 PLC作为核心控制器。这个PLC型号在中小型自动化项目中性价比突出,特别是它的PROFINET通信能力和集成PID功能,非常适合电梯这类需要精确位置控制的场景。四层电梯看似简单,但实际开发中涉及楼层定位、呼叫响应、安全联锁等十余个子系统,用TIA Portal V15编程环境完成整套系统开发大约需要200-300个功能块。
关键提示:S7-1200的6ES7215-1AG40-0XB0型号是最佳选择,它自带4个高速计数器,正好对应电梯的4个楼层位置传感器。
2. 核心需求解析
2.1 电梯基础功能实现
四层电梯必须实现的核心功能包括:
- 楼层内呼/外呼按钮响应(共4层×2个=8个输入点)
- 轿厢位置检测(4个磁簧传感器输入)
- 运行方向指示(上行/下行各1个输出)
- 楼层数码管显示(7段数码管需要7个输出)
实际配置时发现,基础版S7-1200(1214C DC/DC/DC)的14点数字量输入和10点输出刚好够用,但如果要增加紧急制动、超载报警等功能,就需要选择更多I/O点的型号或者扩展模块。
2.2 安全防护需求
电梯作为特种设备,安全设计必须符合GB 7588-2003标准。在PLC程序中需要实现:
- 门锁联锁(厅门和轿门未关闭禁止运行)
- 超速检测(通过编码器脉冲频率判断)
- 紧急停止回路(独立于PLC的硬线回路)
我在程序里专门用OB35组织块做安全监测,这个循环中断组织块以固定100ms周期执行,确保及时响应安全事件。
3. 硬件系统搭建
3.1 主要设备选型
| 设备类型 | 型号 | 关键参数 | 数量 |
|---|---|---|---|
| PLC主机 | 6ES7215-1AG40-0XB0 | 14DI/10DO, 2AI | 1 |
| 扩展模块 | 6ES7223-1BL32-0XB0 | 16DI | 1 |
| 变频器 | G120C 0.75kW | 支持PROFINET | 1 |
| 编码器 | E6B2-CWZ6C | 600P/R | 1 |
| 人机界面 | KTP700 Basic | 7寸触摸屏 | 1 |
3.2 电气接线要点
电机控制回路采用独立的24VDC电源,与PLC控制电源隔离。变频器的启停信号通过PLC的继电器输出控制,速度给定则通过PROFINET通信传输。特别要注意的是:
- 所有安全回路(如急停按钮、门锁)必须采用常闭触点
- 编码器电缆需用双绞屏蔽线,屏蔽层单端接地
- 楼层传感器建议选用NPN型,与PLC的漏型输入匹配
4. 软件设计详解
4.1 程序结构规划
在TIA Portal中采用模块化编程,主要包含以下块:
- OB1:主循环组织块
- OB35:安全监测中断
- FB1:电梯运行控制(带多重实例)
- FC1~FC5:楼层计算、呼叫处理等子功能
- DB1:全局数据块(存储所有运行参数)
// 典型楼层判断逻辑 LD I0.0 // 1楼传感器 S M10.0 // 设置1楼标志 LD I0.1 // 2楼传感器 S M10.1 // 设置2楼标志 ...4.2 关键算法实现
楼层定位算法:采用编码器脉冲计数+楼层传感器校正的方式。在DB1中建立如下数据结构:
| 变量名 | 数据类型 | 说明 |
|---|---|---|
| CurrentFloor | Int | 当前楼层(1-4) |
| TargetFloor | Int | 目标楼层(1-4) |
| PulseCount | DInt | 编码器累计值 |
| FloorHeight | Real | 每层高度(mm) |
通过以下公式计算实时位置:
实际位置 = (PulseCount / 每转脉冲数) × 曳引轮周长 当前楼层 = INT(实际位置 / FloorHeight) + 14.3 HMI界面设计
在WinCC RT Advanced中创建了包含以下关键元素的界面:
- 楼层状态区:显示轿厢当前位置和运行方向
- 呼叫按钮区:1-4层上下行呼叫按钮
- 参数设置区:可调整加速度、减速度等参数
- 故障信息区:实时显示当前报警内容
5. 调试与优化
5.1 现场调试流程
- 先断开电机电源,测试所有输入信号
- 单独测试变频器运行(通过BOP面板)
- 逐步启用PLC控制功能:
- 先测试单层运行
- 再测试多层连续运行
- 最后测试呼叫响应逻辑
5.2 常见问题解决
| 故障现象 | 可能原因 | 解决方案 |
|---|---|---|
| 楼层显示跳动 | 编码器干扰 | 加磁环、检查屏蔽层接地 |
| 平层不准 | 减速距离设置不当 | 重新计算减速曲线 |
| 外呼不响应 | 按钮接线错误 | 检查线路并修改程序 |
| 急停后无法复位 | 安全回路未通 | 检查各安全开关状态 |
5.3 性能优化技巧
- 在OB1中采用状态机编程,减少扫描周期时间
- 对频繁调用的功能使用S7-1200的优化块访问
- 将HMI的刷新周期设置为500ms,减轻通信负荷
- 启用PLC的保持性存储器,防止断电数据丢失
6. 项目交付与扩展
6.1 交付文档清单
完整的项目交付包应包含:
- 电气原理图(PDF+DWG格式)
- PLC程序(TIA Portal V15项目文件)
- HMI界面文件(.hmi格式)
- 设备操作手册(含接线图和参数说明)
- 备件清单(含供应商联系方式)
6.2 可能的扩展方向
- 增加远程监控功能(通过SCADA系统)
- 实现群控(多台电梯协同运行)
- 加入能耗监测模块
- 开发手机APP呼叫功能
在实际调试中发现,S7-1200的Web服务器功能可以直接查看设备状态,这对后期维护非常有用。建议在DB1中专门建立一个维护数据区,记录运行小时数、启停次数等关键数据。