PLC 与上位机 WinCC 的通信配置方法
1. 准备工作与环境确认
在开始配置之前,请确保具备以下软硬件条件。缺少任何一项都可能导致通信失败。
-
硬件准备
- 一台已安装西门子编程软件的工控电脑。
- 支持以太网通信的西门子 PLC(如 S7-1200, S7-1500, S7-300 等)。
- 一根标准的以太网连接线(RJ45)。
- 工业交换机(可选,若电脑直连 PLC 则不需要)。
-
软件环境
- 安装完整的 TIA Portal(博途)或 STEP 7 V5.x 套件。
- 安装对应的 WinCC 版本(如 WinCC Professional, WinCC V7.x)。
- 安装最新的 USB/PPI/MPI/CP5611 驱动(若使用串口卡需特定驱动)。
2. PLC 侧参数设置
首先配置 PLC,使其处于可被访问的状态。不同系列操作略有差异,此处以 S7-1200/1500 为例。
-
连接设备并供电
- 连接 网线至 PLC 的网口和电脑网卡。
- 上电 启动 PLC 控制器,等待“RUN”指示灯亮起。
-
分配 IP 地址
- 打开 TIA Portal 或 Simatic Manager 项目。
- 找到 “在线与诊断”功能菜单。
- 读取 当前设备的实际 MAC 地址和 IP 配置。
- 修改 PLC 的 IP 地址为静态 IP。推荐设置为
192.168.0.1,子网掩码为255.255.255.0。 - 保存 并 编译 硬件配置,将更改 下载 到 CPU。
-
激活 PUT/GET 通信权限(针对 S7-1200/1500)
- 双击 进入 CPU 属性设置界面。
- 展开 “保护”选项卡。
- 勾选 “允许来自远程对象的 PUT/GET 通信访问”。
- 确认 修改并再次 下载 硬件组态。此步骤若不执行,WinCC 将无法读取数据块。
3. 计算机网卡与 PG/PC 接口配置
配置电脑自身的网络适配方式,确保软件能识别到底层通讯硬件。
-
设置本地网卡 IP
- 右键 点击桌面“网络和共享中心”或系统托盘网络图标。
- 进入 “更改适配器设置”。
- 选中 实际连接 PLC 的物理网卡(如 Intel Ethernet Connection)。
- 右键 选择“属性”,双击"Internet 协议版本 4 (TCP/IPv4)"。
- 输入 与 PLC 同网段的 IP,例如
192.168.0.10。 - 注意 电脑 IP 不能与 PLC IP 相同,最后一段数字建议大于
1。
-
配置 PG/PC 接口(经典 WinCC 必需)
- 点击 开始菜单,搜索并打开“设置 PG/PC 接口”。
- 查看 “应用程序访问点”下拉框,确保显示为
API for Program或类似标识。 - 选择 “用于连接的接口”,在下拉列表中选中你的物理网卡驱动(如
TCPIP.Auto或S7ONLINE(STEP7)->*Local Connection*)。 - 测试 点击“设置参数”,在弹出窗口中确认网卡 IP 显示正确。
- 关闭 所有设置窗口,使配置生效。
4. WinCC 变量管理配置
这是最核心的环节,需要在 SCADA 软件中建立通往 PLC 的通道。
-
新建变量管理
- 启动 WinCC 项目管理器,新建 一个项目。
- 展开 左侧树形目录中的“变量管理”。
- 右键 点击根目录,选择“添加新的驱动程序”。
-
选择通讯驱动
- 浏览 弹出的驱动器列表,寻找
SIMATIC S7 Protocol Suite.nch。 - 双击 该文件名,将其加载到项目中。
- 注意 若使用 TIA Portal WinCC,则通常自动集成,无需手动添加驱动。
- 浏览 弹出的驱动器列表,寻找
-
配置通道单元
- 展开 新出现的
SIMATIC S7 Protocol Suite条目。 - 双击 其中的
TCP/IP驱动。 - 右键 点击
TCP/IP,选择“新建驱动运行程序单元”。 - 命名 该单元,例如
Channel_Unit_1。 - 配置 参数:
- 槽位 (Slot):根据 PLC 类型填写。S7-300/400 通常为
2;S7-1200/1500 通常为1。 - 机架 (Rack):通常默认为
0。 - IP 地址:填入 PLC 设定的 IP,如
192.168.0.1。 - MPI 地址:若使用以太网此项留空或填
1,视具体驱动提示而定。
- 槽位 (Slot):根据 PLC 类型填写。S7-300/400 通常为
- 展开 新出现的
-
创建变量标签
- 右键 点击刚才建立的
Channel_Unit_1,选择“新建变量”。 - 输入 变量名称,例如
Tank_Level。 - 设置 数据类型。常用包括
Int(整数),Real(浮点数),Bool(开关量)。 - 定义 地址。格式通常为
DB1.DBD0(数据块编号。字节偏移)。 - 验证 地址有效性,确保与 PLC 程序中的 DB 块定义一致。
- 右键 点击刚才建立的
5. 通信流程图
以下是整个配置过程的数据流向逻辑,帮助理解信号传输路径。
graph TD
Start["1. 用户开始配置"] --> Hardware["2. 硬件连接\n(网线与供电)"]
Hardware --> PLC_Side["3. PLC 端设置\n(IP与PUT/GET)"]
PLC_Side --> PC_Network["4. 电脑网络配置\n(PG/PC接口)"]
PC_Network --> WinCC_Driver["5. WinCC 通道配置\n(TCP/IP)"]
WinCC_Driver --> Variable_Mapping["6. 变量映射\n(DB块与地址)"]
Variable_Mapping --> Final_Test["7. 最终读写测试"]
Final_Test --> Success{"通信成功?"}
Success -- "是" --> Run["进入监控运行模式"]
Success -- "否" --> Debug["排查错误代码"]
6. 常见错误与排查表
配置过程中可能遇到连接超时或读取错误的状况。下表列出了高频问题及对应解决方案,请对照检查。
| 错误现象 | 可能原因 | 解决方法 |
|---|---|---|
| 无连接 | 网线物理损坏或未插紧 | 更换 一根网线,观察 网卡端口灯是否闪烁 |
| Ping 不通 | 电脑与 PLC 不在同一网段 | 检查 电脑 IP 是否与 PLC 在同一子网 (如 192.168.0.x) |
| 地址无效 | DB 块不存在或地址越界 | 核对 PLC 程序中 DB 块的长度与实际写入的偏移量 |
| 读取延迟高 | 轮询周期设置过短 | 调整 变量的更新周期,增加至 500ms 以上 |
| PUT/GET 拒绝 | PLC 保护未开启 | 返回 PLC 属性,勾选 “允许远程对象访问” |
7. 运行与调试验证
完成上述设置后,需要进行实时性验证以确保系统稳定。
-
启用仿真或直接运行
- 点击 WinCC 工具栏上的“运行系统”按钮。
- 切换 到操作员屏幕,显示刚创建的变量控件(如输入框或数值显示)。
-
强制数据测试
- 使用 PLCSIM 进行仿真(若无实体 PLC)。
- 在 仿真器中 修改 某个 DB 寄存器的值。
- 观察 WinCC 画面数值是否同步更新。
- 尝试 从 WinCC 写入 一个控制命令给 PLC,确认双向通信正常。
-
性能优化
- 如果 画面刷新卡顿,减少 同一画面内的活跃变量数量。
- 将 不常用的后台数据(如历史趋势采集) 设置 为较长的记录间隔。
- 避免 在高速循环中频繁调用大容量的字符串或数组变量。
-
日志记录
- 开启 WinCC 的系统消息日志功能。
- 定期 导出通信报警记录,分析偶发的断开事件。
- 关注 错误信息中提到的时间戳,结合 PLC 日志定位故障时段。

暂无评论,快来抢沙发吧!