SMART PLC高速计数器指令向导

2022-04-16 15:28上一篇 |下一篇:暂无

在 Micro/WIN SMART 中的命令菜单中选择 Tools(工具)> Wizards(向导)中选择 High Speed Counter(高速计数器向导) ,也可以在项目树中选择 Wizards(向导)文件夹中的 High Speed Counter(高速计数器向导)按钮,如图 1所示。


图 1.选择 HSC 向导
步骤一:选择 HSC 编号,如图 2所示。


图 2.选择计数器编号
步骤二:为计数器命名,在左侧树形目录中选择“高速计数器”,如图 3所示。


图 3.高速计数器命名
步骤三:选择计数器模式,详细信息请见“表1.高速计数器的模式及输入点”。

图 4.选择高速计数器模式
步骤四:配置初始化信息。


图 5. HSC 初始化选项
在上图中:

  1. 为初始化子程序命名,或者使用默认名称。
  2. 设置计数器预置值:可以为整数、双字地址或符号名:如 5000、VD100、PV_HC0。用户可使用全局符号表中双字整数对应的符号名。如果用户输入的符号名尚未定义,点击‘ Generate (生成)’后会看到:

    这个提示框显示:“这不是定义的全局符号。您希望定义符号吗”,点击“是”

    填入地址和注释,注意:地址必须为双字地址, 注释可以不填。
  3. 设置计数器初始值:可以为整数、双字地址或符号名:5000、VD100、CV_HC0。
  4. 初始化计数方向:增,减。
  5. 对于带外部复位端的高速计数器,可以设定复位信号为高电平有效或者低电平有效。
  6. 使用A/B相正交计数器时,可以将计数频率设为1倍速或4倍速。使用非A/B相正交计数器时,此项为虚。
  7. S7-200 SMART 均不支持带外部启动端的高速计数器,因此此项为虚。
     注意:所谓“高/低电平有效”指的是在物理输入端子上的有效逻辑电平,即可以使 LED 灯点亮的电平。这取决于源型/漏型输入接法,并非指实际电平的高、低。
步骤五:配置中断事件,如图 6所示。


图 6.配置中断
如图 6所示,一个高速计数器最多可以有 3 个中断事件,在白色方框中填写中断服务程序名称或者使用默认名称:
 在这里配置的中断事件并非必须,系由用户根据自己的控制工艺要求选用。

  1. 外部复位输入有效值时中断,如果使用的高速计数器模式不具有外部复位端,则此项为虚。
  2. 方向控制输入状态改变时的中断,有以下 3 种情况会产生该中断:
    • 单项计数器的内部或外部方向控制位改变瞬间
    • 双相计数器增、减时钟交替的瞬间
    • A/B相脉冲相对相位(超前或滞后)改变时瞬间
  3. 当前值等于预置值时产生的中断,通过向导,可以在该中断的服务程序中重新设置高速计数器的参数,如预置值、当前值。一个这样的过程称为‘一步‘。
步骤六:配置 HSC 步数,如图 7所示,最多可设置 10 步。


图 7. 配置 HSC 步数
步骤七:定义高速计数器每一步的操作,如图 8所示:


图 8. HSC 第一步
在这里配置的是当前值等于设定值中断的服务程序中的操作:

  1. 向导会自动为当前值等于预置值匹配一个新的中断服务程序,用户可以对其重新命名,或者使用默认的名称。
  2. 勾选后,用户在右侧输入新的预置值。
  3. 勾选后,用户在右侧输入新的当前值。
  4. 如果选用的高速计数器模式有内部方向控制位。
  5. 使用相同的方法完成其余两步的设置
步骤八:完成向导,如图 9所示:

图 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版本、类型可能与用户实际使用不同,用户可能需要先对例子程序做修改和调整,才能将其用于测试。本例程的作者和拥有者对于该例程的功能性和兼容性不负任何责任,使用该例程的风险完全由用户自行承担。由于它是免费的,所以不提供任何担保,错误纠正和热线支持,用户不必为此联系盖利克技术支持与服务部门。


 

+