S7-200 SMART V2.2 新功能

STEP 7-Micro/WIN SMART V2.2 和 S7-200 SMART V2.2 CPU 引入了以下新功能：

● 增加了新模块：
– 16 点数字输入模块 (EM DE16) (6ES7288-2DE16-0AA0)
– 16 点继电器型数字量输出模块 (EM QR16) (6ES7288-2QR16-0AA0)
– 16 点晶体管型数字量输出模块 (EM QT16) (6ES7288-2QT16-0AA0)
– 扩展电缆，1m (6ES7288-6EC01-0AA0)
● 支持两个 Modbus RTU 主站
● 改进了添加自定义库的功能
● 支持开放式用户通信

关于S7-200 SMART的更多特点和技术参数可以参考如下文档：

《S7-200 SMART 系统手册 》

《S7-200 SMART 产品样本》

《S7-200 SMART CPU 固件更新 V2.1》

《S7-200 SMART DP01 GSD 文件》

增加了新模块

● 增加了16点数字输入模块 (EM DE16) (6ES7288-2DE16-0AA0)

● 16 点继电器型数字量输出模块 (EM QR16) (6ES7288-2QR16-0AA0)

● 16 点晶体管型数字量输出模块 (EM QT16) (6ES7288-2QT16-0AA0)

支持两个Modbus RTU主站

STEP 7-Micro/WIN SMART V2.2 版本软件增加1 个Modbus RTU 主站指令库。

S7-200 SMART CPU V2.2 版本之前的CPU集成的RS485 端口（端口 0 ）以及SB CM01 信号板（端口 1 ）都可以作为 Modbus RTU 主站或从站，
但是两个通信端口不能同时作为主站或者同时作为从站。

S7-200 SMART CPU V2.2 版本的CPU 集成的RS485 端口（端口 0 ）和SB CM01 信号板（端口 1 ）通过分别调用Modbus RTU Master和Modbus RTU Master2
指令库，可以使得这两个通信端口同时作为Modbus RTU主站。

改进了添加自定义库功能

STEP 7-Micro/WIN SMART V2.2 版本软件改进了自定义库功能。
老版本软件用户自定义库存放地址不统一，不利于指令库的版本更新与维护。

STEP 7-Micro/WIN SMART V2.2 版本软件取消了“添加/删除库”操作，增加了“打开库文件夹”操作。
新增加的自定义指令库都将统一地添加到STEP 7-Micro/WIN SMART库文件夹中，存储地址统一了。
备注：STEP 7-Micro/WIN SMART库文件夹一般存储路径为C:\Users\Public\Documents\Siemens\STEP 7-MicroWIN SMART\Lib

支持开放式用户通信

S7-200 SMART V2.2 开始支持TCP、ISO-on-TCP和UDP等开放式用户通信（OUC），S7-200 SMART 可以与支持TCP、ISO-on-TCP或UDP协议的第三方设备通信。

S7-200 SMART V2.2 支持的OUC协议类型:

传输协议 | 遵循标准
TCP | RFC793
ISO-on-TCP | RFC1006
UDP | RFC768

S7-200 SMART V2.2 支持的OUC协议特点:

传输协议 | 连接通信 | 消息流或数据流
TCP | Yes | 数据流
ISO-on-TCP | Yes | 消息流
UDP | No | 消息流

S7-200 SMART V2.2 支持的OUC协议连接资源:
1.支持8个开放式通信主动连接资源
2.支持 8个开放式通信被动连接资源

STEP 7-Micro/WIN SMART V2.2 版本软件开始支持开放式用户通信，该软件提供了两种开放式用户通信编程方式：OUC 指令和OUC 指令库。

OUC 指令库使用非常简单、方便，更便于用户编程，建议用户使用指令库编程，固文本只介绍OUC 指令库的使用。
OUC 指令库包含以下库指令：
● TCP_CONNECT：创建 TCP 连接。
● ISO_CONNECT：创建 ISO-on-TCP 连接。
● UDP_CONNECT：创建 UDP 连接。
● TCP_SEND：发送用于 TCP 和 ISO-on-TCP 连接的数据指令。
● TCP_RECV：接收用于 TCP 和 ISO-on-TCP 连接的数据指令。
● UDP_SEND：发送用于 UDP 连接的数据指令。
● UDP_RECV：接收用于 UDP 连接的数据指令。
● DISCONNECT：终止所有协议的连接。

TCP通信

下面以TCP通信为例介绍OUC指令库的使用。
TCP通信为有连接通信，通信双方进行数据交换之前首先需要建立TCP连接，TCP客户端会向TCP服务器发送建立TCP连接请求，TCP服务器接收到连接请求后，
服务器会发回建立连接应答，客户端确认服务器发回的应答之后TCP连接就被成功建立了。
TCP连接建立后，通信双方就可以发送和接收数据了。通信结束后，通信双方可以断开连接，释放通信资源。 TCP通信流程见下图。

1.S7-200 SMART CPU 首先需要调用TCP_Connect建立TCP连接

TCP_CONNECT指令主要参数如下：
●Req为TRUE，启动连接操作
●Active为TRUE，则S7-200 SMART 为TCP客户端，否则为TCP 服务器。
●ConnID 连接ID
●IPaddr1~IPaddr4: 伙伴方IP地址
●RemPort 伙伴通信端口
●LocPort 本地通信端口

2.TCP通信连接建立后，S7-200 SMART CPU 需要调用TCP_SEND 指令发送数据，调用TCP_RECV指令接收数据。

TCP_SEND指令主要参数如下：
●Req为TRUE，启动数据发送操作
●ConnID 连接ID，需要与TCP_CONNECT 建立的连接ID相同。
●DataLen 发送数据长度，最大长度为1024字节
●DataPtr 发送数据指针

TCP_RECV指令主要参数如下：
●ConnID 连接ID，需要与TCP_CONNECT 建立的连接ID相同。
●MaxLen 允许接收数据长度，最大长度为1024字节
●DataPtr 接收数据指针
●Length 接收数据实际长度

3.TCP通信连接建立后，如果不再需要该连接，则可以调用DISCONNECT终止之前建立的连接。

TCP_RECV指令主要参数如下：
●Req为TRUE，启动断开连接操作
●ConnID 连接ID，需要与TCP_CONNECT 建立的连接ID相同。

4.调用开放式用户通信指令库，需要在程序中为其分配库存储区。

注意：分配的库存储器区域不能与程序中其他地址重叠。


无标题文档

简单移植

硬件对比

首先，对比S7-200 与 S7-200 SMART的硬件配置。如下表所示：

表1. S7-200 CPU参数

