1. 项目背景与核心需求
投币式自助洗衣机在校园、公寓、工厂等公共场所的应用越来越广泛。传统投币洗衣机多采用机械式控制,存在功能单一、维护困难、无法远程监控等问题。基于PLC和组态软件的智能控制系统,能够有效解决这些痛点。
这个项目采用西门子S7-200 PLC作为下位机控制器,配合组态王上位机软件,实现了一套完整的投币洗衣机控制系统。系统主要实现以下功能:
- 投币识别与金额累计
- 洗涤程序选择与控制
- 运行状态实时监控
- 故障报警与记录
- 运营数据统计
2. 系统硬件设计
2.1 硬件选型与配置
核心控制器选用西门子S7-200系列PLC,具体型号为CPU 224XP。这款PLC具有以下优势:
- 14点数字量输入/10点数字量输出
- 2路模拟量输入/1路模拟量输出
- 内置RS485通信接口
- 性价比高,适合中小型控制系统
其他主要硬件组件包括:
- 投币器:采用光电式硬币识别模块,支持1元、5角等常见硬币
- 水位传感器:压力式水位检测,精度±5mm
- 温度传感器:PT100热电阻,测量范围0-100℃
- 电机驱动:采用固态继电器控制洗涤电机
- 电磁阀:控制进水和排水
2.2 I/O分配表
PLC的I/O分配是系统设计的关键环节。以下是详细的I/O分配方案:
| 信号类型 | 地址 | 功能描述 | 备注 |
|---|---|---|---|
| DI | I0.0 | 投币信号(1元) | 脉冲信号 |
| DI | I0.1 | 投币信号(5角) | 脉冲信号 |
| DI | I0.2 | 门开关状态 | 1=关门,0=开门 |
| DI | I0.3 | 水位上限 | |
| DI | I0.4 | 水位下限 | |
| DI | I0.5 | 急停按钮 | 常闭触点 |
| AI | AIW0 | 水温检测 | PT100输入 |
| DO | Q0.0 | 进水电磁阀 | |
| DO | Q0.1 | 排水电磁阀 | |
| DO | Q0.2 | 洗涤电机正转 | |
| DO | Q0.3 | 洗涤电机反转 | |
| DO | Q0.4 | 加热管控制 | |
| DO | Q0.5 | 蜂鸣器报警 |
3. PLC程序设计
3.1 程序结构设计
采用模块化编程思想,将程序分为以下几个功能块:
- 投币金额处理(FC1)
- 洗涤程序选择(FC2)
- 电机控制逻辑(FC3)
- 温度控制(FC4)
- 故障检测与处理(FC5)
3.2 核心逻辑实现
3.2.1 投币金额累计
// 网络1:1元硬币计数 LD I0.0 EU // 检测上升沿 INCW VW100 // VW100存储累计金额(单位:角) // 网络2:5角硬币计数 LD I0.1 EU INCB VB102 // VB102存储5角硬币数量 MOVB VB102, VB103 *I 5, VB103 +I VB103, VW1003.2.2 洗涤程序选择
系统提供三种标准洗涤程序:
- 快洗(3元):15分钟,常温
- 标准洗(4元):30分钟,40℃
- 强力洗(5元):45分钟,60℃
程序选择通过触摸屏按钮实现,PLC接收对应的控制位:
// 网络3:程序选择逻辑 LD M0.0 // 快洗选择 MOVW 30, VW110 // VW110存储洗涤时间(分钟) MOVR 0.0, VD112 // VD112存储目标温度(℃) LD M0.1 // 标准洗选择 MOVW 60, VW110 MOVR 40.0, VD112 LD M0.2 // 强力洗选择 MOVW 90, VW110 MOVR 60.0, VD1124. 组态王界面设计
4.1 监控主界面设计
组态王监控界面主要包括以下区域:
- 设备状态显示区:显示门状态、水位、温度等实时数据
- 投币信息区:显示已投金额、剩余时间
- 控制按钮区:程序选择、启动/暂停、退币等
- 报警信息区:显示当前故障信息
4.2 数据通信配置
PLC与组态王之间采用PPI通信协议,具体配置步骤如下:
- 在组态王中新建设备,选择"西门子_S7200PPI"驱动
- 设置通信参数:
- 波特率:9600bps
- 数据位:8
- 停止位:1
- 校验方式:偶校验
- 定义设备地址:默认地址为2
- 建立变量连接,例如:
- 变量名:Door_Status
- 寄存器类型:I
- 寄存器地址:0.2
- 数据类型:Bit
4.3 历史数据记录
组态王提供完善的历史数据记录功能,可以记录以下数据:
- 每日使用次数
- 收入统计
- 故障发生时间及类型
- 各程序选择频率
配置方法:
- 创建历史数据记录组
- 设置记录周期(如每分钟记录一次)
- 选择需要记录的变量
- 设置存储方式(循环存储或按时间存储)
5. 系统调试与优化
5.1 调试步骤
硬件检查:
- 确认所有传感器、执行机构接线正确
- 检查PLC电源及接地
- 测试通信线路
单元测试:
- 单独测试投币识别功能
- 测试各执行机构动作
- 验证传感器信号
联调测试:
- 模拟完整洗涤流程
- 测试异常情况处理
- 验证组态王监控功能
5.2 常见问题解决
投币识别不准确:
- 检查投币器电源(需稳定12VDC)
- 调整光电传感器灵敏度
- 清洁硬币通道
通信中断:
- 检查RS485接线(A/B极性)
- 确认通信参数设置一致
- 检查终端电阻(120Ω)
水位控制异常:
- 校准水位传感器
- 检查气管是否漏气
- 调整PLC中的水位判断延时
6. 系统扩展与改进
6.1 支付方式扩展
基础系统仅支持硬币支付,可扩展以下支付方式:
- IC卡支付:增加RFID读卡器
- 移动支付:集成二维码扫描模块
- 会员系统:增加用户管理功能
6.2 远程监控升级
通过以下方式实现远程监控:
- 增加GPRS模块,实现短信报警
- 使用组态王Web发布功能
- 集成OPC Server,与上位管理系统对接
6.3 节能优化措施
- 增加水位多档选择
- 实现根据衣物重量自动调整水量
- 增加预约功能,错峰用电
7. 维护与保养指南
7.1 日常维护
每日检查:
- 清洁机器外观
- 检查投币器状态
- 确认门锁功能正常
每周维护:
- 清洁内部滤网
- 检查各管路连接
- 测试紧急停止功能
7.2 定期保养
每月保养:
- 校准传感器
- 检查电机碳刷
- 清洁控制箱灰尘
每季度保养:
- 更换磨损部件
- 更新PLC备份程序
- 检查接地电阻
这套基于S7-200 PLC和组态王的投币洗衣机控制系统,经过实际运行测试,稳定性良好,操作简便,维护成本低。系统设计充分考虑了扩展性,可以根据需要增加新的功能模块。在实际应用中,建议定期备份PLC程序和组态王工程文件,以备不时之需。