品牌:siemens/西门子
西门子(siemens)的plc产品包括logo、s7-200、s7-1200、s7-300、s7-400、s7-1500等。 西门子s7系列plc体积小、速度快、标准化,具有网络通信能力,功能更强,可靠性高。s7系列plc产品可分为微型plc(如s7-200),小规模性能要求的plc(如s7-300)和中、高性能要求的plc(如s7-400)等
在 micro/win smart 中的命令菜单中选择 tools(工具)> wizards(向导)中选择 high speedcounter(高速计数器向导) ,也可以在项目树中选择 wizards(向导)文件夹中的 high speedcounter(高速计数器向导)按钮,如图 1所示。
图 1.选择 hsc 向导
步骤一:选择 hsc 编号,如图 2所示。
图 2.选择计数器编号
步骤二:为计数器命名,在左侧树形目录中选择“高速计数器”,如图 3所示。
图 3.高速计数器命名
步骤三:选择计数器模式,详细信息请见“表1.高速计数器的模式及输入点”。
图 4.选择高速计数器模式
步骤四:配置初始化信息。
图 5. hsc 初始化选项
在上图中:
为初始化子程序命名,或者使用默认名称。
设置计数器预置值:可以为整数、双字地址或符号名:如5000、vd100、pv_hc0。用户可使用全局符号表中双字整数对应的符号名。如果用户输入的符号名尚未定义,点击‘ generate(生成)’后会看到:
这个提示框显示:“这不是定义的全局符号。您希望定义符号吗”,点击“是”
填入地址和注释,注意:地址必须为双字地址, 注释可以不填。
设置计数器初始值:可以为整数、双字地址或符号名:5000、vd100、cv_hc0。
初始化计数方向:增,减。
对于带外部复位端的高速计数器,可以设定复位信号为高电平有效或者低电平有效。
使用a/b相正交计数器时,可以将计数频率设为1倍速或4倍速。使用非a/b相正交计数器时,此项为虚。
s7-200 smart 均不支持带外部启动端的高速计数器,因此此项为虚。
步骤五:配置中断事件,如图 6所示。
图 6.配置中断
如图 6所示,一个高速计数器多可以有 3 个中断事件,在白色方框中填写中断服务程序名称或者使用默认名称:
外部复位输入有效值时中断,如果使用的高速计数器模式不具有外部复位端,则此项为虚。
方向控制输入状态改变时的中断,有以下 3 种情况会产生该中断:
单项计数器的内部或外部方向控制位改变瞬间
双相计数器增、减时钟交替的瞬间
a/b相脉冲相对相位(超前或滞后)改变时瞬间
当前值等于预置值时产生的中断,通过向导,可以在该中断的服务程序中重新设置高速计数器的参数,如预置值、当前值。一个这样的过程称为‘一步‘。
步骤六:配置 hsc 步数,如图 7所示,多可设置 10 步。
图 7. 配置 hsc 步数
步骤七:定义高速计数器每一步的操作,如图 8所示:
图 8. hsc 一步
在这里配置的是当前值等于设定值中断的服务程序中的操作:
向导会自动为当前值等于预置值匹配一个新的中断服务程序,用户可以对其重新命名,或者使用默认的名称。
勾选后,用户在右侧输入新的预置值。
勾选后,用户在右侧输入新的当前值。
如果选用的高速计数器模式有内部方向控制位。
使用相同的方法完成其余两步的设置
步骤八:完成向导,如图 9所示:
图 9. 完成向导
点击向导对话框左侧树形目录中的选项“组件(components)”可以看到此时向导生成的子程序和中断程序名称及描述,点击“生成(generate)”按钮,完成向导。
步骤九:调用子程序:
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的滤波时间
展开全文