STEP 7 指针编程
- 格式:pdf
- 大小:270.07 KB
- 文档页数:35
S7-300/400的编程语言与指令系统3.1 S7-300/400的编程语言3.1.1 PLC 编程语言的国际标准IEC 61131是PLC 的国际标准,1992~1995年发布了IEC 61131标准中的1~4部分,我国在1995年11月发布了GB/T 15969-1/2/3/4(等同于IEC 61131-1/2/3/4)。
IEC 61131-3广泛地应用PLC 、DCS 和工控机、 “软件PLC ”、数控系统、RTU 等产品。
定义了5种编程语言1) 指令表IL(Instruction list):西门子称为语句表STL 。
2) 结构文本ST(Structured text):西门子称为结构化控制语言(SCL )。
3) 梯形图LD(Ladder diagram):西门子简称为LAD 。
4) 功能块图FBD (Function block diagram):标准中称为功能方框图语言。
5) 顺序功能图SFC(Sequential function chart):对应于西门子的S7 Graph 。
ͼ3-1 PLCµÄ±à³ÌÓïÑÔ˳Ðò¹¦ÄÜͼÌÝÐÎͼ¹¦ÄÜ¿éͼָÁî±í½á¹Îı¾3.1.2 STEP 7中的编程语言梯形图、语句表和功能块图是3种基本编程语言,可以相互转换。
1.顺序功能图(SFC) :STEP 7中的S7 Graph2.梯形图(LAD)直观易懂,适合于数字量逻辑控制。
标签:无标签st ep7编程的地址概念详解及示例完整的一条指令,应该包含指令符+操作数(当然不包括那些单指令,比如N OT 等)。
其中的操作数是指令要执行的目标,也就是指令要进行操作的地址。
我们知道,在P LC中划有各种用途的存储区,比如物理输入输出区P、映像输入区I、映像输出区Q、位存储区M、定时器T、计数器C、数据区DB和L等,同时我们还知道,每个区域可以用位(BIT)、字节(B YTE)、字(WOR D)、双字(DWOR D)来衡量,或者说来指定确切的大小。
当然定时器T、计数器C不存在这种衡量体制,它们仅用位来衡量。
由此我们可以得到,要描述一个地址,至少应该包含两个要素:1、存储的区域2、这个区域中具体的位置比如:A Q2.0 其中的A是指令符,Q2.0是A的操作数,也就是地址。
这个地址由两部分组成:Q:指的是映像输出区2.0:就是这个映像输出区第二个字节的第0位。
由此,我们得出,一个确切的地址组成应该是:〖存储区符〗〖存储区尺寸符〗〖尺寸数值〗.〖位数值〗,例如:DBX200.0。
DBX 200 . 0其中,我们又把〖存储区符〗〖存储区尺寸符〗这两个部分合称为:地址标识符。
这样,一个确切的地址组成,又可以写成:地址标识符 + 确切的数值单元【间接寻址的概念】寻址,就是指定指令要进行操作的地址。
给定指令操作的地址方法,就是寻址方法。
在谈间接寻址之前,我们简单的了解一下直接寻址。
所谓直接寻址,简单的说,就是直接给出指令的确切操作数,象上面所说的,A Q2.0,就是直接寻址,对于A这个指令来说,Q2.0就是它要进行操作的地址。
完整的一条指令,应该包含指令符+操作数(当然不包括那些单指令,比如NOT等)。
其中的操作数是指令要执行的目标,也就是指令要进行操作的地址。
我们知道,在PLC中划有各种用途的存储区,比如物理输入输出区P、映像输入区I、映像输出区Q、位存储区M、定时器T、计数器C、数据区DB和L等,同时我们还知道,每个区域可以用位(BIT)、字节(BYTE)、字(WORD)、双字(DWORD)来衡量,或者说来指定确切的大小。
当然定时器T、计数器C不存在这种衡量体制,它们仅用位来衡量。
由此我们可以得到,要描述一个地址,至少应该包含两个要素:1、存储的区域2、这个区域中具体的位置比如:A Q2.0其中的A是指令符,Q2.0是A的操作数,也就是地址。
这个地址由两部分组成:Q:指的是映像输出区2.0:就是这个映像输出区第二个字节的第0位。
由此,我们得出,一个确切的地址组成应该是:〖存储区符〗〖存储区尺寸符〗〖尺寸数值〗.〖位数值〗地址标识符例如:DBX200.0。
其中,我们又把〖存储区符〗〖存储区尺寸符〗这两个部分合称为:地址标识符。
这样,一个确切的地址组成,又可以写成:地址标识符+ 确切的数值单元【间接寻址的概念】寻址,就是指定指令要进行操作的地址。
给定指令操作的地址方法,就是寻址方法。
在谈间接寻址之前,我们简单的了解一下直接寻址。
所谓直接寻址,简单的说,就是直接给出指令的确切操作数,像上面所说的,A Q2.0,就是直接寻址,对于A这个指令来说,Q2.0就是它要进行操作的地址。
这样看来,间接寻址就是间接的给出指令的确切操作数。
对,就是这个概念。
比如:A Q[MD100] ,A T[DBW100]。
程序语句中用方括号[ ] 标明的内容,间接的指明了指令要进行的地址,这两个语句中的MD100和DBW100称为指针Pointer,它指向它们其中包含的数值,才是指令真正要执行的地址区域的确切位置。
间接由此得名。
西门子的间接寻址方式有两大类型:存储器间接寻址和寄存器间接寻址。
S7-300/400得编程语言与指令系统3、1 S7-300/400得编程语言3、1、1 PLC编程语言得国际标准IEC 61131就是PLC得国际标准,1992~1995年发布了IEC 61131标准中得1~4部分,我国在1995年11月发布了GB/T15969-1/2/3/4(等同于IEC 61131-1/2/3/4)。
IEC 61131-3广泛地应用PLC、DCS与工控机、“软件PLC”、数控系统、RTU等产品。
定义了5种编程语言1) 指令表IL(Instruction list):西门子称为语句表STL。
2) 结构文本ST(Structured text):西门子称为结构化控制语言(SCL)。
3) 梯形图LD(Ladder diagram):西门子简称为LAD。
4)功能块图FBD (Function block diagram):标准中称为功能方框图语言。
5)顺序功能图SFC(Sequential function chart):对应于西门子得S7 Gra ph。
3、1、2 STEP 7中得编程语言梯形图、语句表与功能块图就是3种基本编程语言,可以相互转换。
ﻩ1.顺序功能图(SFC) :STEP 7中得S7 Graph2.梯形图(LAD)直观易懂,适合于数字量逻辑控制。
“能流”(Power flow)与程序执行得方向。
3、语句表(STL):功能比梯形图或功能块图强。
4.功能块图(FBD):“LOGO!”系列微型PLC使用功能块图编程。
5.结构文本(ST):STEP 7得S7SCL(结构化控制语言)符合EN 61131-3标准。
SCL适合于复杂得公式计算、复杂得计算任务与最优化算法,或管理大量得数据等。
6.S7 HiGraph 编程语言图形编程语言S7 HiGraph 属于可选软件包,它用状态图(state graphs)来描述异步、非顺序过程得编程语言。
7.S7 CFC 编程语言可选软件包CFC(Continuous Function Chart,连续功能图)用图形方式连接程序库中以块得形式提供得各种功能。
1.打开SIMATIC STEP7。
2.新建一个工程项目3.项目定义名字后,点击OK4.硬件配置,(以CPU为S7-400为例)5.打开硬件组态6.根据实际基架型号选择基架,并双击7.选择电源:8.选择CPU9.选择数字量输入模板:10.选择数字量输出模板11.选择模拟量输入模板12.选择模拟量输出模板13.硬件配置保存并编译这样就完成了硬件配置。
配置完成后回到主界面,就可以在CPU中的BLOCK进行软件编程了。
14.根据需要插入中断组织块:在属性窗口中可以定义OB的绝对地址以及符号地址,还可以对组织块的功能加以简单注释等。
也可以在此处选择该OB所用编程语言的种类。
15.新建数据块:16.打开DB,定义该数据块的地址结构:在数据块中可以定义数据的符号名,定义数据类型,定义数据注释。
17.建立符号表18.新建功能:在下面的FC属性窗口中可以定义FC的绝对地址以及符号地址,还可以对功能块的功能加以简单注释等。
也可以在此处选择该功能所用编程语言的种类。
19在FC中进行软件编程:根据功能需要插入常开常闭触点,整/实型运算函数,延时器等。
新建NETWORK:20.保存FC100并在OB1中调用。
21.启动S7-PLCSIM进行仿真测试:22.将所有程序块下载到仿真器中:23.将仿真器CPU从STOP位置变换到RUN-P位置:24.打开OB1 进行监视。
25.打开FC100 进行监视。
26.强制信号:27.另外还可以通过变量表监视系统数据:输入要监视变量的绝对地址:。
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和用户程序的接口。