
6ES7972-0BA12-0XA0
DP 接头, 90 度出线, 不带 PG 接口
西门子与客户携手,让关键所在,逐一实现
联 系 人: 黄勇《黄工》 24小时联系手机: 13701633515
凡在公司采购西门子产品,均可质保一年,假一罚十
编程语言种类很多,各有各的优势,语句表和指令表类似,是编程语言的一种,在PLC中应用比较普遍,也是一种高级编程语言,PLC中语句表、梯形图、SCL等编程语言的特点:
这是位于其它编程语言之上的图形语言,用来编程顺序控制的程序(如:机械手控制程序)。编写时,工艺过程被划分为若干个顺序出现的步,每步中包括控制输出的动作,从一步到另一步的转换由转换条件来控制,特别适合于生产制造过程。
西门子STEP7中的该编程语言是S7 Graph。
2、梯形图(LAD-LAdder Diagram)
这是使用使用最多的PLC编程语言。因与继电器电路很相似,具有直观易懂的特点,很容易被熟悉继电器控制的电气人员所掌握,特别适合于数字量逻辑控制。
梯形图由触点、线圈和用方框表示的指令构成。触点代表逻辑输入条件,线圈 代表逻辑运算结果,常用来控制的指示灯,开关和内部的标志位等。指令框用来表示定时器、计数器或数学运算等附加指令。
在程序中,最左边是主信号流,信号流总是从左向右流动的。
不适合于编写大型控制程序。
3、语句表(STL-STatement List)
是一种类似于微机汇编语言的一种文本编程语言,由多条语句组成一个程序段。语言表适合于经验丰富的程序员使用,可以实现某些梯形图不能实现的功能。
4、功能块图(FBD-Function Block Diagram)
功能块图使用类似于布尔代数的图形逻辑符号来表示控制逻辑,一些复杂的功能用指令框表示,适合于有数字电路基础的编程人员使用。功能块图用类似于与门、或门的框图来表示逻辑运算关系,方框的左侧为逻辑运算的输入变量,右侧为输出变量,输入、输出端的小圆圈表示“非”运算,方框用“导线”连在一起,信号自左向右。
5、结构化文本(ST-Structured Text)
结构化文本(ST)是为IEC61131-3标准创建的一种专用的高级编程语言。与梯形图相比,它实现复杂的数学运算,编写的程序非常简洁和紧凑。
STEP7的S7 SCL结构化控制语言,编程结构和C语言和Pascal语言相似,特别适合于习惯于使用高级语言编程的人使用
直线销售 电 话: 021-31660605 在 线 商 务 QQ: 77956468
花30秒询价,你会知道什么叫优势;花60秒咨询,你会知道什么叫服务;
合作一次,你会知道什么叫质量!以质量求生存,以信誉求发展。
我公司将提供一流的质量,服务作为自已最重要的责任。
西门子PLC指令表IL与梯形图或语句表编程有啥不同
1、顺序功能图(SFC-Seauential Fuction Chart)
西门子PLC的电源指示灯不亮怎么处理
西门子PLC电源灯不亮原因1、 检查是否有终端螺丝松动或者导线断开的情况;
西门子PLC电源灯不亮原因2、更换电源模块。
西门子PLC电源灯不亮原因3、确认外部供电电源是否正常;
西门子PLC电源灯不亮原因4、 OMRON 的AC110/220 通用的电源模块会有短接片,短接即为AC110V,断开即为AC220V;
PLC普通计数器的最高计数频率的问题
虽然工作了3年,也用了3年的西门子PLC,但是有个问题一直没注意过,工作中也没碰到过这个问题。西门子的计数器C1、C2等最大能接受什么频率的脉冲呢?什么时候必须采用高速计数呢?这个是看PLC的什么指标算出来的?
答:PLC的计数器在计数脉冲的上升沿时计数。计数器实际上是一种“软件”计数器,与PLC的扫描工作方式有关。PLC在每个扫描周期开始的时候读取数字量输入的值。如果前一扫描周期读取的是0、本次扫描周期读取的是1,操作系统就知道出现了计数脉冲的上升沿,将计数器的当前值加1或减1。下图假设PLC的扫描周期和计数脉冲的周期都是恒定的。如果计数脉冲的周期小于2倍扫描周期,就会丢失计数脉冲的上升沿。实际上PLC的扫描周期不是恒定的,由于程序的跳转或中断等原因,都会使扫描周期增大,导致丢失计数脉冲的上升沿。计数脉冲的高电平和低电平脉冲的宽度小于扫描周期,也会丢失脉冲的上升沿。实际工作中可以用STEP7读取扫描周期大致的平均值,计数器的最大计数脉冲的频率应比它的两倍的倒数小一些。小得越多越保险。如果不能满足要求,只有改用高速计数器。
S7-1200和S7-1500支持哪些错误处理OB
OB按优先级大小执行,如果所发生事件的优先级高于当前执行的OB ,则中断此 OB 的执行。优先级相同的事件,将按发生的时间顺序进行处理。
与S7-300/400比较,S7-1200/1500的错误处理有了较大的变化,本文主要介绍S7-1200/1500所支持的错误处理组织块以及CPU对这些错误的响应。
1 S7-1200/1500的错误处理组织块
1.1 S7-1200的错误处理组织块
图1-1
S7-1200不再支持同步错误中断组织块OB121,OB122 。
1.2 S7-1500的错误处理组织块
图1-2
S7-1200与S7-1500支持的错误处理组织块的块号与S7-300/400保持一致,不同的是S7-1500除时间错误中断组织块OB80的优先级22不能改变外,其它的错误处理组织块的优先级都可以修改。如诊断中断OB82:
图1-3
除了可以修改错误中断OB的优先级,S7-1500的事件中断(如硬件中断)的优先级也可以修改,这样用户通过修改优先级可避免重要的中断请求被其它中断请求延迟或中断。
2 CPU对会引起错误中断的响应
CPU对错误处理组织块的响应表:
表2-1
错误处理OB
故障类别
‘到达事件‘
触发
‘离去事件‘
触发
OB没有装载CPU停机
S7-1200
S7-1500
S7-300/400
OB80
超出最大循环时间*
异步
是
否
是
是
是
时间错误**
否***
否***
是
OB82
异步
是
是
否***
否***
是
OB83
异步
是
是
-
否***
是
OB86
异步
是
是
-
否***
是
OB121
同步
是
否
-
是
是
OB122
同步
是
否
-
否***
是
注:
-: 不支持。
*: 超出最大循环时间请求OB80时而下载OB80并不会使CPU停机,但如果一个周期内超时两倍的循环监控时间 S7-1200/1500/300/400都会停机。
**: 由时间事件(如循环中断,延时中断,时间中断)触发的时间错误。
***:CPU不会停机,但会在诊断缓冲区产生诊断记录。
3 GET_ERROR,GET_ERR_ID对PLC错误处理的影响
GET_ERROR和GET_ERR_ID是“获取本地错误信息”指令,S7-1200/1500可通过编程用来查询程序块内出现的错误,这种程序执行中发生的错误就是所说的‘同步‘错误。

