首页 理论教育 深入解析PMC程序结构设计

深入解析PMC程序结构设计

时间:2023-06-18 理论教育 版权反馈
【摘要】:PMC对指令的组织和管理形式,称为PMC的程序结构。PMC的程序结构与PMC功能有关,设计者可根据实际情况选择,线性化结构和分块式结构是PMC常用的两种程序结构。分时管理的线性化程序如图8.1-8所示,PMC程序分为高速扫描和普通扫描循两部分。以上过程在PMC程序执行时一般需要重复多次。

深入解析PMC程序结构设计

1.PMC程序结构

PMC用户程序是编程指令的集合,PMC编程是根据控制要求,灵活运用编程指令及对指令进行排列与组合的过程。PMC对指令的组织和管理形式,称为PMC的程序结构。PMC的程序结构与PMC功能有关,设计者可根据实际情况选择,线性化结构和分块式结构是PMC常用的两种程序结构。

线性化结构的程序其全部指令都集中在同一个程序块中,执行程序时严格按照从上至下的次序执行所有指令,这是小型PMC常用的程序结构。

分块式结构的程序由多个程序块组成,执行程序时需要根据外部条件和控制要求,由负责管理的主程序决定实际需要执行的程序块,故多用于动作复杂、程序容量大的大、中型PMC控制系统。

2.线性化程序

线性化结构程序又有普通结构和分时管理两种类型。普通结构的程序最简单,设计者只需要将由程序指令逐段排列即可。如果程序中没有特定的次序要求,其指令程序段可在程序中任意排列,程序的运行控制可通过母线指令、跳转指令进行,程序的循环扫描时间固定。

分时管理的线性化程序如图8.1-8所示,PMC程序分为高速扫描和普通扫描循两部分。高速扫描程序的扫描时间固定,CPU必须在规定的时间里,对程序段进行输入采样、程序处理和输出刷新,因此,其处理速度远高于正常的程序处理。

分时管理程序的普通扫描部分按正常速度执行,但是,在程序执行过程中,如到达了高速扫描程序所规定的时间间隔,CPU必须立即中断普通扫描程序的执行、保存执行状态,并转入对高速程序的处理。当高速段扫描程序执行完成后,CPU再次从中断的位置,继续执行普通程序。以上过程在PMC程序执行时一般需要重复多次。

978-7-111-42089-7-Chapter08-9.jpg(www.xing528.com)

图8.1-8 分时管理程序

采用分时管理程序的程序可用于高速输入/输出的处理,FS-0iD采用的就是分时管理线性化结构。

3.分块式结构

分块式结构的PMC程序由多个程序块组成,程序块由统一的组织块进行组织与调度。分块式结构的PMC程序可根据控制条件,仅执行需要处理的程序块,以加快程序执行速度,缩短循环时间。分块式结构程序有主-子程序结构、功能调用结构和结构化编程等形式。

主-子程序结构的PMC程序由主程序、子程序、中断程序等程序块组成。主程序为每次扫描都必须执行的程序块,而子程序、中断程序可根据控制条件调用。主-子程序结构程序一般按主程序、子程序、中断程序的次序依次排列,故程序形式与线性化程序相似,如程序中没有编制子程序和中断程序,它便成了线性化程序。

功能调用结构的PMC程序由实现不同功能的程序块组成,每一程序块代表一组相对独立动作,程序块无主、子之分。功能调用结构的程序执行过程与主-子程序结构类似,不同程序块由专门的组织块进行管理与调用,功能程序块的调用在一个扫描周期内最多调用一次。

结构化编程的程序结构和功能调用结构相同,但它可采用参数化编程技术,在同一扫描周期内可重复调用同一程序块,并得到不同的处理结果。所谓参数化编程是将程序中的操作数进行“参数化”,即程序块中的编程元件地址是可变的,故需要采用程序变量编程;调用程序块前,首先需要对程序变量进行赋值,将其定义成有明确含义的PMC编程元件。结构化编程的程序简洁、存储容量小,但需要涉及程序块、功能块、数据块、局部变量等概念,对编程人员的要求高,通常用于大型PMC系统。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