CPU类型 | CPU 221 | CPU 222 | CPU 224 | CPU 224 XP | CPU 226
集成 DI/DO | 6/4 | 8/6 | 14/10 |  | 24/16
集成 AI/AO | - | - | - | 2/1 | -
最大 DI/DO/使用扩展模块的最大通道数 | - | 48/46/94 | 114/110/224 |  | 128/128/256
最大 AI/AO//使用扩展模块的最大通道数 | - | 16/8/16 | 32/28/44
扩展模块数量 | - | 2 | 7
程序存储器 | 4 KB |  | 12 KB | 16 KB | 24 KB
用户存储器（V区） | 2 KB |  | 8 KB | 10 KB
保持性 | 内部电容+电池
高速计数器 | 4*30 KHz，其中2*20 KHz A/B计数器可用 |  | 6*30 KHz，其中4*20 KHz A/B计数器可用 | 4*30 KHz，2*20 KHz ，其中3*20 KHz+1*100 KHz A/B计数器可用 | 6*30 KHz，其中4*20 KHz A/B计数器可用
通讯接口 RS485 | 1 |  |  | 2
- PPI | 支持
- MPI | 支持
- 自由口（ASCII协议） | 支持
以太网 S7 通讯 | - | 扩展CP 243-1实现
DC 5V 总线电流 | - | 340 mA | 660 mA |  | 1000 mA
DC 24V 传感器电源 | 180 mA |  | 280 mA |  | 400 mA
尺寸 W * H * D (mm) | 90*80*62 |  | 120.5*80*62 | 140*80*62 | 196*80*62

表2. S7-200 SMART CPU参数

CPU类型 | SR20 ST20 | SR30 ST30 | SR40 ST40 | SR60 ST60 | CR40 | CR60
集成 DI/DO | 12/8 | 18/12 | 24/16 | 36/24 | 24/16 | 36/24
集成 AI/AO | - | - | - | - | - | -
I/O过程映像区 | DI：256 / DO：256
模拟映像 | AI：56 / AO：56 |  |  |  | - | -
扩展模块数量 | 6+1 （信号板） |  |  |  | - | -
程序存储器 | 12 KB | 18 KB | 24 KB | 30 KB | 12 KB
用户存储器（V区） | 8 KB | 12 KB | 16 KB | 20 KB | 8 KB
保持性 | 永久保存
高速计数器 | 4*200 KHz，其中2*100 KHz A/B计数器可用
通讯接口 RS485 | 1+1 （信号板） |  |  |  | 1
- PPI | 支持
- MPI | 支持
- 自由口 （ASCII协议） | 支持
以太网 S7 通讯 | 1
DC 5V 总线电流 | 1400 mA |  |  |  | -
DC 24V 总线电流 | 300 mA
尺寸 W * H * D (mm) | 90*100*81 | 110*100*81 | 125*100*81 | 175*100*81 | 125*100*81 | 175*100*81

表3. S7-200 信号模块

模块类型 | 订货号 | 模块描述
DI | 6ES7 221-1BF22-0XA8 | EM221：DI 8* 24V DC
 | 6ES7 221-1BH22-0XA8 | EM221：DI 8* 24V DC
DO | 6ES7 222-1BF22-0XA8 | EM222：DO 8*24V DC
 | 6ES7 222-1HF22-0XA8 | EM222：DO 8*继电器
DI/DO | 6ES7 223-1BF22-0XA8 | EM223 ：DI 4* DC 24V / DO 4* DC 24V
 | 6ES7 223-1HF22-0XA8 | EM223 ：DI 4* DC 24V / DO 4* 继电器
 | 6ES7 223-1BH22-0XA8 | EM223 ：DI 8* DC 24V / DO 8* DC 24V
 | 6ES7 223-1PH22-0XA8 | EM223 ：DI 8* DC 24V / DO 8* 继电器
 | 6ES7 223-1BL22-0XA8 | EM223 ：DI 16* DC 24V / DO 16* DC 24V
 | 6ES7 223-1PL22-0XA8 | EM223 ：DI 16* DC 24V / DO 16* 继电器
 | 6ES7223-1BM22-0XA8 | EM223 ：DI 32* DC 24V / DO 32* DC 24V
 | 6ES7223-1PM22-0XA8 | EM223 ：DI 32* DC 24V / DO 32* 继电器
AI | 6ES7 231-0HC22-0XA8 | EM231：4* AI
 | 6ES7 231-0HC22-0XA8 | EM231：8* AI
 | 6ES7 231-7PB22-0XA8 | EM231：2* RTD
 | 6ES7 231-7PD22-0XA8 | EM231：4* TC
AO | 6ES7 232-0HB22-0XA8 | EM232：2* AO
AI/AQ | 6ES7 235-0KD22-0XA8 | EM235：4* AI/1* AO

表4. S7-200 SMART 信号模块

模块类型 | 订货号 | 模块描述
DI | 6ES7 288-2DE08-0AA0 | EM DE08：DI 8* 24V DC
DO | 6ES7 288-2DT08-0AA0 | EM DT08：DO 8*24V DC
 | 6ES7 288-2DR08-0AA0 | EM DR08：DO 8*继电器
DI/DO | 6ES7 288-2DT16-0AA0 | EM DT16：DI 8* 24V DC/DO 8*24V DC
 | 6ES7 288-2DR16-0AA0 | EM DR16：DI 8* 24V DC/DO 8*继电器
 | 6ES7 288-2DT32-0AA0 | EM DT32：DI 16* 24V DC/DO 16*24V DC
 | 6ES7 288-2DR32-0AA0 | EM DT32：DI 16* 24V DC/DO 16*继电器
AI | 6ES7 288-3AE04-0AA0 | EM AE04：4* AI
 | 6ES7 288-3AE08-0AA0 | EM AE08：8* AI
 | 6ES7 288-3AR02-0AA0 | EM AR02：2* RTD
 | 6ES7 288-3AR04-0AA0 | EM AR04：2* RTD
 | 6ES7 288-3AT04-0AA0 | EM AT04：4* TC
AQ | 6ES7 288-3AQ02-0AA0 | 2* AO
 | 6ES7 288-3AQ04-0AA0 | 4* AO
AI/AO | 6ES7 288-3AM03-0AA0 | 2* AI/1* AO
EM232 | 6ES7 288-3AM06-0AA0 | 4* AI/2* AO
EM235 | 6ES7 235-0KD22-0XA8 | 4* AI/1* AO

表5. 其他卡件

 | S7-200 | S7-200 SMART
DP | EM277 | DP01
CP | CP243-1 | - 已集成
电池卡 | BC293 | SB BA01（仅保持时钟）
运动控制模块 | EM253 | - 已集成

从以上表格可以看出，S7-200 SMART 增加了本体集成 I/O，功能更灵活，性能更好，而且，S7-200 SMART模块接线方式与 S7-200一致，如下图所示：

图1. S7-200 与 S7-200 SMART 数字量输入/输出接线图

图2，S7-200 与 S7-200 SMART 模拟量输入/输出接线图

由上图可见，S7-200 与S7-200 SMART 接线方式基本一致。

移植案例

以下S7-200 224XP CPU移植举例来看，如何从硬件配置到软件编程的移植

确定S7-200 与 S7-200 SMART硬件对比

移植举例，如下表所示：

