设为首页
收藏本站
PLC技术网
开启辅助访问
切换到宽版
登录
注册哦
只需一步,快速开始
微信扫码登录
门户
Portal
论坛
BBS
导读
Guide
排行榜
Ranklist
搜索
搜索
本版
文章
帖子
用户
PLC论坛-全力打造可编程控制器专业技术论坛
»
论坛
›
工控技术交流区
›
『国外:三菱/西门子/欧姆龙/松下』
›
西门子S7-1200/1500 PLC新的程序架构
返回列表
发新帖
[西门子]
西门子S7-1200/1500 PLC新的程序架构
[复制链接]
59980
|
0
|
2024-5-5 10:43:40
|
显示全部楼层
|
阅读模式
今天这篇文章,我们来聊聊西门子PLC的程序架构,重点介绍下S7-1200/1500的新架构。
与个人计算机类似,PLC中也运行两类程序:操作系统和用户程序。
①操作系统是PLC各种资源的大管家,负责管理存储区、处理各种中断、执行用户程序等。
②用户程序是由PLC软件工程师编写的、完成特定任务的程序。用户程序必须被操作系统调用才能执行,在西门子PLC中,操作系统调用用户程序的接口被称为组织块。
组织块有很多类型,但总体上可以分为两类:程序循环组织块和中断组织块。程序循环组织块是一种优先级最低的组织块,用户程序多数放在该组织块中执行;中断组织块包括循环中断、时间中断、硬件中断等各种类型,一般用来执行特定的任务;
早期的西门子PLC程序架构就是程序循环组织块+中断组织块。中断组织块可以有多个,但程序循环组织块只有一个,即OB1。对于一个很大的项目,大量的代码都在OB1中被调用,会有一种架构不清晰的感觉。
西门子S7-1200/1500系列PLC允许创建一种更清晰的程序架构,总的来看,它也是采用程序循环组织块+中断组织块的方式。但是与之前只有一个OB1不同,新架构允许创建多个程序循环组织块,新的程序循环组织块的编号大于等于123即可。
举个例子,假设某项目有3个不同的任务,我们可以在项目树中新建三个组:Task1、Task2和Task3,在每个任务组中都添加一个程序循环组织块,如下图添加了名称为Main_Task1(OB123)、Main_Task2(OB1000)和Main_Task3(OB1100)三个程序循环组织块:
每个任务所需要的函数、函数块和数据块可以添加到该组中,并被该组的程序循环组织块调用即可,如下图所示:
你可能会有一个问题:这种有多个程序循环组织块的程序是怎样执行的呢?
答案是操作系统会按照程序循环组织块的编号依次调用它们。比如上述例程中有4个程序循环组织块:OB1、OB123、OB1000和OB1100,操作系统会先调用OB1、接下来调用OB123、OB1000,最后调用OB1100。这样,所有的程序循环组织块都会被调用,其内部调用的用户程序就得以执行。
再次说明一下:所有的程序循环组织块的优先级都是最低的,也就是它们都可以被中断。
好了,关于S7-1200/1500的新程序架构就介绍到这里。
我的书《西门子S7-200 SMART PLC应用技术——编程、通信、装调、案例》已经出版,欢迎点击下面的链接查看内容介绍:
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
注册哦
x
回复
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册哦
本版积分规则
发表回复
回帖后跳转到最后一页
工控平头哥
回复楼主
返回列表
『国外:三菱/西门子/欧姆龙/松下』
『国产:台达/汇川/信捷产品交流区』