1、 编程软件的安装和中文界面设置 双击编程软件中的安装程序SETUP.EXE,根据安装提示,编程语言选择English,完成安装。启动STEP7-Micro/WIN40。安装完成自动选择为英文版,进行以下操作,设置为中文界面:点击菜单Tools,选项Options,在弹出的Options中选择General,在右边的General标签下的语言选择Language窗口下选择Chinese,点击OK,编程软件自动关闭。重新启动软件,显示为中文界面。1.连接S7-200PLC与计算机通信电缆 可以采用PC/PPI电缆建立PC机与PLC之间的通信连接。RS-232通信口COM1或COM2接口上,RS-4
2、85端接到S7-200通信口上。有5种波特率可以选择:1.2K,2.4K,9.6K,19.2K,38.4K。系统的默认值为9.6kb/s。2.建立在线连接 建立与S7-200 CPU的在线联系,步骤如下:(1)在STEP7-Micro/WIN40运行时单击“通信”图标。(2)双击对话框中的“双击刷新”图标,STEP7-Micro/WIN40编程软件将检查所连接的所有S7-200CPU站。(3)双击要进行通信的站,在通信建立对话框中,可以显示所选的通信参数。选项配置程序编辑器窗口新建项目打开现有项目保存当前项目剪切选项并复制至剪贴板打印预览将选项复制至剪贴板在光标位置粘贴剪贴板内容撤消最后一个条
3、目编译程序块或数据块全部编译将程序从PLC上载至计算机从计算机下载程序至PLC符号表名称列按照A-Z排序符号表名称列按照Z-A排序打印预览 状态图表全部读取强制数值将PLC设为运行模式将PLC设为停止模式在程序状态打开关闭之间切换在触发暂停打开停止之间切换在图状态打开关闭之间切换状态图表单次读取状态图表全部写入强制PLC数据取消强制PLC数据状态图表全部取消强制 插入指令盒插入向下直线插入向上直线插入左行插入右行插入触点插入线圈1.在STEP 7-Micro/WIN 40中,单击浏览条中的“通讯Communications”图标,或用菜单命令“视图”“组件”“通讯”。2.从“通讯”对话框(如图
4、3-21所示)的右侧窗格,单击显示“双击刷新Double Click to Refresh”的蓝色文字。1.下载之前,PLC必须位于“停止”的工作方式。检查PLC上的工作方式指示灯,如果PLC没有在“停止”,单击工具条中的“停止”按钮,将PLC至于停止方式。单击工具条中的“下载”按钮,或用菜单命令“文件”“下载”。2.上载Upload单击“上载”按钮。选择菜单命令“文件”“上载”。下图为一个利用PC/PPI电缆连接计算机和CPU的示意图。使用PC/PPI电缆设置通信的步骤如下:(1)设置PC/PPI电缆上的DIP开关 PC/PPI电缆上的DIP开关有5个扳键,1、2、3号键用于设置波特率,4号
5、键和5号键用于设置通信方式。初学者可选择通信速率的默认值9 600bps,即如图所示1、2、3号键设置为010,未使用调制解调器时4、5号键均应设置为0,故此时DIP开关的5个扳键可设置为01000。如上图所示。(2)利用PC/PPI电缆连接计算机和CPU 将PC/PPI电缆上标有“PC”的RS-232端连接到计算机的RS-232通信接口,标有“PPI”的RS-485端连接到CPU模块的通信口,拧紧两边的螺钉。(3)核实接口缺省参数 在STEP7-Micro/WIN32的浏览条中单击“通讯”图标,或从菜单中选择“检视通讯”选项(“”后表示下层菜单),将出现“通讯设定”对话框;选择其中的“属性(
6、Properties)”按钮,出现PC/PPI电缆属性对话框。初学者可以使用默认的通信参数,在PC/PPI性能设置窗口中按“确定”按钮可获得默认的参数。(4)建立计算机与可编程序控制器的在线联系 在STEP7-Micro/WIN32的浏览条中单击“通讯”图标,或从菜单中选择“检视通讯”选项,将出现通讯联接对话框,显示尚未建立通信连接。双击对话框中的“刷新”图标,编程软件检查可能与计算机连接的所有S7-200 CPU(站),在对话框中显示已建立起连接的每个站的CPU图标、型号和站地址。(1)新建项目 编制程序之前,首先应创建一个项目。用工具条中的“新建项目”按钮或用菜单命令“文件新建”可以生成一
7、个新的项目。用菜单命令“文件另存为”可修改项目的名称和项目文件所在的文件夹。1程序编写前的基本设置程序编写前的基本设置 (2)打开一个已有的项目 用菜单命令“文件打开”可打开已有的项目。最近工作过的项目将在菜单文件的下部列出,可直接选择它。项目存放在扩展名为mwp的文件中。(3)设置可编程序控制器型号 用菜单命令“PLC类型”打开PLC类型对话框,可根据所使用的可编程序控制器选择型号,如果已经成功建立通信连接,也可单击对话框中的“读取PLC”按钮读出可编程序控制器的型号和硬件版本。(4)选择编程语言 用菜单命令“工具选项”打开选项对话框,可根据需要选择SIMATIC或IEC1131-3的编程方
8、式,还可以选择编辑器类型。采用梯形图方式编程应选择阶梯编辑器。以下图所示电动机间歇运行控制程序为例,介绍用STEP7-Micro/WIN32 编程软件编制梯形图程序的操作步骤。(5)LAD(梯形图)程序的输入方法(1)编制符号表 为了便于程序的调试和阅读,在输入程序前可用符号地址代替存 储器的地址编写符号表(简单程序也可不用符号表)。点击浏览条中的“符号表”图标,或选择菜单命令“检视符号表”选项,窗口中显示符号表,按需要填写内容如图所示。完成符号表后,编写梯形图程序时键入符号名称或存储器地址均可,若使用键入存储器地址的方法输入在梯形图中将被自动转换为符号地址。2 在程序编辑器中输入梯形图程序在
9、程序编辑器中输入梯形图程序 输入梯形图程序可采用拖放或双击指令树中的相应图标、选择工具条中的相应按钮、运用功能键等多种不同的方法。下面结合电动机间歇运行控制程序具体介绍输入程序的一般步骤:1)在程序编辑器中将矩形光标置于网络1紧靠左母线,打开指令树中“指令 位逻辑”图标,双击“”或将其拖放到所需位置后释放,在触点出现的同时其上方显示“?”,矩形光标自动移至下一位置;2)双击指令树中的“/”或将其拖放至所需位置后释放,在触点出现的同时,其上方显示“?”,矩形光标自动移至下一位置;3)打开指令树中“指令 计时器”图标,双击“TON”图标或将其拖放到所需位置后释放,在定时器盒出现的同时其上方和PT端
10、分别显示“?”;4)依次选中网络1程序中的“?”区输入地址号或数值;5)将矩形光标置于网络2紧靠左母线(每个网络只能编辑一个逻辑行的梯形图),双击指令树中的“”或将其拖放至所需位置后释放,在触点出现的同时其上方显示“?”,矩形光标自动移至下一位置;6)双击指令树中的“()”或将其拖放至所需位置后释放,在线圈出现的同时,其上方显示“?”;7)将矩形光标移至“()”前的“”上,点击工具条上的线下图标“”画面出现与“()”并行的连线。8)将指令树中的“TON”图标拖放到所需位置后释放,在定时器盒出现的同时其上方和PT端分别显示“?”;9)依次选中网络2程序中的“?”区输入地址号或数值。除上述方法外,
11、也可以使用F4、F9、F6键来快速输入触点、盒和线圈指令。下图即为完成以上操作后程序编辑器显示的画面。(1)覆盖 将矩形光标移至需修改的指令上放入新指令,程序编辑器将用新指令替换原来的指令;(2)删除 在输入程序的过程中如出现错误可随时按动键盘中的“Del”键删除矩形光标中的内容,或按动键盘中的“BackSpace”键删除矩形光标前的内容;(3)插入 按下键盘中的“Ins”键选择插入方式,将矩形光标移至需插入的指令位置放入新指令即可,新指令将插入光标选中的指令前,原指令位置自动后移。3.LAD(梯形图)程序的修改(梯形图)程序的修改 在输入程序的过程中也可在矩形光标中点击右键,在上跳菜单中选择
12、“剪切”、“复制”、“粘贴”、“删除”和“插入”的方法修改程序。若需要将输入的LAD(梯形图)程序转换为STL(语句表)形式,只需选择菜单命令“查看STL”选项,窗口中即可显示对应于梯形图程序的语句表。4LAD(梯形图)(梯形图)/STL(语句表)形式的转换(语句表)形式的转换 用工具条中的“编译”或“全部编译”按钮,或用“PLC”菜单中的“编译”、“全部编译”命令均可编译程序。编译后在输出窗口显示程序中语法错误的数量、各条错误的原因和错误在程序中的位置。双击输出窗口中的某一条错误,程序编辑器中的矩形光标将会移到程序中该错误所在的位置。必须改正程序中的所有错误,编译成功后才能下载程序。5编译程
13、序编译程序 编译程序后,若想了解程序内是否使用以及在何处使用某线圈或触点等信息,可使用交叉引用功能。只需点击浏览条中的“交叉引用”图标,或选择菜单命令“查看组件交叉引用”选项,窗口中即可显示对应于梯形图程序中各线圈、触点的具体位置等信息。如图1-22所示。在交叉引用表中双击某操作数,可以显示出包含该操作数的那一部分程序。6交叉引用交叉引用 计算机与可编程序控制器建立起通信连接,且用户程序编译成功后,可以将其下载到可编程序控制器中去。下载之前,可编程序控制器应处于STOP方式。如果不在STOP方式,可将CPU模块上的方式开关扳到STOP位置。采用单击工具栏的“停止”按钮或选择菜单命令“PLC停止
14、”的方法同样可以进入STOP状态。在下载前如需清除可编程序控制器中的程序可选择菜单命令“PLC清除”选项。7程序的下载、上载和清除程序的下载、上载和清除 单击工具栏的“下载”按钮,或选择菜单命令“文件下载”,将会出现如图所示的下载对话框。用户可以选择下载程序块、数据块或系统块类别。单击“确认”按钮,开始下载信息。下载成功后,确认框显示“下载成功”。如果STEP7-Micro/WIN32中设置的CPU型号与实际不符,将出现警告信息,应修改CPU的型号后再下载。可以从可编程序控制器上载(载入)程序到编程软件,上载前应在STEP7-Micro/WIN32中建立或打开保存从可编程序控制器上装的块的项目
15、,最好用一个新建的空的项目来保存上装的块。单击工具栏的“载入”按钮,或选择菜单命令“文件上装”即出现如图1-23所示的载入对话框,选择要上载的块后单击“确认”按钮。(1)单次扫描 若需要观察到可编程序控制器从STOP方式进入RUN方式首次扫描时程序运行的状态可采用单次扫描的方法。在STOP方式下(可编程序控制器的方式选择开关置于TERM)选择菜单命令“调试单次扫描”,此时可编程序控制器从STOP方式进入RUN方式,执行一次扫描后回到STOP方式,从可编程序控制器的输出指示灯可观察到这一很难捕捉到的状态。1用单次/多次扫描监视用户程序 (2)多次扫描 可以指定执行有限次的程序扫描次数(165 5
16、35次)监视用户程序的执行。在STOP方式下(可编程序控制器的方式选择开关置于TERM)选择菜单命令“调试多次扫描”来设置扫描执行的次数即可。创建和打开状态表是为了对图的内容进行编辑或查看。可采用单击浏览条上的“状态表”按钮、选择菜单命令“查看组件状态表”选项或打开指令树内的状态表文件夹,然后双击“SHT1”图标三种方法中的任一种,画面即可显示状态表窗口。在状态表的地址列应输入存储器地址。在格式列应选择数值的显示方式,可双击鼠标或按空格键、回车键浏览有效格式并选择数据格式。对于计数器、计时器可选择按位或字格式显示,若选择按位显示,数值列显示计数器、定时器的位状态(1或0)。若选择按字(带符号、
17、不带符号、十六进制)显示则显示计数器、定时器的当前值。下图所示为在状态表中选择不同数据格式时数值列的表示形式。2用状态表监视并修改用户程序 (1)状态表的创建和编辑 在状态表的修改过程中,可采用下列方法:1)插入新行 在状态表中选择并右击单元或行,在出现的上跳菜单中选择命令“插入行”可在当前光标位置的上部插入新行;若将光标置于最后一行的任意单元并按下箭头键可在状态表底部插入新行。2)删除单元或行 选中并右击单元或行,在出现的上跳菜单中选择命令“删除选择”可删除被选中的单元或行。3)单击行号可选择整行剪切或复制。4)单击行号上部的图左上角可选择整个状态表。若需增加新的状态表可右击指令树中状态表文
18、件夹或单击已经打开的状态表,在弹出的菜单选择“插入状态表”选项。如果项目中有多个状态表,可用状态表底部的标签切换。右图为创建的电动机间歇运行控制状态表。从图中可见,创建成功的状态表在数值列均为空白,即此时并不具有监视运行的功能。1)状态表的启动和关闭 经启动后的状态表才具备收集状态信息、监视运行状态的功能。单击工具条上的“状态表监控”图标或选择菜单命令“调试开始状态表监控”选项,可启动状态表(此时不能再编辑状态表),再操作一次可关闭状态表。调试程序用的工具条如右图所示。(2)状态表的启动和监视 2)单次读取和连续表状态 状态表被关闭时(未启动前),单击工具条上的“单次读取”按钮或选择菜单命令“
19、调试单次读取”选项,可以从可编程序控制器收集当前的数据,并在表中当前数值列显示出来,且在执行用户程序时并不对其更新。状态表被启动后,编程软件可连续从可编程序控制器收集信息,表中当前数值列的数值按照选定的数据格式随程序的运行而不断的更新变化。运用状态表监视电动机间歇运行控制时,合上运行开关I0.0,可观察到程序运行的情况如下图所示(当前数值列的内容随程序的运行连续更新)。此时可编程序控制器的输出指示灯Q0.0熄灭5秒,燃亮10秒,周而复始循环直至断开运行开关I0.0。3)用状态表强制改变数值 在运行方式下可以采用强制功能模拟逻辑条件和物理条件,建议此功能只可在不带负载进行程序调试时运用。因在带负
20、载运行的情况下强制数值可能引起系统出现无法预料的情况,甚至导致人员伤亡或设备损坏。S7-200允许在程序运行状态强制性地给所有的I/O点赋值,此外最多还可改变16个内部存储器数据(V或M)或模拟量I/O(AI或AQ)。用鼠标右键单击状态表中的操作数后可从上跳菜单选项中选择对该操作数的强制或取消强制。另外,在显示状态表后,还可用工具条中的相关按钮或用“排错”菜单中的选项执行下列操作:全部写入:对状态表内新数值列改动完成后,可利用全部写入将所有改动传送至可编程序控制器。物理输入点不能用此功能改动。强制:在状态表的地址列中选中一个操作数,在新数值列写入希望的数值,然后按工具条中的“强迫”按钮。一旦使
21、用了强制功能,每次扫描都会将修改的数值用于该操作数,直到取消对它的强制。被强制的数值旁边将显示锁定图标(一把合上的锁)取消强制:选择一个被强制的操作数,然后按工具条中的“非强迫”按钮或在右击出现的弹出菜单中单击“非强迫”选项;若需将状态表中所有被强制的操作数取消强制,只需按工具条中的“全部非强迫”按钮或选择菜单中“排错全部非强迫”选项,采用全部取消强制之前不必选择单个地址。解除强制后锁定图标将会消失。读取全部强制:执行读取全部强制功能时,状态表中被强制操作数的当前数值列根据不同的情况显示不同的图标。锁定图标表示该操作数被显式强制,对该操作数取消强制之前不能改变其数值。灰色的锁定图标表示该操作数
22、被隐式强制。例如,如果VW0被强制,则VB0被隐式强制(VB0是VW0的第一字节)。被隐式强制的数值本身不能取消强制,必须在解除对VW0的强制后才能改变VB0的数值,半块锁定图标表示操作数的一部分被部分强制。例如,如果VW0被显式强制,则VW1的一部分也被强制(VW1的第一字节是VW0的第二字节)。不能对部分强制的数值本身取消强制,在改变该操作数数值之前,必须取消其被部分强制的操作数的强制。3在运行中显示梯形图的程序状态 可编程序控制器处于运行方式并建立起通信后,单击工具条上的“程序状态”按钮,或选择菜单命令“调试开始程序状态监控”,可在梯形图中显示出各元件的状态进行监控。在进入“程序状态”的
23、梯形图中,用添加的彩色块表示位操作数的线圈得电或触点闭合状态。在菜单命令“工具选项”打开的窗口中,可选择设置梯形图中功能块的大小、显示的方式和彩色块的颜色等。运行中梯形图内各元件的状态将随程序执行过程连续更新变换。启动“程序状态”的梯形图监视电动机间歇运行控制时,合上运行开关I0.0,可观察到程序运行的情况如图1-28所示。此时可编程序控制器的输出指示灯Q0.0熄灭5秒,燃亮10秒,周而复始循环直至断开运行开关I0.0。梯形图中被强制的数值用状态表中相同的符号来表示。可以在梯形图的程序状态启动强制和取消强制。1选定需要在线帮助的菜单项目或打开对话框按F1键;2利用菜单命令“帮助内容与目录”进入
24、帮助窗口查找;3选择菜单命令“帮助这是什么”或同时按Shift和F1键,用带问号的光标点击需查找的内容(如工具条中的按钮、程序编辑器和指令树等)。4选择菜单命令“帮助Web上的S7-200”可访问为S7-200提供支持和产品信息的西门子互连网网站。S7-200S7-200系列系列PLCPLC外围安装接线外围安装接线 PLC与外部设备的接线方式有独立式和汇点式两种。独立式每点构成单元电路;汇点式多点构成单元电路,其接线采用分组形式,以适应同机使用不同电源的要求,各组的端子数可以是2点、4点、8点、16点和32点等,如下图所示,即为分组汇点式的接线图。外部24V电源供电 内部24V电源供电 PLC
25、的接线正确与否关系到PLC能否正常工作和本身的使用寿命,因此在使用前一定要认真阅读有关的说明,并注意以下几点:(1)按规定正确连接电源电路。(2)输入COM端(公共端)与输出COM端(公共端)切不可相接;输入接线一般不超过10m;输出线不能用同一根电缆;输入线、输出线与交、直流线应分开连接,输出线应尽量远离高压线或动力线。(3)保证良好的接地,PLC应接专用地线,接地点应尽量与动力设备的接地点分开。在水产养殖中,经常会碰到需要给鱼类补充氧气,最好的办法就是使用“增氧泵”(如图1.1所示)。适时开动增氧泵给鱼塘水体增加溶氧量,可以改善水质,减少鱼类“浮头”的现象。但开机要选择时机,否则不仅会浪费
26、能源,而且效果也不好。比如傍晚开增氧泵,就会使上层水体的溶氧量降低且得不到补充,而下层水体的溶氧又会很快被图1.1 增氧泵示意图消耗掉,结果反而加速了耗氧的速度,翌日清晨更容易出现“鱼浮头”现象。此外,开动增氧泵的时间长短也大有讲究:闷热天气开机时间要长,凉爽天气则要短;半夜开机时间要长,中午则要短;施肥后开机时间要长,不施肥时则要短;风小时开机时间要长,风大时则要短。在现代化养殖中,增氧泵的数量非常庞大,而且要求非常高,这就对增氧泵控制提出了一定的要求。以某养殖场的增氧泵控制为例,有以下要求:(1)能在手动情况下,进行增氧泵的开机和关机;(2)能在自动情况下,按照设定的时间进行增氧泵时间控制
27、,到达设定时间后,增氧泵自动中断停机。对于增氧泵控制来说,其硬件设计相对简单,如图1.33所示。需要注意的是,在PLC线路控制中,输入和输出基本上是分离的,而且由于本线路输入的是DC 24V信号,而输出的是AC 220V信号,因此,不能有任何短路现象发生。图1.33 增氧泵控制的硬件设计根据图1.33所示可以列出增氧泵控制的I/O分配表,如表1.4所示。输入 名称输出名称I0.0SB1:启动按钮Q0.0增氧泵电动机I0.1SB2:停止按钮I0.2SA1:自动/手动表1.4增氧泵控制的I/O分配(1)定时器类型:a 接通延时定时器(TON)b 有记忆接通延时定时器(TONR)c 断开延时定时器(
28、TOF)定时器的编号用T和常数编号(最大为255)表示,如T0、T1等。S7-200定时器的分辨率有3种:1ms、10ms和100ms,定时器编号一旦确定后,其分辨率也随之确定,定时器号和分辨率关系如下表 定时器的设定时间T =设定值PT分辨率 如:TON指令使用T97(为10ms定时器),设定值为100,则实际定时时间为:T=10010ms=1000ms注意:定时器的编号在程序中只能是TON/TOF中的一种。定时器的编号如T0、T1等包含两方面的变量信息:定时器位和定时器当前值。定时器位与其他继电器的输出相似,当定时器的当前值达到设定值PT时,定时器的触点动作。定时器的当前值是存储器当前累计
29、的时间,用16位符号整数来表示,最大计数值为32767。定时器使用需注意:1ms分辩率定时器 每隔1ms刷新一次,刷新定时器位和定时器当前值,在一个扫描周期中要刷新多次,而不和扫描周期同步。10ms分辩率定时器 10ms分辩率定时器启动后,定时器对10ms时间间隔进行计时。程序执行时,在每次扫描周期的开始对10ms定时器刷新,在一个扫描周期内定时器位和定时器当前值保持不变。100ms分辨率定时器 100ms定时器启动后,定时器对100ms时间间隔进行计时。只有在定时器指令执行时,100ms定时器的当前值才被刷新。(1)接通延时定时器(TON)(2)有记忆接通延时定时器(TONR)(3)断开延时
30、定时器(TOF)增氧泵的软件设计,主要根据SA1选择开关来进行,分为手动和自动,具体程序如图1.34所示。其中定时器的时间可以根据实际要求进行调整。图1.34 增氧泵的定时控制主程序计数器 S7-200 PLC共提供了256个计数器,计数器可以作为以下三个类型使用:CTU增计数器、CTD减计数器、CTUD增/减计数器。以CTU增计数器为例,每次向上计数输入CU从关闭向打开转换时,向上计数(CTU)指令从当前值向上计数。当前值大于或等于预设值(PV)时,计数器位(Cxxx)打开。复原(R)输入打开或执行“复原”指令时,计数器被复原。达到最大值(32767)时,计数器停止计数。CTU;CTD;CT
31、UD;I/O寻址;数据传送 自动分装控制系统一般适用于五金、塑料、食品等行业中形状较规则、尺寸较小的产品(如球形、圆柱形,直径或长度小于50mm)的自动计数包装。它一般具有以下功能特点。自动完成物料提升、排列整理、计数、重量校验、制袋、充填、封口、计 数、成品包输出。PLC控制,能进行数字设定,故障报警。根据物料性质、制袋形式、包装规格、产量等要求的不同,配置灵活设备。如图2.1所示为一个典型的自动分装控制生产线,它是由送料带和包装输送带组成的。如图2.1所示的自动分装控制,其动作要求如下:(1)启动按钮、启动系统。开机时,包装输送带启动,并到达定位输入点停止;(2)定位停止,送料带启动,经计
32、数光电开关进行计数数量;(3)根据小/大包装选择开关,确定计数数量,当计数数量达到包装要求时,送料 带停止,包装输送带启动,继续 下一次计数分装;(4)按停止按钮可以停机。根据以上要求进行PLC系统设计。图2.1 自动分装控制示意图计数器s7-200 PLC共提供了256个计数器,计数器可以作为以下三个类型使用:CTU:增计数器;CTD:减计数器;CTUD:增/减计数器。CTU增计数器的指令如图2.16所示。每次向上计数输入CU从关闭向打开转换时,向上计数(CTU)指令从当前值向上计数。当前值(Cxxx)大于或等于预设值(PV)时,计数器位(Cxxx)打开。复原(R)输入打开或执行“复原”指令
33、时,计数器被复原。达到最大值(32767)时,计数器停止计数。CTU计数器指令的操作数类型如表2.4所示。图2.16 CTU增计数器表2.4 计数器指令的操作数类型输入输入/输出输出操操 作作 数数数据类型数据类型CXXX常数常数(C0C255)字字CUI,Q,M,SM,T,C,V,S,L,使能位使能位布尔布尔RI,Q,M,SM,T,C,V,S,L,使能位使能位布尔布尔PVVW,IW,QW,MW,SMW,LW,AIW,AC,T,C,常数常数,*VD,*AC,*LD,SW整数整数 CTD减计数器的指令如图2.17所示。每次向下计数输入CU从关闭向打开转换时,向下计数(CTD)指令从当前值向下计数
34、。当前值Cxxx等于0时,计数器位(Cxxx)打开。输入(LD)打开时,计数器复原计数器位(Cxxx),并用预设值(PV)载入当前值。达到零时,向下计数器停止计数,计数器位Cxxx打开。减计数器的范围也为C0C255。CTD计数器指令的操作数类型与CTU类似,即CU与CD类似、R与LD类似。如图2.18所示为一啤酒包装线,原设定每三瓶要执行一个小分装动作,因此编写主程序如图2.19所示。图2.17 CTD减计数器图2.18 啤酒包装线图2.19 啤酒包装线程序 CTUD增/减计数器的指令如图2.21所示。每次向上计数输入CU从关闭向打开转换时,向上/向下计时(CTUD)指令向上计数,每次向下计
35、数输入CD从关闭向打开转换时,向下计数。计数器的当前值Cxxx保持当前计数。每次执行计数器指令时,预设值PV与当前值进行比较。达到最大值(32767),位于向上计数输入位置的下一个上升沿使当前值返转为最小值(-32768)。在达到最小值(-32768)时,位于向下计数输入位置的下一个上升沿使当前计数返转为最大值(32767)。当当前值Cxxx大于或等于预设值PV时,计数器位Cxxx打开。否则,计数器位关闭。当“复原”(R)输入打开或执行“复原”指令时,计数器被复原。达到PV时,CTUD计数器停止计数。图2.21 CTUD指令自动分装控制的硬件接线如图2.32所示。图2.32 自动分装控制硬件图
36、I/O资源分配如表2.6所示。输入名称输出名称I0.0启动按钮(NO)Q0.0送料带电动机I0.1停止命令(NC)Q0.1包装输送带电动机运行I0.2包装计数脉冲,即光电开关信号I0.3包装输送带电动机定位点I0.4小包装计数ON/大包装计数OFF表2.6 I/O资源分配 自动分装控制的软件编程可以参考如图2.33所示进行,用户也可以根据要求重新编程。关键词 要点与精义信息链接状态流程(转移)图 状态流程(转移)图是描述控制系统的控制过程、功能和特性的图,又称为状态表、流程图、功能图,它直观、简单,是设计PLC顺序控制程序的一种有力工具。在工业领域中,许多的控制对象(过程)都属于顺序控制,其特
37、点是整个控制过程可划分为几个工步,每个工步按顺序轮流工作,而且任何时候都只有一个工步在工作。根据这种控制特点,开发了专门供编制顺序控制程序用的功能表图,这种先进的设计方法已成为PLC程序设计最主要的方法。SCR指令;状态转移;程序控制;汇合控制;分散控制 纸卷输送控制一般都用于造纸、印刷和包装厂中,在纸卷自动输送线中,将纸卷换行、升降、换位或运往其他需要的地方。如图3.1所示为一典型的输送设备。它主要包括两部分:踢纸机和电动升降平台。一般踢纸机采用气动控制,而升降平台则采用电动升降。(a)踢纸机(b)纸卷输送设备剖面图图3.1纸卷输送设备 在纸卷输送过程中,一般都遵循以下流程:(1)当纸卷通过
38、运输带达到电动升降平台时,则使得电动平台上升至限位;(2)当升降平台到达上限位时,踢纸机汽缸动作,将纸卷踢出到合适的位置;(3)踢纸机汽缸待到上限位后自复位;(4)电动升降平台下降到下限位等候一次流程的开始。请根据纸卷输送控制要求进行PLC硬件线路和软件编程。继电器-接触器控制系统电路图与梯形图在表示方法和分析方法上有很多相似之处,因此可以根据继电器一接触器控制电路图来设计梯形图。PLC的梯形图经验设计法,就是要依靠平时所积累的设计经验来设计梯形图。PLC发展初期就沿用了设计继电器电路图的方法来设计梯形图,即在已有的典型继电器电路图的基础上,根据被控制对象对控制的要求,不断地修改完善成梯形图。
39、这种方法没有普遍的规律可以遵循,一切都要靠设计者的经验来实现,就是把设计继电器电路图的思维转化为PLC梯形图设计思维。它一般用于逻辑关系较简单的梯形图设计中。(1)控制要求 按下启动按钮SB1,电动机自锁正转;按下停止按钮SB2,电动机停转。其继电器控制如图3.2所示。图3.2 电动机正转控制电路(2)PLC输入/输出分配 根据“经验设计法”可以进行I/O资源分配,如表3.1所示。停止时:按下停止按钮SB2停止信号I0.1为“1”I0.1常闭触点断开线圈“失电”(低电平)电动机停转。表3.1 电动机正转控制电路的I/O资源配置输输 入入名名 称称 输输 出出名名 称称I0.0启动按钮SB1Q0
40、.0接触器KMI0.1停止按钮SB2图3.3 PLC外部接线 PLC外部接线如图3.3所示。根据电动机工作的原理,可以进行如图3.4所示的编程。启动时:按下启动按钮SB1启动信号I0.0为“1”(高电平)I0.0常开触点接通;不按停止按钮SB2。停止信号I0.1为“0”(低电平)I0.1常闭触点接通。Q0.0线圈“有电”(高电平)Q0.0触点闭合“自锁”电动机连续正转。如果按下停止按钮,则Q0.0不能自保而掉电,电动机停止运行。继电器一接触器控制系统电路图与梯形图在表示方法和分析方法上有很多相似之处。如PLC控制元件也称为继电器,有线圈、常开触点、常闭触点。当某个继电器线圈有电时,其常开触点闭
41、合,常闭触点断开。梯形图是PLC的程序,是一种软件,继电器一接触器控制电路是由硬件元件组成的。除了根据继电器电路图设计梯形图外,还有一种重要的方法,就是根据顺序功能图来进行程序设计。在工业领域中,许多的控制对象(过程)都属于顺序控制,其特点是整个控制过程可划分为几个工步,每个工步按顺序轮流工作,而且任何时候都只有一个工步在工作。根据这种控制特点,开发了专门供编制顺序控制程序用的功能表图,这种先进的设计方法已成为PLC程序设计最主要的方法。状态流程(转移)图是描述控制系统的控制过程、功能和特性的,又称为状态表、流程图、功能图,它直观、简单,是设计PLC顺序控制程序的一种有力工具。在顺序控制中,一
42、个很重要的概念就是“步”。它是根据系统输出量的变化,将系统的一个工作循环过程分解成若干个顺序相连的阶段,编程时一般用PLC内部的软继电器表示各步。需要注意的是,“步”是根据PLC的输出量是否发生变化来划分的,只要系统的输出量状态发生变化,系统就从原来的步进入新的步。现在以某液压工作台的工作过程来进行分步,如图3.6所示。图3.6 液压工作台的工作过程 液压工作台的整个工作过程可划分为:原位(SQl)、快进(SBl)、工进(SQ2)和快退(SQ3)四步;各步电磁阀YAl,YA2,YA3的状态如表3.2所示。(1)液压工作台初始状态:停在原位(压合SQl)YA1-、YA2-、YA3-(输出)。(2
43、)按SB1:快进YA1+、YA2-(3)压合SQ2:工进YAl+、YA2-、YA3-(输出)。(4)压合SQ3:快退,快退回原位停止YA1-、YA2+、YA3-(输出)。表3.2 各步电磁阀YA1、YA2、YA3的状态YA1YA2YA3转换主令快进+-+SB1工进+-SQ2快退-+-SQ3停止-SQ1 从以上分析可以得出结论,PLC输出量发生变化时产生新的一步。1)初始步初始步 刚开始阶段所处的步,每个功能表图必须有一个。在状态转移图中,初始步用双线框表示,如 2)活动步活动步 表示当前正在执行的步。除了步之外,还有步与步之间的连线,叫做有向连线,以表示步的活动状态的进展方向;从当前步进入下一
44、步叫做转移,它用与有向连线垂直的短画线表示。指某步活动时,PLC向被控系统发出的命令叫做动作(输出),它是系统应执行的动作。动作用矩形框表示,中间有文字或符号,如果某一步有几个动作,则可用如图3.7所示方法表示。图3.7 动作示意图 状态转移图包括以下基本结构:(1)单序列结构。它的特点是每个前级步的后面只有一个转换,每个转换的后面只有一步,每一步都按顺序相继激活。(2)选择序列结构。它的特点是一个前级步的后面紧跟着若干后续步可供选择,但一般只允许选择其中的一条分支。(3)并列序列结构。它的特点是一个前级步的后面紧跟着若干后续步,当转换实现时,将后续步同时激活。(4)跳步、重复和循环序列结构。
45、其中跳步序列的特点是当转换条件满足时,跳过几个后续步不执行;而重复序列的特点是当转换条件满足时,重新返回到前级步执行;循环序列的特点则是当转换条件满足时,用重复的办法直接返回到初始步。(1)时序特性时序特性 状态转移图的时序特性就如同坐公共汽车。对人来说,车来就上,开到站就下;而对车来说,就是行驶一停止的过程,如图3.8所示。图3.8 时序特性图3.9 条件特性 (2)条件特性条件特性 同样,当坐公共汽车时,只有当“车到站”这个条件满足时,人才可以从一个站到达下一个站,这就是“条件特性”,如图3.9所示。西门子的SCR指令为用户提供了一种可自然纳入LAD程序的简单、强有力的状态控制编程技术。每
46、当应用程序包含一系列必须重复执行的操作时,SCR可用于为程序安排结构,以便使之直接与应用程序相对应。因而用户能够更快速、更方便地编程和调试应用程序。如图3.16所示为SCR等3个指令。在梯形图中,使用SCR有三种限制:(1)不能在一个以上例行程序中使用相同的S位。例如,如果在主程序中使用S0.1,则不能在子程序中再使用。(2)不能在SCR段中使用JMP和LBL指令。这表示不允许跳转入或跳转出SCR段,也不允许在SCR段内跳转。可以使用跳转和标签指令在SCR段周围跳转。(3)不能在SCR段中使用“结束”指令。图3.16 SCR指令示。但是,在很多应用程序中,一个顺序状态流必须分为两个或多个不同的
47、状态流。如图3.18所示,当控制流分为多个时,所有的输出流必须同时激活。图3.18 分散控制图3.17 顺序控制 具有良好定义步骤顺序的进程很容易用SCR段作为示范。例如,考虑一个有三个步骤的循环进程,当第三个步骤完成时,应当返回第一个步骤,如图3.17所 如图3.19所示,可使用由相同的转换条件启用的多条SORT指令,在SCR程序中实施控制流分散。图3.19 分散控制程序 当两个或多个连续状态流必须汇合成一个状态流时,出现一种与分散控制相似的状况。当多个状态流汇合成一条状态流时,则称为汇合。当状态流汇合时,在执行下一个状态之前,所有的输入流必须完成。如图3.20所示为汇合的状况。可采用从状态
48、L转换至L和从状态M转换至M的方式,在SCR程序中实施控制流汇合。如图3.21所示,当代表L和M的两个SCR位均为真时,可启用状态N。图3.20 汇合控制图3.21 汇合控制图3.21 汇合控制 纸卷输送控制的输入点有4个限位,分别是纸卷进入预定位置、电动上限位和下限位、踢纸机汽缸伸出限位;输出控制3个点,包括电动上升和下降、汽缸伸出(汽缸缩回采用自复位)。如图3.22所示就是硬件线路图。图3.22 纸卷输送控制的硬件示意图根据图3.22,可以列出纸卷输送控制的I/O资源配置,如表3.4所示。表3.4 纸卷输送控制输 入 名 称输 出名 称 I0.0纸卷进入预定位置Q0.0电动上升I0.1电动
49、上限位(NO)Q0.1电动下降I0.2电动下限位(NO)Q0.2踢纸机汽缸伸出I0.3汽缸伸出限位(NO)名称图3.23 单序列顺序功能关键词要点与精义信息链接中断程序 中断程序可以为PLC内部或外部的特殊事件提供快速反应,通常中断子程序都较为短小和简明扼要,这样可以加快中断子程序执行的速度,使其他程序不会受到长时间的延误。中断事件;中断优先级;ATCH;DTCH 在工业生产中,设备的正常运行是至关重要的,但是总会出现或这或那的问题,这时候传感器就会把信号传送到中央控制器,中央控制器根据不同类型进行报警。例如:无显示无报警;持续黄色报警;闪动红色停机报警;持续红色电气断路脱扣报警,等等。图4.
50、1 工业机器人生产线的报警灯 报警灯的颜色变化和频率变化预示着不同的维护或维修等级,因此很多程序设计中都将报警灯控制作为一种重要的部分来设计。本项目的报警控制灯要求如下:输入信号可以通过选择开关来模拟报警信号源;报警灯显示有两种变化频率,一种为快速,另一种为慢速。请设计相应的PLC程序。子程序可以帮助用户对程序进行分块。主程序中使用的指令决定具体子程序的执行状况。当主程序调用子程序并执行时,子程序执行全部指令直至结束。然后,系统将控制返回至调用子程序网络中的主程序。子程序用于为程序分段和分块,使其成为较小的、更易管理的块。在程序中调试和维护时,用户可以利用这项优势。通过使用较小的程序块,对这些