西门子 S7-300 PLC 通过 PROFIBUS-DP 与丹佛斯 FCD300 变频器通讯,需完成硬件组态、参数设置、通讯数据映射三个核心步骤,实现 PLC 对变频器的启停、频率设定及状态监控。以下是详细实现方案:
硬件清单
西门子 S7-300 PLC(如 CPU 315-2DP,自带 PROFIBUS-DP 接口)
丹佛斯 FCD300 变频器(需配备 PROFIBUS-DP 通讯模块,如FC-302 PROFIBUS 模块,型号 130B0171)
PROFIBUS-DP 电缆(屏蔽双绞线,带总线连接器)
西门子 STEP 7 编程软件(V5.5 及以上)
丹佛斯 FCD300 的 GSD 文件(用于 STEP 7 组态,可从丹佛斯官网下载)
接线方式
将 S7-300 的 PROFIBUS-DP 接口(通常为 X2)通过 PROFIBUS 电缆连接至 FCD300 的 PROFIBUS 模块接口(标有 “DP IN”/“DP OUT”)。
总线两端的设备(如 PLC 和最后一台变频器)需将总线连接器的终端电阻拨至 “ON”,中间设备拨至 “OFF”。
屏蔽层需与总线连接器的屏蔽壳可靠连接,单端接地(PLC 侧),减少干扰。
丹佛斯 FCD300 需通过 GSD 文件在 STEP 7 中识别为 PROFIBUS 从站,安装步骤:
从丹佛斯官网下载 FCD300 的 PROFIBUS GSD 文件(通常为.gsd
或.gsdml
格式)。
打开 STEP 7,点击 “Options”→“Install GSD File”,选择下载的 GSD 文件,完成安装。
安装后,在 “Hardware Catalog” 中可找到 “Danfoss”→“FCD300” 相关设备。
创建项目与组态 CPU
添加 FCD300 从站
设置通讯数据区(I/O 映射)
输出区(PLC→变频器,控制指令):通常设为 2 字节(如 PZD1 = 控制字,PZD2 = 频率设定值)。
输入区(变频器→PLC,状态反馈):通常设为 2 字节(如 PZD1 = 状态字,PZD2 = 实际频率)。
双击 FCD300 从站图标,进入 “Properties”→“Inputs/Outputs”,配置 PLC 与变频器的通讯数据长度:
记录输入 / 输出地址(如输出地址 QW256,输入地址 IW256),用于后续程序编写。
通过变频器操作面板或丹佛斯调试软件(如 MCT10)设置 PROFIBUS 通讯参数:
参数号 | 参数名称 | 设定值 | 说明 |
---|
5-00 | 通讯协议选择 | 3 | 选择 “PROFIBUS DP” 协议 |
5-01 | PROFIBUS 站号 | 3 | 与 STEP 7 组态中的从站地址一致 |
5-02 | 波特率 | 5 | 设为 1.5Mbps(与 PLC 一致,5 对应 1.5Mbps) |
5-03 | 控制源选择 | 6 | 选择 “PROFIBUS” 控制(由 PLC 发启停指令) |
5-04 | 频率给定源选择 | 6 | 选择 “PROFIBUS” 给定(由 PLC 设频率) |
5-10 | PZD 数据长度(输出) | 2 | PLC→变频器:2 字节(控制字 + 频率) |
5-11 | PZD 数据长度(输入) | 2 | 变频器→PLC:2 字节(状态字 + 实际频率) |
5-12 | 故障时 PROFIBUS 响应 | 1 | 故障时保持最后状态(或设 0 = 自由停车) |
设置后需重启变频器使参数生效。
PLC→变频器(输出区,如 QW256):
变频器→PLC(输入区,如 IW256):
启动变频器 + 设定频率:
ladder
// 控制字:启动(bit0=1),正转(bit2=0)
LD M0.0 // 启动信号(如按钮X0.0)
MOV W#16#0001 QW256 // 控制字=0001(启动)
// 设定频率25Hz:25Hz / 50Hz × 4000H = 2000H
LD M0.0
MOV W#16#2000 QW258 // 频率设定值=2000H(25Hz)
停止变频器 + 故障复位:
ladder
// 停止:控制字bit1=1
LD M0.1 // 停止信号(如按钮X0.1)
MOV W#16#0002 QW256 // 控制字=0002(停止)
// 故障复位:控制字bit10=1(持续1-2秒)
LD M0.2 // 复位信号(如按钮X0.2)
MOV W#16#0400 QW256 // 控制字=0400(复位)
读取变频器状态:
ladder
// 读取运行状态(状态字bit0=1)
LD IW256
AN M1.0
A W#16#0001
= M1.0 // M1.0=1表示运行中
// 读取实际频率(IW258)并转换为Hz
LD M8000
L IW258
L 50.0
*R 16384.0
T MD200 // MD200=实际频率(浮点数)
通讯失败(从站未就绪)
检查 PROFIBUS 站号(变频器 5-01 参数与 STEP 7 组态必须一致)。
波特率不匹配:确认 PLC 与变频器的波特率(如 1.5Mbps),用 STEP 7 的 “PROFIBUS Diagnostics” 工具检测总线状态。
总线连接器接触不良:重新插拔连接器,确保屏蔽层可靠接地。
无法控制变频器或频率无响应
数据读写错误或波动
西门子 S7-300 与丹佛斯 FCD300 的 PROFIBUS 通讯核心是 “GSD 文件组态 + 参数匹配 + 数据映射”。关键在于确保站号、波特率、数据长度一致,控制字 / 状态字按协议格式定义。调试时可通过 STEP 7 的 “Online” 功能监控从站状态,用变频器面板查看通讯错误代码(如 5-99 参数)快速定位问题。