转速与位移测量.pptx
9.1 项目简介项目应用转速和位移测量常应用于电机转速和工作台位移的测量与控制。项目分析电机转速的测量是通过测量电机在一定时间内的旋转圈数来确定的。工作台的直线位移是通过电机旋转带动丝杠转动从而推动螺母直线位移来实现的,因此其测量需从测量电机的角位移着手。传感器高速计数器定时器第1页/共30页光电编码器光电编码器,是一种通过光电转换将输出轴上的机械几何位移量转换成脉冲或数字量的传感器。光电编码器是由光栅盘和光电检测装置组成。光栅盘是在一定直径的圆板上等分地开通若干个长方形孔。电动机旋转时,光栅盘与电动机同速旋转,经发光二极管等电子元件组成的检测装置检测输出若干脉冲信号。为判断旋转方向,码盘提供相位差为90的两路脉冲信号A相和B相。此外,还提供一路Z相脉冲(转一圈出现一个)。第2页/共30页光电编码器1-光源;2-柱面镜;3-码盘;4-狭缝;5-元件第3页/共30页9.2 高速计数器由于普通计数器的计数频率较低(一般只有几十赫兹),因此PLC对高速脉冲信号进行计数需要采用高速计数器。S7-200有6个高速计数器HSC0HSC5,分别可以设置12种不同的工作模式。高速计数器以脉冲编码器的高速脉冲输出为输入,其计数频率与PLC的扫描周期无关。第4页/共30页工作模式0、1或2第5页/共30页工作模式3、4或5第6页/共30页工作模式6、7或8第7页/共30页 工作模式9、10或11(1倍频)第8页/共30页 工作模式9、10或11(4倍频)第9页/共30页高速计数器的外部输入点第10页/共30页高速计数器的控制位缺省设置为0。比如,设HSC0无复位或启动控制,1倍频正交计数,增计数方向且不更新,更新当前值,HSC允许,则SM37=2#11011100,应MOV 16#DC,SMD37第11页/共30页表9.3 设置初始值和预置值HSC0HSC1HSC2HSC3HSC4HSC5新初始值SMD38SMD48SMD58SMD138SMD148SMD158新预置值SMD42SMD52SMD62SMD142SMD152SMD162设置初始值和预置值前,必须先设置HSC控制位,即其第5和6位为1。表9.4 高速计数器的状态位HSC0HSC1HSC2HSC3HSC4HSC5中断描述SM36.5SM46.5SM56.5SM136.5SM146.5SM156.5当前计数方向:0=减计数;1=增计数SM36.6SM46.6SM56.6SM136.6SM146.6SM156.6当前值与预置值:0=不等;1=相等SM36.7SM46.7SM56.7SM136.7SM146.7SM156.7当前值与预置值:0=小于等于;1=大于只有执行中断服务程序时,状态位才有效。可以用状态位产生中断,以完成更重要的操作。比如,设HSC0的初始值为0,则应MOV 0,SMD38第12页/共30页复位和启动操作第13页/共30页高速计数器指令定义高速计数器指令(HDEF)用来指定高速计数器(HSC)及其工作模式(MODE)。高速计数器指令(HSC)用来激活高速计数器,N为其标号。所有高速计数器都可以运行在最高频率而互不影响。表9.5指 令STL格式操作数描 述HDEFHDEF HSC,MODEBYTE定义高速计数器模式HSCHSC NWORD激活高速计数器第14页/共30页高速计数器编程必须完成以下基本操作:定义高速计数器和模式(HDEF指令)设置控制字节(表9.2)设置初始值(表9.3)设置预置值(表9.3)激活高速计数器(HSC指令)例第15页/共30页9.3 子程序PLC程序由主程序、子程序和中断服务程序组成。子程序常用于需要反复多次执行相同任务的场合。子程序的调用需要条件,不调用时就不会被扫描,可以减少扫描时间,提高效率。子程序中尽量使用局部变量,这样能方便地移植该子程序。局部变量的类型有TEMP(临时变量)、IN(输入变量)、OUT(输出变量)、IN_OUT(输入输出变量)。第16页/共30页子程序的创建“编辑”(Edit)菜单或直接在编辑窗口中击鼠标右键,再“插入”(Insert)“子程序”(Subroutine)。通过右击指令树中的“子程序”,可以更改(Rename)子程序名。如需调用带参数的子程序,则在子程序的局部变量表中定义参数,最多16个参数,参数的变量名最多23个字符。第17页/共30页子程序的调用子程序结束后,自动返回到调用它的程序中调用子程序指令的下一条指令处。一个项目最多可以创建64个子程序。子程序可以嵌套调用,最大嵌套深度为8。在中断服务程序中调用的子程序不能再调用别的子程序。子程序调用指令(CALL)CALL 子程序名,参数1,参数2,,参数n 子程序可不带参数,如右图第18页/共30页9.4 中断服务程序中断服务程序不由程序调用,而是在中断事件发生时由操作系统调用。中断服务程序中应使用局部变量。中断服务程序的创建与子程序的创建相似。中断服务程序应越短越好,以减少占用时间,避免延迟其他的处理,否则可能引起设备异常。中断事件的优先级及其中断号。第19页/共30页中断指令中断允许指令(ENI)全局地允许所有被连接的中断事件。中断禁止指令(DISI)全局地禁止所有中断事件。中断条件返回指令(CRETI)在其条件满足时从中断服务程序返回。如果没有该指令,编程软件自动添加无条件返回指令。中断连接指令(ATCH)将中断事件EVNT(BYTE)与中断服务程序号INT(BYTE)相关联,并使该中断事件允许处理。中断分离指令(DTCH)切断中断事件EVNT与中断服务程序号的联系,并禁止该中断事件。清除中断指令(CEVNT)从中断队列中清除所有的中断事件。第20页/共30页9.5 测转速方案分析与硬件接线其原理示意图如图所示。光电编码器的轴(输入轴)与被测轴通过联轴器相联接。第21页/共30页测转速方案分析光电编码器的通过高速计数器计算每秒光电编码器输出脉冲(A相脉冲信号,1000个/圈)的个数就能反映当前电动机的转速。方案一:采用定时1秒的定时器T37,实现1秒的采样周期。在采样期间读取高速计数器HSC0(设置为初始值为0,工作模式为0)的HC0计数(双字),并转换为实数送VD200,再乘0.06,存入VD300,即可得每分钟转速。方案二:采用定时1秒的定时器T32,实现1秒的采样周期。设置好HSC0和定时中断。在采样期间读取高速计数器HSC0(设置为初始值为0,工作模式为0)的HC0计数(双字)。T32定时到,进入中断服务程序,把HC0计数转换为实数送VD200,再乘0.06,存入VD300,得每分钟转速。第22页/共30页测转速硬件接线第23页/共30页9.6 测位移方案分析与硬件接线电机通过联轴器带动丝杠(螺距8mm)一起旋转,螺母带动滑块在导轨上实现直线位移。光电编码器的轴与电机轴通过联轴器相联接。方案:利用HSC1的工作模式9对光电编码器输送的A相和B相高速脉冲增减计数,并把HC1的值乘0.008送入VD200。第24页/共30页测位移硬件接线第25页/共30页9.7 程序编制测转速程序一:周期为1秒转换为r/min单位,并送VD300显示1s定时到,HSC0初始值复位选HSC0,工作模式0第26页/共30页测转速程序二:MAINSBR0T32定时时间到的中断事件号为21。利用中断程序,缩短扫描周期第27页/共30页测位移程序:第28页/共30页9.8 能力拓展任务:实现转速的控制,转速超500r/min时报警。并实现转速与位移测量的一体化。请同学们按照工作过程完成任务:控制方案分析与I/O分配 控制程序设计、下载与调试 任务检查与评价第29页/共30页感谢您的观看!第30页/共30页