对网友求助问题的几个回帖展示之六十四
本文3例都是在网上回答网友的求助帖,其内容为关于电路设计与PLC编程的,现整理汇编展示给大家,供大家参考。
一、求助帖:怎样用继电器实现3种不同的电压转换?
各位大侠:你们好!
小弟最近做一个工控项目,三种不同的交流电压176\220\264V,计划用三个调压器设定好!
需要做LED灯具的老化,让灯具在不同电压进行老化,在切换过程中,三种电压不能同时给LED灯具,不然就会混压,非常危险!如何才能给灯具提供正确电压?关键点是要安全,不能混压!通过按钮需要能自由切换!
回复:可用2种方式实现:1、用4个用继电器组成的控制电路来实现,见下图:
电路原理说明:本图由4个直流继电器组成,其J1、 J2、J3 这3个继电器的分别控制3个调压器(即用它们的常开触点分别作3种电源与3个调压器的电源开关),K1、K2、K3为双触点按钮,分别作3个调压器的启动工作按钮。
J0继电器与R1、C1 组成点动控制电路,它受K1~K3这 3个按钮控制,这3个按钮为点动按钮,其按下时间应大于1秒:如按下K1按钮,使J0支路通导,由于C1要保持原通电前0V电压不变,故瞬间使J0电压=24V,使J0立刻吸合,其J0的常闭触点断开,使J1~J3支路失电断开。随之J0的内阻对C1充电,使C1电压由0增加,则又会使J0的电压由24V 下降,延时0.5秒,J0的电压低于其最小吸合电压时,J0断开,其常闭触点闭合(使24V又加在J1~J3的上端),由于此时K1仍处于按下(即闭合)状态,故使J1继电器得电吸合自锁(即使第一个调压器工作)。延时1秒后,K1按钮抬起,使J0支路断电,C1此时将通过并联电阻R1放电,直至C1电压=0.。即K1的抬起过程对J0无影响。
如再按下K2按钮,又使J0立刻得电吸合,由于J0常闭触点断开时刻前于J2吸合的动作时间,故使J1~J3的电源先断开,0.5秒后J0断开,又使3个继电器上端接通24V电源,由于此时K2仍处于按下状态,故使J2继电器得电吸合即自锁。即此过程是先使第一个调压器断电后,再使第二个调压器通电工作。
该电路只容许每次只按一个按钮,按下的瞬间先断开3个继电器电源,0.5秒后才使按下的按钮所对应的继电器得电闭合且自锁,确保只按下按钮所对应的调压器工作。另二路处于断电状态。
2、用单片机与3个继电器等元件组成控制电路,见下图:
电路说明:单片机选用89C2051,其P1.0~P1.2分别接3个继电器(J0、J1、J2),其触点分别作为3个调压器的电源开关。K1、K2、K3分别为3个调压器的启动按钮。
编程思路:与硬件电路动作相似,即:按下任意一个启动按钮(如K1),立即使P1.0~P1.2皆输出为0(使J0~J2皆失电断开),再延时0.5秒(即调0.5秒延时子程序),子程序返回,再使该按钮(K1)对应的输出口(如P1.0)输出为1(高电位),使对应(J0)继电器得电闭合,即右侧图 U1调压器得电工作。
这二种电路相比较,第一种简单易搞,适用于广大电气操作者。
二、求助帖:利用循环移位指令,有一点很疑惑
效果是Q0.0通3秒,断5秒,然后Q0.1通3秒,断5秒,一直循环。为什么改变了定时器顺序,一个程序可以,一个程序就错乱了 。下图为错乱程序,无法理解
情况是接通后,4个灯全部点亮,又好像在瞬间熄灭的趋势,然后又亮了,
下图为正确程序
回复:由T37与T38组成的振荡器,其T37=0的时间为4秒,T37=1的时间为3秒,而T38=1的时间仅为1个扫描周期。
前一段程序由于是用T37=1(3秒)循环左移MB0及显示Q0.0~Q0.3,故使MB0将在3秒内多次重复循环左移,故会造成出现“4个灯全部点亮,又好像在瞬间熄灭的趋势,然后又亮了”现象。而后一段程序是用T38驱动循环左移MB0,由于T38=1仅为1个扫描周期,故每次T38=1,只使MB0循环左移一位,T38=1的下一个扫描周期,T38常闭触点的断开,会使T37=0。故T37的常闭触点闭合,将左移一位后的MB0的低4位分别由Q0.0~Q0.3输出显示,延时4秒,T37=1,其常闭触点断开,又使Q0.0~Q0.3输出皆=0。故后一段程序运行是正常的。
下面根据“Q0.0通3秒,断5秒,然后Q0.1通3秒,断5秒,一直循环”的控制要求,编写的一段程序供参考:
三、求助帖:模拟量计算在强制的时候出问题了
我哪里写错了还是其他的原因,请大神赐教~~~
回复:这是对转换公式“T=(AIW0-6400)*100 / (32000-6400)”编写的整数(字)的运算程序,由于LW0(即AIW0)的取值范围:6400~32000,而运算选用字存储器乘法指令,当AIW0值过大时,必然会造成运算溢出的错误。改正的办法:
1、将AIW0先转换为双字输入给LD0,
2、上式的减、乘、除运算改为双字运算。
改后的程序如下:
本文到此结束,谢谢大家。