新闻资讯
PLC程序设计中传送和比较指令的作用

这些数据可以从输入端口上连接的外部器件获得,需要使用传送指令读取这些器件上的数据并送到内部单元;初始数据也可以用程序设置,即向内部单元传送立即数;另外,某些运算数据存储在机内的某个地方,等程序开始运行时通过初始化程序送到工作单元。


(1) 机内数据的存取管理

在数据运算过程中,机内的数据传送是不可缺少的。运算可能要涉及不同的工作单元,数据需在他们之间传送;运算可能会产生一些中间数据,这需要传送到适当的地方暂时存放;有时机内的数据需要备份保存,这要找地方把这些数据存储妥当。总之,对一个涉及数据运算的程序,数据管理是很重要的。此外,二进制和 BCD 码的转换在数据管理中也是很重要的。


(2) 运算处理结果向输出端口传送

运算处理结果总是要通过输出实现对执行器件的控制,或者输出数据用于显示,或者作为其他设备的工作数据。对于输出口连接的离散执行器件,可成组处理后看作是整体的数据单元,按各口的目标状态送入一定的数据,可实现对这些器件的控制。


(3) 比较指令用于建立控制点

控制现场常有将某个物理量的量值或变化区间作为控制点的情况。如温度低于多少度就打开电热器,速度高于或低于一个区间就报警等。作为一个控制“阀门”,比较指令常出现在工业控制程序中。


2022-09-07
基于多线程技术的PLC与PC的通讯方式

在现代工业控制系统中,PLC以其高可靠性、适应工业过程现场、强大的联网功能等特点,被广泛应用。可实现顺序控制、PID回路调节、高速数据采集分析、计算机上位管理,是实现机电一体化的重要手段和发展方向。


但PLC无法单独构成完整的控制系统,无法进行复杂的运算和显示各种实时控制图表和曲线,无良好的用户界面,不便于监控。将个人计算机(PC)与PLC结合起来使用,可以使二者优势互补,充分利用个人计算机强大的人机接口功能、丰富的应用软件和低廉的价格优势,组成高性能价格比的控制系统。


1.系统构成

推进系统中,PC机选用工控计算机。它是整个控制系统的核心,是上位机。其主要利用良好的图形用户界面,显示从PLC接收的开关量和控制手柄的位置,进行一些较复杂的数据运算,并且向PLC发出控制指令。


PLC是该系统的下位机,负责现场高速数据采集(控制手柄的位置),实现逻辑、定时、计数、PID调节等功能,通过串行通讯口向PC机传送PLC工作状态及有关数据,同时从PC机接受指令,向蜂鸣器、指示灯、滑油泵、控制手柄的位置等发出命令,实现PC机对控制系统的管理,提高了PLC的控制能力和控制范围,使整个系统成为集散控制系统。


2.通讯协议

计算机与PLC之间的通信是建立在以RS232标准为基础的异步双向通信上的,FX系列PLC有其特定的通信格式,整个通信系统采用上位机主动的通信方式,PLC内部不需要编写专门的通信程序,只要把数据存放在相应的数据寄存器中即可,每个数据寄存器都有相应的物理通信地址,通信时计算机直接对物理通信地址进行操作。通信过程中,传输字符和命令字以ASCⅡ码为准,常用的字符及其ASCⅡ码对应关系。


计算机与PLC进行通讯时,计算机与PLC之间是以帧为单位进行信息交换的,其中控制字符ENQ、ACK、NAK,可以构成单字符帧发送和接受,其余的信息帧发送和接受时都是由字符STX、命令字、数据、字符ETX以及和校验5部分组成。


校验和在信息帧的尾部用来判断传输的正确与否,和校验码的计算方法是将命令码到ETX之间的所有字符的ASCⅡ码(十六进制数)相加,取所得和的最低2位数,在后面的通信程序设计里面还会提到。进行差错检验的方法很多,常用的有奇偶校验码,水平垂直冗余校验LRC,目前广泛使用的是CRC校验码,它能查处99%以上18位或更长的突出错误,而在计算机与PLC点对点的短距离通讯时,出错的几率较小,因而采用校验和法,基本能满足要求。


3.多线程技术及在VC++串口通信程序中的实现

在Windows的一个进程内,包含一个或多个线程,每个线程共享所有的进程资源,包括打开的文件、信号标识及动态分配的内存等等。

