利用光电编码器和PLC高速计数器进行定位控制

利用光电编码器和PLC高速计数器进行定位控制
利用光电编码器和PLC高速计数器进行定位控制

利用光电编码器和PLC高速计数器进行定位控制

在往返式传动控制系统中,很多时候都会涉及到多点定位问题。即要求在不同的定位点启动不同的机械动作。但由于机械惯性的作用,常常会给系统带来定点误差。本系统以龙门刨床的机械传动为例,采用plc作为控制器,通过变频器调节速度,利用光电编码器和plc高速计数器进行定位控制,从而实现精确定位。

变频器;plc;高速计数器;光电编码器

1 龙门刨床的机械传动控制要求

图1所示的龙门刨床的机械传动示意图。传动系统从原点启动,中速行驶到1000mm,开始高速行驶,高速行驶到3000mm,开始低速爬行,低速爬行到终点(3200mm)停车。停顿2s。反向高速行驶,高速行驶到距原点200mm处开始低速爬行。到达原点停车,停顿2s后重新开始往返。在原点和终点低速爬行的目的是为了避免系统惯性带来的定点误差,做到原点和终点的精确定位停车。

2 龙门刨床机械传动的plc控制系统硬件设计

2.1 系统对变频器的控制要求

变频器的正反转由继电器k1、k2控制,速度的切换由继电器k3、k4完成。变频器故障报警输出触点(30a、30c触点)用于立即停止高速计数器运行,并由指示灯hr指示。

变频器具有多段速度设定功能,当k3、k4两个继电器触点都断开时,高速行驶(第一速度);k3闭合,k4断开时,中速行驶(第二速度);k3断开,k4闭合时,低速行驶(第三速度);k3、k4都闭合时,手动调节行驶(第四速度)。

旋钮sf用于手动/自动切换,并用指示灯hg1表示自动状态。手动时,能够通过按钮sa1(电机正转)和sa2(电机反转)手动调节传动系统的位置。

按钮sa用于传动系统在自动状态下的启动/停止控制。采用“一键开关机”方式实现启动/停止控制,用指示灯hg2表示启动状态。

行程开关

sq用于自动启动时,确定传动系统在原点位置,自动停止时,传动系统必须返回原点。行程开关sq1、sq2用于传动系统的两端限位,确保传动系统不能脱离设备。

2.2 plc系统硬件系统的构成及连接

为了实现对龙门刨床机械传动的精确定位,本系统采用plc作为控制器,通过变频器进行速度调节,采用光电编码器和plc高速计数器进行定位控制。根据龙门刨床的机械传动控制要求,系统中有开关量输入点8个,开关量输出点7个,光电编码器a相输入一个,因此选用siemens的cpu224作为控制器,其i/o点的分配及系统接线如图2所示。

3 plc梯形图程序的设计

plc的梯形图程序设计包含主程序(用于实时调用手动子程序sbr_0和自动子程序sbr_1)、子程序sbr_0(用于实现对系统的手动控制)和sbr_1(用于实现对系统的自动控制)和中断处理程序int_0程序(用于处理高速计数器计数当前值到达不同预置值的处理)。由于篇幅所限,以下将以中断处理程序int_0程序为例,说明变频器对速度的控制和调节。其梯形图如下。

4 梯形图设计过程中要注意的几个关键问题

4.1通过多次更改高速计数器的中断和预置值实现多点定位



实现多点定位控制的关键包括两点,第一点是设置高速计数器中断事件12(计数器当前值=计数器预置值),另一点就是在中断处理程序中更改高速计数器预置值。

定位控制需要测量定位点与原点的距离,然后将单位距离(mm)转换成脉冲量,通过光电编码器和plc高速计数器记录脉冲量的变化。本系统中,光电编码器的机械轴和电动机同轴。传动比=10,用于驱动设备的传动辊直径=100mm,光电编码器每转脉冲数=600个/转。可以计算出每毫米距离的脉冲数为:

每毫米距离的脉冲数=600÷(10×100×3.14)≈0.19108脉冲/mm

定点位和预置值比较,必须采用高速计数器中断方式,而不能采用一般的比较指令。因为

一般的比较指令无法捕捉高速变化的事件。

