课题 | 实训七、子程序调用指令基本知识 6课时 | ||||||||||||||||||||||||||||||||||||||||||||||||||
教 学 要 求 | 知识目标 | ||||||||||||||||||||||||||||||||||||||||||||||||||
能力目标 | |||||||||||||||||||||||||||||||||||||||||||||||||||
情感目标 | |||||||||||||||||||||||||||||||||||||||||||||||||||
教材 分析 | 重点 | ||||||||||||||||||||||||||||||||||||||||||||||||||
难点 | |||||||||||||||||||||||||||||||||||||||||||||||||||
教具 与设备 | |||||||||||||||||||||||||||||||||||||||||||||||||||
教法 | 教授法、演示法、实验法 | ||||||||||||||||||||||||||||||||||||||||||||||||||
板书 设计 | |||||||||||||||||||||||||||||||||||||||||||||||||||
教学内容 复习: 循环指令在的具体显现。 跳转指令有哪些? 顺控继电器(SCR)指令可以应用在哪些现象中? 新课教学: 子程序是将程序进行分块。主程序中使用的指令决定具体子程序的执行状况。当主程序调用子程序并执行时,子程序执行全部指令直至结束。然后,系统将控制返回至调用子程序网络中的主程序。子程序用于为程序分段和分块,使其成为较小的、更易管理的块。在程序中调试和维护时,可以利用这项优势。通过使用较小的程序块,对这些区域和整个程序简单地进行调试和排除故障。只在需要时才调用程序块,可以更有效地使用PLC,因为所有的程序块可能无须执行每次扫描。子程序是应用程序中的可选组件,只有被主程序、中断程序或者其他子程序调用时,子程序才会执行。调用子程序时可以带参数也可以不带参数。 1. 子程序指令格式及功能
当有一个子程序被调用时,系统会保存当前的逻辑堆栈,置栈顶值为1,堆栈的其他值为零,把控制交给被调用的子程序。当子程序完成之后,恢复逻辑堆栈,把控制权交还给调用程序。因为累加器可在主程序和子程序之间自由传递,所以在子程序调用时,累加器的值既不保存也不恢复。 当子程序在同一个周期内被多次调用时,不能使用上升沿、下降沿、定时器和计数器指令。 在被中断服务程序调用的子程序中不能再出现子程序调用。不禁止递归调用(子程序调用自己),但是当使用带子程序的递归调用时应慎重。 2. 子程序的有效操作数
3. 带参数子程序调用参数类型 局部变量表中的变量类型区定义变量是传入子程序(IN)、传入和传出子程序(IN_OUT)或者传出子程序(OUT)。表6-79中描述了一个子程序中的参数类型。要加入一个参数,把光标放到要加入的变量类型区(IN、IN_OUT、OUT)。点击鼠标右键可以得到一个菜单选择。选择插入选项,然后选择下一行选项。这样就出现了另一个所选类型的参数项。
4. 子程序建立的方法 建立子程序有以下几种: (1) 从“编辑”菜单点击插入选择子程序,如图xxx所示; 图xxx子程序建立方法1 (2) 在指令树,鼠标右键点击“程序块”,在下拉菜单中点击插入,选择插入选择子程序,如图XXX所示; 图xxx子程序建立方法2 (3) 从“程序编辑器”或者“变量表”中单击鼠标右键,在下拉菜单中点击插入,选择插入选择子程序,如图XXX所示; 图xxx子程序建立方法3 选 择插入子程序之后,在程序编辑器的底部会出现一个新标记,代表新的子程序,在程序编号从0开始自动增加。子程序指令在指令树最下端调用子程序中自动增加如图XXX。子程序可以重新命名,具体方法是:鼠标右键点击指令树中的某一“SBR_n”或者在编辑窗口下方的某一“SBR_n”,在窗口中选择“重命名”,然后输入新名称即可。 图XXX 子程序指令增加 (4) 带参数子程序建立方法 使用程序编辑器中的局部变量表为子程序指定变量,首先插入需要的子程序,点击编辑窗口下方的“SBR_n”标记打开子程序。在子程序中的局部变量表中指定变量,然后打开主程序,双击指令树中的“SBR_n”(或者左键将“SBR_n”拖到程序编辑器中)即可。 作业:子程序调用指令应用示例(点动与连续) | |||||||||||||||||||||||||||||||||||||||||||||||||||
教学 反思 | |||||||||||||||||||||||||||||||||||||||||||||||||||
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论