您好,欢迎来到99网。
搜索
您的当前位置:首页S7-300使用方法说明

S7-300使用方法说明

来源:99网


S7-300 系列 PLC组态简介

一、系统构成

西门子S7-300系列的常用组件主要有电源模块(1)、CPU模块(1)、开关量模块(2)、开关量输出模块(2)、模拟量输入模块(2)、模拟量输出模块。说明如下: 1. 2.

电源模块:PS307—5A;为PLC系统提供稳定的24V直流电源。 CPU模块:CPU314;是系统的核心负责程序的运行,数据的

存储与处理,与上位机的通讯和数据的传输。 3.

开关量输入模块:SM321;可进行32路开关量的检测,输入信

号为24V有效,若输入为无源触点,可利用电源模块提供24V驱动信号。 4.

开关量输出模块:SM322;可提供8路开关量输出,为继电器

输出方式;分为4组每两路公用一个公共端。 5.

模拟量输入模块:SM331;为实现对8路模拟量数据采集,输

入信号可以是电流信号、电压信号、热电偶输入、热电阻输入,可根据不同的应用场合对模块进行设置。 6.

模拟量输出模块:SM332;可提供4路模拟量输出信号,根据

应用可将各路输出设置为电压输出或电流输出。

PS307 SIMENS SM321 SM321 SM322 SM331 SM331 SM332 5A CPU314 DI32 DI32 DO8 AI8 AI8 AO4

图1、系统模块组成。

二、硬件组态 1.

基本机架(中心机架)

机架即是用于安装固定各个模块的专用槽架。PLC的各个模块就遵循一定的规则固定在上面。每个机架中:插槽1为电源模板插槽;插槽2为CPU模板插槽;插槽3留给通讯模板接口模板及扩展模板。插槽4以后留给应用模板。每个模块最多可以安装8个应用模块。模块的底部通过总线连接器与前后的模块想连接,构成一个整体系统。中心机架至少应装配电源模块和CPU模块,再根据需要配置其他功能模块。

说明:所谓插槽,在这里只是抽象的概念,S7—300系统中的机架物理形态上只是一个槽形轨道,上面没有具体的插槽,模块也只是按一定顺序固定在上面,模块之间也无须保留空间,而是紧密地相邻安装。插槽的概念只有在对系统进行软件组态时才能具体化。(软件组态将在后面介绍) 2.机架的扩展

当基本机架不能满足系统要求时,可通过扩展机架对系统进行扩展,扩展方式有两种: ①、 用IM365模板:

可扩展一个机架,需用两块IM365模板,连接长度最长为一米。一块IM653模板插在机架的3槽,另一块IM365插在扩展机架的第一

槽,扩展机架的电源通过IM365扩展提供。扩展机架上最多可有8块应用模板。

②、用IM360/361模板:

可扩展3个机架,IM360插在机架的第三槽,IM361插在扩展机架的第一槽,第一个扩展机架的IM361与机架的IM360相连,其余机架的IM361顺序与前一机架的IM361相连接,机架之间的最大连接长度为10米。扩展机架的电源可通过IM361连接外部24V电源。每个扩展机架最多可安装8块应用模板。

3.地址的确定

每个机架中应用模板始于插槽4,因此编址也从插槽4开始。 ①、开关量模板的编址:

自插槽4 开始起始地址为0,每一个插槽分配4个连续地址,每向后一个插槽,起始地

址值加4,而不管其前面是否为开关量模板。开关量模板上每个I/O通道占用一个地址位。 起始地址=(插槽号-4)×4; ②、 模拟量模板的编址:

自插槽4开始起始地址为256,每个模拟量模板分配16个连续地址,每向后一个插槽模板起始地址加16,而不管其前面是否为模拟量模板。在模拟量模板上每个I/O通道 占用2个地址字节。

起始地址=(插槽号-4)×16; ③、其它功能模板的编址:

其它功能模板的编址方式与模拟量模板的编址规律完全相同。即:

