浔之漫智控技术-西门子PLC代理商
西门子PLC模块 , 变频器 , 触摸屏 , 交换机
西门子6ES7223-1HF22-0XA8选型手册

西门子6ES7223-1HF22-0XA8选型手册

PLC 硬件系统设计

1 . PLC 型号的选择

在作出系统控制方案的决策之前,要详细了解被控对象的控制要求,从而决定是否选用 PLC 进行控制。

在控制系统逻辑关系较复杂(需要大量中间继电器、时间继电器、计数器等)、工艺流程和产品改型较频繁、需要进行数据处理和信息管理(有数据运算、模拟量的控制、 PID 调节等)、系统要求有较高的可靠性和稳定性、准备实现工厂自动化联网等情况下,使用 PLC 控制是很必要的。

目前,国内外众多的生产厂家提供了多种系列功能各异的 PLC 产品,使用户眼花缭乱、无所适从。所以全面权衡利弊、合理地选择机型才能达到经济实用的目的。一般选择机型要以满足系统功能需要为宗旨,不要盲目贪大求全,以免造成投资和设备资源的浪费。机型的选择可从以下几个方面来考虑。

( 1 )对输入 / 输出点的选择

盲目选择点数多的机型会造成一定浪费。

要先弄清除控制系统的 I/O 总点数,再按实际所需总点数的 15 ~ 20 %留出备用量(为系统的改造等留有余地)后确定所需 PLC 的点数。

另外要注意,一些高密度输入点的模块对同时接通的输入点数有限制,一般同时接通的输入点不得超过总输入点的 60 %; PLC 每个输出点的驱动能力( A/ 点)也是有限的,有的 PLC 其每点输出电流的大小还随所加负载电压的不同而异;一般 PLC 的允许输出电流随环境温度的升高而有所降低等。在选型时要考虑这些问题。

PLC 的输出点可分为共点式、分组式和隔离式几种接法。隔离式的各组输出点之间可以采用不同的电压种类和电压等级,但这种 PLC 平均每点的价格较高。如果输出信号之间不需要隔离,则应选择前两种输出方式的 PLC 。

( 2 )对存储容量的选择

对用户存储容量只能作粗略的估算。在仅对开关量进行控制的系统中,可以用输入总点数乘 10 字 / 点+输出总点数乘 5 字 / 点来估算;计数器 / 定时器按( 3 ~ 5 )字 / 个估算;有运算处理时按( 5 ~ 10 )字 / 量估算;在有模拟量输入 / 输出的系统中,可以按每输入 / (或输出)一路模拟量约需( 80 ~ 100 )字左右的存储容量来估算;有通信处理时按每个接口 200 字以上的数量粗略估算。后,一般按估算容量的 50 ~ 100 %留有裕量。对缺乏经验的设计者,选择容量时留有裕量要大些。

( 3 )对 I/O 响应时间的选择

PLC 的 I/O 响应时间包括输入电路延迟、输出电路延迟和扫描工作方式引起的时间延迟(一般在 2 ~ 3 个扫描周期)等。对开关量控制的系统, PLC 和 I/O 响应时间一般都能满足实际工程的要求,可不必考虑 I/O 响应问题。但对模拟量控制的系统、特别是闭环系统就要考虑这个问题。

( 4 )根据输出负载的特点选型

不同的负载对 PLC 的输出方式有相应的要求。例如,频繁通断的感性负载,应选择晶体管或晶闸管输出型的,而不应选用继电器输出型的。但继电器输出型的 PLC 有许多优点,如导通压降小,有隔离作用,价格相对较便宜,承受瞬时过电压和过电流的能力较强,其负载电压灵活(可交流、可直流)且电压等级范围大等。所以动作不频繁的交、直流负载可以选择继电器输出型的 PLC 。

( 5 )对在线和离线编程的选择

离线编程示指主机和编程器共用一个 CPU ,通过编程器的方式选择开关来选择 PLC 的编程、监控和运行工作状态。编程状态时, CPU 只为编程器服务,而不对现场进行控制。编程器编程属于这种情况。在线编程是指主机和编程器各有一个 CPU ,主机的 CPU 完成对现场的控制,在每一个扫描周期末尾与编程器通信,编程器把修改的程序发给主机,在下一个扫描周期主机将按新的程序对现场进行控制。计算机辅助编程既能实现离线编程,也能实现在线编程。在线编程需购置计算机,并配置编程软件。采用哪种编程方法应根据需要决定。

( 6 )据是否联网通信选型

若 PLC 控制的系统需要联入工厂自动化网络,则 PLC 需要有通信联网功能,即要求 PLC 应具有连接其他 PLC 、上位计算机及 CRT 等的接口。大、中型机都有通信功能,目前大部分小型机也具有通信功能。

( 7 )对 PLC 结构形式的选择

在相同功能和相同 I/O 点数据的情况下,整体式比模块式价格低。但模块式具有功能扩展灵活,维修方便(换模块),容易判断故障等优点,要按实际需要选择 PLC 的结构形式。

西门子6ES7515-2TM01-0AB0技术参数

2 .分配输入 / 输出点

一般输入点和输入信号、输出点和输出控制是一一对应的。

分配好后,按系统配置的通道与接点号,分配给每一个输入信号和输出信号,即进行编号。

在个别情况下,也有两个信号用一个输入点的,那样就应在接入输入点前,按逻辑关系接好线(如两个触点先串联或并联),然后再接到输入点。

( 1 )确定 I/O 通道范围

不同型号的 PLC ,其输入 / 输出通道的范围是不一样的,应根据所选 PLC 型号,查阅相应的编程手册,决不可“张冠李戴"。必须参阅有关操作手册。

( 2 )部辅助继电器

内部辅助继电器不对外输出,不能直接连接外部器件,而是在控制其他继电器、定时器 / 计数器时作数据存储或数据处理用。

从功能上讲,内部辅助继电器相当于传统电控柜中的中间继电器。

未分配模块的输入 / 输出继电器区以及未使用 1 : 1 链接时的链接继电器区等均可作为内部辅助继电器使用。根据程序设计的需要,应合理安排 PLC 的内部辅助继电器,在设计说明书中应详细列出各内部辅助继电器在程序中的用途,避免重复使用。参阅有关操作手册。

( 3 )分配定时器 / 计数器

PLC 的定时器 / 计数器数量分别见有关操作手册。

7.3 PLC 软件系统设计方法及步骤

7.3.1 PLC 软件系统设计的方法

在了解了 PLC 程序结构之后,就要具体地编制程序了。编制 PLC 控制程序的方法很多,这里主要介绍几种典型的编程方法。

1. 图解法编程

图解法是靠画图进行 PLC 程序设计。常见的主要有梯形图法、逻辑流程图法、时序流程图法和步进顺控法。

(1) 梯形图法:梯形图法是用梯形图语言去编制 PLC 程序。这是一种模仿继电器控制系统的编程方法。其图形甚至元件名称都与继电器控制电路十分相近。这种方法很容易地就可以把原继电器控制电路移植成 PLC 的梯形图语言。这对于熟悉继电器控制的人来说,是方便的一种编程方法。

(2) 逻辑流程图法:逻辑流程图法是用逻辑框图表示 PLC 程序的执行过程,反应输入与输出的关系。逻辑流程图法是把系统的工艺流程,用逻辑框图表示出来形成系统的逻辑流程图。这种方法编制的 PLC 控制程序逻辑思路清晰、输入与输出的因果关系及联锁条件明确。逻辑流程图会使整个程序脉络清楚,便于分析控制程序,便于查找故障点,便于调试程序和维修程序。有时对一个复杂的程序,直接用语句表和用梯形图编程可能觉得难以下手,则可以先画出逻辑流程图,再为逻辑流程图的各个部分用语句表和梯形图编制 PLC 应用程序。

(3) 时序流程图法:时序流程图法使首先画出控制系统的时序图(即到某一个时间应该进行哪项控制的控制时序图),再根据时序关系画出对应的控制任务的程序框图,后把程序框图写成 PLC 程序。时序流程图法很适合于以时间为基准的控制系统的编程方法。

(4) 步进顺控法:步进顺控法是在顺控指令的配合下设计复杂的控制程序。一般比较复杂的程序,都可以分成若干个功能比较简单的程序段,一个程序段可以看成整个控制过程中的一步。从整个角度去看,一个复杂系统的控制过程是由这样若干个步组成的。系统控制的任务实际上可以认为在不同时刻或者在不同进程中去完成对各个步的控制。为此,不少 PLC 生产厂家在自己的 PLC 中增加了步进顺控指令。在画完各个步进的状态流程图之后,可以利用步进顺控指令方便地编写控制程序。

2. 经验法编程

经验法是运用自己的或别人的经验进行设计。多数是设计前先选择与自己工艺要求相近的程序,把这些程序看成是自己的“试验程序"。结合自己工程的情况,对这些“试验程序"逐一修改,使之适合自己的工程要求。这里所说的经验,有的是来自自己的经验总结,有的可能是别人的设计经验,就需要日积月累,善于总结。

3. 计算机辅助设计编程

计算机辅助设计是通过 PLC 编程软件在计算机上进行程序设计、离线或在线编程、离线仿真和在线调试等等。使用编程软件可以十分方便地在计算机上离线或在线编程、在线调试,使用编程软件可以十分方便地在计算机上进行程序的存取、加密以及形成 EXE 运行文件。

7.3.2 PLC 软件系统设计的步骤

在了解了程序结构和编程方法的基础上,就要实际地编写 PLC 程序了。编写 PLC 程序和编写其他计算机程序一样,都需要经历如下过程。

1. 对系统任务分块

分块的目的就是把一个复杂的工程,分解成多个比较简单的小任务。这样就把一个复杂的大问题化为多个简单的小问题。这样可便于编制程序。

2. 编制控制系统的逻辑关系图

从逻辑关系图上,可以反应出某一逻辑关系的结果是什么,这一结果又英国导出哪些动作。这个逻辑关系可以是以各个控制活动顺序为基准,也可能是以整个活动的时间节拍为基准。逻辑关系图反映了控制过程中控制作用与被控对象的活动,也反应了输入与输出的关系。

3. 绘制各种电路图

绘制各种电路的目的,是把系统的输入输出所设计的地址和名称起来。这是很关键的一步。在绘制 PLC 的输入电路时,不仅要考虑到信号的连接点是否与命名*,还要考虑到输入端的电压和电流是否合适,也要考虑到在特殊条件下运行的可靠性与稳定条件等问题。特别要考虑到能否把高压引导到 PLC 的输入端,把高压引入 PLC 输入端,会对 PLC 造成比较大的伤害。在绘制 PLC 的输出电路时,不仅要考虑到输出信号的连接点是否与命名*,还要考虑到 PLC 输出模块的带负载能力和耐电压能力。此外,还要考虑到电源的输出功率和极性问题。在整个电路的绘制中,还要考虑设计的原则努力提高其稳定性和可靠性。虽然用 PLC 进行控制方便、灵活。但是在电路的设计上仍然需要谨慎、全面。因此,在绘制电路图时要考虑周全,何处该装按钮,何处该装开关,都要一丝不苟。

4. 编制 PLC 程序并进行模拟调试

在绘制完电路图之后,就可以着手编制 PLC 程序了。当然可以用上述方法编程。在编程时,除了要注意程序要正确、可靠之外,还要考虑程序要简捷、省时、便于阅读、便于修改。编好一个程序块要进行模拟实验,这样便于查找问题,便于及时修改,不要整个程序完成后一起算总帐。

5. 制作控制台与控制柜

在绘制完电器、编完程序之后,就可以制作控制台和控制柜了。在时间紧张的时候,这项工作也可以和编制程序并列进行。在制作控制台和控制柜的时候要注意选择开关、按钮、继电器等器件的质量,规格必须满足要求。设备的安装必须注意安全、可靠。比如说屏蔽问题、接地问题、高压隔离等问题必须妥善处理。

6. 现场调试

现场调试是整个控制系统完成的重要环节。任何程序的设计很难说不经过现场调试就能使用的。只有通过现场调试才能发现控制回路和控制程序不能满足系统要求之处;只有通过现场调试才能发现控制电路和控制程序发生矛盾之处;只有进行现场调试才能后实地测试和后调整控制电路和控制程序,以适应控制系统的要求。

7. 编写技术文件并现场试运行

经过现场调试以后,控制电路和控制程序基本被确定了,整个系统的硬件和软件基本没有问题了。这时就要全面整流技术文件,包括整理电路图、 PLC 程序、使用说明及帮助文件。到此工作基本结束

plc的循环程序是如何执行的。(这一点非常重要)

1.循环程序如何执行



西门子plc程序执行图(建议保存)

1.1在CPU上电之后,启动块OB100/101/102先启动一次。(调用哪一个OB块由系统的启动模式配置决定)

1.2启动块执行完毕后,系统的循环监视时间就被激活了(这个时间可以在STEP7的硬件配置中设置,如果循环时间超出则PLC停机)

1.3之后,CPU会从输入模块及其它过程映象设备读取所有的输入状态

1.4接着下来便到了主循环程序的执行

1.4.1主循环执行也是按照语句顺序执行,如图所示,当OB1执行个语句CallFB,则此时程序进入所调用FB块顺序执行FB块的语句

