图 1.选择 HSC 向导
步骤一:选择 HSC 编号,如图 2所示。
图 2.选择计数器编号
步骤二:为计数器命名,在左侧树形目录中选择“高速计数器”,如图 3所示。
图 3.高速计数器命名
步骤三:选择计数器模式,详细信息请见“表1.高速计数器的模式及输入点”。
步骤四:配置初始化信息。
图 5. HSC 初始化选项
在上图中:
- 为初始化子程序命名,或者使用默认名称。
-
设置计数器预置值:可以为整数、双字地址或符号名:如 5000、VD100、PV_HC0。用户可使用全局符号表中双字整数对应的符号名。如果用户输入的符号名尚未定义,点击‘ Generate (生成)’后会看到:
这个提示框显示:“这不是定义的全局符号。您希望定义符号吗”,点击“是”
填入地址和注释,注意:地址必须为双字地址, 注释可以不填。 - 设置计数器初始值:可以为整数、双字地址或符号名:5000、VD100、CV_HC0。
- 初始化计数方向:增,减。
- 对于带外部复位端的高速计数器,可以设定复位信号为高电平有效或者低电平有效。
- 使用A/B相正交计数器时,可以将计数频率设为1倍速或4倍速。使用非A/B相正交计数器时,此项为虚。
-
S7-200 SMART 均不支持带外部启动端的高速计数器,因此此项为虚。
注意:所谓“高/低电平有效”指的是在物理输入端子上的有效逻辑电平,即可以使 LED 灯点亮的电平。这取决于源型/漏型输入接法,并非指实际电平的高、低。
图 6.配置中断
如图 6所示,一个高速计数器最多可以有 3 个中断事件,在白色方框中填写中断服务程序名称或者使用默认名称:
在这里配置的中断事件并非必须,系由用户根据自己的控制工艺要求选用。
- 外部复位输入有效值时中断,如果使用的高速计数器模式不具有外部复位端,则此项为虚。
-
方向控制输入状态改变时的中断,有以下 3 种情况会产生该中断:
- 单项计数器的内部或外部方向控制位改变瞬间
- 双相计数器增、减时钟交替的瞬间
- A/B相脉冲相对相位(超前或滞后)改变时瞬间
- 当前值等于预置值时产生的中断,通过向导,可以在该中断的服务程序中重新设置高速计数器的参数,如预置值、当前值。一个这样的过程称为‘一步‘。
图 7. 配置 HSC 步数
步骤七:定义高速计数器每一步的操作,如图 8所示:
图 8. HSC 第一步
在这里配置的是当前值等于设定值中断的服务程序中的操作:
- 向导会自动为当前值等于预置值匹配一个新的中断服务程序,用户可以对其重新命名,或者使用默认的名称。
- 勾选后,用户在右侧输入新的预置值。
- 勾选后,用户在右侧输入新的当前值。
- 如果选用的高速计数器模式有内部方向控制位。
- 使用相同的方法完成其余两步的设置
图 9. 完成向导
点击向导对话框左侧树形目录中的选项“组件(Components)”可以看到此时向导生成的子程序和中断程序名称及描述,点击“生成(Generate)”按钮,完成向导。
注意:Micro/WIN SMART 高速计数器指令向导采用树形目录的形式,用户可以直接在目录树中选择相应选项进行设置,这种方式便于用户在完成指令向导后根据实际需求进行快速修改。
步骤九:调用子程序:
注意:
- HSC_INIT 为初始化子程序,请在主程序块中使用 SM0.1 或一条边沿触发指令调用一次此子程序。
- 向导生成的中断服务程序及子程序都未上锁,用户可以根据自己的控制需要进行修改。
所需条件:
1、软件版本:STEP 7-Micro/WIN SMART V2.3
2、SMART CPU固件版本:V2.3(其他版本亦可)
3、通讯硬件:TP电缆(以太网电缆)
所实现的功能:
例程中使用高速计数器0的模式0,实现计数功能,即测量I0.0的脉冲数。
程序内当计数值到2500后,进入中断清零,重新计数
如果遇到无法测量频率较高的计数值时,可以考虑适当改小I0.0的滤波时间
免责声明
本例程仅供参考,程序中的CPU版本、类型可能与用户实际使用不同,用户可能需要先对例子程序做修改和调整,才能将其用于测试。本例程的作者和拥有者对于该例程的功能性和兼容性不负任何责任,使用该例程的风险完全由用户自行承担。由于它是免费的,所以不提供任何担保,错误纠正和热线支持,用户不必为此联系盖利克技术支持与服务部门。