表6. S7-200 移植到 S7-200 SMART 对照表

类型 | S7-200 | S7-200 SMART
CPU | 224XP：6ES7 214-2AD23-0XB8 | ST30：6ES7 288-1ST30-0AA0
供电电源 | DC 24V | DC 24V
程序存储器 | 16 KB | 18 KB
用户存储器（V区） | 10 KB | 12 KB
集成DI/DO | DI：14/DO：10 | DI：18/DO12
扩展DI/DO | EM223：6ES7 223-1BH22-0XA0 DI：8/DO：8 | EM DT16：6ES7 288-2DT16-0AA0 DI：8/DO：8
DI/DO通道总数 | DI：24/DO：18 | DI：26/DO：20
集成AI/AO | AI：2（±10 V）/AO：1 | EM AE04：6ES7 288-3AE04-0AA0 AI：4
扩展AI/AO | EM235：6ES7 235-0KD22-0XA8 AI：4/AO：1 | EM AM06：6ES7 288-3AM06-0AA0 AI：4/AO：2
AI/AO通道总数 | AI：6/AO：2 | AI：8/AO：2
热电偶 （TC） | EM231：6ES7 231-7PD22-0XA8 4*TC | EM AT04：6ES7 288-3AT04-0AA0 4*TC
热电阻 （RTD） | EM231：6ES7 231-7PB22-0XA8 2*RTD | EM AR02：6ES7 288-3AR02-0AA0 2*RTD
以太网口 | CP243-1：6GK7 243-1EX01-0XE0 | 集成
RS485通讯口 | 集成：2个 | 集成：1个+CB CM01：6ES7 288-5CM01-0AA0
DP 从站通讯 | EM277：6ES7 277-0AA22-0XA0 | DP01：6ES7 288-7PD01-0AA0
模块总数 | 6 | 6+1

注意：以上表格仅用于举例说明 S7-200 移植到S7-200 SMART着重点，非工程实际应用

确定S7-200 与 S7-200 SMART 安装与组态

以下为S7-200 安装组态步骤：

步骤1：安装

图3. S7-200安装方式

步骤2：AI 模块拨码设置

表7. EM235 拨码设置

单极性 |  |  |  |  |  | 满量程输入 | 分辨率
SW1 | SW2 | SW3 | SW4 | SW5 | SW6
ON | OFF | OFF | ON | OFF | ON | 0 - 50 mV | 12.5μV
OFF | ON | OFF | ON | OFF | ON | 0 - 100 mV | 25μV
ON | OFF | OFF | OFF | ON | ON | 0 - 500 mV | 125μV
OFF | ON | OFF | OFF | ON | ON | 0 - 1 V | 250μV
ON | OFF | OFF | OFF | OFF | ON | 0 - 5 V | 1.25mV
 |  |  |  |  |  | 0 - 20 mA | 5μA
OFF | ON | OFF | OFF | OFF | ON | 0 - 10 V | 2.5mV
双极性 |  |  |  |  |  | 满量程输入 | 分辨率
SW1 | SW2 | SW3 | SW4 | SW5 | SW6
ON | OFF | OFF | ON | OFF | OFF | ±25 mV | 12.5μV
OFF | ON | OFF | ON | OFF | OFF | ±50 mV | 25μV
OFF | OFF | ON | ON | OFF | OFF | ±100 mV | 50μV
ON | OFF | OFF | OFF | ON | OFF | ±250 mV | 125μV
OFF | ON | OFF | OFF | ON | OFF | ±500 mV | 250μV
OFF | OFF | ON | OFF | ON | OFF | ±1 V | 500μV
ON | OFF | OFF | OFF | OFF | OFF | ±2.5 V | 1.25mV
OFF | ON | OFF | OFF | OFF | OFF | ±5 V | 2.5 mV
OFF | OFF | ON | OFF | OFF | OFF | ±10 V | 5 mV

表8. EM231 2*RTD模块拨码

RTD Type and Alpha¹ | SW1 | SW2 | SW3 | SW4 | SW5 | RTD Type and Alpha¹ | SW1 | SW2 | SW3 | SW4 | SW5
100Ω Pt 0.003850 (Default) | 0 | 0 | 0 | 0 | 0 | 100Ω Pt 0.003902 | 1 | 0 | 0 | 0 | 0
200Ω Pt 0.003850 | 0 | 0 | 0 | 0 | 1 | 200Ω Pt 0.003902 | 1 | 0 | 0 | 0 | 1
500Ω Pt 0.003850 | 0 | 0 | 0 | 1 | 0 | 500Ω Pt 0.003902 | 1 | 0 | 0 | 1 | 0
1000Ω Pt 0.003850 | 0 | 0 | 0 | 1 | 1 | 1000Ω Pt 0.003902 | 1 | 0 | 0 | 1 | 1
100Ω Pt 0.003920 | 0 | 0 | 1 | 0 | 0 | SPARE | 1 | 0 | 1 | 0 | 0
200Ω Pt 0.003920 | 0 | 0 | 1 | 0 | 1 | 100Ω Ni 0.00672 | 1 | 0 | 1 | 0 | 1
500Ω Pt 0.003920 | 0 | 0 | 1 | 1 | 0 | 120Ω Ni 0.00672 | 1 | 0 | 1 | 1 | 0
1000Ω Pt 0.003920 | 0 | 0 | 1 | 1 | 1 | 1000Ω Ni 0.00672 | 1 | 0 | 1 | 1 | 1
100Ω Pt 0.00385055 | 0 | 1 | 0 | 0 | 0 | 100Ω Ni 0.006178 | 1 | 1 | 0 | 0 | 0
200Ω Pt 0.00385055 | 0 | 1 | 0 | 0 | 1 | 120Ω Ni 0.006178 | 1 | 1 | 0 | 0 | 1
500Ω Pt 0.00385055 | 0 | 1 | 0 | 1 | 0 | 1000Ω Ni 0.006178 | 1 | 1 | 0 | 1 | 0
1000Ω Pt 0.00385055 | 0 | 1 | 0 | 1 | 1 | 10000Ω Pt 0.003850 | 1 | 1 | 0 | 1 | 1
100Ω Pt 0.003916 | 0 | 1 | 1 | 0 | 0 | 10Ω Cu 0.004270 | 1 | 1 | 1 | 0 | 0
200Ω Pt 0.003916 | 0 | 1 | 1 | 0 | 1 | 150Ω FS Resistance | 1 | 1 | 1 | 0 | 1
500Ω Pt 0.003916 | 0 | 1 | 1 | 1 | 0 | 300Ω FS Resistance | 1 | 1 | 1 | 1 | 0
1000Ω Pt 0.003916 | 0 | 1 | 1 | 1 | 1 | 600Ω FS Resistance | 1 | 1 | 1 | 1 | 1

图4. EM231 RTD 模块拨码设置

图5. EM231 TC 模块拨码设置

步骤3：寻址

方式1：S7-200 的地址连续，可按照模块的安装次序分配地址

方式2：可通过查看菜单“PLC”>“信息” 查看模块起始地址，如下图所示：

图6. S7-200 PLC 信息

以下为S7-200 SMART 安装组态步骤：

步骤1：安装

图7. S7-200 SMART 安装步骤

步骤2：硬件组态及寻址

图8. S7-200 SMART 模块组态

步骤3：模块设置

图9. SB CM01 组态

图10. EM AE04 组态

注：EM AE04 的设置以2个通道为一组设置

图11. EM AM06 组态

注：

  1. 输入通道设置与EM AE04 相同；
  2. 输出通道0 与通道1 替代值设置为一组
  3. 选择不同的输出类型，通道诊断的报警设置不同，如下表

表9. EM AM06 输出通道报警

 | 电压 | 电流
超出上限 | √ | √
超出下限 | √ | √
断线 | x | √
短路 | √ | x

图12. EM AR02 模块组态

图13. EM AT04 模块组态

注：参考点设置仅在检测热电偶时有效

S7-200 到S7-200 SMART 基本程序移植

以模拟量转换加上下限报警的程序为例：输入信号4~20mA；输出信号4~20mA

步骤1：STEP 7-MicroWIN SMART 打开S7-200 程序，如下图所示：

图14. S7-200 SMART 编程界面

步骤2：添加硬件及组态，如下图所示：

图15. S7-200 SMART 组态界面

1,添加当前组态

2,修改通道属性

步骤3：修改程序

1，修改程序的硬件输入/输出地址；

2，模拟量量程替换：

S7-200 ：0~20mA：0~32000；4~20mA：6400~32000

S7-200 SMART：0~20mA：0~27648；4~20mA：5530~27648

图16. 修改硬件地址

图17. 修改程序段

步骤4：修改断电保持区域、修改安全等级及CPU上电运行模式

图18. 修改断电保持、密码、CPU上电模式

步骤5：编译下载


无标题文档

PID 移植

S7-200 SMART 与 S7-200一样，支持8路PID控制，支持模拟量输出及PWM输出

PID 向导移植

将 S7-200 带有PID向导生成的程序用 S7-200 SMART打开，提示错误，如下图所示：

图1. S7-200 PID程序在S7-200 SMART 打开报错

解决方法：

1，新建 S7-200 SMART项目，并进行正确的设备组态

2，将 S7-200程序用STEP 7-Micro/win SMART 软件打开，将除PID子程序之外的程序段复制到新项目

3，修改新项目的 I/O 地址及模拟量转换量程与S7-200 SMART 匹配

4，重新建立PID 方法参看以下文档：

《西门子 S7-200 SMART PLUS V1.7 技术参考》

PID 指令移植

比较 S7-200 与 S7-200 SMART PID回路表，两者完全相同，如下表所示：

表1. S7-200 与 S7-200 SMART PID 回路对比表

偏移 | 类型 | S7-200 | S7-200 SMART
0 | 过程变量(PVn) | 包含过程变量，其值必须标定在 0.0 到 1.0 之间
4 | 设定值(SPn) | 包含设定值，其值必须标定在 0.0 到 1.0 之间
8 | 输出(Mn) | 包含计算出的输出，其值必须标定在 0.0 到 1.0 之间
12 | 增益(Kc) | 包含增益，为比例常数。 可以是正数或负数
16 | 采样时间 | 包含采样时间，单位为秒。 必须是正数
20 | 积分时间 | 包含积分时间或复位，单位为分
24 | 微分时间 | 包含微分时间或速率，单位为分
28 | 偏置 | 包含偏置或积分和值，介于 0.0 到 1.0 之间
32 | 前一过程变量 | 包含上次执行 PID 指令时存储的过程变量值
36 | PID扩展表 | ‘PIDA’（PID 扩展表，版本 A）： ASCII 常数
40 | AT 控制 |
41 | AT 状态 |
42 | AT 结果 |
43 | AT 配置 |
44 | 偏差 | 最大 PV 振荡幅度的标准化值（范围： 0.025 到 0.25）
48 | 滞后 | 用于确定过零的 PV 滞后标准化值（范围： 0.005 到 0.1）
52 | 初始输出阶跃 | 输出值中阶跃变化的标准化大小，用于使 PV 产生振荡（范围：0.05 到 0.4）
56 | 看门狗时间 | 两次过零之间允许的最大秒数值（范围：60 到 7200）
60 | 建议增益 | 自整定过程确定的建议回路增益
64 | 建议积分时间 | 自整定过程确定的建议积分时间
68 | 建议微分时间 | 自整定过程确定的建议微分时间
72 | 实际阶跃大小 | 自整定过程确定的标准化输出阶跃大小值
76 | 实际滞后 | 自整定过程确定的标准化 PV 滞后值

如上表所示，两者PID回路表完全一致，所以，当将S7-200 PID 指令编程进行移植时，需将反馈与输出的模拟量地址按照 S7-200 SMART 的地址分配进行修改，同时修改模数转换数值即可。如下图所示：

图2. 程序移植


无标题文档

高速计数功能移植

S7-200 支持6路30KHz的高速计数器（224XP支持200KHz），支持13种模式；S7-200 SMART支持4路200KHz（CR40/60仅支持100KHz）高速计数器，支持8种模式，详细对比参看下表：

表1. S7-200 高速计数功能

模式 | 描述 | 输入点
 | HSC0 | I0.0 | I0.1 | I0.2 |
 | HSC1 | I0.6 | I0.7 | I1.0 | I1.1
 | HSC2 | I1.2 | I1.3 | I1.4 | I1.5
 | HSC3 | I0.1 |  |  |
 | HSC4 | I0.3 | I0.4 | I0.5 |
 | HSC5 | I0.4 |  |  |
0 | 带有内部方向控制的单相计数器 | 时钟 |  |  |
1 |  | 时钟 |  | 复位 |
2 |  | 时钟 |  | 复位 | 启动
3 | 带有外部方向控制的单相计数器 | 时钟 | 方向 |  |
4 |  | 时钟 | 方向 | 复位 |
5 |  | 时钟 | 方向 | 复位 | 启动
6 | 带有增减计数时钟的双相计数器 | 增时钟 | 减时钟 |  |
7 |  | 增时钟 | 减时钟 | 复位 |
8 |  | 增时钟 | 减时钟 | 复位 | 启动
9 | A/B相正交计数器 | 时钟A | 时钟B |  |
10 |  | 时钟A | 时钟B | 复位 |
11 |  | 时钟A | 时钟B | 复位 | 启动

红色：S7-200 SMART 不支持的功能。

表2. S7-200高速计数器寻址

高速计数器号 | HSC0 | HSC1 | HSC2 | HSC3 | HSC4 | HSC5
新当前值(仅装入) | SMD38 | SMD48 | SMD58 | SMD138 | SMD148 | SMD158
新预置值(仅装入) | SMD42 | SMD52 | SMD62 | SMD142 | SMD152 | SMD162
当前计数值(仅读取) | HC0 | HC1 | HC2 | HSC3 | HSC4 | HSC5

表3. S7-200 SMART 高速计数功能

模式 | 描述 | 输入点
 | HSC0 | I0.0 | I0.1 | I0.4
 | HSC1 | I0.1 |  |
 | HSC2 | I0.2 | I0.3 | I0.5
 | HSC3 | I0.3 |  |
0 | 带有内部方向控制的单相计数器 | 时钟 |  |
1 |  | 时钟 |  | 复位
3 | 带有外部方向控制的单相计数器 | 时钟 | 方向 |
4 |  | 时钟 | 方向 | 复位
6 | 带有增减计数时钟的双相计数器 | 增时钟 | 减时钟 |
7 |  | 增时钟 | 减时钟 | 复位
9 | A/B相正交计数器 | 时钟A | 时钟B |
10 |  | 时钟A | 时钟B | 复位

表4. S7-200 SMART 高速计数器寻址

高速计数器号 | HSC0 | HSC1 | HSC2 | HSC3
新当前值(仅装入) | SMD38 | SMD48 | SMD58 | SMD138
新预置值(仅装入) | SMD42 | SMD52 | SMD62 | SMD142
当前计数值(仅读取) | HC0 | HC1 | HC2 | HSC3

注意：

1，S7-200 SMART 不支持模式2、模式5、模式8、模式11、模式12（在运动控制向导时勾选）；

2，S7-200 SMART 做高速计数需要硬件滤波，如下图所示：

图1. S7-200 SMART 滤波时间与频率关系

注：CR40/60 两款CPU最高支持 100kHz 频率

高速计数功能移植案例

以S7-200 224XP举例，使用高速计数HSC0，模式9，分别利用指令与向导分别编程，然后移植到S7-200 SMART

向导移植

首先，将S7-200 高速计数向导与S7-200 SMART高速计数向导横向对比，如下图所示：

图2. 高速计数器及模式选择

图3. HSC 初始化选项

图4.配置中断及步骤

图5. HSC 第 1 步

图6. 完成向导

如上图所示：S7-200 高速计数向导组态与S7-200 SMART高速计数向导组态一致。

具有相同功能由向导生成的 S7-200 项目可直接用S7-200 SMART 打开，按照以下步骤移植：

步骤1：用STEP 7 Micro/Win SMART 打开S7-200 的原程序

步骤2：按照《表3. S7-200 SMART 高速计数功能》，进行高速计数通道的接线

步骤3：按照《图1. S7-200 SMART 滤波时间与频率关系》，进行高速计数通道滤波时间的设置

步骤4：编译下载，下载即可。如下图示：

图7. 程序对比

指令移植

首先，将 S7-200 高速计数的特殊存储器 ( SM ) 与 S7-200 SMART 高速计数的特殊存储器 ( SM ) 横向对比，以 HSC0 如下表所示：

表5. S7-200 与 S7-200 SMART 特殊存储器（SM）对比

 | S7-200 | S7-200 SMART
HSC0 计数器状态字
SM36.0~SM36.4 | 保留
SM36.5 | HSC0 当前计数方向状态位：1=增计数
SM36.6 | HSC0 当前值等于预设值状态位：1=相等
SM36.7 | HSC0 当前值大于预置值状态位：1=大于
HSC0 计数器控制字
SM37.0 | 复位的有效电平控制位： 0=高电平有效 1=低电平有效
SM37.1 | 保留
SM37.2 | HSC0 AB正交计数器的计数速率选择： 0=4x 1=1x
SM37.3 | HSC0 方向控制位：1=加计数
SM37.4 | HSC0 更新方向：1=更新方向
SM37.5 | HSC0 更新预设值：1=将新的预设值写入HSC0 预设值
SM37.6 | HSC0 更新当前值：1=将新的预设值写入HSC0 当前值
SM37.7 | HSC0 使能位：1=使能
SMD38 | HSC0 当前值
SMD42 | HSC0 预设值

由上表可见，S7-200 与 S7-200 SMART 特殊存储器（SM）完全一致。

将 S7-200与 S7-200 SMART 高速计数中断事件功能横向对比，如下表所示：

表6. S7-200 与 S7-200 SMART 中断事件功能对比

S7-200 |  | S7-200 SMART
中断号 | 中断事件 | 中断号 | 中断事件
12 | HSC0 CV=PV | 12 | HSC0 CV=PV
13 | HSC1 CV=PV | 13 | HSC1 CV=PV
14 | HSC1 输入方向改变 | 14 | -
15 | HSC1 外部复位 | 15 | -
16 | HSC2 CV=PV | 16 | HSC2 CV=PV
17 | HSC2 输入方向改变 | 17 | HSC2 输入方向改变
18 | HSC2 外部复位 | 18 | HSC2 外部复位
27 | HSC0 输入方向改变 | 27 | HSC0 输入方向改变
28 | HSC0 外部复位 | 28 | HSC0 外部复位
29 | HSC4 CV=PV | 29 | -
30 | HSC4 输入方向改变 | 30 | -
31 | HSC4 外部复位 | 31 | -
32 | HSC3 CV=PV | 32 | HSC3 CV=PV
33 | HSC5 CV=PV | 33 | -

由上表可见，S7-200 SMART 与 S7-200 相比，S7-200 SMART 高速计数功能所支持的中断与 S7-200 相同。

具有相同功能由指令生成的 S7-200 项目可直接用S7-200 SMART 打开，按照以下步骤移植：

步骤1：用STEP 7 Micro/Win SMART 打开S7-200 的原程序

步骤2：按照《表3. S7-200 SMART 高速计数功能》，进行高速计数通道的接线

步骤3：按照《图1. S7-200 SMART 滤波时间与频率关系》，进行高速计数通道滤波时间的设置

步骤4：编译下载，下载即可。如下图示：

图8. 程序对比

图9. 功能测试

常问问题

S7-200 所支持的HSC4、HSC5，及模式2、模式5、模式8、模式11、模式12（在运动控制向导时勾选）能否移植到S7-200 SMART？

答：不能，无论是向导生成，还是指令生成，都不能移植到S7-200 SMART。

S7-200 与 S7-200 SMART相同功能，移植成功后，高速检测不到脉冲？

答：S7-200 SMART必须修改硬件地址的滤波时间。


PLS指令移植

S7-200 与 S7-200 SMART 使用PLS指令控制脉冲串输出（PTO）的SM 定义不同，不能将 S7-200 CPU 编写的 PLS指令程序直接用于S7-200 SMART。

PLS指令的单段管道化

如表1所示，使用 STEP 7-Micro/Win SMART 打开S7-200 CPU 的 PLS 指令程序需修改控制字节（SM67.6）和更改周期为频率（SMW68）。

表1. S7-200 与 S7-200 SMART 的SM 对比

