- {{item.name}}
HSC移植
- 0
- 516
高速计数功能移植
S7-200 支持6路30KHz的高速计数器(224XP支持200KHz),支持13种模式;S7-200 SMART支持6路(固件版本V2.3及以上)高速计数器,支持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 (固件V2.7及以前)高速计数的特殊存储器 ( 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=4x1=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必须修改硬件地址的滤波时间。
- 评论
-
分享
扫码分享
- 收藏 收藏
- 点赞 点赞
- 纠错 纠错


西门子官方商城


{{item.nickName}}