PLC模块化编程和结构化编程方法
概述模块化编程中OB1起着主程序的作用,FC或FB控制着不同的过程任务,相当于主循环程序的子程序。模块化编程中被调用块不向调用块返回数据。http://p6.qhimg.com/t01f529f3c818400fe9.jpg?size=524x410模块化程序的执行
模块化编程中OB1起着主程序的作用,FC或FB控制着不同的过程任务,相当于主循环程序的子程序。模块化编程中被调用块不向调用块返回数据。http://p7.qhimg.com/t01401726330c83a1e4.jpg?size=600x379模块化编程实例
1.模块化编程实例1 - 液位监视• 监视一个慢变得过程不需要每次扫描都进行。如果过程每隔一定时间或根据需要进行处理,程序将更有效。• 在OB1循环扫描处理时,可以按照一定的周期对液位进行监视。设计方法:• 确定液位监视的组成部分和它们的关系;• 设计完成所要求控制任务的功能;• 规划从OB中调用块完成功能的程序执行过程;• 对程序块的每个段加上文字注释和标题。解决方案:• 建立一个功能FC,可以监视和控制任务;• 建立一个OB,其中每隔一定时间调用块(功能)。http://p7.qhimg.com/t01fa4b2ed65bc6279d.jpg?size=640x4202.模块化编程实例2有两台电动机,控制模式是相同的,按下启动按钮(电动机1为I0.0,电动机2为I1.0),电动机起动运行(电动机1为Q4.0,电动机2为Q4.1);按下停止按钮(电动机1为I0.1,电动机2为I1.1),电动机停止运行。分析:这是典型的起保停电路,采用模块化编程的思想,分别在FC1和FC2中编写电机的控制程序,在主程序OB1中进行FC1和FC2的调用。http://p7.qhimg.com/t01b6ea48e3e7699a94.jpg?size=640x235http://p6.qhimg.com/t0131b93efb90a36766.jpg?size=640x258结构化编程
Ø 将复杂的任务分解成一些能够反映过程的工艺、功能或可以反复使用的单独解决的小任务,这些任务由相应的程序块来表示;Ø 某些程序块可以用来实现相同或相似的功能;Ø 调用者可以是各种逻辑块,包括用户编写的OB、FB、FC和系统提供的SFB与SFC;Ø 被调用的块是OB之外的逻辑块;Ø 通用的数据和代码可以共享。http://p3.qhimg.com/t01cc4c12e6fc96d564.jpg?size=604x477结构化编程
结构化编程的优点:1各单个任务块的创建和测试可以相互独立地进行;2通过使用参数,可将块设计得十分灵活;3块可以根据需要在不同的地方以不同的参数数据记录进行调用;4在预先设计的库中,能够提供用于特殊任务的“可重用”块。结构化编程实例-油漆调制
1选择产品添加剂,需要决定哪个罐的成分要加到混合罐内。2在选择开关的选择基础上,组织块调用相应的程序块,分配当前的参数,控制混合罐的流入量。设计方法:1. 确定哪些部件和操作可以应用于所有的罐和相关的控制;2. 建立功能或功能块,完成所要求的控制;3. 建立块的变量定义表,以便于对要操作的罐和控制进行地址分配;4. 设计一个程序来根据选择开关调用功能或功能块。解决方案:1. 建立一个功能块或功能控制罐的流出量;2. 为相关的块建立变量定义表;3. 建立一个OB块来根据选择开关调用功能或功能块。
真是被感动的痛哭流涕……
无私奉献,好工控人,32个赞送给你!! 打卡路过,支持优质原创内容~ 谁懂啊!这内容我能循环看十遍 救命!这回复笑到我捶桌,必须置顶~ 评论区人才辈出,笑到停不下来😂 不请自来,就想夸一句:太顶了! 同款经历!我当初也这么过来的😂
页:
[1]