s7-200如何与编码器编程

我刚接触西门子200PLC,公司要求用编码器在触摸屏上显示位置

最佳答案

给你一个网上的例子看看——

用编码器输入,显示转速的程序,采用的编码器是增量型,1024线。

  编程思路:

    1,用PLS输出脉冲串来仿真编码器的输入。

   2,定义高速计数器,

   3,采用定时中断100MS采集一下高速计数器的当前值。

   4,计算速度((当前值)-(前一值)) *600 /1024

   5,清除计数器当前值(防止计数值溢出)


ORGANIZATION_BLOCK MAIN:OB1

  TITLE=PROGRAM COMMENTS

  BEGIN

  Network 1 // Network Title

  // 定义脉冲串输出(仿真编码器输出)

  LD SM0.1

  R Q0.0, 1

  MOVB 16#8F, SMB67

  MOVW +5, SMW68

  MOVD +30000000, SMD72

  PLS 0

  MOVR 0.0, VD204

  CALL SBR_0

  END_ORGANIZATION_BLOCK

  SUBROUTINE_BLOCK SBR_0:SBR0

  TITLE=SUBROUTINE COMMENTS

  BEGIN

  Network 1 

  // 定义高速计数器HSC0

  LD SM0.0

  MOVB 16#F8, SMB37

  HDEF 0, 0

  MOVD +0, SMD38

  MOVD +5000, SMD42

  ATCH INT_1, 12

  HSC 0

  ENI

  Network 2 

  // 定时中断,100MS采集一下HC0的值

  LD SM0.0

  MOVB 100, SMB34

  ATCH INT_0, 10

  ENI

  Network 3 // Network Title

  // Network Comment

  END_SUBROUTINE_BLOCK

  INTERRUPT_BLOCK INT_0:INT0

  TITLE=INTERRUPT ROUTINE COMMENTS

  BEGIN

  Network 1 // Network Title

  // 计算速度,VD208显示每分钟转速。

  LD SM0.0

  MOVD HC0, VD100

  DTR VD100, VD200

  MOVR VD200, VD300

  -R VD204, VD300

  MOVR 600.0, VD304

  *R VD300, VD304

  MOVR VD304, VD208

  /R 1024.0, VD208

  MOVR VD200, VD204

  END_INTERRUPT_BLOCK

  INTERRUPT_BLOCK INT_1:INT1

  TITLE=INTERRUPT ROUTINE COMMENTS

  BEGIN

  Network 1 // Network Title

  // 清除编码器当前植

  LD SM0.0

  MOVD +0, SMD38

  HSC 0

  MOVR 0.0, VD204

  -R VD300, VD204

  END_INTERRUPT_BLOCK

提问者对于答案的评价:
谢谢

专家置评

已阅,最佳答案正确。

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc254905.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月10日 下午8:02
下一篇 2019年6月10日 下午8:03

相关推荐

  • 正弦波问题

    在5MPA的压力的基础上做一个变载幅度为0.5MPA的正弦波程序,在上位机上显示,且变载频率可选,比如说当设置0.5HZ时正弦波形变化幅度比较快,当设置10.0HZ时正弦波变化幅度…

    SIMATIC S7-200 2020年11月1日
  • cpu226与变频器USS连接问题

    现在一台CPU226控制两台m440变频器,用uss连接,但现在程序中USS_CTRL模块无输出,变频器无频率显示,电机不转。我的参数设置如下:USS_INIT 输入&n…

    SIMATIC S7-200 2020年10月31日
  • S7-200的不同语句的转换

    现在有一段关于调用子函数的STL函数,我想将其转换成梯形图,想请教需要注意什么,我是半路出家,没有系统的学习过,希望各位多多指点 最佳答案 STL不一定能全部转成梯形图,反之则可以…

    SIMATIC S7-200 2017年6月29日
  • 应用DP通讯方式连接EM277与HMI。

    2个S7-200 CPU226  主模块,一个EM277模块, 2个TP 1200精智屏一个CPU226做主站,一个CPU226做…

    SIMATIC S7-200 2017年6月1日
  • 为什么我的PC ACCESS不支持BOOL数据类型?

    如题,PC ACCESS的版本已是最新(V1.0 SP6)附了两张图,一张我的软件支持的数据类型,一张是网上看见别人的配置——谢谢! 图片说明:  &…

    2021年7月5日
  • 安装STEP7 Micro/WIN-V4.0-SP9时出现这个画面是什么意思?

    安装STEP7 Micro/WIN-V4.0-SP9时出现这个画面是什么意思?怎么处理? 图片说明:    最佳答案 安装SP9,首先你得安装STEP…

    2021年7月5日
  • 西豆

    在这里问有人购买过西豆卡 看需要付西豆的视频吗 或者说需要付西豆的视频教程货真价实吗 最佳答案 依据你的需要而论。付费视频,基本上都是西门子自己的专家主讲的,与…

    SIMATIC S7-200 2021年7月5日
  • 多台200PLC通讯,以及之间的连接线

    我用三台西门子216,甲为主站,已丙为从站,用216自带的口,把已丙的v100.0-v114.7分别读到甲的v100.0-v114.7和v115.0-v29.7中,把甲的v300.…

    SIMATIC S7-200 2021年7月5日
  • 通讯电缆,一头MPI一头DP,怎么连接

    我用的CPU226做项目,由于Part0口需要用来连接变频器,Part1口就想装一个西门子带编程口的DP头,另一端接触摸屏,这样我PC就可以和226通讯了。现在问题是我吧MPI电缆…

    SIMATIC S7-200 2020年11月1日
  • 224xp ,mm420,modbus温控表,mp277

    现在手头,有一个2口的XP244PLC,一台M420变频器,3块modbus温控表,一台MP277人机界面,请问他们用什么方式组网?我感觉通讯口不够用呀。我是这么想的,prot1与…

    SIMATIC S7-200 2018年12月9日