技成培训网 技成学习APP 技成工具箱 技成企业服务

欢迎回到技成培训网

技成培训网

电工题库宝典

技成电工课堂

PLC练习题

技成PLC课堂

变频器故障查询

技成PLC学吧

伺服驱动故障查询

技成PLC网校

当前位置:技成首页 > 文章中心 > 西门子PLC > 【跟着我一起来学习s7-200】43高速计数器的实际应用

【跟着我一起来学习s7-200】43高速计数器的实际应用

唐琳 发布于2015-12-18 09:58 1341 0 标签:S7-200入门连载,PLC

    前面以几个较简单的程序案例学习了一下高速计数器的应用,那么今天就做几个较复杂一些的程序案例,提高一下对高速计数器的应用。
1、用编码器测量电机转速与频率
主程序:

子程序:


中断程序:


    以上的程序中,在主程序中,用I0.7的上升沿调用高速计数器初始化子程序,然后做一个高速计数器初始化的子程序,首先是定义控制字节,送16#F8到SMB37,定义为加计数更新当前值,这里没有写入初始值和预设值,定义的是高速计数器HSC0和HSC模式1,然后激活高速计数器,还做了高速计数器中断,我们设置定时中断0的时间间隔为100ms,因为SMB34的定时中断0为中断事件号10,我们建立中断程序0和中断事件10的中断连接,并全局允许中断。
    然后再看一下中断程序,因为是100ms的定时中断,每100ms执行一次中断程序。我们就用100ms计算的脉冲个数,再乘以600化成1分钟的脉冲个数,再除于分辨率就是等于转速,程序中的500就是编码器的分辨率。而对于编码器的频率的计算,我们有这样一个公式,频率/工频50Hz=转速/工频下的转速,所以频率=(转速/工频下的转速)*工频50Hz,这里我们先把双整数的转速转换成实数,再除以工频下的转速1488.0,再乘以工频50.0Hz,那么就得到了编码器的频率了。

2、用编码器测量机床位置,不论机床朝正方向移动或朝反方向移动,都能知道机床的当前位置,有一原点位置感应开关I0.7,当原点位置感应开关接通时,机床的当前位置为0。假设编码器的分辨率为1024,丝杆的进给量即转1圈移动的位置为10,计算公式是当前值除以分辨率,再乘于进给量。
主程序:






子程序:

    以上的程序中,首先做一个高速计数器初始化的子程序,首先是定义控制字节,送16#F8到SMB37,定义为加计数更新当前值,这里没有写入初始值和预设值,定义的是高速计数器HSC0和HSC模式1,然后激活高速计数器。
    在主程序中,用I0.7的上升沿调用高速计数器初始化子程序。然后是做机床朝正方向移动的控制,做个起保停程序,当I0.3接通时,Q0.0接通并自锁,在Q0.0接通的上升沿传送16#B8到SMB37(加计数不更新当前值),同时激活高速计数器。然后是做机床朝反方向移动的控制,做个起保停程序,当I0.4接通时,Q0.1接通并自锁,在Q0.1接通的上升沿传送16#B0到SMB37(减计数不更新当前值),同时激活高速计数器。
    后面还做了一个用SM0.1常闭触点的上升沿来调用高速计数器初始化的子程序,并且用SM0.1的常开触点来驱动传送指令传送VD1000的值到SMD38,用SM0.1的常闭触点来驱动传送指令传送HC0的值到VD1000,这里是为了实现停电保持功能。PLC从STOP拨向RUN时,在个扫描周期之后会传送HC0的计数值到VD1000里面进行存储,当PLC断电后再从STOP拨向RUN时,SM0.1接通一个扫描周期,把VD1000存储的计数器传到到SMB38,那么当前值就是存储在VD1000里面的值。然后再做一个计算,把双整数HC0的当前值转换成实数,再进行HC0的当前值除以分辨率1024.0,再乘于进给量10.0,这样就可以测量出机床位置。

    那么这就是一些复杂些的高速计数器的应用,比较详细的讲了一下,可以理解吗?


作者:技成培训网(蔡慧荥)

【本文为原创作品。未经同意,盗取必究!】

推荐相关学习视频:

西门子S7-200PLC从入门到精通

西门子S7-200PLC高速脉冲及定位篇

若有收获,就点个赞吧!

文章来源于网络及文献如有侵权请联系站长
分享到:

微信扫一扫分享

阅读与本文标签相同的文章

S7-200入门连载 PLC

相关推荐

最新文章 热门文章
最新课程 免费课程
PLC资料下载 电工电气资料下载
应用新秀
变频器故障代码查询APP
伺服故障代码查询APP
技成
手机APP
热门标签