http://www.ymmfa.com/read-gktid-1644629.html
在论坛上看到有人提出光栅尺与PLC如何配套使用的问题。结合本人使用过光栅尺的经历,写了这篇文章。希望能提供有用的参考。
 
一、结构和工作原理
    光栅尺由有标尺光栅(尺体)和读数头两部分组成。尺体装在移动部件上,读数头装在固定部件上。也有人把读数头装在移动部件上(针对尺体移动不方便的情况),测量效果是一样的,不一样的是信号线移动不方便。
尺体移动就是一对光栅中的主光栅(标尺光栅)和副光栅(指示光栅)进行相对位移,在光的干涉与衍射共同作用下产生黑白相间(或明暗相间)的规则条纹(莫尔条纹)。经过光电器件使黑白(或明暗)相同的条纹转换成正弦波变化的电信号,再经过电路的放大和整形后,得到两个相位差90度的正弦波或方波信号A和B。正弦波或方波的周期数与移动距离成正比。尺体正向移动时,A信号超前B信号90度,尺体反向移动时,A信号滞后B信号90度。有些光栅尺还输出一个Z信号(回零信号)。
 
二、栅距和分辨率
    等距的密集线纹,利用光的透射现象形成光栅,线纹的间距称为栅距。以栅距20um(50线/mm)为例,假设不用其它措施,尺体每移动20um,读数头就输出一个周期信号,输出10个周期信号,表示移动了200um。栅距越小,测量精度越高,成本越高。在保持栅距不变的情况下,把输出的周期信号进行4倍细分处理,那么每移动20um,就输出4个周期信号,每个周期信号表示移动5um。厂商就称呼这个光栅尺的分辨率是5um,但这个5um并不是指栅距是5um。如果尺体移动距离低于20um,不管是多少细分处理,结果是输出0个周期信号。
 
三、供电方式和输出信号
    供电方式常见的有直流5V和24V两种。为了方便与PLC配套使用,最好选择24V供电的。
    光栅尺的输出信号多数是方波信号,常见的有两种:一种是TTL电平信号,另一种是RS422差分信号。有些厂商还能订做集电极开路输出信号(NPN和PNP两种)。对于PLC来说,不是所有信号都适用。PLC的主单元和高速计数模块(如FX2N-1HC、FX3U-2HC、FX3U-4HSX-ADP和CC-Link计数模块AJ65BT-D62等等)可以直接接收集电极开路输出信号,集电极开路输出说白了,就是电子开关。高电平表示开关导通,低电平表示开关截止。可以接通直流电路。与集电极开路输出的旋转编码器的连接方法没有区别。NPN型与PNP型的区别:开关导通时,NPN型的电流方向是从集电极流向发射极。PNP型的电流方向是从发射极流向集电极。
    TTL电平信号输出可以用于单片机或DSP,但不能直接用于PLC。需要加一个直流电子开关模块(淘宝网有售),把TTL电平信号转换成集电极开路输出信号。对于低速移动部件,几乎没什么影响。但对于高速移动的部件,这会带来信号的延迟,甚至周期信号的丢失。
    RS422差分信号的特点是,输出A、A反相、B、B反相等4个信号。有些还能输出Z和Z反相信号。这种输出方式,可以利用两个反相信号来抵消外界的电磁干扰,特别适用于干扰恶劣的环境。PLC主单元和部分高速计数模块(如FX2N-1HC、AJ65BT-D62)不能直接接收RS422信号,需要加一个差分信号转集电极开路输出模块(淘宝网有售),把差分信号转集电极开路输出信号。这种转换接收方式所带来的问题,与TTL电平信号转换接收是一样的。有些高速计数模块(FX3U-2HC、AJ65BT-D62D、AJ65BT-D62-S1等)能够直接接收RS422差分信号。
    PLC主单元有外部高速计数输入端口和内置高速计数器,可用于处理光栅尺的信号。这是不是说高速计数模块就没用呢?答案是否定的。PLC主单元处理信号频率不如高速计数模块。FX2N系列接收单相信号最高60KHz,接收2相信号最高30KHz。如果使用专用比较指令,单相最高10KHz,2相信号最高5KHz。FX3U系列接收单相信号最高100KHz,接收2相信号最高50KHz。如果使用专用指令,最高不会超过60KHz。而很多高速计数模块,可以处理单相信号最高200KHz,2相信号最高100KHz。这几乎是主单元的两倍。
    我们可以计算一下,以FX3U主单元为例,假设接收2相信号(因为很多情况要根据相位差来判断部件移动方向),不使用专用指令(编程难度加大),最高响应频率是50KHz,表示每秒可以接收50000个脉冲信号,假设使用栅距为20um的光栅尺,移动一个栅距,输出一个脉冲。那么50000×20um=1000mm。这就是说,部件移动速度最高不得超过1000mm/s。如果使用的光栅尺的分辨率是5um,每移动20um就输出4个脉冲,部件移动速度最高不得超过250mm/s。如果要使用专用指令,移动速度还得进一步降低。上述分析计算是在理论状态下进行的。实际中,还要考虑PLC主单元处理高频信号的失真、丢失计数量、程序循环执行引起的响应延迟等情况。另外,在工业生产环境中,最好使用RS422差分信号,保证系统的抗干扰能力。而PLC主单元是不能直接接收RS422差分信号。

