


价格:面议
0
联系人:
电话:
地址:
6ES7332-5HD01-0AB0参数详细
引言
在现代化的工业生产设备中,有大量的数字量及模拟量的控制装置,例如电机的启停,电磁阀的开闭,产品的计数,温度、压力、流量的设定与控制等,而PLC技术是解决上述问题的最有效、最便捷的工具,因此PLC在工业控制领域得到了广泛的应用。下面就PLC工业控制系统设计中的问题进行探讨。
2 PLC系统设备选型
PLC最主要的目的是控制外部系统。这个系统可能是单个机器,机群或一个生产过程。不同型号的PLC有不同的适用范围。根据生产工艺要求,分析被控对象的复杂程度,进行I/O点数和I/O点的类型(数字量、模拟量等)统计,列出清单。适当进行内存容量的估计,确定适当的留有余量而不浪费资源的机型(小、中、大形机器)。并且结合市场情况,考察PLC生产厂家的产品及其售后服务、技术支持、网络通信等综合情况,选定价格性能比较好的PLC机型。
目前市场上的PLC产品众多,国外知名品牌有德国的SIEMENS;日本的 OMRON、MITSUBISHI、FUJI、Panasonic;美国的GE;韩国的LG等。国产品牌有研华、研祥、合力时等。近几年,PLC产品的价格有较大的下降,其性价比越来越高。PLC 的选型应从以下几个方面入手。
2.1 确定PLC 控制系统的规模
依据工厂生产工艺流程和复杂程度确定系统规模的大小。可分为大、中、小三种规模。
小规模PLC控制系统:单机或者小规模生产过程,控制过程主要是条件、顺序控制,以开关量为主,并且I/O点数小于128 点。一般选用微型PLC,如SIEMENS S7-200等。
中等规模PLC控制系统:生产过程是复杂逻辑控制和闭环控制,I/O点数在128——512 点之间。应该选用具有模拟量控制、PID控制等功能的PLC,如SIEMENS S7-300等。
大规模PLC控制系统:生产过程是大规模过程控制、DCS系统和工厂自动化网络控制,I/O点数在512点以上。应该选用具有通信联网、智能控制、数据库、中断控制、函数运算的高档PLC,如SIEMENS S7-400等, 再和工业现场总线结合实现工厂工业网络的通讯和控制。
2.2 确定PLC I/O 点的类型
根据生产工艺要求,分析被控对象的复杂程度,进行I/O点数和I/O点的类型(数字量、模拟量等)统计,列出清单。适当进行内存容量的估计,确定适当的留有软硬件资源余量而不浪费资源的机型(小、中、大型机器)。
根据PLC输出端所带的负载是直流型还是交流型,是大电流还是小电流,以及PLC输出点动作的频率等,从而确定输出端采用继电器输出,还是晶体管输出,或品闸管输出。不同的负载选用不同的输出方式,对系统的稳定运行是很重要的。
电磁阀的开闭、大电感负载、动作频率低的设备,PLC输出端采用继电器输出或者固态继电器输出;各种指示灯、变频器/数字直流调速器的启动/停止应采用晶体管输出。
2.3 确定PLC编程工具
(1) 一般的手持编程器编程。 手持编程器只能用商家规定语句表中的语句表(STL)编程。这种方式效率低,但对于系统容量小、用量小的产品比较适宜,具有体积小、价格低、易于现场调试等优点。 这主要用于微型PLC的编程。
(2) 图形编程器编程。图形编程器采用梯形图(LAD)编程,方便直观,一般的电气人员短期内就可应用自如,但该编程器价格较高,主要用于微型PLC和中档PLC。
(3) 计算机加PLC软件包编程 。这种方式是效率最高的一种方式,但大部分公司的PLC 开发软件包价格昂贵,并且该方式不易于现场调试,主要用于中高档PLC系统的硬件组态和软件编程。
3 PLC控制系统的设计
PLC 控制系统设计包括硬件设计和软件设计。
3.1 PLC控制系统的硬件设计
硬件设计是PLC控制系统的至关重要的一个环节,这关系着PLC控制系统运行的可靠性、安全性、稳定性。主要包括输入和输出电路两部分。
(1) PLC控制系统的输入电路设计。PLC供电电源一般为AC85—240V,适应电源范围较宽,但为了抗干扰,应加装电源净化元件(如电源滤波器、1:1隔离变压器等);隔离变压器也可以采用双隔离技术,即变压器的初、次级线圈屏蔽层与初级电气中性点接大地,次级线圈屏蔽层接PLC 输入电路的地,以减小高低频脉冲干扰。
PLC输入电路电源一般应采用DC 24V, 同时其带负载时要注意容量,并作好防短路措施,这对系统供电安全和PLC安全至关重要,因为该电源的过载或短路都将影响PLC的运行,一般选用电源的容量为输入电路功率的两倍,PLC输入电路电源支路加装适宜的熔丝,防止短路。
(2) PLC控制系统的输出电路设计。依据生产工艺要求,各种指示灯、变频器/数字直流调速器的启动停止应采用晶体管输出,它适应于高频动作,并且响应时间短;如果PLC 系统输出频率为每分钟6 次以下,应首选继电器输出,采用这种方法,输出电路的设计简单,抗干扰和带负载能力强。
如果PLC输出带电磁线圈等感性负载,负载断电时会对PLC的输出造成浪涌电流的冲击,为此,对直流感性负载应在其旁边并接续流二极管,对交流感性负载应并接浪涌吸收电路,可有效保护PLC。
当PLC扫描频率为10次/min 以下时,既可以采用继电器输出方式,也可以采用PLC输出驱动中间继电器或者固态继电器(SSR),再驱动负载。
对于两个重要输出量,不仅在PLC内部互锁,建议在PLC外部也进行硬件上的互锁,以加强PLC系统运行的安全性、可靠性。
对于常见的AC220V交流开关类负载,例如交流接触器、电磁阀等,应该通过DC24V微小型中间继电器驱动,避免PLC的DO接点直接驱动,尽管PLC手册标称具有AC220V交流开关类负载驱动能力。
(3) PLC控制系统的抗干扰设计。随着工业自动化技术的日新月异的发展,晶闸管可控整流和变频调速装置使用日益广泛,这带来了交流电网的污染,也给控制系统带来了许多干扰问题,防干扰是PLC控制系统设计时必须考虑的问题。一般采用以下几种方式:
隔离:由于电网中的高频干扰主要是原副边绕组之间的分布电容耦合而成,所以建议采用1:1超隔离变压器,并将中性点经电容接地。
屏蔽:一般采用金属外壳屏蔽,将PLC系统内置于金属柜之内。金属柜外壳可靠接地,能起到良好的静电、磁场屏蔽作用,防止空间辐射干扰。
布线:强电动力线路、弱电信号线分开走线,并且要有一定的间隔;模拟信号传输线采用双绞线屏蔽电缆。
3.2 PLC 控制系统的软件设计
在进行硬件设计的同时可以着手软件的设计工作。软件设计的主要任务是根据控制要求将工艺流程图转换为梯形图,这是PLC应用的最关键的问题,程序的编写是软件设计的具体表现。在控制工程的应用中,良好的软件设计思想是关键,优秀的软件设计便于工程技术人员理解掌握、调试系统与日常系统维护。
(1) PLC控制系统的程序设计思想。由于生产过程控制要求的复杂程度不同,可将程序按结构形式分为基本程序和模块化程序。
基本程序:既可以作为独立程序控制简单的生产工艺过程,也可以作为组合模块结构中的单元程序;依据计算机程序的设计思想,基本程序的结构方式只有三种:顺序结构、条件分支结构和循环结构。
模块化程序:把一个总的控制目标程序分成多个具有明确子任务的程序模块,分别编写和调试,最后组合成一个完成总任务的完整程序。这种方法叫做模块化程序设计。我们建议经常采用这种程序设计思想,因为各模块具有相对独立性,相互连接关系简单,程序易于调试修改。特别是用于复杂控制要求的生产过程。
(2) PLC控制系统的程序设计要点。PLC控制系统I/O分配,依据生产流水线从前至后,I/O点数由小到大;尽可能把一个系统、设备或部件的I/O信号集中编址,以利于维护。定时器、计数器要统一编号,不可重复使用同一编号,以确保PLC工作运行的可靠性。
程序中大量使用的内部继电器或者中间标志位(不是I/O位),也要统一编号,进行分配。
在地址分配完成后,应列出I/O分配表和内部继电器或者中间标志位分配表。
彼此有关的输出器件,如电机的正/反转等,其输出应连续安排,如Q2.0/Q2.1等。
(3) PLC控制系统编程技巧。PLC程序设计的原则是逻辑关系简单明了,易于编程输入,少占内存,减少扫描时间,这是PLC 编程必须遵循的原则。下面介绍几点技巧。
PLC各种触点可以多次重复使用,无需用复杂的程序来减少触点使用次数。
同一个继电器线圈在同一个程序中使用两次称为双线圈输出,双线圈输出容易引起误动作,在程序中尽量要避免线圈重复使用。如果必须是双线圈输出,可以采用置位和复位操作(以S7-300为例如SQ4.0或者 RQ4.0)。
如果要使PLC多个输出为固定值 1 (常闭),可以采用字传送指令完成,例如 Q2.0、Q2.3、Q2.5、Q2.7同时都为1,可以使用一条指令将十六进制的数据0A9H直接传送QW2即可。
对于非重要设备,可以通过硬件上多个触点串联后再接入PLC输入端,或者通过PLC编程来减少I/O点数,节约资源。例如:我们使用一个按钮来控制设备的启动/停止,就可以采用二分频来实现。
模块化编程思想的应用:我们可以把正反自锁互锁转程序封装成为一个模块,正反转点动封装成为一个模块,在PLC程序中我们可以重复调用该模块,不但减少编程量,而且减少内存占用量,有利于大型PLC 程序的编制。
4 PLC控制系统程序的调试
PLC控制系统程序的调试一般包括I/O端子测试和系统调试两部分内容,良好的调试步骤有利于加速总装调试的过程。
4.1 I/O端子测试
用手动开关暂时代替现场输入信号,以手动方式逐一对PLC输入端子进行检查、验证,PLC输入端子的指示灯点亮,表示正常;反之,应检查接线或者是I/O点坏。
我们可以编写一个小程序,在输出电源良好的情况下,检查所有PLC输出端子指示灯是否全亮。PLC输入端子的指示灯点亮,表示正常。反之,应检查接线或者是I/O点坏。
4.2 系统调试
系统调试应首先按控制要求将电源、外部电路与输入输出端子连接好,然后装载程序于PLC中,运行PLC进行调试。将PLC与现场设备连接。在正式调试前全面检查整个PLC控制系统,包括电源、接地线、设备连接线、I/O连线等。在保证整个硬件连接正确无误的情况下即可送电。
把PLC控制单元的工作方式设置为“RUN”开始运行。反复调试可能出现的各种问题。在调试过程中也可以根据实际需求对硬件作适当以配合软件的调试。应保持足够长的运行时间使问题充分暴露并加以纠正。调试中多数是控制程序问题。一般分以下几步进行:
(1) 对每一个现场信号和控制量做单独测试;
(2) 检查硬件/修改程序;
(3) 对现场信号和控制量做综合测试;
(4) 带设备调试;
(5) 调试结束。
5 结束语
PLC控制系统的设计是一个步骤有序的系统工程,要想做到熟练自如,需要反复设计和实践。本文是PLC控制系统的设计和实践经验的总结,在实际应用中具有良好的效果
系统启动后再开始执行循环程序,如果在启动初期,系统各控制回路同时有很多的报警消息需要上传到OS,势必导致此时的CPU负荷偏大。因此,在功能块的代码中考虑了报警抑制部分。此代码在系统启动初期(或该功能块被调用的前几个循环中)抑制该回路的报警输出。完成了Alarm_8p功能块的组态和报警抑制代码的编写之后,还需要完成该功能块的报警组态。在报警组态对话框中,定义了功能块的报警类型、优先级、区域、来源等特性。特别是利用功能块相关报警定义的报警属性可以应用于该功能块类型的所有实例。如图5所示,定义了MOTOR_NR功能块的3条报警消息的消息文本,通配符$$BlockComment$$代表功能块实例中Comment字段中组态的内容,因而可以根据不同的块实例自动生成对应的报警消息,而不用逐条组态,该功能对于组态具有大量相同回路流程的报警非常方便。
3.2.OS中的监控图标(BlockIcon)和面板(Faceplate)
功能库中每一种在OS上需要操作、监控的功能块都会对应有自己的监控图标BlockIcon和相应的面板Faceplate。这些BlockIcon和Faceplate被存储在项目的相应文件中。当进行OS编译时,Create/UpdabbbockIcon选项后,系统就会根据功能块的块名自动从这些图库中获取相应的BlockIcon放入到对应的图形页(Picture)中,并连接好相应的变量和配套的面板。我们开发了较为丰富的BlockIcon库,而且根据不同现场的需要针对同一个功能块还对应了多个BlockIcon,用于不同的显示风格。如图6所示MOTOR_NR块就对应了6种BlockIcon。属性关键字为A、B、C的代表大图标,Am、Bm、Cm为小图标,A代表:灰色-电机停止;绿色-电机运行;红色-电机报警,B代表:红色-电机停止;绿色-电机运行;黄色-电机报警,C代表:绿色-电机停止;红色-电机运行;黄色-电机报警。具体的功能块实例对应的BlockIcon则可以通过指定属性关键字的方式组态。
在一个项目中,同类型的功能块实例在画面中都会生成与之对应的BlockIcon实例,但却只拥有一套Faceplate模板。在监控画面下,点击某个功能块实例对应的BlockIcon时,系统会执行相应的脚本从对应的BlockIcon实例中获取该功能块实例的相关属性,并基于通用的Faceplate模板创建相应的Faceplate实例进行监控。由于同一个功能块类型只对应一套Faceplate,在具有大量相同回路的流程中就省去了大量弹出子画面的重复、单调的制作。如图7所示MOTOR_NR块主要有3个可以切换的面板:
操作面板-用于电机各状态显示、设备诊断和常规操作(带有操作记录功能);
设定面板-用于设置某些重要参数(通常带有权限);
报警面板-用于显示和处理于本电机回路有关的报警。
3.3.其它功能
除上述功能外还开发了如下功能:功能块的在线帮助功能:与系统提供的功能块类似,用户自定义功能库同样可以通过选择对应功能块并点击F1键的方式自动聚焦到该功能块的帮助主题上,使用起来方便灵活。所需要做的是为功能块创建帮助文件(*.hlp)和目录文件(*.cnt)并制作注册表文件。
功能块的发布:创建了用户自定义功能库后,需要将库发布方可被其它工程师使用。发布后的功能库可以打包成一个可执行文件安装在其它机器中,同系统提供的功能库一样被其它工程师使用。所发布功能库的安装文件包含AS功能块、BlockIcon、Faceplate和在线帮助系统。
功能库的更新:由于建立了基于多项目的主数据库,所以主数据库中的功能库修改后可以通过清晰、明确的更新向导更新每个子项目中的功能块实例,这样便于统一维护程序库,集中更新,保证了多项目数据的一致性。而BlockIcon和Faceplate的更新则可通过将修改后的文件拷贝到相应目录下并编译OS来实现。
4.项目运行
承钢5号2500m3高炉项目于2006年12月5日出铁投产成功。投产后,系统运行稳定可靠,特别是热备控制器性能较好,象矿槽系统、炉顶系统等程序量较大的部分在热备条件下,CPU的扫描周期仍在40毫秒左右。由于合理的规划了工程结构,特别是开发了基于多项目的符合生产工艺的用户自定义功能库,该工程从编程、调试到投产只用了两个来月的时间。对同等规模的高炉来说,可节省十几个人月的人工时。这也正是PCS7系统标准化工作的成效在承钢高炉工程中得到了初步的体现和验证。
5.应用体会
工程中借助PCS7平台,有利于我们编制出更为标准化、集成化的用户自定义功能库。该软件从形式上将编程软件、软件、网络组态软件集中在同一平台,从功能上将控制器功能块的各种信息通过编译OS(compileOS)的方式上传到OS的WinCC项目中,并自动生成变量标签(Tags)、调用动态图标(blockicons)及其对应的弹出面板(faceplate)、生成报警消息(Message)、趋势(Trend)等,甚至连静态、动态的文本信息也可以直接由AS块编译后在OS中生成,这样OS部分的工作非常简便,大部分的工作都集中AS上,便于统一维护程序库,集中更新,保证多项目数据的一致性,省去了原先AS、OS两部分握手的大量工作。目前各大PLC系统生产商都相继推出了类似功能,例如Schneider公司的UAG软件,Rockwell公司的Logixview软件等,但与PCS7平台提供的有关软件功能相比,上述软件基本是在PLC编程软件和HMI组态软件之外添加了第三套软件,用于完成PLC与HMI的握手。这样就增加了在不同软件界面间的导入、导出或是派生的过程,可操作性较为复杂,程序层次与画面结构的联系得不到较好的体现。
用户自定义功能库中的AS功能块、OS中的blockicon和faceplate是相互联系紧密的整体,所以在编写程序的前期,对功能库中的各部分做一个全面的规划和较为细致的设计是非常必要的。比如在设计AS侧的BlockType时,我们较为充分的考虑了操作员需要监控的输入、输出及输入输出接口,以及所需的操作方式等,并结合系统属性(OCM相关)来对各个端口进行定义,以便这些端口可以在OS上正常、灵活的显示与操作。对于相关参数的选择我们考虑了如下方面:
为了获得设备清晰的状态信息,操作员需要监控什么类型的数据;用何种方式显示这些变量;
哪些变量可以被操作员控制;
操作时需要哪级操作权限;
有没有与过程变量相关的权限连锁;
各个变量将在什么视图窗口中显示;
使用PCS7中的用户自定义功能库编程设备类型规整且同类设备众多的项目确实非常方便,但对于一些规模较小、设备类型较杂、接口较多的项目也存在一些不灵活方便的地方。比如PCS7中不建议直接在流程画面中使用WinCC提供的控件来对过程变量进行操作,象按钮、I/O域等。使用此方法系统将不会进行授权确认,而且不会为这些操作产生操作员记录(OperatorList)。而在实际的工程项目中会经常出现增加一些位操作的情况,对于这些操作目前我们正在摸索如何能够产生操作记录的方法,同时也希望PCS7软件能够不断完善,提供给我们更为灵活、简便的工具来解决这些问题。