基于S7-200的PLC对里程轮(增量式码盘)解码的应用
解码模块为JC-11:工业增量式码盘 解码模块,接口简单,易于使用。
应用Step7-MicroWIN编程软件,为S7-200PLC设计本编码盘的应用程序。由于编码盘输出的脉冲信号频率较高,故需应用到S7-200 PLC高速计数器功能。如下图所示,为Step7-MicroWIN的向导功能区,设计者可通过其中的“高速计数器向导”进行本程序的设计。
Figure 1 Step7-MicroWIN向导
双击“高速计数器”选项,进入如下图所示的“HSC指令向导”页面。其中,可对计数器与模式进行设置;由于本编码盘输出为脉冲信号与方向信号,可在模式选项栏中选择模式3,即“带外部方向控制的单相增/减计数器;无启动输入;无复位输入。”模式。至于选择哪个计数器,则与PLC的IO端口和分配有关;本例中选择HC4,所使用的输入端口为:I0.3—时钟脉冲信号,I0.4—方向信号。
注:并非所有计数器都支持模式3,设计者需参考S7-200的相关说明文件
Figure2 HSC指令向导_1
单击“下一步”按钮,进入如下所示页面。此处,可对子程序名称、计数器预置值、计数器当前值等进行设置。本例中,均按默认设置,设计者可根据程序需要进行更改
Figure3 HSC指令向导_2
单击“下一步”按钮,进入如下所示页面。此处,可对本程序的相关中断条件进行设置;本例中,依旧选择默认。
Figure4 HSC指令向导_3
单击“下一步”按钮,进入如下所示页面。该页面显示了依据上述设置,向导所增加的相关子程序或中断程序。
Figure5 HSC指令向导_4
单击“完成”按钮并确定完成向导,系统将添加如下所示的子程序。
HSC_INIT子程序:
Figure6 HSC_INIT子程序
而后,设计者只需在主程序中,应用SM0.1只在首期扫描周期为1的特征,进行高速计数器的初始化。
主程序:
Figure7 主程序
如此,本程序的相关内容即书写完毕,而当前的脉冲数量存储在SMD148中。对于不同的高速计数器,其存储位置不同,设计者可参照S7-200说明文件进行修改。
硬件电路:
基于S7-200的PLC对里程轮(增量式码盘)解码的应用的更多相关文章
- 陕西中际现代:基于自适应算法的PLC滴灌控制系统
基于自适应算法的PLC滴灌控制系统 陕西中际现代包装科技有限公司滴灌部 1.介绍 水资源正在成为一种珍贵的资源.城镇的市民使用成千上万立方的水来浇灌花园和绿地.他们依赖于使用固定灌溉计划的控制器.而这 ...
- 基于Socket访问西门子PLC系列教程(二)
本文是西门子开放式TCP通信的第2篇,上一篇我们讲了使用西门子1200PLC作为TCP服务器的程序编写,可以点击下方链接阅读:[公众号dotNet工控上位机:thinger_swj] 基于Socket ...
- 最简单的基于FFmpeg的移动端例子:IOS 视频转码器
===================================================== 最简单的基于FFmpeg的移动端例子系列文章列表: 最简单的基于FFmpeg的移动端例子:A ...
- 基于Zlib算法的流压缩、字符串压缩源码
原文:基于Zlib算法的流压缩.字符串压缩源码 Zlib.net官方源码demo中提供了压缩文件的源码算法.处于项目研发的需要,我需要对内存流进行压缩,由于zlib.net并无相关文字帮助只能自己看源 ...
- 最简单的基于FFmpeg的内存读写的例子:内存转码器
===================================================== 最简单的基于FFmpeg的内存读写的例子系列文章列表: 最简单的基于FFmpeg的内存读写的 ...
- 基于Docker的TensorFlow机器学习框架搭建和实例源码解读
概述:基于Docker的TensorFlow机器学习框架搭建和实例源码解读,TensorFlow作为最火热的机器学习框架之一,Docker是的容器,可以很好的结合起来,为机器学习或者科研人员提供便捷的 ...
- 基于Ubuntu 14.04 LTS编译Android4.4.2源码
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/gobitan/article/details/24367439 基于Ubuntu 14.04 LTS ...
- StreamDM:基于Spark Streaming、支持在线学习的流式分析算法引擎
StreamDM:基于Spark Streaming.支持在线学习的流式分析算法引擎 streamDM:Data Mining for Spark Streaming,华为诺亚方舟实验室开源了业界第一 ...
- 基于Scrapy框架的增量式爬虫
概述 概念:监测 核心技术:去重 基于 redis 的一个去重 适合使用增量式的网站: 基于深度爬取的 对爬取过的页面url进行一个记录(记录表) 基于非深度爬取的 记录表:爬取过的数据对应的数据指纹 ...
随机推荐
- poj 1260 Pearls(dp)
题目:http://poj.org/problem?id=1260 题意:给出几类珍珠,以及它们的单价,要求用最少的钱就可以买到相同数量的,相同(或更高)质量的珍珠. 珍珠的替代必须是连续的,不能跳跃 ...
- C#调用Geocoding API进行地理编码与逆编码
使用C#调用Geocoding API来将地址转为经纬度,或者将经纬度转变为具体的地址. Geocoding API的详细介绍参见:http://developer.baidu.com/map/web ...
- FJOI2007轮状病毒
不会推公式…… 不会基尔霍夫矩阵…… 不会matrix—tree定理…… 膜拜vfleaking大神…… 题解:http://z55250825.blog.163.com/blog/static/15 ...
- 解决iframe缓存
网上能搜到很多此类的资料,但都是互相转载,不太起作用.这几天写个用到,用了不少的iframe效果.结果发现iframe有缓存的问题.网上提供了思路,即对iframe的href后添加随即get值,来逃避 ...
- listview使用总结
1. android给listview的item设定高度 原文网址:http://blog.csdn.net/l_serein/article/details/7403992 在item的layout ...
- 安装ejabberd2并配置MySQL为其数据库
以前用过openfire做为服务器,但是openfire的集群支持不是很好,所以改用Ejabberd,由于它是用Erlang语言开发的,其并发率与分布式的功能都是很强悍的,在此我记录一下我的安装与配置 ...
- 并发编程之--ConcurrentSkipListMap
概要 本章对Java.util.concurrent包中的ConcurrentSkipListMap类进行详细的介绍.内容包括:ConcurrentSkipListMap介绍ConcurrentSki ...
- Mac OS 终端常用命令【搜藏】
基础概念 OS X 采用的Unix文件系统,所有文件都挂在跟目录“ /” 下面,所以不在要有Windows 下的盘符概念.比如什么“C:”你在桌面上看到的硬盘都挂在 /Volumes 下.比如接上个叫 ...
- 烧写u_boot系统和linux系统
今天下午准备烧写一下u_boot还有linux系统,因为是笔记本电脑,吐槽一下,笔记本电脑的usb转串口不是怎么稳定,dnw下对应的驱动也不怎么好用,导致在笔记本电脑上烧写系统的成功率比较低,本来三点 ...
- Android选项卡TabHost方式实现
1.布局XML: <?xml version="1.0" encoding="utf-8"?> <TabHost xmlns:android= ...