很多初学者知道如何使用STEP 7-MicroWIN SMART 软件中的高速计数器向导,但不知道如何在不使用高速计数器向导编写一个高数计数器程序,小编在这里就通过本文章介绍高速计数器的模式和程序,注意事项等。
一、高速计数器模式
进行编程之前需要了解高速计数器的模式
1.HSC计数模式支持
(1)标准型CPU支持的高速计数器
以st20举例,具有6个高速计数器,从表3可以看出,AB相的只有4个(HSC0、HSC2、HSC4、HSC5),正好和表1中的A\B相中的2个100KHz、2个20Kz对应。从表3中也可以看出HCS0和HCS2的AB正交输入频率为100KHz,HCS4和HCS5的AB正交输入频率为20Kz。在这里说明一下,不是单相\双向的6个加上AB相的4个,总共有10个高速计数器,S7-200smart PLC只有6个高速计数器。
|
标准型CPU 参数 |
SR20 |
ST20 |
SR30 |
ST30 |
ST40 |
SR40 |
ST60 |
SR60 |
|
高速计数器 |
6 |
|||||||
|
单相/双相 |
4 x 200 KHz |
5 x 200 KHz |
4 x 200 KHz |
4 x 200 KHz |
||||
|
2 x30 KHz |
1 x 30 KHz |
2 x 30 KHz |
2 x 30 KHz |
|||||
|
A/B相 |
2 x 100 KHz |
3 x 100 KHz |
2 x 100 KHz |
2 x 100 KHz |
||||
|
2 x 20Kz |
1 x 20Kz |
2 x 20Kz |
2 x 20Kz |
|||||
表1
(2)经济型CPU支持的高速计数器
经济型的CPU只有四个(HSC0、HSC1、HSC2、HSC3)输入速率可以参照表2和表3
|
经济型CPU 参数 |
CR20s |
CR30s |
CR40s |
CR60s |
|
高速计数器 |
4 |
|||
|
单相/双相 |
4 x 100 KHz |
4 x 100 KHz |
4 x 100 KHz |
4 x 100 KHz |
|
A/B相 |
2 x 50 KHz |
2 x 50 KHz |
2 x 50 KHz |
2 x 50 KHz |
表2
(3)高数计数器
表3如何看呢?在这里简单的举个例子,使用 ST20 CPU 中HSC0的模式4,I0.0是时钟,时钟是对高速计数器加减的信号,I0.1是方向,I0.4是复位。需要注意的是这几个输入点就不能作于其他用途,已经被占用了,如果说你用了HSC1的O或者1模式,HSC1时钟I0.1 和HSC0方向I0.1地址冲突了。在表3中可以看出ST20中HSC0的模式4是单相计数器,用的是200Khz输入速率。

表3
1: S 型号 CPU: SR20、 ST20、 SR30、 ST30、 SR40、 ST40、 SR60 和 ST60
2: C 型号 CPU: CR20s、 CR30s、 CR40s 和 CR60s
二、高速计数器定义
1.高速计数器地址说明
HSC 状态字节是用于监控高速计数器当前的状态,如表5所示,HSC 控制字节,是对高速计数器定义的,如表6所示。用传送指令对SMD38赋值50,HSC0的当前值就会变成50,用传送指令对SMD42赋值100,HSC0的预设值就会变成100。HSC0的当前值HC0只能读,如果需要触摸屏读取高速计数器的值怎么办,触摸屏上也没有HC0这个地址,可以在PLC中把HC0的赋值给VD0,触摸屏去读VD0的值。
|
高速计数器号 |
HSC0 |
HSC1 |
HSC2 |
HSC3 |
HSC4 |
HSC5 |
|
HSC 状态字节 |
SMB36 |
SMB46 |
SMB56 |
SMB136 |
SMB147 |
SMB157 |
|
HSC 控制字节 |
SMB37 |
SMB47 |
SMB57 |
SMB137 |
SMB147 |





承担因您的行为而导致的法律责任,
本站有权保留或删除有争议评论。
参与本评论即表明您已经阅读并接受
上述条款。