西门子PLC怎么构建用户程序

2019年1月13日23:20:47 发表评论 189 阅读

创建用于自动化任务的用户程序时,需要将程序的指令插入代码块中:

  • 组织块(OB)对应于 CPU 中的特定事件,并可中断用户程序的执行。 用于循环执行用户程序的默认组织块 (OB 1) 为用户程序提供基本结构。 如果程序中包括其它 OB,这些 OB 会中断 OB 1 的执行。其它 OB 可执行特定功能,如用于启动任务、用于处理中断和错误或者用于按特定的时间间隔 执行特定的程序代码。
  • 功能块(FB)是从另一个代码块(OB、FB 或 FC)进行调用时执行的子例程。 调用块将参数传递到 FB,并标识可存储特定调用数据或该 FB 实例的特定数据块 (DB)。 更改背景 DB 可使通用 FB 控制一组设备的运行。 例如,借助包含每个泵或阀门的特定运行参数的不同背景数据块,一个 FB 可控制多个泵或阀。
  • 功能(FC)是从另一个代码块(OB、FB 或 FC)进行调用时执行的子例程。 FC 不具有相关的背景 DB。 调用块将参数传递给 FC。 FC 中的输出值必须写入存储器地址或全局 DB 中。

为用户程序选择结构类型

根据实际应用要求,可选择线性结构或模块化结构用于创建用户程序:

  • 线性程序按顺序逐条执行用于自动化任务的所有指令。 通常,线性程序将所有程序指令都放入用于循环执行程序的OB(OB 1) 中。
  • 模块化程序调用可执行特定任务的特定代码块。 要创建模块化结构,需要将复杂的自动化任务划分为与过程的工艺功能相对应的更小 的次级任务。每个代码块都为每个次级任务提供程序段。 通过从另一个块中调用其中一个代码块来构建程序。

通过创建可在用户程序中重复使用的通用代码块,可简化用户程序的设计和实现。 使用通用代码块具有许多优点:

  • 可为标准任务创建能够重复使用的代码块,如用于控制泵或电机。 也可以将这些通用代码块存储在可由不同的应用或解决方案使用的库中。
  • 将用户程序构建到与功能任务相关的模块化组件中,可使程序的设计更易于理解和管 理。 模块化组件不仅有助于标准化程序设计,也有助于使更新或修改程序代码更加快速和 容易。
  • 创建模块化组件可简化程序的调试。 通过将整个程序构建为一组模块化程序段,可在开发每个代码块时测试其功能。
  • 创建与特定工艺功能相关的模块化组件,有助于简化对已完成应用程序的调试,并减 少调试过程中所用的时间。

 

weinxin
plc入门知识问答
所有PLC工程师都会关注的微信公众账号,只需输入您的问题,就会有答案

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: