1.减少输入点数的措施
(1)分组输入
一般系统都存在多种工作方式,但系统同时又只选择其中一种工作方式运行,也就是说各种工作方式的程序不可能同时执行。因此,可将系统输入信号按其对应的工作方式分成若干组,plc运行时只会用到其中的一组信号,所以各组输入可共用plc的输入点,这样就使所需的输入点减少。
如图1所示,系统有“自动”和“手动”两种工作方式,其中s1~s8为自动工作方式用到的输入信号,q1~q8为手动工作方式用到的输入信号。两组输入信号共用plc的输入点x0~x7,如s1与q1共用输入点x0。用“工作方式”选择开关sa来切换“自动”和“手动”信号的输入电路,并通过xio让plc识别是“自动”还是“手动”,从而执行自动程序或手动程序。
图1 分组输入
图1中的二极管是为了防止出现寄生回路,产生错误输入信号而设置的。例如,当把sa扳到“自动”位置时,若s1闭合,s2断开,虽然q1、q2闭合,也应该是x0有输入,而x1无输入。但如果无二极管隔离,则电流从x1流出,经q2→q1→s1→com形成寄生回路,从而使得x1错误地接通。因此,必须串入二极管切断寄生回路,避免错误输入信号的产生。
(2)矩阵输入
图2所示为3×3矩阵输入电路,用plc的三个输出点y0、y1、y2和三个输入点x0、x1、x2来实现9个开关量输入设备的接入。y0、y1、y2的公共端com与输入继电器的公共端com连在一起。当y0、y1、y2轮流导通时,输入端x0、x1、x2也轮流得到不同的三组输入设备的状态,即y0接通时读入q1、q2、q3的通断状态,y1接通时读入q4、q5、q6的通断状态,y2接通时读入q7、q8、q9的通断状态。
图2 矩阵输入
当y0接通时,如果q1闭合,则电流从x0端流出,经过vd1→q1→y0端,再经过y0的触点,从输出公共端com流出,最后流回输入com端,从而使输入继电器x0接通。在梯形图程序中应该用y0的常开触点和x0的常开触点的串联来表示q1提供的输入信号。图2中的二极管也是起切断寄生回路的作用。
采用矩阵输入方法除了要按图2所示方法进行硬件连接外,还必须编写对应的plc程序。由于矩阵输入的信号是分时被读入plc的,所以读入的输入信号为一系列断续的脉冲信号,在使用时应注意这个问题。另外,应保证输入信号的宽度大于y0、y1、y2轮流导通一遍的时间,否则可能会丢失输入信号。
(3)组合输入
对于不会同时接通的输入信号,可采用组合编码的方式输入。如图3(a)所示,三个输入信号q1、q2、q3只占用两个输入点,再通过图3(b)所示程序的译码,又还原成与q1、q2、q3对应的m0、m1、m2三个信号。采用这种方法时应特别注意要保证各输入开关信号不会同时接通。
2.输入设备的多功能化
在传统的继电器电路中,一个主令电器(开关、按钮等)只产生一种功能的信号。而在plc系统中,可借助于plc强大的逻辑处理功能来实现一个输入设备在不同条件下产生不同作用的信号。图4所示的梯形图只用一个按钮通过x0输入去控制输出y0的通断。
图3 组合输入
图4 用一个按钮控制的启动、保持和停止电路
在图4中,当y0断开时,按下按钮(x0接通),m0得电,使y0得电并自锁;再按一下按钮,m0得电,由于此时y0已得电,所以m1也得电,其常闭触点使y0断开。也就是说按一下按钮,x0接通一下,y0得电;再按一下按钮,x0又接通一下,y0失电。这样就改变了传统继电器控制中要用两个按钮(启动按钮和停止按钮)的做法,从而减少了plc的输入点数。同样道理,可以用这种思路来实现一个输入具有三种或三种以上的功能。
可将某些功能相同的开关量输入设备合并输入,如果是几个常闭触点,则串联输入;如果是几个常开触点,则并联输入。因此,几个输入设备就可共用plc的一个输入点。
系统中有些输入信号功能简单,涉及面很窄,如某些手动按钮、电动机过载保护的热继电器触点等,有时就没有必要作为plc的输入,将它们放在外部电路中同样可以满足要求,如图5所示。
图5 输入信号设在plc外部
3.不同形式的直流输入信号与plc的连接
在可编程控制器控制系统中遇到的直流有源输入信号一般都是5v、12v、24v、48v等。而目前的plc输入模块输入点的响应电压范围是3~120v,因此,这类信号不必作转换处理,可直接和plc输入模块的输入点连接,但和其他无源开关量信号以及其他来源的直流电压信号混合接入plc输入点时,注意电压的0v点一定要连接。
如图6所示,输入点i0.0、i0.1连接光电编码器、接近开关的输出信号(out),它们的驱动电源由plc自身的24v电压提供,它们的out端子输出的信号是有源信号。plc的m端子与0v端子与光电编码器、接近开关的0v信号连接在一起,plc输入点的响应电压都是以一个共同参考点为基点。
图6 光电编码器连接图
光电编码器和接近开关的直流供电是由plc自身的24v电源提供的,这是plc控制系统中经常用到的设计方法,这种方法简单,成本低。但在有些情况下,比如plc的直流电源的容量无法支持过多的负载或者外部检测设备的电源不能使用24v电源,而必须是5v、12v等,这时就必须设计外部电源为这些设备提供电源,而且这些设备输出的信号电压不同,如图7所示。
图7 设备输出的信号电压不同的连接图
在图7中,光电编码器的电源是12v,为它设计配备了12v的直流电源;接近开关的电源是5v,为它设计配备了5v的直流电源。它们的out端输出的信号分别是12v和5v的脉冲信号,而且在图7中有两个无源开关量的输入信号。
不同电压的直流信号可以与plc输入模块的输入点连接,但必须注意的是信号电位差的参考点必须相同。在图7中,光电编码器、接近开关、无源开关量的0v信号必须连接在一起,否则,会导致plc输入点的响应电压混乱,造成有的输入点的电压过高(尽管可以触发输入点,但有可能烧毁输入点),而有的输入点的电压过低(无法触发输入点)。这在plc控制系统中是应该特别注意的。
4.输入信号可靠性的提高
要提高现场输入给plc的信号的可靠性,首先要选择可靠性较高的变送器和各种开关,防止各种原因引起传送信号线短路、断路或接触不良。其次在程序设计时增加数字滤波程序,提高输入信号的可信性。数字信号滤波可采用图8(a)所示的程序设计方法,在现场输入触点后加一定时器,定时时间根据触点抖动情况和系统的响应速度确定,一般为几十毫秒,这样可保证触点确实稳定闭合后才有其他响应。模拟信号滤波可采用图8(b)所示的程序设计方法,对现场模拟信号连续采样3次,采样间隔由a/d转换速度和该模拟信号的变化速率决定。3次采样数据分别存放在数据寄存器dt10、dt11、dt12中,当最后一次采样结束后,利用数据比较、数据交换、数据段比较指令去掉最大和最小值,保留中间值作为本次采样结果存放在数据寄存器dt0中。
图8 输入信号滤波梯形图
要提高读入plc现场信号的可靠性,还可利用控制系统自身的特点和信号之间的关系来判断信号的可信程度。如进行液位控制时,由于储罐的尺寸是已知的,进液或出液的阀门开度和压力也是已知的,在一定时间里罐内液体变化高度大约在什么范围内是知道的,如果这时液位计送给plc的数据和估算液位高度相差较大,判断可能是液位计故障,通过故障报警系统通知操作人员检查该液位计。又如各储罐有上、下液位极限保护,当开关动作时发出信号给plc,并判断这个信号是否真实可靠。在程序设计时将这信号和该罐液位计信号对比,如果液位计读数也在极限位置,说明该信号是真实的;如果液位计读数不在极限位置,判断可能是液位极限开关故障或信号传送线路故障,同样通过报警系统通知操作人员处理该故障。
工业环境空间中的极强电磁场和高电压、大电流的通断将会对plc产生强烈的干扰,由于现场条件的限制,有时几百米长的强电电缆和plc的低压控制电缆只能敷设在同一电缆沟内,强电干扰在输入线上产生的感应电压和电流相当大,足以使plc输入端的光电耦合器中的发光二极管发光,光电耦合器的隔离作用失效,使plc产生误动作。在这种情况下,对于用长线引入plc的开关量信号,可以用小型继电器来隔离,光电耦合器中发光二极管的最小工作电流仅为3ma左右,而小型继电器的线圈吸和电流为几十毫安,强电干扰信号通过电磁感应产生的能量不可能使隔离用的继电器吸合。有的系统需要使用外部信号的多对触点,例如一对触点用于指示灯,并使用继电器转接输入信号,这样既能提供多对触点,又实现了对强电干扰信号的隔离。