数据块(DB)介绍
(1)数据块(DB)简介
数据块用于存储用户数据及程序中间变量。新建数据块时,默认状态是优化的存储方式,且数据块中存储的变量是非保持的。数据块占用CPU的装载存储区和工作存储区,与标识存储器的功能类似,都是全局变量,不同的是,M数据区的大小在CPU技术规范中已经定义,且不可扩展,而数据块存储区由用户定义,最大不能超过工作存储区或装载存储区。SIMATICS7-1500 PLC的非优化数据最大数据空间为64KB。而优化的数据块的存储空间要大得多,但其存储空间与CPU的类型有关。
按照功能分,数据块DB可以分为:全局数据块、背景数据块和基于数据类型(用户定义数据类型、系统数据类型和数组类型)的数据块。
(2)全局数据块(DB)及其应用
全局数据块用于存储程序数据,因此,数据块包含用户程序使用的变量数据。一个程序中可以创建多个数据块。全局数据块必须创建后才可以在程序中使用。
以下用一个例题来说明数据块的应用。
【例1】用数据块实现电动机的启停控制。
【解】①新建一个项目,本例为“块应用”,如图1所示:

图1
在项目视图的项目树中,选中并单击“新添加的设备”(本例为PLC_1)→“程序块”→“添加新块”,弹出界面“添加新块”。
②如图2所示:

图2
在“添加新块”界面中,选中“添加新块”的类型为DB,输入数据块的名称,再单击“确定”按钮,即可添加一个新的数据块,但此数据块中没有数据。
③打开“数据块1”,如图3所示:

图3
在“数据块1”中,新建一个变量A,如是非优化访问数据块,其地址实际就是DB1.DBX0.0。
④在“程序编辑器”中,输入如图4 所示的程序,此程序能实现启停控制,保存程序。

图4
数据块创建后,在全局数据块的属性中可以切换有的方式。在项目视图的项目树中,选中并单击数据块1”,单击鼠标右键,在弹出的快捷菜单中,单击“属性”选项,弹出如图5所示的界面,选中“属性”,如果取消“优化的块访问”则切换到“非优化存储方式”这种存储方式与S7-300/400兼容。

