西门子PLC编程基础.ppt

上传人:tian****1990 文档编号:8554842 上传时间:2020-03-29 格式:PPT 页数:43 大小:844KB
返回 下载 相关 举报
西门子PLC编程基础.ppt_第1页
第1页 / 共43页
西门子PLC编程基础.ppt_第2页
第2页 / 共43页
西门子PLC编程基础.ppt_第3页
第3页 / 共43页
点击查看更多>>
资源描述
PLC编程基础 3 1PLC的基本结构 从结构形式上PLC可分为整体式和模块式两大类 不论哪种类型的PLC 其基本结构都是相同的 CPU存储器输入输出电路编程装置电源外围接口 3 2PLC工作原理 PLC采用循环执行用户程序的方式 称为循环扫描工作方式 一个循环扫描过程周期可分为输入采样 程序执行 输出刷新三个阶段 执行OB1中的程序 循环执行 事件 日期时间中断 硬件中断等 调用其他OB FB FC 循环监视时间的开始 启动块 OB100 上电后执行一次 从模块读信号状态 并保存到过程映象区 PII 把过程映象输出表 PIQ 写到输出模块 循环程序执行 过程映象 字节0字节1字节2 PII PIQ CPU存储器区 AI2 0 Q4 3 1 1 输入采样阶段依次地读入所有输入状态和数据 并将它们存入I O映象区中的相应单元内 输入采样结束后 转入用户程序执行和输出刷新阶段 在这两个阶段中 即使输入状态和数据发生变化 I O映象区中的相应单元的状态和数据也不会改变 因此 如果输入是脉冲信号 则该脉冲信号的宽度必须大于一个扫描周期 才能保证在任何情况下 该输入均能被读入 一个扫描周期中与用户有关的三阶段 用户程序执行阶段 PLC总是按由上而下的顺序依次地扫描用户程序 在扫描每一条梯形图时 并按先左后右 先上后下的顺序进行逻辑运算 逻辑运算的结果存于映象区 上面的逻辑运算其运算结果会对下面的逻辑运算起作用 相反 下面的逻辑运算其运算结果只能到下一个扫描周期才能对上面的逻辑运算起作用 输出刷新阶段 当扫描用户程序结束后 PLC就进入输出刷新阶段 在此期间 CPU按照存在I O映象区的运算结果 刷新所有对应的输出锁存电路 再经输出电路驱动相应的外设 这时 才是PLC的真正输出 PLC的工作特点 所有输入信号在程序处理前统一读入 并在程序处理过程中不再变化 而程序处理的结果也是在扫描周期的最后时段统一输出 其工作特点是将一个连续的过程分解成若干静止的状态 极类似放映电影的原理 便于面向对象的思维 PLC仅在扫描周期的起始时段读取外部输入状态 该时段相对较短 抗输入信号串入的干扰极为有利 这种方式对于高速变化的过程可能漏掉变化的信号 也会带来系统响应的滞后 为克服上述问题 可利用立即输入输出 脉冲捕获 高速计数器或中断技术 扫描工作方式对程序执行的影响 I0 0代表外部的按纽 当按纽动作后 左面的程序只需要一个扫描周期就可完成对M0 4的刷新 而右面的程序要经过四个扫描周期才能完成对M0 4的刷新 在扫描周期极为短的情况下 100ms 无时序配合要求 感觉不到这两段程序执行的的差异 在有时序配合的情况下 这种差异要引起注意 3 3存储器及其寻址 S7CPU的存储区包括三个基本区域 即装载存储器 工作存储器RAM和系统存储器RAM 系统存储区的地址区 CPU中的寄存器 1 累加器 ACCUx 32位累加器是用于处理字节 字或双字的寄存器 S7 300有两个累加器ACCU1和ACCU2 S7 400有4个累加器ACCU1 ACCU4 2 地址寄存器2个地址寄存器作为指针用于寄存器间接寻址 3 数据块寄存器DB和DI寄存器分别用来保存打开的共享数据块和背景数据块的编号 4 诊断缓冲区 5 状态字寄存器状态字是一个16位的寄存器 用于存储CPU执行指令的状态 STEP7的可能寻址范围 设计的地址区 访问区域 缩写 加在一起的最大区域 过程映象I Q 输入 输出位 I Q 0 0 65 535 7 输入 输出字节 I QB 0 65 535 输入 输出字 IW QW 0 65 534 输入 输出双字 ID QD 0 65 532 存储器标志 存储器位 M 0 0 255 7 存储器字节 MB 0 255 存储器字 MW 0 254 存储器双字 MD 0 252 I Q外部输入 输出 I Q字节 外设 PIB PQB 0 65 535 I Q字 外设 PIW PQW 0 65 534 I Q双字 外设 PID PQD 0 65 532 定时器 定时器 T T 0 255 计数器 计数器 C C 0 255 数据块 数据块 DB DB 1 65 532 数据块 用OPNDB打开 位 字节 字 双字 DBX DBB DBW DBD 0 65 532 用OPNDI打开 位 字节 字 双字 DIX DIB DIW DID 0 65 532 数据在存储器中存取的方式 二进制数的1位 bit 只有0和1两种不同的取值 可用来表示开关量 或称数字量 的两种不同的状态 如触点的断开和接通 线圈的通电和断电等 如果该位为1 则表示梯形图中对应的编程元件的线圈 通电 其常开触点接通 常闭触点断开 反之相反 位数据的数据类型为BOOL 布尔 型 1 位 字节 字和双字 两个字节组成1个字 Word 两个字组成1个双字 DoubleWord 一般用二进制补码表示有符号数 其最高位为符号位 最高位为0时为正数 为1时为负数 最大的16位正数为7FFFH H表示十六进制数 8位二进制数组成1个字节 Byte 其中的第0位为最低位 LSB 第7位为最高位 MSB MW200 MD200 MW200 MW202 字节 字和双字的取值范围见表 位存储单元的地址由字节地址和位地址组成 如I3 2 其中的区域标识符 I 表示输入 Input 字节地址为3 位地址为2 这种存取方式称为 字节 位 寻址方式 2 数据的存取方式 输入字节IB3 B是Byte的缩写 由I3 0 I3 7这8位组成 相邻的两个字节组成一个字 MW200表示由MB200和MB201组成的1个字 MW200中的M为区域标识符 W表示字 Word 200为起始字节的地址 MD200表示由MB200 MB203组成的双字 M为区域标示符 D表示存取双字 DoubleWord 200为起始字节的地址 存储区及功能见下表 3 4数据格式与数据类型 数制 二进制数十六进制数BCD码 STEP7数据类型概述 基本数据类型 到32位 复杂数据类型 长于32位 用户定义数据类型 长于32位 STEP7基本数据类型 BOOL1True或False 1或0 BYTE8B 16 A9WORD16W 16 12AFDWORD32DW 16 ADAC1EF5CHAR8 w S5TIME16S5T 5s 200msINT16123DINT32L 65539REAL321 2或34 5E 12TIME32T 2D 1H 3M 45S 12MSDATE16D 1993 01 20TIME OF DAY32TOD 12 23 45 12 关键字 长度 位 该类型的常数举例 复杂数据类型 关键字长度 位 举例 DATE AND TIME64DT 97 09 24 12 14 55 0STRING8 字符个数 2 Thisisastring 最多254个字符的字符串 SIEMENS ARRAY用户定义测量值 ARRAY 1 20 相同数据类型的元素组 INTSTRUCT用户定义Motor STRUCT 不同数据类型的元素组 Speed INTCurrent REALEND STRUCTUDTUDTasblockUDTasarrayelement 用户定义数据类型 用户定义基本或复杂数据类型组成的STRUCTDrive ARRAY 1 4 模板 Speed INTUDT1Current REALEND STRUCT 程序块类型 故障 循环 定时 过程 OB 组织块FB 功能块FC 功能SFB 系统功能块SFC 系统功能 操作系统 3 5程序结构 用户定义的块 用户块包括组织块 功能块 功能和数据块 组织块 OB 组织块是操作系统和用户程序之间的接口 组织块只能由操作系统来启动 各种组织块由不同的事件启动 且具有不同的优先级 而循环执行的主程序则在组织块OB1中 注意 各种块 除组织块外 的数目和代码的长度是与CPU不相关的 而组织块的数目则与CPU的操作系统相关 功能块 FB 功能块是通过数据块参数而调用的 它们有一个放在数据块中的变量存储区 而数据块是与其功能块相关联的 称为背景数据块 特点 每一个功能块可以有不同的数据块 这些数据块虽然具有相同的数据结构 但具体数值可以不同 功能 FC 功能没有指定的数据块 因而不能存储信息 功能常常用于编制重复发生且复杂的自动化过程 数据块 DB 数据块中包含程序所使用的数据 块类型特点系统功能 存储在CPU的操作系统中 SFC 用户可以调用此功能 不需要存储器 系统功能块 存储在CPU的操作系统中 SFB 用户可以调用此功能 需要存储器 系统数据块 用于组态数据和参数的数据块 SDB 系统块 数据块类型和结构 CPU314中块的大小是8K字节数据块提供的最大存储空间依赖于CPU的型号 0 7 调用程序块 调用程序块 被调用的块 OB FB FC FB FC SFB SFC 程序执行 程序执行 调用另一个块的指令 块结束 STEP7为设计程序提供三种方法 基于这些方法 可以选择最适合于你的应用的程序设计方法 线性化 模块化 结构化 线性化编程 所有的指令都在一个块 OB1 内 模块化编程 每个设备的控制指令都在各自的块内 OB1按顺序调用每个块 结构化编程 不同的块调用可重复利用的代码 OB1 或其他块 调用这些块并传递相应的参数 OB1 OB1 OB1 配方A 配方B 混合器 排空 泵 排空 3 6编程方法 线性化编程 OB1 Network1 Network2 Network3 电机控制 信息 取得操作的小时数 模块化编程 主程序 子块 程序处理 程序处理g 调用另一个块的指令 块结束 OB FC FB 模块化程序的执行 结构化编程 OB1 3 7编程语言 IEC 国际电工委员会 5种编程语言的表达方式 即顺序功能图 SFC SequentialFunctionchart 梯形图 LAD LadderDiagram 功能块图 FBD FunctionBlockDiagram 指令表 InstructionList 和结构文本 ST StructuredText STEP7标准软件包配置了梯形图LAD 语句表 即IEC1131 3中的指令表 STL和功能块图FBD三种基本编程语言 STEP7还有多种编程语言作为可选软件包 如CFC SCL 西门子中的结构文本 S7 Graph和S7 HiGraph 这些编程语言中 LAD FBD和S7 Graph为图形语言 STL SCL和S7 HiGraph为文字语言 CFC则是一种结构块控制程序流程图 PLC的编程应该遵循以下基本原则 1 外部输入 输出 内部继电器 位存储器 定时器 计数器等器件的触点可多次重复使用 2 梯形图每一行都是从左侧母线开始 线圈接在最右边 触点不能放在线圈的右边 3 线圈不能直接与左侧母线相连 4 同一编号的线圈在一个程序中使用两次及以上 称为双线圈输出 容易引起误操作 应尽量避免双线圈输出 3 8PLC的编程原则 5 梯形图程序必须符合顺序执行的原则 从左到右 从上到下地执行 如不符合顺序执行的电路不能直接编程 6 在梯形图中串联触点 并联触点的使用次数没有限制 可无限次地使用
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!