图3-1
“获取本地错误信息”指令支持块内进行本地错误处理。将“获取本地错误信息”插入块
的程序代码中时,如果发生错误,则将忽略所有预定义的系统响应。
GET_ERROR指令可以读到详细的错误信息,GET_ERR_ID只读到其中的错误编号。
具体用法可参考软件在线帮助或参考STEP7 Professional V12的手册
因为GET_ERROR和GET_ERR_ID对PLC的同步错误处理的影响相同,下面只对GET_ERROR指令进行说明。
3.1 GET_ERROR对S7-1200同步错误处理的影响
因为S7-1200不支持OB121,OB122,在发生‘同步‘错误时,只在CPU的诊断缓冲区产生错误记录:同时ERR LED闪烁
举例:IO访问错误
程序中访问了外设地址ID1000:P,对S7-1200来说,ID1000是默认分配给高速计数通道HSC1,但是在实际的组态中没有使能HSC1,那么就不存在这个外设。

图3-2
S7-1200每执行一次这条指令,在诊断缓冲区产生一条错误记录,同时ERR LED闪烁,直到 ”Tag_1”复位。

图3-3
在发生错误指令的下面执行GET_ERROR:

图3-4
错误仍然存在,但CPU不报错,诊断缓冲区也不会产生任何相关错误记录。
3.2 GET_ERROR对S7-1500同步错误处理的影响
与S7-1200比较,因为S7-1500支持两个同步错误处理组织块OB121,OB122,GET_ERROR对S7-1500的同步错误处理的影响还要考虑对OB121,OB122的影响。
本文的表2-1说明了S7-1500没有执行GET_ERROR的情况下CPU的响应,下面对同步错误发生时执行GET_ERROR后CPU的响应。
S7-1500在发生两种同步错误时在有无下载对应错误处理组织块(程序错误:OB121,IO访问错误:O122)的响应是不同的,但在发生这两种错误的程序块中执行GET_ERROR后,S7-1500将忽略所有预定义的对这个程序块中出现的错误的系统响应,因此会产生以下结果:
n CPU ERR LED不会闪烁
n 诊断缓冲区不会产生错误记录
n 不再触发OB121和OB122,发生程序错误时即使不下载OB121 CPU也不会停机
*您的姓名:
*联系手机:
固话电话:
E-mail:
所在单位:
需求数量:
*咨询内容: