plc可编程控制器工作原理

全部回答3
默认 最新
  • PLC主要是指数字运算操作电子系统的可编程逻辑控制器,用于控制机械的生产过程。也是公共有限公司、电源线车等的名称缩写。PLC的工作原理 一. 扫描技术 当PLC投入运行后,其工作过程一般分为三个阶段,即输入采样、用户程序执行和输出刷新三个阶段。完成上述三个阶段称作一个扫描周期。在整个运行期间,PLC的CPU以一定的扫描速度重复执行上述三个阶段。 (一) 输入采样阶段 在输入采样阶段,PLC以扫描方式依次地读入所有输入状态和数据,并将它们存入I/O映象区中的相应得单元内。输入采样结束后,转入用户程序执行和输出刷新阶段。在这两个阶段中,即使输入状态和数据发生变化,I/O映象区中的相应单元的状态和数据也不会改变。因此,如果输入是脉冲信号,则该脉冲信号的宽度必须大于一个扫描周期,才能保证在任何情况下,该输入均能被读入。 (二) 用户程序执行阶段 在用户程序执行阶段,PLC总是按由上而下的顺序依次地扫描用户程序(梯形图)。在扫描每一条梯形图时,又总是先扫描梯形图左边的由各触点构成的控制线路,并按先左后右、先上后下的顺序对由触点构成的控制线路进行逻辑运算,然后根据逻辑运算的结果,刷新该逻辑线圈在系统RAM存储区中对应位的状态;或者刷新该输出线圈在I/O映象区中对应位的状态;或者确定是否要执行该梯形图所规定的特殊功能指令。 即,在用户程序执行过程中,只有输入点在I/O映象区内的状态和数据不会发生变化,而其他输出点和软设备在I/O映象区或系统RAM存储区内的状态和数据都有可能发生变化,而且排在上面的梯形图,其程序执行结果会对排在下面的凡是用到这些线圈或数据的梯形图起作用;相反,排在下面的梯形图,其被刷新的逻辑线圈的状态或数据只能到下一个扫描周期才能对排在其上面的程序起作用。 在程序执行的过程中如果使用立即I/O指令则可以直接存取I/O点。即使用I/O指令的话,输入过程影像寄存器的值不会被更新,程序直接从I/O模块取值,输出过程影像寄存器会被立即更新,这跟立即输入有些区别。 (三) 输出刷新阶段 当扫描用户程序结束后,PLC就进入输出刷新阶段。在此期间,CPU按照I/O映象区内对应的状态和数据刷新所有的输出锁存电路,再经输出电路驱动相应的外设。这时,才是PLC的真正输还有什么不明白的吗?可以参考:http://baike.baidu.com/view/13561.htm
    0 点赞
  • plc(可编程序控制器)在工业现场因其编程方便,抗干扰能力强,获得了广泛的应用。但受到内部硬件电路的限制,在运算速度、数据处理能力等方面和pc机相比,要逊色很多。因此在工业现场对复杂模型进行控制时,可以借助上位机pc来建立生产模型,通过构建scc监督式控制系统,让下位机pc为一dcc直接数字控制系统,实现复杂系统的控制。另外,还可通过上位机pc和下位机pc组建监控系统,达到对工业现场实时监控的目的。其中关键技术为pc机和pc之间的通讯。本文首先介绍pc机与plc的通讯种类和机制,然后就采用高级语言vb和组态软件mcgs,对完成以上二者通讯pc机和plc有两种通讯方式,一种是pc机作主动者,即主局,plc为从动者,即子局。另一种是plc为主局,而pc机为子局。无论工作在哪种方式,数据一般都采用串行方式来传输,即可通过rs232、re422或rs485电缆线来进行信息传递。在进行通讯时,首先将pc机和plc传递信息的波特率设置一致。另外还要对奇偶校验位、传输数据位数和停止位进行设置。在pc机和plc进行通讯时,要使用命令帧和响应帧的形式来进行信息传递。每次通信送出的一组数据称作“帧”。帧可以从持有发送权的一方传出。每送出一帧,上位机或plc就将发送权交给另一方。当接收方收到终端(命令或响应的终字符)或分界符(分割帧的字符)信息后,就将发送权转到另一方。在上位链接通信中,开始由上位pc机持有发送权并开始通信。响应由plc自动返回。如图2所示:(3)命令/响应格式用上位链接通信发送接收的命令/响应格式如下所示:(1)命令格式从上位机pc发送命令时,程序中编写下列格式的命令数据并开始发送。(2)相应格式对应命令plc的相应返回如下的格式。编写返回相应数据。三、通讯的具体实现实现上位机pc和下位机plc通讯一般可采用两种方法:可以通过windows或高级语言编程,实现二者通讯;还可借助现在普遍使用的工业控制组态软件。使用前者,编程比较繁琐,需要了解具体的通讯机制,另外还要掌握某种高级语言,并对所编程序花费一定调试时间,但是软件的成本得到降低。使用后者则可以迅速掌握简化的编程语言,在较短的时间内编制出控制功能复杂的程序,而且调试时间也相对较短,但是需花费很高的价格购买正版软件。下面分别就以上两种实现方式进行简要介绍和比较。(1)通过高级语言的程序编制这种通讯编程又可大致分为两种,一种是基于windows语言编程,它可调用windows的api函数,直接对串口进行操作,但是需要掌握windows语言,比较繁琐,上手较慢。另一种就是基于高级语言,例如visualbasic或visualc++等。在visualbasic中提供了一个串行通讯控件microsoftcommcontrol,简称mscomm控件。编程者只需要设置和监视mscomm空间的属性和事件,然后按照相应的通讯规约就可以实现串行通讯。下面就笔者利用vb中的mscomm控件完成pc机和plc的通讯程序编制,简要进行一下介绍。1.首先在vb环境中加入控件mscomm,然后把它放在窗口中,就可以对其一些参数进行设置,比方说通讯的波特率、奇偶校验位、数据位和停止位。初始化程序如下:2.pc机发送数据给plc3.pc机接受plc传来数据4.pc机和plc之间传递数据时,采用fcs校验码,来保证传递信息的正确性。算法可见参考文献,具体程序在此省略。
    0 点赞
  • PLC主要是指数字运算操作电子系统的可编程逻辑控制器,用于控制机械的生产过程。也是公共有限公司、电源线车等的名称缩写。PLC的工作原理 一. 扫描技术 当PLC投入运行后,其工作过程一般分为三个阶段,即输入采样、用户程序执行和输出刷新三个阶段。完成上述三个阶段称作一个扫描周期。在整个运行期间,PLC的CPU以一定的扫描速度重复执行上述三个阶段。 (一) 输入采样阶段 在输入采样阶段,PLC以扫描方式依次地读入所有输入状态和数据,并将它们存入I/O映象区中的相应得单元内。输入采样结束后,转入用户程序执行和输出刷新阶段。在这两个阶段中,即使输入状态和数据发生变化,I/O映象区中的相应单元的状态和数据也不会改变。因此,如果输入是脉冲信号,则该脉冲信号的宽度必须大于一个扫描周期,才能保证在任何情况下,该输入均能被读入。 (二) 用户程序执行阶段 在用户程序执行阶段,PLC总是按由上而下的顺序依次地扫描用户程序(梯形图)。在扫描每一条梯形图时,又总是先扫描梯形图左边的由各触点构成的控制线路,并按先左后右、先上后下的顺序对由触点构成的控制线路进行逻辑运算,然后根据逻辑运算的结果,刷新该逻辑线圈在系统RAM存储区中对应位的状态;或者刷新该输出线圈在I/O映象区中对应位的状态;或者确定是否要执行该梯形图所规定的特殊功能指令。 即,在用户程序执行过程中,只有输入点在I/O映象区内的状态和数据不会发生变化,而其他输出点和软设备在I/O映象区或系统RAM存储区内的状态和数据都有可能发生变化,而且排在上面的梯形图,其程序执行结果会对排在下面的凡是用到这些线圈或数据的梯形图起作用;相反,排在下面的梯形图,其被刷新的逻辑线圈的状态或数据只能到下一个扫描周期才能对排在其上面的程序起作用。 在程序执行的过程中如果使用立即I/O指令则可以直接存取I/O点。即使用I/O指令的话,输入过程影像寄存器的值不会被更新,程序直接从I/O模块取值,输出过程影像寄存器会被立即更新,这跟立即输入有些区别。 (三) 输出刷新阶段 当扫描用户程序结束后,PLC就进入输出刷新阶段。在此期间,CPU按照I/O映象区内对应的状态和数据刷新所有的输出锁存电路,再经输出电路驱动相应的外设。这时,才是PLC的真正输还有什么不明白的吗?可以参考:http://baike.baidu.com/view/13561.htm也可以问我,我今年刚学的这门课,很有用,个人觉得。
    0 点赞

没有更多内容了

返回顶部
产品求购 求购