施耐德PLC讲座第06章 应用程序结构.ppt
UnitytrainingcourseV2.0-module3.5:Applicationstructure1第六章第六章 应用程序结构应用程序结构UnitytrainingcourseV2.0-module3.5:Applicationstructure2概述概述n应用管理应用管理o单站多实例软件o完整的应用程序保存在单一文件中(*.STU)o版本号管理n软件结构软件结构o任务(单任务或多任务,.)o程序段和子程序o功能组件n导入导入/导出程序源文件导出程序源文件o部分或全部(一个或更多程序段,整个应用,.)n保护保护o部分或全部(一个或更多程序段,整个应用,.)n程序分析程序分析UnitytrainingcourseV2.0-module3.5:Applicationstructure3软件结构软件结构n不同任务不同任务o单个任务:主任务(MAST)o多任务:MAST+快速任务(FAST)+辅助任务(AUX)o事件任务:EVT或TIMERn执行模式执行模式o循环执行o周期执行n程序段程序段o任务被组织为多个程序段n子程序子程序-SRo在MAST,FAST和AUX任务当中,程序段可以调用子程序UnitytrainingcourseV2.0-module3.5:Applicationstructure4任务任务nMAST:主任务主任务o由程序段&子程序组成o使用LD,FBD,IL,ST或SFC编程o循环或周期扫描(0.255ms,0=循环操作)o由看门狗,系统位或字控制nFAST:快速任务快速任务o由程序段&子程序组成o使用LD,FBD,IL,ST编程o周期执行(1.255ms)o由看门狗,系统位或字控制UnitytrainingcourseV2.0-module3.5:Applicationstructure5任务任务(续续)nEVT 或或 TIMER:事件任务事件任务o减少应用程序对输入/输出模块,时间定时器事件的响应时间o单个程序段,可使用LD,FBD,IL,ST语言编程oEVTi:事件来自输入/输出模块oTIMERi:事件来自定时器(ITCNTRL功能)nAUX:辅助任务辅助任务 o用于较慢的任务处理o可以编写最多4个辅助任务程序(AUX0至AUX3),在PremiumTSXP575和Quantum140CPU6上o由程序段&子程序组成o使用LD,FBD,IL,ST编程o周期执行(从10ms至2.55s)UnitytrainingcourseV2.0-module3.5:Applicationstructure6程序处理程序处理 读输入读输入写输出写输出读输入读输入程序处理程序处理 写输出写输出循环循环 n循环循环 n+1执行模式执行模式n循环循环n周期周期S.P.=系统处理系统处理(保持保持)程序处理程序处理读输入读输入写输出写输出S.P.程序处理程序处理读输入读输入 写输出写输出S.P.周期周期周期周期UnitytrainingcourseV2.0-module3.5:Applicationstructure7多任务多任务n多任务=MAST和(FAST或EVT或AUX)n任务的优先级事件任务事件任务 快速任务快速任务主任务主任务辅助任务辅助任务UnitytrainingcourseV2.0-module3.5:Applicationstructure8多任务多任务(续续)n执行n举例:循环主任务,周期快速任务(周期=20ms)UnitytrainingcourseV2.0-module3.5:Applicationstructure9操作模式操作模式n新建任务新建任务o选择“Task”文件夹o右击=New Tasko选择类型(快速或辅助任务)o选择周期和看门狗o点击OK确认所有输入注注:如果使用如果使用 AUX 任务任务,MAST 任务任务必须是周期的必须是周期的UnitytrainingcourseV2.0-module3.5:Applicationstructure10程序段程序段n每个任务可以由许多程序段组成o无限制n与程序段相关联的属性o名称:最多32个字符o语言:LD,FBD,IL,ST或SFCo相关任务:Mast,Fast,Event,Aux,SRo条件(可选):有效位执行,直接配置o注释:最多256个字符o保护:写保护,读/写保护n程序段的执行顺序:o按在浏览器中显示的顺序执行UnitytrainingcourseV2.0-module3.5:Applicationstructure11操作模式操作模式n新建程序段新建程序段o选择“section”文件夹o右击=New Sectiono输入参数o点击OK确认所有输入n应用应用o导入一个程序段o导出一个程序段(选择要导出的程序段)o删除一个程序段(选择要删除的程序段)UnitytrainingcourseV2.0-module3.5:Applicationstructure12子程序子程序n单独编程,可以使用LD,IL,ST,FBD编程n可以被程序程序段或另一个子程序调用n嵌套层数限制为8.子程序不能调用自己(不能递归).n程序段不能调用属于其它任务的子程序UnitytrainingcourseV2.0-module3.5:Applicationstructure13功能视图功能视图nPLC项目的结构按照实际过程的结构进行组织:o功能组件的树状结构o多任务管理简化编程环境n创建模块化应用n提高程序重用性o组件导入/导出服务,变量的重新分配UnitytrainingcourseV2.0-module3.5:Applicationstructure14原则原则n对功能分析的“直接翻译”o可重复使用和嵌套不同的组件o使用程序段构建nPLC程序的基本组件oLD,IL,ST,FBD或带宏步的SFCo使用指令,EFB,DFB的功能库n用户功能块封装程序oI/O接口可以参数化o使用非定位变量:公共和私有o使用LD,ST,IL,FBD编写代码n基本和标准指令功能组件功能组件程序段程序段 EFBs&DFBs 基本指令基本指令UnitytrainingcourseV2.0-module3.5:Applicationstructure15功能视图功能视图nStation Functional文件夹允许文件夹允许:o访问,创建或删除功能组件o导出或导入整个项目o访问项目属性o保护项目n功能组件文件夹包括功能组件文件夹包括:o程序文件夹由一个或几个程序段组成o仿真表文件夹由一个或几个仿真表组成o操作屏文件夹由一个或几个操作屏组成o更低层次的功能组件UnitytrainingcourseV2.0-module3.5:Applicationstructure16创建功能模块创建功能模块n创建o直接o通过导入n创建新的功能组件n添加/创建程序段,事件,流程图,表格或屏幕o例1:程序段,事件或流程图已经存在结构视图中简单拖拽,在功能组件上放置程序段o例2:程序段,事件或流程图在结构视图中不存在当从功能视图中创建程序段时:相关任务必须在创建程序段的时候指定UnitytrainingcourseV2.0-module3.5:Applicationstructure17管理管理n移动功能组件(简单拖拽移动功能组件)n分离功能组件(断开功能模块与相关对象(程序,表格,屏幕)之间的联系)n删除一个或多个功能组件o不删除关联的代码段和仿真表o删除关联的代码段和仿真表n导入/导出功能组件o不重新分配o使用导入向导重新分配n保护功能组件中的程序段n激活功能组件中的程序段条件(强置0,强置1,强置取消)UnitytrainingcourseV2.0-module3.5:Applicationstructure18导入导入/导出功能导出功能n导出功能导出功能o复制文件,项目程序的部分或全部o生成的文件包括未受保护数据和受保护数据的引用o由扩展文件决定的导出类型(举例:*.XDB导出DFB类型,等.)n导入功能导入功能o获取已有项目程序的部分或全部o应用前自动存储o冲突管理(如果在导入时,元素已经存在)o导入之后必须进行代码分析UnitytrainingcourseV2.0-module3.5:Applicationstructure19导出文件类型导出文件类型UnitytrainingcourseV2.0-module3.5:Applicationstructure20导出操作导出操作n通过对话框o选择导出单元o右击=Exporto选择文件夹和文件名o如果有选择,选择同时导出o点击Export确认n注注:o有读/写保护的程序段不能导出.o受保护的DFB可以导出,但导出文件*.XDF被加密.UnitytrainingcourseV2.0-module3.5:Applicationstructure21导入操作导入操作n通过对话框o选择导入单元的位置o右击=Importo保存应用o选择文件夹和要导入的文件o选择是否使用导入向导o点击Import确认n注注:o导入整个应用程序,打开并选择*.XEF文件o选择使用导入向导UnitytrainingcourseV2.0-module3.5:Applicationstructure22冲突管理冲突管理n导入错误报告导入错误报告对话框(如果元素已经存在)n变量管理:o保持全部o替换全部o重命名:双击一个单元的Rename 列UnitytrainingcourseV2.0-module3.5:Applicationstructure23向导向导n在导入期间,可以使用助手以方便元素进行重新指定n选中导入选项“withwizardn每种元素类型有一个选项卡(DDT,DFB,变量,程序段,子程序,事件)n通用命令o查找和替换(可以替换字符串)o调用和保存UnitytrainingcourseV2.0-module3.5:Applicationstructure24全局保护全局保护n激活程序段的全局保护1右击并选择属性2使保护有效3输入密码UnitytrainingcourseV2.0-module3.5:Applicationstructure25程序段保护程序段保护n保护程序段(在全局保护已激活的前提下)1 右击并选择程序段的属右击并选择程序段的属性性2 选择保护选择保护:只读只读 读读/写写UnitytrainingcourseV2.0-module3.5:Applicationstructure26分析应用项目分析应用项目n允许检测每个应用程序修改后产生的错误n在输出窗口自动显示在分析时检测到的所有类型的错误n在输出窗口出现消息,允许你通过双击直接访问出现错误的程序部分UnitytrainingcourseV2.0-module3.5:Applicationstructure27创建创建n下拉菜单“Build”可以用于生成项目oRebuildAllProject创建可以下载至PLC或PLC仿真器的文件oBuildProject对现有项目的改变进行生成输出窗口输出窗口