Q0.0 | S7-200 | S7-200 SMART
SM67.0 | PTO更新周期 | PTO更新频率
SM67.1 | 未使用 | 未使用
SM67.2 | PTO更新脉冲计数值 | PTO更新脉冲计数值
SM67.3 | PTO时间基准：0=1μs，1=1ms | 未使用
SM67.4 | 未使用 | 未使用
SM67.5 | PTO操作：0=单段，1=多段 | PTO操作：0=单段，1=多段
SM67.6 | PTO/PWM模式选择：0=PTO，1=PWM | PTO/PWM模式选择：0=PWM，1=PTO
SM67.7 | PTO启用：0=禁止，1=启用 | PTO启用：0=禁止，1=启用
SMW68 | PTO周期 | PTO频率

使用 STEP 7-Micro/Win SMART 打开S7-200 CPU 的 PLS 指令程序需修改控制字节（SM67.6）和更改周期为频率（SMW68）。

例如：在 S7-200 程序里，编写 500ms/周期（SMB67=16#8D，SMW68=500ms），装载周期和脉冲的PTO 输出程序，移植至S7-200 SMART需要修改SMB67=16#C5，SMW68=2Hz。

图1. PLS指令单段PTO移植

在单段管道化期间，频率的上限为65,535Hz，如果需要更高的频率（最高为100,000Hz），则必须使用多段管道化。

PLS指令的多段管道化

相对于 S7-200 多段 PTO 计算周期增量的方式，S7-200 SMART 多段 PTO 设置更简单，只需要定义起始、结束频率和脉冲计数即可，如图2所示。因此移植时需要重新编写PTO多段管道化程序。

图2. 多段PTO操作的包络表格式对比

对于依照周期时间（而非频率）的S7-200项目移植至S7-200smart时，可以使用以下公式来进行频率转换：

CTFinal = CTInitial + (ΔCT * PC)

FInitial = 1 / CTInitial

FFinal = 1 / CTFinal

CTInitial | 段启动周期时间 (s)
ΔCT | 段增量周期时间 (s)
PC | 段内脉冲数量
CTFinal | 段结束周期时间 (s)
FFInitial | 段起始频率 (Hz)
FFinal | 段结束频率 (Hz)

如图3所示，PLS指令多段PTO移植时无论 S7-200 中定义的SMB67为16#A0（1μs/周期）还是16#A8（1ms/周期），S7-200 SMART中都需要改为16#E0。起始、结束频率根据公式计算，脉冲数不需要改变。

图3. PLS指令多段PTO移植

计算包络段的加速度（或减速度）和持续时间有助于确定正确的包络表值，可按如下公式计算 Ts 段持续时间：

ΔF = FFinal - FInitial

Ts = PC / (Fmin + (|ΔF| / 2 ) )

As = ΔF / Ts

Ts | 段持续时间 (s)
As | 段频率加速度 (Hz/s)
PC | 段内脉冲数量
Fmin | 段最小频率 (Hz)
ΔF | 段增量（总变化）频率 (Hz)

注意：如果 Ts 段持续时间少于 500 微秒，将导致 CPU 没有足够的时间来计算 PTO 段值。 PTO 管道下溢位（SM66.6、SM76.6 和 SM566.6）将置为 1，PTO 操作终止。

S7-200 SMART PTO 脉冲数测量

S7-200 SMART CPU 没有类似 S7-200 CPU 的高速计数器模式 12 功能。

S7-200 SMART CPU 硬件脉冲输出接到输入，配置高速计数器向导并调用 HSC 子程序可监视 PTO 脉冲数量 。如下图4所示：

图4. S7-200 SMART PTO 脉冲数测量


PTO向导移植

S7-200 PTO向导移植至 S7-200 SMART 运动控制，移植时需要在 S7-200 SMART 中重新运行运动控制向导编程。

S7-200 SMART 运动控制向导的测量系统选择相对脉冲，如图1所示：

图1. 选择测量系统

S7-200 SMART 运动控制向导的方向控制根据实际情况可以选择“单相（1个输出）”或者“单相（2个输出）”，“单相（2个输出）”有方向控制，如图2所示：

图2. 选择方向控制

CTRL 指令移植

PTOx_CTRL 指令由 AXISx_CTRL 指令替换，如图3所示：

图3. CTRL指令移植

1、I_STOP参数，在S7-200 SMART运动控制向导中根据实际情况启用LMT+（正限位）、LMT-（负限位）、STP（停止点）DI点，选择响应为“立即停止”，如图4所示。如果立即停止为内部变量，可以将该内部变量通过DO点控制DI点实现。

图4. 立即停止

2、D_STOP参数，在S7-200 SMART运动控制向导中根据实际情况启用LMT+（正限位）、LMT-（负限位）、STP（停止点）DI点，选择响应为“减速停止”，如图5所示。如果减速停止为内部变量，可以使用MOD_EN参数替换。

图5. 减速停止

MAN 指令移植

PTOx_MAN 指令由 AXISx_MAN 指令替换，如图6所示：

图6. MAN指令移植

1、同一时刻仅能启用RUN、JOG_P或JOG_N中的一个命令；

2、如果改变方向需先改变Dir参数再启用RUN，Dir=0时为正向。

RUN 指令移植

PTOx_RUN指令由AXISx_RUN指令替换，如图7所示：

图7. RUN指令移植

1、S7-200最多25个包络，每个包络最多29步，S7-200 SMART 最多32个包络，每个包络最多16步；

2、S7-200包络定义为“单速连续旋转”且使用PTOx_ADV指令后继续发送指定脉冲停止功能，在S7-200 SMART 可以使用RPS输入点停止，可以通过DO点控制RPS输入点实现，如图8所示：

图8. PTOx_ADV 功能移植

LDPOS 指令移植

PTOx_LDPOS 指令由 AXISx_LDPOS 指令替换，如图9所示：

图9. PTOx_LDPOS 指令移植


MAP库移植

S7-200 MAP 库移植至 S7-200 SMART 运动控制，移植时需要在 S7-200 SMART 中通过运动控制向导编程。

测量系统移植

1、如果 MAP 库使用相对脉冲，S7-200 SMART 运动控制向导的测量系统选择相对脉冲，如图1：

图1. 选择测量系统

2、S7-200 SMART 运动控制向导的方向控制根据实际情况可以选择“单相（1个输出）”或者“单相（2个输出）”，如图2：

图2. 选择方向控制

3、如果 MAP 库使用工程量，S7-200 SMART 运动控制向导的测量系统选择工程单位，如图3所示：

图3. Scale_EU_Pulse指令移植

4、最大速度和启动/停止速度在S7-200 SMART运动控制向导中设置，如图4所示：

图4. 最大速度

5、加减速时间在 S7-200 SMART 运动控制向导中设置，如图5所示：

图5. 加减速时间

CTRL指令移植

Q0_X_CTRL指令由AXISx_CTRL指令替换，如图6所示：

图6. CTRL指令移植

启动/停止速度、最大速度、加减速时间、正限位和负限位，在S7-200 SMART 运动控制向导中设置。

