西门子plc s7 200-200 按键按第一下Q0.0亮 第二下Q0.0灭 这样写程序为什么不行呢。。。。

用S7-200编写的二个小程序及解析
给TA发消息
加TA为好友 发表于: 08:57:43 楼主
&&&&&&&&&& &&&各位大侠,请问在s7-200中用普通开关做一转信号,能检测到每秒50个脉冲吗,我用来检测转速。谢谢&& &回复:完全可以,如转速在50HZ左右,用普通输入口输入开关的检测信号就可以,用不着使用高速计数器。为使测得转速准确,计数采样可适用SM0.5 秒脉冲,方法是:用SM0.5的前沿(或后沿)对MB10进行加1计数,其M10.0将输出正负脉宽都=1秒的方波,再用M10.0与接测转速的输入点(如I0.1)脉冲的前沿串联,对MB0进行计数,其MB0的计数值即为转速。见下图:(I0.1接测转速开关)&& 又问:我想用I0.1的立即输入点和上升沿还行吗解答:完全可以。这里的M10.0=1的前沿先将MB0 清零,确保在M10.0=1脉宽(=1秒)内,用I0.1的前沿对MB0进行从0 开始的加计数,并可确保每一个I0.1=1的脉冲,MB0只加1,当M10.0=0时,MB0 的计数值就=转速,此值可保持1秒(即M10.0=0的时间内,可供显示或记录)。如不用前沿(或后沿)直接用I0.1计数,则在I0.1=1的时间内,MB0将不停地加1计数,其值就不是转速了,切记一定要用沿触发计数。&二、求助:我是想要一个脉冲输出口,先发100个,隔10S再发100个,这样子循环。& 请高手指点!谢谢回复:给你编个程序供参考:&&SBR_0 &时间中断初始化子程序& INT_0 中断子程序&&& 产生周期=0.1秒的脉冲&&&& 程序解析:本程序是采用50ms时间中断产生0.1秒的脉冲(M4.0),用它对MB2进行加1计数,MB2每计满100,时间正好=10秒,再使MB0 加1,其M0.0将为正负脉宽都=10秒的方波脉冲,用它与M2.0相串联,输出给Q0.0,就可实行10秒内输出100个脉冲,停10秒后再在10秒内输出100。。。。&&& 以上是用S7-200编程,由于S7-200无0.1秒时钟脉冲,故用时间中断来产生0.1秒脉冲。如用欧姆龙编程就可直接用0.1秒时钟脉冲来计数,可省掉时间中断简化程序&&&& 如果想缩短输出100个脉冲的时间,仍保持停10秒再输出100个脉冲,可提高输出的脉冲频率,但如仍用普通输出口做输出,其输出频率应控制在100~200HZ以下,下面就是用定时器构成振荡脉冲编写的程序:这个程序的输出脉冲频率=100HZ,输出100所用时间为1秒,涉及编程技巧有几处:1、S7-200的PLC最小的计时单位为1ms的定时器只有4个,为留做它用,故选用的定时器T99与T100(其最小的计时单位为10ms),各定时为10ms,其振荡频率=50HZ,为获得100HZ振荡脉冲,采用T100的前后沿接断电延时定时器T96,延时时间设定为5ms,这样由T96构成的脉冲其频率=100HZ,脉宽为5mS。用它输出给Q0.0,就可使Q0.0 输出完整的脉宽皆=5ms的100个脉冲。2、定时器T99与T100构成50Hz可控振荡器,即:M1.0=0时振荡,M1.0=1时停止振荡。 用MB0与100比较,如相等,使T101得电且开始10秒延时,在此期间,使M1.0=1,故使T99与T100构成50Hz可控振荡器停振,使Q0.0 在10秒无输出脉冲。T101延时时间到,T101=1,使MB0=0,又使M1.0=0。T99与T100构成50Hz可控振荡器又开始振荡,Q0.0 又开始输出脉冲。&&
给TA发消息
加TA为好友 发表于: 09:39:05 1楼
顶一个&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
给TA发消息
加TA为好友 发表于: 10:02:00 2楼
谢谢楼主的梯形图和解析!
给TA发消息
加TA为好友 发表于: 10:06:52 3楼
问问楼主第二题100个脉冲的频率是多少?
给TA发消息
加TA为好友 发表于: 10:50:18 4楼
理想状态,脉冲很均匀发出,普通输入点是可以的,但实际上很可能丢脉冲,因为有些脉冲发生的时间很短,虽然每秒发的脉冲个数不多。
给TA发消息
加TA为好友 发表于: 11:05:05 5楼
希望楼主和各位PLC工作者进QQ群:,一起共同研究专业,发展自身。
给TA发消息
加TA为好友 发表于: 12:17:46 6楼
&&&& 回3楼:第二题由Q0.0输出的100个脉冲的频率为100HZ,其原因:T99与T100构成50HZ振荡器,该脉冲的正负方波脉宽都=10ms,用其前后沿驱动T101(定时5ms ),其T101就变成脉宽=5ms,周期=100HZ的方波脉冲,有T101输出给Q0.0,故Q0.0输出的100个脉冲的频率为100HZ。发送100个脉冲的时间=1秒。&&& 如用100HZ频率通过普通输出口输出,一定选用晶体管输出口,我用普通口做输出数据给打印机完全可以,这已是有10年历史了,不用担心丢脉冲。&
给TA发消息
加TA为好友 发表于: 09:26:37 7楼
感觉还是用PTO和定时中断好些,楼上的程序受扫描周期的影响可能会出现脉冲的不均匀
周点击排行周回复排行
[234] [150] [133] [90] [83] [81] [67] [48] [43] [41]
[13] [8] [7] [7] [6] [4] [3] [3] [3] [3]最新求助
[0] [1] [0] [3] [1] [4] [6] [4] [42] [4]s7-200双整数_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
s7-200双整数
上传于|0|0|暂无简介
阅读已结束,如果下载本文需要使用1下载券
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩4页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢S7-200带参数调用的子程序运行为什么异常? -- 廖老师的博客 -- 工控网博客
我编写的教材《S7-200 SMART PLC编程及应用》(第二版)出版了,该书按S7-200 SMART的V2.0硬件和软件改写,有40多个实验的指导书。
19:57:31 | Author: 廖老师 ]
Jiancheng网友问:S7-200两个子程序的局部变量和程序完全相同(见下面的右图),运行时发现I0.0为1时Q0.0和Q1.0同时变为1。将置位指令改为对L0.1的赋值(线圈)指令后运行正常,将OUT参数“输出”改为IN_OUT参数运行也正常。为什么?
INOUTLL0.1
OB1I0.01 SBR_0L0.1Q0.0SBR_1L0.1SBR_1L0.11Q1.01Q1.01L0.1
2OUTIN_OUT
Q1.00I0.01L0.1IN_OUTSBR_1L0.10SBR_0L0.1I1.00SBR_1L0.10Q1.001
I0.01I1.00SBR_1L0.0L0.1Q1.00
S7-300FCS7-200S7-300FC1FC2S7-300S7-200INOUTS7-300FCTEMPINOUTLS7-300
S7-200用得少,用S7-300的时候心里的弦是:要知道局部变量用之前(或者说上一次的值)到底是什么值,或者要明确赋值。却很少考虑到例子中的物理存储区域问题。
回复:S7-200带参数调用的子程序运行为什么异常?
13:36:13 | Author: 8002288 ]
进来学习 学习文档分类:
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,
下载前请先预览,预览内容跟原文是一样的,在线预览图片经过高度压缩,下载原文更清晰。
您的浏览器不支持进度条
下载文档到电脑,查找使用更方便
还剩?页未读,继续阅读
播放器加载中,请稍候...
该用户其他文档
下载所得到的文件列表200PLC 第二课.ppt
文档介绍:
S7-200 可编程控制器的指令系统一)梯形图(LAD)编程语言LAD 是与电气控制电路图相呼应的一种图形语言,其信号流向清楚、简单、直观、易懂,很适合电气工程人员使用;常作为第一用户语言。二)功能块图(FBD)FBD 类似于普通逻辑功能图,一般用一种功能方框表示一种特定的功能,框内的符号表示该方框图的功能。(三)语句表(STL)STL是用助记符来表达PLC的各种控制功能,类似于计算机的汇编语言。S7-200 可编程控制器的指令系统?二、数据类型?1. 基本数据类型?1位布尔型(BOOL)、8位字节型(BYTE)、16位无符号整数型(WORD)、16位有符号整数型(INT)、 32位无符号双字整数型(DWORD)、 32位有符号双字整数型(DINT)、32位实数型(REAL)?(二)数据长度和数值范围?数据长度:用字节型(B)、字型(W)、双字型(D)分别表示8位、16位、32位数据;?三、存储器区域?PLC的存储器分为:程序区、系统区、数据区?程序区:存放用户程序,存储器为:EEPROM?系统区:存放有关PLC配置结构的参数,存储器为:EEPROMS7-200 可编程控制器的指令系统?数据区:是S7-200 CPU 提供的存储器的特定区域,将数据存储区作了进一步的分区,并为每个存储区域赋予了不同的功能,形成专用的存储单元。包括:I、Q、V、M、S、SM、L、T、C、AI、AQ、AC、HC;存储器为:EEPROM和RAM。?(一)数据区存储器的地址表示格式?1. 位地址格式?由存储器区域标识符、字节地址及位号构成?例如:V5.4S7-200 可编程控制器的指令系统?2. 字节、字、双字地址格式?由存储器区域标识符、数据长度以及该字节、字或双字的起始地址构成?例:VB100、VW100、VD100分别表示字节、字、双字的地址?3. 其他地址格式——包括T、C、AC、HCS7-200 可编程控制器的指令系统?5、用户程序的结构?用户程序可分为三个区:主程序、子程序和中断程序?主程序(OB1):是用户程序的主体,CPU在每一个扫描周期都要执行一次主程序指令;?子程序:可选部分,只有主程序调用时才执行;?中断程序:可选部分,只有当发生中断事件时,才执行中断程序,可在扫描周期的任意点执行。?6、编程的一般规约?(6.1)网络?在梯形图(LAD)中,程序被分成称为网络的一些程序段,而每一个网络由一个或多个梯级组成;?功能块图(FBD)中,使用网络概念给程序分段;?语句表(STL)中,WORK”关键词对程序分段S7-200 可编程控制器的指令系统?6.2、梯形图(LAD)/功能块图(FBD)?梯形图(LAD)中,一个梯级是一个完整的“电路”,不允许“短路”、“开路”,也不允许“能流”反向流动;?功能图(FBD)中,输入总在框图的左边,输出总在框图的右边。S7-200 可编程控制器的指令系统?一、电动机启、停控制程序?采用两个按钮控制电机的启动、停止。?二、闪烁电路?采用I0.0外接灯泡电源开关SB1,Q0.0外接灯泡,控制灯泡的亮与灭,并且设定闪烁间隔时间为1秒?三、报警电路?I0.0外接报警启动信号,I0.1外接报警复位信号,输出Q0.0为报警蜂鸣器,Q0.1为报警闪烁灯,闪烁效果为报警灯的亮与灭,时间间隔为1秒输入点名称输出点名称I0.0启动信号Q0.0蜂鸣器I0.1复位信号Q0.1闪烁灯S7-200 可编程控制器的指令系统?四、水泵控制?要求:?1、液位机量程0—3米,对应输出信号0—10V,通过电位机进行模拟介入PLC模块的模拟量输入专口。要求PLC正确读取液位机的输出信号转换成水池的液位。?2、水泵控制具有手动与自动两种模拟。?3、自动模拟:PLC内部根据液位至控制水泵的启动和停止,水泵在液位上升至2米时启动,降到1米时停止。?4、手动模拟:水泵通过按钮手动启动/停止。?5、上升到2.5米时,触发液位超上限报警,故障指示灯常亮。?6、对水泵的运行状态进行检测,当水泵运行信号输出后,检测水泵运行反馈信号。如水泵运行信号,输出1秒后未收到水泵运行反馈信号,则故障指示灯闪亮,同时复位水泵运行信号。?7、故障状态自保持,当故障原因消除且按下复位按钮事,故障复位。?8、ALW0 输入信号0—10V,对应PLC寄存器数量0—3200D,输入信号5路。?I0.0:自动手动模拟装换开关SA0,当I0.0接通时为自动模拟,I0.0断开时为手动模拟状态。?I0.1:水泵手动启动按钮SB1,常开点。?I0.2:水泵停止按钮SB2,常闭点。?I0.3:故障复位按钮SB3,常开点。?I0.4:水泵运行状态反馈,正常状态下,水泵运行信号输出后接通,水泵运行信号断开后断开。S7-200 可编程控制器的指令系统?Q:输出信号四路,?Q0.0:自动模拟指示灯HL0. ?Q0.1:水泵运行状态指示灯HL1. ?Q0.2:故障指示灯HL2,超液位报警时常亮,水泵反馈信号异常报警时闪亮。?Q0.3:水泵运行输出KA3。?根据“液位机量程0—3米,对应输出信号0—10V”可得出:1米对应3.33V,2米对应6.67V,2.5米对应8.33V,再由“ALW0 输入信号0—10V,对应PLC寄存器数量0—3200D”可得出:1米对应数字量10667,2米对应数字量米对应数字量2 可编程控制器的指令系统?动作原理:1、I0.0自动/ 手动,模拟开关,当改变它的状态时,其前后沿都使Q0.3=0,目的是确保进入自动模拟或手动模拟状态时,水泵都处于停止状态。 2、I0.0=0(手动模拟状态):按一下启动开关I0.1,使Q0.3=1,水泵运行,按一下启动开关I0.2,使Q0.3=0,水泵停止。3、I0.0=1(自动模拟状态):当液面上升2米高时,模拟块输出的数字量ALWO=21333,图中2M支路的比较器动作,使Q0.3=1,水泵运行。同时T100得电开始延时,延时1秒时,如I0.4=1(即水泵运行状态反馈正常状态下),其常闭点断开,不会触发M2.0,即不报警,但如I0.4=0(即水泵运行状态反馈异常状态),其常闭点闭合,将触发M2.0,使M2.0=1,Q0.2闪动输出,即发出反馈异常报警。当液面高度低于1米时,ALWO&10667,第二个比较器动作,使Q0.3=0,水泵停。当液面高度高于2.5米时,ALWO&26667,第三个比较器动作,使Q0.3=0,水泵停。又使M2.1=1,Q0.2=1,发出故障报警。处理完故障后,按一下I0.3,其M2.0与M2.1=0,复位。1
内容来自淘豆网转载请标明出处.您现在所在的是:
西门子SIEMENS
→ 浏览主题:
* 帖子主题:
文章数:16
年度积分:50
历史总积分:340
注册时间:
如何用plcs7-200编写一个日期时间程序,cpu是222cn,模拟量模块是em231,由于最近面临毕业,做毕业论文,老师给布置的题目是用plc控制的洒水系统,实现分时分段供水,就是隔三个小时运行十分钟这样的一个程序,最近一直在研究这个程序,可是现在还没进展,而且马上就要交论文了,现在还没做出来,真是愁死人了,55555....希望哪位高手出手相助,帮忙写个程序参考一下,将不胜感激。
guangyuxbl
文章数:507
年度积分:72
历史总积分:2459
注册时间:
S7-200 &222CPU内部不具备时钟软件,无法编程时钟程序。
文章数:113
年度积分:65
历史总积分:1027
注册时间:
6ES-0XA0 & todr读时钟。
文章数:113
年度积分:65
历史总积分:1027
注册时间:
隔三小时不用时钟,用定时器或计数器就可以了。
文章数:410
年度积分:71
历史总积分:2735
注册时间:
这孩子,在西门子找答案,技术论坛,都发了该帖,一字不差。
文章数:37832
年度积分:1971
历史总积分:62380
注册时间:
2016论坛优秀版主
2015论坛优秀版主
2014论坛优秀版主
2014相约国庆
2013论坛优秀版主
2012论坛优秀版主
2011论坛贡献奖
2010年论坛优秀版主
换CPU224吧,自带时钟的;
搞设计玩没事,如果是现实运用还需要一个电池卡,不带电池卡时如果PLC连续不通电超过一个星期,内部的时钟就没了;
文章数:16
年度积分:50
历史总积分:340
注册时间:
回复 #3楼 haoqibo
怎么用定时器和计数器呢,能给编写个程序看一下吗,我的邮箱是,谢谢了
cfm6662008
文章数:2629
年度积分:673
历史总积分:7681
注册时间:
2016国庆活动(三)
上电运行,做个3h10min的矩形波
2013我来了,多看,多问,多实践
天道酬勤,事在人为
xiangzi4772
文章数:132
年度积分:171
历史总积分:1643
注册时间:
就是用延时和计数器联合做3小时延时开关。思路就是这样,下面这个我自己都觉得有问题,可不想改了,你再弄弄吧。看你这样想起自己当年像狗一样的找资料做毕设来了,我要是学的这个现在早成工程师了,可惜学的算艺术类的专业,现在干的是机械加工的工作,和电气基本绝缘。
Network 1
// 计时器255计时1分钟发出一次脉冲。q0.0闭合时不计时。
LD & & I0.0
AN & & T255
AN & & Q0.0
TON & &T255, 600
Network 2
// 一分钟脉冲累计180次,即3小时计数器闭合
LD & & T255
LD & & C1
CTU & &C1, 180
Network 3
// 计数器置位中间继电器m0.0
LD & & C1
S & & &M0.0, 1
Network 4
// m0.0启动Q0.0工作同时定时器254开始计时时间为10分钟
LD & & M0.0
= & & &Q0.0
TON & &T254, 6000
Network 5
// 计时器254时间到复位m0.0
LD & & T254
R & & &M0.0, 1
文章数:2436
年度积分:58
历史总积分:4407
注册时间:
此楼内容不符合板块规定,不予显示!
工控学堂推荐视频:

我要回帖

更多关于 s7 300plc 的文章

 

随机推荐