所以,必须通过atch和eni指令将高速计数器中断事件号12((计数器当前值=计数器预置值)与中断处理程序int_0连接。在中断处理程序int_0中,到达预置值时,重新装载下一次的预置值,并执行工艺要求的继电器输出,处理变频器的运行速度。

在自动子程序sbr_1中,将高速计数器hc0设置为单相计数输入,没有外部控制功能。在原点和终点通过更改计数方向,便于中断处理程序int_0判断变频器的运行方向。

4.2 在中断处理程序int_0中不能使用等于比较指令

由于在一个中断处理程序int_0中判断处理多个预置值。需要比较指令和计数方向来判断目前高速计数器计数当前值在哪个阶段,根据判断来决定执行那一段指令。但是,判断不能使用等于比较指令,应该使用大于或小于指令判断。

尽管中断事件(计数器当前值=计数器预置值)发生时,plc立即中断当前主程序、子程序,执行中断处理程序int_0中的指令。但是,在中断处理程序int_0中,plc仍然是按照逐条逐行的扫描机制执行。而高速变化的计数值不可能和中断处理程序执行同步,如果采用等于比较指令,plc在执行中断处理程序时,可能会错过等于值,使plc在中断处理程序中无法判断设备运行到哪个阶段。

4.3 在自动运行时,高速计数器的初始值寄存器写入必须禁止

由于多点定位需要多次装载预置值,写入预置值必须执行hsc指令。

执行hsc写入指令,不单单是写入预置值,如果在控制字节中不加以限制,初始值寄存器smd38中的值同样写入。而smd38=0,这样,就会使高速计数器计数当前值置0。因此,在自动运行时,必须设置控制字节smb37的第七位sm37.6为0,在装载预置值时,禁止写入初始值。

但是,在高速计数器初始设置和返回原点重新开始运行时,又必须写入初始值,使初始值置0,避免机械原因带来的误差。因此,

控制字节必须多次修改。遵循的原则是:允许写入初始值、执行hsc指令后,必须马上修改控制字节,禁止初始值写入,并再次执行hsc指令,中间不能有其它指令存在。

4.4 多点定位的输出线圈尽量采用立即指令

采用高速计数器进行多点定位,主要为了精确定位。定位精度既决定于高速计数器的测量,同时也决定于执行机构的执行快速性。

如果采用普通输出指令,在一个扫描周期的程序执行阶段,改变的仅仅是输出映像存储器,plc的输出点不会立即刷新,只有在程序执行完毕后,plc的输出映像存储器才能对输出点刷新,执行输出。

为了增加定位精度,尽量采用立即输出指令。立即输出指令不受plc扫描周期阶段的限制,在改变输出映像存储器的同时,立即刷新plc输出点。

4.5自动/手动程序采用for-next 循环指令和子程序指令实现

本系统中的自动/手动功能通过采用for-next指令和子程序指令实现。自动程序和手动程序实际上就是两个循环指令的循环体。而循环指令仅执行一次循环扫描刷新。

手动子程序sbr_0和自动子程序sbr_1用于整个程序的分段,便于程序的理解,增加程序的可读性。for-next循环指令的作用是使输出线圈能够重复使用,简化程序。

当变频器正向运行(由sm36.5判断,增计数为正向运行,sm36.5=1),高速计数器当前值等于19108(1000mm)时,继电器k3(q0.2)、k4(q0.3)断开,变频器速度设定为高速正向行驶(第一速度)。同时将高速计数器预置值更改为57325(3000mm)。

当变频器正向运行,高速计数器当前值等于59325(3000mm)时,继电器k3(q0.2)断开、k4(q0.3)接通,变频器速度设定为低速正向爬行行驶(第三速度)。同时将高速计数器预置值更改为61146(3200mm)。

当变频器正向运行,高速计数器当前值等于61146(3200mm)时,表明达到终点,继电器k1(q0.0)、k2

(q0.1)、k3(q0.2)、k4(q0.3)全部复位断开,变频器立即停止运行。同时,发出终点到达信号m0.1,让子程序sbr_1处理停顿2s时间,并由sbr_1处理反向运行设置。

当变频器反向运行(由sm36.5判断,减计数为反向运行,sm36.5=0),高速计数器当前值等于3822(200mm)时,继电器k3(q0.2)断开、k4(q0.3)接通,变频器速度设定为低速反向爬行行驶(第三速度)。同时将高速计数器预置值更改为0。

当变频器反向运行(由sm36.5判断,减计数为反向运行,sm36.5=0),高速计数器当前值等于0时,表明变频器返回到达原点。继电器k1(q0.0)、k2(q0.1)、k3(q0.2)、k4(q0.3)全部复位断开,变频器立即停止运行。同时,发出原点到达信号m0.0,让子程序sbr_1处理停顿2s时间,并由sbr_1处理正向重新运行设置。

本文创新点:往返式传动控制系统的多点定位是一个较难解决的问题,本系统采用plc作为控制器,通过变频调速,利用光电编码器和plc高速计数器进行定位控制,克服了往返式传动控制系统中由于机械惯性的作用给系统带来的定点误差,从而实现了精确定位。

PLC为什么要设有高速计数器功能呢?这要从PLC的扫描周期来理解。PLC内部的普通计数器的计数方式是PLC 在进行输入扫描而得到的信号变化时计一次数。但是PLC在程序执行过程中,是不进行输入扫描的。也就是说,

PLC扫描一次输入信号的状态后(专业语言应该是:输入刷新)进入程序执行过程,程序执行过程中输入再有变化,PLC就不会知道了,程序也不会做出影响。这种状态,我们用普通计数器对高速输入脉冲就无能为力了。

如你回家后关上门对家人讲,你在外面看到有一个人醉汉倒在大街上(关门前看到的就是输入扫描)。你想打电话告诉医院来救他(由于有醉汉在的条件,让你有一个打电话的输出动作),而家人说,你还是再看看醉汉现在的状态再说吧。于是你放下电话(没有输出)开门出去再看一次(由于家人这个中间继电器的参预,你把程序直接跳转到结束,再一次输入扫描),回到家后又关门告诉家人醉汉现在的状况。家人还要坚持让你再出门看一次,你不耐烦了,说“我现在就认为他还躺在那,等我打完电话再出去看吧”(屏蔽中间继电器的参预,继续执行程序),电话打完了(程序执行结束),你又一次打开门出去看,醉汉已经走了。没办法,你还得回来打电话告诉医院不用来了(又一次程序执行结束)。然后你又出门了,看到醉汉又躺在了老地方,气死你了。于是你就想在门外安装一个视频头接到层里的一个显示器上随时观察醉汉的状态。来控制你是否打电话。(我说话罗嗦吧,谁让我先声明是家常聊天方式呢。)

高速计数器属于硬件计数器,其计数方式与程序的扫描是没有关系的.实时接受外部脉冲信号的变化而计数(当然它

的响应也是有一定限制,FX的是50kHZ).FX系列PLC内置高速计数器按其编号分别分配给X0---X7,X0---X7不可重复使用.下面以分配给输入X0的高速计数器为例写一个简单的程序.

分配给X0的高速计数器有:C235,C241,C244,C246,C247,C249,C251,C252,C254(每个高速计数器计数方式各不相同,这里暂不叙述.看附表自己理解.)如果我们使用C235计数器,其他的计数器就不可以再使用了.

LD M0

OUT C235 K10000

LD C235

OUT Y0

LD M1

RST C235

END

当M0处于断开状态时,C235不得电所以不能开始计数,当M0闭合时高速C235计数器一直是处于得电等待计数状态.前面说了,C235是分配给X0的高速计数器.那么它就是接收X0的输入脉冲信号,每当X0有一个上升沿到来

时,C235就计数一次.当计数到10000时,C235的常开触点闭合使Y0 得电.当M1闭合时C235复位,其常开触点断开.

要注意的是:1、只有C235的当前值由9999变化到10000计数器输出点才动作。人为改变C235的值等于10000,其触点是不动作的。2、高速计数器计数不受扫描周期的影响,但他的触点的闭合状态还得程序扫描到LD C235时Y0才动作。如果想让高速计数器到达计数值立即进行输出处理,得用HSCS指令。

高速计数与普通计数相比要注意的几点:

一是高速计数输入是指定的;不是所有输入点都可以;

二是输入频率比较低的还是不要用高速计数;

三高速计数的数据一般都是32位的;

四是对应的所有高速计数频率相加不能大于PLC所允许的最大值;

也就是32位停电保持增型、减型计数器,只对特定输入端子的信号计数。分单向单计数单向双计数双向双计数三种

P LC 高速计数器编码器开门机设计改造

一、引言

自动开门机是车库和仓库常用的设备。其控制核心是单轴定位控制。我公司有一台美国马斯特自动开门机,其驱动定位系统是由单片机控制的。因电脑板子的电源部分和几块集成块都被烧掉,又找不到同型号或能代换的集成块,板子无法修复。此控制系统是早期产品,厂家也没有此系统的配件,只能采取改造这一途径。于是我想利用三菱PLC的高速计数器功能结合编码器和三菱PLC的CALL, HSCS应用指令对自动开门机进行程序设计和改造。

二、改造的可行性分析

马斯特开门机的工作原理:该马斯特开门机是利用单片机首先通过加、减、调整三个按钮手动调整好门的上限位和下限位,同时由编码器把门在上限位和下限位时的门的驱动电机的脉冲数送入单片机储存记忆起来。在要开门和关门时按开门或关门的按钮,由带机械离合器的直流电机驱动带动卷闸门上升或下降,在上升到单片机记忆的上限位或下降到单片机记忆的下限位时电机停转,并由机械离合器抱闸制动。

现在的大多数PLC都具有高速计数器功能,不需增加特殊功能单元就可以处理频率高达几十或上百KHz的脉冲信号,合理的选用编码器,让脉冲频率即能在PLC处理的范围内又可以满足升降的精度要求。利用PLC对驱动电机进行脉冲计数成为可能;而开门机对上升,下将系统的精度和响应速度要求不是很高。可以通过PLC对开门机升降系统驱动电机的上升和下降脉冲数的计算,在升降过程中,让PLC对所接收的两个脉冲数与设定好的两个脉冲数值进行比较,根据比较结果确定是否到达门限,控制电机是否运转。从而保证了门的升降的可行性;所有PLC都具有可擦写的软元件,使软元件中的内容可根据要求随时动态更新。在需要更改上限位和下限位时可把手动调整的上限位和下限位的驱动电机分别的脉冲数存储到PLC的辅助继电器中记忆起来,使用PLC做开门机的电子定位也成为可能。在控制系统中,可以利用原来的24V直流电源(电源部分的电容,二极管有配件,24V电源可修复)作为需要24V的控制系统和直流电机的供给电源。从而简化了直流电源部分。还有可以利用开门机的四个按钮,不需另外增加输入按钮。

三、主要控制部件的选取

首先确定PLC的输入输出点数及分配情况。开门、关门要分别各用一个输入点,调试要用一输入点,防上限位冲程,防下限位冲程要分别各用一个输入点,停止要用一个输入点,高速计数器要占用两个输入点,合计要用8个输入点。驱动电机正转要用一个输出点,驱动电机反转要用一个输出点,合计要用2个输出点。共计输入8点输出2点。因没有用到PWM脉冲输出,只用继电器控制卷闸门电机的正反转,所以选用继电器输出型,再加上220V 电源方便提取,因此要选用交流输入型PLC。在这里我选用三菱的可编程序控制器,由于输入要有8点,输出要2点,所以我选用FX1S-14MR-001,FX1S - 14MR-001的输入点有8点,6点继电器输出(交流220V供电),它带有高速计数器指令,高速计数器等功能,另外此系列PLC的高速计数器具有处理频率高达60千赫的脉冲的能力,再加上FX1S -14MR -001的性价比高,因此选用FX1S-14MR-001完全可以满足开门机的要求。

开门机需要的输入输出点分配如下:

X0:脉冲输入 X1:脉冲输入 X2:下降

X3:上升 X4:停止 X5:调试

X6:防下限位超程 X7:防上限位超程 Y1:下降

Y2:上升

编码器的选取要符合两个方面,一是PLC接收的最高脉冲频率,二是进给的精度。我选用旋转编码器,旋转编码器是一种光电式旋转测量装置,它将被测的角位移直接转换成数字信号(高速脉冲信号)。因些可将旋转编码器的输出脉冲信号直接输入给PLC,利用PLC的高速计数器对其脉冲信号进行计数,以获得测量结果。不同型号的旋转编码器,其输出脉冲的相数也不同,有的旋转编码器输出A、B、Z三相脉冲,有的只有A、B相两相,最简单的只有A相。输出两相脉冲的旋转编码器有4条引线,其中2条是脉冲输出线,1条是COM端线,1条是电源线。编码器的电源可以是外接电源,也可直接使用PLC的DC24V电源。电源" - "端要与编码器的COM端连接," + "与编码器的电源端连接。编码器的COM端与PLC输入COM端连接,A、B两相脉冲输出线直接与PLC的输入端连接,连接时要注意PLC输入的响应时间。有的旋转编码器还有一条屏蔽线,使用时要将屏蔽线接地。

我选用的是宜科 EB28 A4 H6微型增量型编码器。编码器EB是宜科的EB系列,A是代表法兰式,4代表轴径4mm,H6代表10V∽30V供电,分辨率是500P/R(每转每相输出500个脉冲)的。通过验正可以知道此分辨率可以满足上面两个条件。验证所需的参数:电机最高转速是1500转/分(25转/秒)、门高是3m。本系统脉冲最高频率=25转/秒×500个/转×2(A/B两相)=25KHz 。由于此工程中对编码器的A/B两相脉冲进行了分别计数,使用了两个高速计数器,且在程序中应用了高速比较置位指令,则此PLC可处理的最高脉冲频率为60/2=30(千赫),30千赫大于25千赫,因此满足要求。

四、PLC程序的编写

此工程中程序的难点主要在于数据的记忆与比较处理上。在开门机工作过程中,要用一个上升按钮或下降按钮分别设定上限位和下限位,还要用同一个上升按钮或下降按钮来控制门的上升和下将。

为了简化程序中的计算,采用了两个高速计数器C235和C236。C236通过增、减计数方式计算上升、下降进行的脉冲数,再把上升、下降的脉冲数分别储存到PLC的数据寄存器D210,D200中。C235用于计数正常工作中的上升、下降脉冲数。当门下降时,C235减计数的脉冲数等于D200中的数据时,M50常闭触点断开,下降到位自动停止。当上升时,C235增计数的脉冲数等于D210中的数据时,M60常闭触点断开,上升到位自动停止。

设定上、下门限的控制程序段见下图:

开、关门动作的控制程序段见下图:

另外,还要用到子程序调用指令:CALL,SRET。在进行门的上下限设定时就调用设定上下门限的控制程序段,设定完成后返回主程序执行。

PLC与编码器的接线图如下:

五、操作说明

在设定下限门限位时,要先按住X5,再按X2点动门到合适的下限位置时,先松掉X2,在没设定下限门限位时不能松掉调试按钮X5;在设定下限门限位时,也要先按住调试按钮X5,再按X3点动门到合适的上限位置,再松掉X3,最后才能松掉X5.在设定门限的动作中千万不要松开X5。否则不能完成设定门限记忆。在工作中按停止,驱动电机中间停止,或紧急停止。在门停止时,由开门机原本有的机械离合器自动制动停机,并锁住电机轴,确保卷

闸门不会因自身重量掉下来。还有,利用了它以前配有的手动链条离合器,在控制系统坏了,或没电时,可以用手拉动链条,使离合器分离,并带动电机主轴旋转,从而带动门的主轴旋转,完成开门或关门动作。在开门或关门过程中,都有程序定位保护,当门开或关到程序记忆的数值时使电机停止,完成开门或关门动作,但万一系统故障没有停机时,还有加装在门上档和门的下档的两个限位超程开关可完成停机动作,确保门不会冲出外面或门顶牢地面而使电机过载。还有在电机主电路有短路和过载保险进行保护。

六、结束语

通过上述的设计改造过程,我只花了一千来块就能替代5千多元的开门机系统,并能完全恢复了我厂开门机的功能。解决了要急于使用卷闸门而开门机故障不能使卷闸门打开的紧急问题。由这个应用实例可以看出利用编码器结合PLC的高速计数器、传送指令,合理的进行应用,可以作为具有记忆功能的电子限位使用,在一定场合可以取代高成本的定位控制系统,实现控制系统最优的性价比。

一、光电编码器与高速计数器

1、光电编码器的工作原理

光电编码器是一种新型的转速及定位控制用传感器,其工作故事可以用光电码盘说明。光电码盘是沿圆周开有均匀的孔或齿的圆盘,一组发光元件及光敏元件分置在盘的两边,当圆盘转动时,光时而通过孔或齿隙照到光敏元件上,时而被圆盘阻挡,这样光敏元件上就产生了脉冲串波形的电信号。将该信号放大、整形,就能用来测量转速及位移。

光电编码器在旋转一周时可以产生数千以至上万的脉冲以满足高精度的转速及定位要求(在选择编码器追求高精度时,也要考虑控制器的接收频率!)。在电梯的应用中,对于编码器的分辨率要求并不高,轿厢运动1mm能产生数个脉冲就可以了。我们希望的是编码器在产生脉冲的同时能解决转向判断的问题,那么如今的编码器一般都是设有两套(或是三套---零位测量用)光电装置的,两套光电装置产生的脉冲的相位有一定的差别,就也就产生了方向信号,如A装置产生脉冲相位超前于B相时为正转。反之,为反转。为了方便论述,我们选择轿厢运行1mm,编码器产生1个脉冲。

2、PLC的高速计数器及高速计数指令(以三菱FX系列论述)

高速计数器是PLC的编程软元件。相对普通计数器,高速计数器用于频率高于机内扫描频率的机外脉冲计数(建议认真了解一下PLC扫描周期的概念)。由于计数信号频率高,计数以中断方式,计数器的启动、复位、或计数方向的变化也多使用机外信号。PLC的高速计数器分为三种:1、单相单计数输入高速计数器,2、单相双计数输入高速计数器,3、双相双计数输入高速计数器。如单相单计数输入高速计数器C235是采集X0的输入信号。(PLC有其自己的规定,具体参照使用手册。)

高速计数器有两种工作方式。第一种利用自身触点的动作为信号,高速计数器和普通32们增减计数器一样,在增计数到达设定值时,触点动作并保持,在做减计数达到设定值时(如触点已置位)触点复位。这种方式的缺点是控制受扫描周期的影响。高速计数器的第二种工作方式为中断方式,这需使用高速计数器的专用指令。FX2N有三条是关于高速计数器的指令:1、高速计数器置位指令(HSCS),2、高速计数器的复位指令(HSCR),3、高速计数器

区间比较指令(HSZ),此三条指令均为32位指令,均为中断方式执行。

结合五层电梯的控制,选择FX2N-64MRPLC为控制器,选取双相双计数输入高速计数器C254作为轿厢的定位计数器。其A相脉冲输入端为X000,B相脉冲输入端为X0001,处复位端为X0002,外启动端为X0006。二、基于高速计数器的轿厢位置确定

电梯运行时,高速计数器在光电编码器的驱动下完成计数工作,当轿厢上升时加计数,当轿厢下降时减计数,高速成计数器的当前值即是轿厢在井道中的准确位置,如楼层高度为5M,正常运行时计数范围为0---20000的数值,可设高速计数器设定值为30000或其他大于20000的数值,由于本程序并不打算利用当前值等于预置值事件,便可以设个永远不可能达到的数值。

轿厢位置的确定有多重用处。其一是实现门厅及轿厢内楼层数字指示,二是用于运行定向,三是用于确定平层制动的时刻。在每层楼上下各安排200mm轿厢当前位置批示切换区间,当轿厢到达该区间时,将轿厢当前位置数据送到层楼当前值存储单元中保存,用来作为门厅及轿厢处楼层显示数据。

为了电梯运行之初的调试及维修时修正机械原因及建筑原因带来的楼层计数器定位误差,可在程序中安排定位自学习程序。通过检修运行获得各层的准确数据

切纸机械是印刷和包装行业最常用的设备之一。切纸机完成的最基本动作是把待裁切的材料送到指定位置,然后进行裁切。其控制的核心是一个单轴定位控制。我公司引进欧洲一家公司的两台切纸设备,其推进定位系统的实现是

利用单片机控制,当接收编码器的脉冲信号达到设定值后,单片机系统输出信号,断开进给电机的接触器,同时电磁离合制动器的离合分离,刹车制动推进系统的惯性,从而实现精确定位。由于设备的单片机控制系统老化,造成定位不准,切纸动作紊乱,不能正常生产。但此控制系统是早期产品,没有合适配件可替换,只能采取改造这一途径。目前国内进行切纸设备进给定位系统改造主要有两种方式,一是利用单片机结合变频器实现,一是利用单片机结合伺服系统实现,不过此两种改造方案成本都在两万元以上。并且单片机系统是由专业开发公司设计,技术保守,一旦出现故障只能交还原公司维修或更换,维修周期长且成本高,不利于改造后设备的维护和使用。我们结合自己设备的特点提出了新的改造方案,就是用plc的高速计数器功能结合变频器的多段速功能实现定位控制,并利用hmi (人机界面humanmachineinterface)进行裁切参数设定和完成手动操控。

2 改造的可行性分析

现在的大多plc都具有高速计数器功能,不需增加特殊功能单元就可以处理频率高达几十或上百khz的脉冲信号。切纸机对进给系统的精度和响应速度要求不是很高,可以通过对切纸机进给系统相关参数的计算,合理的选用编码器,让脉冲频率即能在plc处理的范围内又可以满足进给的精度要求。在进给过程中,plc对所接收的脉冲数与设定数值进行比较,根据比较结果驱动相应的输出点对变频器进行输出频率的控制,实现接近设定值时进给速度变慢,从而减小系统惯性,达到精确定位的目的。另外当今变频器技术取得了长足的发展,使电机在低速时的转矩大幅度提升,从而也保证了进给定位时低速推进的可行性。

3 主要控制部件的选取

3.1 PLC的选取

设备需要的输入输出信号如下:x0脉冲输入

x1脉冲输入

x2前限位

x3后限位 y3 前进!

x4前减速位 y4 后退

x5电机运转信号 y5 高速

x6刀上位 y6 中速

x7滑刀保护 y7 低速

x10压纸器上位 y10

x11光电保护 y11

x12小车后位 y12 进给离合

x13双手下刀按钮 y13 压板下

x14停止按钮 y14 刀离合

x15连杆保护 y15 电机禁启动

x16刀回复到位

表1plc输入输出分配表

针对这些必需的输入点数,选用了fx1s-30mr的plc,因为选用了人机界面,其它一些手动动作,如前进、后退、换刀等都通过人机界面实现,不需占用plc输入点,从而为选用低价位的fx1s系列plc成为可能,因为fx1s系列plc 输入点最多只有16点。另外此系列plc的高速计数器具有处理频率高达60千赫的脉冲的能力,足可以满足切纸机对精度的要求。

三菱高速计数器应用

三菱FX系列PLC计数器(C)内部计数器高速计数器 2016-02-03 来源:网络或本站原创 FX2N系列计数器分为内部计数器和高速计数器两类。 1.内部计数器 内部计数器是在执行扫描操作时对内部信号(如X、Y、M、S、T等)进行计数。内部输入信号的接通和断开时间应比PLC的扫描周期稍长。 (1)16位增计数器(C0~C199)??共200点,其中C0~C99为通用型,C100~C199共100点为断电保持型(断电保持型即断电后能保持当前值待通电后继续计数)。这类计数器为递加计数,应用前先对其设置一设定值,当输入信号(上升沿)个数累加到设定值时,计数器动作,其常开触点闭合、常闭触点断开。计数器的设定值为1~32767(16位二进制),设定值除了用常数K设定外,还可间接通过指定数据寄存器设定。 下面举例说明通用型16位增计数器的工作原理。如图1所示,X10为复位信号,当X10为ON时C0复位。X11是计数输入,每当X11接通一次计数器当前值增加1(注意X10断开,计数器不会复位)。当计数器计数当前值为设定值10时,计数器C0的输出触点动作,Y0被接通。此后既使输入X11再接通,计数器的当前值也保持不变。当复位输入X10接通时,执行RST复位指令,计数器复位,输出触点也复位,Y0被断开。 图1??通用型16位增计数器 (2)32位增/减计数器(C200~C234)??共有35点32位加/减计数器,其中C200~C219(共20点)为通用型,C220~C234(共15点)为断电保持型。这类计数器与16位增计数器除位数不同外,还在于它能通过控制实现加/减双向计数。设定值范围均为~(32位)。 C200~C234是增计数还是减计数,分别由特殊辅助继电器M8200~M8234设定。对应的特殊辅助继电器被置为ON时为减计数,置为OFF时为增计数。 计数器的设定值与16位计数器一样,可直接用常数K或间接用数据寄存器D的内容作为设定值。在间接设定时,要用编号紧连在一起的两个数据计数器。 如图2所示,X10用来控制M8200,X10闭合时为减计数方式。X12为计数输入,C200的设定值为5(可正、可负)。设C200置为增计数方式(M8200为OFF),当X12计数输入累加由4→5时,计数器的输出触点动作。当前值大于5时计数器仍为ON状态。只有当前值由5→4时,计数器才变为OFF。只要当前值小于4,则输出则保持为OFF状态。复位输入X11接通时,计数器的当前值为0,输出触点也随之复位。 图2? 32位增/减计数器 2.高速计数器(C235~C255) 高速计数器与内部计数器相比除允许输入频率高之外,应用也更为灵活,高速计数器均有断电保持功能,通过参数设定也可变成非断电保持。FX2N有C235~C255共21点高速计数器。适合用来做为高速计数器输入的PLC输入端口有X0~X7。X0~X7不能重复使用,即某一个输入端已被某个高速计数器占用,它就不能再用于

中断的妙用―扩展PLCAB相高速计数器方法(精)

中断的妙用—PLC AB相高速计数的方法 杨敬东 (广东佛山菜鸟控制实验室) 摘要:本文介绍了利用可变程序控制器PLC的中断机制,扩展PLC中的AB两相高速计数器的方法。 一、引言:PLC可编程序控制器,是一种工业上广泛应用的通用控制器,但是在应用实践中,不少情况是应用的要求,略为超出了PLC的资源,通常是IO端口的不匹配,最遗憾的是,有时只差1、2个端口,就要选购大一级点数规格的PLC,所以很多学者研究了不增加成本的情况下扩展IO端口的方法。但AB两相高速计数器不够用而扩展的,恐怕大多数人认为,只能购买昂贵的高速计数器特殊模块了。但如果满足特定条件时,也可以用PLC基本单元作少量增加,以下以三菱FX系列PLC基本单元为例扩展1路AB相高速计数器。 二、问题背景:某机械设备设计制造公司要设计制造一种液压机械,机器需要用到3把AB相光栅尺,其中1把连接到液压缸驱动的进给机构,以作为定位之用,运动速度高;另外2把连接到一个平面上的X轴、Y轴两个方向的调节机构,该2个调节机构进给速度相对前者稍慢。公司计划采用三菱FX1N系列PLC基本单元作为控制器,由于三菱FX1N系列PLC基本单元最多只能同时接入2个AB相高速计数器,于是将其分配接入2把AB相光栅尺,完成X轴、Y轴调节机构的功能,另购置1个高速计数器特殊功能模块,完成进给机构高速定位功能。但是,PLC特殊功能模块的价格是比较昂贵的,如果机器的生产数量是比较多的话,就削弱了产品的竞争力。 三、FX1N系列PLC内部高速计数器和外部中断简介: 内部21点高速计数器C235—C255共用PLC特定的8个输入端X0—X7,某一高速计数器输入端都有其对应的输入端口,不同类型的高速计数器可以同时使用,但是它们的输入端不能冲突。其中AB相高速计数器与端口的对应关系如表—1:

三菱高速计数器应用

三菱FX系列PLC计数器(C) 内部计数器高速计数器 2016-02-03 来源:网络或本站原创 FX2N系列计数器分为内部计数器与高速计数器两类。 1.内部计数器 内部计数器就是在执行扫描操作时对内部信号(如X、Y、M、S、T等)进行计数。内部输入信号得接通与断开时间应比PLC得扫描周期稍长。 (1)16位增计数器(C0~C199)共200点,其中C0~C99为通用型,C100~C199共100点为断电保持型(断电保持型即断电后能保持当前值待通电后继续计数)。这类计数器为递加计数,应用前先对其设置一设定值,当输入信号(上升沿)个数累加到设定值时,计数器动作,其常开触点闭合、常闭触点断开。计数器得设定值为1~32767(16位二进制),设定值除了用常数K设定外,还可间接通过指定数据寄存器设定。 下面举例说明通用型16位增计数器得工作原理。如图1所示,X10为复位信号,当X10为ON时C0复位。X11就是计数输入,每当X11接通一次计数器当前值增加1(注意X10断开,计数器不会复位)。当计数器计数当前值为设定值10时,计数器C0得输出触点动作,Y0被接通。此后既使输入X11再接通,计数器得当前值也保持不变。当复位输入X10接通时,执行RST复位指令,计数器复位,输出触点也复位,Y0被断开。 图1 通用型16位增计数器 (2)32位增/减计数器(C200~C234)共有35点32位加/减计数器,其中C200~C219(共20点)为通用

型,C220~C234(共15点)为断电保持型。这类计数器与16位增计数器除位数不同外,还在于它能通过控制实现加/减双向计数。设定值范围均为-214783648~-+214783647(32位)。 C200~C234就是增计数还就是减计数,分别由特殊辅助继电器M8200~M8234设定。对应得特殊辅助继电器被置为ON时为减计数,置为OFF时为增计数。 计数器得设定值与16位计数器一样,可直接用常数K或间接用数据寄存器D得内容作为设定值。在间接设定时,要用编号紧连在一起得两个数据计数器。 如图2所示,X10用来控制M8200,X10闭合时为减计数方式。X12为计数输入,C200得设定值为5(可正、可负)。设C200置为增计数方式(M8200为OFF),当X12计数输入累加由4→5时,计数器得输出触点动作。当前值大于5时计数器仍为ON状态。只有当前值由5→4时,计数器才变为OFF。只要当前值小于4,则输出则保持为OFF状态。复位输入X11接通时,计数器得当前值为0,输出触点也随之复位。 图2 32位增/减计数器 2.高速计数器(C235~C255) 高速计数器与内部计数器相比除允许输入频率高之外,应用也更为灵活,高速计数器均有断电保持功能,通过参数设定也可变成非断电保持。FX2N有C235~C255共21点高速计数器。适合用来做为高速计数器输入得PLC 输入端口有X0~X7。X0~X7不能重复使用,即某一个输入端已被某个高速计数器占用,它就不能再用于其它高速计数器,也不能用做它用。各高速计数器对应得输入端如表1所示。 高速计数器可分为四类: (1)单相单计数输入高速计数器(C235~C245)其触点动作与32位增/减计数器相同,可进行增或减计数(取决于M8235~M8245得状态)。计数器得加减信号都由一个端子输入,通过设置改变输入信号得极性。 如图3a所示为无启动/复位端单相单计数输入高速计数器得应用。当X10断开,M8235为OFF,此时C235为增计数方式(反之为减计数)。由X12选中C235,从表1中可知其输入信号来自于X0,C235对X0信号增计数,当前值达到1234时,C235常开接通,Y0得电。X11为复位信号,当X11接通时,C235复位。 如图3 b所示为带启动/复位端单相单计数输入高速计数器得应用。由表3 4可知,X1与X6分别为复位输入端与启动输入端。利用X10通过M8244可设定其增/减计数方式。当X12为接通,且X6也接通时,则开始计数,

西门子S7-200系列PLC计数器的类型

西门子S7-200PLC的计数器共有255个计数器(不包括高速计数器)可以使用,计数的形式可以分为“加计数”、“减计数”与“加减计数”3类。 (1)加计数(CTU) 加计数是通过获取计数输入信号的上升沿进行加法计数的计数方法。计数输入信号每出现一次上升沿,计数器从0开始加“1”,当计数达到设定值(PV)时,计数器的输出触点接通。 计数达到设定值如果继续输入计数信号,计数值仍然增加,输出触点保持接通状态。 计数器具有清除信号(R)输入,当清除信号为“1”时,现行计数值被清“0”,设定值写入,输出触点强制断开。 (2)减计数(CTD) 减计数是通过获取计数输入信号的上升沿进行减法计数的计数方法。计数输入信号每出现一次上升沿,计数器从设定值开始减“l”,当现行计数值减到“0”时,计数器的输出触点接通。 计数值为“0”后如果继续输入计数信号,计数值保持“0”,输出触点保持接通状态。 计数器具有清除信号(R)输入,当清除信号为“1”时,设定值被写入并作为现行计数值,输出触点强制断开。 (3)加减计数(CTUD) 加减计数具有加计数与减计数两个输入端,通过获取对应计数输入信号的上升沿,进行加法、减法计数。 加减计数的本质与加计数相同,计数输入信号每出现一次上升沿,计数器从0开始加“1”,当计数达到设定值(PV)时,计数器的输出触点接通。计数达到设定值如果继续输入计数信号,计数值仍然增加,输出触点保持接通状态。当现行值加到最大值32767后,如果再输入加计数信号,现行值变为-32768,再继续进行加计数。 同时,减计数输入信号也起作用,减计数输入每出现一次上升沿,计数器从现行值开始减“1”。当现行值减到最小值-32768后,如果再输入减计数信号,现行值变为+32767,再继续进行减计数。

编码器的脉冲计数,高速计数器小归纳

我们一般采用高速输出信号控制步进电机和伺服电机做位置,角度和速度的控制,比如定位,要实现这个目的,我们要知道这几个条件:1、PLC高速输出需要晶体管输出,继电器属于机械动作,反应缓慢,而且易坏 2、以三菱PLC为例,高速输出口采用Y0 、Y1 3、高速输出指令常用的有 PLSY 脉冲输出 PLSR 带加减速 PLSV……可变速的脉冲输出 ZRN……原点回归 DRVI……相对定位 DRVA……绝对定位 4、脉冲结束标志位M8029 5、D8140 D8141 为Y0总输出脉冲数 6、在同一个程序里面Y0做为脉冲输出,程序可以存在一次,当需要多次使用的时候,可以采用变址V进行数据的切换,频率,脉冲在不同的动作模式中,改变数据

正对上述讲解的内容:我们用一个程序来表示若我们以后可能接触步进。伺服这一块,上述内容,大家一定要熟练掌握! 23、PLC编程实现编码器的脉冲计数 在高速计数器与编码器配合使用之前,我们首先要知道是单向计数,还是双向计数,需要记录记录的数据,需要多少个编码器,在PLC 中也需要多少个高速输入点,我们先要确认清楚。 当我们了解上面的问题以后,参照上题的寄存器分配表得知我们该选择什么高速计数器 如:现在需要测量升降机上升和下降的高度,那么我们需要采用双向编码器,即可加可减的,AB相编码器,PLC需要两个IO点,查表

得知,X0 X1为一路采用C251高速计数器那么我们可以这样编程,如图 开机即启动计数,上升时(方向),C251加计数 下降时(方向),C251减计数 我们要求编码器转动的数据达到多少时,就表示判断实际升降机到达的位置 注意:在整个程序中没有出现X0、X1这个两个软元件? 是因为C251为X0、X1的内置高速计数器,他们是一一对应的,只要见到c251,X0 X1就在里面了,当然,用了C251以后,X 0 、X1不能在程序里面再当做开关量使用了

PLC高速计数器测量电机转速的标准程序

PLC高速计数器测量电机转速的标准程序 通过与电动机同轴齿轮齿条变化来测量电动机转速,电动机输出轴与齿轮的传动比=1,齿条数=12,要求测量单位:转/分钟。 主程序: 子程序0

中断程序0

主程序MAIN 程序初始化,PLC上电运行的第一个扫描周期执行一次初始化子程序SBR_0。用于程序运行的初始设置 子程序SBR_0 在PLC运行的第一个扫描周期,将用于记录累加数据次数和累加数据的中间变量VB8和VD0置0 设置高速计数器HC0的控制字节SMB37,用十六进制表示(16#F8),也可以用二进制表示(2#11111000)。 设置高速计数器HC0工作模式为0,单相计数输入,没有外部控制功能。 设置高速计数器HC0初始值寄存器SMD38为0。 执行HSC指令,将控制字节SMB37、初始值/预置值寄存器(SMD38/SMD42)以及工作模式写入高速计数器HC0。 设定定时中断事件的时间为50ms 定时中断事件号10和中断处理程序INT_0建立关联。 允许中断,将定时中断事件和中断处理程序连接 中断处理程序INT_0 中断处理程序每隔50ms扫描刷新一次。 采用整数加法指令,将高速计数器HC0的计数当前值(32位)和累加数据相加一次。用于数据的累加。 采用整数递增指令,记录累加次数。 执行HSC指令,在这里执行的目的,是将初始值寄存器SMD38(0)再次写入高速计数器HC0,使计数当前值为0,以便下个定时采样。 当累加数据次数等于32次,子程序中网络2中程序执行。 采用除法指令,计算32次的累加数据平均值。 将平均值转换成测量单位:转/分,转换后的数据送入双字VD4。 将平均值转换成字数据,送入字VW10中。VW10中的数据就是电机速度值。之所以转换,是因为在程序中一般要求以字的概念存在。 将记录累加数据次数的字节VB6中数据置0。用于下一次开始时,从新开始累加。 将用于累叫数据的中间变量VD4置0。

西门子PLCS高速计数器指令用法

高速计数器计数器 输入/输出操作数数据类型 N常数(0,1,2,3,4或5)字 内存范围错误S7-200 CPU指令支持SIMATIC/国际助记符 数据范围CPU内存中的指令大小编址内存 高速计数器(HSC)指令根据HSC特殊内存位的状态配置和控制高速计数 器。参数N指定高速计数器的号码。 高速计数器最多可配置为十二种不同的操作模式。 每台计数器在功能受支持的位置有专用时钟、方向控制、复原和起始输入。 对于双相计数器,两个时钟均可按最高速度运行。在正交模式中,您可以 选择一倍\(1x)或四倍(4x)的最高计数速率。所有的计数器按最高速率 运行,而不会相互干扰。 注释: CPU 221和CPU 222支持4台高速计数器 (HSC0、HSC3、HSC4、HSC5) CPU 221和CPU 222不支持HSC1和HSC2 CPU 224、CPU224XP、CPU 226支持6台高速计数器 (HSC0至HSC5) 您可以为每台高速计数器使用一条"高速计数器定义"指令。文档光盘中"提 示与技巧"中的第4条提示和第29条提示提供使用高速计数器的程序。 设置ENO = 0的错误条件: 0001 HSC在HDEF之前 0005 HSC/PLS同步 程序举例 LAD FBD

STL NETWORK 1 // 主程序 // 首次扫描时,调用SBR_0 LD SM0.1 CALL SBR_0 NETWORK 1 // 子程序0开始 // 配置HSC1 LD SM0.1 // 首次扫描时 MOVB 16#F8 SMB47 // 配置HSC1:// - 启用计数器 // - 写入新当前值

高速计数器

1 引言 切纸机械是印刷和包装行业最常用的设备之一。切纸机完成的最基本动作是把待裁切的材料送到指定位置,然后进行裁切。其控制的核心是一个单轴定位控制。我公司引进欧洲一家公司的两台切纸设备,其推进定位系统的实现是利用单片机控制的。控制过程是这样的,当接收编码器的脉冲信号达到设定值后,单片机系统输出信号,断开进给电机的接触器,同时电磁离合制动器的离合分离,刹车起作用以消除推进系统的惯性,从而实现精确定位。由于设备的单片机控制系统老化,造成定位不准,切纸动作紊乱,不能正常生产。但此控制系统是早期产品,没有合适配件可替换,只能采取改造这一途径。目前国内进行切纸设备进给定位系统改造主要有两种方式,一是利用单片机结合变频器实现,一是利用单片机结合伺服系统实现,不过此两种改造方案成本都在两万元以上。并且单片机系统是由专业开发公司设计,技术保守,一旦出现故障只能交还原公司维修或更换,维修周期长且成本高,不利于改造后设备的维护和使用。我们结合自己设备的特点提出了新的改造方案,就是用PLC的高速计数器功能结合变频器的多段速功能实现定位控制,并利用HMI(人机界面HumanMachineInterface)进行裁切参数设定和完成一些手动动作。 2 改造的可行性分析 现在的大多PLC都具有高速计数器功能,不需增加特殊功能单元就可以处理频率高达几十或上百KHz的脉冲信号,而切纸机对进给系统的精度和响应速度要求不是很高。可以通过对切纸机进给系统相关参数的计算,合理的选用编码器,让脉冲频率即能在PLC处理的范围内又可以满足进给的精度要求。在进给过程中,让PLC对所接收的脉冲数与设定数值进行比较,根据比较结果驱动相应的输出点对变频器进行输出频率的控制,实现接近设定值时进给速度变慢,从而减小系统惯性,达到精确定位的目的。另外当今变频器技术取得了长足的发展,使电机在低速时的转矩大幅度提升,从而也保证了进给定位时低速推进的可行性。 3 主要控制部件的选取 3.1 PLC的选取 设备需要的输入输出信号如下: x0脉冲输入 x1脉冲输入 x2前限位 x3后限位y3 前进! x4前减速位y4 后退 x5电机运转信号y5 高速

三菱PLC高速计数器和编码器应用

三菱PLC高速计数器和编码器应用 编码器的作用相信大家会经常听到,但是,到底怎么用,相信很多人是一知半解,那么,今天陈老师就给大家分享一下具体的使用方法。使用编码器之前,我们需要先学习高速计数器的概念。 一、什么是高速计数器假如我们的PLC的X0点接入了一个按钮,在plc里面写入以下的程序,我们按住按钮1次,那么计数器就会记1,按2次就记2,… …我们按1000次了,计数器c0的常开触点就会闭合,这很好理解。 假如我1秒按一次,那么,人为去按,那么按个1000次就能导通。 重点来了,如果说我不接按钮,我接了个光电感应器或者编码器去感应,由机器去触发,机器运行的速度非常快,可能1秒按了几百次,甚至几百几千次,我们的X0的常开触点就感应不了了,那么怎么办,我们可以用高速计数器。 如下表,是我们的单相的高速计数器

假如我把光电感应器接到,X0,那么C235,就是它的专用的计数器,X0每感应到的每一个信号都会用C235进行计数,我们用以下程序就能把X0感应到的脉冲数存放到D235里面。(同理,C236记录的是X1的脉冲数;C237记录的是X2的脉冲数… …) 当然计数器的计数频率是有个极限的,普通的FX系列的X点,接受的速度是50KHz,就是1秒钟能接收导通50 000次。 二、编码器的使用(相对值编码器) 上图是一个编码器,转动上面的轴可以发出2个信号,每转动一定的角度,这2个输出都会闭合一定的次数,就像上面的光电感应器的接线一样,接线可以接到2个X点上面去。然后我们可以通过高速计数器来对它进行计数,从而知道它转动了多少距离。 它与前面那种一个点输入的感应器又不一样,编码器正转计数会增加,反转计数应该减少。 作用的话定位才能准确。这时我们需要用到下面另外一种高速计数器

基于PLC的高速计数器

高速计数器 概述 本例叙述SIMATIC S7-200的高速计数器(HSC)的一种组态功能。对来自传感性(如编码器) 信号的处理,高速计数器可采用多种不同的组态功能。 本例用脉冲输出(PLS)来为HSC产生高速计数信号,PLS可以产生脉冲串和脉宽调制信号, 例如用来控制伺服电机。既然利用脉冲输出,必须选用CPU 224DC/DC/DC。 下面这个例子,展示了用HSC和脉冲输出构成一个简单的反馈回路,怎样编制一个程序来实 现反馈功能。 例图 224 高速计数器输入

程序和注释 本例描述了S7-200 DC/DC/DC 的高速计数器(HSC)的功能。HSC 计数速度比PLC 扫描时间快得多,采用集成在CPU 224中的20K 硬件计数器进行计数。总的来说,每个高速计数器需要10个字节内存用来存控制位、当前值、设定值、状态位。 本程序长度为91个字。 // 主程序: // 在主程序中,首先将输出Q0.0置,0,因为这是脉冲输出功能的需要。再初始化高速计 // 数器HSC0,然后调用子程序0和1。 // HSC0起动后具有下列特性:可更新CV 和PV 值,正向计数。 // 当脉冲输出数达到SMD72中规定的个数后,程序就终止。 // 主程序 LD SM0.1 // 首次扫描标志(SM0.1=1)。 R Q0.0,1 // 脉冲输出Q0.0复位(Q0.0=0)。 MOVB 16#F8,SMB37 // 装载HSC0的控制位: // 激活HSC0,可更新CV ,可更新PV , // 可改变方向,正向计数。 // HSC 指令用这些控制位来组态HSC 。 MOVD 0,SMD38 // HSC0当前值(CV )为0。 MOVD 1000,SMD42 // HSC0的第一次设定值(PV )为1000。 HDEF 0,0 // HSC0定为模式0。 CALL 0 // 调用子程序0。 CALL 1 // 调用子程序1。 MEND // 主程序结束。 // * * * * * * * * * * * * * * * * * * * * // 子程序0: …………. INT1 INT0 INT2 …………. …………. 1000 1500 1000

三菱F系列PLC特殊功能寄存器M指令代码详细功能介绍

三菱F系列P L C特殊功能寄存器M指令代码 详细功能介绍 Document serial number【LGGKGB-LGG98YT-LGGT8CB-LGUT-

M8000:上电接通 M8001:上电断开 M8002:初始化脉冲(首次扫描接通) M8003:初始化脉冲(首次扫描断开) M8004:错误发生(FX3UC时M8060,M8061,M8064,M8065,M8066,M8067其中哪一个ON时动作;FX3UC以外M8060,M8061,M8063, M8064,M8065,M8066,M8067其中哪一个ON时动作) M8005:电池电压降低(电池电压异常降低时动作) M8006:电池电压降低锁存(电池电压异常降低时动作保持) M8007:瞬间停止检测(当M8007为ON的时间小于D8008,PLC将继续运行) M8008:停电检测(当M8008电源关闭时,M8000也关闭) M8009:DC24V故障 M8011:10ms时钟脉冲 M8012:100ms时钟脉冲 M8013:1s时钟脉冲 M8014:1min时钟脉冲 M8015:内存实时脉冲(计时停止以及预先装置) M8016:内存实时脉冲(显示停止,时刻读出显示的停止) M8017:内存实时脉冲(补正,±30s补正) M8018:内存实时脉冲(安装,安装检测) M8019:内存实时脉冲错误

M8020:零位标志,加减演算结果为0 M8021:借位标志,演算结果成为最大的负数值以下时 M8022:进位标志,进位发生在ADD(FNC20)指令期间或当数据移位操作的结果发生溢出时。 M8023:小数点演算标志,ON:进行浮点运算。 M8024:BMOV方向指定,转送方向替换,数据从终点到源的方向转送。 M8029:指令结束,DSW(FNC72)等等的动作结束时动作 M8030:电池LED消灯指令,当驱动M8030时,及时电池电压降低,PLC面板的LED也不会点亮。 M8031:非锁存内存全部清除 M8032:锁存内存全部清除 M8033:内存保持停止,ON时内存保持,当PLC从RUN→STOP,图像存储或者数据存储的内容保持原来状态。 M8034:所有输出禁止 M8035:强制RUN模式 M8036:强制RUN指令 M8037:强制STOP指令 M8038: ON时,通讯参数被设定;在FX2、FX2C里,作为RAM文件寄电器全部删除动作。M8074=1,M8038=1,D6000-D7999文件寄电器被删除。

西门子PLC高速计数器使用方法

高速计数器对CPU扫描速率无法控制的高速事件进行计数,最多可配置12种不同的操作模式。高速计数器的最高计数频率取决于您的CPU类型。 每台计数器对支持此类功能的时钟、方向控制、复原和起始均有专用输入。对于二相计数器,两个时钟均可以最高速率运行。在正交模式中,可选择1乘以(1x)或4乘以(4x)最高计数速率。所有计数器均以最高速率运行,互不干扰。 本标题讨论下列主题: 使用高速计数器 识别高速计数器的详细计时功能 为高速计数器连接输入线 高速计数器编址(HC) 识别不同的高速计数器 选择现用状态和1x/4x模式 高速计数器初始化顺序 控制字节 HSC模式 设置当前值和预设值 状态字节 为中断赋值 使用高速计数器 返回顶端 通常高速计数器被用作鼓式计数器驱动器,以恒速旋转的转轴配有增量轴式编码器。轴式编码器提供每次旋转的指定计数以及每次旋转一个复原脉冲。轴式编码器的时钟和复原脉冲为高速计数器提供输入。 用最先的几个预设值载入高速计数器,并在当前计数小于当前预设值的期间内激活所需输出。当前计数等于预设值或复原时,计数器设置提供中断。 每次发生当前计数值等于预设值中断事件时,载入新预设值,并设置下一个输出状态。发生复原中断事件时,设置第一个预设值和第一个输出状态,并重复该循环。 因为中断的发生速率远远低于高速计数器的计数速率,可对高速操作执行精确的控制,并对整体PLC扫描循环产生相对较小的影响。中断附加方法允许在独立中断例行程序中执行每个载入的新预设值,以便进行状态控制。(另一种方法是在单个中断例行程序中处理所有的中断事件。) 识别高速计数器的详细计时功能 返回顶端

下列时序图显示根据模式分类的每台计数器的功能。在另一个时序图中显示复原和起始输入操作,并应用于所有使用复原和起始输入的模式。在复原和起始输入图中,复原和起始的现用状态均被编程为高级。 有复原、无起始的操作举例 有复原和起始的操作举例 模式0、1和2操作举例 模式3、4和5操作举例 使用计数模式6、7和8时,上下时钟输入的上升沿间隔0.3微秒,高速计数器可能认为这些事件同时发生。如果发生这种情况,当前值不改变,而且计数方向不改变。只要上下时钟输入的上升沿之间的间隔大于该时段,高速计数器就能够单独捕获每个事件。在两种情况下,均不生成错误,而且计数器保持当前计数值。 模式6、7和8操作举例 模式9、10和11操作举例(正交1x 模式) 模式9、10和11操作举例(正交4x 模式) 为高速计数器连接输入线 返回顶端 使用"高速计数器定义"指令定义计数器模式和输入。 下表显示与高速计数器相关的用于时钟、方向控制、复原和起始功能的输入。 高速计数器专用输入 高速计数器使用的输入 HSC0 I0.0, I0.1, 0.2 HSC1 I0.6, I0.7, I1.0, I1.1 HSC2 I1.2, I1.3, I1.4, I1.5 HSC3 I0.1 HSC4 I0.3, I0.4, I0.5 HSC5 I0.4 有些高速计数器和边缘中断的输入点赋值存在某些重叠。同一个输入不能用于两种不同的功能;但是高速计数器当前模式未使用的任何输入均可用于其他目的。例如,如果在模式2中使用HSC0,模式2使用I0.0和I0.2,则I0.1可用于边缘中断或用于HSC3。

三菱plc高速计数器和编码器应用

三菱plc高速计数器和编码器应用 编码器的作用相信大家会经常听到,但是,到底怎么用,相信很多人是一知半解,那么,今天陈老师就给大家分享一下具体的使用方法。使用编码器之前,我们需要先学习高速计数器的概念。 一、什么时高速计数器 假如我们的plc的X0点接入了一个按钮,在plc里面写入以下的程序,我们按住按钮1次,那么计数器就会记1,按2次就记2,… …我们按1000次了,计数器c0的常开触点就会闭合,这很好理解。 假如我1秒按一次,那么,人为去按,那么按个1000次就能导通。 重点来了,如果说我不接按钮,我接了个光电感应器或者编码器去感应,由机器去触发,机器运行的速度非常快,可能1秒按了几百次,甚至几百几千次,我们的X0的常开触点就感应不了了,那么怎么办,我们可以用高速计数器。 如下表,是我们的单相的高速计数器 假如我把光电感应器接到,X0,那么C235,就是它的专用的计数器,X0每感应到的每一个信号都会用C235进行计数,我们用以下程序就能把X0感应到的脉冲数存放到D235里面。(同理,C236记录的是X1的脉冲数;C237记录的是X2的脉冲数… …)

当然计数器的计数频率是有个极限的,普通的FX系列的X点,接受的速度是50KHz,就是1秒钟能接收导通50 000次。 接下来,看看编码器是怎么使用的。 二、编码器的使用(相对值编码器) 右图是一个编码器,转动上面的轴可以发出2个信号,每转动一定的角度,这2个输出都会闭合一定的次数,就像上面的光电感应器的接线一样,接线可以接到2个X点上面去。然后我们可以 通过高速计数器来对它进行计数,从而知道它转动了多少距离。它与前面那种 一个点输入的感应器又不一样,编码器正转计数会增加,反转计数应该减少。 作用的话定位才能准确。这时我们需要用到下面另外一种高速计数器 如下图: 我们可以选用C251到C255这几个计数器,假如我的编码器接的是X0和X1(接线后面再讲),那么选用的就是C251,我们来写一段程序看看: 这样,我们就把编码器记录的位置记录在D0、D1两个寄存器里面了。 最后我们来看看接线。 三、编码器的接线 如下图,我们选择一款编码器进行接线,先来看看原理

PLC高速计数器功能应用在定位控制上的案例

PLC高速计数器功能应用在定位控制上的案例 一、概述 切纸机械是印刷和包装行业最常用的设备之一。切纸机完成的最基本动作是把待裁切的材料送到指定位置,然后进行裁切。其控制的核心是一个单轴定位控制。我公司引进欧洲一家公司的两台切纸设备,其推进定位系统的实现是利用单片机控制的。控制过程是这样的,当接收编码器的脉冲信号达到设定值后,单片机系统输出信号,断开进给电机的接触器,同时电磁离合制动器的离合分离,刹车起作用以消除推进系统的惯性,从而实现精确定位。由于设备的单片机控制系统老化,造成定位不准,切纸动作紊乱,不能正常生产。但此控制系统是早期产品,没有合适配件可替换,只能采取改造这一途径。目前国进行切纸设备进给定位系统改造主要有两种方式,一是利用单片机结合变频器实现,一是利用单片机结合伺服系统实现,不过此两种改造方案成本都在两万元以上。并且单片机系统是由专业开发公司设计,技术保守,一旦出现故障只能交还原公司维修或更换,维修周期长且成本高,不利于改造后设备的维护和使用。我们结合自己设备的特点提出了新的改造方案,就是用PLC的高速计数器功能结合变频器的多段速功能实现定位控制,并利用HMI(人机界面HumanMachineInterface)进行裁切参数设定和完成一些手动动作。 二、改造的可行性分析 现在的大多PLC都具有高速计数器功能,不需增加特殊功能单元就可以处理频率高达几十或上百KHz的脉冲信号,而切纸机对进给系统的精度和响应速度要求不是很高。可以通过对切纸机进给系统相关参数的计算,合理的选用编码器,让脉冲频率即能在PLC处理的围又可以满足进给的精度要求。在进给过程中,让PLC对所接收的脉冲数与设定数值进行比较,根据比较结果驱动相应的输出点对变频器进行输出频率的控制,实现接近设定值时进给速度变慢,从而减小系统惯性,达到精确定位的目的。另外当今变频器技术取得了长足的发展,使电机在低速时的转矩大幅度提升,从而也保证了进给定位时低速推进的可行性。 三、主要控制部件的选取 1、PLC的选取 设备需要的输入输出信号如下: x0脉冲输入 x1脉冲输入 x2前限位 x3后限位y3前进! x4前减速位y4后退 x5电机运转信号y5高速 x6刀上位y6中速 x7滑刀保护y7低速 x10压纸器上位y10 x11光电保护y11 x12小车后位y12进给离合 x13双手下刀按钮y13压板下 x14停止按钮y14刀离合 x15连杆保护y15电机禁启动 x16刀回复到位 针对这些必需的输入点数,选用了FX1s-30MR的PLC,因为选用了人机界面,其它一些手动动作,如前进、后退、换刀等都通过人机界面实现,不需占用PLC输入点,从而为选用低价位的FX1s系列PLC成为可能,因为FX1s系列PLC输入点最多只有16点。另外此系列PLC

s7-200高速计数器详细解说

s7-200高速计数器详细解说 1.高速计数器指令 普通计数器受CPU扫描速度的影响,是按照顺序扫描的方式进行工作。在没个扫描周期中,对计数脉冲只能进行一次累加;对于脉冲信号的频率比PLC的扫描频率高时,如果仍采用普通计数器进行累加,必然会丢失很对输入脉冲信号。在PLC中,对比扫描频率高的输入信号的计数可也使用高速计数器指令来实现。 在S7-200的CPU22X中,高速计数器数量及其地址编号表如下 CPU类型CPU221 CPU222 CPU224 CPU226 高速计数器数量 4 6 高速计数器编号HC0,HC3~HC5 HC0~HC5 1.高速计数器指令 高速计数器的指令包括:定义高速计数器指令HDEF 和执行高速计数指令HSC,如表HDEF HSC (1)定义高速计数器指令HDEF HDE指令功能是为某个要使用的高速计数器选定一种工作模式。每个高速计数器在使用前,都要用HDEF指令来定义工作模式,并且只能用一次。它有两个输入端:HSC为要使用的高速计数器编号,数据类型为字节型,数据范围为0~5的常数,分别对应HC0~ HC5;MOCE为高速计数的工作模式,数据类型为字节型,数据范围为0~11的常数,分别对应12种工作模式。当准许输入使能EN有效时,为指定的高速计数器HSC定义工作模式MODE。 (2)执行高速计数指令HSC HSC指令功能功能是根据与高速计数器相关的特殊继电器确定在控制方式和工作状态,使高速计数器的设置生效,按照指令的工作模式的工作模式执行计数操作。它有一个数据输入端N:N为高速计数器的编号,数据类型的字型,数据范围为0~5的常数,分别对应高速计数器HC0~HC5.当准许输入EN使能有效时,启动N号高速计数器工作。 2.高速计数器的输入端 高速计数器的输入端不像普通输入端那样有用户定义,而是由系统指定的输入点输入信号,每个高速计数器对它所支持的脉冲输入端,方向控制,复位和启动都有专用的输入点,通过比较或中断完成预定的操作。每个高速计数器专用的输入点如表 高速计数器的输入点

巧用中断—PLC扩展AB相高速计数器方法

巧用中断——PLC扩展AB相高速计数的方法 杨敬东 (广东佛山菜鸟控制实验室) 摘要:本文介绍了利用可变程序控制器PLC的中断机制,扩展PLC中的AB两相高速计数器的方法。 一、引言:PLC可编程序控制器,是一种工业上广泛应用的通用控制器,但是在应用实践中,不少情况是应用的要求,略为超出了PLC的资源,通常是IO端口的不匹配,最遗憾的是,有时只差1、2个端口,就要选购大一级点数规格的PLC,所以很多学者研究了不增加成本的情况下扩展IO端口的方法。但AB两相高速计数器不够用而扩展的,恐怕大多数人认为,只能购买昂贵的高速计数器特殊模块了。但如果满足特定条件时,也可以用PLC基本单元作少量增加,以下以三菱FX系列PLC基本单元为例扩展1路AB相高速计数器。 二、问题背景:某机械设备设计制造公司要设计制造一种液压机械,机器需要用到3把AB相光栅尺,其中1把连接到液压缸驱动的进给机构,以作为定位之用,运动速度高;另外2把连接到一个平面上的X轴、Y轴两个方向的调节机构,该2个调节机构进给速度相对前者稍慢。公司计划采用三菱FX1N系列PLC基本单元作为控制器,由于三菱FX1N系列PLC基本单元最多只能同时接入2个AB相高速计数器,于是将其分配接入2把AB相光栅尺,完成X轴、Y轴调节机构的功能,另购置1个高速计数器特殊功能模块,完成进给机构高速定位功能。但是,PLC特殊功能模块的价格是比较昂贵的,如果机器

的生产数量是比较多的话,就削弱了产品的竞争力。 三、FX1N系列PLC内部高速计数器和外部中断简介: 内部21点高速计数器C235—C255共用PLC特定的8个输入端X0—X7,某一高速计数器输入端都有其对应的输入端口,不同类型的高速计数器可以同时使用,但是它们的输入端不能冲突。其中AB相高速计数器与端口的对应关系如表—1: 因此,最多只能同时使用2个AB相高速计数器。 FX1N系列PLC有6个外部中断输入端X0—X5,分别对应中断指针I□0□,同一输入中断源只能使用上升沿触发或下降沿触发,不能同时是上升沿和下降沿触发。用于中断的输入点不能与已经用于高速计数器的输入点冲突。 四、问题的解决:回到问题的背景,如何可以在不改变硬件和增

PLC内置高速计数器使用方法

PLC内置高速计数器使用方法 https://www.360docs.net/doc/928645810.html, 2008-11-25 2:25:18 来源:528工控网浏览次数:807 FXPLC通过RS板与VB通讯源码VB与欧姆龙PLC通讯源码 VB与三菱FX系列PLC编程口通信源码VB与三菱变频器485通讯源码 VB与松下PLC(FP系列)通讯源码VB与西门子S7-200PLC(PPI协议)通讯源码 VB与永宏PLC(fatek)通讯源码台达PLC编程口VB通讯源码(MODBUS) PLC内置高速计数器根据特定的输入执行中断处理高速动作,它与PLC的扫描无关。本文以三菱FX系列PLC为例说说高速计数器的使用方法。 不会使用高速计数器的很大原因是对上面的图理解不细,编程手册上已经讲得很清楚,本文只是大致说说,给您抛砖引玉。 如C235下面的U/D对应的是X0,也就表示C235是对输入X0的脉冲信号进行计数,当X0有OFF-->ON的变化时,C235在驱动的情况下自动计数。 同理:C241,C244,C246,C247,C249,C251,C252,C254都是针对X0进行计数的。 明白了C235的计数目标,从上图就不难看出C236,C237的计数目标 知道了高速计数器的计数目标,还需要知道高速计数器的计数方向。从上图可看出M8235是控制高速计数器C235的计数方向的,M8235=OFF时是增计数,M8235=ON时是减计数。 同理:M8236---M8245分别是控制高速计数器C236---C245的计数方向。 M8235--M8245初始是断开状态,所以C235等高速计数器默认是增计数。 本文不多说了,因为水平太差,怕说多了误导您,您认真看一下编程手册吧。下面看一个特简单的高速计数器计数方式。 上图中 1、当M0闭合时,C235得电计数X0动作了217次,其设定值为100,所以C235的常开点闭合.从上图可以看出:C235的计数值超过其设定值后照样计数下去。 2、在C235计数过程中M0断开,C235失电停止计数,但其计数值与触点状态不变。 注:C235的驱动点断开并不能起到复位的作用! 3、当M2闭合时,C235的计数值清零,其触点状态也断开。 上图中的高速计数器的编程并不合理,因为C235触点的状态改变受到程序扫描周期的影响。

PLC高速计数器测量电机转速的标准程序

PLC高速计数器测量电机转速的标准程序

通过与电动机同轴齿轮齿条变化来测量电动机转速,电动机输出轴与齿轮的传动比=1,齿条数=12,要求测量单位:转/分钟。 主程序: 子程序0 主程序MAIN 程序初始化,PLC上电运行的第一个扫描周期执行一次初始化子程序SBR_0。用于程序运行 的初始设置 子程序SBR_0

VD0置0 设置高速计数器HC0的控制字节SMB37,用十六进制表示(16#F8),也可以用二进制表 示(2#11111000)。 设置高速计数器HC0工作模式为0,单相计数 输入,没有外部控制功能。

设置高速计数器HC0初始值寄存器SMD38为Array 0。 执行HSC指令,将控制字节SMB37、初始值/预置值寄存器(SMD38/SMD42)以及工作模式写入高速计数器HC0。 设定定时中断事件的时间为50ms 定时中断事件号10和中断处理程序INT_0建 立关联。 允许中断,将定时中断事件和中断处理程序连 接

中断程序0 中断处理程序INT_0 中断处理程序每隔50ms扫描刷新一次。 采用整数加法指令,将高速计数器HC0的计数当前值(32位)和累加数据相加一次。用 于数据的累加。 采用整数递增指令,记录累加次数。 执行HSC指令,在这里执行的目的,是将初始值寄存器SMD38(0)再次写入高速计数器HC0,使计数当前值为0,以便下个定时采样。 当累加数据次数等于32次,子程序中网络2 中程序执行。 采用除法指令,计算32次的累加数据平均值。 将平均值转换成测量单位:转/分,转换后的 数据送入双字VD4。 将平均值转换成字数据,送入字VW10中。VW10中的数据就是电机速度值。之所以转换,是因为在程序中一般要求以字的概念存 在。 将记录累加数据次数的字节VB6中数据置0。 用于下一次开始时,从新开始累加。 将用于累叫数据的中间变量VD4置0。

三菱Q PLC智能-高速计数

1、在MELSEC-Q系列可编程控制器基板上安装、使用的各种模块中,除CPU、电源、数字式I/O模块外的其它模块,叫做“智能功能模块”。 例如,用于模拟信号的输入/输出控制、与各种网络连接设备之间的通信控制以及定位控制的模块等都是智能功能模块。 智能功能模块在处理输入输出的位信号的同时,还处理字信息。 ﹡MELSEC-Q可编程控制器针对各种控制要素,备有多种智能功能模块。 ﹡智能功能模块相当于MELSEC-A系列的“特殊功能模块”。 Q系列可编程控制器的智能功能模块,根据其控制要素以及功能可分为以下几种。 2、以下所示为Q系列可编程控制器的各种智能功能模块及其概要。 ﹡本课程学习其中的“D/A转换模块”和“高速计数器模块”。

3、 模拟量模块以电压、电流、温度等为控制对象,对这些模拟信号进行处理。以下所示为D/A转换模块的构成图。

D/A转换模块用于将顺控程序中设定的数字量转换为模拟量(电压或电流)、并输出至外部设备。 3、高速计数器模块用于调用在外部机械设备上检测到的脉冲信号,并对脉冲的个数进行计数。计数值将被调用至CPU,用于进行速度、位置的计算以及机械的控制等。 4、输入输出信号 用于控制智能功能模块的ON/OFF信号(位信号)中,可编程控制器CPU的输入信号用“X”表示,可编程控制器CPU的输出信号用“Y”表示。 各个智能功能模块能够使用的输入输出点数(输入输出占有点数)固定不变,输入输出占有点数为16点时,信号被分配至输入16点、输出16点。 X信号的作用是,通过ON/OFF信号将智能功能模块的状态报告给CPU模块。 X信号的应用示例(高速计数器模块) ·模块READY信号 ·计数器值一致信号 ·保险丝熔断检测标记

相关文档
最新文档