MoveVelocity指令移植

1、使用 Q0_X_MoveVelocity 指令，在运动过程中修改速度，由 AXISx_MAN 指令替换，如图7所示：

图7. MoveVelocity指令移植

2、使用 Q0_X_MoveVelocity 指令，在运动过程中不需要修改速度，由 AXISx_MAN 指令或者 AXISx_GOTO 指令（正向模式2，反向模式3）替换，如图8所示：

图8. MoveVelocity 指令移植

MoveAbsolute 指令移植

Q0_X_MoveAbsolute 指令由 AXISx_GOTO 指令（模式0）替换，如图9所示：

图9. MoveAbsolute指令移植

MoveRelative 指令移植

Q0_X_MoveRelative 指令由 AXISx_GOTO 指令（模式1）替换，如图10所示：

图10. MoveRelative 指令移植

Q0_X_MoveRelative 指令的方向 Direction（0=反向、1=正向），AXISx_GOTO 指令的 Pos 正数为正向、负数为反向。

Home 指令移植

Q0_X_Home 指令由 AXISx_RSEEK 指令替换，如图11所示：

图11. Q0_X_Home 指令移植

1、Q0_X_Home 指令的 Start_Dir、Final_Dir、Homing_Slow_Spd、Homing_Fast_Spd 需要在 S7-200 SMART 运动控制向导中设置，如图12所示：

图12. S7-200 SMART 运动控制向导方向、速度设置

2、Q0_X_Home 指令的 Position 需要在 S7-200 SMART 运动控制向导中设置参考点偏移量，如图13所示：

图13. S7-200 SMART 运动控制向导设置参考点偏移量

3、需要在 S7-200 SMART 运动控制向导中设置搜索顺序为1，如图14所示：

图14. S7-200 SMART 运动控制向导设置搜索顺序

LDPOS 指令移植

Q0_X_LoadPos 指令由 AXISx_LDPOS 指令替换，如图15：

图15. Q0_X_LoadPos 指令移植


EM253移植

S7-200 EM253 移植至 S7-200 SMART 时，硬件差异很大（如表1），因此移植时伺服驱动器需要与 S7-200 SMART 匹配。

表1.S7-200 EM253与S7-200 SMART硬件差异

序号 | 内容 | EM253 | S7-200 SMART
1 | 电压等级 | 5V、12V、24V及5V差分 | 24V
2 | 频率 | 最高200KHz | 最高100KHz
3 | 输出 | 漏型输出和差分输出 | 源型输出

指令移植

S7-200 EM253向导移植至S7-200 SMART运动控制，移植时需要在S7-200 SMART中重新运行向导编程。

EM253的运动控制指令与S7-200 SMART运动控制指令功能区别很小，按照表2对应关系移植：

表2.S7-200 EM253移植至S7-200 SMART指令对应关系

序号 | EM253 | S7-200 SMART
1 | POSx_CTRL | AXISx_CTRL
2 | POSx_MAN | AXISx_MAN
3 | POSx_GOTO | AXISx_GOTO
4 | POSx_RUN | AXISx_RUN
5 | POSx_RSEEK | AXISx_RSEEK
6 | POSx_LDOFF | AXISx_LDOFF
7 | POSx_LDPOS | AXISx_LDPOS
8 | POSx_SRATE | AXISx_SRATE
9 | POSx_DIS | AXISx_DIS
10 | POSx_CLR | 无相关指令，使用Q点编程50ms脉冲实现
11 | POSx_CFG | AXISx_CFG


PWM移植

S7-200 PWM向导移植至S7-200 SMART PWM，移植时需要在S7-200 SMART中重新运行PWM向导编程。

PWM向导移植

S7-200 PWM 向导移植至S7-200 SMART PWM，移植时需要在 S7-200 SMART中 重新运行PWM向导编程，如图1所示：

图1. PWM向导移植

在S7-200 SMART 中重新调用向导生成的 PWMx_RUN 子程序，如图2所示：

图2. PWMx_RUN子程序移植

PWM 指令移植

S7-200 与 S7-200 SMART 使用PLS指令控制脉宽调制（PWM）的SM 定义不同，如表1所示，不能将 S7-200 CPU 编写的 PLS指令程序直接用于S7-200 SMART。

表1.S7-200 与 S7-200 SMART 的SM 对比

Q0.0 | S7-200 | S7-200 SMART
SM67.0 | PWM更新周期 | PWM更新周期
SM67.1 | PWM更新脉宽 | PWM更新脉宽
SM67.2 | 未使用 | 未使用
SM67.3 | PWM时间基准：0=1μs，1=1ms | PWM时间基准：0=1μs，1=1ms
SM67.4 | PWM更新：0=异步，1=同步 | 未使用
SM67.5 | 未使用 | 未使用
SM67.6 | PTO/PWM模式选择：0=PTO，1=PWM | PTO/PWM模式选择：0=PWM，1=PTO
SM67.7 | PWM启用：0=禁止，1=启用 | PWM启用：0=禁止，1=启用

S7-200 SMART 只能使用同步更新更改 PWM 波形的特性。

使用 STEP 7 Micro/Win SMART 打开S7-200 CPU 的 PLS 指令程序需修改控制字SM67.6，如图3所示：

图3. PWM 指令移植


TD文本显示器移植

TD 文本显示器是一种低成本的人机界面 (HMI)，是可嵌入数据的文本显示器。可以使用 TD 设备组态层级式用户菜单及信息画面，TD设备可用于查看、监视和改变应用程序的过程变量。也可以组态TD 文本显示器，使其显示由CPU 中逻辑使能的报警或信息。

S7-200 SMART 文本显示向导可组态TD400C的最大数量为5个，通过本体集成的RS485端口可以连接4个TD400C，SB CM01 RS485/RS232 端口也可以连接4个TD400C

TD文本显示器移植

TD400C使用拷贝数据块的移植主要分成两大部分：

  • 基本功能移植
  • 报警功能移植

基本功能移植

步骤一：使用STEP7 Micro/WIN 打开原S7-200的程序:

图1. TD 文本显示器移植

步骤二：点击查看-符号寻址，取消符号寻址功能：

图2. 取消符号寻址

步骤三：点击数据块，再次点击：TD_DATA0 ：

图3. 打开数据块

步骤四：将上述画面中的全部内容用鼠标全部选中，然后拷贝（Ctrl+C）

图4.复制数据块

步骤五：打开S7-200 SMART编程软件。点击数据块-页面1，查看右面打开的数据块页面

图5. 打开S7-200 SMART软件数据块

步骤六：在上述蓝色框的区域内，粘贴（Ctrl+V），完成后显示如下：

图6. 将数据复制到S7-200 SMART 程序

步骤七：保存编译

图7. S7-200 SMART 编译

报警功能移植

如果之前使用TD400C的向导时，组态了报警窗口，并在程序中调用了TD_ALM块，仅需按照下图在S7-200 SMART内编程即可，如下图所示：

