Smart PLC与Wincc通过Simatic NET建立OPC通讯(1)
1. 环境准备与软件安装
在开始配置Smart PLC与WinCC的OPC通讯之前,我们需要先准备好必要的硬件和软件环境。硬件方面,你需要一台S7-200 SMART PLC和一台带有集成以太网卡的PC机。软件方面则需要安装以下组件:
- STEP 7-Micro/WIN SMART V2.1(用于PLC编程)
- STEP 7 Professional(TIA Portal V13 SP1 Upd 9)
- SIMATIC NET V13 SP2
- Windows 7 Professional 64位 SP1操作系统
我建议在安装软件时特别注意版本匹配问题。在实际项目中,我遇到过因为SIMATIC NET版本与OPC服务器版本不匹配导致的组态错误。比如,如果你使用的是V13版本的OPC服务器,那么SIMATIC NET也必须是V13版本,否则系统会报错。安装完成后,建议先重启电脑,确保所有服务都能正常启动。
2. 在TIA Portal中配置PC Station
2.1 创建新项目
打开TIA Portal V13 SP1 Upd 9软件,在Portal视图中点击"创建新项目"。这里有个小技巧:我习惯给项目起一个包含日期和用途的名称,比如"20230801_SMART_OPC_Test",这样后期查找起来会方便很多。
2.2 添加PC系统
进入项目视图后,在项目树下双击"添加新设备"。在弹出的对话框中,选择"PC系统">"常规PC",命名为"PC station"。这里要注意的是,虽然系统允许使用中文命名,但我建议使用英文名称,避免后续可能出现的兼容性问题。
2.3 添加OPC服务器和常规IE卡
在设备视图中,打开硬件目录:
- 找到"用户应用程序">"OPC服务器",双击添加
- 找到"通信模块">"PROFINET/Ethernet">"常规IE",双击添加
添加常规IE卡时,记得要设置IP地址和子网。我通常会使用192.168.0.x这个网段,比如给PC分配192.168.0.100,给PLC分配192.168.0.22。这里有个重要提示:在选择OPC服务器版本时一定要仔细,因为一旦拖入组态栏后,版本号就无法修改了。
3. 建立S7连接与参数配置
3.1 创建S7连接
在网络视图中点击"连接",选择"S7连接"。默认情况下系统会创建HMI连接,我们需要将其修改为OPC连接。具体操作是:右键点击OPC server,选择"添加新连接"。
3.2 设置连接参数
在创建新连接对话框中:
- 选择"未指定"
- 本地接口选择"IE general"
- 点击"添加"
然后在属性设置中:
- 常规>常规:伙伴站点及接口设置为"未知"
- 伙伴IP地址设置为PLC的IP(如192.168.0.22)
- 地址详细信息中,伙伴TSAP设置为03.00
这里要特别注意TSAP值的设置,我在实际项目中遇到过因为TSAP值设置错误导致通讯失败的情况。对于S7-200 SMART PLC,03.00是常用的TSAP值。
4. 生成XDB组态文件
4.1 配置XDB生成选项
在网络视图中选中PC station站点,进入属性>XDB组态,勾选"生成XDB文件"选项。然后对整个项目进行编译。编译过程中要留意是否有错误提示,特别是版本兼容性相关的警告。
4.2 检查生成的XDB文件
编译成功后,系统会在项目目录下生成XDB文件。我建议把这个文件备份到安全位置,因为后续如果重新编译项目,旧的XDB文件会被覆盖。在实际项目中,我习惯在文件名中加入日期和版本信息,方便管理。
5. 使用Station Configurator导入XDB文件
5.1 打开Station Configurator
在电脑的开始菜单中搜索"STATION CONFIGURATOR"并打开。这个工具是SIMATIC NET的重要组成部分,负责管理PC站的配置。
5.2 导入XDB文件
在Station Configuration Editor中点击"Import Station",选择之前生成的XDB文件进行导入。导入前请确认以下几点:
- 电脑的本地IP地址设置与项目中配置的一致
- 防火墙设置允许相关通信
- SIMATIC NET的相关服务都已启动
导入成功后,可以在编辑器中看到配置好的OPC服务器和IE卡。如果导入失败,最常见的原因是IP地址冲突或XDB文件版本不匹配。
6. PLC侧设置与连接测试
6.1 设置PLC IP地址
使用STEP 7-Micro/WIN SMART软件设置S7-200 SMART PLC的IP地址为192.168.0.22(与项目中配置的一致)。然后用网线连接PLC的以太网口和电脑的以太网口。
6.2 使用OPC Scout测试通讯
在开始菜单中搜索并打开"OPC Scout V10",这是SIMATIC NET自带的测试工具。我们可以通过它来建立测试变量,比如MB10、MB11、MD20等。然后在STEP 7-Micro/WIN SMART的状态图表中给这些变量赋值,观察OPC Scout中是否能正确读取。
测试时我建议先从简单的位变量(如M区)开始,确认基本通讯正常后再测试复杂的数据类型。如果遇到V区数据无法访问的问题,可以尝试先在OPC Scout中建立M区变量,然后修改属性来访问V区数据。
7. 常见问题排查
在实际项目中,我遇到过几个典型问题:
版本不匹配:OPC服务器版本与SIMATIC NET版本不一致会导致组态错误。解决方法很简单 - 确保两者版本一致。
TSAP设置错误:S7-200 SMART通常使用03.00作为TSAP值,设置错误会导致连接失败。
防火墙阻止:Windows防火墙可能会阻止OPC通信。可以暂时关闭防火墙测试,或者添加相应的例外规则。
IP地址冲突:确保PLC和PC的IP地址在同一子网且不冲突。我习惯用ping命令先测试基础网络连通性。
变量访问问题:对于V区数据,需要在OPC Scout中建立DB1的数据块变量。如果直接建立失败,可以先建M区变量再修改属性。
记得每次修改配置后,都要重新编译项目并导入新的XDB文件。我习惯在每次修改前备份当前可用的配置,这样如果新配置有问题,可以快速回退。
