您的位置 首页 观点

用S7-200编程的几个实例的编程技巧解析

本文用S7-200编写的几个实例都是在网上发表或在回答网友的求助编写的,程序短小,针对性强,有程序解析,特别适合初学者学习参考。一、网

本文用S7-200 编写的几个实例都是在网上宣布或在答复网友的求助编写的,程序矮小,针对性强,有程序解析,特别合适初学者学习参阅。

一、

网友求助“西门子PLC用一个按钮操控电机启停,不容许用中继,可用计数器定时器…”

答复:只用PLC一条指令,就可完结电机启停。见下图:

该梯形图编程技巧是:在SR触发器的输出端接Q0.0的输出线圈,再用Q0.0的常开与常闭点串接在R、S输入端上,这样的编程处理可保证动作的牢靠性。该梯形图的作业原理阐明,请见“用S7-200编程的三个实例解析”中的第1例。

二、

用S7-200编程,可完结用一个按钮可操控电机的正传、回转、泊车的梯形图

该梯形图编程技巧是:用按钮的输入点(I1.0)衔接断电延时定时器(T101),及通电延时定时器(T102),T101延时为0.2 S,T102延时为1 S,T101效果是防按钮颤抖而构成连发现象,保证按一下按钮只发生一个脉冲(即T101)然后保证对MB5加1运算的正确性,二次接连按钮的时间距离操控在0.5S以下,T102 延时为 1S,故在接连按钮时,因为距离时间小于1S,它不断的被堵截。只要按下按钮不抬起(坚持I1.0=1),当延时大于1S时,T102动作,其前沿将MB5的内容传入MB6,再将MB5清0。

作业原理及操作阐明:

1)开机SM0.1将MB5置1、MB6清0,因为M6.0、M6.1皆为0,使Q0.0与Q0.1都=0,故电机中止不动。

2)电机正传运转:点击一下按钮(I1.0),发生一个(T101=1)的正脉冲,这以后沿触发MB5计数器,使其+1,再按下按钮不抬起,此刻MB5=0000_0010。经1秒延时,T102闭合,其前沿将MB5的内容送入MB6,随之将MB5清0。此刻M6.0=0、M6.1=1,故使Q0.0=1,电机正传运转。随后将按钮抬起,T101的后沿使MB5+1,此刻MB5=0000_0001。

3)电机停转:按下按钮不抬起,此刻MB5=0000_0001。延时1秒后T102动作,T102=1的前沿,将MB5送入MB6,之后MB5清0,此刻M6.0=1、M6.1=0,故Q0.0、Q0,1皆为0,电机中止滚动。当按钮抬起时,T101的后沿触发MB0,使MB5=1。

4)电机回转运转:点击二下按钮(I1.0),发生二个(T101=1)的正脉冲,这以后沿触发MB5计数器,使其+2,再按下按钮不抬起,此刻MB5=0000_0011。经1秒延时,T102闭合,其前沿将MB5的内容送入MB6,随之将MB5清0。此刻M6.0=1、M6.1=1,故使Q0.1=1,电机反传运转。随后将按钮抬起,T101的后沿使MB5+1,此刻MB5=0000_0001。

该程序不需任何外围硬件,并且程序简略,经上机运转检测,程序正确,动作牢靠。能够有用。

三、

网友求助:“s7-300里的定时器t1,怎样循环发动? 现在是,运用完一次,t1就中止了!而我想用T1完结每隔2秒重复一个动作!请我们帮助,谢谢!”

又提出:“其实,我便是想用定时器来完结每隔3秒,QB0循环右移一位。我现在比较菜鸟哈,期望高手们能点拨详细点,最好能有梯形图!嘿嘿,感谢!!”

回复:“ 楼主:依据你的要求“其实,我便是想用定时器来完结每隔3秒,QB0循环右移一位。”我给你编出用S7-200和用S7-300编出的功用相同的梯形图。从图中能够看出,S7-200因为选用字节循环右移指令,所以编出程序简略易懂。S7-300因为没有字节循环右移指令,就得经过编程来到达相同的功用效果,编出的程序相对长了一些,看懂梯形图也相对难了一点。有什么问题能够提出,我能够回答。 ”

解析梯形图:

1、图一是用S7200编写的图形图,其编程技巧有二:(1)用通电延时定时器T101的常闭点衔接T101的线圈构成振动器,其脉冲的低电平为3秒宽度,高电平为接连二个扫描周期的距离时间,即只呈现一次,故可直接用T101的常开触点去触发QB0的循环右移,而不需选用其前沿触发,就可保证QB0只右移一次。(2)、选用字节循环右移指令,在T101=1的这一扫描周期里将此刻刻的QB0内容右移一位,一起又主动的将移出的QB0的最高位(Q0.7)送回QB0的最低位(Q0.0)(如不需循环右移,可改用字节右移一位的指令),使编程简略易懂。

2、图二是用S7300编写的图形图,其编程技巧也是运用T101构成的振动器,使用该振动脉冲的正方波在程序扫描中只呈现一次的特色,完结将QB0右移一位。因为S7-300没有字节移位指令,编程是这样处理:将QBO送入MW7的低字节MB8中,右移一位MW7,MB8也随之右移一位, MB8的最高位移到MB7的最低位(即M8.0),再把M8.0送入M7.0中,再把MB8送回QB0,然后完结了将QB0内容的循环右移一位的功用,如程序不需要循环右移,可将“M7.0àM8.0”这条句子去掉就能够了。

四、

网友求助:“怎么把一个字节的全部位,高位低位反向重排。”

回复:现用S7-200编出一个字节内容反摆放的程序梯形图,供你参阅
程序解析:该程序编程的技巧便是奇妙地运用字节的循环左移与字节右移:MB10为原数据,MB12为转化后的反摆放数据,发动此程序,先将MB0=7,再使M1.0、M1.1置1。M1.0=1,先将M10,7àM12.7,再将MB10循环左移一次,这样原MB10的内容左移一位,原M10.0àM10.7,而MB12右移一位,M12.7àM12.6, 0àM12.7’,接着MB0减1,再判别MB0等不等0,不等0,下一周期再进行上述移位运算及判别,当MB0=0时,MB10循环左移7次,一起使M1.0=0,中止此段程序再运转,M1.0=0、M1.1=1,使MB10又右移一位,使MB10正好恢恢复数值,而MB12的内容变为MB10的内容的反摆放数值。

因为PLC指令没有位信号交流指令,关于字或双字的内容反摆放用此思路编程最好,对单字节也可这样编程:将M10.7-->M12.0 M10.6-->M12.1 M10.5>M12.2 M10.4-->M12.3 …..M10.0-->M12.7即可。再将MB12-->MB10,就可完结将一个字节的内容反摆放仍放在原字节中。

五、

网友求助:“用西门子200梯形图编写总共有八个灯泡,通电后第一个灯泡亮三秒灭五秒接着下个灯泡亮,直到第八个灯泡亮三秒灭五秒后主动返回到第一个灯泡持续循环,你搞下,我那天面试的标题,不是很难,但也没编好”

回复:依据你的要求用S7-200给你编出如下梯形图.,供你参阅。如有看不理解之处,可奉告,给你解说。

程序解析:该程序编程的特色,便是奇妙地运用T101、T102构成的振动器与MB8的循环左移相结合,使编出的程序矮小精粹:T101与T02二个定时器构成负3秒正5秒的方波振动器,使用T102=1只占1个扫描周期将MB8循环左移一位,这样用MB0中的各位为信号与T101的常闭点相与,去衔接QB0的各个位输出,就可到达操控意图。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/news/guandian/234208.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部