s7 200模拟量比例换算算指令vd是什么意思

搜索地图_必途级别: 实习会员
发帖数量: 3 个
工控威望: 5 点
下载积分: 109 分
在线时间: 28(小时)
注册时间: 最后登录:
描述:模拟量转换
图片: =600) window.open('/attachment/Mon_523_fea614.png');" onload="if(this.width>'600')this.width='600';if(this.height>'3000')this.height='3000';" >
描述:模拟量转换
图片: =600) window.open('/attachment/Mon_523_706dbd3.png');" onload="if(this.width>'600')this.width='600';if(this.height>'3000')this.height='3000';" >
有谁给我解释下图的西门子的温度模拟量转换吗
级别: 实习会员
发帖数量: 3 个
工控威望: 5 点
下载积分: 109 分
在线时间: 28(小时)
注册时间: 最后登录:
我就是不知道为什么要整型到双整型转换,双整型到实数的转换,trunc是什么指令,哪位大虾帮帮忙,解释下,还有AIW14对应的是PLC的哪个触点
级别: 工控侠客
发帖数量: 487 个
工控威望: 3426 点
下载积分: 18910 分
在线时间: 1281(小时)
注册时间: 最后登录:
TRUNC是一个取整的指令。其实照上面的写法可以用整数除法就可以。不用这么转来转去。
级别: 实习会员
发帖数量: 3 个
工控威望: 5 点
下载积分: 109 分
在线时间: 28(小时)
注册时间: 最后登录:
虽然不太懂,但谢谢了
擡頭白雲悠悠,前竟一片黯愁……
级别: 略有小成
发帖数量: 289 个
工控威望: 341 点
下载积分: 23357 分
在线时间: 227(小时)
注册时间: 最后登录:
首先 是读取模拟14通道里面的数据出来,然后在转换成整数,在整数除以十得出实际数值、最后四舍五入得出最后结果,还有AIW14不是PLC的哪个触点,而是模拟量模块的一个输入通道。
级别: 略有小成
发帖数量: 169 个
工控威望: 343 点
下载积分: 596 分
在线时间: 316(小时)
注册时间: 最后登录:
因为没有整数,实数相互转换的指令,所以要这样转。
PLC集成控制+机器人控制+视觉系统+运动控制+远程控制
级别: 家园常客
发帖数量: 1014 个
工控威望: 605 点
下载积分: 17095 分
在线时间: 313(小时)
注册时间: 最后登录:
AIW14是要看你模块的放的位置、这个跟你的PLC有关系 、特别是224XP、235模拟量模块位置安装的放的位置不一样,首先程序是整数是16位转换32位的双整数、32位的双整数转换成32位浮点数(就是小数)、32的浮点数除以一个检测值的倍率、最后取整数、有两次取整、程序可以没 有必要、然后在32的整数转换16位的整数、一般模拟量控制特别是200PLC几乎都要转换、VD1300\VD1304其时可以用AC0\AC1\AC2\AC3\来表示
PLC集成控制+机器人控制+视觉系统+运动控制+远程控制+总线控制(EtherCAT\PROFINET\PROFIBUS\CANopen\MODBUS )销售大功率总线伺服
级别: 略有小成
发帖数量: 301 个
工控威望: 351 点
下载积分: 840 分
在线时间: 141(小时)
注册时间: 最后登录:
怀才就象怀孕,时间久了会让人看出来
级别: 略有小成
发帖数量: 32 个
工控威望: 301 点
下载积分: 646 分
在线时间: 49(小时)
注册时间: 最后登录:
<div class="f14" id="read_楼&&发表于: 26天前 只看该作者 | 小 中 大&& AIW14是要看你模块的放的位置、这个跟你的PLC有关系 、特别是224XP、235模拟量模块位置安装的放的位置不一样,首先程序是整数是16位转换32位的双整数、32位的双整数转换成32位浮点数(就是小数)、32的浮点数除以一个检测值的倍率、最后取整数、有两次取整、程序可以没 有必要、然后在32的整数转换16位的整数、一般模拟量控制特别是200PLC几乎都要转换、VD1300\VD1304其时可以用AC0\AC1\AC2\AC3\来表示很详细,很专业当前位置: >>
S7200培训教材
苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材1目录一.前言-----------------------------------5二.PLC 基础部分 1.PLC 的硬件型号及选型方法--------------------7 2.PLC 工作原理---------------------
-----------13 3.PLC 接线原理--------------------------------15 4.PLC 控制与继电器控制的异同点----------------17 5.IEC61131-3 标准编程语言说明-----------------18 三.PLC 编程软件使用及常用程序的编程 1.软件安装及注意点---------------------------19 2.软件使用技巧-------------------------------23 3.简单案例分析-------------------------------20四.PLC 软元件的用法及编程1.软元件的功能及应用 输入继电器-----------------------------------23 输出继电器-----------------------------------23 辅助继电器-----------------------------------24 定时器---------------------------------------28 计数器---------------------------------------36 变量存储器-----------------------------------40 累加器---------------------------------------44苏州天天自动化苏州市新市路 138 号1 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材22.软元件的寻址------------------------------46 3.工程案例中软元件的使用方法及技巧----------52五.PLC 的指令系统及指令应用1.基本功能指令 触点指令-------------------------------------60 置位及复位指令-------------------------------67 上升沿及下降沿指令---------------------------70 步进指令-------------------------------------73 2.应用指令 传送与比较指令 传送指令-------------------------------------86 块传送指令-----------------------------------88 字节交换指令---------------------------------89 比较指令-------------------------------------90 转换指令-------------------------------------92 算术运算指令 加法指令------------------------------------95 减法指令------------------------------------97 乘法指令------------------------------------98 除法指令------------------------------------99 递增指令------------------------------------100 递减指令------------------------------------101苏州天天自动化
苏州市新市路 138 号 2 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材3逻辑与指令----------------------------------110 逻辑或指令----------------------------------111 逻辑异或指令--------------------------------112 取反指令------------------------------------113 流程指令 跳转指令-------------------------------------115 循环指令-------------------------------------116 有条件结束指令-------------------------------117 有条件停止指令-------------------------------117 移位指令 左移位指令-----------------------------------119 右移位指令-----------------------------------120 填表指令-------------------------------------123 先进先出指令---------------------------------124 后进先出指令---------------------------------124 填充指令-------------------------------------125 查表指令-------------------------------------125六.PLC 编程步骤及编程技巧1.脉冲及控制次序类编程方法--------------------127 2.顺序动作控制类程序--------------------------136 3. 记忆+比较类编程技巧------------------------144苏州天天自动化苏州市新市路 138 号3 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材4前言:在 PLC 诞生之前,传统的流水线及设备通过错综复杂的继电器电路控制,使 设计工程师及其麻烦,并且在设备后续的改造、升级及维护工作中及其不便,基 于此原因,美国数字公司于 1969 年发明了第一台可编程逻辑控制器(简称 PLC) , 于美国通用汽车公司生产线上投产使用。 随着计算机技术的不断改进,PLC 技术也突飞猛进,目前 PLC 在工厂设计中的 应用主要分为以下几点: 1.开关量逻辑控制 利用 PLC 最基本的逻辑运算、定时、计数等功能实现逻辑控制,可以取代传 统的继电器控制,用于单机控制、多机群控制、生产自动线控制等,例如:机床、 注塑机、印刷机械、装配生产线、电镀流水线及电梯的控制等。这是 PLC 最基本 的应用,也是 PLC 最广泛的应用领域。 2.运动控制 PLC 通过自身的定位模块及其他运动控制器控制步进电机或伺服电机, 实现单 轴或多轴精确定位。这一功能广泛用于各种机械设备,如对各种机床、装配机械、 机器人等进行运动控制。 3.过程控制 大多数 PLC 都具有多路模拟量 I/O 模块和 PID 控制功能。所以 PLC 可实现模 拟量控制,而且具有 PID 控制功能的 PLC 可构成闭环控制,用于过程控制。这一 功能已广泛用于锅炉、反应堆、水处理、酿酒以及闭环位置控制和速度控制等方 面。 4.数据处理 现代的 PLC 都具有数学运算、数据传送、转换、排序和查表等功能,可进行 数据的采集、分析和处理,同时可通过通信接口将这些数据传送给其它智能装置, 如计算机数值控制(CNC)设备,进行处理。 5.通讯联网 PLC 的通信包括 PLC 与 PLC、PLC 与上位计算机、PLC 与其它智能设备(变频 器、现场测试仪器等)之间的通信,PLC 系统与通用计算机可直接或通过通信处理 单元、通信转换单元相连构成网络,以实现信息的交换,并可构成“集中管理、 分散控制”的多级分布式控制系统,满足工厂自动化(FA)系统发展的需要。苏州天天自动化苏州市新市路 138 号4 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材5给 PLC 初学者的一点建议:1.养成良好的兴趣 既然都对 PLC 编程没有兴趣,那怎么可能学好呢。因此可以把编程当成一项趣 味的智力游戏,这样就会促使你有足够及毅力耐心去完成编程。 2.PLC 学习注重实践,没有实践绝对学不好。这一点也是学习 PLC 的最关键的。 因此编程时需要有 PLC 及相关硬件设备作为练习的对象,这样在检测程序时也能 直观的反应程序与实际设备动作情况的关系,以便设备动作错误时可以很容易的 找出故障点,否者没有控制对象,故障点难易分析,对编写的程序也难以判断正 确与否。 3.养成编程的好习惯 在编写稍复杂的项目时,我们需要对项目的流程进行分析----即绘制流程图 在编写程序时,使用的中间继电器要有顺序及规则,否则在编程时会非常紊乱, 并且在以后的程序修改中及其麻烦。 同时,在编写程序过程中,把每一步、每一个信号的作用及用意进行标注,这 样你就知道自己编程每一步的用意,并且在回看程序时也一目了然。 4.经常与同行交流 PLC 的应用及其广泛, 其控制功能也千变万化, 与同行交流能促进知识面的拓展, 并且在交流过程中能体现自身的不足。 同时当你遇到问题时,交流尤为重要,自己不懂的技术,可能只要有人稍加提示, 会变得很简单就可以解决 5.最后目前在网络上有很多 PLC 的学习资料及相关技术,可以通过网络对相关技 术进行了解,这样可以对各种技术都有所了解,以便以后使用时有针对性的学习。苏州天天自动化苏州市新市路 138 号5 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材6第一章.PLC 的硬件操作的软件使用技巧1.PLC 硬件结构1.1 PLC 的型号 目前 PLC 品牌繁多,常用的 PLC 如下: 国外 PLC:施耐德 PLC,罗克韦尔(A-BPLC) ,德国西门子公司 S7-400/300/200 GE 公司,日本欧姆龙、三菱、富士、松下、东芝等 国内 PLC:PLC 生产厂约 30 家:深圳德维森,深圳艾默生、无锡光洋、无锡信捷、 北京和利时、北京凯迪恩、北京安控、黄石科威、洛阳易达、浙大中控、浙大中 自,南京冠德、兰州全志等。S7-200 系列小型 PLC,控制功能也是相当完善,但控制点数最大为 248 点,价格经 济,在小型控制设备中应用非常广泛。苏州天天自动化苏州市新市路 138 号6 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材7S7200 系列 PLC 常用型号规格有:其中 CPU224XP 及 CPU224XPsi 自带 2 路模拟量输入和 1 路模拟量输出苏州天天自动化苏州市新市路 138 号7 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材8S7-200 系列 CPU 的基本性能:*1.您必须计算电源消耗定额,从而确定 S7-200CPU 能为您的配置提供 多少功率或电流,如果超出 CPU 的电源定额值,那么,你可能无法将 全部模块连上去,关于 CPU 和扩展模块要求,可参数 S7-200 系统手册 的附录 A苏州天天自动化苏州市新市路 138 号8 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材9扩展 I/0 模块 扩展 I/O 模块是当 PLC 自身点数不够时,为了减少成本,无需从新购买点数跟多 的 PLC,可以通过购买扩展模块 I/O 来补充 PLC 的点数。除扩展 I/O 以外,S7-200 系列 PLC 还具有其他的功能模块,如模拟量模块、温度 模块、通讯模块、位置控制模块等,具体型号如下表所示: S7-200 系列 PLC 的特殊功能扩展模块说明: 扩展模块订货号苏州天天自动化苏州市新市路 138 号9 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材10PLC 的选型: (讲解后,再作练习巩固) 小型机选型规则(依据) : 1. I/O 点数 在满足 I/O 点数的情况下,一定要留有一定的裕量 2. 存储器容量 不同机型其存储器容量不一,如 CPU221 容量 4096 字节,CPU224 容量 8192 字 节,并且不同的编程人员,其编写的程序量也相差甚大。一般来讲,PLC 容量 都能满足控制要求。 3. CPU 性能 不同的机型其控制功能不同,如 CPU221 不具备扩展能力,而 CPU222 以上都可 以进行扩展,并且不同 CPU 之间在网络通讯、运算、编程等方面的功能也有所 不同。 4. 经济性 不同型号及点位的 PLC 其价格也各不相同,同时也应考虑应用的可扩展性、可 操作性、稳定性等诸多因素。 当然,在不同的行业,PLC 选择的依据有所不同,比如在某些石化行业,大型炼钢 厂,某些医药行业等的特殊要求决定了他们会从系统的稳定性、系统响应速度以 及系统耐久性方面考虑选择高端的 PLC,因为一旦设备出现故障或停机,造成的损 失不是说这些控制器所能比拟的。 例:现有一套小单机,主要控制一些继电器、接触器、电磁阀、指示灯等开关量 信号,并通过一些按钮、行程开关、接近开关、光电开关等开关量输入信号。 统计后,输入信号需要 18 个,输出信号需要 20 个,请选择性价比较高的 S7-200 系列 PLC? 1.从功能上分析, 本系统只需简单的开关量逻辑控制, 并且点数较少, 因此 S7-200 系列的 PLC 都能满足控制要求,因此我们从性价比较高的 CPU221 系列开始选型。 2.根据要求,I/O 总点数超过 10 点,而 CPU221 的 PLC 的 I/O 点数为 10 点,并且 不能扩展,因此不能选择 CPU221 的 PLC 而 CPU222 的 I/O 点数为 14 点,8 入 6 出,显然点数不够,且相差较远。 若用扩展模块补充,CPU222 能扩展 2 个模块。则输入需 10 点以上,输出需 14 点以 上,则可考虑买一个 16 入 16 出的 EM233 继电器输出,但是此模块对内部电源的 功耗较大,若信号接通较多,则可能导致 CPU 功率不够而出现故障 因此,比较合理的做法是选择 CPU224 的 PLC 本体 I/O 点数为 14 入 10 出 输入点补充 4 点以上,输出点补充 10 点以上 因此可加一个 EM221 的 8 点输入和两个 8 点的 EM222 继电器输出模块 或者可加一个 EM223 的 8 入 8 出的模块和一个 8 点的 EM222 继电器输出模块苏州天天自动化苏州市新市路 138 号10 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材111.2.PLC 硬件结构PLC 的硬件结构组成图如下:一个 PLC 主要包括: 中央处理器(CPU)、输入输出(I/O)、存储器、设备接口、电源等 小型 PLC 是把以上硬件集成在一起,购买后可以直接使用,非常方便。 中大型 PLC 主要是模块式的,其电源、CPU、I/O 模块等都需要单独购买,并通过 机架有机的组合在一起,编程时有时需要进行硬件组态。 模拟定位器 1.存储地址 SMB28 模拟定位器 2.存储地址 SMB29苏州天天自动化苏州市新市路 138 号11 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材122.PLC 的工作原理PLC 工作的基本步骤如下图所示:PLC 从自诊断一直到输出刷新为一个扫描周期。 即 PLC 的扫描周期为:自诊断、通讯、输入采样、用户程序执行、输出刷新等所 有时间的总和。 PLC 是一遍又一遍的重复循环执行着扫描周期,即从自诊断到输出刷新,然后再从 自诊断到扫描周期。。。 。。。这样一直循环扫描。 PLC 的工作原理:PLC 采用顺序扫描,不断循环的工作方式. 1.自诊断: 即 PLC 对本身内部电路、内部程序、用户程序等进行诊断,看是否又故障发生, 若有异常,PLC 不会执行后面通讯、输入采样、执行程序、输出刷新等过程,处于 停止状态。 2.通讯: PLC 会对用户程序及内部应用程序进行数据的通讯过程 3.输入采样: PLC 每次在执行用户程序之前, 会对所有的输入信号进行采集,判断信号是接通还 是断开,然后把判断完的信号存入“输入映像寄存器” ,然后开始执行用户程序, 程序中信号的通与断就根据“输入映像寄存器”中信号的状态来执行。 4.执行用户程序: 即 PLC 对用户程序户逐步逐条的进行扫描的过程。 5.输出刷新: PLC 在执行过程中,输出信号的状态存入“输出映像寄存器” ,即使输出信号为接 通状态, 不会立即使输出端子动作,一定要程序执行到 END(即一个扫描周期结束) 后,才会根据“输出映像寄存器”内的状态控制外部端子的动作。苏州天天自动化
苏州市新市路 138 号 12 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材13比较下二个程序的异同: 程序 1:程序 2:这两段程序只是把前后顺序反了一下,但是执行结果却完全不同。 程序 1 中的 Q0.1 在程序中永远不会有输出。 程序 2 中的 Q0.1 当 I0.1 接通时就能有输出。 这两个例子说明:同样的若干条梯形图,其排列次序不同,执行的结果也不同 顺序扫描的话,在梯形图程序中,PLC 执行最后面的结果。苏州天天自动化苏州市新市路 138 号13 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材143 PLC 的配线(学员动手操作)1.输入点接线: 每个输入点都有一个内部信号,若内部信号得电,则 PLC 程序中的常开点接通, 常闭点断开。若内部信号失电,则 PLC 程序中的常开点断开,常闭点。 CPU22X 型: 输入信号极性可以相反,即 NPN 及 PNP 传感器都可以接 接线图如下:2.输出点接线: 当 PLC 内部程序中的输出点线圈接通时,对应的输出点的内部输出继电器接通, 使对应的 COM 端则与输出端子导通。 当 PLC 内部程序中的输出点线圈断开时,对应的输出点的内部触点断开,COM 端则 与输出端子断开。 若是晶体管输出,则输出端 M 接(-) 端接(+) ,L ,输出点为正电压, 因此负载一端接输出点,另一端接(-)极 若是继电器输出,则负载 24V 及 220V 都可以,并且极性可以相反(只要负载允许)苏州天天自动化苏州市新市路 138 号14 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材15输入输出点分配(讲解后再作练习巩固) S7-200PLC 本身带有一定数量的输入、输出点。 其输入点信号从 I0.0 开始往后以 8 进制排列,I0.0~I0.7、I1.0~I1.7。。 。。 其输出点信号从 Q0.0 开始往后以 8 进制排列,Q0.0~Q0.7、Q1.0~Q1.7。。 。。 当用到扩展模块时,输入点的扩展模块第一个信号应按前面输入信号占用的字节 通道往后排序 同样输出点扩展模块的信号也按前面输出信号的占用的字节通道往后排序 I/O 分配举例:如下图所示:主机 I0.0 Q0.0 I0.1 Q0.1 I0.2 Q0.2 I0.3 Q0.3 I0.4 Q0.4 I0.5 Q0.5 I0.6 Q0.6 I0.7 Q0.7 I1.0 Q1.0 I1.1 Q1.1 I1.2 I1.3 I1.4 I1.5模块 1 I2.0 I2.1 I2.2 I2.3 I2.4 I2.5 I2.6 I2.7模块 2 Q2.0 Q2.1 Q2.2 Q2.3 Q2.4 Q2.5 Q2.6 Q2.7模块 3 AIW0 AIW2 AIW4 AIW6 AQW0模块 4 I3.0 Q3.0 I3.1 Q3.1 I3.2 Q3.2 I3.3 Q3.3模块 5 AIW8 AIW10 AIW12 AQW2苏州天天自动化苏州市新市路 138 号15 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材164.正反转的 PLC 控制以下为继电器控制电机正反转的控制电路 当按下 SBf 按钮,继电器 KMf 线圈得电,其常开触点吸合,电机正转。 当按下 SBr 按钮,继电器 KMr 线圈得电,其常开触点吸合,电机反转梯形图,其中 I0.1 是 SBf 按钮,I0.2 是 SBR 按钮,I0.3 是 SB1 按钮从以上继电器图与 PLC 梯形图可以看出,他们两者非常类似,除了触点、线圈符 号不同,其他都很相似。 值得提出的是继电器接线与 PLC 接线的方法不同,PLC 梯形图内的常开、常闭触 点用法也不同。苏州天天自动化
苏州市新市路 138 号 16 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材175.PLC 的编程语言PLC 的编程语言主要有:指令表编程、梯形图编程、顺序功能图、功能块图、 结构化文本等 1 指令表 IL:此语言类似于计算机的汇编语言,但比汇编语言通俗、易懂,并且 在各种编程语言中应用最早。部分梯形图及其他语言无法表示的程序,必须用指 令表才能编程。 2 梯形图 LD:梯形图沿用了继电器的触点、线圈、连线等图形与符号,是编程语 言中应用最为广泛的一种。 3 顺序功能图 SFC:是一种新颖的、按照工艺流程图进行编程的图形编程语言,这 是一种”IEC”标准推荐的首选编程语言,近年来开始逐步的普及与推广 4 功能块图 FBD:此语言在三菱 PLC 中应用较少,在西门子 PLC 中应用为多 5 结构化文本 ST:在一些大型、复杂的控制系统中,需要将开关量控制、模拟量 控制、 数值计算、 通信等功能和为一体, 此时 PLC 需要通过计算机中常用的 BASIC、 PASCAL、C 等语言进行结构化编程,才能完成设计苏州天天自动化苏州市新市路 138 号17 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材18第四节 PLC 编程软件的使用 4.1S7-200 编程软件 MicroWIN SP6 版本安装详细说明1.首先打开安装软件文件夹“ ” 如下图所示:2. 注意,在安装的时候,最好把其他应用程序关掉,包括杀毒软件,防火墙,IE, 办公软件。因为这些软件可能会调用系统的其他文件,影响安装的正常进行。苏州天天自动化苏州市新市路 138 号18 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材194.3 逻辑顺控程序案例分析1.容器注水项目,如下图所示:说明:容器初始状态是空的,水位传感器 FL1 悬空断开,进水阀打开,这样水开 始流入容器。当容器逐渐的注满了水,浮球被抬起,水位传感器接通,从而控制 进水阀关闭,停止注水。当容器开始防水,水位降低,进水阀从新打开。程序如下:2.多点起停程序:如下图:前端有两个按钮 I0.0 和 I0.1,后端也有两个按钮 I0.2 和 I0.3,从前端及后端都能 通过相应的按钮控制 Q0.0 的通断。 程序如下:苏州天天自动化苏州市新市路 138 号19 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材203.智力抢答项目:要求: 主持人宣布开始答题,则三人开始抢答 谁先按下按钮,主持人面前的灯就亮。迟按的人,主持人面前的灯不会亮 主持人按下复位按钮,把灯熄灭。 4.马达正反转: 要求: 按下正转按钮 I0.1,马达立刻正转 Q0.1 按下反转按钮 I0.2,马达立刻反转 Q0.2 同时按下正反转按钮,马达立刻停止 程序如下:苏州天天自动化苏州市新市路 138 号20 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材21第二章 软元件的功能与用法1.软元件的功能及应用 输入继电器-----------------------------------I 输出继电器-----------------------------------Q 位存储器-------------------------------------M 定时器---------------------------------------T 计数器---------------------------------------C 变量存储器-----------------------------------V 累加器---------------------------------------AC2.软元件的寻址 3.工程案例中软元件的使用方法及技巧 金属板收料系统案例 全自动洗衣机控制系统 交通信号灯控制系统苏州天天自动化苏州市新市路 138 号21 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材221 软元件功能及应用目的:熟练掌握各软元件的功能、用法 FX 系列 PLC 主要的内部软元件有: 输入寄存器(I)、输出寄存器(Q)、位存储区(M),、变量存储区(V) 、局部存储 区(L) 、定时器(T) 、计数器(C) 、累加器(AC) 、特殊存储区(SM) 。 这些软元件是 PLC 编程时的必须元件,编程就是利用这些软元件进行的。 因此,熟练掌握这些软元件是编程的前提。 下表中 S7-200CPU 的内存地址范围: 存取 类型 CPU 221 CPU 222 V 0.0 - .0 - 2047.7 I 0.0 - 15.7 0.0 - 15.7 Q 0.0 - 15.7 0.0 - 15.7 M 0.0 - 31.7 0.0 - 31.7 位 SM 0.0 - 179.7 0.0 - 299.7 S 0.0 - 31.7 0.0 - 31.7 T 0 - 255 0 - 255 C 0 - 255 0 - 255 L 0.0 - 59.7 0.0 - 59.7CPU 0.0 0.0 0.0 0.0 0.0 0.0 0 0 0.0224 - 5119.7 - 15.7 - 15.7 - 31.7 - 549.7 - 31.7 255 255 - 59.7CPU 0.0 0.0 0.0 0.0 0.0 0.0 0 0 0.0226 - 5119.7 - 15.7 - 15.7 - 31.7 - 549.7 - 31.7 255 255 - 59.71.输入及输出寄存器的编号及功能 I、Q 输入输出点的作用与功能: 1 输入:输入寄存器是 PLC 接受外部传感器的信号,其状态只能由外部开关决定, PLC 不能改变输入信号状态。 常见的输入元器件:按钮,选择开关,光电开关,行程开关,传感器等。 2 输出:输出寄存器是 PLC 通过运行用户程序,控制输出端子的状态,从而通过输 出端子来控制外部负载的通与断 常见的输出元器件:电磁阀,继电器,接触器,指示灯,显示器等。 注:输入继电器只能由外部信号驱动,而不能由 PLC 指令来驱动 输出继电器只能由 PLC 指令来驱动, 外部信号不能直接驱动 PLC 的输出继电器。 但是,为了方便用户调试,在 PLC 编程软件内设有“强制”功能,可以通过软件 改变信号的状态,从而模拟现场信号。苏州天天自动化苏州市新市路 138 号22 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材232. 位存储区 M (又称中间继电器)可编程控制器内偶许多中间继电器。这类中间继电器与实际的继电器原理类似, 有线圈,也有触点。 不同的是 PLC 内部的中间继电器是嵌入在 PLC 软件内, 用户可以随意使用的软继 电器,但是,中间继电器不能直接驱动外部负载,它只供 PLC 内部使用,外部负载 的驱动要通过输出继电器进行。 而实际的继电器需要用户购买,并可以直接驱动负载。中间继电器的一般用法说明:中间继电器 M 一般由线圈、常开触点、常闭触点组成。 线圈可以通过 PLC 内的软元件的触点驱动,而其触点根据线圈的状态而动作。 当中间继电器线圈得电输出时,其常开触点接通,常闭触点断开 当中间继电器线圈失电断开时,其常开触点断开,常闭触点接通 注:某些特殊辅助继电器线不需要驱动线圈,其触点就会动作。下面会列举几个。 下面举例说明中间继电器的几种用法: 中间继电器的一般用法举例: 应用程序举例: 案例 1.在自动控制系统中,按下启动按钮 I0.0,系统启动,Q0.0 输出,为了防止 操作员勿动作,因此停止按钮做成 2 个,I0.1 及 I0.2,即同时按下 I0.1 及 I0.2, 系统才能停止。 程序如下:苏州天天自动化苏州市新市路 138 号23 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材242.特殊存储区 SM 特殊存储器标志位提供大量的状态和控制功能。 下表列出了部分常用的特殊存储器特殊存储器 SM 的应用举例: 案例 1.按下启动按钮 I0.0,指示灯 Q0.0 以 1 秒的周期闪烁, 按下停止按钮 I0.1,指示灯灭。苏州天天自动化苏州市新市路 138 号24 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材25位存储器的综合案例: 松开按钮 I0.0,启动水泵 Q0.0.(即按下按钮 I0.0,水泵不启动,松开后才会启动) 松开按钮 I0.1,停止水泵 Q0.0.(即按下按钮 I0.1,水泵不停止,松开后才会停止) 1.启动水泵程序:苏州天天自动化苏州市新市路 138 号25 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材263. 状态继电器的编号和功能 S 状态继电器 S 是对工序步进控制简易编程的一种常用软元件,经常与步进梯形图 指令 STL 结合使用。注:在后面讲解步进梯形图时,还会重点介绍状态继电器,这里不具体展开。苏州天天自动化苏州市新市路 138 号26 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材274. 定时器的编号及功能 定时器:定时器参数表:定时器类型 TONR 分辨率 1ms 10ms 100ms 1ms TON、TOF 10ms 100ms 最大值 32.767 327.67 .767 327.67 3276.7 定时器号码 T0,T64 T1-T4,T65-T68 T5-T31,T69-T95 T32,T96 T33-T36,T97-T100 T37-T63,T101-T255苏州天天自动化苏州市新市路 138 号27 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材28接通延时定时器(TON) TON 功能及用法: TON 指令在启用输入端使能后,开始计时。 当前值(Txxx)大于或等于预设时间(PT)时,定时器触点接通。 当输入端断开时,接通延时定时器当前值被清除,触点断开 达到预设值后,定时器仍继续计时,达到最大值 32767 时,停止计时。用法举例:此例中,定时器号是 T37,因此此定时器为 100ms 的定时器 定时器预设值为 60,即定时时间为:60*100ms=6s 初始时,I0.1 断开,定时器当前值为 0 当 I0.1 接通,则定时器开始计时,当前值到达 60 后,定时器常开点接通。 到达预设值后若 I0.1 还是接通,则定时器继续计时,直到当前值到达 32767 在定时过程中,只要 I0.1 断开,则定时器当前值清 0,触点断开。掉电保护性接通延时定时器(TONR) TONR 功能及用法: TONR 指令在启用输入端使能后,开始计时。 当前值到达 80 后,触点接通。 到达预设值后若 I0.1 还是接通,则定时器继续计时,直到当前值到达 32767 若在计时过程中 I0.1 断开,则定时器保持当前值不变。TONR 指令功能与 TON 指令类似,TONR 指令带保持功能苏州天天自动化
苏州市新市路 138 号 28 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材29若要使定时器复位,清 0,则需用复位指令断开延时定时器(TOF) TOF 功能及用法:TOF 指令用于在输入关闭后,延迟固定的一段时间再关闭输出。 当输入信号 I0.1 使能后,定时器触点 T38 立刻接通,当前值被清 0,并保持此状 态。 当输入信号 I0.1 由接通→断开时,定时器开始计时,当前值到达设定值,定时器 触点断开。当前值停止计时。 若在定时器计时过程中,输入信号 I0.1 接通,则定时器仍保持接通状态。当前值 清 0.注:使用定时器时,不管是哪种类型的定时器(TON,TONR,TOF) ,定时器号不能重 复苏州天天自动化苏州市新市路 138 号29 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材30案例程序分析: 案例 1.延时启动程序 按下按钮 I0.0, 马达 Q0.Y0 延时 6 秒后启动, 按下停止按钮 I0.1, 马达立即停止。注:程序通定时器不是直接由 I0.0 来定时,因为当按下启动按钮 I0.0 时,定时 器可以计时,但是一旦按钮松开,定时器就会清 0,停止计时,这样就不能启动马 达了。案例 2.闪烁程序按下启动按钮 I0.0,指示灯以 2 秒的频率闪烁,按下停止按钮 I0.1,指示灯灭。 写法 1:苏州天天自动化苏州市新市路 138 号30 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材31写法 2:读者可以比较两种写法的不同点。苏州天天自动化苏州市新市路 138 号31 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材32案例 3 延时启动、停止程序:按下启动按钮 I0.0,启动指示灯 Q0.0 闪烁,放开按钮 5 秒后,正式启动,启动指 示灯 Q0.0 一直亮。 按下停止按钮 I0.1,5 秒后,系统停止,启动指示灯 Q0.0 灭。例题 4:喷泉控制喷泉控制要求如下: A , B , C , 三组喷头, 有 要求启动后 A 喷 5 秒, 之后 B, C 同时喷,5 秒后 B 停止,再过 5 秒后 C 停止,而 A, B 同时喷,再过 2 秒,C 也喷, A ,B ,C,同时喷 5 秒后全部停止, 再过 3 秒后重复前面的过程,当按下停止按钮后, 马上停止。苏州天天自动化苏州市新市路 138 号32 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材33分析:这是一个关于时序循环的问题,这一类的问题编程有一定的规则,掌 握这个规则,编程很简单。 第一步:根据各个负载发生的变化,确定所需要的定时器及定时时间, 第二步:由于各个定时器是按先后循序接通的,所以前一个定时器的触点接通后 一个定时器的线圈,再用后一个定时器的触点断开前一个定时器的线 圈,这样就可以循环起来。 第三步: 编写驱动负载的程序,根据时序图各负载的上升沿和下降沿的变化,上 升沿表示负载接通,下降沿表示负载断开,用相应的常闭触点,在一个 扫描周期中负载多次接通可以用并联电路。 编写程序如下: 1.启动程序苏州天天自动化苏州市新市路 138 号33 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材34此程序按以上编写,其控制过程没有问题,只不过程序中输出信号 Q0.0、Q0.1、 Q0.2 使用多次,即出现双线圈。 此问题很容易解决,这里不作处理,在后面的学习中会涉及此问题,轻松解决。课后练习题:1. 按下按钮 I0.1, 红灯 Q0.1 延时 5 秒后变亮, 红灯接通 6 秒后绿灯 Q0.2 也变亮, 红绿灯一起亮了 7 秒后都熄灭。 2.按下按钮 I0.0,指示灯 Q0.0 接通 1 秒,断开 2 秒,如此循环动作,按下停止 按钮 I0.1,等 Q0.0 断开后就不再启动。苏州天天自动化苏州市新市路 138 号34 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材355 计数器的编号及功能(C) 计数器范围: Cxxx = C0 至 C255 计数最大值为 32767 1.增计数器 CTU初始时,计数器当前值为 0,触点断开 每次计数信号输入端接通时,计数器当前值加 1,当计数器当前值&=设定值后, 计数器接通。最大计数到 32767 时,停止计数。 当复位信号接通时,计数器立刻复位,当前值清 0,触点断开。2.减计数器 CTD初始时最好用 SM0.1 复位计数器,复位后计数器当前值=设定值 当计数输入端每次由 OFF→ON 时,计数器当前值减 1,当计数器减为 0 时, 计数器触点接通,此时若输入信号再次由 OFF→ON,则计数器不再计数。当前值保 持 0.苏州天天自动化
苏州市新市路 138 号 35 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材363.增减计数器 CTUD增计数输入端由 OFF→ON 时,作增计数,直到 32767 后,若再由 OFF→ON,则变为 -32768 减计数输入端由 OFF→ON 时,作减计数,直到-32768 后,若再由 OFF→ON,则变 为 32767 当前值&=设定值 PV 后,计数器触点接通。否则计数器断开。 复位输入端信号接通,计数器复位,触点断开,计数器清 0 注:使用不同类型的计数器时,计数器编号不能重复使用苏州天天自动化苏州市新市路 138 号36 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材37计数器应用案例 1:要求: 按下按钮 I0.0,水泵 Q0.0 启动,24 小时后水泵自动停止。 分析: 普通定时器定时范围为 0~ms,因此远远不够 24 小时的定时时间, 若用好几个定时器进行累加,则需太多的定时器,非常麻烦。 此例可用定时器及计数器的组合来实现。定时器每隔 30 分钟(半小时) ,计数器 进行记一次数,计数后把定时器复位,重新计时,如此,24 小时需计数 48 次就可 以。 程序如下:苏州天天自动化苏州市新市路 138 号37 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材38计数器应用案例 2:实验内容:对生产的汽缸进行耐久测试: 实验要求:按下启动按钮 I0.0,控制汽缸作伸缩动作。 要求汽缸伸出 2 秒,然后缩回 2 秒,如此循环动作。 这样来回动作 10 次后,汽缸测试结束。 若要测试其他汽缸,再次按下启动按钮。。 。 伸出信号 Q0.0,缩回信号 Q0.1 程序如下:注:次程序中,计数器到达设定值后,应首先把启动断开,再把计数器复位。苏州天天自动化苏州市新市路 138 号38 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材396 变量存储区 V变量存储区 V 可以用来存储程序执行的过程中逻辑操作的中间结果,也可以 用来存储程序的相关数据,并且可以按位、字节、字、双字来存取。 变量存储区 V 的内存范围如下表所示: 内存范围大小 存 类 CPU CPU CPU 取 型 CPU 221 CPU 222 224(V2.00) 224XP 226(V2.00) 字 0 0 0 V 节
0 - 10239 变量存储区的存取方式: 1. 按 位 存取: 如 V2.1,表示通道 2 内的第 1 位 2. 按 字节 存取: 如 VB2,表示整个 2 通道内的 8 位的组合 3. 按 字 存取: 如 VW2,表示 VB21 及 VB3 两个通道内 16 位的组合, 并且 VB2 存放于高字节,VB3 存放于低字节 4. 按 双字 存取: 如 VD2,表示 VB2、VB3、VB4、VB5 四个通道内 32 位的组合 从高字节至低字节的排序:VB2、VB3、VB4、VB5 数据寄存器的一般用法: 一旦在数据寄存器中写入数据,只要不再写入其它数 据,其内容就不会变化。在 PLC 停电时,数据都能被保存。 (在 PLC 数据块中, 默认的 V 区都是断电保持数据,用户可以根据需要修改其范围) 变量存储器的功能举例:变量存储器可以处理各种数值数据,利用它,可以进行各种控制。苏州天天自动化苏州市新市路 138 号39 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材40下面举例说明有效的利用变量存储器的方法: 1.通过间接指定定时器的设定值此例中 VW1 作为定时器的设定值,但是注意,使用变量作为定时器的设定值时, 数据类型一定要为 字2.通过间接指定计数器的设定值此例中 VW1 作为计数器的设定值,但是注意,使用变量作为计数器的设定值时, 数据类型一定要为 字注:一般使用数据寄存器时,常会与传送指令,比较指令,运算指令一起用,达 到程序控制目的。苏州天天自动化苏州市新市路 138 号40 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材41变量存储器基本案例 1:起保停程序要求:按下启动按钮 I0.0,指示灯 Q0.0 一直保持亮, 按下停止按钮 I0.1,指示灯断开。 此程序一般的写法:最基本的起、保、停程序写法 2:注:比较指令的简单说明 其中的“= =B”为“字节等于”比较指令, “VB1”及“2”是比较的两个数据 把 VB1 与 2 进行比较,符合比较条件“= =B”时,条件成立接通。 (可以把它当作 一个常开点,当满足比较条件时,此常开点接通) 程序说明: 初始状态时,VB1 内数据是 0,比较指令不成立,指示灯不会输出 当按下启动按钮 I0.0,传送指令将 1 写入 VB1,此时 VB1 等于 1 因此比较指令条件成立,指示灯 Q0.0 就接通了。 当按下停止按钮 I0.1 后, 传送指令又将 0 写入 VB1,因此比较指令又不满足,Q0.0 也就断开了。苏州天天自动化苏州市新市路 138 号41 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材42变量存储器应用案例 2 :闪烁周期程序按下按钮 I0.1,指示灯以 3S 的频率闪烁, 按下按钮 I0.2,指示灯以 1S 的频率闪烁。闪烁程序: 闪烁时间 VW1程序分析: 首先控制要求是一个闪烁程序,因此以上程序中下面 2 步程序为闪烁程序,闪烁 时间是 VW1. 因为闪烁时间会变动,所以这里用一个变址寄存器表示。 若要以 1 秒钟闪烁,只要让 VW1=10 就可以了。 若要以 3 秒钟闪烁,只要让 VW1=30 就可以了。 因此上两步程序即为改变频率的程序。 读者可以自己分析此程序的缺点 (当 VW1=0 时,也就是没有按下任何按钮,此程序中(指示灯)会怎样动作) 这里再加一个停止按钮,按下停止按钮,指示灯断开。 请读者自己写出完整的程序苏州天天自动化苏州市新市路 138 号42 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材437.累加器 AC S7-200 系列 PLC 提供 4 个 32 位的累加器(AC0,AC1,AC2,AC3),用户可以按字节、 字、双字的形式来存取累加器中的数值累加器数据存取举例:苏州天天自动化苏州市新市路 138 号43 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材448.用指针对 S7-200 存储器间接寻址 变址寄存器除了与数据寄存器一样使用外,在应用指令的操作数中,还可以同其 它的软元件编号或数值组合使用,可在程序中改变软元件编号或数值内容,是一 个特殊的寄存器。 下面举例说明间接寻址的过程;本例中用 LD10 作为 VB0 的地址指针,然后可以利用 VD1004 中存储的地址偏移量 来改变指针值。 经过改变后,LD10 指向 V 区中的另外一个地址(VB0+偏移量) 。 然后将 LD10 指向的 V 区地址中存储的数值复制到 VB1900 中。 通过改变 VD1004 中的数值,可以访问 V 存储器中的任意单元。苏州天天自动化苏州市新市路 138 号44 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材452.数据类型及数据格式的转换 1.数据类型及数据换算学习目的:掌握 PLC 之间的数据格式,数据转换,为以后讲指令及数据的显示等 作好基础。 PLC 通常使用 5 种类型的数值:二进制,八进制,十进制,十六进制,BCD 码。 在 PLC 内部,都是用二进制处理软元件数据的。但是在外围设备上监控时,这些 软元件数据会自动变化为十进制(也可切换为 16 进制) 各种数据类型的转化及表示形式见下表:其中二进制与十进制的转化尤为重要苏州天天自动化苏州市新市路 138 号45 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材46十进制数据十进制数是普遍最常数用数据类型,其正数数据从 0 开始,满 10 向高位进位, 因此数据位从低到到依次为: “个位”--“十位”--“百位”--“千位”等 举例:十进制数据 3246 的意义如下: 千位(10?) 百位(10?) 十位(10?) 个位(10?) ↑ ↑ ↑ ↑ 3 2 4 6 上面的数据表示方法人人都能看懂, 其中“3”是千位即 3*10?, “2”是百位即 2*10?, “4”是十位即 4*10?, “6”是个 位即 6*10? 所以 ?+2*10?+4*10?+6*10? 即十进制数从低位到高位的排列依次为:10?、10?、10?、10?。。。 。。。二进制数据二进制数的 1 位(bit)只能取 0 和 1 这两个不同的值,用来表示 开关量的两种不同的状态。该位的值与线圈、触点的关系。ON/OFF, TURE/FALSE。二进制常数:2#01_0001 以上了解了 10 进制数据的原理,二进制则可以类比举例:二进制数据 10110 的意义如下: 位 2?位 2?位 ↑ ↑ ↑ 1 0 12?位 ↑ 12? 位 ↑ 0所以二进制数 10110=1* +0*2?+1*2?+1*2?+0*2? 以上的计算即为二进制转成十进制的算法 例题:二进制数 100111 转成十进制数是多少? 演算过程:原式=1* +0* +0*2?+1*2?+1*2?+1*2?=32+0+0+4+2+1=39苏州天天自动化苏州市新市路 138 号46 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材47八进制数据八进制数据是从 0 开始,满 8 即向高位进位,因此,在八进制数据中没有“8”和 “9”这两个数字。 八进制数据的计算原理也与上面相同。 八进制数据从低位到高位的排列以此为:8?、8?、8?、8?。。。 。。 在三菱 PLC 里面很少遇到八进制与其他数据的转换,因此这里不作详细介绍。 举例:八进制数 2631 转成十进制数据是多少? 演算:原式=2*8?+6*8?+3*8?+1*8?=2*512+6*64+3*8+1*1=1433十六进制数据八进制数据是从 0 开始,满 16 即向高位进位,在还没满 16 之前都只能是个位数, 而阿拉伯数字里面数字只有 0~9,所以用 A,B,C,D,E,F 来表示后面的几个数字。 A 表示 10,B 表示 11,C 表示 12,D 表示 13,E 表示 14,F 表示 15。 十六进制数的计算原理也是和上面一样。 十六进制数据从低位到高位的排列以此为:16?、16?、16?、16?。。。 。。 举例:十六进制数 3A5D 的的意义: 16?位 16?位 16?位 16? 位 ↑ ↑ ↑ ↑ 3 A 5 D 十六进制数 ?+10*16?+5*16?+13*16?=3*+5*16+13*1=14941 注:以上是二进制,八进制,十六进制转成十进制数 若要把十进制数转成二进制,八进制,十六进制,即为以上的逆过程 我们三菱 PLC 里只要掌握简单的十进制转成二进制会转换就可以 数据计算举例 1:十进制数 7 转成二进制数 7 可以转换为:7 = 4+2+1 = 2?+2?+2? 而二进制数的每一位的意义为: 2?位 2?位 2?位 2? 位 ↑ ↑ ↑ ↑ 0 0 0 0 所以 7 的二进制数为 111 数据计算举例 1:十进制数 9 转成二进制数 9=8+1=2?+2? 即 9 的二进制数为 1001苏州天天自动化苏州市新市路 138 号47 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材48BCD 数据BCD 码用 4 位二进制数表示一位十进制数,十进制数 9 对应的二 进制数为 1001 最高 4 位用来表示符号,16/32 位 BCD 码的范围。BCD 码实际上 是十六进制数,但是各位之间逢十进一 举例:十进制数 3297 转成 BCD 数据 即 3 2 9 7 ↓ ↓ ↓ ↓ 01 0111 所以十进制数 3297 转成 BCD 数为 01 0111 以上即为几种数据的转换,能熟练掌握以上几点数据的转换就可以了。例题: 1.二进制的
转成十进制---------------答案:原式= + +2?+2?=922.十进制的 13 转成二进制-------------------------答案:原式=8+4+1=2?+2?+2?=1101 3.十进制的 34 转成 BCD 码 ----------------------答案:3 转成 4 个二进制数为 0011,4 转成 4 个二进制数为 0100, 所以 34 的 BCD 数据为 .十六进制的 23 转成十进制----------------------答案:原式=2*16?+3*16?=35苏州天天自动化苏州市新市路 138 号48 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材49S7200 的数据类型数据的寻址:苏州天天自动化苏州市新市路 138 号49 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材50整个变量存储区 V 区域用户可以 以“位”来使用,此时只用到某个通道内的一个位,其作用 类似中间继电器 用于也可以 以“字节”来使用,作为数据地址,此占用了整个通道, 可以存储 0~255 之间的数值 用于也可以 以“字”来使用,作为数据地址,此时占用了 2 个通道, 可以存储 0~65535 之间的数值 用于可以 以“双字”来使用,作为数据地址,此时占用的 4 个通道。 存储更大的数值苏州天天自动化苏州市新市路 138 号50 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材51综合试验部分:1.金属板收料实验如下图所示:控制要求: 按下启动按钮 I0.1 后,系统启动,马达 1 启动,并带动金属板往下掉,当金属板 掉下后,光电感应器 I0.0 就会感应到并计数,当金属板累计 10 块后,马达 1 停 止,马达 2 转动 5 秒后停止,马达 1 继续带动金属板往下掉,依次循环动作。当 按下停止按钮 I0.2 后,系统停止。 分析: 1.整个系统分为启动与停止, 2.启动后,马达 1 先动作,并通过光电传感器 I0.0 对金属板计数 3.计数满后马达 2 启动,马达 1 停止,此过程为 5 秒 4.5 秒后,应对计数器复位,马达 2 停止,马达 1 启动,开始新一轮的动作 根据控制动作,画出的流程图如下所示:苏州天天自动化
苏州市新市路 138 号 51 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材52根据控制流程图,控制程序如下:苏州天天自动化苏州市新市路 138 号52 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材532.全自动洗衣机系统1,按启动按纽后开始供水 2,当水满到水满传感器就停止供水 3,水满之后,洗衣机开始执行漂洗过程,开始正转 5 秒,然后倒转 5 秒,执行此 循环动作 10 分钟 4,漂洗结束之后,出水阀开始放水 5,放水 10 秒后结束放水,同时发出声光报警叫工作人员来取衣服 6 ,按停止按扭声光报警器停止,并结束整个工作过程。信号分配: I0.0:启动按钮 I0.1:水位满信号 I0.2:停止按钮(复位按钮) Q0.3:出水控制阀门电机Q0.0:供水水泵 Q0.1:漂洗电机正转 Q0.2:漂洗电机反转 Q0.4:声光报警器程序说明:启动后供水苏州天天自动化苏州市新市路 138 号53 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材54程序说明:水位满了后,先停止供水,然后执行漂洗程序说明:漂洗马达的正反转控制 当总时间 T37 接通,则正反转全部断开。苏州天天自动化苏州市新市路 138 号54 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材553.交通灯信号控制现有一个十字路口的交通信号控制时序图如下: 南北方向:红灯亮 25 秒,转到绿灯亮 25 秒,再按 1 秒/次的规律闪烁 3 次,然 后转到黄灯亮 2 秒。东西方向:绿灯亮 20 秒,再按 1 秒/次的规律闪一烁 3 次, 转到黄灯亮 2 秒,然后红灯亮 30 秒。完成一个周期,如此循环运行。苏州天天自动化苏州市新市路 138 号55 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材56交通灯的控制时序图 编程思路: 此案例编程方式很多,编程顺序也各有不同,以下程序按照如下顺序进行:1 启动 →→ 2 南北方向信号 →→ 3 东西方向信号程序注意每次循环到初始状态南北方向要与东西方向同步,否则会因 PLC 扫描周 期的影响,导致程序中的时间累计误差变大,而使南北及东西方向不同步启动程序苏州天天自动化苏州市新市路 138 号56 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材572.南北方向控制灯程序:苏州天天自动化苏州市新市路 138 号57 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材58苏州天天自动化苏州市新市路 138 号58 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材59五.PLC 的指令系统及指令应用一.基本顺控指令1.触点、线圈指令及双线圈2 置位及复位指令3 触点上升沿、下降沿指令4.脉冲上升沿及下降沿指令苏州天天自动化苏州市新市路 138 号59 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材60一 基本顺控指令1 触点及线圈指令 1 输入信号的程序举例:说明:如上图所示,同一个输入点(上图为 I0.1)的常开、常闭点可以在程序里重 复循环使用,只要在内存容量内,可以重复使用。没有使用数量的限制。 但是使用常开点还是常闭点,应根据外部接线及控制要求来定。常开、常闭触点用法:当外部开关信号接通时,程序中的常开点接通,常闭点断开 当外部开关信号断开时,程序中的常开点断开,常闭点接通 2.输出信号的程序举例:说明:如上图所示,同一个输出点的线圈在程序里一般只能使用一次。 但是线圈的常开点及常闭点可以在程序里重复多次使用,没有数量限制。输出点线圈及触点一般用法:当输出点线圈接通时,它的常开触点接通,常闭触点断开 当输出点线圈断开时,它的常开触点断开,常闭触点接通苏州天天自动化
苏州市新市路 138 号 60 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材612 双线圈输出及处理方法 1.什么是双线圈输出? 在用户程序中,同一编程元件的线圈使用了两次或多次,称为双线圈输出。 程序举例:如上程序,Q0.1 这个输出线圈在程序中用了两次。 在梯形图程序中,一般情况下是不允许同一个线圈在一个程序中使用多次的。 为了满足控制要求,可能在不同的条件下,需要多次对同一个线圈输出,若在编 写程序时,也是按照要求输出几个相同的线圈的话,多个线圈在梯形图中使用时, 程序可能达不到预期的控制要求. 如上面的程序,I0.1 及 I0.2 都接通,则 Q0.1 线圈接通。 I0.1、I0.3 及 I0.4 都接通,则 Q0.1 线圈也接通。 根据 PLC 的工作原理及扫描原理,在程序执行完后,才对输出的 ON/OFF 状态送到 外部信号端子。此例中对于 Q0.1 控制的外部负载来说,真正起作用的是最后一个 Q0.1 的线圈的状态。而前面的 Q0.1 的线圈只在程序执行过程中,有 ON/OFF 的信 号。 我们可以通过一些对策来避免双线圈的错误。下面举例介绍一般上线圈输出的对 策~~ 举例:控制要求如下: 同时按下按钮 I0.1 及 I0.2,指示灯 Q0.1 要亮。 按下按钮 I0.4,则 5 秒 Q0.1 也要亮 错误的程序:苏州天天自动化苏州市新市路 138 号61 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材62如上程序对初学者来讲,好像一点问题都没有,能满足控制要求。 但实际上,此程序是不能满足上面给出的控制要求的,因为程序中两次使用了同 一个线圈 Q0.1,根据前面的讲述,程序对 Q0.1 起作用的只有下面的线圈。 因此,上面的程序是不能用来满足控制要求的。 以下是正确的满足控制要求的程序:说明:根据控制要求,程序在 M0.1 处应该输出 Q0.1,在 M0.2 处也应该输出 Q0.1 如果在 M0.1 及 M0.2 处直接输出 Q0.1,则就范了上面程序双线圈错误, 因此在需要输出 Q0.1 的地方,输出不同的中间继电器,然后把中间继电器的常开 点并联起来,再集中输出一个 Q0.1 的线圈,这样就能避免双线圈的问题。 或者下面的程序也能正确的满足控制要求:说明:把满足 Q0.1 输出的条件并联起来,再集中输出一个 Q0.1 的线圈,也能避 免双线圈的问题,满足控制要求。苏州天天自动化
苏州市新市路 138 号 62 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材63触点指令应用案例 1:基本起保停控制按下正转按钮 I0.0,马达正转 Q0.0 按下反转按钮 Q0.1,马达反转 Q0.1 根据要求编程的下列程序:程序简单分析: 按下按钮 I0.0 后,I0.0 的常开点接通,常闭点断开 常开点使 Q0.0 的线圈接通,并通过 Q0.0 的常开点自锁保持 常闭点使 Q0.1 的线圈断开。 同样的道理 按下按钮 I0.1 后,I0.1 的常开点接通,常闭点断开 常开点使 Q0.1 的线圈接通,并通过 Q0.1 的常开点自锁保持 常闭点使 Q0.0 的线圈断开。苏州天天自动化苏州市新市路 138 号63 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材64触点指令应用案例 2:设计一个可用于四支比赛队伍的抢答器。系统至少需要 4 个抢答按钮、1 个复位 按钮和 4 个指示灯。如下图所示:具体要求如下: 主持人宣布答题后,4 组人 A,B,C,D 开始抢答,谁最先按下按钮,主持人面前对应 的灯就会亮,其他队伍再按,主持人面前的灯也不会亮(即主持人面前的等每次 答题只会只亮一个) ,答题完毕后,主持人按下复位按钮 I0.0,灯灭掉。开始下一 轮的抢答。分析: 若 A 先按下按钮,则 Q0.1 灯要亮,并且一直亮,直到主持人按下复位按钮 I0.0, 灯才会灭。其他人按下按钮,对应的灯也不会亮。 若 B 先按下按钮,则 Q0.2 灯要亮,并且一直亮,直到主持人按下复位按钮 I0.0, 灯才会灭。其他人按下按钮,对应的灯也不会亮。 同理,C、D 一样 以下程序是分析后得出的:苏州天天自动化苏州市新市路 138 号64 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材65苏州天天自动化苏州市新市路 138 号65 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材66触点指令应用案例 3:用一个按钮(I0.1)来控制三个输出(Q0.1、Q0.2、Q0.3) 。 当 Q0.1、Q0.2、Q0.3 都为 OFF 时,按第一下 I0.1,则 Q0.1 变为 ON, 按第二下 I0.1,则 Q0.1、Q0.2 变为 ON, 按第三下 I0.1,则 Q0.1、Q0.2、Q0.3 都变 ON 按第四下 I0.1,则 Q0.1、Q0.2、Q0.3 都变为 OFF 状态。 按第五下 I0.1,重复执行如上动作。 试用两种不同的程序设计方法设计其梯形图程序。 以下是分析后得出的程序:此程序正式运行时可能会出现一些问题,但是程序的分析过程就应该如上面所述。苏州天天自动化苏州市新市路 138 号66 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材672 置位,复位[S,R] 设置(S)和复原(R)指令设置(打开)或复原指定的点数(N) 从指定的地址(位)开始。您可以设置和复原 1 至 255 个点。 如果&复位&指令指定一个定时器位(T)或计数器位(C) ,指令复原定时器或计数 器位,并清除定时器或计数器的当前值。 指令用法举例:如上程序,当条件 I0.1 接通,则从 Q0.0 开始的 3 个线圈(Q0.1、Q0.2、Q0.3) 被置位接通。即使 I0.0 断开,3 个线圈还是保持输出, (S)指令相当于自锁功能。 一旦 I0.2 接通,Q0.1 开始的 2 个线圈(Q0.1、Q0.2)被复位而断开。 对于同一软元件(S)(R) 可以多次使用,顺序也可以随意,但最后执行者有效。 ,苏州天天自动化苏州市新市路 138 号67 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材68置位复位指令应用案例 1:延时启动,延时断开基本程序实验目的:熟练掌握置位,复位指令的应用 实验内容如下: 1.按下启动按钮 I0.0,则 5 秒后指示灯 Q0.0 才亮, 2.按下停止按钮 I0.1,则 3 秒后指示灯灯灭。 程序分析: 此案例为标准的延时启动,延时断开程序。 这里通过置位及复位指令来完成此程序的编程 程序如下:苏州天天自动化苏州市新市路 138 号68 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材69置位复位指令应用案例 2:单按钮控制程序试验目的:掌握置位复位指令的应用及程序的先后循序。 要求:当第一次按下 I0.0 后,指示灯 Q0.0 亮,并保持亮,当第二次按下 I0.0 后, Q0.0 灭,第三次按下后,Q0.0 又亮,第四次又灭。。。如此循环动作 。。 程序如下:程序分析: 当 Q0.0 断开时,按下 I0.0,第一个扫描周期内“条件 1”接通,把 M0.1 置位接 通。此时“条件 2”因 Q0.0 还没接通,所以不满足,不会把 M0.1 复位。所以最后 M0.1 驱动 Q0.0 接通,以后的周期内因有一个上升沿 P 不会接通,所以 M1 不会有 变化,一直保持原来接通的状态。 当 Q0.0 接通后,再按下 I0.0,第一个扫描周期内, “条件 1”断开, “条件 2”满 足,把 M0.1 复位断开,最后 M0.1 断开,则 Q0.0 也断开,以后的周期内因上升沿 不会接通,所以 M0.1 不会有变化,一直保持原来断开的状态。 注:S 及 R 指令在程序中经常使用,是一个常用的,好用的指令。 使用了 S 指令后,要注意在适当的条件下把对应的元件 R苏州天天自动化苏州市新市路 138 号69 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材703 上升沿 P,下降沿 N上升沿指令是进行上升沿检出的触点指令,仅在执行条件上升沿时(off→on 变化 时)接通一个扫描周期。 触点下降沿指令是进行下降沿检出的触点指令,仅在执行条件下降沿时(on→off 变化时)接通一个扫描周期。如上图所示,X1 的信号波形图,一个周期由 4 个过程组合,过程 1,2,3,4。 过程 1 为断开状态 过程 2 为接通的瞬间状态-----即由断开到接通的瞬间 过程 3 为接通状态 过程 4 为断开的瞬间状态-----即由接通到断开的瞬间 其中过程 2,由断开到接通的瞬间,则为脉冲上升沿上图梯形图中, “P”此条件只有当 I0.0 由断开→接通的瞬间(也就是上面波形图 中的过程 2 这个状态时)才会接通,其他时刻都不会接通。 其中过程 4,由接通到断开的瞬间,则为脉冲下降沿上图梯形图中,”N”此条件只有当 I0.0 由接通→断开的瞬间(也就是上面波形 图中的过程 4 这个状态时)才会接通,其他时刻都不会接通。苏州天天自动化苏州市新市路 138 号70 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材71应用案例 1:每按一下 I0.1 按钮,变量存储器的数值加 1上图程序中,INC_B 指令是“加 1”指令,当指令前面条件接通时,VB1 内的数据 就加 1,并且只要条件接通,PLC 每扫描一次,VB1 内的数据都加 1。 上图中“P”是一个上升沿指令,当 I0.0 由断开到接通时,”P”只接通一个扫描 周期,所以 VB1 内的数据只加 1 若上图程序中不加“P”上升沿脉冲指令,则 I0.0 由断开到接通时,VB1 的数据随 着 PLC 的扫描过程而递增,即 PLC 每扫描一次,VB1 内的数据就加 1。 注:INC 指令在后面的章节中有具体描述。应用案例 2:简单流水线应用如下图所示: 下车进车库, 当小车在车库门前有个感应器 I0.1, 在车库门后也有一个感应器 I0.0 小车进库前,感应器感应到,则门自动上升 当小车脱离了门后的感应器后,门自动下降程序如下:苏州天天自动化苏州市新市路 138 号71 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材72案例 3:如下图所示,物体原始位置再 A 点,按下启动按钮 I0.0,物体由 A 处运动 到 B 处,当物体到达 B 点后,指示灯 Q0.0 亮 5 秒后停止,当指示灯灭后,按下启 动按钮,物体由 B 点运动到 C 点。程序苏州天天自动化苏州市新市路 138 号72 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材737.步进指令 各大公司生产的 PLC 都开发有步进指令,主要是用来完成顺序控制,S7-200 的 PLC 有三条步进指令,即 SCR(步进开始)指令、SCRT(步进状态转移)指令及 SCRE(步进状态结束)指令状态转移(SFC)图在顺序控制中,把每一个工序叫做一个状态,当一道工序完成后做下一道工 序,可表达成从一个状态转移到另一个状态。 用步进指令进行编程时,先画出状态转移图,再把状态转移图转换成梯形图 和指令表,状态转移图、梯形图和指令表存在一定的对应关系。步进梯形图案例应用 1:信号的顺序循环启动当按下 I0.1 启动按钮时,四盏灯 Q0.0―Q0.3 依次以 1 秒的时间顺序点亮,当最 后的灯 Q0.3 点亮 1 秒后程序又返回到初始状态,当再次按下 I0.1 时,有重复如上 操作。 程序如下:苏州天天自动化苏州市新市路 138 号73 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材74苏州天天自动化苏州市新市路 138 号74 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材75苏州天天自动化苏州市新市路 138 号75 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材76步进梯形图案例应用 2:小车送料系统有一送料小车,初始位置在 A 点,按下启动按钮(I0.4),在 A 点装料(Q0.1) 装料时间 5S,装完料后驶向 B 点卸料(Q0.2),卸料时间是 7S 卸完后又返回 A 点装料,装完后驶向 C 点卸料 按如此规律分别给 B、C 两点送料,循环进行。 当按下停止按钮时,一定要送完一个周期后停在 A 点送料小车示意图 根据以上流程,首先绘制流程图,流程图可以清晰的反映整套系统的动作顺序, 同时在编写程序时,可以很清楚的知道自己编写的进程。苏州天天自动化苏州市新市路 138 号76 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材77流程图如下:程序如下:苏州天天自动化苏州市新市路 138 号77 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材78苏州天天自动化苏州市新市路 138 号78 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材79苏州天天自动化苏州市新市路 138 号79 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材80苏州天天自动化苏州市新市路 138 号80 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材81苏州天天自动化苏州市新市路 138 号81 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材82苏州天天自动化苏州市新市路 138 号82 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材83步进梯形图案例应用 3:化工行业混合液体配料系统如下图所示,SVl、SV2 电磁阀控制流人液体 A、B,SV3 电磁阀控制流出液体 C。 M 为搅拌电动机,系统配有三个液位传感器 控制要求如下: 初始状态要求容器内是空的,各电磁阀关闭,M 停转; 1.按下启动按钮,阀 A 打开,流入液体 A,液体满至中限位时,阀 A 关闭; 2.同时阀 B 打开,流人液体 B,液体满至上限位时,阀 B 关闭; 3.此时,M 开始搅拌 20s;20 秒后停止搅拌 4.然后阀 C 打开,流出混合液体 C;当液体减至下限位时,开始计时,10s 后容器 内液体全部流出。阀 C 关闭,此时完成一个周期,下一个周期自动开始运行。 (2)当按下停机按钮时,一直要到一个周期完成才能停止,中途不能停止。 (3)各工序能单独手动控制。I/O 地址分配如下:输入信号: I0.0 启动按钮 I0.2 低限位 I0.1―停止按钮 I0.3 中限位I0.4 高限位I1.0 手动/自动选择(ON 自动;OFF 手动) I1.1 阀 A 按钮 I1.2 阀 B 按钮 I1.3 阀 C 按钮I1.4 搅拌机按钮输出信号: Q0.1 电磁阀 AQ0.2 电磁阀 BQ0.3 电磁阀 CQ0.4 搅拌机 M苏州天天自动化苏州市新市路 138 号83 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材84流程图如下:根据流程图,编写程序如下:苏州天天自动化苏州市新市路 138 号84 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材85第二节 传送与比较指令 传送与比较指令 传送指令批量传送指令多点传送指令BCD 传送指令BIN 传送指令反向传送指令直接比较指令比较输出指令区间比较指令苏州天天自动化苏州市新市路 138 号85 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材861.传送指令 MOV_B、 MOV_W、MOV_DWMOV 指令是把一个数据存入到另一个数据里面。 MOV_B 是字节传送:传送的数据类型是字节型 MOV_W 是字传送:传送的数据类型是字型 MOV_DW 是双字传送:传送的数据类型是双字型 指令用法举例 1:当 I0.1 接通,则 MOV_B 指令将数据 255 传送到 VB1 里面,传送后,VB1=88, 此后,即使 I0.1 断开,VB1 里的数据保持 255 不变。指令用法举例 2: 定时器及计数器当前值的读取注: 因定时器及计数器的数据类型都为整数型,因此使用传送指令时一定要用 MOV_W苏州天天自动化苏州市新市路 138 号86 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材87指令用法 3:定时器、计数器设定值的间接指定示例:指令用法举例 4:位软元件的传送: 要求按下按钮 I0.1,要使 Q0.0 至 Q0.7 全部接通 写法 1:写法 2:苏州天天自动化苏州市新市路 138 号87 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材882. 块传送 BLKMOV_B、BLKMOV_W、BLKMOV_DWBLKMOV:将指定的软元件为开头的 N 点数据向以目标指定的软元件为开头的 N 点软 元件成批传送。 字节块传送指令用法举例:将 VB1 开始的 3 个字节的数据写入 VB11 开始的 3 个字节内即:字块传送指令用法举例:程序将 VW0 开始的 3 个字传送至 VW10 开始的 3 个字内即:苏州天天自动化苏州市新市路 138 号88 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材893. 字节交换指令 SWAP字节交换指令用于将一个字内的高字节与低字节交换位置 指令用法举例:指令将 VB1 及 VB2 位置交换苏州天天自动化苏州市新市路 138 号89 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材907.比较指令: 1.字节比较指令2.整数比较指令 ==I &&I &=I &=I &I &I3.双整数比较指令 ==D &&D &=D &=D &D &D比较指令即当比较的两个数满足比较的条件,则此比较指令接通,其原理与触点 类似。 这种比较指令比较直观,使用时也较为方便。程序举例:如上程序中,当 VB1 的值等于 5 时,就可以输出 Q0.1 当 VB1 的值不等于 5 时,就可以输出 Q0.2苏州天天自动化苏州市新市路 138 号90 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材91用法举例:起保停程序 按下启动按钮 I0.1,马达 Q0.1 启动并保持,按下停止按钮 I0.2,马达立刻停止苏州天天自动化苏州市新市路 138 号91 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材92转换指令:B_I 字节转换为整数把 VB1 字节的数据转成整数,送入 VW20 内 B_I 整数转换为字节把 VW0 整数的数据转成字节,送入 VB30 内 注:VB30 是字节型数据,能存放的数据最大为 255,因此当 VW0 内的数据超出 255 时,指令会出错 I_DI 整数转换为双整数把 VW0 整数的数据转成双整数,送入 VD20 内 DI_I 双整数转换为整数把 VD0 双整数的数据转换成整数,送入 VW20 内 DI_R 双整数转换为实数把 VD0 双整数的数据转换成实数,送入 VW30 内 注:实数为 32 位的数据,因此也是用 VD 表示苏州天天自动化
苏州市新市路 138 号 92 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材93BCD_IBCD 码转成整数把 VW0 的 BCD 数据转换成整数,送入 VW20 内 常用于拨码开关 I_BCD 整数转成 BCD 码把 VW2 的整数数据转换成 BCD 格式数据,送入 VW30 内 常用于七段译码显示器 ROUND 取整(小数转成整数)---四舍五入取整 TRUNC 取整(小数转成整数)---舍去小数取整 综合案例 1:水处理泵类控制系统 要求: 通过拨码开关设定供水泵的运行时间(单位:分) ,当设定的时间设定在合理 范围(20~50)后,按下启动按钮,水泵运行,到达设定的时候后,水泵停止。同 时通过显示器显示水泵当前运行了多少时间(单位:分) 启动按钮:X10 水泵信号:Y10 波吗开关:X0~X7 显示器信号:Y0~Y7 综合案例 2:电子厂内产品数量的记录及显示 要求: 由 10 台机器生产零件,都用同一个显示器显示当天生产的数量。 每台机器对应的计数器是 C0―C9.一开始显示器显示第一台生产数量, 按一下按钮 X0,显示第二台数量,再按一下显示第三台数量,以此类推,当显示最 后一台机器时,再按下按钮,从新回到第一台显示。苏州天天自动化苏州市新市路 138 号93 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材94第三节 算术运算指令4.1 加法指令4.2 减法指令4.3 乘法指令4.4 除法指令4.5 递增指令(加一指令)4.6 递减指令(减一指令)苏州天天自动化苏州市新市路 138 号94 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材95ADD_I整数相加整数加法指令即两个整数类型的数据进行相加, 结果传到目标处 (目标也为整数) 。 例 1:当条件 I0.1 接通时,执行整数加法指令,执行时,VW0 的数据+VW2 的数据,其运 算结果存到 VW4 里面。 注:目标地址与两个加数都不同时,程序执行循环扫面后,其结果 VW4 的数据始 终相同。 如下程序,其目标数据与其中的一个加数相同。 例 2:当条件 I0.1 接通,执行整数加法指令,2 + VW0,结果存于 VW0 内 当程序执行第一次扫描后,VW0=2 当程序执行第二次扫描后,加法指令为 2 + VW0 = 2 + 2 ,结果存于 VW0 内 因此,当程序执行第二次扫描后,VW0=4 同理,当程序执行第三次扫描后,VW0=6 。。。。 。。。 说明:当源数据与目标数据指定同一个地址时,如例 2 所示,则在每个扫描最后, 运算结果都会有变化。 例 2 程序,程序没执行之前 VW0=0,当执行完一次扫描后,VW0=2,执行第二次后, VW0=4,以后一直会以 6,8,10??变化。苏州天天自动化苏州市新市路 138 号95 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材96ADD_DI双整数相加双整数加法指令即两个双整数(32 位)类型的数据进行相加,结果传到目标处(目 标也为双整数) 。 例 1:当条件 I0.1 接通时,执行双整数加法指令,执行时,VD0 的数据+VD4 的数据,其 运算结果存到 VD8 里面。 同整数加法指令类似,当运算结果与某个加数是同一个地址时,程序运行后,在 每个扫描周期,运算结果都将变化。 S7-200 系列 PLC 推出如此两个加法指令,目的在于说明不同类型的数据不能进行 运算。 因此在执行数据运算前,需将数据转化为同一类型的数据,然后再进行运算 数据转换指令在前面的指令中有详细介绍苏州天天自动化苏州市新市路 138 号96 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材97SUB_I整数相减整数减法指令即两个整数类型的数据进行减法运算,结果传到目标处(目标也为 整数) 。 例 1:当条件 I0.1 接通时,执行整数减法指令,执行时,VW0 的数据 - VW2 的数据,其 运算结果存到 VW4 里面。 整数减法指令注意点: 1、进行整数减法运算的三个数据都是整数 2、当目标结果与减数或被减数一样时,结果也会一直变化 3、指令是 IN1(VW0) C IN2(VW2),顺序不能搞反SUB_DI双整数减法双整数减法指令即两个双整数(32 位)类型的数据进行减法运算,结果传到目标处 (目标也为双整数) 。 例 1:当条件 I0.1 接通时,执行双整数减法加法指令,执行时,VD0 的数据 - VD4 的数 据,其运算结果存到 VD8 里面。 其注意点与上面指令类似,这里不再重述苏州天天自动化苏州市新市路 138 号97 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材98MUL整数相乘 结果为双整数MUL 指令即两个整数类型的数据进行乘法运算,结果传到目标处(目标为双整数) 。 例 1:当条件 I0.1 接通时,执行 MUL 指令,执行时,VW0 的数据 * VW2 的数据,其运算 结果存到 VD4 里面。 MUL 指令特别注意,是 整数 * 整数 = 双整数 当相乘的两个数较大时,用此指令比较合适 如: VW0 = 600 VW2 = 500 ,则这两个数据都在整数范围内, 但是两数相乘的结果为 300000,远远超出了一个整数的范围,因此当运算结果存 于一个 32 位的双整数时,完全可以满足数据的大小MUL_I整数相乘 结果也为整数MUL_I 指令即两个整数类型的数据进行乘法运算,结果传到目标处(目标也为整 数) 。 例 1:当条件 I0.1 接通时,执行 MUL_I 指令,执行时,VW0 的数据 * VW2 的数据,其运 算结果存到 VW4 里面。 MUL 指令注意: 整数 * 整数 = 整数 使用此指令时注意,当相乘的两个数据较大时,会运算结果会超出数据范围,会 产生数据的溢出错误。苏州天天自动化苏州市新市路 138 号98 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材99DIV整数相除 结果为双整数,并有余数DIV 指令即两个整数类型的数据进行除法除法运算,结果传到目标处(目标为双整 数,其中高 16 位字存余数、低 16 位字存商) 。例 1: 当条件 I0.1 接通时,执行指令,执行时,VW0 的数据 / VW2 的数据,其运算结果 存到 VD6 里面。其中 VW6 存放余数,VW8 存放商 程序中,若把 VW0 设为 7,把 VW2 设为 2,则 VW6=1(余数),VW8=3(商),DIV_I整数相除 结果为整数(舍去余数)DIV_I 指令即两个整数类型的数据进行除法除法运算,结果传到目标处(目标为整 数,没有余数) 。例 1: 当条件 I0.1 接通时,执行指令,执行时,VW10 的数据 / VW12 的数据,其运算整 数结果存到 VW20 里面。余数部分舍去。 程序中,若把 VW10 设为 13,把 VW12 设为 3,则 VW20=4(商)。余数没有DIV_DI双整数相除 结果为双整数(舍去余数)DIV_DI 指令即两个双整数类型的数据进行除法除法运算,结果传到目标处(目标 为双整数,舍去余数) 。例 1: 当条件 I0.1 接通时,执行指令,执行时,VD30 的数据 / VD40 的数据,其运算整 数结果存到 VD50 里面。余数部分舍去。 程序中,若把 VW30 设为 7,把 VW40 设为 2,则 VD50=1(商)。余数没有苏州天天自动化苏州市新市路 138 号99 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材100INC_B----字节递增(即加 1)说明:INC_B 指令使被执行对象(字节类型)进行加一运算 程序 1:I0.1 接通,程序扫描一次,则 VB1 内的值就加 1,因此上述程序中只要 I0.1 接通 过,则 VB1 内的值会随着扫描周期一直累加,当累加到 255 时,下一次就会溢出, 变为 0,然后重新由 0 累加 若想让 I0.1 接通时,VB1 内的值只加 1,那么可以加一个上升沿脉冲来解决:INC_W----字递增(即加 1)说明:INC_W 指令使被执行对象(字类型)进行加一运算 程序 1:I0.1 接通,程序扫描一次,则 VW1 内的值就加 1,与 INC_B 指令一样,只不过指令 中的数据类型为字INC_D----双字递增(即加 1)说明:INC_D 指令使被执行对象(双字类型)进行加一运算 程序 1:I0.1 接通,程序扫描一次,则 VD1 内的值就加 1,与 INC_B 指令一样,只不过指令 中的数据类型为双字苏州天天自动化
苏州市新市路 138 号 100 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材101DEC_B----字节递减(即减 1)说明:DEC_B 指令使被执行对象(字节类型)进行减加一运算 程序 1:I0.1 接通,程序扫描一次,则 VB1 内的值就减 1,因此上述程序中只要 I0.1 接通 过,则 VB1 内的值会随着扫描周期一直减 1,当减到 0 时,下一次就会溢出,变为 255,然后一直减 1。 若想让 I0.1 接通时,VB1 内的值只减 1,那么可以加一个上升沿脉冲来解决:DEINC_W----字递减(即减 1)说明:DEC_W 指令使被执行对象(字类型)进行减加一运算 程序 1:I0.1 接通,程序扫描一次,则 VW1 内的值就减 1,与 DEC_B 指令一样,只不过指令 中的数据类型为字INC_D----双字递减(即减 1)说明:INC_D 指令使被执行对象(双字类型)进行减一运算 程序 1:I0.1 接通,程序扫描一次,则 VD1 内的值就减 1,与 DEC_B 指令一样,只不过指令 中的数据类型为双字苏州天天自动化
苏州市新市路 138 号 101 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材102案例分析 1:变频器频率的微调 现有一变频器,频率通过 PLC 的 D100 来控制,D100 越大,频率越高,马达越快。 但是最高频率不能超过 99。频率通过显示器显示如下图:现有 2 个加速按钮,一个作为微调,一个作为粗调。 每按一下微调减速按钮,频率加 1,每按一下粗调加速按钮,频率加 5 同时也有 2 个减速按钮,一个作为微调,一个作为粗调。 每按一下微调减速按钮,频率减 1,每按一下粗调减速按钮,频率减 5 信号分配: 微调加速:I0.0 粗调加速:I0.1 显示器信号:Q0.0~Q0.7微调减速:I0.2 粗调减速:I0.3案例分析 2: 有一手卷系统,纸张在手卷 100 米时,电机停止,切刀动作,将纸张切断, 然 后 停止 1 秒后,电机再次启动。见下图: 纸张的长度通过编码器进行计算, 安装编码器的辊的周长是 50mm.试计算编码器输 出脉冲个数应该是多少? 同时安装了一个启动按钮,启动后马达开始转动,同时通过编码器计算纸张卷取 的长度。 假如在马达转动过程中按下暂停按钮 I0.2,马达停止,但之前编码器计算的纸张 的长度保持,当按下启动按钮,编码器在此基础上继续计数。 若在马达转动过程中按下停止按钮,则马达停止,编码器计数值全部清 0,当按下 启动按钮,编码器从 0 开始计数。 试写出控制程序 若生产不同的纸张,切指的长度不同,纸张长度通过数字拨码开关设定 (拨码开关的信号为 X10~X17) ,单位是米,试写出控制程序 信号分配如下: I0.0---编码器 A 相脉冲输入 Q0.0---马达转动 I0.1---启动按钮 Q0.1---切刀动作 I0.2---暂停按钮 I0.3---停止按钮苏州天天自动化苏州市新市路 138 号102 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材103拨码开关 X10~X17案例分析 3:如下图所示的自动售货机示意图,其工作要求如下:1.此售货机可投入 1 元、3 元或 5 元硬币。 2.当投入的硬币总值超过 12 元时,汽水指示灯亮;当投入的硬 币总值超过 15 元时,汽水及咖啡按钮指示灯都亮。 3.当汽水灯亮时,按汽水按钮,则汽水排出 7s 后自动停止,这 段时间内,汽水指示灯闪动。 4.当咖啡灯亮时,按咖啡按钮,则咖啡排出 7s 后自动停止,这 段时间内,咖啡指示灯闪动。 5.若汽水或咖啡按出后,还有一部分余额,则找钱指示灯亮,按下找钱按钮,自动退 出多余的钱,找钱指示灯灭掉. 1. I/O 地址分配如下: 1 元币感应器----------I0.0 3 元币感应器----------I0.1 5 元币感应器----------I0.2 汽水按钮 1------------I0.3 咖啡按钮 1------------I0.4 找钱按钮 1------------I0.5苏州天天自动化汽水指示灯----------Q0.0 咖啡指示灯----------Q0.1 找钱指示灯----------Q0.2 汽水阀门-----------Q0.3 咖啡阀门-----------Q0.4 苏州市新市路 138 号 103 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材1043.梯形图程序 计算投入的钱的总额:指示灯的控制苏州天天自动化苏州市新市路 138 号104 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材105阀门的开启余额的计算苏州天天自动化苏州市新市路 138 号105 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材106综合案例 3:交通灯控制 要求: 交通显示器由三种颜色,通过红、绿、黄三个灯来显示不同的颜色。 按下启动按钮,系统开始工作,工作顺序及要求如下: 首先,红灯亮,显示器由 30S 开始倒计时,1 秒钟减一次,直到为 0,红灯灭 然后黄灯亮,显示器由 4 开始倒计时,1 秒钟减一次,直到为 0,黄灯灭 然后绿灯亮,显示器由 30 开始倒计时,1 秒钟减一次,当减到 8 时,绿灯闪烁(频 率 1 秒或 0.5 秒),减为 0 时,绿灯灭,开始下一轮的循环 过程中,只要按下停止按钮,系统停止,指示灯灭掉,显示器不显示。 首先我们把输入新出信号分配好(此案例的 I/O 信号比较简单) 1 输入点: 启动按钮:I0.0 停止按钮:I0.1 2 输出点: 红灯信号:Q0.0 黄灯信号:Q0.1 绿灯信号:Q0.2 显示器信号 Q1.0~Q1.7本系统主要分为 4 大块,动作流程如下图所示:苏州天天自动化苏州市新市路 138 号106 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材107按照动作流程,编写的程序如下苏州天天自动化苏州市新市路 138 号107 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材108苏州天天自动化苏州市新市路 138 号108 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材109第四节 逻辑运算指令4.1 与指令(字节、字、双字)4.2 或指令4.3 异或指令4.4 取反指令苏州天天自动化苏州市新市路 138 号109 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材110WAND_B―字节与运算指令对两个输入的字节对应的位进行与(AND)运算,操作结果放于 OUT 中 程序举例:如上程序,当 M0.1 接通,则执行 WAND_B 指令,将 VB1 的每位和 VB2 的每位进行与 操作,把结果传到 VB3 内 具体运算过程如下: 若 VB1 = 0 1 1 0 0 1 0 1 0―0=0 0―1=0(与操作) VB2 = 0 0 1 1 1 1 0 0 1―0=0 1―1=1 则 VB3 = 0 0 1 0 0 1 0 0WAND_W―字与运算程序举例:WAND_DW―双字与运算程序举例:苏州天天自动化苏州市新市路 138 号110 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材111WOR_B―字节或运算指令对两个输入的字节对应的位进行或(OR)运算,操作结果放于 OUT 中如上程序,当 M0.1 接通,则执行 WOR_B 指令,将 VB1 的每位和 VB2 的每位进行或 操作,结果传送到 VB3 内 具体运算过程如下: 若 VB1 = 0 1 1 0 0 1 0 1 0―0=0 0―1=1(或操作) VB2 = 0 0 1 1 1 1 0 0 1―0=1 1―1=1 则 VB3 = 0 1 1 1 1 1 0 1WOR_W―字或运算WOR_DW―双字或运算苏州天天自动化苏州市新市路 138 号111 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材112WXOR_B―字节异或运算程序举例:如上程序,当 M0.1 接通,则执行 WXOR_B 指令,将 VB1 的每位和 VB2 的每位进行异 或操作,结果传送到 VB3 里 具体运算过程如下: 若 VB1 = 0 1 1 0 0 1 0 1 0―0=0 0―1=1(异或操作) VB2 = 0 0 1 1 1 1 0 0 1―0=1 1―1=0 则 VB3 = 0 1 1 1 1 1 0 1WXOR_W―字异或运算WXOR_DW―双字异或运算苏州天天自动化苏州市新市路 138 号112 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材113INV_B―字节取反指令程序举例:如上程序,当 M0.1 接通,则执行 INV_B 指令,指令把 MB1 的各位都取反后,把结果 传送到 MB2 里面INV_W―字取反指令INV_DW―双字取反指令苏州天天自动化苏州市新市路 138 号113 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材114第四节 程序流程指令6.2.1跳转指令--------------------CJ LBL6.2.4 有条件结束-------------------END6.2.5 循环指令---------------------FOR,NEXT6.2.6 停止指令---------------------STOP苏州天天自动化苏州市新市路 138 号114 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材1151 跳转指令 JMPJMP---跳转指令 LBL--跳转指针 指针可能指定下列编号:作为执行序列的一部分的指令,有 JMP 指令,可以缩短运算周期及使用双线圈。 用户可以在主程序、子程序、中断程序中使用跳转指令 但是跳转指令只能在同一段程序中使用,不能从主程序跳转子程序或者其他程序 间跳转苏州天天自动化苏州市新市路 138 号115 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材116循环指令[FOR,NEXT]每条 FOR 指令必需对应一条 NEXT 指令上述程序中,执行初始值为 1,终止值为 10,那么随着当前循环计数值 VW0 从 1 增加到 10,FOR 与 NEXT 之间的指令被执行 10 次。 如果初值大于终值,那么循环体将不被执行。案例:请计算 VB0~V20 的和苏州天天自动化苏州市新市路 138 号116 苏州天天自动化 PLC 培训中心 西门子 S7-200 内部教材117有条件结束指令【END】

我要回帖

更多关于 vd单位换算 的文章

 

随机推荐