对网友求助问题的几个回帖展示之二十五
本文5例都是近期在网上回答网友的求助帖,其内容都是涉及PLC编程及电工理论的一些问题,现整理汇编展示给大家,供大家参考。如有不对之处,请给于指正,本人深表感谢!
一、求助帖:plc语言能写这些吗?想写这样的逻辑:
1)记录水泵启动的时长(启动到停止的时间),与上次该泵的启动时长比较,慢了超过10%,就发个故障;
2)记录水泵启动周期的时长(停止到启动的时间),与上次启动周期的时长比较,快了超过10%,就发故障;
我想表达的就是:1)表明泵的效率低了,2)表明来水量增大了;
能写吗?请教,谢谢!
回复:可以这样编程:
1、地址安排:I0.0为水泵启动命令(或按钮),I0.1为水泵停止命令(或按钮)。Q0.0=1为水泵启动运行,Q0.0=0为水泵停止。Q1.0为本次运行时间(MD0)与上次启动运行的时间(VD10)比较,慢了超过10%,发出的故障信号(Q1.0=1),Q1.1为本次停车时间(MD4)与上次停止到启动的时间(VD14)比较,快了超过10%,发出的故障信号(Q1.1=1)。
2、编程:开机初始化使M8.0~M8.3复位,按下启动按钮(或发出启动命令)时,如此时M8.0=0,说明是第一次按启动按钮(其前一次停车时间VD14=0)此次执行动作是将运行时间计时器MD0清0,且使M8.0=1、M8.2=1(水泵启动运行),MD0从0开始计时。当按下停止按钮时,由于M8.1=0,说明此次是第一次水泵停车,故执行如下动作:使停车计时器MD4清0,且使M8.1=1、M8.2=0(水泵停止运行),MD4从0开始计时。
再按启动按钮(I0.0=1),由于此时M8.0=1,说明此次已不是第一次启动,程序将进行如下运算:将前次水泵停止到启动的时间(VD14),减去MD4(本次启动为止记下的水泵停车的时间值 ),再除以MD4,判断其商,如>0.1,说明本次停车时间(MD4)与上次停止到启动的时间(VD14)比较,快了超过10%,就发出故障信号(即使Q1.1=1),否则Q1.1=0。再将MD0清0,使M8.3=1(水泵启动)。M8.3=1运行计时器MD0从0开始计时。
再按停车按钮(I0.1=1),由于此时M8.1=1,说明此次已不是第一次停车,程序将进行如下运算:将前次水泵启动的时间(VD10),减去MD0(本次停车为止记下的水泵运行的时间值 ),再除以MD0,判断其商,如>0.1,说明本次运行时间(MD0)与上次运行时间(VD10)比较,快了超过10%,就发出故障信号(即使Q1.0=1),否则Q1.0=0。再将MD0清0,使M8.3=0(水泵停车)。M8.3=0运行计时器MD4从0开始计时
具体编程见下梯形图:
二、求助帖:大侠们,我今天遇到一个问题如下,向各位大侠讨教:在电路板上现有一发光LED二极管,我想再外用一只光敏二极管或光敏三极管来采集这个发光二极管的信号,然后利用采集到的信号让光敏二极管三极管成为计数器的输入电源,输入电源为DC24v,请问这个电路要怎么做,光敏二极管要怎么接线?希望好心朋友帮一把,谢谢了
回复: 可以这样改:见下图:图中棕色虚线框内为带有原发光二极管D1的电路,将D1的负极断开,按图将光耦4N33的发光二极管的正负极串入,考虑4N33的光敏三极管输出电流不够,可外接一PNP型功率三极管(BD138、可输出
动作原理:当D1支路截止(即D1不亮),使4N33的发光二极管不亮,其光敏三极管截止,24V无输出。当D1支路导通,即D1管发亮),同时使4N33的发光二极管通电发亮,其光敏三极管饱和导通,对外输出24V电源电压。
又问:……顺便追问一句,这个u+ u— 两个端子需要接入多大的电压
回复:看来这部分电路你没有完全看懂,是这样的:G1的光敏三极管与G2构成复合管(目的扩大输出电流),它相当一个开关,将24V电源的正极通过它,接输出端U+,而输出端U- 接24V电源的负极。当D1支路截止时,G1的光电二极管也截止不发光,故使G1的光敏三极管截止、G2也截止,此时相当开关断开,故U+无输出电压。当D1支路通导时,G1的光电二极管也通电而发光,使G1的光敏三极管饱和导通、G2也导通,此时G1、G2的导通管压降近似=0,相当开关闭合,故将24V正极电压加在输出U+上,使U+输出电压=24V。见下图:G1、G2绿色虚线框内等效电路为开关K: IR1=0时,G1与G2截止相当K断开,当IR1=10ma时,G1与G2导通相当K闭合。如下图所示:
再有:你按此图做实验,应先看看原电路的电源电压为多少,如电压较低(如5V),串接4N33后会使IR1电流变小,会使G1与G2不能充分导通,使U+输出变低(严重时U+无数出)为此应适当的将R1阻值变小,使IR1=10ma为好。
三、求助帖:一只灯泡和一个电阻串联接在电源上,这时灯泡的功率81W,电阻的功率9W,若把灯泡直接接电源,灯泡正常发光,求灯泡的功率???????????????????
解答:
1、串联支路的各电阻流过的电流是相等的,电阻功率P = 电阻电压U乘以电阻电流I,
即:P=U·I,串联支路各电阻的功率之比等于串联支路各电阻的电压之比:
要求..按下..M18---------Y5接通一次....通一次后M18复位..求指教
又问:如果把“接通一次”理解成:在按下一次M18(不论按下M18的时值的长短)的前提下,Y15都只接通一定时值(宽度)
我要的就是这种效果
回复:按上面所述:“如果把“接通一次”理解成:在按下一次M18(不论按下M18的时值的长短)的前提下,Y15都只接通一定时值(宽度)”,可以这样编程:按下M18,使M18=1,用M18的前沿(或后沿)使Y15置1,再用Y15接一通电延时定时器,定时器的延时时间就是要求Y15=1的宽度,延时时间到,再使Y15复位即可。
五、求助帖:S7-200均值滤波程序 请高手们帮帮忙,我现在要做一个均值滤波程序,每100MS采样一次,采样十次,去掉一个最大值,最小值,完了求均值,请问这个采样十次之后我要做一个类似中断或者初始化的一段程序,请问怎么写,望高手指教!!!
回复:采用50ms时间中断,中断间隔时间=50mS,中断程序为MB8加1运算,故:M8.0为周期=100 Ms的频率脉冲。本程序用模拟量输入值转换的数值量AIW0为采样数据,开机初始化将MW6与MB1清0, M8.0 =1的前沿将采样值AIW0加入MW6,且使MB1加1.同时进行对AIW0值进行判断:与前次的最大值MW2比较,如AIW0 > MW2,将AIW0—>MW2,如AIW0 < MW2,MW2保持不变。再用AIW0与前次的最小值MW4比较,如AIW0 < MW4,将AIW0—>MW4。如AIW0 > MW2,MW2保持不变。这样连续采样10次,使MB1=10,此时MW6 =10次累加值。由于MB1=10满足比较条件,程序立即进行如下运算:MW6减去这10次中的最大值MW2和最小值MW4,再除以8,其商即为10次平均值,依次放入首址为VW100的数据区里。详见梯形图:
SBR_0子程序:
INT_0中断服务程序:
楼主最近还看过