【精品】s7-300plc课件-13结构化编程(可编辑.ppt
《【精品】s7-300plc课件-13结构化编程(可编辑.ppt》由会员分享,可在线阅读,更多相关《【精品】s7-300plc课件-13结构化编程(可编辑.ppt(48页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、S7-300PLC课件-13结构化编程青岛大学青岛大学-西门子先进自动化技术实验室西门子先进自动化技术实验室 青岛大学自动化工程学院青岛大学自动化工程学院SIEMENS 程序设计方法:线性化编程、模块化编程程序设计方法:线性化编程、模块化编程和结构化编程。和结构化编程。第七章第七章 结构化编程结构化编程 线性化编程线性化编程是将整个用户程序放在组织块是将整个用户程序放在组织块OB1OB1中,在中,在CPUCPU循环扫描时执行循环扫描时执行OB1OB1中的全部指令。中的全部指令。其特点是结构简单、但效率低下。另一方面,其特点是结构简单、但效率低下。另一方面,某些相同或相近的操作需要多次执行,这样
2、会某些相同或相近的操作需要多次执行,这样会造成不必要的编程工作。再者,由于程序结构造成不必要的编程工作。再者,由于程序结构不清晰,会造成管理和调试的不方便。所以在不清晰,会造成管理和调试的不方便。所以在编写大型程序时,避免线性化编程。编写大型程序时,避免线性化编程。青岛大学青岛大学-西门子先进自动化技术实验室西门子先进自动化技术实验室 青岛大学自动化工程学院青岛大学自动化工程学院SIEMENS模块化编程模块化编程是将程序根据功能分为不同的逻是将程序根据功能分为不同的逻辑块,且每一逻辑块完成的功能不同。在辑块,且每一逻辑块完成的功能不同。在OB1中可以根据条件调用不同的功能或功能中可以根据条件调
3、用不同的功能或功能块。块。其特点是易于分工合作,调试方便。由于其特点是易于分工合作,调试方便。由于逻辑块是有条件的调用,所以可以提高逻辑块是有条件的调用,所以可以提高CPUCPU的的利用率。利用率。青岛大学青岛大学-西门子先进自动化技术实验室西门子先进自动化技术实验室 青岛大学自动化工程学院青岛大学自动化工程学院SIEMENS结构化编程结构化编程是将过程要求类似或相关的任务是将过程要求类似或相关的任务归类,在功能或功能块中编程,形成通用解归类,在功能或功能块中编程,形成通用解决方案。通过不同的参数调用相同的功能或决方案。通过不同的参数调用相同的功能或通过不同的背景数据块调用相同的功能块。通过不
4、同的背景数据块调用相同的功能块。其特点是其特点是结构化编程必须对系统功能进行结构化编程必须对系统功能进行合理分析、分解和综合,所以对设计人员的合理分析、分解和综合,所以对设计人员的要求较高,另外,当使用结构化编程方法时,要求较高,另外,当使用结构化编程方法时,需要对数据进行管理。需要对数据进行管理。传送带系统中所有交流电机的通用逻辑控制块;传送带系统中所有交流电机的通用逻辑控制块;装配线机械中所有电磁线圈的通用逻辑控制块;装配线机械中所有电磁线圈的通用逻辑控制块;造纸机器中所有驱动装置的通用逻辑控制块。造纸机器中所有驱动装置的通用逻辑控制块。青岛大学青岛大学-西门子先进自动化技术实验室西门子先
5、进自动化技术实验室 青岛大学自动化工程学院青岛大学自动化工程学院SIEMENS结构化编程结构化编程OB 1电机电机 1FC 1电机电机 2FC 1电机电机 3FC 1青岛大学青岛大学-西门子先进自动化技术实验室西门子先进自动化技术实验室 青岛大学自动化工程学院青岛大学自动化工程学院SIEMENS青岛大学青岛大学-西门子先进自动化技术实验室西门子先进自动化技术实验室 青岛大学自动化工程学院青岛大学自动化工程学院SIEMENS青岛大学青岛大学-西门子先进自动化技术实验室西门子先进自动化技术实验室 青岛大学自动化工程学院青岛大学自动化工程学院SIEMENS局部变量局部变量临时变量临时变量 当相关块执
6、行完毕后被清除 临时存储在 L stack中 可在下列块中使用 OBs/FCs/FBs静态变量静态变量当相关块执行完毕后仍然 保留 永久存储在DBs中 只能在FBs中使用局部变量局部变量/数据数据(只在一个块中有效)全局变量全局变量/数据数据(在全部程序中有效)PII/PIQ I/O M/T/C DB areas符号地址符号地址绝对地址绝对地址访问方式访问方式青岛大学青岛大学-西门子先进自动化技术实验室西门子先进自动化技术实验室 青岛大学自动化工程学院青岛大学自动化工程学院SIEMENS临时变量临时变量青岛大学青岛大学-西门子先进自动化技术实验室西门子先进自动化技术实验室 青岛大学自动化工程学
7、院青岛大学自动化工程学院SIEMENS执行的程序执行的程序局部数据堆栈的大小局部数据堆栈的大小对于对于 S7-300:局部堆栈大小局部堆栈大小优先级优先级256 bytes127总容量总容量:1.5 Kbyte(CPU 313.316)启动程序启动程序(只执行一次只执行一次)循环扫描程序循环扫描程序256 bytes256 bytes256 bytes1232时间中断时间中断日时钟中断日时钟中断延时处理中断延时处理中断循环处理中断循环处理中断循环扫描中的错误处理中断循环扫描中的错误处理中断256 bytes162826256 bytes事件驱动中断事件驱动中断硬件中断硬件中断启动过程中的错误处
8、理中断启动过程中的错误处理中断青岛大学青岛大学-西门子先进自动化技术实验室西门子先进自动化技术实验室 青岛大学自动化工程学院青岛大学自动化工程学院SIEMENS块所需要的局部数据区的长度块所需要的局部数据区的长度rechts青岛大学青岛大学-西门子先进自动化技术实验室西门子先进自动化技术实验室 青岛大学自动化工程学院青岛大学自动化工程学院SIEMENS256 Bytes事件所占用的 L stack1OB1OB 11操作系统程序所占用的局部数据区的总长度程序所占用的局部数据区的总长度FC 2有临时变量OB1FC2FC133OB1FC144OB1FC166FC 3有临时变量OB1FC3FC155F
9、C 1有临时变量2OB1FC127OB17青岛大学青岛大学-西门子先进自动化技术实验室西门子先进自动化技术实验室 青岛大学自动化工程学院青岛大学自动化工程学院SIEMENS练习练习1:使用临时变量使用临时变量替换为临时变量替换为临时变量QW6青岛大学青岛大学-西门子先进自动化技术实验室西门子先进自动化技术实验室 青岛大学自动化工程学院青岛大学自动化工程学院SIEMENS示例:计算公式示例:计算公式青岛大学青岛大学-西门子先进自动化技术实验室西门子先进自动化技术实验室 青岛大学自动化工程学院青岛大学自动化工程学院SIEMENSDisturb_inputReport_ memoryAcknowle
10、dgeEdge_ mem_bitDisplayFlash_freqFC 20调用调用可以分配参数的块可以分配参数的块Ai1.2Rm40.0Ai1.3Fpm40.1Sm 40.0Am40.0Am10.3OAnm 40.0Ai1.3=Q4.3不可以不可以分配参数的块分配参数的块形式参数形式参数M 40.0M 40.1I 1.3I 1.2Q 4.3M 10.3实际参数实际参数A#AcknowledgeR#Report memoryA#Disturb_inputFP#Edge_mem_bitS#Report_memoryA#Report_memoryA#Flash_freq OAN#Report_me
11、moryA#Disturb_input=#Display 可以分配参数的块可以分配参数的块程序程序青岛大学青岛大学-西门子先进自动化技术实验室西门子先进自动化技术实验室 青岛大学自动化工程学院青岛大学自动化工程学院SIEMENS定义形式参数定义形式参数使用方法使用方法图形显示图形显示只能读在块的左侧只能写在块的右侧 参数类型参数类型输入参数输出参数输入/输出 参数 定义定义inoutIn_out可读/可写在块的左侧 形式参数形式参数青岛大学青岛大学-西门子先进自动化技术实验室西门子先进自动化技术实验室 青岛大学自动化工程学院青岛大学自动化工程学院SIEMENS编辑一个可分配参数的块编辑一个可分
12、配参数的块对于无参数分配的块,此处可能是:绝对地址:I1.3 符号地址:“End_left”青岛大学青岛大学-西门子先进自动化技术实验室西门子先进自动化技术实验室 青岛大学自动化工程学院青岛大学自动化工程学院SIEMENSDisturb_inputAcknowledgeFlash_freqEdge_mem_bitDisplayENOENFC20调用一个分配了参数的块调用一个分配了参数的块Network 3:First CallNetwork 4:Second CallM40.1“Position error”“End left”.“Acknow.button”M10.3M40.0“End ri
13、ght”Q4.1“Acknow.button”M10.3M40.2符号的绝对的寻址方式寻址方式符号符号局部符号-形式参数符号表全局符号Disturb_inputAcknowledgeFlash_freqReport_memoryEdge_mem_bitDisplayENOENFC20M40.3Q5.4Report_memory青岛大学青岛大学-西门子先进自动化技术实验室西门子先进自动化技术实验室 青岛大学自动化工程学院青岛大学自动化工程学院SIEMENSLAD/FBDSTL在块调用时使用在块调用时使用EN/ENO参数参数CALLFC1 NOP 0例子?.?FC 1ENENOFC 2ENENOF
14、C 3ENENO=FC 1ENENO?.?无条件调用AI 0.1 JNB_001 CALLFC1 _001:A BR =Q 5.0FC 1ENENOI 0.1=Q 5.0条件调用青岛大学青岛大学-西门子先进自动化技术实验室西门子先进自动化技术实验室 青岛大学自动化工程学院青岛大学自动化工程学院SIEMENSFC 20 的变量声明表的变量声明表练习练习2:生成一个分配了参数的生成一个分配了参数的FC块块无参数的块无参数的块分配了参数的块分配了参数的块 FC 20AI1.2RM40.0AI1.3FPM40.1SM 40.0AM40.0AM10.3OANM40.0AI1.3=Q5.3A#Acknow
15、ledgeR#Report_memoryA#Disturb.:2.1.青岛大学青岛大学-西门子先进自动化技术实验室西门子先进自动化技术实验室 青岛大学自动化工程学院青岛大学自动化工程学院SIEMENS练习练习3:调用一个分配了参数的调用一个分配了参数的FC块块Disturb_inputReport_memoryAcknowledgeEdge_mem_bitDisplayFlash_freq第一次调用第一次调用FC20时时的参数分配的参数分配 M 40.0M 40.1I 1.3I 1.2Q 5.3M 10.3FC 20Disturb_inputReport_memoryAcknowledgeEd
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精品 s7 300 plc 课件 13 结构 编程 编辑
限制150内