一个进程内的所有线程使用同一个32位地址空间,而这些线程的执行由系统调度程序控制,调度程序决定哪个线程可执行和什么时候执行线程。线程有优先级别,优先权较低的线程必须等到优先权较高的线程执行完任务后再执行。在多处理器的机器上,调度程序可以把多个线程放到不同的处理器上运行,这样可以使处理器的任务平衡,也提高系统的运行效率。


Windows内部的抢先调度程序在活动的线程之间分配CPU时间,Windows区分两种不同类型的线程,一种是用户界面线程(UserInterfaceThread),它包含消息循环或消息泵,用于处理接收到的消息;另一种是工作线程(WorkThread)它没有消息循环,用于执行后台任务、监视串口事件的线程即为工作线程。


本系统采用MFC编程方法,MFC是把串口作为文件设备来处理的,它用CreateFile()打开串口,并获得一个串口句柄,用SetCommState()进行端口配置,包括缓冲区设置,超时设置和数据格式等。

然后调用函数ReadFile()和WriteFile()进行数据的读写,用WaitForSingleObject()监视通信事件。在用ReadFile()和WriteFile()读写串口时,一般采用重叠方式。因为同步I/O方式是当程序执行完毕才返回,这样会阻塞其他线程,降低程序执行效率。而重叠方式能使调用的函数立即返回,I/O操作在后台进行,这样线程就可以处理其他事务,同时也实现了线程在同一串口句柄上实现读写操作。


使用重叠I/O方式时,线程要创建OVERLAPPED结构供读写函数使用,该结构最重要的成员是hEvent事件句柄。它将作为线程的同步对象使用,读写函数完成时hEvent处于有信号状态,表示可进行读写操作;读写函数未完成时,hEvent被置为无信号。


利用Windows的多线程技术,在辅助线程中监视串口,有数据到达时依靠事件驱动,读入数据并向主线程报告;并且,依靠重叠读写操作,让串口读写操作在后台运行。


4.上位计算机通信程序设计

以读取PLC输出线圈Y0为首的2个字节的数据为例,编写一个通信程序。查PLC软元件地址表可知,输出线圈Y0的首地址为00A0H,2个字节的数据即为Y0-Y7和Y10-Y17,根据返回的数据,就可以知道PLC此时的状态,以实现对PLC的监控。在每一次读操作之前,先要进行握手联络。对PLC发请求讯号ENQ,然后读PLC的响应讯号。如果读到的响应讯号为ACK,则表示PLC已准备就绪,等待接收通讯数据。

2022-09-06
PLC的机型选择基本原则

1.合理的结构型式

整体式PLC的每一个I/O点的平均价格比模块式的便宜,且体积相对较小,所以一般用于系统工艺过程较为固定的小型控制系统中;而模块式PLC的功能扩展灵活方便,I/O点数量、输入点数与输出点数的比例、I/O模块的种类等方面,选择余地较大。维修时只要更换模块,判断故障的范围也很方便。因此,模块式PLC一般适用于较复杂系统和环境差(维修量大)的场合。

2.安装方式的选择

根据PLC的安装方式,系统分为集中式、远程I/O式和多台PLC联网的分布式。集中式不需要设置驱动远程I/O硬件,系统反应快、成本低。大型系统经常采用远程I/O式,因为它们的装置分布范围很广,远程I/O可以分散安装在I/O装置附近,I/O连线比集中式的短,但需要增设驱动器和远程I/O电源。多台联网的分布式适用于多台设备分别独立控制,又要相互联系的场合,可以选用小型PLC,但必须要附加通信模块。

3.相当的功能要求

一般小型(低档)PLC具有逻辑运算、定时、计数等功能,对于只需要开关量控制的设备都可满足。对于以开关量控制为主,带少量模拟量控制的系统,可选用能带A/D和D/A单元。具有加减算术运算。数据传送功能的增强型低档PLC。


对于控制较复杂,要求实现PID运算、闭环控制、通信联网等功能,可视控制规模大小及复杂程度,选用中档或高档PLC。但是中、高档PLC价格较贵,一般大型机主要用于大规模过程控制和集散控制系统等场合。

4.响应速度的要求

PLC的扫描工作方式引起的延迟可达2-3个扫描周期。对于大多数应用场合来说,PLC的响应速度都可以满足要求,不是主要问题。然而对于某些个别场合,则要求考虑PLC的响应速度。为了减少PLC的I/O响应的延迟时间,可以选用扫描速度高的PLC,或选用具有高速I/O处理功能指令的PLC,或选用具有快速响应模块和中断输入模块的PLC等。

