【PLC】基本概念

1、程序页

1.1 定义

PLC程序页是PLC程序中用于组织、编辑和显示各个程序段(如主程序、子程序、中断程序等)的独立区域。即:在程序编辑器窗口中,为不同的程序组织单元(POU)提供的独立页面或区域。
每个程序页都对应着PLC程序中的一个特定部分,允许用户分别对这些部分进行编程、调试和维护。

1.2 分类

1)主程序页
主程序是PLC程序的核心,它包含了控制应用的主要指令。在西门子STEP 7中,主程序通常被表示为OB1(组织块1),并位于程序编辑器的第一页。

2)子程序页
子程序是可选的程序单元,用于实现需要多次反复执行的任务。子程序只有在被主程序、中断程序或其他子程序调用时才会执行。在STEP 7中,每个子程序都对应一个独立的程序页。

3)中断程序页
中断程序是PLC程序中的另一种可选组件,用于处理特定的中断事件。当这些事件发生时,中断程序会中断主程序的执行并接管控制权。中断程序也拥有独立的程序页。

1.3 作用

1)模块化编程
PLC程序页的使用促进了模块化编程思想的应用。通过将程序分解为多个独立的模块(即程序页),可以使程序结构更加清晰、易于管理和维护。

2)提高编程效率
使用程序页可以方便地组织和管理程序的不同部分,避免代码混乱和重复。这有助于提高编程效率和质量。

3)便于调试和维护
在程序调试和维护阶段,用户可以针对特定的程序页进行单独的操作和测试,从而快速定位和解决问题。

2、POU

2.1 定义

POU:(Programming Organization Unit)程序组织单元。
POU是IEC 61131-3标准中定义的一个基本编程单位,用于组织和模块化PLC程序。它分为三种主要类型:程序(Program)、功能块(Function Block)和函数(Function)。每种类型的POU都有其独特的用途和特点,这使得程序员能够根据需要灵活地构建和组织代码。
POU旨在将PLC程序分解成多个组织单元,以便更好地组织和管理复杂的控制逻辑。

说人话就是:POU实质上是一段程序代码,它可以实现某种特定的功能,并能被其他程序调用。

2.2 分类

1)程序
程序(Program)是PLC程序的主体,可以是主程序或子程序。类似于c++的主线程和子线程
在广义上,程序也包括硬件配置、任务配置、通讯配置及目标设置信息等。
程序中定义了普通全局变量、映射硬件地址全局变量和局部变量。

2)功能块
功能块(Function Block, FB)是一种面向对象的编程概念,用于封装数据和行为。类似于C++的类
它保留有自己的内部变量(即私有数据),控制器目标执行系统必须给功能块的内部状态变量分配内存。
功能块的执行逻辑构成了其自身的对象行为特征。

3)函数
函数(Function, FC)是没有内部状态(即没有运行时的内存分配)的基本算法单元。类似于C++中的静态函数
只要给定相同的输入参数,调用函数必定得到相同的运算结果,具有绝对的无二义性。
类似于数学中的函数,如sin(x)、sqrt(x)等。

4)注释
可以在POU中插入注释

2.3 作用

1)模块化编程
通过POU,程序员可以将复杂的控制逻辑分解为多个逻辑块,每个逻辑块都负责执行特定的任务。这种方式使得程序更加模块化,易于理解、维护和调试。

2)提高可读性
POU中的每个单元都有其明确的功能和作用,通过合理的命名和注释,可以大大提高程序的可读性。

3)方便团队协作
在团队开发环境中,POU使得不同的开发者可以专注于不同的模块,降低了沟通成本,提高了开发效率。

3、编程语言

3.1、LD

梯形图(LD)

3.2、ST

结构化文本(ST)

3.3 FBD

功能块图(FBD)

3.4 IL

指令表(IL)

3.5 SFC

顺序功能图(SFC)

4、FU

FU(Function Unit)功能单元
FU在PLC编程中通常表示功能或功能单元,是在程序中执行特定操作或处理的一段代码。
功能单元可以是用户定义的程序部分,模块化地设计用来完成特定的算法或逻辑控制任务。

FU可以是简单的逻辑运算,如AND或OR逻辑。
FU也可以是复杂的数据处理或算法执行。

FU通常不直接对应于IEC61131-3标准中的具体类型,可以近似代替POU中的函数FC

5、交叉参考

5.1 定义

交叉参考也称为交叉引用。
交叉参考允许开发者查看程序中各个元素(如变量、地址、符号等)之间的引用关系。
通过交叉参考,开发者可以清晰地了解某个元素在程序中的使用情况,包括它在哪些位置被读取、写入或调用。

5.2 作用

1)提高程序可读性
交叉参考可以帮助开发者快速定位到程序中某个元素的所有引用点,从而更容易地理解程序的逻辑结构。

2)简化调试过程
在调试过程中,如果发现某个元素的值不符合预期,开发者可以通过交叉参考快速找到该元素的所有使用点,进而定位问题所在。

3)优化程序结构
通过交叉参考,开发者可以分析程序的引用关系,识别出潜在的优化点,如合并重复的引用、优化变量分配等。

  • 6
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

郭老二

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值