图8. 报警移植

注意：
1.不要在S7-200 SMART编程软件中再使用TD400C的向导；
2若需修改TD400C的画面，烦请在S7-200的编程软件中修改后，再次执行本文的移植方法 。


PPI通信移植

S7-200 SMART CPU PPI协议只支持与HMI连接，因此S7-200 SMART CPU间通信需要使用以太网通信（Get/Put指令），移植时需要在S7-200 SMART中重新运行Get/Put向导或者指令编程。

NETR/NETW指令向导移植

S7-200 NETR/NETW指令向导移植至S7-200 SMART Get/Put向导，移植时需要在S7-200 SMART中重新运行Get/Put向导编程，如图1所示：

图1. NETR/NETW指令向导移植

1、NETR由Get代替，NETW由Put代替；

2、NETR/NETW最大16字节数据，Get/Put最大200字节数据，可以将NETR/NETW的多项网络读操作合并在一个Get/Put操作中处理；

3、远程CPU地址改为远程CPU IP地址；

4、本地CPU的通信区域和起始地址，直接对映；

5、远程CPU的通信区域和起始地址，直接对映。

S7-200 NETR/NETW指令向导生成的NET_EXE子程序由S7-200 SMART Get/Put向导生成的NET_EXE子程序替换，如图2所示：

图2. NET_EXE子程序移植

NETR/NETW指令移植

S7-200 NETR/NETW指令移植至S7-200 SMART GET/PUT指令，移植时需要在S7-200 SMART中重新编程，如图3所示：

图3. NETR/NETW指令移植

1、远程CPU地址改为远程CPU IP地址；

2、远程CPU的通信区域和起始地址，直接对映；

3、NETR/NETW最大16字节数据，Get/Put最大222/212字节数据，可以将NETR/NETW的多项网络读操作合并在一个GET/Put操作中处理；

4、本地CPU的通信区域和起始地址，直接对映；

5、NETR由GET代替，NETW由PUT代替；


串口通信移植

串口通信主要包括自由口通信、MODBUS通信、USS通信。S7-200 串口通信移植至S7-200 SMART 时，PORT1端口需要使用CM01信号板替代。

自由口通信移植

S7-200 自由口通信移植至S7-200 SMART 时，使用STEP 7-Micro/WIN SMART 直接打开S7-200 自由口通信程序即可，也可以将S7-200 自由口通信程序复制至S7-200 SMART 项目程序中。

图1. 使用STEP 7-Micro/WIN SMART 直接打开 S7-200 自由口通信程序

MODBUS通信移植

S7-200 MODBUS通信移植至S7-200 SMART 时，使用STEP 7-Micro/WIN SMART 直接打开S7-200 MODBUS 通信程序即可，也可以在S7-200 SMART 中使用MODBUS库重新编写程序。

1、S7-200 SMART V2.1 及以前版本软件有一个modbus主站库程序和一个modbus从站库程序，PORT0端口和PORT1端口不能同时做modbus主站，也不能同时做modbus从站；如果两个端口同时做modbus主站，建议使用STEP 7-Micro/WIN SMART 直接打开S7-200 MODBUS通信程序。

2、S7-200 SMART V2.2 版本软件有两个modbus主站库程序和一个modbus从站库程序，如图2所示。两个modbus主站库程序和一个modbus从站库程序都可以选择通信端口0或者1，如图3所示。

图2. V2.2版本软件的modbus主站和从站库程序

图3. V2.2 版本软件的modbus主站和从站库程序端口选择

USS通信移植

S7-200 USS通信移植至S7-200 SMART 时，使用STEP 7-Micro/WIN SMART 直接打开S7-200 USS通信程序即可，也可以在S7-200 SMART中使用USS库重新编写程序。

S7-200 SMART软件只有一个USS库程序，PORT0端口和PORT1端口不能同时用作USS通信，如果两个端口同时USS通信，建议使用STEP 7-Micro/WIN SMART 直接打开S7-200 USS通信程序。


DP/MPI通信移植

DP/MPI通信移植时，S7-200 SMART需要使用DP01模块，S7-200 SMART不需要编程，但是需要在系统块中组态DP01模块。

图1. DP01组态

DP通信移植

DP通信移植时，主站需要导入EM DP01模块的GSD文件，如图2所示：

图2. DP通信移植

步骤一：主站重新添加DP01的GSD文件；

步骤二：按照EM277组态的通信数据区及数据长度重新组态DP01。

EM DP 01 GSD文件

MPI通信移植

MPI通信移植时，需要按照主站组态的从站地址修改DP01的实际地址，如图3所示，需将DP01模块地址修改为3。

图3. MPI通信从站地址


以太网通信移植

S7-200需要扩展CP243-1模块进行以太网通信，S7-200 SMART集成以太网口，不需要扩展模块。8个连接用于CPU与其他S7-200 SMART CPU之间的PUT/GET主动连接，8个连接用于CPU与其他S7-200 SMART CPU之间的PUT/GET被动连接。

与S7-300/400以太网通信移植

S7-200通过扩展CP243-1与与S7-300/400以太网通信，CP243-1即可以作为客户端、也可以作为服务器，移植至S7-200 SMART时，S7-200 SMART只能作为服务器，需要在S7-300/400侧调用PUT/GET。

S7-300/400配置S7连接时设置伙伴方的TSAP为03.01。

S7-200 SMART不能与CP343-1 Lean 模块以太网通信，V2.2及以上版本软件和硬件支持开放式以太网通信，可以与CP343-1 Lean通过TCP通信。

与S7-1200/1500以太网通信移植

S7-200通过扩展CP243-1与与S7-1200/1500以太网通信，CP243-1即可以作为客户端、也可以作为服务器，移植至S7-200 SMART时，S7-200 SMART也可以作为客户端、服务器。做服务器时需要在S7-1200/1500侧调用PUT/GET，做客户端操作详见：《西门子 S7-200 SMART PLUS V1.7 技术参考》

S7-1200/1500配置S7连接时设置伙伴方的TSAP为03.01。

S7-1200/1500用于通信的数据块需要取消属性中"优化的块访问"选项。

S7-200 SMART作为客户端时，S7-1200/1500需要允许PUT/GET访问。

OPC 通讯移植

S7-200 OPC通信主要有以下2种情况：

1、S7-200扩展CP243-1通过以太网口以S7协议进行OPC通信，OPC站安装以太网卡。移植时，使用S7-200 SMART本体集成以太网口即可，OPC软件可以选择PC ACCESS SMART 或者SIMATIC NET。

2、通过S7-200 CPU本体集成的RS485端口以PPI协议进行OPC通信或者扩展EM277通过DP口以S7协议进行OPC通信，OPC站安装CP5611卡等。移植时，S7-200 SMART可以使用以太网也可以扩展DP01模块，OPC软件使用SIMATIC NET。

以上操作均可参考如下文档：

《西门子 S7-200 SMART PLUS V1.7 技术参考》