5.系统可靠性的要求

对于一般系统PLC的可靠性均能满足。对可靠性要求很高的系统,应考虑是否采用冗余控制系统或热备用系统。

6.机型统一

一个企业,应尽量做到PLC的机型统一。主要考虑以下三个方面的问题:

(l)同一机型的PLC,其编程方法相同,有利于技术力量的培训和技术水平的提高。

(2)同一机型的PLC,其模块可互为备用,便于备品备件的采购和管理。

(3)同一机型的PLC,其外围设备通用,资源可共享,易于联网通信,配上位计算机后易于形成一个多级分布式控制系统。


2022-09-05
可编程自动化控制器(PAC)与PLC的区别和联系

可编程自动化控制器(PAC)作为新一代的工业控制器,代表着可编程自动化控制发展的未来。在可以预见的几年内,对标准性、开放性、可互操作性、可移植性的要求将是用户至为关心的自动化产品的重要特征,作为融汇了PC和PLC优点的PAC系统必将逐步取代PLC系统成为控制系统的主流产品,在工业自动化控制中的应用将会越来越广泛。


PLC的性能倚赖于专用的硬件,PLC的应用程序是依靠专用的硬件芯片来实现的,对于PLC的功能的改进,如增加运动控制、过程控制或通讯功能,都需要使用不同的硬件。即使对于同一PLC厂家,这种专用的硬件很难移植到不同性能的PLC中。


而且传统的PLC厂家的硬件结构体系都是专有的设计,甚至于处理器芯片都是专用的,这样就导致了随着PLC功能需求的不断提高,PLC的硬件体系变得越来越复杂。而且,由于硬件的非通用性会导致系统的功能前景和开放性受到很大的限制。


另外,PLC 的操作系统通常都是各PLC厂家的专用操作系统,与目前流行的实时操作系统不兼容。由于是专用的操作系统,其实时可靠性与功能都无法与通用的实时操作系统相比,这就导致了PLC的整体性能的专用性和封闭性。


PAC的轻便控制引擎是非常杰出的。PAC设计了一个通用的、软件形式的控制引擎用于应用程序的执行,控制引擎在实时操作系统与应用程序之间,这个控制引擎与硬件平台无关,可以在不同平台的PAC系统间移植。


因此对于用户来说,同样的应用程序不需根据系统的功能需求和投资预算选择不同性能的PAC平台。这样,根据用户需要的迅速扩展和变化,用户的系统和程序无需变化,即可无缝移植。PAC的操作系统采用通用的实时操作系统,如GE Fanuc的PACSystems系列产品即采用通用的、成熟的WindRiver公司的VxWorks实时操作系统,其可靠性已经得到全球大量的应用的证实。


PAC系统的硬件结构采用标准的,通用的嵌入式系统结构设计,这样其处理器可以使用最新的高性能CPU,如GE Fanuc的PACSystems 系列产品的CPU 即采用了Pentium300/700MHz 处理器,而且即将推出PentiumM 处理器的CPU。


2022-09-02
变频器与PLC连接方式

利用PLC的模拟量输出模块控制变频器PLC的模拟量输出模块输出0~5V电压信号或4~20mA电流信号,作为变频器的模拟量输入信号,控制变频器的输出频率。


这种控制方式接线简单,但需要选择与变频器输入阻抗匹配的PLC输出模块,且PLC的模拟量输出模块价格较为昂贵,此外还需采取分压措施使变频器适应PLC的电压信号范围,在连接时注意将布线分开,保证主电路一侧的噪声不传至控制电路。


利用PLC的开关量输出控制变频器。PLC的开关输出量一般可以与变频器的开关量输入端直接相连。这种控制方式的接线简单,抗干扰能力强。


利用PLC的开关量输出可以控制变频器的启动/停止、正/反转、点动、转速和加减时间等,能实现较为复杂的控制要求,但只能有级调速。


使用继电器触点进行连接时,有时存在因接触不良而误操作现象。使用晶体管进行连接时,则需要考虑晶体管自身的电压、电流容量等因素,保证系统的可靠性。


另外,在设计变频器的输入信号电路时,还应该注意到输入信号电路连接不当,有时也会造成变频器的误动作。例如,当输入信号电路采用继电器等感性负载,继电器开闭时,产生的浪涌电流带来的噪声有可能引起变频器的误动作,应尽量避免。


③PLC与RS-485通信接口的连接。所有的标准西门子变频器都有一个RS-485串行接口(有的也提供RS-232接口),采用双线连接,其设计标准适用于工业环境的应用对象。


单一的RS-485链路最多可以连接30台变频器,而且根据各变频器的地址或采用广播信息,都可以找到需要通信的变频器。链路中需要有一个主控制器(主站),而各个变频器则是从属的控制对象(从站)。


采用串行接口有以下优点:

①大大减少布线的数量。

②无需重新布线即可更改控制功能。

③可以通过串行接口设置和修改变频器的参数。

④可以连续对变频器的特性进行监测和控制。


典型的RS-485多站接口,MM440变频器为RS-485接口时,是将端子14和15分别连接到P+和N-来。

PLC与变频器之间通信需要遵循通用的串行接口协议(USS),按照串行总线的主从通信原理来确定访问的方法。


总线上可以连接一个主站和最多31个从站,主站根据通信报文中的地址字符来选择要传输数据的从站,在主站没有要求它进行通信时,从站本身不能首先发送数据,各个从站之间也不能直接进行信息的传输。USS协议有关信息的详细说明在此不再赘述。


(2)联机注意事项

由于变频器在运行过程中会带来较强的电磁干扰,为保证PLC不因变频器主电路断路器及开关器件等产生的噪声而出现故障,在将变频器和PLC等上位机配合使用时还必须注意以下几点。


①对PLC本体按照规定的标准和接地条件进行接地。此时,应避免和变频器使用共同的接地线,并在接地时尽可能使两者分开。


②当电源条件不太好时,应在PLC的电源模块及输入/输出模块的电源线上接入噪声滤波器和降低噪声使用的变压器等。此外,如有必要,在变频器一侧也应采取相应的措施。


③当变频器和PLC安装在同一控制柜中时,应尽可能使与变频器和PLC有关的电线分开。


④通过使用屏蔽线和双绞线来抗噪声。


1、对PLC本身应按规定的接线标准和接地条件进行接地,而且应注意避免和变频器使用共同的接地线,且在接地时使二者尽可能分开。

2、当电源条件不太好时,应在PLC的电源模块及输入/输出模块的电源线上接入噪音滤波器和降低噪音用的变压器等,另外,若有必要,在变频器一侧也应采取相应的措施。

3、当把变频器和PLC安装于同一操作柜中时,应尽可能使与变频器有关的电线和与PLC有关的电线分开。

4、通过使用屏蔽线和双绞线达到提高噪音干扰的水平。

PLC和变频器连接应用时,由于二者涉及到用弱电控制强电,因此,应该注意连接时出现的干扰,避免由于干扰造成变频器的误动作,或者由于连接不当导致PLC或变频器的损坏

2022-09-01
PLC执行程序的过程分为哪三个阶段?

PLC执行程序的过程分为三个阶段,即输入采样阶段、程序执行阶段、输出刷新阶段,PLC的扫描工作过程:


(1)输入采样阶段。在这一阶段中,PLC以扫描方式读入所有输入端子上的输入信号,并将各输入状态存入对应的输入映像寄存器中。此时,输入映像寄存器被刷断。


在程序执行阶段和输出刷新阶段中,输入映像存储器与外界隔离,其内容保持不变,直至下一个扫描周期的输入扫描阶段,才被重新读入的输入信号刷新。可见,PLC在执行程序和处理数据时,不直接使用现场当时的输入信号,而使用本次采样时输入到映像区中的数据。一般来说,输入信号的宽度要大于一个扫描周期,否则可能造成信号的丢失。


(2)程序执行阶段。在执行用户程序过程中,PLC按照梯形图程序扫描原则,一般来说,PLC按从左至右、从上到下的步骤逐个执行程序。但遇到程序跳转指令,则根据跳转条件是否满足来决定程序跳转地址。


程序执行过程中,当指令中涉及输入、输出状态时,PLC就从输入映像寄存器中“读入”对应输入端子状态,从输出映像寄存器“读入”对应元件(“软继电器”)的当前状态。然后进行相应的运算,运算结果再存入输出映像寄存器中。对输出映像寄存器来说,每一个元件(“软继电器”)的状态会随着程序执行过程而变化。


(3)输出刷新阶段。程序执行阶段的运算结果被存入输出映像区,而不送到输出端口上。在输出刷新阶段,PLC将输出映像区中的输出变量送入输出锁存器,然后由锁存器通过输出模块产生本周期的控制输出。


如果内部输出继电器的状态为“1”,则输出继电器触点闭合,经过输出端子驱动外部负载。全部输出设备的状态要保持一个扫描周期。

2022-08-27
PLC控制系统可靠性降低的主要原因

虽然工业控制机和可编程控制器本身都具有很高的可靠性,但如果输入给PLC的开关量信号出现错误,模拟量信号出现较大偏差,PLC输出口控制的执行机构没有按要求动作,这些都可能使控制过程出错,造成无法挽回的经济损失。


影响现场输入给PLC信号出错的主要原因有:

1)造成传输信号线短路或断路(由于机械拉扯,线路自身老化,特别是鼠害),当传输信号线出故障时,现场信号无法传送给PLC,造成控制出错;


2)机械触点抖动,现场触点虽然只闭合一次,PLC却认为闭合了多次,虽然硬件加了滤波电路,软件增加微分指令,但由于PLC扫描周期太短,仍可能在计数、累加、移位等指令中出错,出现错误控制结果;


3)现场变送器,机械开关自身出故障,如触点接触不良,变送器反映现场非电量偏差较大或不能正常工作等,这些故障同样会使控制系统不能正常工作。


影响执行机构出错的主要原因有:

1)控制负载的接触不能可靠动作,PLC发出了动作指令,但执行机构并没按要求动作;


2)控制变频器起动,由于变频器自身故障,变频器所带电机并没按要求工作;


3)各种电动阀、电磁阀该开的没能打开,该关的没能关到位,由于执行机构没能按PLC的控制要求动作,使系统无法正常工作,降低了系统可靠性。要提高整个控制系统的可靠性,必须提高输入信号的可靠性和执行机构动作的准确性,否则PLC应能及时发现问题,用声光等报警办法提示给操作人员,尽快排除故障,让系统安全、可靠、正确地工作。

2022-08-25
PLC的结构及各部分的作用

可编程控制器的结构多种多样,但其组成的一般原理基本相同,都是以微处理器为核心的结构。通常由中央处理单元(CPU)、存储器(RAM、ROM)、输入输出单元(I/O)、电源和编程器等几个部分组成。


1.中央处理单元(CPU)

CPU作为整个PLC的核心,起着总指挥的作用。CPU一般由控制电路、运算器和寄存器组成。这些电路通常都被封装在一个集成电路的芯片上。CPU通过地址总线、数据总线、控制总线与存储单元、输入输出接口电路连接。CPU的功能有以下一些:从存储器中读取指令,执行指令,取下一条指令,处理中断。


2.存储器(RAM、ROM)

存储器主要用于存放系统程序、用户程序及工作数据。存放系统软件的存储器称为系统程序存储器;存放应用软件的存储器称为用户程序存储器;存放工作数据的存储器称为数据存储器。常用的存储器有RAM、EPROM和EEPROM。


RAM是一种可进行读写操作的随机存储器存放用户程序,生成用户数据区,存放在RAM中的用户程序可方便地修改。RAM存储器是一种高密度、低功耗、价格便宜的半导体存储器,可用锂电池做备用电源。掉电时,可有效地保持存储的信息。EPROM、EEPROM都是只读存储器。用这些类型存储器固化系统管理程序和应用程序。


3.输入输出单元(I/O单元)

I/O单元实际上是PLC与被控对象间传递输入输出信号的接口部件。I/O单元有良好的电隔离和滤波作用。接到PLC输入接口的输入器件是各种开关、按钮、传感器等。PLC的各输出控制器件往往是电磁阀、接触器、继电器,而继电器有交流和直流型,高电压型和低电压型,电压型和电流型。


4.电源

PLC电源单元包括系统的电源及备用电池,电源单元的作用是把外部电源转换成内部工作电压。PLC内有一个稳压电源用于对PLC的CPU单元和I/O单元供电。


5.编程器

编程器是PLC的最重要外围设备。利用编程器将用户程序送入PLC的存储器,还可以用编程器检查程序,修改程序,监视PLC的工作状态。除此以外,在个人计算机上添加适当的硬件接口和软件包,即可用个人计算机对PLC编程。利用微机作为编程器,可以直接编制并显示梯形图。

2022-08-24