转载于:https://www.cnblogs.com/BMYC/p/10935074.html

光栅尺与PLC的配合使用相关推荐

  1. 松下A6伺服驱动器外部绝对值光栅尺全闭环参数设置

    硬件参数: 丝杆螺距:5mm 减速机:1:12 光栅尺分辨率为0.01um,长光光栅尺 驱动器参数设置为: Pr0.01 设置为6,全闭环控制 其他采用默认值即可, 光栅尺类型:Pr3.23 设置为2 ...

  2. 松下a6伺服驱动连接光栅尺_FANUC常见伺服报警及故障解决方法

    FANUC常见伺服报警及故障解决方法 FANUC常见伺服报警及故障解决方法 偶尔SV0435:逆变器DC链路电压低报警 1.确认DCLINK母线接线端子螺丝是否锁紧; 2.如果发生全轴或多轴报警时,请 ...

  3. c++生成光栅条纹程序_共享屋:一文让你认识光栅尺和编码器

    坚持学习与健身,是对自己最大的投资 每天进步一点点 共享屋 数控机床电气调试与维修 微信:799309212    大家好,我是共享屋,每天通过一篇文章分享我的经验与观察,希望能够给你一些启发或者帮助 ...

  4. 松下a6伺服驱动连接光栅尺_闭环伺服系统的数控贴条为什么要安装光栅尺?

    位置检测元件是由检测元件(传感器)和信号处理装置组成的,是数控机床闭环伺服系统的重要组成部分.它的作用是检测工作台的位置和速度的实际值,并向数控装置或伺服装置发送反馈信号,从而构成闭环控制.由于检测元 ...

  5. MATLAB中用李沙育图形分析光栅尺sincos信号正交性

        在光栅编码器应用中,细分技术是核心.影响细分精度的其中一个重要因素就是模拟量sin/cos信号的正交情况.理想情况下sin/cos相位差=90°,实际输出的信号相位会有偏差,根据偏差的情况并结 ...

  6. 光栅尺位移传感器---莫尔条纹

    光栅尺位移传感器 本篇作为光栅尺位移传感器介绍的开篇文章,主要根据前人的经验,做个简单介绍,主要包含以下几点: 光栅尺的结构 光栅尺的工作原理 莫尔条纹 莫尔条纹光电信号质量 莫尔条纹的特点 光栅尺位 ...

  7. 增量式光栅尺与绝对式光栅尺的区别及发展趋势

    增量式光栅尺与绝对式光栅尺的区别及发展趋势: 在现代机加行业中,大多采用光栅传感器来进行位置反馈装置.由于光栅尺能够对系统实行全闭环控制,降低滚珠丝杠热变形等原因引起的误差,提高加工精度,所以目前中高 ...

  8. picpick尺子像素大小精度不够准确_光栅尺精度与分辨率有什么关系吗?

    光栅尺通过摩尔条纹原理,通过光电转换,以数字方式表示线性位移量的高精度位移传感器.光栅尺线性位移有二个关键参数:精度与分辨率. 精度,指使用同种备用样品进行重复测定所得到的结果之间的重现性. 测量度( ...

  9. 光栅尺测量数据的修正

    光栅尺测量数据的修正 最近有个视觉项目,相机要在一个直线轨道上运动.要求这个直线轨道的运动精度非常的高.300mm 的运动范围内重复定位精度做到3um 以内.还要求绝对定位精度 10um 以内. 重复 ...

最新文章

  1. mfc 制作不同的文档模板mdi不同的子窗体_制作ACK集群自定义节点镜像的正确姿势...
  2. 【贪心】【codeforces】651A Joysticks
  3. K/3Cloud 分页报表示例参考
  4. 关于mysql-connector-net在C#中的用法
  5. mysql datetime 间隔,MySQL datetime默认时间间隔
  6. LeetCode 50. Pow(x, n)(二分查找)
  7. sql 删除字段中下划线_SQL基础教程知识点总结
  8. php 二维数组按照某value值求出最大值最小值
  9. 查找一:C++静态查找
  10. 读书笔记∣世界是数字的
  11. JavaScript-this指向问题
  12. python2和python3同时安装
  13. FLEX 24节气算法
  14. 替换修改windows xp字体,为windows 7微软雅黑
  15. linux基础之系统安装
  16. PHP批量上传一次点击选中多个
  17. 《安富莱嵌入式周报》第221期:2021.07.12--2021.07.18
  18. 数数小绵羊(C++)
  19. thzvv.com forum php,为什么Naver账号不能用了?
  20. git 提交代码某个文件夹一直提交不上去

热门文章

  1. java juc包多线程编程案例:Executor入门示例
  2. 【收藏】部署Kubernetes(k8s)时,为什么要关闭swap、selinux、防火墙?
  3. 基于阿里云镜像源使用kubeadm安装k8s单master节点集群(v1.17.3)
  4. linux ubuntu/deepin与Windows时间不同步解决办法(双系统)
  5. 在java中会存在内存泄漏吗?
  6. Java经典逻辑编程题(不死神兔问题)
  7. IDEA使用自带数据库连接工具连接Mysql,及报错解决
  8. docker安装的环境
  9. 通过IDEA查看jar包中的依赖关系
  10. Linux压缩包和用户管理及开关机指令