您的当前位置:首页正文

4旋转编码器定位操作训练

2023-11-19 来源:易榕旅网
4旋转编码器定位操作训练

4.1实验1:使用旋转编码器进行定位控制

使用旋转编码器进行定位控制,当轿箱上行10㎝后,变频器停止运行。 实验解析:

为了实现货物的定位控制,需要用到旋转编码器。旋转编码器是一种将角位移转换成脉冲值的检测装置,PLC通过高数计数器来统计编码器发出的脉冲数,从而判断货物所处的位置。

旋转编码器可输出两路脉冲信号,其波形如下图所示:

当旋转编码器正转时,A相超前B相90°,旋转编码器反转时,A相滞后B相90°,这样通过该装置就可以检测电机运行的绝对位移。

题目要求轿箱上行10㎝的距离,实际就是要求检测旋转编码器运行一定脉冲数值后,变频器停止运行。不失一般性,我们不妨假设轿箱上行10㎝所需要的脉冲值为1000个脉冲(实际数值可以通过实验测量,在此不再赘述),下面我们进行实验操作。

(1)PLC编程。 输入接口 PLC端 单元板端口 I0.6 A相 I1.3 一层外呼上 注释 启动变频器信号 旋转编码器A相脉冲输出 Q0.0 N0.5 输出接口 PLC端 变频器接口 注释 控制变频器启动 在S7-200型CPU226 PLC中,共有6个高数计数器,每个高数计数器有11种模式,针对题目要求,我们选择计数器HSC1,选择模式为0,通过编程软件的向导指令,可以完成题目要求。

1)打开编程软件STEP7-MICRO/WIN,从[工具]栏进入到“位置控制向导”,如下图所示:

2)进入指令向导界面。在指令向导中,支持三种指令功能:PID、NETR/NETW、HSC。使用高数计数功能应选择HSC,然后点击下一步,见下图所示:

3)配置高数计数器。从HC0~HC5中选择一个高数计数器。选择不同的高数计数器所使用的外部输入信号不同。针对此题目要求,我们选择HC1,输入点为I0.6、I0.7、I1.0。

每个高数计数器最多有11种工作模式,选择模式1,控制方式为带有内部方向控制的单相/减计数器,没有启动输入,带有复位输入信号。

结合选择的高数计数器HSC1,则输入点I0.6为脉冲时钟输入端口。 设置见下图所示,完成后点击下一步。

4)初始化HC1。在初始化选项中,需要给子程序命名,系统默认名称为HSC_INIT;设定高数计数器的预置值(PV)为1000,计数器的当前值为0,计数器的初始计数方向为增,具体设置参见下图所示:

5)设置HC0的中断事件,当高数计数器的预置值与计数器当前值相等时,产生中断事件。设置如图所示:

6)当计数器的经过值与预置值相等时,高数计数器的任何一个动态参数都可以被更新。在这里,我们更新预置值为0,操作见下图所示:

7)完成指令向导。向导完成以后,会自动生成一个子程序HSC_INIT和一个中断程序“COUNT_EQ”,在编程序时直接调用就可以了。

8)回到编程界面,在“调用子程序”中就会增加“HSC_INIT”,见下图所示:

9)编写程序

主程序的梯形图如下:

子程序HSC_INIT的梯形图如下:

中断程序COUNT_EQ如下所示:

当系统开始运行时,调用子程序HSC_INIT。子程序的目的是用于初始化HSC0,将其控制字节SMB47设置为16#F8,即允许计数、写入新的当前值、写入新的预置值、写入新的计数方向,设置初始计数方向为加计数,启动输入信号和复位输入信号都是高电平有效。

当HSC1的计数脉冲达到设定值1000时,调用中断程序“COUNT_EQ”,将SMD52的置变为0,即清除高数计数器的当前值。同时设置完成标志位M0.0。

当I1.3触点闭合时,Q0.0吸合,变频器启动,电机开始转动,同时编码器的经过值HC1开始增加,当经过值达到1000时,启动中断程序,标志位M0.0置1,变频器停止运行。

(3)系统接线。

打开电源,在计算机上输入上述程序下载到计算机中去,然后将PLC拨到“RUN”档。 (4)按一层外呼上开关,变频器开始运行,当电机走行10㎝后,停止运行。检查系统运行是否正常!

4.2实验2:旋转编码器的双相脉冲输出功能

使用旋转编码器的双相脉冲输出功能实现电机的正反转定位控制。当货物正转运行10㎝后,变频器停止运行,然后变频器反转运行5cm后停止运行。 实验解析:

根据题目要求,要求利用PLC的双相正交计数器功能,这就要求旋转编码器输出两路脉冲,正好利用旋转编码器的双相脉冲输出功能。

系统I/O分配表如下所示:

输入接口 PLC端 单元板端口 I0.0 I0.6 I0.7 I1.0 I1.1 SW0 SA SB SW3 SW4 注释 启动变频器 旋编A相脉冲 旋编B相脉冲 高数计数器复位信号 启动计数功能 Q0.0 Q0.1 N0.5 N0.6 输出接口 PLC端 变频器接口 注释 控制变频器启动 控制变频器正反转 1)进入指令向导界面。选择HSC1计数器,选择模式11,即A/B相正交计数器,使用启动输入和停止输入,然后点击下一步,见下图所示:

2)初始化HC1。选择子程序的默认名称HSC_INIT,选择预置值为1000,输入初始计数为增,输入复位信号和启动信号为高电平有效。

3)启用中断程序,当计数器的当前值与预置值相等时,启用中断程序COUNT_EQ,见下图所示,完成操作后点击下一步。

4)设置中断程序的操作。当中断事件发生时,更新预置值为500。完成后点击下一步。

5)完成向导,系统生成子程序“HSC_INIT”和中断程序“COUNT_EQ”。

编写程序如下图: 1)主程序梯形图

2)子程序HSC_INIT梯形图

3)中断程序COUNT_EQ的梯形图程序:

当系统的触发信号I0.0闭合时,变频器启动,触点I1.1闭合时,计数功能启动,寄存器HC1数值增加,当HC1达到1000时,启用中断,同时标志位M0.0置1,变频器停止运行。

当完成正转后,变频器反转控制信号Q0.1置为1,当系统的触发信号I0.0再次闭合进,变频器启动,反转500个脉冲后,变频器停止运行。完成控制要求。

(3)打开电源,在计算机上输入上述程序下载到计算机中去,然后将PLC拨到“RUN”档。 (4)拨动SW2开关,变频器开始运行,拨动SW1开关,启动高数计数功能。当电机正转10㎝后,停止运行,再次拨动SW2,电机反转运行5cm后停止。检查系统运行是否正常!

因篇幅问题不能全部显示,请点此查看更多更全内容