上海庆惜自动化设备有限公司

化工仪器网免费会员

收藏

西门子PLC系列产品技术文章

时间:2018-12-13      阅读:672

西门子STL语句表编程中的状态字

状态字又称状态字寄存器,是一个16位的寄存器,只用了其中的9位,它属于S7-300/400PLC的存储区中除基本存储区外的存储区的一种。用于存储CPU执行指令后的状态,以二进制位的形式保存指令的执行结果与中间状态。
状态字的位如下:
15-9  8  7   6   5  4  3  2   1   0 
保留 BR CC1 CC0 OS OV OR STA RLO FC
其含义分别为:二进制结果位(BR)、组合状态位(CC1CC0)、溢出状态保持位(OS)、溢出位(OV)、域值位(OR)、状态位(STA)、逻辑操作结果位(RLO)、*检测位(FC
简单解释如下:
*检测位(FC):CPU对逻辑串条指令的检测为*检测,如果该位的状态为0,表明一个逻辑串的指令;
逻辑操作结果位(RLO):存储位逻辑指令的或比较指令的结果;
状态位(STA):存储一个位地址的值,当执行位逻辑指令时,STA总是与该位的取值相一致;
域值位(OR):在先逻辑,后逻辑的逻辑运算中,OR位暂存逻辑的操作结果,以便进行后面的逻辑运算。其他指令将OR位复位;
溢出位(OV):如果算术运算或浮点数比较指令执行时出现错误(如溢出、非法操作和不规范的格式),溢出位被置1
溢出状态保持位(OS):溢出位OV被置1时,OS位也被置1OV被清零时,OS位保持1,它保存了OV位的状态;
组合状态位(CC1CC0):这两位结合起来用于表示在累加器1中产生的算术运算或逻辑运算的结果与0的大小关系;
二进制结果位(BR):它将字处理程序与位处理联系起来,在一段既有位操作又有字操作的程序中,用于表示字操作结果是否正确。
下面简单举个例子说明:在用户编写的FBFC语句表程序中,必须对BR位进行管理,当功能块正确执行后,使BR位为1,否则为0。使用SAVE指令可将RLO存入BR中,从而达到管理BR位的目的。当FBFC执行无错误时,RLO1,并存入BR;否则在BR中存入0。编程示例:
A I0.0 //读取I0.0 的信号状态
AI0.1 //读取I0.1 的信号状态
0 I0.2 //读取I0.2 的信号状态
SAVE  //I0.0 IO.1的信号状态都为1,或者I0.2 的信号状态为1时(运算在运算之前进行),逻辑操作结果位RLO被存储到BR位(二进制结果位)
一般在退出逻辑块之前使用SAVE指令,使能输出ENO(即BR位)被设置为RLO的值,用于对块中的错误进行检查

西门子plc编程入门教程

 

德国西门子(SIEMENS)公司生产的可编程序控制器在我国的应用也相当广泛,在冶金、化工、印刷生产线等领域都有应用。西门子(SIEMENS)公司的PLC产品包括LOGO、S7-200、S7-1200、S7-300、S7-400等。 西门子S7系列PLC体积小、速度快、标准化,具有网络通信能力,功能更强,可靠性高。S7系列PLC产品可分为微型PLC(如S7-200),小规模性能要求的PLC(如S7-300)和中、高性能要求的PLC(如S7-400)等。

当PLC投入运行后,其工作过程一般分为三个阶段,即输入采样、用户程序执行和输出刷新三个阶段。完成上述三个阶段称作一个扫描周期。在整个运行期间,PLC的CPU以一定的扫描速度重复执行上述三个阶段。

输入采样

在输入采样阶段,PLC以扫描方式依次地读入所有输入状态和数据,并将它们存入I/O映象区中的相应得单元内。输入采样结束后,转入用户程序执行和输出刷新阶段。在这两个阶段中,即使输入状态和数据发生变化,I/O映象区中的相应单元的状态和数据也不会改变。因此,如果输入是脉冲信号,则该脉冲信号的宽度必须大于一个扫描周期,才能保证在任何情况下,该输入均能被读入。

用户程序执行

在用户程序执行阶段,PLC总是按由上而下的顺序依次地扫描用户程序(梯形图)。在扫描每一条梯形图时,又总是先扫描梯形图左边的由各触点构成的控制线路,并按先左后右、先上后下的顺序对由触点构成的控制线路进行逻辑运算,然后根据逻辑运算的结果,刷新该逻辑线圈在系统RAM存储区中对应位的状态;或者刷新该输出线圈在I/O映象区中对应位的状态;或者确定是否要执行该梯形图所规定的特殊功能指令。

即,在用户程序执行过程中,只有输入点在I/O映象区内的状态和数据不会发生变化,而其他输出点和软设备在I/O映象区或系统RAM存储区内的状态和数据都有可能发生变化,而且排在上面的梯形图,其程序执行结果会对排在下面的凡是用到这些线圈或数据的梯形图起作用;相反,排在下面的梯形图,其被刷新的逻辑线圈的状态或数据只能到下一个扫描周期才能对排在其上面的程序起作用。

输出刷新

当扫描用户程序结束后,PLC就进入输出刷新阶段。在此期间,CPU按照I/O映象区内对应的状态和数据刷新所有的输出锁存电路,再经输出电路驱动相应的外设。这时,才是PLC的真正输出。

同样的若干条梯形图,其排列次序不同,执行的结果也不同。另外,采用扫描用户程序的运行结果与继电器控制装置的硬逻辑并行运行的结果有所区别。当然,如果扫描周期所占用的时间对整个运行来说可以忽略,那么二者之间就没有什么区别了。

对于很多没有使用过S7-200PLC的朋友来说,很多问题可能成为大家的拦路虎,感觉入门很难。以下就用一个实例,为大家介绍次使用S7-200PLC时具体步骤,帮助您迈开使用PLC的步。文中希望实现的功能是:按下一个开关,点亮一个输出点。本文可以帮您解决次使用S7-200时的以下问题:

(一) 需要准备哪些硬件和软件呢?

(二) 如何为PLC的接线呢?

(三) 如何与PLC通信呢?

(四) 如何编写程序呢?

(五) 如何调试PLC呢?

工具/原料

装有V4.0 STEP 7 MicroWIN 编程 软件的计算机

一根PPI编程电缆

一台西门子 S7 200CPU

方法/步骤

1(一) 需要准备哪些硬件和软件呢?

次使用S7-200时,需要准备硬件有:S7-200CPU,如CPU224XP(订货号:6ES7

214-2BD23-0XB8)

CPU224XP

 

西门子plc编程入门教程

2编程电缆 PC/PPI电缆(订货号:6ES7 901-3DB30-0XA0)

USB PC/PPI电缆

 

西门子plc编程入门教程

3需要准备的软件有:SETP7-Micro/Win V4.0 SP6

还需要准备一台装有Windows XP SP2的电脑

准备好硬件,我们就需要在电脑上正确安装S7-200的编程软件。特别提示要注意这个软件是SETP7-Micro/Win,而不是SETP7。据老工程师讲,SETP7是给S7-300等系列PLC编程用的,不能给S7-200进行编程。对于SETP7-Micro/Win软件而言,目前常用的版本是V4..0 SP6。和安装其它软件一样,正确安装好编程软件后,您就可以在桌面上看到如下所示的图标。至此,我们就为下一步的调试做好基本准备喽!

STEP7-Micro/win图标

 

西门子plc编程入门教程

4(二) 如何为PLC的接线呢?

从以下接线图可以看出,我们需要做的就是将为PLC提供电源和为数字量输入点正

确接线。

 

关于西门子PLC S7-200初学中的一些总结,入门收藏

S7-200

S7-1500

一说到西门子S7-200PLC,懂行的可能都感觉它已经很过时了,现在都已经发展到了具有小编程屏幕的1500系列,其实S7-200在实际应用中的稳定性还是很不错的,更主要的是价格相对便宜一点,我们在做一些小型设备改造时,仍然可以使用。当然国产的很多PLC也已经具备了不错的兼容性,价格上便宜很多,想自学的朋友可以入手一款。今天分享一些概括性总结S7-200的知识,希望能够帮助到PLC初学者.

一、初学者常见疑问

1、为什么要用PC/PPI接口?

因S7-200CPU使用的是RS485,而PC机的COM口采用的是RS232,两者的电气规范并不相容,需要用中间电路进行匹配。PC/PPI其实就是一根RS485/RS232的匹配电缆。

2、晶体管输出与继电器输出各自的优点如何?

晶体管不能带AC220V的交流负载,只能带低压的直流。对抗过载和过压的能力差。但可以高频输出,适合高频率输出的场合,例如脉冲控制。

继电器可以带AC220V和直流的负载。但由于继电器本身的特性决定了它不能高频输出。同时继电器通断的寿命一般在10万次左右。所以在频繁通断的场合也适合用晶体管的

3、S7-200 CPU上的通讯口,通讯距离究竟有多远?

《S7-200系统手册》上给出的数据是一个网段50m,这是在符合规范的网络条件下,能够保证的通讯距离。凡超出50m的距离,应当加中继器。加一个中继器可以延长通讯网络50米。如果加一对中继器,并且它们之间没有S7-200 CPU站存在(可以有EM277),则中继器之间的距离可以达到1000米。符合上述要求就可以做到非常可靠的通讯。

实际上,有用户做到了超过50m距离而不加中继器的通讯。西门子不能保证这样的通讯一定成功。

4、通讯口参数如何设置?

缺省情况下,S7-200 CPU的通讯口处于PPI从站模式,地址为2,通讯速率为9.6K,要更改通讯口的地址或通讯速率,必须在系统块中的通讯端口选项卡中设置,然后将系统块下载到CPU中,新的设置才能起作用。

5、M区域地址不够用怎么办?

有些用户习惯使用M 区作为中间地址,但S7-200CPU中M区地址空间很小,只有32个字节,往往不够用。而S7-200CPU中提供了大量的V 区存储空间,即用户数据空间。V存储区相对很大,其用法与M 区相似,可以按位、字节、字或双字来存取V 区数据。例:V10.1, VB20, VW100, VD200等等。

6、S7-200的远距离通讯有哪些方式?

RS-485网络通讯:PPI、MPI、PROFIBUS-DP协议都可以在RS-485网络上通讯,通过加中继,远可以达到9600米。光纤通讯:光纤通讯除了抗干扰、速率高之外,通讯距离远也是一大优点。S7-200产品不直接支持光纤通讯,需要附加光纤转换模块才可以。电话网:S7-200通过EM241音频调制解调器模块支持电话网通讯。EM241要求通讯的末端为标准的音频电话线,而不论局间的通信方式。通过EM241可以进行通讯。无线通讯:S7-200通过无线电台的通讯距离取决于电台的频率、功率、天线等因素;S7-200通过GSM网络的通讯距离取决于网络服务的范围 ;S7-200通过红外设备的通讯也取决于它们的规格。

 

7、S7-200支持的通讯协议哪些是公开的,哪些是不公开的?

PPI协议:西门子内部协议,不公开MPI协议:西门子内部协议,不公开S7协议:西门子内部协议,不公开PROFIBUS-DP协议:标准协议,公开USS协议:西门子传动装置的通用串行通讯协议,公开详情请参考相应传动装置的手册MODBUS-RTU(从站):公开

 

8、S7-200的高速输入、输出如何使用?

S7-200 CPU上的高速输入、输出端子,其接线与普通数字量I/O相同。但高速脉冲输出必须使用直流晶体管输出型的CPU(即DC/DC/DC型)。

9、NPN/PNP输出的旋转编码器(和其他传感器),能否接到S7-200 CPU上?

都可以。S7-200 CPU和扩展模块上的数字量输入可以连接源型或漏型的传感器输出,连接时只要相应地改变公共端子的接法。

10、NPN和PNP传感器混接进S7-200 PLC的方法

大家都知道一般日系PLC如三菱、OMRON等一般公共端是 信号接入的时候通常是选用NPN传感器。欧系PLC的公共端一般是-,大多选用PNP的传感器接入信号。如S7-200/300等那么当S7-200 PLC做系统时候,提供的传感器有PNP和NPN两种那么问题怎么解决呢?

方法一:NPN传感器利用中间继电器转接

方法二:大家在设计的时候一般把200PLC的输入端[M]统一接24V-,其实,200PLC同样可以引入-信号输入,把1M的接24V ,I0.0-0.7统一接NPN传感器,把2M接24V-,把PNP传感器统一接I1.0-1.7这样就能达到NPN&PNP传感器混接进PLC的目的。原因很简单,200PLC支持两种信号接入,内部是双向二极管采用光电隔离进行信号传输的。

11、高速计数器怎样占用输出点?

高速计数器根据被定义的工作模式,按需要占用CPU上的数字量输入点。每一个计数器都按其工作模式占用固定的输入点。在某个模式下没有用到的输入点,仍然可以用作普通输入点;被计数器占用的输入点(如外部复位),在用户程序中仍然访问到。

12、为什么高速计数器不能正常工作?

在程序中要使用初次扫描存储器位SM0.1来调用HDEF指令,而且只能调用一次。如果用SM0.0调用或者第二次执行HDEF指令会引起运行错误,而且不能改变次执行HDEF指令时对计数器的设定

13、高速计数器如何寻址? 为什么从SMDx中读不出当前的计数值?

可以直接用HC0;HC1;HC2;HC3;HC4;HC5对不同的高速计数器进行寻址读取当前值,也可以在状态表中输入上述地址直接监视高速计数器的当前值。SMDx不存储当前值。高速计数器的计数值是一个32位的有符号整数。

14、高速计数器如何复位到0?

选用带外部复位模式的高速计数器,当外部复位输入点信号有效时,高速计数器复位为0, 也可使用内部程序复位,即将高速计数器设定为可更新初始值,并将初始值设为0,执行HSC指令后,高数计数器即复位为0 。

15、为何给高速计数器赋初始值和预置值时不起作用,或效果出乎意料?

高速计数器可以在初始化或者运行中更改设置,如初始值、预置值。其操作步骤应当是:

设置控制字节的更新选项。需要更新哪个设置数据,就把控制字节中相应的控制位置位(设置为“1”);不需要改变的设置,相应的控制位就不能设置。然后将所需 的值送入初始值和预置值控制寄存器。执行HSC指令

二、系统认识S7-200

1、S7-200的基本结构

西门子S7-200系列属于整体式小型plc,用于代替继电器的简单控制场合,也可以用于复杂的自动化控制系统。

整体式PLC将CPU模块、I/O模块和电源装在一个箱型机壳内,S7-200称为CPU模块。前盖下面有RUN/STOP开关、模拟量电位器和扩展I/O连接器。S7-200系列PLC提供多种具有不同I/O点数的CPU模块和数字量、模拟量I.O扩展模块供用户选用,CPU模块和扩展模块用扁平电缆连接。

整体PLC还配备有许多的特殊功能模块,例如模拟量输入/输出模块、热电偶、热电阻模块、通信模块等,使PLC得功能得到扩展。

S7-200可以选用梯形图、语句表(即指令表)和功能模块语言来编程。它的指令丰富,指令功能强,易于掌握,操作方便。内置有高速计数器、高速输出、PID控制器、RS485通信/编程接口、PPI通信协议、MPI通信协议和自由方式通信功能。多可以扩展到248点数字量I/O或35路模拟量I/O。多有26kB程序和数据存储空间。

2、S7-200的CPU模块

S7-200有5种CPU模块,CPU221无扩展功能,适于做小点数的微型控制器;CPU222有扩展功能;CPU224是具有较强控制功能的控制器;CPU226和CPU226 XM适用于复杂的中小型控制系统。

S7-200系列PLC不同型号CPU的技术参数如表1所示

S7-200有传送、比较、移位、循环、求补码、调用子程序、脉冲宽度调制、脉冲序列输出、跳转、数据转换、算数运算、字逻辑运算、浮点运算、开平方、三角函数和PID控制指令等,采用主程序、多8级子程序和中断程序的程序结构,用户可以使用1-255ms的定时中断。用户程序可设3级口令保护,有监控定时器(看门狗)功能。

数字量输入中有4个用作硬件中断,6个用于高速功能。32位高速加/减计数器的高计数频率为30kHz,可以对增量式编码器的两个互差90的脉冲列计数,计数值等于设定值或计数方向改变时产生中断,在中断程序中可以及时地对输出进行操作。两点高速输出可以输出频率高为20kHz频率和宽度可调的脉冲列。

可选的存储器卡可以保存程序、数据和组态信息,可选的电池卡保存数据的典型事件值为200天。DC输出型电路用场效应晶体管(MOSFET)作为功率放大器元件,仅DV输出型有高速脉冲输出,高输出频率为20kHz。

3、S7-200的扩展模块

不同信号的S7-200 CPU上已经集成了一定数量的数字量I/O点,若实际需要的I/O点数超过该CPU的I/O点数时,则通过增加输入/输出扩展模块来达到扩展功能、扩大控制能力。扩展模块有输入/输出扩展、热电偶/热电阻输入扩展和通讯扩展三种类型,通过总线连接器(插件)和CPU模块连接。

扩展单元正常工作需要+5VDC工作电源,此电源由CPU通过总线连接器提供,扩展单元的24VDC输入点和输出点电源,可由基本单元的24VDC电源供电,但要注意基本单元所提供的大电流能力。

CPU 221无I/O扩展能力;CPU 222多可连接2个扩展模块(数字量或模拟量);CPU224和CPU226多可连接7个扩展模块。

(1)输入/输出扩展模块

S7-200系列PLC目前提供如下扩展模块:

①数字量输入扩展模块_EM221(8DI);

②数字量输出扩展模块_EM222(8DO);

③数字量输入和输出混合扩展模块_EM223(8I/O,16I/O,32I/O);

④模拟量输入扩展模块_EM231(3AI,A/D转换时间为25μs,12位);

⑤模拟量输入和输出混合扩展模板_EM235(3AI/1AO,其中A/D转换时间为25μs,D/A转换时间100μs,位数均为12位)

(2)热电偶/热电阻扩展模块

热电偶、热电阻模块(EM231)与CPU222,CPU224,CPU226配套使用,多种分度号热电偶(mV信号)和热电阻(电阻信号)可通过EM231模块将信号送入S7-200。用户通过EM231上的DIP开关来选择热电偶或热电阻的分度号、接线方式、测量单位和开路故障的方向。

(3)通讯扩展模块

除了CPU集成通讯口外,S7-200还可以通过通讯扩展模块连接成更大的网络。S7-200系列目前有两种通讯扩展模块:PROFIBUS-DP扩展从站模块EM277和AS-i接口扩展模块CP243-2。

S7-200系列PLC输入/输出扩展模块的主要技术性能如表2所示。

4、S7-200的通信功能

S7-200的CPU模块自带的RS485串行通信支持PPI、DP/T、自由通信口协议和PROFIBUS点对点协议。每个网络多126个站,多32个主站。通信接口可以实现与下列设备的通信:运行编程软件的计算机、文本显示器TD200、OP(操作员面板)、以及S7-200 CPU之间的通信;通过自由通信口协议,可以与其他厂家的设备进行串行通信。

EM277 PROFIBUS-DP从站模块用于将S7-200 CPU连接到PROFIBUS-DP网络。通信速率为9600-12Mbit/s。

工业以太网通讯模块CP243-1的通信速率为10Mbit/s或100Mbit/s,半双工/全双工通信,RJ-45接口使用TCP/IP协议。可用STEP 7-Micro/WIN软件实现通过工业以太网配置和远程编程服务(上载、下载程序,监视状态),通过工业以太网连接其他的CPU,通过S7-OPC在计算机上处理数据。

EM241 Modem(调制解调器)模块支持远程维护或远传诊断、PLC之间的通信、PLC与PC的通信、给手机发送短消息等,EM241参数化向导集成在Micro/WIN V3.2中。

通过CP243-2 AS-i通信处理器,S7-200 CPU可以作为AS-i的主站,多可以连接62个AS-i从站,接入496个远程数字量输入/输出点。

5、S7-200的编程软件

STEP 7-Micro/WIN 32是专门为S7-200设计的在个人计算机Windows操作系统下运行的编程软件。CPU通过PC/PPI电缆或插在计算机中CP 55111或CP 5611通信卡与计算机通信。通过PC/PPI电缆,可以在Windows下实现多主站通信方式。

STEP 7-Micro/WIN 32的用户程序机构简单清晰,通过一个主程序调用子程序或中断程序,还可以通过数据块进行变量的初始化设置。用户可以用语句表(STL)、梯形图(LAD)和功能块图(FBD)编程,不同的编程语言编制的程序可以相互转换,可以用符号表来定义程序中使用的变量地址对应的符号,是程序便于设计和理解。

STEP 7-Micro/WIN 32为用户提供两套指令集,即SIMATIC指令集(S7-200方式)和标准指令集(IEC1131-1)方式。通过调制解调器可以实现远程编程,可以用单次扫描和强制输出等方式来调试程序和进行故障诊断。

S7-200是在美国德州仪器公式的小型PLC的基础上发展起来的,S7-300/400的前身是西门子公司的S5系列PLC,其编程软件为STEP 7。S7-200和S7-300/300虽然有许多共同之处,但是在指令系统、程序结构和编程软件定方面均有相当大的差异。

SIMATIC S7-200 SMART订货数据

①*处理单元CPU订货号

CPU SR20模块_主要参数:AC/DC/RLY 12DI/8DO_订货号:6ES7 288-1SR20-0AA0

CPU SR40模块_主要参数:AC/DC/RLY 24DI/16DO_订货号:6ES7 288-1SR40-0AA0

CPU ST40模块_主要参数:DC/DC/DC 24DI/16DO_订货号:6ES7 288-1ST40-0AA0

CPU CR40模块_主要参数:AC/DC/RLY 24DI/16DO_订货号:6ES7 288-1CR40-0AA0

CPU SR60模块_主要参数:AC/DC/RLY 36DI/24DO_订货号:6ES7 288-1SR60-0AA0

CPU ST60模块_主要参数:DC/DC/DC 36DI/24DO_订货号:6ES7 288-1ST60-0AA0

②I/O扩展模块EM订货号

EM DI08数字量输入模块_主要参数:8×24VDC输入_订货号:6ES7 288-2DE08-0AA0

EM DR08数字量输出模块_主要参数:8×继电器输出_订货号:6ES7 288-2DR08-0AA0

EM DR16数字量输入/输出模块_主要参数:8×24VDC输入/8×继电器输出_订货号:6ES7 288-2DR16-0AA0

EM DR32数字量输入/输出模块_主要参数:16×24VDC输入/8×继电器输出_订货号:6ES7 288-2DR32-0AA0

EM DT08数字量输入/输出模块_主要参数:8×24VDC输出_订货号:6ES7 288-2DT08-0AA0

EM DT16数字量输入/输出模块_主要参数:8×24VDC输入/8×24VDC输出_订货号:6ES7 288-2DT16-0AA0

EM DT32数字量输入/输出模块_主要参数:16×24VDC输入/16×24VDC输出_订货号:6ES7 288-2DT32-0AA0

EM AI04模拟量输入模块_主要参数:4路输入_订货号:6ES7 288-3AE04-0AA0

EM AQ02模拟量输入模块_主要参数:2路输出_订货号:6ES7 288-3AQ02-0AA0

EM AM06模拟量输入/输出模块_主要参数:4路输入/2路输出_订货号:6ES7 288-3AM06-0AA0

EM AR02热电阻输入模块_主要参数:2路通道_订货号:6ES7 288-3AR02-0AA0

③通信扩展信号板SB订货号

SB CM01通信扩展信号板_主要参数:R485/R232_订货号:6ES7 288-5CM01-0AA0

SB DT04数字量扩展信号板_主要参数:2×24VDC输入/2×24VDC输出_订货号:6ES7 288-5DT04-0AA0

SB AQ01模拟量扩展信号板_主要参数:1×12位模拟量输出_订货号:6ES7 288-Q01-0AA0

西门子PLC系列产品技术文章

提示

请选择您要拨打的电话: