STEP7程序模块的调用方法
step7编程实例STEP7编程软件的使用方法
根据任务描述,可以将上述系统功能划分为两个子功能: 1 启停操作控制:负责将用户操作面板的输入信号逻辑转换为灌装线的启停信号。 2 灌装线控制:负责处理灌装定时和满瓶计数,为灌装线传送带电机和灌装漏斗提供控制信号,向数码管提供BCD码计数值。 第一个子功能由一个功能FC1实现,第二个子功能由一个功能快FB1实现,两条灌装线的定时时间分别保存在两个背景数据块DB1和DB2中。
STEP7的授权 授权是使用STEP7软件的“钥匙”,只有在硬盘上找到相应的授权,STEP7才可以正常使用,否则会提示用户安装授权。
图7-2 授权管理 器
STEP7的项目结构 在STEP7中,一个自动化系统的所有数据以项目(Project)的形式来进行组织和管理。一个项目包含了以下的三类数据。 1、硬件结构的组态数据及模块参数 2、通信网络的组态数据 3、可编程模块的程序 上述数据都以对象的形式存储,STEP7采用目录式的层次结构管理项目中的所有对象。对象从上到下有三个层次: 第一层:项目; 第二层:通讯子网、PLC站或S7程序; 第三层:第二层下面的具体对象,视第二层定。
数据块(DB)是用户定义的用于存取数据的存储区,可 以被打开或关闭。DB可以是属于某个FB的情景数据块,也 可以是通用的全局数据块,用于FB或FC。
S7 CPU还提供标准系统功能块(SFB、SFC),集成在S7 CPU中的功能程序库。用 户可以直接调用它们,由于它们是操作系统的一部分,因此不需将其作为用户程 序下载到PLC。
2 创建项目 在STEP7中建立一个名为example7-2的项目,通过插入菜单加入一个S7程序
step7的使用方法
Page 46
访问错误,例如程序中访问了一个有故障或不存在的模 块,将调用OB122。
Page 11
LOGO
3.1.2功能FC和功能块FB
FC和FB都是用户自己编写的程序块,用户可以将具有相同控制过程 的程序编写在FC或FB中,然后在主程序OB1或其他程序块中(包括 组织块和功能、功能块)调用FC或FB。 FC或FB相当于子程序的功 能,都可以定义自己的参数
Page 21
LOGO
3.3.3参数数据类型
参数数据类型是一类用于功能FC或功能块FB的数据类型,主要包括以 下两种:
Pointe指针类型 6字节指针类型,传递数据块号和数据地址
Any指针类型 10字节指针类型,传递数据块号、数据地址、数据数量以及数据类型
Page 22
LOGO
3.4S7的系统存储区和寻址方式
(2) OB101为再启动类型(热启动)。启动时,所有数据(无论是 保持型和非保持型)都将保持原状态,并且将OB101中的程序执行一次 。然后程序从断点处开始执行。剩余循环执行完以后,开始执行循环程 序。热启动一般只有S7-400具有此功能。
(3) OB102为冷启动方式。CPU318-2和CPU417-4具有冷启动型的 启动方式,冷启动时,所有过程映像区和标志存储器、定时器和计数器 (无论是保持型还是非保持型)都将被清零,而且数据块的当前值被装 载存储器的原始值覆盖。然后将OB102中的程序执行一次后执行循环程 序。
LOGO
基本数据类型(二)
step7一些说明
我有一些西门子的学习资料,供你下载,希望对你有所帮助。
STEP 7编程软件的使用方法4.1.1 STEP 7概述STEP 7用于S7,M7,C7,WinAC的编程、监控和参数设置,基于STEP 7 V5.2版。
STEP 7具有以下功能:硬件配置和参数设置、通信组态、编程、测试、启动和维护、文件建档、运行和诊断功能等。
4.1.2 STEP 7的硬件接口PC./MPI适配器+RS-232C通信电缆。
计算机的通信卡CP 5611(PCI卡)、CP 5511或CP 5512(PCMCIA卡)将计算机连接到MPI或PROFIBUS网络。
计算机的工业以太网通信卡CP 1512(PCMCIA 卡)或CP 1612(PCI卡),通过工业以太网实现计算机与PLC的通信。
STEP 7的授权在软盘中。
STEP 7光盘上的程序AuthorsW用于显示、安装和取出授权。
4.1.4 STEP 7的编程功能1.编程语言3种基本的编程语言:梯形图(LAD)、功能块图(FBD) 和语句表(STL)。
S7-SCL (结构化控制语言) ,S7-GRAPH(顺序功能图语言),S7 HiGraph和CFC。
2.符号表编辑器3.增强的测试和服务功能同时监测几个块的状态等。
直接下载和调试块、 设置断点、强制输入和输出、多CPU运行(仅限于S7-400),重新布线、显示交叉参考表、状态功能、程序中的特殊点可以通过输入符号名或地址快速查找。
4.STEP 7的帮助功能按F1键便可以得到与它们有关的在线帮助。
菜单命令“Help→contents”进入帮助窗口。
4.1.5 STEP 7的硬件组态与诊断功能1.硬件组态(1)系统组态:选择硬件机架,模块分配给机架中希望的插槽。
(2)CPU的参数设置。
(3)模块的参数设置。
可以防止输入错误的数据。
2.通信组态(1)网络连接的组态和显示;(2)设置用MPI 或PROFIBUS-DP连接的设备之间的周期性数据传送的参数。
STEP7一般操作提示
S7-300系统维修ABCS7-300系统是目前比较普遍采用的PLC系统之一,其使用比照AB、日本的PLC系统有较多的特殊性,这里针对其常用的概念及维修操作做出索引,希望对维修人员的日常维修有帮助。
一.基本硬件连接以下是主机架的基本硬件连接方式。
二.新建工程按如下方法新建一个工程。
1.使用菜单命令“文件/新建项目向导”,弹出向导窗口。
2.点击中间的“预览”按钮,下部窗口显示你的项目预览。
3.点“下一步”,在上部方框中选择CPU型号。
如CPU314。
4.点“下一步”,选择上部窗口中的OB1(循环组织块,即主程序,必须)及其它需要建立的OB块。
每个块后面有名称,并且可以通过“OB的有关帮助”按钮查询其作用。
5.在窗口中部选择语言:STL(指令表)、LAD(梯形图)、FDB(功能块)。
6.点“下一步”,定义“项目名称”。
7.点“完成”按钮,新工程被建立。
新建工程默认存储目录为:step7\s7proj。
下面就是要进行硬件组态及编辑程序了。
三.基本硬件组态硬件组态四.绝对地址地址有两种,绝对地址和符号地址。
绝对地址:是系统分配的唯一的物理地址,也是维修和接线时必须查询的用以定位接点位置的地址。
符号地址:是用户定义的,便于阅读的一个符号名称。
它要在符号表中予以说明才有效。
上图中给出的就是I/O点的绝对地址示意图。
除此之外,内部元件也有其绝对地址。
五.编程相关(一)基本程序结构1.常见块类型:OB:组织块,FC:功能,FB:功能块,DB:数据块,SFC:系统功能。
2.块的作用:OB1为主程序,FC、FB为子程序块,DB为数据块,DB1为掉电保持数据清单。
SFC为系统功能,在PLC内存自动驻留,无法修改。
3.组织块:除主循环程序OB1外,其它大多数也都有固定作用,如时间中断OB10-17、硬件中断OB40-47、循环中断OB30-37、循环时间故障OB80、电源故障OB81、I/O故障OB82-83、CPU故障OB84、机架丢失故障OB86、通讯故障OB87、程序错误OB121、暖重启OB100、热重启OB101、冷重启OB102等等。
STEP7程序中为什么要用OB35调用PID块
pid最早是采用运放等电路器件实现的,是一个连续调节的过程;但是数字电路里面要实现pid,就要进行“离散化”,你可以查阅数字pid的相关资料。
在大学自控专业的相关教材里面对此有详细的理论公式推导。
在plc里面实现pid当然就是个数字pid,其中一个重要的因素是采样时间,说的具体点,就是数字pid——在西门子plc里面就是fb41这个模块需要定时调用!比如放在ob35里面,那么ob35(默认100ms)的执行周期就是数字pid的采样时间,这个100ms是数字pid运算公式里面的一个重要参数!所以,把fb41放在ob1里面执行,表面看也是可以执行的,但运算结果其实是偏离了理论目标。
由于ob1扫描周期不固定,所以结果很难预料。
单说运行是可以的,但用OB35调用,可以有好的控制精度不是说非要作在OB35里,而是指从OB35调用主要是0B35以固定周期运行,数字化PID的采样周期T必须是等间隔的,所以要用定时中断来触发。
PID在定时中断中执行是因为定时中断准确,是以设定的周期执行的,除非有更高优先级的中断同时发生.而主程序的执行周期不是定长的,在主程序中的定时器的精度也受扫描周期的影响.OB35中断周期:按所设定的时间间隔产生中断。
即采样周期:常指在周期性的采样系统中,当对一模拟量进行采样时,两次采样之间的时间间隔。
原理上,PID 的调节节奏应该与其采样周期一致,这是数学模型应与物理过程一致的要求。
这也就是 FB41要在 OB35 中周期调用且 OB35 的周期要与 FB41采样周期一致的原因。
当然,在 OB1 或其他 FC、FB 中调用 FB41也是可以的,此时最好将 OB1 参数区中扫描周 期作为 FB41 的采样周期。
FB 41 "CONT_C"为了保证执行频率一致,块应当在循环中断 OB (例如. OB35)中调用。
"CYCLE" 参数对应的是扫描时间。
必须将程序块调用的间隔时间赋值在这里 ( 例如基于 OB35 的时间 )。
step7的使用方法
(3) OB102为冷启动方式。CPU318-2和CPU417-4具有冷启动型的 启动方式,冷启动时,所有过程映像区和标志存储器、定时器和计数器 (无论是保持型还是非保持型)都将被清零,而且数据块的当前值被装 载存储器的原始值覆盖。然后将OB102中的程序执行一次后执行循环程 序。
访问错误,例如程序中访问了一个有故障或不存在的模 块,将调用OB122。
LOGO
3.1.2功能FC和功能块FB
FC和FB都是用户自己编写的程序块,用户可以将具有相同控制过程 的程序编写在FC或FB中,然后在主程序OB1或其他程序块中(包括 组织块和功能、功能块)调用FC或FB。 FC或FB相当于子程序的功 能,都可以定义自己的参数
LOGO
同步错误组织块
OB121、OB122:同步错误中断。如果在某特定的语 句执行时出现错误,CPU可以跟踪到程序中某一具体的 位置。由同步错误所触发的错误处理组织块,将作为程 序的一部分来执行,与错误出现时正在执行的块具有相 同的优先级。
编程错误,例如在程序中调用一个不存在的块,将调用 OB121。
LOGO
3.1.1组织块OB
启动组织块 循环执行的程序组织块 定期执行的程序组织块 事件驱动执行的程序组织块
LOGO
1.启动组织块
(1)OB100为完全再启动类型(暖启动)。启动时,过程映像区和不保 持的标志存储器、定时器及计数器被清零,保持的标志存储器、定时器 和计数器以及数据块的当前值保持原状态,执行OB100,然后开始执行 循环程序OB1。一般S7-300PLC都采用此种启动方式。
STEP7常用功能块教程
STEP7常用功能块教程1、 FC105是处理模拟量(1~5V、4~20MA等常规信号)输入的功能块,在 中,打开Libraries\stan dard library\Ti-S7 Converting Blocks\fc105,将其调入OB1中,给各个管脚输入地址;如下:其中,管脚的定义如下:IN---------模拟量模块的输入通道地址,在硬件组态时分配;HI_LIM---现场信号的最大量程值;LO_LIM--现场信号的最小量程值;BIPOLAR—极性设置,如果现场信号为+10V~-10V(有极性信号),则设置为1,如果现场信号为4MA~20MA(无极性信号);则设置为0;OUT-------现场信号值(带工程量单位);信号类型是实数,所以要用MD200来存放;RET_VAL-FC105功能块的故障字,可存放在一个字里面。
如:MW50;2、 热电偶、热电阻信号的处理,该类信号实际值是通道整数值的1/10;3、 FB41 PID控制模块的使用;PID模块是进行模拟量控制的模块,可以完成恒压、恒温等控制功能 在 中,打开Libraries\s tandard library\PID Control block\FB41,将其调入OB1中,首先分配背景数据块DB41,再给各个管脚输入地址;如下:4、脉冲输出模块FB43,该模块是将模拟量转换成比率的脉冲输出。
Libraries\standard libra ry\PID Control block\FB43,将其调入OB1中,首先分配背景数据块DB43,再给各个管脚输入地址;如下:5、 果现场是阀门等执行机构,只需要将通道地址输入PID的输出通道,如下:6、如果单独控制变量输出通道,可使用FC106模块,FC106是处理模拟量(1~5V、4~20MA等常规信号)输出的功能块,在 中,打开Libraries\standard library\Ti-S7 Converting Blocks\fc1 06,将其调入OB1中,给各个管脚输入地址;如下:。
(完整版)STEP7-MicroWIN软件的操作说明
STEP7-Micri/WIN的操作说明一、连接硬件(P122)二、软件编程1、打开编程软件双击此项图1 打开STEP7-Micri/WIN软件2、修改软件菜单显示的语言(重要)图2-1 打开工具菜单的选项图2-2 把软件的菜单显示语言修改为中文3、重新打开编程软件,然后新建一个工程文件并保存单击此项图3-1 新建一个工程文件图3-2 保存刚才所新建工程文件4、依据所编制的PLC的I/O地址表建立一个符号表单击此项图4-1 进入符号表编写模式地址必须在英文输入法下输入图4-2 依据实际情况添加符号表的符号、地址等信息5、依据控制要求,参考教材P135~145编写梯形图程序单击此项图5-1 进行程序编写模式图5-2 输入梯形图并添加必要注释6、编译并调试程序直到编译通过图6-1 编译无错误,编译通过图6-2 显示编译结果7、设置通信参数单击此项图7-1 设置通信参数(1)双击此项图7-2 设置通信参数(2)依据右侧检测结果修改远程通信地址图7-3 设置通信参数(3)8、依据实际情况选择PLC的型号图8-1 选择PLC类型(1)图8-2 选择PLC类型(2)9、把程序下载到PLC中图9-1进入程序下载界面双击此项单击此项单击此项图9-2 下载程序图9-3 正在下载程序表示下载成功图9-4 下载成功10、对程序的监控单击此项图10-1 进入程序状态监控模式图10-2 程序状态监控模式图10-3 建立状态表(1)蓝色表示触点/线圈接通/得电图10-4 建立状态表(2)图10-5 进入状态表监控模式图10-6 强制一个值在英文输入法下直接输入变量的地址,如I0.0变量的数据格式, I0.0属于输入映像寄存器I 的一个位变量单击此项表示当前值用二进制表示,等于0 先:输入新值1后:单击强制按钮图10-7 强制值后效果图10-8 解除一个强制操作启动按钮被按下,接触器线圈得电,电动机启动运单击此项11、运行程序图11-1 运行程序图11-2 按下启动按钮单击此项单击此项蓝色表示触点接通,表示线圈得电图11-3 按下停动按钮。
STEP7程序模块的调用方法[优质ppt]
组织块OB的种类及优先级别
类型 冗余错误
异步故障
名称 OB70 I/O(只适用于H系统) OB72 CPU(口适用于H系统)
OB80 时间错误 OB81 电源故障 OB82 I/O模块诊断中断 OB83 插入/移走模板中断 OB84 CPU硬件故障 OB85 程序循环错误 OB86 机架故障 OB87 通讯错误
11
双击
12
13
双击
14
用户还可以在OB1块中调用SFC28来设置时间中断参 数,调用SFC30激活时间中断,调用SFC29取消时间 中断。调用SFC31查询时间中断情况。
时间中断的时间设置必须设置成一个有效的时间, 否则系统会产生一个错误信息,并执行异步错误处 理中断OB80。例如:设置每月31日执行中断一次。
16
双击
17
按F1键查看 帮助信息
18
19
二、功能FC和功能块FB的用途及调用方法 1、用途
用户可以把程序中相同的控制过程、数据处理、 信息传递的指令编写在指定的FC或FB中,然后在OB1或 其它程序块调用它,调用时提供相关的参数和变量, 来完成不同的任务。
结构化编程通常采用这种方式,这样有利于提高 程序的阅读分析、维护和运行效率。
2
组织块OB的种类及优先级别
类型 主程序
中断
OB1 OB10~OB17 OB20~OB23 OB30~OB38 OB40~OB47 OB55~OB57 OB60 OB61~OB64
名称
时间中断 时间延迟中断 循环中断 硬件中断 DPV1中断 多处理器中断 时钟中断
3
优先级别 1 2
3~6 7~15 16~23
7
OB1的变量声明表
西门子STEP7编程软件的使用方法
西门子STEP7编程软件的使用方法【摘要】近年来,随着市场的不断现代化,以及顾客的眼光也开始发生一些变化,西门子公司就适应消费者的需求,开发出了这样一款适合消费者要求的软件。
西门子STEP7编程软件是一款全新的软件,它是西门子公司在市场开发中最新开发出的一款软件,该项软件很大的提升了西门子公司的影响力,同时通过该软件我们可以看到,这款软件使得相类似的传统的其他软件的某些功能得到了极大地优化,比传统的其他软件更加具有自动化的优点。
这款软件几乎改变了传统软件的全部功能,使得初学者都会觉得它的门槛太高,有点望而却步,但是这款软件有其独有的好处和有点,其基本上可以实现人机的自动化和人机合一的目的,效益很好,因而很受人们的欢迎。
本文结合一定的实例来具体研究如何使用这款软件,希望可以帮助初学者领会。
【关键字】西门子,STEP7,编程软件,使用方法一.前言西门子STEP7编程软件是一种通用型的现代PLC软件系统。
西门子STEP7编程软件在现代社会中的使用十分的普遍,我们随处都可以看到人们熟练的使用该项编程软件,在工作中,学习中,生活中都得到了巨大的应用和推广。
西门子STEP7编程软件是一种新的编程软件系统,它本质上是对编程语言的一种修改和创新,该项软件较多的将现代型的自动化的项目和方式应用到该款编程软件之中。
根据目前的使用和推广情况,它的应用还是比较的广泛的,但是从大多数用户的反映中,我们发现,较多的用户还是对这款编程软件比较大哦陌生,对它的使用方法还不够熟练,用户在使用中也表现出烦恼和忧虑。
为了使广大用户和学者能够轻松的掌握这款软件的操作方法,本文采取实例的方法来帮助大家掌握如何使用这款软件。
二.西门子STEP7编程软件的示例项目笔者下面就会通过一个具体的实例,来帮助初学者了解如何使用西门子STEP7编程软件的使用方法,希望初学者能够尽快掌握该种方法,这样才打到了本文作者的目的。
1.西门子STEP7编程软件的控制要求西门子STEP7编程软件安装的是自动控制系统,改变了过去手动控制的模式。
STEP7_功能块使用介绍
UnRegistered 22. ABS 得到浮点型数字的绝对值
23. SQR 求平方
9
24. SQRT 求平方根
UnRegistered 25. EXP 求指数值
26. LN 求自然对数
10
27. SIN 求正弦值
28. COS 求余弦值
tered 29. TAN 求正切值 UnRegis 30. ASIN 得到反正弦值
输入
BOOL
I、Q、M、D、L
使能输入端,信号状态为 1 时激活该功能。
r ENO 输出
BOOL
I、Q、M、D、L
如果该功能的执行无错误,该使能输出端
信号状态为 1。
te IN
输入
INT
I、Q、M、D、L、P、常数
欲转换为以工程单位表示的实型
值的输入值。
HI_LIM
输入
REAL
I、Q、M、D、L、P、常数
控制功能 在 中,打开 Libraries\standard libraryPID Control block\FB41,将其调入 OB1 中,首
R 先分配背景数据块 DB41,再给各个管脚输入地址;如下:
4、脉冲输出模块 FB43,该模块是将模拟量转换成比率的脉冲输出。Libraries\standard
常数 K1 和 K2 根据输入值是 BIPOLAR 还是 UNIPOLAR 设置。
BIPOLAR:假定输入整型值介于 7648 与 27648 之间,因此 K1 = -7648.0,K2 = +27648.0
UNIPOLAR:假定输入整型值介于 0 和 27648 之间,因此 K1 = 0.0,K2 = +27648.0
实验二-西门子PLC编程软件STEP7的使用入门
实验二西门子PLC编程软件STEP7的使用入门一、实验目的1.初步掌握编程软件STEP7 V5.2的使用方法。
2.了解PLC中程序块的概念。
二、实验设备(仪器)1.计算机一台。
2.西门子S7-300PLC(CPU:315-2DP)一台。
三、实验内容1.编程软件STEP7 V5.2的硬件组态。
(1)新建一个项目。
首先用鼠标左键双击桌面上的STEP7图标,进入SIMATIC Manager(管理器)窗口,单击“File”菜单下的“New”,如图2-1所示,弹出一个对话框,在项目名称“Name”中输入sample,也可以在项目的存储路径“Storage location”中输入你要存储的地址,本实验中使用默认地址就可以,如图2-2所示,单击“Ok”完成,如图2-3所示。
图2-1 项目管理器界面图2-2 创建一个新的项目图2-3 创建一个项目后的管理器界面(2)插入一个S7-300的站,进行硬件组态。
在“Insert”菜单下的“”Station 的目录下单击“2 SIMATIC 300 Station”,如图2-4所示。
图2-4 在项目中插入对象(3)打开硬件组态界面。
选中左边窗口中的“SIMATIC 300(1)”,在右边窗口中可以看到“Hardware”图标,如图2-5所示。
图2-5 启动硬件组态程序双击右边窗口中的“Hardware”图标,进入硬件组态程序界面,如图2-6所示。
(4)主机架的配置方法。
在STEP7中,通过简单的拖放操作就可以完成主机架的配置。
①在硬件目录中找到S7-300机架拖拽到左上方的视图中,即可添加一个主机架。
图2-6 硬件组态程序界面②插入主机架后,分别在机架中的1号槽中添加电源,如图2-7所示,2号槽中添加CPU,如图2-8所示。
图2-7 向主机架中添加电源图2-8 向主机架中添加CPU③如果需要扩展机架,则应该在IM-300目录中找到相应的接口模块,添加到3号槽。
如无扩展机架,3号槽留空。
STEP7程序执行原理和编程方法S7系列学习3
STEP7程序执行原理和编程方法 S7系列学习3 STEP7程序执行原理和编程方法 S7系列学习3今天我们来讲讲STEP7的编程方法,要讲编程方法,那么我们就要先来看看PLC的循环程序是如何执行的。
(这一点非常重要)1.循环程序如何执行西门子PLC程序执行图(建议保存)1.1在CPU上电之后,启动块OB100/101/102先启动一次。
(调用哪一个OB块由系统的启动模式配置决定)1.2启动块执行完毕后,系统的循环监视时间就被激活了(这个时间可以在STEP7的硬件配置中设置,如果循环时间超出则PLC停机)1.3之后,CPU会从输入模块及其它过程映象设备读取所有的输入状态1.4接着下来便到了主循环程序的执行1.4.1主循环执行也是按照语句顺序执行,如图所示,当OB1执行第一个语句CallFB,则此时程序进入所调用FB块顺序执行FB块的语句1.4.2若在所调用的FB块,在某一语句中执行了CallFB/FC,则程序又进入下一级的FC中依次执行块中语句,依此类推1.4.3当调用的下一级FC所有语句执行完成后,程序回到CallFC的这一语句,继续执行后面的语句1.4.4当所Call的FB也执行完成后,程序回到OB1的CallFB处,继续执行后面的语句。
1.4.5直至最后,完成OB1的所有程序,则主循环结束。
1.4.6在OB1执行的过程中,循环中断(如OB35)、故障中断(如OB86)等可以插入执行,执行完成后会回到中断的地方继续主循环的执行。
1.5主循环执行完成后,PLC将过程映象的输出写到输出模块1.6完成1.5的步骤之后一个完整的循环就结束了,此时跳至1.2步骤,重新开始新一循环的监视时间,如此周而复始。
2.程序块类型知道了PLC循环程序如何执行后,我们再来看一看STEP7的程序块有哪些类型2.1用户块用户块包括程序代码和用户数据。
在结构化程序中,一些块循环调用处理,一些块需要时才调用。
2.1.1组织块OB块构成了S7CPU和用户程序的接口。
STEP7_功能块说明
parator== IN1等于IN2<> IN1不等于IN2> IN1大于IN2< IN1小于IN2>= IN1大于或等于IN2<= IN1小于或等于IN22.整数就是没有小数位都是零的数,即能被1整除的数(如-1,-2,0,1,……)CMP ?I(INT)整数比较CMP ?D (DINT)比较双精度整数CMP ?R (REAL)比较实数3.转换指令概述BCD_I BCD码转换为整数I_BCD 整型转换为BCD码BCD_DI BCD码转换为双精度整数I_DINT 整型转换为长整型DI_BCD 长整型转换为BCD码DI_REAL 长整型转换为浮点型4 计数器指令S_CUD 双向计数器S_CD 降值计数器S_CU 升值计数器---( SC ) 设置计数器线圈•---( CU ) 升值计数器线圈•---( CD ) 降值计数器线圈5.S_CUD 双向计数器`6. S_CU 升值计数器7. S_CD 降值计数器8. ---( SC ) 设置计数器值9. ---( CU ) 升值计数器线圈10. ---( CD ) 降值计数器线圈11. ---(OPN)打开数据块:DB或DI如果想将数据块中的数据读出(如DB和DI),需要通过(OPN)打开数据块后才可读出。
12. ---(JMP)--- 无条件跳转13. ---(JMPN) 若“否”则跳转14. LABEL标号【整型数学运算指令】整型数学运算指令概述说明使用整数运算,您可以对两个整数(16和32位)执行以下运算:•ADD_I 加整数•SUB_I 减整型•MUL_I 乘整型•DIV_I 除整型•ADD_DI 加双精度整数•SUB_DI 减长整型•MUL_DI 乘长整型•DIV_DI 除长整型•MOD_DI 返回分数长整型15. ADD_I 整数加16. SUB_I 整数减17. MUL_I 整数乘18. DIV_I 整数除19. MOD_DI 返回长整数余数20. 浮点运算指令概述IEEE32位浮点数属于REAL数据类型。
STEP 7 编程软件的使用方法
第4章 STEP 7 编程软件的使用方法4.1.1 STEP 7概述STEP 7用于S7、M7、C7、WinAC的编程、监控和参数设置,教材基于STEP 7 V5.2版。
STEP 7具有以下功能:硬件配置和参数设置、通信组态、编程、测试、启动和维护、文件建档、运行和诊断功能等。
4.1.2 STEP 7的硬件接口PC/MPI适配器+RS-232C通信电缆。
计算机的通信卡CP 5611(PCI卡)、CP 5511或CP 5512(PCMCIA 卡)将计算机连接到MPI或PROFIBUS网络。
计算机工业以太网卡CP 1512(PCMCIA卡)或CP 1612(PCI卡)。
STEP 7的授权在软盘中。
STEP 7光盘上的程序AuthorsW用于显示、安装和取出授权。
4.1.4 STEP 7的编程功能1.编程语言基本编程语言:梯形图(LAD)、功能块图(FBD) 和语句表(STL)。
S7-SCL (结构化控制语言) ,S7-GRAPH(顺序功能图语言),S7 HiGraph和CFC。
2.符号表编辑器3.增强的测试和服务功能设置断点、强制输入和输出、多CPU运行(仅限于S7-400),重新布线、显示交叉参考表、状态功能、直接下载和调试块、同时监测几个块的状态等。
程序中的特殊点可以通过输入符号名或地址快速查找。
4.STEP 7的帮助功能按F1键便可以得到与它们有关的在线帮助。
菜单命令“Help→contents”进入帮助窗口。
4.1.5 STEP 7的硬件组态与诊断功能1.硬件组态(1)系统组态:选择硬件机架,模块分配给机架中希望的插槽;(2)CPU的参数设置;(3)模块的参数设置,可以防止输入错误的数据。
2.通信组态(1)网络连接的组态和显示;(2)设置用MPI 或PROFIBUS-DP连接的设备之间的周期性数据传送的参数。
(3)设置用MPI、PROFIBUS或工业以太网实现的事件驱动的数据传输,用通信块编程。
STEP7-功能块全中文说明书
parator== IN1等于IN2<> IN1不等于IN2> IN1大于IN2< IN1小于IN2>= IN1大于或等于IN2<= IN1小于或等于IN22.整数就是没有小数位都是零的数,即能被1整除的数(如-1,-2,0,1,……)CMP ?I(INT)整数比较CMP ?D (DINT)比较双精度整数CMP ?R (REAL)比较实数3.转换指令概述BCD_I BCD码转换为整数I_BCD 整型转换为BCD码BCD_DI BCD码转换为双精度整数I_DINT 整型转换为长整型DI_BCD 长整型转换为BCD码DI_REAL 长整型转换为浮点型4 计数器指令S_CUD 双向计数器S_CD 降值计数器S_CU 升值计数器---( SC ) 设置计数器线圈•---( CU ) 升值计数器线圈•---( CD ) 降值计数器线圈5.S_CUD 双向计数器`6. S_CU 升值计数器7. S_CD 降值计数器8. ---( SC ) 设置计数器值9. ---( CU ) 升值计数器线圈10. ---( CD ) 降值计数器线圈11. ---(OPN)打开数据块:DB或DI如果想将数据块中的数据读出(如DB和DI),需要通过(OPN)打开数据块后才可读出。
12. ---(JMP)--- 无条件跳转13. ---(JMPN) 若“否”则跳转14. LABEL标号【整型数学运算指令】整型数学运算指令概述说明使用整数运算,您可以对两个整数(16和32位)执行以下运算:•ADD_I 加整数•SUB_I 减整型•MUL_I 乘整型•DIV_I 除整型•ADD_DI 加双精度整数•SUB_DI 减长整型•MUL_DI 乘长整型•DIV_DI 除长整型•MOD_DI 返回分数长整型15. ADD_I 整数加16. SUB_I 整数减17. MUL_I 整数乘18. DIV_I 整数除19. MOD_DI 返回长整数余数20. 浮点运算指令概述IEEE32位浮点数属于REAL数据类型。
STEP7编程软件使用方法教程
FB1
FC1
IDB1
操
作 系
OB1
FB2
统 IDB2
FC2
图7-1 块调用的分层结构
7.2 STEP7编程软件简介
• STEP7概述
• STEP7编程软件用于SIMATIC S7、C7和M7和 基于PC的WinAC,是供它们编程、监控和参数 设置的标准工具。
• 为了在PC机上使用STEP7,必须配置MPI通信 卡或PC/MPI通信适配器,将计算机接入MPI或 PROFIBUS网络,以便下载和上载用户程序及 组态数据。STEP7允许多个用户同时处理一个 工程项目,但不允许多个用户同时对一个项目 进行写操作(如程序及组态数据的下载)。
双击DB1就可以打开并对DB1进行编辑,DB编辑器分为了“数据视图”和“说明视图”,在“说明视图”下,只能看到DB的数据定义,在“数据视图”下,还可 以对值进行修改。通过【查看】菜单在两种视图间切换。DB1和DB2的设置如图7-34所示。
7 编辑OB1 双击OB1,选择LAD(梯形图)编程方式,打开OB1,对OB1进行编辑
2 创建项目 在STEP7中建立一个名为example7-2的项目,通过插入菜单加入一个S7程序
3 编辑符号表 符号表可以为绝对地址(如I0.0、Q4.0等)提供一个符号名(如“启动”、“输出”等),以方便编程及程序阅读。
在【S7 程序(1)】目录下,双击【符号】图标,打开符号表,对其进行编辑并保存
S7-300编程方式简介
S7-300系列PLC的编程语言是STEP 7。用文件块的形式管理 用户编写的程序及程序运行所需的数据,组成结构化的用户程序。 这样,PLC的程序组织明确,结构清晰,易于修改。 为支持结构化程序设计,STEP 7用户程序通常由组织块(OB)、 功能块(FB)或功能块(FC)等三种类型的逻辑块和数据块(DB)组成。 OB1是主程序循环块,在任何情况下,它都是需要的。
STEP7_功能块使用介绍
4
如果想将数据块中的数据读出(如 DB 和 DI),需要通过(OPN)打开数据块后才可读出。
12. ---(JMP)--- 无条件跳转
UnRegistered 13. ---(JMPN) 若“否”则跳转
14. LABEL标号
5
red 【整型数学运算指令】整型数学运算指令概述 te 说明
parator == IN1等于IN2 <> IN1不等于IN2 > IN1大于IN2 < IN1小于IN2 >= IN1大于或等于IN2 <= IN1小于或等于IN2 2.整数就是没有小数位都是零的数 ,即能被 1 整除的数(如-1,-2,0,1,……) CMP ?I(INT) 整数比较 CMP ?D (DINT)比较双精度整数 CMP ?R (REAL)比较实数 3. 转换指令概述 BCD_I BCD码转换为整数 I_BCD 整型转换为BCD码
WORD
I、Q、M、D、L、P
如果该指令的执行没有错误,将
返回值 W#16#0000。对于 W#16#0000 以外的其它值,参见"错误信息"。
R 错误信息 n 如果输入整型值大于 K2,输出(OUT)将钳位于 HI_LIM,并返回一个错误。如果输入整型值小于 U K1,输出将钳位于 LO_LIM,并返回一个错误。ENO 的信号状态将设置为 0,RET_VAL 等于 W#16#0008。
输入
BOOL
I、Q、M、D、L
使能输入端,信号状态为 1 时激活该功能。
r ENO 输出
BOOL
I、Q、M、D、L
如果该功能的执行无错误,该使能输出端
信号状态为 1。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
? 组织块OB的种类及优先级别
类型 背景循环 启动
同步错误
OB90 OB100 OB101 OB102 OB121 OB122
名称
暖启动 热启动 冷启动 编程错误 访问错误
未列出编号的组织块是系统保留!
优先级别 29
27
引起错误的 OB的优先级
2、常用组织块的调用方法 主程序循环组织块OB1 暖启动组织块OB100 时间中断组织块OB10 时间延迟中断组织块OB20
类型 冗余错误
异步故障
名称 OB70 I/O( 只适用于 H系统) OB72 CPU( 口适用于 H系统)
OB80 时间错误 OB81 电源故障 OB82 I/O模块诊断中断 OB83 插入/移走模板中断 OB84 CPU硬件故障 OB85 程序循环错误 OB86 机架故障 OB87 通讯错误
优先级别 25 28
OB1_DATE_TIME Date L12.0 OB1启动运行的日期和时间
? 暖启动组织块OB100 ? OB100~102是启动处理组织块,CPU启动时由操作系统调用执行一次,通常用
于程序的初始化。这三个块内是空白的,要想执行程序的初始化,需要用户在这 些块中添加指令。所有类型的CPU都支持暖启动组织块OB100,所以通常针对 此块进行编程。
结构化编程通常采用这种方式,这样有利于提高程序的阅读分析、维护和运行效 率。
2、FC和FB的变量声明表 FC、FB与功能块一样,有输入、输出、返回值等变量。用于接收输入的参数、使
能输入信号,经处理后输出运算结果、使能输出信号、逻辑返回值。
用户打开FC或FB编程时,要设定需要使用的变量的名称、数据类型。为了便于程 序的阅读分析,尽可能地加上说明注释。
? 时间延迟中断组织块OB20 ? OB20~OB23是时间延迟中断组织块,所有机型都可以调用OB20。CPU处于运
行状态才能执行它。可以使用OB20来充当高精度的通电延时定时器。 ? OB20是通过调用SFC32来启动,延时时间、OB编号在SFC32中设置。 ? 先在OB1中编写调用SFC32的指令,然后再添加OB20块,最后打开OB20块编写
SIMATIC S7的程序模块的调用
? 组织块OB的种类和调用方法 ? 功能FC和功能块FBC的用途及调用方法 ? 系统功能FC ? 系统功能块SFB ? 共享数据块DB和背景数据块DB的调用方法
一、组织块OB的种类和调用方法 1、种类及优先级别 ? 共有几十种组织块,分为主程序、中断、冗余错误、异步故障处理、同步故障
OB1_RESERVED_1 Byte L4.0 保留
OB1_RESERVED_2 Byte L5.0 保留
OB1_PREV_CYCLE INT L6.0 OB1的上一次循环时间(毫秒)
OB1_MIN_CYCLE INT L8.0 OB1的最小循环时间(毫秒)
OB1_MAX_CYCLE INT L10.0 OB1的最大循环时间(毫秒)
? 在STEP的SIMATIC Manager窗口下,在块中插入S7块→组织块→OB100,然 后双击OB100打开进行编程
? OB100也有一个变量声明表,用户可以查看相关信息。调用方法与OB1相同。
? 时间中断组织块OB10 ? OB10~17是时间中断组织块,可由用户设定在特定日期、时间执行一次中断,
处理、背景循环、启动方式处理等7大类。每种组织块具有不同的功能,用编 号区别。 ? 有1~29个优先级别,1为最低级,29为最高级。当程序在执行较低级别组织块
时,如果遇到特殊情况要执行较高级别组织块时,就会中断低级别组织块程序, 转去执行高级别组织块。
? 组织块OB的种类及优先级别
类型 主程序
中断
其它有关组织块的使用方法请查阅相关手册
? 主程序循环组织块OB1 ? 由CPU的操作系统调用循环执行。用于编写循环执行的控制程序。 ? STEP7的程序自动包含了OB1,用户可以双击打开OB1进行编程。 ? OB1有一个变量声明表,用户可以查询得到OB1运行的相关信息。这个变量声明
表在打开OB1组织块编程时能看到,其信息存储在L区(临时缓冲存储区)。用户 还可以添加定义OB1的变量。
双击
双击
? 用户还可以在OB1块中调用SFC28来设置时间中断参数,调用SFC30激活时间 中断,调用SFC29取消时间中断。调用SFC31查询时间中断情况。
? 时间中断的时间设置必须设置成一个有效的时间,否则系统会产生一个错误信 息,并执行异步错误处理中断OB80。例如:设置每月31日执行中断一次。
或者从特定日期、时间开始周期性重复执行一次中断。如:整点报时。执行中断 的程序由用户编写。 ? 所有的机型都支持调用组织块OB10。个别机型还可以支持调用其它时间中断组 织块。 ? 先在硬件组态窗口中,选择CPU属性的日时间中断对话框激活OB10,设置中断 运行开始日期、时间和执行周期。然后在管理器窗口中添加组织块OB100,双 击OB100打开编写程序。
延时后的执行指令。 ? 可调用SFC33查询延时中断状态,调用SFC33取消延时中断,调用SFC39禁止,
调用SFC40激活。
双击
按F1键查看 帮助信息
二、功能FC和功能块FB的用途及调用方法 1、用途
用户可以把程序中相同的控制过程、数据处理、信息传递的指令编写在指定的FC 或FB中,然后在OB1或其它程序块调用它,调用时提供相关的参数和变量,来完成 不同的任务。
OB1的变量声明表
名称
Hale Waihona Puke 类型 地址说明OB1_EV_CLASS
Byte L0.0 0~3位=1(未来事件) 4~7位=1(事件等级)
OB1_SCAN_1
Byte L1.0 =1(冷启动检测),=3(OB1次数检测)
OB1_PRIORITY Byte L2.0 OB1的执行优先等级=1
OB1_OB_NUMBR Byte L3.0 OB1的编号=1
OB1 OB10 ~OB17 OB20 ~OB23 OB30 ~OB38 OB40 ~OB47 OB55 ~OB57 OB60 OB61 ~OB64
名称
时间中断 时间延迟中断 循环中断 硬件中断 DPV1 中断 多处理器中断 时钟中断
优先级别 1 2
3~6 7~15 16~23
2 25 25
? 组织块OB的种类及优先级别