登录
首页 PLC论坛 PLC论坛
回帖 发帖
正文

主题:用硬件配合PLC解决较难命题的编程实例解析

点击:2781 回复:12

用硬件配合PLC解决较难命题的编程实例解析
       第一例:
      有一网友求助:“大家好,我问一个问题,就是有三个输入,一个代表电机正传,一个反转,一个停止,输出只有一个,来控制三项电机的正反转,怎么实现啊? 需要说明,输出点只有一个,同时也可以在输出点处设计一些外部电路来实现,请大家给个解答,谢谢啦 请问师傅们,这个难题可以实现吗?还是不能实现啊?呵呵
    增加一下说明:就是普通的异步电机,用西门子S7-200plc来控制。三个输入点,但是仅剩下一个输出点,而且要求控制必须通过PLC才行,呵呵,谢谢大家了”
     答复:对PLC的编程者来说,这是一个较难的命题。但它可以锻炼编程思维,算是一个好帖。该命题的关键点就是如何用一路的输出信号来实现对电机的正转、反转、停车这3种功能的控制。
显然通常输出的导通或截止的开关命令是无法实现的。但我们可换个思路:当按下正传、反转或停车按钮时,PLC的一路输出是3种不同波形的信号,再设计一个能识别这3种信号并能使电机执行正反转或停的电路与PLC的输出端相连,就可解决这个难题。        
下面我用这种思路编出二种设计方案供大家分析参考。一个是用电子线路协助完成,另一个是用定时器、继电器配合来实现这个功能。
                       一、用电子线路协助PLC完成这个命题的设计方案
       在PLC内编程,完成如下工作,3个输入分别产生不同脉冲个数的脉冲串,由一个输出口输出,比如正传按钮按下,输出口输出一窄一宽二个脉冲,反转按钮按下,输出口输出一窄二宽三个脉冲,按停止按钮,输出口输出一窄三宽四个脉冲。见下图:

       该梯形图解析:I1.0为正转按钮,I1.1为反转按钮,I1.2为停止按钮,按I1.0,其抬起(后沿)使M2.0=1,按I1.1其后沿使M2.1=1,按I1.2其后沿使M2.2=1,它们的前沿都会使M2.3=1,M2.3的前沿,使MB0=0,同时使T96得电延时,同时M2.0=1或M2.1=1或M2.2=1又使T32得电延时。延时1mS,T96动作使M2.3=0,形成1mS的窄脉冲输出。再延时4mS,T32动作,其常闭触点断开,,下一个扫描周期,T32断电,常闭点闭合,T32又得电进行5mS的延时…于是形成振荡。每出现T32其前沿使MB0+1,当M2.0=1时,第一个T32的后沿使M2.0=0,当M2.1=1时,第二个T32的后沿使M2.1=0,当M2.2=1时,第三个T32的后沿使M2.2=0,M2.3与T32相或输出与Q1.0,故按I1.0、I1.1、I1.2按钮可输出3种不同的脉冲波形。
       PLC的输出口Q1.0接下图控制电路:

1、硬件构成:该电路由3个4013双D触发器、一个4011与非门、3只晶体管、3个二极管、3个小型继电器及几个电阻组成。其U1A构成为单稳态电路,U2A、U2B构成为2位计数器。(元件费用不到30元钱,再加印刷板,50元即可搞定。)
        2、动作原理:PLC输出侧的0V接控制板的地,Q1.0输出口接二个2K电阻串联,分压点接集成块U4D输入端,实现电平转换。U1A是个单稳态电路,输入脉冲的第一个窄脉冲后沿触发U1A的CLK端,使U1A的Q端产生一个负方波,其脉宽大于上图中的M2.2脉宽,它控制U2构成的2位计数器的清零端R,R端置1,计数器清0且不计数,R的电位=0,容许计数器计数,如按正传I1.0,计数器计数为“01”,如按反转I1.1,计数器计数为“10”如按停止I1.2,计数器计数为“11”,U3与非门构成译码器,当计数器输出为“00”3个与非门输出皆为1,当输出为“01”左侧与非门输出为0,其它二个为1,但输出为“10”,中间与非门输出为0,当输出为“11”时,右侧与非门为0,就是说按那个按钮,其对应的与非门输出=0。3个与非门的输出,取最上面3个D触发器的D端,当UA单稳态脉冲的后沿正跳,触发这3个D触发器,只有D端电压=0的D触发器的输出为1,使对应的继电器导通吸和,完成控制作用。
                           二、用定时器与继电器协助PLC完成这个命题的设计方案
                      (一)、硬件电路设计:
      1、选用1个小型直流继电器J0和3个晶体管式定时器JI—J3,其J1、J2为断电延时定时器,J1定时为0.3秒,J2定时为0.5秒。J3为通电延时定时器,定时为0.7秒。3个定时器工作电压为24V,并接在一起,其一短接PLC输出侧电源的公共地(即24V电源的负极),另一端接PLC的输出口Q1.0,如下图一所示。
      2、选用二个交流接触器Z1与Z2,和一个小型交流中间继电器Z3,按下图二连接,接入~220V电源。
      3、选用3个按钮开关(不自锁型)连接PLC输入口:I0.0 为电机正传按钮,I0.1为电机反转按钮,I0.3为电机停车按钮(不出图)

                  (二)、PLC编程构思及编程:
        PLC只有一个输出口控制电机的正反转及停车,这样就要求输出口能有3种输出状态:第1种为输出脉宽=0.5S 的单脉冲,作为正转的启动信号。第2种为输出脉宽=0.3S的单脉冲,作为反转的启动信号。第3种为输出脉宽=0.1S的单脉冲,作为停车信号。见下图四。
       1、当按下正转按钮Q1.0输出第1种脉冲波形信号(脉宽=0.5S的单脉冲)给J1-J3定时器,其脉冲使J0、J1、J2 立即吸合,脉冲结束,J1延时0.3秒断开,J1通导0.8秒,J2延时0.5秒断开,J2通导1秒。而J0吸合使J3得电开始延时,延时0.7秒,使J3吸合,J3吸合时,J1与J2均处于吸合状态(见上图一左下角左1图波形图),故使接触器Z1得电且自保。电机正转启动。