图5
如楚”非优化存储方式”,可以使用绝对为式说回该数据块(如 DB1.DBX0.0),如是“优化存储方式”则只能采用符号方式访问该数据块(如”数据块1“.A)。
关键字:SIMATIC S7-1500
引用地址:
SIMATIC S7-1500数据块介绍其应用
推荐阅读最新更新时间:2026-03-14 22:55
SIMATIC S7-1500数据块(DB)介绍
数据块(DB)介绍 (1)数据块(DB)简介 数据块用于存储用户数据及程序中间变量。 新建数据块时,默认状态是优化的存储方式,且数据块中存储的变量是非保持的。 数据块占用CPU的装载存储区和工作存储区,与标识存储器的功能类似,都是全局变量,不同的是,M数据区的大小在CPU技术规范中已经定义,且不可扩展,而数据块存储区由用户定义,最大不能超过工作存储区或装载存储区。SIMATICS7-1500 PLC的非优化数据最大数据空间为64KB。 而优化的数据块的存储空间要大得多,但其存储空间与CPU的类型有关。 按照功能分,数据块DB可以分为:全局数据块、背景数据块和基于数据类型(用户定义数据类型、系统数据类型和数组类型)的数据块。
[嵌入式]
SIMATIC S7-1500 PLC 变量表定义全局符号和导出和导入变量表
定义全局符号和导出和导入变量表 定义全局符号: TIA博途软件的项目视图中的项目树中,双击“添加新变量表”,即可生成绩新的变量表“变量表-I ”,选中新生成的变量表,右击鼠标弹出快捷菜单,选中“重命名”命令,将此变量表重命名为“MyTable ”.单击变量表中的“添加行”按钮2次,添加2行,如下图1所示: 图1 在变量表的“名称”栏中,分别输入“Start”、“Stopl”和“Mortor”。在“地址”栏中输入“M0.0”、“M0.1”、“Q0.0”。三个符号的数据类型均选为“Bool”,如图2所示: 图2 至此,全局符号定义完成,因此这些符号关联的变量是全局变量,所有这些符号在所有的程序中均可使用。 打开程序OB1,可以
[嵌入式]
SIMATIC S7-1500 PLC SIMATIC计数器-加计数器
计数器的功能是完成计数功能,可以实现加法计数和减法计数,计数范围是0~999.计数器有三种类型:加计数器(S_CU)、减计数器(S_CD)和加减计数器(S_CUD)。 (1)计数器的存储区 在CPU的存储区中,为计数器保留有存储区。该存储区为每个计数器地址保留一个16位的字。计数器的存储格式如图1所示: 图1 其中BCD码格式的计数值占用字的0~11位,共12位,而12~15位不使用;二进制格式的计数值占用字的0~9位,共10位,而10~15位不使用。 (2)加计数器(S_CU) 加计数器(S_CU)在计数初始值预置输入端S上有上升沿时,PV装入预置值,输入端CU每检测到一次上升沿,当前计数值CV加1(前提是CV小于999
[嵌入式]
SIMATIC S7-1500 PLC SIMATIC减计数器介绍
计数器的功能是完成计数功能,可以实现加法计数和减法计数,计数范围是0~999.计数器有三种类型:加计数器(S_CU)、减计数器(S_CD)和加减计数器(S_CUD)。 (3) 减计数器(S_CD) 减计数器(S_CD)在计数初始值预置输入端S上有上升沿时,PV装入预置值,输入端CD每检测到一次上升沿,当前计数值CV减1(前提是CV值大于0),当CV等于0时,计数器的输出Q从状态“1”变成状态“0”;当R端子的状态为“1”时,计数器复位,当前计数值为“PV”,输出也为“0”。减计数器指令和参数见图1: 图1 用一个例子来说明减计数器指令的使用,梯形图和指令表示如图2所示: 图2 与之对应的时序图如图3所示: 图3 当
[嵌入式]
SIMATIC S7-1500 PLC循环右移指令(ROR)
TIA博途软件位移指令能将将累加器的内容逐位向左或者向右移动。移动的位数由N决定,向左移N位相当于累加器的内容乘以2N,向右移相当于累加器的内容处理2N。移位指令在逻辑控制中使用也很方便。 (4)循环右移指令(ROR) 当循环右移指令(ROR)的EN位为高电平“1”时,将执行双字循环右移指令,将IN端指定的内容循环右移N端指定的位数,然后写入OUT端指令的目的地址中。循环右移指令(ROR)和参数见下图1。 图1 注意:可以从指令框的“>”下拉列表中选择该指令的数据类型。 用一个例子来说明循环右移指令(ROR)的应用,梯形图如图2所示。 图2 当I0.0闭合时,激活双字循环右移指令,IN中的双字存储在MD10中,假设这
[嵌入式]
SIMATIC S7-1500定时器和计数器实例应用
1、编写一段程序,实现分脉冲功能 解题思路:先用定时器产生秒脉冲,再用30个秒脉冲作为高电平,30个脉冲作为低电平,秒脉冲用“系统和时钟存储器”的M0.5产生,其硬件组态如图1所示。 图1 梯形图如图2所示: 图2 此题的另一种解法如图3示,请读者思考,图4-166梯形图的程序段1和程序段2互换后,是否可行?为什么?。 图3
[嵌入式]
SIMATIC S7-1500 PLC函数块(FB)及其应用
函数块(FB)及其应用 函数块(FB)的简介 函数块(FB)属于自己编程的块。函数块是一种“带内存”的块。分配数据块作为其内存(背景数据块)。传送到FB的参数和静态变量保存在实例DB中。临时变量则保存在本地数据堆栈中。执行完FB时,不会丢失DB中保存的数据。但执行完FB时,会丢失保存在本地数据堆栈中的数据。 函数块(FB)的应用 以下用一个例题来说明函数块的应用。 【例】用函数块完成对一台电动机的星三角启动控制。 【解】星三角启动电气原理图如图1所示。注意停止按钮接常闭触点。 图1 星三角启动的项目创建如下。 ①新建一个项目,本例为“星三角启动”,如图2所示: 图2 在项目视图的项目树中,选中并单击“新添加的设备”
[嵌入式]
SIMATIC S7-1500 PLC中断的概念及其过程
(1)中断过程 中断处理用来实现对特殊内部事件或外部事件的快速响应。CPU检测到中断请求时,立即响应中断,调用中断源对应的中断程序,即组织块OB。执行完中断程序后,返回被中断的程序处继续执行程序。例如在执行主程序OB1块时,时间中断块OB10可以中断主程序块OB1正在执行的程序,转而执行中断程序块OB10中的程序,当中断程序块中的程序执行完成后,再转到主程序块OB1中,从断点处执行主程序。 事件源就是能向PLC发出中断请求的中断事件,例如日期时间中断、延时中断、循环中断和编程错误引起的中断等。 (2)OB的优先级 执行一个组织块OB的调用可以中断另一个OB的执行。一个OB是否允许另一个OB中断取决于其优先级。SIMATIC S
[嵌入式]