1.4.2若在所调用的FB块,在某一语句中执行了CallFB/FC,则程序又进入下一级的FC中依次执行块中语句,依此类推

1.4.3当调用的下一级FC所有语句执行完成后,程序回到CallFC的这一语句,继续执行后面的语句

1.4.4当所Call的FB也执行完成后,程序回到OB1的CallFB处,继续执行后面的语句。

1.4.5直至后,完成OB1的所有程序,则主循环结束。

1.4.6在OB1执行的过程中,循环中断(如OB35)、故障中断(如OB86)等可以插入执行,执行完成后会回到中断的地方继续主循环的执行。

1.5主循环执行完成后,PLC将过程映象的输出写到输出模块

1.6完成1.5的步骤之后一个完整的循环就结束了,此时跳至1.2步骤,重新开始新一循环的监视时间,如此周而复始。

2.程序块类型

  知道了PLC循环程序如何执行后,我们再来看一看STEP7的程序块有哪些类型

2.1用户块

  用户块包括程序代码和用户数据。在结构化程序中,一些块循环调用处理,一些块需要时才调用。



2.1.1组织块

  OB块构成了S7CPU和用户程序的接口。可以把全部程序存在OB1中,让它连续不断地循环处理。也可以把程序放在不同的块中,用OB1在需要的时候调用这些程序块。除OB1外。操作系统根据不同的事件可以调用其他的OB块,例如:

2.1.1.1时间-日期中断

2.1.1.2周期时间中断

2.1.1.3诊断中断

2.1.1.4硬件中断

2.1.1.5故障处理中断

2.1.1.6硬件启动

2.1.2功能块(FB)

  功能块是在逻辑操作块内的功能或功能组,在操作块内分配有存储器,并存储有变量。FB需要这个背景数据块形式的辅助存储器。通过背景数据块传递参数,而且,一些局部参数也保存在此区。其他的临时变量存在局部堆栈中。保存在背景数据块内的数据,当功能块关闭时数据仍保持。而保存在局部堆栈中的数据不能保存。

2.1.3功能(FC)

  功能是类似于功能块的逻辑操作块,但是,其中不分配存储区。FC不需要背景数据块。临时变量保存在局部堆栈中,直到功能结束。当FC执行结束时,使用的变量要丢失。

2.1.4数据块(DB)

  数据块是一个分配的区域,其中保存其他功能的数据或信息。数据块是可读/写区,并做为用户程序的一部分转入CPU。

2.2系统块

  系统块是在CPU操作系统中预先定义好的功能和功能块。这些块不占用用户程序空间。用户程序调用系统块,在整个系统中这些块具有相同的接口、相同的标示和相同的号。用户程序可以容易地转换到不同的CPU或PLC。



2.2.1系统功能块(SFC)

  系统功能是集成在S7CPU中的已经编程并调试过的功能。这些块支持的一些任务是设置模块参数、数据通讯和拷贝功能等。用户程序可以不用装载直接调用SFC。SFC不需要分配数据块。

2.2.2系统功能块(SFB)

  系统功能块是S7CPU的集成功能。由于SFB是操作系统的一部分,用户程序可以不用装载直接调用SFB。SFB需要分配背景数据块DB,数据块必须作为用户程序的一部分下装到CPU。

2.2.3系统数据块(SDB)

  系统数据块是由不同STEP7工具产生的程序存储区,其中存有操作控制器的必要数据。SDB中存有一些信息,例如:组态数据、通讯连接和参数。

3.编程方法

  前面大致了解了一下PLC程序的一个循环是如何执行的,并了解了一下程序中块的类型,下面再来看看有哪些编程方法组织这些块。

  每一个西门子的编程人员都会有自已的编程习惯和方法。STEP7为设计程序提供了三种方法。基于这些方法,可以选择适合于你的应用的程序设计方法。

3.1线性化编程

  所有的程序都在一个连续的指令块中。这种结构和PLC所代替的固定接线的继电器线路类似。系统按照顺序处理各个指令。

3.2模块化编程

  程序分成不同的块,每个块包含了一些设备和任务的逻辑指令。组织块中的指令决定是否调用有关的控制程序模块。例如,一个模块程序包含有一个被控加工过程的各个操作模式。

3.3结构化编程

  结构化程序包含有带有参数的用户自定义的指令块。这些块可以设计成一般调用。实际的参数(输入和输出的地址)在调用时进行赋值。


展开全文
优质商家推荐 拨打电话