2、当按下反转按钮Q1.0输出第2种脉冲波形信号(脉宽=0.3S的单脉冲)给J1-J3定时器,其脉冲使J0、J1、J2 立即吸合,脉冲结束,J1延时0.3秒断开,J1通导0.6秒,J2延时0.5秒断开,J2通导0.8秒。而J0吸合使J3得电开始延时,延时0.7秒,使J3吸合,J3吸合时,J1已断开,J2处于吸合状态(见上图一左下角左2图波形图),故使接触器Z2得电且自保。电机反转启动。、
3、当按下停车按钮Q1.0输出第3种脉冲波形信号(脉宽=0.1S的单脉冲)给J1-J3定时器,其脉冲使J0、J1、J2 立即吸合,脉冲结束,J1延时0.3秒断开,J1通导0.4秒,J2延时0.5秒断开,J2通导0.6秒。而J0吸合使J3得电开始延时,延时0.7秒,使J3吸合,J3吸合时,此时J1与J2均处于断开状态(见上图一左下角左3图波形图),故使接触器Z3得电吸合,其常闭点断开,使Z1与Z2断电,电机停车
根据以上的程序动作的构思,可编写PLC的控制程序,见下图:
 
程序动作分析:
1、 按下正转按钮,使 I0.0=1,抬起时,使M2.0=1,使T101 得电开始延时,延时0.5秒动作使M2.0=0,M2.0输出给Q1.0,使电机正向运行。
2、按下反转按钮,使 I0.1=1,抬起时,使M2.1=1,使T102 得电开始延时,延时0.3秒动作使M2.1=0,M2.1输出给Q1.0,使电机反向运行。
3、按下停车按钮,使 I0.2=1,抬起时,使M2.2=1,使T103 得电开始延时,延时0.1秒动作使M2.2=0,M2.2输出给Q1.0,使电机停车。
以上二种方案,均可实现“用3个按钮控制一路输出,实现电机正反转及停车的命题”,不过都得配合硬件方可实现。相比第二方案显得简单易搞。但造价比第一方法贵一些。
          第二例:
    网友求助:1、“3000米井下工具有两台直流电机 用三颗线如何控制两台直流电机的正反转(三颗线既包括主电路,也包括控制电路友求助:”
2、“引用wyb2866255 的回复内容:楼主:“两台电机需要分别控制正反转”的要求能否说的再详细点,像正常控制二台电机的正反转控制吗?互不关联?
________________________________________
就是两台电机都能自由地单独地正转或反转。”
答复: 根据你的二次说明,我设计了如下控制电路,此电路放在井下,控制线可输出6、种脉冲数不等的脉冲串,控制板4 电源的地线与电机电源的负极相连接。

1、动作原理说明:
控制线可输出6种脉冲串,分别代表电机1、2的正反停6种控制状态,其波形见左侧波形图:第一个脉冲的后沿,触发U1A单稳态,使其输出一负脉冲,脉冲宽度大于7个脉冲串的宽度,该脉冲一方面关闭U7D与非门,同时使计数的复位端R-0,在此宽度内,容许4520计数器从0开始加计数,显然电机1正传计数1,电机1反传计数2,电机1停止计数3 ....... 二块4073三输入与门组成译码器,计数器输出0 ,6 个与门输出皆为0。计数器计数为1,U5A门输出为1,其余5门输出为0,计数器计数为2,U5B门输出=1,其余5门输出为0 ……6 个与门的输出分别接40174六D触发器的D0 – D5 数据端,当U1A单稳态输出的负脉冲的后沿正跳沿,触发U1B单稳态,产生脉宽为1S的负脉冲,同时U1A单稳态输出的负脉冲的后沿正跳沿触发40174的CLK控制端,如此时计数器计数为1(即控制线输出电机1正传),使U5A输出=1(即40174的D0=1),使40174的Q0输出=1,Z1接触器得电吸和且自保,电机1正传。U1A单稳态输出的负脉冲结束后输出为1,使计数器4520 复位,使计数输出=0,6个与门输出也皆为0。当U1B单稳态产生脉宽为1S的负脉冲结束后,其后沿正跳,又触发40174的CLK端,使其输出全为0,故40174 的Q0端输出是一个宽度=1S的点动信号。如控制线再输出电机1停止信号时,使计数器计数=2,40174的Q2端输出1S的正脉冲,使继电器J1吸和(1S),其常闭点断开,使Z1断电,电机1停车。其它控制状态与上述雷同就不一一说明。
2、 PLC的编程构思与编写的梯形图的解析:
(1)、硬件连接:选用6个按钮,分别与PLC的 I0.0 – I0.6六个输入口相连接,再用PLC的一个输出口(Q1.0)与上述的控制电路板的“控制线输入”端相连。其1#电机正转启动按钮接I0.0,1#电机反转启动按钮接I0.1,1#电机停车按钮接I0.2,而其2#电机正转启动按钮接I0.3,2#电机反转启动按钮接I0.4,2#电机停车按钮接I05。
分别按6个按钮,将会在Q1.0输出口输出6种不同个数的脉冲串,其波形见上图中的下侧波形图。
(2)、PLC程序的梯形图见下图:

程序解析:按下1#电机正向启动按钮,使I1.0=1,其后沿使MW8=0,M2.0=1,M3.0=1,T100开始振荡,产生周期=10ms的窄脉冲,开始对MB8加1计数,当MW8=4时,比较器输出使M2.0=0,振荡器停振,此时,Q1.0输出为只有二个脉冲的脉冲波形。同理按下1#电机反向启动按钮,使I1.1=1,其后沿使MW8=0,M2.1=1,M3.0=1,T100开始振荡,产生周期=10ms的窄脉冲,开始对MB8加1计数,当MW8=6时,比较器输出使M2.1=0,振荡器停振,此时,Q1.0输出为只有三个脉冲的脉冲波形。。。这6个按钮的编程基本一样,只是对应比较器的比较值不一样,使Q1.0的输出波形的脉冲个数不同。
   上面二例,乍看起来其命题都很难,但用硬件配合PLC,就可解决这个难题,而且使PLC的编程程序也变得很简单。这告诉我们这样的问题:学习PLC编程不仅仅要熟练PLC的编程指令的内涵及用法,还要扩大知识面,提高分析与解决问题的能力。
最后给大家留一个作业题:只用一个按钮,PLC只用一路输出,控制电机正转、反转及停车的项目设计,希望大家踊跃参与。
                                  谢谢!
附件
附件
附件
附件
附件
附件
最后修改:2011/4/25 7:52:47
11-04-25 00:05
少了一张图片,考虑插图不在文中原有位置,从新以资料上传。
附件:
[本地下载]
11-04-25 00:12
楼主能否把图片跟文字配合一起发送啊
11-04-25 02:31
2楼:你可到顶楼帖里 点击“[本地下载]”就可看到原文。
    你提的问题正是我要想解决的问题,本来是在文中某出粘贴图片,结果编辑后图片不再应贴处出现都跑到文章后面。如你会请告知,谢谢!
11-04-25 08:09
我也不怎么明白你说的什么意思啊
11-04-25 13:42
4楼:我说的顶楼是本文下面的第一个回帖,是我发的。其内容为:“从新发帖
少了一张图片,考虑插图不在文中原有位置,从新以资料上传。
     附件下载: [本地下载] [迅雷专用高速下载] ”
   你只要点击[本地下载],就可看到全文,而且各个插图都在原位,方便阅览。
11-04-25 15:53
学习
11-04-25 21:03
微电子技术与PLC技术完美融合
11-05-07 09:58
学习
11-05-09 11:41
好贴,谢谢分享!
11-06-14 16:19

上一页下一页

工控新闻

更多新闻资讯