起始地址=(插槽号-4)×16;

当使用扩展机架时,模板地址按照以上规律顺序向后延伸。 4.模板功能的设置

在应用模板中有些模板毋需设置便可直接使用,如开关量I/O模板;而一些多用途模板以及功能模板则需要对模板进行准确的设置。模板的设定方式包括硬件设定和软件设定两部分,需要联合使用才能使模板正常工作。

例如,系统所使用的模拟量输入模板SM331(7KF01-0AB0),共有8路输入通道,每两路为一组。对应每一组输入,在模板的侧面有一个方型选择块,可选择该组通道用于电压输入还是电流输入,按站侧面板上所标注的说明,使选择块上不同方向上的字母与所标箭头相对,就实现了对模板的硬件设置。但是具体到信号的量程大小,如电流是0—10mA,还是4--20mA则需要利用软件进行设置。软件的设置方法将在后面介绍。

三、CPU模块功能简介 (以CPU 314为例) 1.

CPU的存储空间:

CPU的存储空间分为两部分,一部分是24K字节的工作存储区,用于存储用户程序。

另一部分是负载存储区,用于存储用户定义的各种数据,其中4K字节可无电池后备

此外还可以用插入式存储卡扩展存储空间,最大可扩展512K字节。 2.

组织块的支持

自由周期块:OB1,也就是程序的循环扫描块。

定时中断块:OB35,按给定时间间隔产生定时中断,缺省定时时间为100ms。

初始化模块:OB100,只在系统开始运行时调用一次,可用它对某些数据进行初始化。

中断驱动模块:OB40,用于对硬件中断进行响应和处理,在应用模块

中,有些模块提供了硬件中断功能,如脉冲计数器模块FM350-1。

实时驱动模块:OB10,可用于在给定的时间按给定的方式运行指定的

程序。

其中OB1,OB35,OB100三个模块是常用的三个基本组织块。 3.

程序块的支持

功能FC: 可支持128个 功能块FB:可支持28个 数据块DB:可支持128个 4.

其它编程元件的支持

位存储器:2048位 (M0.0---M255.7) 计数器:个 (C0---C63) 计数范围1---999 定时器:128个 (T0---T127) 定时时间10ms---9990s

四、软件的应用

与S7—300系统配套而来的是SIMATIC STEP 7软件系统,利用它可

以进行系统硬件的组态,模板的设置及通讯连接的设定。 1.

用户软件的组成

一个完整的用户软件由以下几个部分构成:

①、硬件系统的组态:硬件系统除了需要在模板本身进行必要的选择设置

外,还需要通过软件对具体的功能规范进行设定,才构成了完整的系统硬件组态。组态的信息需下载到PLC中,并进一步通过PLC传入相应的模板。

②、用户程序的全部程序块、数据块及被调用的系统功能模块。 ③、用户程序的相关说明与文档。 2.

新项目的创建

在开发一个新的PLC系统时,首先要建立一个新项目,而后该PLC控制系统全部软件的开发就建立在这个项目内,包括系统的组态,程序的编制,网络连接,文档的建立。 步骤:

①、 从桌面上启动SIMATIC管理器,同时STEP 7被自动启动。进

入管理器主界面。参见图4.1

②、 按下File按钮,选择 ‘New Project Wizard’,进入新项目向导。

图4.1 SIMATIC STEP 7 管理器主界面

图4.2 启动新项目向导

③、选择 ’Next’ 这样可以按照向导的指引逐步生成一个新项目。4.3)

(图

图4.3 按步生成新项目

③、 在CPU 类型中选择CPU314, 按 ‘Next’ ,进入下一步。这就生成了一个一CPU314为核心的PLC系统。

图4.4

⑤、选择你所想要添加的程序块名称,在其前的选择框中打勾。选择

所用的PLC编程语言,单击该语言前面的按钮。按‘NEXT’ 进入下一步。

图4.5

⑥、在Project name:栏输入你为项目所取的名称,按下‘Make’按

钮,一个新的项目就生成了。下面你就进入了程序设计的主画面。

图4.6

⑦本画面为用户编程的主界面,在该界面上可以选择PLC硬件组态,程序块的添加与程序的编写。并能依据编写的程序选择是否自动生成源

图 4.7

⑧、项目生成后,以下的软件设计等操作就主要在该界面下进行。以

后若要进入该项目的编程操作,可从SIMATIC管理器中选择打开项目,在项目列表中双击项目名。

3.

对硬件系统进行软组态

①、进入编程主界面后,单击项目前 + 号,打开项目,再单击SIMATIC 300 Station

图4.8

或其前面的加号,则SIMATIC 300 Station 打开,右侧窗口出现Hardware 与CPU314(1)两项。双击Hardware标志,就进入了硬件组态界面。

③、 在硬件组态界面下,出现了机架的上下两个窗口,下方窗口为机架硬件的详细信息。如图4.9所示。注意:CPU被自动放到了第二插槽,其余插槽为空。其中,第一插槽只能插入电源模板,第三插槽用来插入通讯、扩展及接口模板。单击空白插槽,从界面的选择菜单中单击‘Insert’,再点击‘Hardware Components’,就可以选择所要插入的模板。

图4.9

④、 单击‘Hardware Components’后,出现如下界面,窗口中显示出各种类型的模板,选择相应的模板类型,会列出该类下所有的具体模板型号,然后可选择具体的模板型号。

图4.10

例如,向插槽插入电源模板,模板型号为PS307 5A(可在模板的前面板上看到)。

步骤:单击插槽1---Insert---Hardware Components,弹出图4.10所示

窗口后,然后双击

Simatic 300---双击PS300---双击PS300 5A,会弹出出模板属性

窗口,单击OK

模板就被插入了插槽1。

插槽3空闲,从插槽4开始可以插入应用模板,以模拟量输入模板SM331(7KF01-0AB0)为例,将它放入插槽7,步骤如下: 单击插槽7---Insert---Hardware Comoponents,弹出图4.10所示

窗口,然后双击Simatic 300---双击SM300---双击AI 300---单击SM321 DI32×DC24,模板的型号会以小字符显示在模板的右侧,双击它,模板就被放到插槽7。

其它插槽的配置步骤同上,模板被插入插槽后,在图4.9所示的阻台

界面中,下方的窗

口M,I,Q栏可以看到模板占用的通道地址,可以对照前面所述的硬

件编址规则,比 较地址是否一致。 4.

模板的设置

组态完成后,需要对模板的具体信号规范进行设置。仍以插槽7中的模拟量输入模板为例,双击插槽7中AI模板,弹出模板属性窗口。

图4.11

General显示是模板的一般属性,单击Address 显示模板所占用的通道地址,单击Inputs 就进入了每个输入通道的信号规范的设定。界面如图4.12所示:

界面内显示了8个输入通道每两个通道为一组,Type of Measurement

栏为信号的输入类型,缺省方式为电压,点击各组信号的信号类型,可设定为电流,热电偶及热电阻输入,信号类型的设定必须与硬件设置保持一致。信号类型下方为信号量程,例如电压信号可以选择-10V--+10V,0—10V,1—5V等。模板各项属性设置完成后,单击OK,模板的设置完成。

图4.12

5.通讯连接的设置

①、在软件设计主界面(图4.7)下,单击CPU314(1) ,右侧窗口显示出系统连接。

图4.13

②、双击connections,进入PLC的通讯连接设置,如图4.14所示。上端

显示一条连线为MPI网络总线,单击SIMATIC 300 Station 中的CPU314,从主菜单中选择Insert,然后选择connections,则在CPU314与MPI总线之间建立起了连接。单击OK,通讯连接的建立就完成了。

图4.14

五、程序的开发

PLC程序利用系统提供的STEP7 V5.01编程工具进行编程。可供选

择的编程语言有语句表语言(STL),梯形图(LADDER)和功能块语言 (FBL)。编程操作从用户编程主界面(图4.8)进入,首先要生成空的程序块,然后双击该块就进入了该块的程序编辑。 1.

程序的构成

STEP7的程序设计采用了模块化的程序设计方法,程序按照运行的需要构成不同的程序块,各个程序块的运行调度由程序的组织块完成,用户通过对组织块的编程实现整个系统的有机结合。STEP7的程序主要由以下模块构成:

①、 程序的组织块(OB):OB100,OB35,OB1,(OB82,OB4O) 负责各个功能模块的调度运行。

OB100为初始化模块,系统加电时自动运行且只运行一次,可以用它对系统的初始数据、初始运行条件进行设定。

OB35为定时中断模块,每100毫秒产生一次中断,其它低优先级操作被临时挂起转而运行OB35中的程序。可以用她来运行那些对时间周期精度要求较为严格的程序模块,如周期较短,实时性较强的控制运算。

OB1为循环扫描模块,它也是程序主模块,绝大部分的参数检测、控制、运算操作的功能调用都由它来完成。

②、 数据块(DB):用于存储系统的各种I/O数据,数算和逻辑运算的中间值,与上位机之间的传输数据。包括共享数据块、背景数据块和局部数据块,共享数据块中的数据可以为所有的程序块共享;背景数据块是对应于某一函数块的数据块,主要是为功能块提供背景数据。它的数据与功能块中的变量定义相对应,但也可以被其它程序块读写。局部数据块只能为定义它的功能函数或功能块所用。

③、 功能函数(FC):是程序的基本模块之一,大多数的数据采集、

数据处理、以及数据传输程序最后都以功能函数的形式存在,本质上这些功能函数就是能完成一定功能的子程序。功能函数可以有形式参数也可以没有形式参数。

④、 功能块(FB):是程序的另一种基本模块,它的应用范围与功能函数基本相同;所不同的是功能块有自己的背景数据块,它与定义的形式参数相对应,用于存储这些参数的数值。并且允许在功能块内定义自己的静态变量,这些变量全程有效,但不允许其它程序块访问。

⑤、 系统功能及系统功能块:是由系统提供的,可以对系统参数进行访问的功能函数及功能块,如读取系统时间,PLC的启动和停止等。这些模块存放在系统函数库中,需要时,可以COPY到用户的程序中,以供调用,但是源代码不可见。 2.

程序的组织

程序的组织首先沿着一条主线OB1进行,把它作为主程序来看,设计出它的主流程。如一个PID单回路控制,按如下顺序:

现场参数采样---输入数据处理---PID控制---输出数据处理---控

制输出。

我们可以把所有的程序都放入OB1中,然后只运行它即可。但如果程序量较大,程序的可读性会很差,且不便于调试。为此,我们可以把程序分割为一个个承担一定功能的子程序,这就是所谓的功能函

数和功能块。如上述流程可以分割为参数采样模块、输入数据处理模块、PID控制模块、输出数据处理模块、控制输出模块几个部分。每一个部分就成为一个功能函数或一个功能块,程序模块之间通过形式参数或共享数据块传递数据。把通过数据共享传递的参数归纳到一起,可建立一个共享数据块。

有些模块定义的参数较多,且大多数是模块独有的参数,如PID模块,则可以把该模块定义为功能块,然后为它生成背景数据块,这样它可以使用属于自己的背景数据。调用该功能块是,需要连同背景数据块一起调用。

功能块建立完成之后,程序的主干OB1中就只有对功能模块的调用和少量的数据处理工作了,主流程线路很明了,调试时也可以对各个模块逐一调试。

程序主干建立后,开始添加外围程序。程序运行之前,需要对某些参数预置初始值, 而不希望在OB1中反复赋值,那么我们把对这些参数预置初值的程序编写在初始化模块OB100中,这些赋值语句只在系统启动时运行一次,初始化就完成了。

在程序中如果某些数据的处理对时间周期要求严格,例如PID模块,如果要求控制周期为200毫秒,而OB1的循环扫描时间又在十几或者几十秒,那么在OB1中用定时器计时,就会产生较大误差,为保证准确的控制周期,我们可以把PID控制模块放到定时中断模块OB35中。这样每隔100ms,控制就能执行一次。

至此,一个程序模块的基本组织结构就完成了。

3. 功能函数的调用

功能函数可以被其它程序块如OB、FC、FB调用,如果功能函数中不含形式参数,调用命令格式为:CALL FCn ,其中n为功能函数序号。

如果功能函数带有形式参数,则必须为形式参数传递数据。 命令格式为:CALL FCn

para1:=Data1 para2:=Data2 para3:=Data3

其中n为功能函数的序号;para1, para2……为形式参数;

Data1,Data2……是给形式参数传递的数据或变量值。 4.

功能块的调用

一个功能块有自己的形式参数以及相对应的背景数据块。调用时,可通过背景数据块进行参数传递。调用格式为: CALL FBn, DBn para1:= para2:= para3:= : :

其中,FBn为功能块的名称,DBn为功能块对应的背景数据块的名称。而Para1, para2, para3……为形式参数,调用功能块可以不为形式参数传值。 5.

编写一个程序

①、从SIMATIC管理器的主界面中选 择File --- Open --- Project,则弹出右 图所示窗口。窗口中列出了最近创建和访问过的项

目,双击所要打开的项目名称,此例中以S7_Pro2为例,就进入了用户编程操作的主界面。如图5.2所示。

图5.1

②、在右图所

示的 界面中项目S7_Pro2

已经被打开,单击Blocks文件夹,在右侧窗口出现已经存在的程序块及数据块。

从主菜单中选择Insert---S7 Block在右侧出现级连菜单,选择想要插入的程序块的类型,我们以功能块为例。选择Function Block,弹出图5.3所示界面。

③、在下图所示的界面中输入功能块的名称这里为 FC1,选择语言为

STL,即语句表语言。模块的其他属性可不必填写。在Comment栏可以填写模块功能的简单说明。填写完毕单击OK进入功能块程序的编辑界面。

图5.3

④、模块内部程序全部编辑工作都在这个界面下完成。以下该界面作一简单说明。

界面窗口分为上下两个部分,上半部分为变量声明窗口,用于定义、

声明功能块中的变量。Address栏:为变量的相对地址,起始偏移量为0,变量地址不需用户填写,由系统自动生成。Decl. 栏:为变量的形式,有以下几种:

In------- 该变量是输入参数,用于接受传递给功能块的数

据。属于形式参数。

Out----- 该变量是输出参数,用于向功能块外传递数据;

属于形式参数。

In_Out- 该变量是输入输出参数,既能向块内传入参数,也能

向块外传出参数。也属于形式参数。

Stat----- 该变量是静态变量,在程序运行的全过程有效,但是

它只在本功能块内起作用,块外无效。静态变量是功能块特有的变量类型。

Temp---- 该变量为局部变量,只在本功能块,本次调用时有

效;调用结束不保持数值。

Name 栏:用于输入变量名,用户可按照合法的命名规则任意给定变量名。

Type 栏:用于指定变量的数据类型,用户可直接键入。也可以单击

该栏从数据类型列表中选择变量的数据类型。

Initial Vlue:该栏只对静态变量有意义。用于给定变量的初始值。 Comment 栏:在该栏可以填写关于变量的简单注释,也可以省略。

变量定义完成后,变量的地址会自动出现最左端的地址栏中。

窗口的下半部分是程序编辑区,Title是功能块的标题,可以省略。Comment用于填写对功能

块的说明性文字。在Network中的Comment 可填写该Network的简

要说明。 在Network 中

Comment 下方的方框是程序区,用户程序就填写在各个Network的

程序区。Network是为了适应梯形图方式设置的,用语句表编程,所有程序可以写在一个Network中,也可以分散在多个Network中,只要程序语句的顺序相同,运行结果就相同。我们推荐把功能块中的程

序按照功能单元分散在多个Network中。

DB1模块的生成:在用户编程主界面中,逐级打开程序文件夹,在右侧窗口中出现模块列表。单击想要编辑的数据块例如DB1,则出现下图界面,界面中有三个选项。

选择Data block则生成的是共享数据块。单击OK,进入数据块的变量定义与编辑。见图5.5 。

选择

Data block

eferenci… data type则按照用户定义的数据结构自动生成共享数据

块。用户不需要再添加变量定义。

选择 Data block …… a function block 则生成某一功能块的背景数据块。并列出了所有的功能块,选择相应的功能块,单击OK,数据块就根据功能块中的变量定义自动生成。

选择生成共享数据块后,单击OK,就进入了下买内的编辑界面。在数据

块中输入所要定义的变量名及数据类型,在地址栏会自动显示出变量的地址。

所有变量输入完成后,单击File---Save保存数据块,一个数据块的生成就完成了。

图5.5

六、一个实例(编程语言——STL) 1.

系统框图:

下图是一个PID控制回路,设定值范围是0—100%;输入信号经过模拟量输入模块经A/D转换进入PID控制器,PID控制器的输出经模拟量输出模板送给实际对象,控制对象的行为,这样构成了一个闭环回路。对象的输入信号前为手/自动切换开关,投入手动状态时,手动控

制对象的行为。对象的输入与输出信号都是0---10V。

手动操作 + K 输出 设定值 PID控制 输出变换 1/(10s+1) - 输入变换 采样 2.

系统组态

需要的模板,信号规范及地址: 电源模板PS307 5A:位于插槽1; CPU314模板:位于插槽2;

开关量输入模板SM321,插槽4,地址0--3; 一路开关量输入:手自动切换信号;

开关量输出模板SM322,插槽5,地址4--7; 一路开关量输出:超限报警。

模拟量输入模板SM331,插槽6:地址288--303;一路模拟量输入:0—10V

模拟量输出模板SM332,插槽7:地址304--319;一路模拟量输出:0---10V

按照前述组态步骤,进行软件组态,并对模板的信号规范进行设置并记录各模板分配的通道地址,以便为I/O参数编址。

3. 程序功能块的划分

由于系统较为简单,不需要作出程序的流程框图,可以根据给出的控制框图直接进行程序模块的分割。图中虚线内的部分是PLC所需处理的部分。可以分割为以下几个模块: ①、

参数采样与处理模块:对应图中的输入变换

部分,负责参数的采样及量程变换。 ②、

控制输出与变换模块:对应于图中的输出变

换部分,负责PID控制输出的量程变换。 ③、

PID控制器模块:根据给定值及采样参数的

大小,实施控制功能,手/自动的切换的处理也由该模块完成。对象时间常数为10秒,可取控制周期为0.1秒。 ④、

输出等参数。 ⑤、

PID控制器的背景数据块。用于存放PID控共享数据块:用于存放采样数据及PID控制

制器的控制参数及控制算法中需要保存的历史数据。 4.

程序的基本组织 OB100,OB1,OB35

OB100:初始化模块:对控制回路的手自动状态,控制器的积分状态,

数据存储区进行必要的初始化

OB1:循环扫描模块,它是系统的主循环程序,系统的输入输出处理可放在OB1中。

OB35:100ms中断处理模块,可以将控制周期为0.1秒的PID控制放

在这个模块,以保证时间的准确性。

5. 程序的功能模块

功能函数FC0:负责输入参数的采样处理,不带参数。 功能函数FC1:负责输出变换不带参数。

功能块FB5:实现PID控制功能。相关背景数据块DB5 6.

程序的数据块

共享数据块为DB1,用于输入输出数据的变换。结构见附页。 PID控制器的背景数据块DB5,结构与FB5的变量定义相对应。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 99spj.com 版权所有 湘ICP备2022005869号-5

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务