PLC执行程序的过程分为三个阶段,即输入采样阶段、程序执行阶段、输出刷新阶段。
1.输入采样阶段
在输入采样阶段,PLC以扫描工作方式按顺序对所有输入端的输入状态进行采样,并存入输入映象寄存器中,此时输入映象寄存器被刷新。接着进入程序处理阶段,在程序执行阶段或其它阶段,即使输入状态发生变化,输入映象寄存器的内容也不会改变,输入状态的变化只有在下一个扫描周期的输入处理阶段才能被采样到。
2.程序执行阶段
在程序执行阶段,PLC对程序按顺序进行扫描执行。若程序用梯形图来表示,则总是按先上后下,先左后右的顺序进行。当遇到程序跳转指令时,则根据跳转条件是否满足来决定程序是否跳转。当指令中涉及到输入、输出状态时,PLC从输入映像寄存器和元件映象寄存器中读出,根据用户程序进行运算,运算的结果再存入元件映象寄存器中。对于元件映象寄存器来说,其内容会随程序执行的过程而变化。
3.输出刷新阶段
当所有程序执行完毕后,进入输出处理阶段。在这一阶段里,PLC将输出映象寄存器中与输出有关的状态(输出继电器状态)转存到输出锁存器中,并通过一定方式输出,驱动外部负载。
因此,PLC在一个扫描周期内,对输入状态的采样只在输入采样阶段进行。当PLC进入程序执行阶段后输入端将被封锁,直到下一个扫描周期的输入采样阶段才对输入状态进行重新采样。这方式称为集中采样,即在一个扫描周期内,集中一段时间对输入状态进行采样。
在用户程序中如果对输出结果多次赋值,则最后一次有效。在一个扫描周期内,只在输出刷新阶段才将输出状态从输出映象寄存器中输出,对输出接口进行刷新。在其它阶段里输出状态一直保存在输出映象寄存器中。这种方式称为集中输出。
对于小型PLC,其I/O点数较少,用户程序较短,一般采用集中采样、集中输出的工作方式,虽然在一定程度上降低了系统的响应速度,但使PLC工作时大多数时间与外部输入/输出设备隔离,从根本上提高了系统的抗干扰能力,增强了系统的可靠性。
而对于大中型PLC,其I/O点数较多,控制功能强,用户程序较长,为提高系统响应速度,可以采用定期采样、定期输出方式,或中断输入、输出方式以及采用智能I/O接口等多种方式。
从上述分析可知,当PLC的输入端输入信号发生变化到PLC输出端对该输入变化作出反应,需要一段时间,这种现象称为PLC输入/输出响应滞后。对一般的工业控制,这种滞后是完全允许的。应该注意的是,这种响应滞后不仅是由于PLC扫描工作方式造成,更主要是PLC输入接口的滤波环节带来的输入延迟,以及输出接口中驱动器件的动作时间带来输出延迟,同时还与程序设计有关。滞后时间是设计PLC应用系统时应注意把握的一个参数。
1、设置有关密码和保护级别
系统程序要设置有关密码或保护级别,防止因误操作或被人为改动而被破坏。
2、建立维护和定期保养的规章制度,完善岗位责任制巡回检查制度
包括建立系统设备档案(如设备一览表、系统资料、程序清单和竣工图等)采用统一的记录格式来记录系统的运行状况、故障现象和维修情况等。
3、定期清洁措施
应根据不同的应用地点、场所,制定定期清洁措施。如定期清洁和更换机柜的空气过滤网,确保机柜空气洁净和通畅,防止大量粉尘物积在处理器和I/O模块上。清洁时要注意安全,不要证污物掉入系统模块内造成模块损坏和引起系统停机。
4、定期检查
定期检查最好结合生产开停装置进行。
(1)
PLC系统的检查。检查PLC的工作环境,包括供电、环境,检查系统所有模块的运行状态、锂电池的使用状态等。
(2)连接电缆的检查。检查是否连接牢固,连接处是否氧化严重,对有问题的地方进行处理。
(3)中间继电器是否有振动松脱。一次元件根据其技术参数进行定期校验和检查,确保输入准确和输出信号执行顺畅。
(4)接地和接地电阻检查。
(5)对系统的用户程序进行备份。
(6)长期处于运行状态(或长周期运行)的系统,必须在一定的时间间隔(如1年)进行全面的检查,有条件的可以做点检处理。
1引言
PLC控制系统的设计中,虽然接线工作占的比重较小,大部分工作还是PLC的编程设计工作,但它是编程设计的基础,只要接线正确后,才能顺利地进行编程设计工作。而保证接线工作的正确性,就必须对PLC内部的输入输出电路有一个比较清楚的了解。
我们知道,PLC数字输入模块为了防止外界线路产生的干扰(如尖峰电压,干扰噪声等)引起PLC的非正常工作甚至是元器件的损坏,一般在PLC的输入侧都采用光耦,来切断PLC内部线路和外部线路电气上的联系,保证PLC的正常工作。并且在输入线路中都设有RC滤波电路,以防止由于输入点抖动或外部干扰脉冲引起的错误信号。
2输入电路的形式
2.1分类
PLC的输入电路,按外接电源的类型分,可以分为直流输入电路和交流输入电路;按PLC输入模块公共端(COM端)电流的流向分,可分为源输入电路和漏输入电路;按光耦发光二极管公共端的连接方式可分为共阳极和共阴极输入电路。如下图1所示:
图1PLC输入电路的分类
2.2按外接电源的类型分类
2.2.1直流输入电路
图2为直流输入电路的一种形式(只画出一路输入电路)。当图1中外部线路的开关闭合时,PLC内部光耦的发光二极管点亮,光敏三极管饱和导通,该导通信号再传送给处理器,从而CPU认为该路有信号输入;外界开关断开时,光耦中的发光二极管熄灭,光敏三极管截止,CPU认为该路没有信号。
图2直流输入电路
2.2.2交流输入电路
交流输入电路如图3所示,可以看出,与直流输入电路的区别主
要就是增加了一个整流的环节。
交流输入的输入电压一般为AC120V或230V。交流电经过电阻R的限流和电容C的隔离(去除电源中的直流成分),再经过桥式整流为直流电,其后工作原理和直流输入电路一样,不再缀述。
图3交流输入电路
从以上可以看出,由于交流输入电路中增加了限流、隔离和整流三个环节,因此,输入信号的延迟时间要比直流输入电路的要长,这是其不足之处。但由于其输入端是高电压,因此输入信号的可靠性要比直流输入电路要高。一般,交流输入方式用于有油雾、粉尘等恶劣环境中,对响应性要求不高的场合,而直流输入方式用于环境较好,电磁干扰不严惩,对响应性要求高的场合。
2.3按流入公共端电流的流向分类
2.3.1漏型输入电路
漏型输入电路如图4所示,此时,电流从PLC公共端(COM端或M端)流进,而从输入端流出,即PLC公共端接外接DC电源的正极。
图4漏型输入电路
此图只是画出了一路的情形,如果输入有多路,所有输入的二极管阳极相连,就构成了共阳极电路。如图5所示。
图5共阳极电路
三菱A系列PLC的AX40/41/42/50/60及Q系列的QX40/41/42等输入模块均属于漏型输入模块。
2.3.2源型输入电路
图3所示的电路也是源型输入电路的形式,此时,电流的流向正好和漏型的电路相反。源型输入电路的电流是从PLC的输入端流进,而从公共端流出,即公共端接外接电源的负极。
如果所有输入回路的二极管的阴极相连,就构成了共阴极电路,如图6所示:
图6共阴极电路
三菱A系列PLC的AX80/81/82及Q系列的QX80/81的输入模块均属于此类输入电路。
2.3.2混合型输入电路
因为此类型的PLC公共端既可以流出电流,也可以流出电流(既PLC公共端既可以接外接电源的正极,也可以接负极),同时具有源输入电路和漏输入电路的特点,所以我们可以姑且把这种输入电路称为混合型输入电路。其电路形式如图7所示。
图7混合型电路
作为源输入时,公共端接电源的负极;作为漏输入时,公共端接
电源的正极。这样,可以根据现场的需要来接线,给接线工作带来极大的灵活。
三菱A系列PLC的AX50-S1/60-S1/70/71/81-S1及Q系列的QX70/71/72。
这里需要说明的是,三菱和SIEMENS关于“源输入”和“漏输入”电路的划分正好相反,以上是按三菱的划分方法来介绍的,这点在使用过程中要注意。
SIEMENSS7-300/400系列PLC的直流输入模块大多为漏型输入(公共端接外部电源的负极。注:按SIEMENS的划分方法)。在S7-300系列PLC中,只有SM321(-IBH50-)输入模块为源输入(公共端接正。注:按SIEMENS的划分方法),S7-400系列PLC中则没有源输入模块。小型PLCS7-200的输入模块则全部为混合型输入形式。在大的项目中不建议使用,因此种输入形式虽然接线方便,但容易造成电源的混乱。
3外接开关量信号和PLC输入电路的连接
PLC外接的输入信号,除了像按钮一些干节点信号外,现在一些传感器还提供NPN和PNP集电极开路输出信号。干节点和PLC输入模块的连接比较简单,这里主要不再缀述。而对于不同的PLC输入电路,到底是使用NPN输入还是PNP输入有时感到无所适从。下面主要介绍一下这两种输入和PLC输入电路的连接。
3.1NPN和PNP输出电路的形式
如图8和图9所示,分别是NPN和PNP输出电路的一种形式。
图8NPN集电极开路输出图9PNP集电极开路输出
从图8和图9可以看出,NPN集电极开路输出电路的输出OUT端通过开关管和0V连接,当传感器动作时,开关管饱和导通,OUT端和0V相通,输出0V低电平信号;PNP集电极开路输出电路的输出OUT端通过开关管和+V连接,当传感器动作时,开关管饱和导通,OUT端和+V相通,输出+V高电平信号。
3.2NPN和PNP输出电路和PLC输入模块的连接
3.2.1NPN集电极开路输出
由以上分析可知,NPN集电极开路输出为0V,当输出OUT端和PLC输入相连时,电流从PLC的输入端流出,从PLC的公共端流入,此即为PLC的漏型电路的形式,即:NPN集电极开路输出只能接漏型或混合式输入电路形式的PLC,连接图如图10所示:
10NPN集电极开路输出和PLC的连接
3.2.2PNP集电极开路输出
PNP集电极开路输出为+V高电平,当输出OUT端和PLC输入相连时,电流从PLC的输入端流入,从PLC的公共端流出,此即为PLC的源型电路的形式,即:PNP集电极开路输出只能接源型或混合型输入电路形式的PLC,连接图如图11所示:
图11PNP集电极开路输出和PLC的连接
4结束语
正是由于PLC输入模块电路形式和外接传感器输出信号的多样性,我们在PLC输入模块接线前要充分了解PLC输入电路的类型和传感器输出信号的形式,只有这样,才能确保PLC输入模块接线正确无误,为后续的PLC编程和调试工作打下一个良好的基础。
PLC程序现场调试指在工业现场,甩有设备都安装好后,所有连接线都接好后的实际调试。也是PLC程序的最后调试。现场调试的目的是,调试通过后,可交给用户使用,或试运行。现场调试参与的人员较多,要组织好,要有调试大纲。依大纲,按部就班地一步步推进。开始调试时,设备可先不运转,甚至了不要带电。可随着调试的进展逐步加电、开机、加载,直到按额定条件运转。具体过程大体是:
1)、要查接线、核对地址。要逐点进行,要确保正确无误。可不带电核对,那就是查线,较麻烦。也可带电查,加上信号后,看电控系统的动作情况是否符合设计的目的。
2)、检查模拟量输入输出。看输入输出模块是否正确,工作是否正常。必要时,还可用标准仪器检查输入输出的精度。
3)、检查与测试指示灯。控制面板上如有指示灯,应先对应指示灯的显示进行检查。一方面,查看灯坏了没有,另一方面检查逻辑关系是否正确。指示灯是反映系统工作的一面镜子,先调好它,将对进一步调试提供方便。
4)、检查手动动作及手动控制逻辑关系。完成了以上调试,继而可进行手动动作及手动控制逻辑关系调试。要查看各个手动控制的输出点,是否有相应的输出以及与输出对应的动作,然后再看,各个手动控制是否能够实现。如有问题,立即解决。
5)、半自动工作。如系统可自动工作,那先调半自动工作能否实现。调试时可一步步推进。直至完成整个控制周期。哪个步骤或环节出现问题,就着手解决哪个步骤或环节的问题。
6)、自动工作。在完成半自动调试后,可进一步调试自动工作。要多观察几个工作循环,以确保系统能正确无误地连续工作。
7)、模拟量调试、参数确定。以上调试的都是逻辑控制的项目。这是系统调试时,首先要调通的。这些调试基本完成后,可着手调试模拟量、脉冲量控制。最主要的是选定合适控制参数。一般讲,这个过程是比较长的。要耐心调,参数也要作多种选择,再从中选出最优者。有的PLC,它的PID参数可通过自整定获得。但这个自整定过程,也是需要相当的时间才能完成的。
8)、异常条件检查,完成上述所有调试,整个调试基本也就完成了。但是好再进行一些异常条件检查。看看出现异常情况或一些难以避免的非法操作,是否会停机保护或是报警提示。
以下叙述的硬件/软件条件为:不带RS232串口的笔记本电脑、欧姆龙CPM2AH-60CDR型
PLC、Cx-Programmer V5.0编程软件。
1. Cx-Programmer V5.0与PLC通信不稳定:
电脑与PLC的连接方式:电脑USB口(该电脑没有RS232串口)←→[USB转RS232电缆的USB插头←→USB转RS232电缆线(电脑已经安装驱动,且默认的COM4端口已经设置为COM1)中间部分←→USB转RS232电缆的RS232公头]←→[[电脑与PLC的连接电缆的RS232母头←→电脑与PLC的连接电缆线的中间部分←→电脑与PLC的连接电缆的RS232公头]]←→PLC的RS232母头。
上面单中括号内为USB转RS232电缆,双中括号内为电脑与PLC的连接电缆。电脑与PLC的连接电缆接线如下:(1).公头(用以连接PLC)的2、3、9分别与母头的2、3、5(用于连接电脑或USB转RS232连接线)短接,这是欧姆龙官方的连接方法;(2).公头和母头的2-2、3-3、5-5分别短接,这是RS232连接线的常规连接方法。后来经过实践证明:上面2种电脑和PLC的连接电缆都可以使用。第1种电缆通信稳定可靠。对于第2种电缆,当电脑和PLC之间通过VC应用程序进行通信时效果不好,容易丢帧(用串口调试助手可以看到),只有当电脑和PLC共用电源(共地)时才没有发现问题。所以,请尽量采用第1种连接电缆。
有时间电脑和PLC能正常通信,有时间却不行——显示“Modem已经被选中,要继续码?”故障(实际上“码”应当为“吗”),一旦出现该故障信息,就一定会出现以下故障信息:
当通信不上时,笔者采用过克隆回以前的正常操作系统、重新安装Cx-Programmer V5.0编程软件等方法,又可以正常通信了,但一旦断线后又可能通信不上了。有几次还发现,有些程序可以和PLC通信上,而有些程序却不行!因此,笔者就将可以通信的PLC程序先备份,然后全部删除程序中的指令,最后将目标程序的指令全部复制过来(复制时注释可以自动复制过来),这样居然电脑就可以正常和PLC进行通信了!但是——下一次这个程序可能又无法正常通信了!郁闷……
根据通信错误信息“Modem已经被选中,要继续码?”,笔者找到了解决方法:在桌面上右击“我的电脑”,再点击“属性”——“硬件”——“设备管理器”,再双击“调制解调器”,再右击展开的调制解调器型号,点击“停用”就可以了。
另外,正确连接方法如下:在电脑没开机或(和)PLC没通电(否则带电拔插通信口可能造成通信口损坏(虽然这种几率不大,但你最好不要去碰运气))的情况下连接好USB转RS232电缆、电脑与PLC的连接电缆,然后再通过Cx-Programmer连接电脑与PLC。
请注意:USB口也不是随便乱插就可以的,关键要保证设备管理器里的RS232口为COM1。笔者的电脑上时这种情况:最初已将默认的RS232口从COM4口改为COM1口,但插下面的USB口却对应RS232的COM4口(COM1、COM3正在使用),无法连接电脑与PLC;插上面的USB口对应RS232的COM1口(COM2、COM4正在使用),可以连接电脑与PLC。
2. Cx-Programmer V5.0与PLC通信干扰:
如果Cx-Programmer在线,电脑和PLC已经连接,处于通信状态下,当每次设备停机时(将近20个交流接触器同时断开)Cx-Programmer将会出现通信错误,电脑和PLC连接中断。而当每次开机时(将近20个交流接触器同时吸合)却不会出现通信错误的情况。
解决方法:重新连接PLC。如果你是个完美主义者,可以在每个接触器线圈上加一个RC阻容模块(每个RC模块大概60个大洋左右),也许不会出现通信错误的情况(不过笔者没有试过哟...)。
3. 电脑与PLC的连接电缆试验:
因为想到电脑与PLC的连接电缆(第1种常规的连接电缆)为2-2短接、3-3短接、5-5短接,所以考虑直接用USB←→RS232电缆将电脑和PLC连接起来,如果这样可以的话不就省了一条连接电缆了吗?下面是直接用USB←→RS232电缆将电脑和PLC连接起来的试验结果:
有时间第1次通信时出现以下错误:“所选的端口被另一个应用所占用”;第2次通信时出现以下错误:
为什么电脑通过上述两种连接电缆与PLC连接没有问题,而直接采用USB转RS232电缆线与PLC连接却不行呢?以下是分析过程:
第1种可能:阻抗的原因。虽然上述两种连接电缆为直连线,却有阻抗存在,多了这个阻抗就可以正常连接。但这个原因好像很牵强,连笔者自己都不能相信。
第2种可能:该USB转RS232的公头与PLC的母头接触不良,而加一根电缆却能连接正常——USB转RS232的公头与连接线的母头接触良好,连接线的公头与PLC的母头接触良好。该猜测来源于笔者遇到过的一次电脑故障:某台电脑的鼠标无法使用,另外换一个鼠标正常,把故障鼠标换到其它电脑却能正常使用。最后怀疑鼠标接头与主板插口接触不良,就将鼠标插头破开再涂上一层焊锡,结果使用正常!但是对于USB转RS232的公头与PLC的母头接触不良这种猜测,笔者觉得可能性不大——因为他解释不了“所选的端口被另一个应用所占用”这个故障。
最后想到了另外一个可能:USB转RS232直接与PLC连接就相当于USB转RS232的串口与PLC的串口1-1、2-2、3-3、4-4、5-5、6-6、7-7、8-8、9-9一一对应连接,而通过连接线却只有2-2、3-3、5-5三对端子连接,这说明1-1、4-4、7-7、8-8、9-9至少有一对是不能连接的,否则就会出现问题,而且这还既有可能损坏PLC与电脑的通信端口。笔者认为就是这个原因。
感性负载具有储能作用,当控制触点断开时,电路中的感性负载会产生电弧高于电源电压数倍甚至数十倍的反电势,触点闭合时,会因触点的抖动而产生电弧,他们都会对系统产生干扰。可以采用以下措施:
PLC
的输入端或输出端接有感性元件时,应在他们两段并联连续流二极管(对于直流电路见图1)或阻容电路(对于交流电路),以抑止电路断开时产生的电弧对PLC的影响。电阻可以取51~120Ω,电容可以取0.1~0.47μF,电容的额定电压应大于电源峰值电压。续流二极管可以选1A的管子,其额定电压应大于电源电压的3倍。为了减少电动机和电力变压器投切时产生干扰,可在电源输入端设置浪涌电流吸收器。
PLC工作不稳定频繁死机的解决方法:
1、若电源电庄高于PLC的额定电压的上限值或低于PLC的额定电压的下限值,应对供电电压进行检查,若有异常,调整电压。
2、若主机系统模块接触不良,应对主机系统模块进行清理和重插。
3、若CPU、内存板内元器件松动,应对可疑元器件采用戴手套按压的方法或补焊。
4、若CPU、内存板故障,应及时更换。
5、在设计和改造PLC时,还易出现应用程序的扫描周期过长,导致PLC频繁死机。
PLC的容量包括I/O点数和用户存储容量两个方面。
(一)I/O点数的选择
PLC平均的I/O点的价格还比较高,因此应该合理选用PLC的I/O点的数量,在满足控制要求的前提下力争使用的I/O点最少,但必须留有一定的裕量。
通常I/O点数是根据被控对象的输入、输出信号的实际需要,再加上10%~15%的裕量来确定。
(二)存储容量的选择
用户程序所需的存储容量大小不仅与PLC系统的功能有关,而且还与功能实现的方法、程序编写水平有关。一个有经验的程序员和一个初学者,在完成同一复杂功能时,其程序量可能相差25%之多,所以对于初学者应该在存储容量估算时多留裕量。
PLC的I/O点数的多少,在很大程序上反映了PLC系统的功能要求,因此可在I/O点数确定的基础上,按下式估算存储容量后,再加20%~30%的裕量。
存储容量(字节)=开关量I/O点数×10+模拟量I/O通道数×100
另外,在存储容量选择的同时,注意对存储器的类型的选择。
PLCI/O模块的选择步骤与原则
一般I/O模块的价格占PLC价格的一半以上。PLC的I/O模块有开关量I/O模块、模拟量I/O模块及各种特殊功能模块等。不同的I/O模块,其电路及功能也不同,直接影响PLC的应用范围和价格,应当根据实际需要加以选择。
(一)开关量I/O模块的选择
1.开关量输入模块的选择
开关量输入模块是用来接收现场输入设备的开关信号,将信号转换为PLC内部接受的低电压信号,并实现PLC内、外信号的电气隔离。选择时主要应考虑以下几个方面:
1)输入信号的类型及电压等级
开关量输入模块有直流输入、交流输入和交流/直流输入三种类型。选择时主要根据现场输入信号和周围环境因素等。直流输入模块的延迟时间较短,还可以直接与接近开关、光电开关等电子输入设备连接;交流输入模块可靠性好,适合于有油雾、粉尘的恶劣环境下使用。
开关量输入模块的输入信号的电压等级有:直流5V、12V、24V、48V、60V等;交流110V、220V等。选择时主要根据现场输入设备与输入模块之间的距离来考虑。话?V、12V、24V用于传输距离较近场合,如5V输入模块最远不得超过10米。距离较远的应选用输入电压等级较高的模块。
2)输入接线方式
开关量输入模块主要有汇点式和分组式两种接线方式,
汇点式的开关量输入模块所有输入点共用一个公共端(COM);而分组式的开关量输入模块是将输入点分成若干组,每一组(几个输入点)有一个公共端,各组之间是分隔的。分组式的开关量输入模块价格较汇点式的高,如果输入信号之间不需要分隔,一般选用汇点式的。
3)注意同时接通的输入点数量
对于选用高密度的输入模块(如32点、48点等),应考虑该模块同时接通的点数一般不要超过输入点数的60%。
4)输入门槛电平
为了提高系统的可靠性,必须考虑输入门槛电平的大小。门槛电平越高,抗干扰能力越强,传输距离也越远,具体可参阅PLC说明书。
2.开关量输出模块的选择
开关量输出模块是将PLC内部低电压信号转换成驱动外部输出设备的开关信号,并实现PLC内外信号的电气隔离。选择时主要应考虑以下几个方面:
1)输出方式
开关量输出模块有继电器输出、晶闸管输出和晶体管输出三种方式。
继电器输出的价格便宜,既可以用于驱动交流负载,又可用于直流负载,而且适用的电压大小范围较宽、导通压降小,同时承受瞬时过电压和过电流的能力较强,但其属于有触点元件,动作速度较慢(驱动感性负载时,触点动作频率不得超过1HZ)、寿命较短、可靠性较差,只能适用于不频繁通断的场合。
对于频繁通断的负载,应该选用晶闸管输出或晶体管输出,它们属于无触点元件。但晶闸管输出只能用于交流负载,而晶体管输出只能用于直流负载。
2)输出接线方式
开关量输出模块主要有分组式和分隔式两种接线方式,
分组式输出是几个输出点为一组,一组有一个公共端,各组之间是分隔的,可分别用于驱动不同电源的外部输出设备;分隔式输出是每一个输出点就有一个公共端,各输出点之间相互隔离。选择时主要根据PLC输出设备的电源类型和电压等级的多少而定。一般整体式PLC既有分组式输出,也有分隔式输出。
3)驱动能力
开关量输出模块的输出电流(驱动能力)必须大于PLC外接输出设备的额定电流。用户应根据实际输出设备的电流大小来选择输出模块的输出电流。如果实际输出设备的电流较大,输出模块无法直接驱动,可增加中间放大环节。
4)注意同时接通的输出点数量
选择开关量输出模块时,还应考虑能同时接通的输出点数量。同时接通输出设备的累计电流值必须小于公共端所允许通过的电流值,如一个220V/2A的8点输出模块,每个输出点可承受2A的电流,但输出公共端允许通过的电流并不是16A(8×2A),通常要比此值小得多。一般来讲,同时接通的点数不要超出同一公共端输出点数的60%。
5)输出的最大电流与负载类型、环境温度等因素有关
开关量输出模块的技术指标,它与不同的负载类型密切相关,特别是输出的最大电流。另外,晶闸管的最大输出电流随环境温度升高会降低,在实际使用中也应注意。
(二)模拟量I/O模块的选择
模拟量I/O模块的主要功能是数据转换,并与PLC内部总线相连,同时为了安全也有电气隔离功能。模拟量输入(A/D)模块是将现场由传感器检测而产生的连续的模拟量信号转换成PLC内部可接受的数字量;模拟量输出(D/A)模块是将PLC内部的数字量转换为模拟量信号输出。
典型模拟量I/O模块的量程为-10V~+10V、0~+10V、4~20mA等,可根据实际需要选用,同时还应考虑其分辨率和转换精度等因素。
一些PLC制造厂家还提供特殊模拟量输入模块,可用来直接接收低电平信号(如RTD、热电偶等信号)。
(三)特殊功能模块的选择
目前,PLC制造厂家相继推出了一些具有特殊功能的I/O模块,有的还推出了自带CPU的智能型I/O模块,如高速计数器、凸轮模拟器、位置控制模块、PID控制模块、通信模块等。
之前一直使用三菱
PLC,最近因工作需要对永宏PLC有一些初步了解,发现与三菱的有很大区别。
1、下载程式方法:档案->另存专案->存储至PLC。注:下载程序不会对内部暂存器D/R清零。
2、语法检查(没有编译):工具->语法检查。
3、程式备份:工具->系统备份。注:如果单独备份梯形图将不能保存和表格相关内容,如伺服定位指令。
4、无上电常ON特殊寄存器,因为功能指令的输入可以直接由母线短接。但是有上电初始化脉冲M1924
5、在线监控PLC运行状态:PLC->联机->是否开启对应专案->确定。
1.引言
CPU寄存器状态字的各位给出了有关指令状态或结果的信息以及所出现的错误,我们可以将二进制逻辑操作状态位信号状态直接集成到程序中,以控制程序执行的流程。
2.状态字寄存器
先简单介绍一下CPU中状态字。
●首次检查位:状态字的0位称作首次检查位,如果/FC位的信号状态为“0”,则表示伴随着下一条逻辑指令,程序中将开始一个新的逻辑串。FC前面的斜杠表示对FC取反。
●逻辑运算结果:状态字的第1位为RLO位(RLO=“逻辑运算结果”),在二进制逻辑运算中用作暂时存储位。比如,一串逻辑指令中的某个指令检查触点的信号状态,并根据布尔逻辑运算规则将检查的结果(状态位)与RLO位进行逻辑门运算,然后逻辑运算结果又存在RLO位中。
●状态位:状态位(第2位)用以保存被寻址位的值。状态位总是向扫描指令(A,AN,O,…)或写指令(=,S,R,)显示寻址位的状态(对于写指令,保存的寻址位状态是本条写指令执行后的该寻址位的状态)。
●OR位:在用指令OR执行或逻辑操作之前,执行与逻辑操作的时候,就需要用到OR这一状态位。OR位表示先前执行的与逻辑操作产生的值为“1”,于是,逻辑操作或的执行结果就已被确定为“1”。
●OV位:溢出表示算术或比较指令执行时出现了错误。根据所执行的算术或逻辑指令结果对该位进行设置。
●OS位:溢出存储位是与OV位一起被置位的,而且在更新算术指令之后,它能够保持这种状态,也就是说,它的状态不会由于下一个算术指令的结果而改变。这样,即使是在程序的后面部分,也还有机会判断数字区域是否溢出或者指令是否含有无效实数。OS位只有通过如下这些命令进行复位:JOS(若OS=1,则跳转)命令,块调用和块结束命令。
●CC1及CC0位:CC1和CC0(条件代码)位给出有关下列结果的相关信息:
?算术指令结果
?比较指令结果
?字逻辑指令
?在移位功能中,移出位相关信息。
可以用以下指令来检查条件代码CC1和CC0。
CC1CC0检查完成后,如果:
00A==0结果=0
10A>0结果>0
01A<0结果<0
●BR位:状态字的第8位称为二进制结果位。它将字处理程序与位处理联系起来,在一段既有位操
作又有字操作的程序中,用于表示字逻辑是否正确。将BR位加入程序后,无论字操作结果如何,都不会造成二进制逻辑链中断。在梯形图的方块指令中,BR位与ENO位有对应关系,用于表明方块指令是否被正确执行:如果执行出现了错误,BR位为0,ENO位也为0;如果功能被正确执行,BR位为1,
ENO位也为1。在用户编写的FB/FC程序中,应该对BR位进行管理,功能块正确执行后,使BR位为1,否则使其为0。使用SAVE指令将RLO存入BR中,从而达到管理BR位目的。
状态字的9-15位未使用。
3.具体使用
下面我们结合STEP7中的指针编程来具体介绍条件码CC0/CC0的用法。
不同的指令在CPU中执行时间是不同的。浮点数比定点数执行时间要长;字逻辑指令比位逻辑指令执行时间要长;在某些程序中适当使用状态字来进行编程可以减少CPU程序的执行时间。
例1:比如说要比较一个DB中块的DBBO-DBB99这100个字节是正数是负数还是0,正数用1来表示;负数用-1来表示;0用0来表示。并且将对应结果存入MB200开始的100个字节中。我们通常的做法可能为:
如果利用条件码来进行编程,既可以减少程序的大小还会减少一定的指令执行时间,我们只需要将
中间的比较程序加以优化,即可以达到目的。
例2:根据状态位C0和CC1的状态而跳转的跳转功能指令JZ不改变任何状态位的状态,而且逻辑操作结果RLO值也会“随着”该跳转功能带到跳转程序段中,供用户程序其它逻辑操作之用(不改变/FC状态)。
示例两个整数相减并需进行连续判断:
LMW2
LMW8
-I
JZZERO//如果结果等于“0”,则跳转至标号ZERO处
//结果不等于“0”时所执行的指令
ZERO://结果等于“0”时,所要执行的指令
如果用户不熟悉JZ指令和状态位C0和CC1的具体含义,编程时就需要通过比较指令将比较结果存入一个二进制位中,再根据这个二进制位通过JC/JCN指令来控制程序的执行了。
例3:我们实际应用中可能要利用某些协议转换网关(比如说Hilscher公司的NTTAP系列网关)来和某些串口协议的仪表进行通信时,会遇到CRC校验的问题,关于CRC校验时需要判断溢出位是否为1的问题来进行程序的进一步计算。我们以EURO2408的MODBUS通信时需要的CRC校验为例说明CRC校验的步骤:
1、装载16#FFFF到一个16位CRC寄存器;
2、将CRC寄存器的高8位字节与信息中的第一个8位字节相异或,结果返回到CRC寄存器中;
3、将CRC寄存器数据向右移动一位;
4、如果溢出的位等于1,则将CRC寄存器与16#A001相异或,结果返回到CRC寄存器中;
4、如果溢出的位等于0,则重复第3步;
5、重复第3、4步骤,直到已经移位了8次;
6、将CRC寄存器的高8位字节与信息中的下一个8位字节相异或,结果返回到CRC寄存器中;
7、重复第3步到第6步,直到信息中所有字节都与CRC寄存器相异或,并都移位了8次;
8、最后的CRC寄存器中的结果即为CRC校验码,最后被添加到信息(数据)的末尾(交换!低8位
在前,高8位在后;)
在第4步中需要判断溢出的位是否为1,如何判断对于整个程序有着重要的影响。我们可以用A>0指令来判断这个条件,具体代码的编写,有兴趣时大家可以根据上面的步骤编写一个自己的CRC程序。
4.结束语
在一般情况下,我们不必考虑这些状态位,但在某些情况下,利用这些状态位并结合一定的指令,可以给我们的编程带来更大的灵活性,同时对于进一步提高自己的编程水平也有一定的作用。
到此这篇plc1ms定时器(plc定时器的使用方法及注意事项)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!
版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/cjjbc/47461.html