首页 > 新闻动态
新闻动态
- 矿工辛苦工作一天后必定希望尽快的洗澡休息,然而, 由于旧的系统是采用在锅炉房对水温和压力进行控制的,由于传输管路较长等原因的影响,控制的效果不够理想,水温会出现波动,人多人少时候淋浴头出水差别很大,水压不温度,影响职工心情,也间接影响了煤矿的安全生产。因此,对该矿的浴池给水系统进行改造非常必要。本系统仅在浴池端增加了控制系统,使得问题得到很好地解决。 (查看全文) 免责声明:本文仅代表作者个人观点,与automavin工控网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。 [查看全文]
- 1.项目简介 随着城市现代化建设的发展,环境保护、生活用水的要求不断提高。以前水厂的人工、半自动水厂控制系统已经远远不能满足现代化生活和企业运作的需要,因此先进的计算机控制技术应运而生。通过先进的自动控制系统,可实现对水厂制水、污水处理、水软化、送配水等工程运作的监视和控制。江西省新余市第四水厂于2008年9月建成通水,第一期规模为15万吨/天。第四水厂采用图1所示的工艺流程,主要包括取水泵房、加矾加氯间、V型滤池站和送水泵房等控制站。该水厂实现了自动控制和系统主要参数的在线监测;同时为节约水资源,保护水体不受污染,对滤池反冲洗水进行回收,二期拟对污泥进行浓缩处理。 2.系统构成 全厂设中控室及取水泵房、加矾加氯间、V型滤池站和送水泵房等4个PLC子站,考虑到系统尽可能分散的原则,在滤池单池设有PLC控制台,具体见下图。 全厂计算机监控系统网络结构 各PLC站与中控室之间采用工业以太网通讯联络。中控室由2台分别用于生产管理与监控的DELL计算机及2台Epson激光打印机组成。计算机采用Windows XP操作系统。其中监控计算机采用易控(INSPEC)组态软件开发的应用软件,可显示14个包括涉及PLC控制的机电、加矾加氯设备与滤池等在内的模拟画面,可对系统的所有设备进行远程操作和控制,并具备显示工艺布置图、实时动态参数、设备的工作状态及实时/历史报警信号、在线仪表的实时/历史趋势曲线、水泵运行时间等功能,同时可进行离线/在线编程及设定参数的修改,编制和打印生产与管理报表。管理计算机采用Excel软件,用于采集与存储监控计算机检测的主要生产数据,以便用于管理。 依据PLC I/O模块,涉及PLC自控的设备,均可通过在机旁控制箱手/自动转换开关、在PLC站操作面板XBT上设置来实现机旁控制箱、PLC站XBT、中控室监控计算机三地控制。 PLC站XBT上均能够显示与设置该站现场操作所涉及到的所有自控设备、仪表等运行参数及上下限报警值,同时这些参数均可通过网络线传输到中控室监控计算机,由它来进行控制。 取水泵房站 该站主要监控3台水泵机组的运行工况及相关的参数,同时在取水泵房吸水井中装有水位计,通过PLC可随时显示白云水库水位状况。 取水泵房水泵机组开/停由清水池水位情况、送水泵的运行情况、用水高峰时段以及送水管网压力等因素决定。水泵机组只能在没有配电线路故障、机组设备完好、出水电动阀门完好并且处于关到位的状态才可依据程序自动开启。 加矾加氯站 从取水泵房过来的原水进入位于净水厂的流量计表井,在此通过在线仪表检测原水的流量、浊度、pH值、温度等,并将其转换成4~20mA DC信号输入PLC系统为加矾加氯系统提供控制参数。 加矾系统采用2套计量泵(配三菱变频调速器)投加,变频器运行频率由流量信号控制,控制流量为取水流量与回收流量之和,计量泵行程由流动电流仪(SCD)值控制。2 套计量泵1用1备,当正在使用的计量泵出现故障,PLC系统会自动切换。2套投矾系统的矾液取自3个贮矾池,每个贮矾池均装有液位计,可随时检测矾液高度,同时通过装在贮矾池的搅拌机定时搅拌,可防止药液沉淀影响浓度。3个贮矾池出矾管线上均装有电动球阀,通过手/自动转换开关,可选择机旁控制箱操作或中控室监控计算机人工操作,也可根据3个贮矾池液位PLC系统自动选择,切换工作池。 加氯系统采用真空加氯机,三点投加,滤前滤后出水各1台。滤前按比例流量投加,滤后采用流量与余氯信号双因子控制投加。加氯机所需的流量信号由PLC系统输入,余氯信号由余氯分析仪在线检测。滤前加氯机投加的控制流量取自取水流量与回收流量之和,再减去反应沉淀池排泥用水量。滤后加氯机的控制流量为滤前加氯机的控制流量减去滤池反冲用水量。出水加氯机的控制流量为出厂水余氯信号。氯库装有电子秤和自动切换单元,同时装有泄漏报警仪,通过检测泄漏报警信号经PLC系统可自动启动氯气回收装置,并且PLC系统会自动关闭所有加氯系统等待故障处理。 V型滤池站 该站主要监控5格V型滤池的过滤、反冲洗过程及相关参数。每个滤池均装有一个水位计和一个差压计,用来检测滤池的液位和滤池的阻塞情况。滤池的清水阀为无级可调比例阀(开启度为0~100%),根据滤池的液位、阻塞值(即水头损失值)、清水阀现有开度的反馈信号通过PLC系统自动调整阀门的开度,从而确保滤池恒水位过滤。滤池反冲洗的控制方式有3 种:①强制反冲;②根据阻塞值PLC系统自动反冲;③根据过滤时间PLC系统自动反冲。优先原则是:第①种方式最为优先,第②种方式次之,最后为第③种。 滤池的操作方式有3种:①单池PLC控制台操作,每格滤池单独设有PLC控制台,每个控制台装有5个阀门(进水阀、清水阀、水冲阀、气冲阀、排污阀)控制按键与1个显示面板,可显示5个阀门、②公共冲洗泵PLC站XBT操作;③中控室监控计算机操作。 公共冲洗泵站 该站主要监控3台鼓风机、3台冲洗泵、2台空压机开/停、故障信号以及滤池水位、阻塞值等参数及反应沉淀池36个气动排泥阀的状态。 送水泵房站 该站主要监控1台变频水泵与1台大水泵及2台小水泵运行工况及相关的参数,同时在出厂管线上装有压力表、流量计、浊度计、余氯分析仪、pH计等仪器仪表,用于在线检测出厂水的生产与卫生指标。 送水泵房水泵机组开/停由管网压力等因素决定。送水泵运行必须要求配电系统、机组设备等性能完好,且吸水井达到一定水位才能正常实现。 3.系统特点 ·画面监控功能丰富,所有需要监测的各种参数的实时和历史曲线图,各种运行和管理报表,水厂的工艺流程图和动画等显示。 ·实现快速数据采集,并能对这些数据进行处理和分析,处理后的数据记录到历史数据库,以备系统调用和随时查询。 ·具有完善的报警和安全访问功能,保证系统的安全。 ·系统可扩展性好,为与二期污泥处理工艺、与企业的生产工艺调度、生产水质监控等密切结合的自动信息系统提供接口。 4.软件应用 中控室监控计算机采用Windows XP操作系统,与各PLC站之间通过以太网交换机,用工业以太网通信联络实现资源共享,各PLC站之间通过工业以太网通讯联络,除了对本站设备进行操作显示外,还可了解其他站的情况。 上位监控系统用易控(INSPEC)组态软件开发,该监控系统人机界面精美,能直观、生动呈现整个水生产过程中的工艺,动画形式多样、直观、逼真,且与各种型号的PLC通讯简单。该中控室监控计算机监控系统完成的功能主要有: ·远程控制各PLC现场子站,实时接收PLC采集的各种数据,建立检测参数数据库;处理并显示各种数据。 ·监测整个生产工艺流程和各细部的动态模拟图形。该系统实现了水厂整体工艺流程、各主要工艺设备运行状态、过程控制及各生产环节生产数据的实时采集与现实。主要流程画面有:取水泵房流程图、加矾间流程图、加氯间流程、反应沉淀池流程、V型滤池流程、公共冲洗泵房流程、送水泵房流程、10kV一次系统、低压系统等画面。实现的工艺生产设备监控功能有:所有被监控设备的运行状态、启停控制、设备与设备之间的连锁控制、工艺参数的设定,以及设备温度、电流、压力、液位、流量等参数的显示、报警、记录、趋势及累积量计算等。 ·从检测项目中,按需要显示历史记录和趋势分析曲线。能够了解生产参数的动态情况,便于生产调度管理。 ·重要设备主要参数的工况及事故报警、打印制表。包括工艺数据报警、设备故障报警、系统故障报警,并根据不同的报警信息提供不同的报警画面。 ·编制和打印生产日、月、年统计报表。 ·对各种数据进行实时存储。 监控系统总图 5.运行结果 新余第四水厂成功运行已8个月,实现了水厂全自动化控制,提高了水质处理的效率,减轻了运行人员的负担,提高了水厂运行的安全和可靠性。使用易控开发的监控系统具有运行稳定、操作界面直观友好、,报警、报表、数据记录、趋势显示分析和安全管理等功能完善的特点,完全实现了规划的功能,系统操作和维护都十分简便,为水厂的安全运行提供了可靠的保障,并且利用易控软件良好的开放性为系统的二期功能集成提供了很好的接口。 免责声明:本文仅代表作者个人观点,与automavin工控网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。 [查看全文]
- 1.引 言 宁波地处江南水乡,但季节性缺水、水资源空间分布不均等问题依然存在。自20世纪90年代初以来,由国务院有关部委的专家们组成的考评组提供的一系列数字表明,宁波已列入全国性的缺水城市之一。随着宁波工业经济的迅速发展和城市化水平的不断提高,城市对水的需求逐年增大,宁波迫切需要新水源来缓解缺水状况。为缓解水资源供需矛盾,坚持“开源”与“节流”并重,同时大力推进污水资源再生利用(中水)工作就显得很有必要了。 2.中水用途 中水指城市污水经处理后达到一定的水质标准,可在一定范围内重复使用的非饮用的杂用水。2002年以来,国家陆续颁布了《城市污水再生利用 分类标准》、《城市污水再生利用 城市杂用水水质标准》、《城市污水再生利用 景观环境用水水质标准》、《污水再生利用工程设汁规范》、《建筑中水设计规范》等技术标准,规范了污水再生利用设计工作,也为城市污水再生利用工程设计提供了依据。中水回用就是人们将经一定工艺处理后的中水,回用于对水质要求不高的农牧业灌溉、市 政园林绿化、车辆冲洗、建筑内部冲厕、景观用水及工业用水等等方面。根据宁波的实际情况中水主要用于环境用水、工业用水和城市杂用水等三类。 3.市三区中水回用现状及处理工艺 相比较北京、大连、青岛等北方城市应用中水程度而言,我市的中水回用尚处于起步阶段,规模较小。市城市排水有限公司利用污水处理厂二级尾水经过深度处理即为中水的有利条件开展了一系列中水开发和运营工作。 2006年,OMRON CS1 系列应用于江东北区污水处理厂中水工程(2万m3/日),由于受用地的限制,中水工程采用“混凝-过滤-紫外消毒”工艺。设计中水进水水质接近GB18918-2002一级B标准,在水泵提升后投加PAC混凝剂,使进水絮凝,产生絮状物。水流进入本工程特色构筑物-D型滤池,D型滤池是一种实用、新型、高效的滤池,采用了可编程序控制器和工业电脑(PLC+IPC)组成的实时多任务集散型控制系统,对滤池的过滤和反冲洗及恒水位实行控制。 (1)过滤控制 笔者在滤池的相应部位安装了水位传感仪、水头损失传感器。滤池的过滤就是通过它们测出滤池的水位和水头损失,将水位值及滤后水阀门的开启度送入每一个PLC柜中安装的一块专用模块,调整模块就可以调整阀门的开启度,使滤池达到进出水平衡,从而实现恒水位、恒滤速的自动过滤。 (2)反冲洗控制 一组滤池的反冲洗由一台公用的PLC来控制。当过滤达到过滤周期或滤池压差(水头)设定值时,滤池提出反冲洗请求,PLC根据滤池的优先秩序,组成一个请求反冲洗队列。一旦响应某格滤池的请求,PLC实施反冲洗的整个过程,在一组滤板中,不允许两个滤池同时进行反冲洗,当一只滤池正在反冲洗时,其它滤池请求反冲洗的信号则存入公用的PLC中,然后再按存储秩序,对滤池依次进行反冲洗。当滤池反冲洗时,公用PLC的控制过程是:①关闭待滤水进水阀,当滤池水位下降到 洗砂排水槽顶时,关闭滤后水控制阀,打开反冲洗排水阀;②启动鼓风机,5秒钟后,打开滤池反冲洗气阀,对滤池进行1分钟气预冲;③打开反冲洗水阀,启动反冲洗水泵,进行7分钟的气水同时反冲洗;④关闭反冲洗气阀,5秒钟后,停鼓风机,打开空气隔膜阀排气,进行5分钟清水反冲漂洗后,停反冲水泵。5秒钟后,关闭水反冲洗阀,然后关闭反冲洗排水阀,打开待滤水进水阀,滤池恢复过滤。整个反冲洗过程历时约25分钟。另外,PLC还能控制滤池的开启个数,它根据滤池进水流量确定滤池的开启个数,按先停先开,先开先停的原则确定某格滤池的开、停。 3.系统应用效果 具备传统快滤池的优点,设计滤速一般可达20~40m/h,是一般V型滤池的3~4倍。由于考虑到未设沉淀,设计流速为16m/h,间接起到部分沉淀作用。采用德安专利产品DA863纤维滤料,絮状物被滤料截留,清水流入紫外消毒池。经紫外消毒后出水达到设计标准,用于河道景观用水。考虑到此工艺是对污水中悬浮物(SS)的去除,同时去除其携带的部分有机污染物,是个物理去除过程。这个常规处理工艺对原水浊度、SS的去除效率较高,对TN、氨氮的去除效率很低,在污水厂出水处安装在线COD、NH3-N仪表,接入就近PLC站,当数值超过设计值时,PLC程序会作出相应,控制安装在管道上的阀门向管道内投加漂白粉,使出水达标。接着,在2007年,OMRON PLC CS1系列又在南区污水处理厂的中水回用工程中应用,其处理规模是1万m3/日。以南区污水厂的尾水为中水工程的进水, 进水水质设计为GB18918-2002一级B标准。进水水质标准较高,中水工程采用混凝-过滤-加氯消毒。在进水端投加PAC,在由PLC程序控制执行的四个由高到底不同线速度的搅拌器搅拌下,产生絮状物。在进水泵前端投加PAM,通过水力搅动使絮状物进一步结成絮块,通过泵送水流由下而上逆流通过高效流沙过滤器的石英层,絮块被石英砂截留,出水通过出水管流出。截留物质随砂子经砂子分离器的旋转输送到砂子收集器中,随压缩空气由上方排出,悬浮物经可调堰流出,砂子流入洗砂器中经多次特殊方式的清洗,由提砂泵输送至过滤器顶部重新回到过滤过程中,高效流沙过滤器对浊度、SS去除率很高达90%,对COD、BOD去除率在50%左右。出水进入投加氯的清水池进行消毒,出水将用于景观用水、工业用水及城市杂用水。 4.结束语 总的说来,宁波市中水回用尚处于起步阶段,规模不大,利用范围有待拓宽。北区污水处理厂和南区污水处理厂的中水工程虽建成,但利用率不高。虽然正日益受到政府和公众的重视和关注,但总体进展缓慢。还存在诸多制约因素。下步需要切实做好在中水回用法规、中水规划等方面的工作,出台相应的优惠政策,提高水价,加大对水资源再生利用的宣传,以促进宁波中水事业蓬勃发展。 免责声明:本文仅代表作者个人观点,与automavin工控网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。 [查看全文]
- 1、引言 自来水厂的制水过程是从水源地取水经输水管网至水厂,处理达标后通过配水管网送至用户。惠州市江北水厂是以东江河水为水源的水厂,从取水泵站至水厂约3KM,一期工程设计供水能力为20万吨/日,1999年9月22日正式供水。该厂采用集散测控管理系统,控制方式采用PLC+PC的监控方式,设制一个中心控制主站和四个现场分站,各PLC站之间通过三菱MELSECNET/10网通讯,中心控制室与各计算机之间用三菱通讯模块A1SJ71UC24-R2通讯,现场设备的控制方式分为手动与自动两种控制方式:手动时PLC监测设备的运行状态;自动时PLC监控设备的运行。江北水厂所有的PLC均采用三菱AnS系列,完成了逻辑控制、过程控制、PID等多种控制任务。江北水厂所涉及的变频控制采用三菱变频器,它们与PLC配合达到了最优控制。上位机采用美国Intellution公司的FIX组态软件及国产组态王软件。 2、江北水厂对控制系统的要求 1)、分散性 根据江北水厂工艺的特点,分为取水泵站、投矾车间、投氯车间、反应池、平流滤、滤池、清水池、供水泵站等。由于主体设备过于分散因此需要控制系统设计成几个不同功能的分站,通过网络使各个站之间既独立又关联,互不影响地进行各自的控制任务。 2)、集中监控 为了确保供水水制,操作人员需要在中控室对整个水厂的生产情况了解,并进行集中监控。 3)、可靠性、安全性 水厂的安全、稳定运行直接关系到千家万户,所以从控制系统的结构设计、软硬件产品质量到控制程序编制等各个环节都必须是高可靠性的。 4)、可维护性 系统在系统软件、应用软件和硬件方面具有强大的报警和故障自诊断功能,方便工程师对系统故障进行分析和维护。 5)、可扩展性 系统应采用具有一定标准及应用较为广泛的软硬件产品,并考虑一定的余量,为将来水厂的扩建及系统的变更打下基础。 6)、开放性 开放性是用户对控制系统的普遍需求。随着计算机和网络技术的发展和应用的普及,人们越来越需要过程控制系统与管理信息系统交互信息,从而实现管理与控制一体化。最终达到向管理要效率,向管理要效益。尽管各控制系统生产厂家在现场控制器模块级还不可能完全开放或通用,但必须要求上位机监控系统具有开放性,例如:监控系统应基于微软公司的WindowsNT、2000或9X平台,支持各种规范的协议如OPC、ODBC、ActiveX、DDE等。 3、 控制系统构成 1)、 控制系统硬件 如图所示,江北水厂根据系统不同功能分为五个PLC站,应用三菱MELSECNET/10网组网通讯,通过A1SJ71UC24-R2与计算机通讯。利用电信局帧中继与公司调度室进行数据传输。远程测压点通过无线通讯进行数据传输。根据生产的特点五个PLC站分别为投加分站、平流池分站、滤池分站、反冲分站、主站。所有PLC站均采用三菱AnS系列PLC。 A、投加分站以过程控制为主,利用仪表、变频器进行投氯、投矾的回路控制。仪表输出4-20mA标准信号。 B、排泥车分站以逻辑控制为主,通过PLC发出的指令,指令通过中间继电器及变频器,对行车的电机及泵等设备进行开停、运行频率变化等控制,以达到运行的高度自动化。 C、滤池分站是逻辑控制与过程控制相辅相成,并加入了PID控制。在几个站中滤池分站属于最复杂繁烦,我厂有十组滤池,并且都投入运行,三菱PLC完全能达到控制要求。 D、反冲分站主要是以逻辑控制为主,当PLC接受到滤池站发出的反冲要求指令时,开始按程序顺序地进行控制。 E、主站以逻辑控制为主,其作用主要是加强报警功能,将各分站发生的紧急事故,第一时间通知值班人员。 以上各站中主站CPU选用三菱A2ASCPU-S1(I/O点数1024,存储容量256K),其它各站选用A2ASCPU(I/O点数512,存储容量64K),A/D转换模块选用A1S68AD,D/A转换模块选用A1S68DAI,在网络方面选用了A1SJ71BR11模块组成的同轴电缆总线方式的MELSECNET/10网。此网络的最大优点是当一个站由于电源故障或其它故障而脱网时,这个站将被分离,数据链接继续在有效的站间进行,当故障消除时,它自动返回在线状态,重新开始通信。从江北水厂投产运行至今,除了一次被雷电击坏了网络模块以外,还没有因PLC故障导致生产无法正常运行的事件发生。 由于篇幅有限,这里主要讲一下PID控制,水厂涉及PID控制回路主要是滤池站,在PID控制回路中要给出一个水位的设定值(SV值),通过PID控制单元将过程值(PV值)与设定值(SV值)对比,并执行PID控制算法,送出适合于执行机构特性的命令值(MV值)。执行机构是由模拟输出控制。我厂共有10组滤池,因些组数设为10,设定执行周期为K100(1sec),P值为K1000(10),I值为K2000(200 sec),D值为K0。实际应用中能满足控制要求,达到V型滤池恒水位控制的要求,我厂PID控制可以分为自动和手动两种方式,自动控制即由PLC进行全自动控制,不需要进行人工干预。手动控制即在上位机上给定一个阀位输出值(MV值),通过PLC对阀位进行控制,手动方式时内部设定点不与测量值校准。 编程梯形图软件用三菱公司的GPPW软件,在组网设置方面非常简便,在程序调试方面及在线检测方面已大大优越于老版本的GPPA。 在变频器的使用中,我们接触过两款三菱公司的变频器,FR-A044-2.2K 和FR-E540-0.75K,产品均采用以微处理器核心的数字控制技术,在使用过程中都能达到很好的响应能力,具有频率设定检测、负荷选择、电流输入等,共计100多个参数选择。及对变频器过载、CPU故障、电机再生电压过大等多种故障进行监控。当设备发生故障时,该变频器可及时停止运行,防止事态恶习化,并通过参数单元显示故障代码,提高查找故障的效率。相比FR-E540-0.75K调节参数设置方面没有FR- A044-2.2K方便。使用变频器后感觉最大的优点是:变速区段全由软件设置,具有柔性控制的特点。 系统结构图 2)、控制系统监控组态软件 江水水厂的人机监控系统由位于中控室的两套FIX6.15组态软件及投加室一套组态王软件构成,组态软件与PLC构成了上、下位机关系。通过专用的I/O dirver将二者结合起来,实现数据采集和监控(SCADA)的任务 。组态软件支持第三方应用程序的运行,具有操作简单、管理方便、安全性、维护性、可移植性、稳定性强的特点。我们还利用FIX通过ODBC SQL实现了与调度室数据传输任务,保证了系统的开发性和可扩展性。FIX提供了报警系统生成、显示、存储报警信息等功能,使下位机PLC的事件实时地显示出来。 4、 结束语 本系统在江北水厂已稳定运行近四年多,运行结果表明三菱自动化PLC及变频器与组态软件组成的PLC+PC系统能充分满足对水厂控制系统的要求,对水厂的安全运行、提高供水质量、节能降耗、优化管理等方面起到了至关重要的作用。 免责声明:本文仅代表作者个人观点,与automavin工控网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。 [查看全文]
- 1 引言 城市雨污水首先通过地下管网分区排放到各自泵站,然后由各泵房把污水泵到污水处理厂经过处理最终排入江河。据我了解虽然我国各城市较早的建立了排污系统,但管理也比较落后原始,每个泵站还由人工管理;随着城市的不断扩大,污水池不断相应增加,由于污水池零星分布在整个市区,若按原先管理模式,需要消耗大量资金,管理和控制也非常麻烦,效率极低下,完全不能适应现代城市发展的需要。为了提高管理工作的信息化水平,提高城市污水的处理能力,减少企业人员不断增加带来的沉重负担,提高企业效益,必须从原来的人工管理改造为计算机远程自动化管理,建立网络管理体系是一个必然趋势。 2 系统设计思想 采用分级分布式计算机控制系统,对工艺过程进行集中管理、分散控制。其总体设计思想是:利用电信的虚拟专用网络VPN作为整个系统的通讯网络,做到不管有多少个泵站和多少个水池,距离有多远,所有的控制和看管工作均由PLC和计算机远程自动完成。并且实现了客户端之间的无关性,可实现多客户端操作,使客户端机器协调工作,提高整个排污系统的工作效率。节省大量资金,减少人员编制,提高管理,具有很极大的经济效益和社会效益。同时提供多级容错机制,保证系统能够安全顺畅地运行。 图1泵站网络示意图 3 控制系统简介 本系统由计算机主机,可编程控制器(PLC),液位传感器组成,电能统计电度表组成。系统嵌入进原先的控制系统中,既保留了原先的的控制功能又添加了新的远程自动控制功能和大量的数据存储和分析统计功能。系统可根据操作人员在计算机中设定的参数,在不同水位下自动开停机,也可由操作人员在计算机上直接开停机。每台水泵及格栅机均可通过转换开关选择受计算机自动控制;如果计算机遇到故障还能由PLC里的控制系统完成自动控制各机器功能;或脱离计算机控制,改为原先的控制系统。在计算机自动控制时,系统每天自动转换工作水泵的优先开机顺序以平均各水泵的工作时间。系统的监控界面可供值班人员监控各台泵的工作情况,流量,水位等参数。系统提供数据储存和报表查询,打印功能。 图2 系统方案示意图 4 具体设计与实现 根据工艺流程、控制点及现场设备的安装地理环境,我们采用先进的管理控制技术,系统分为控制层、监控层、管理层三层进行监测和控制。 (1)控制层用可编程控制器作为底层控制中心分别对排污设备、监测点进行控制、监测,采集信息,控制设备运行。 PLC(Programmable Logical Controller)全称为可编程逻辑控制器,简称可编程控制器。它以微型计算机为核心的工业控制装置,它集电控、电仪、电传三电于一体,是现代工业三大支柱之一。由于它的功能强、可靠性高、适应性好以及模块化结构等优点,在工业控制中得到了广泛的应用。把个人计算机连入PLC网络可以向用户提供诸如工艺流程图显示、动态数据画面显示、报表编制、趋势图生成、窗口技术以及生产管理等多种功能,作为底层单元的PLC完成对现场开/关量、模拟输入/输出量的控制处理,而利用微型计算机良好的人机对话界面和数据处理功能,实现对一台或多台PLC进行监控,充分发挥PLC可靠、灵活的控制性能和计算机在管理、监控等方面。 随着计算机技术的发展,PLC不仅能代替传统的继电器实现逻辑控制,而且已发展成为集各种控制、运算、通信为一体的功能强大的控制器。由于其编程简单、修改方便及工作可靠,在工业生产中它的应用也越来越广泛。 (2)监控层在泵房内设控制室,带有视频监控,主要监控整个泵房内格栅机和每台泵的运行状态,各种机柜的电流电压度表与计算机显示是否一致,监控处理过程由PLC的模拟输入模块进行数据采集,并将有关水泵的运行状况及有关信息上传污水处理监控中心,污水处理监控中心则将指令下传至各PLC控制器,由PLC控制现场各仪器及仪表。 (3)管理层主要在污水处理厂远程监控中心完成,所有采集的数据通过虚拟局域网远程通信传输到监控层桌面个人计算机,而桌面个人计算机又通过RS232通信模块发送控制命令给PLC,完成水泵的启动和停止控制。总揽整个系统的运行情况。系统同时还充分考虑了在特殊情况下的现场手动控制以保证排水系统的流畅运行并有效地保护设备。对水泵耗电量用电流、电压、时间来计算。当出现停电情况时,PLC将记忆检测的数据,桌面个人计算机将记忆设置状态。当出现故障时,个人计算机进行报警,同时记忆相应的状态,使其在脱机状态下,整个系统独立运转。在个人计算机端,软件具有状态设置、远程监控、数据存贮、报表打印功能。 实际上整个控制系统可以在任何地点控制如:控制室,办公室均可,整个系统可以非常强劲的工作,采用了很多错误处理。系统的扩展性很强,不管有多少个泵和多少个水池,距离有多远,所有的看管工作均由计算机远程自动完成。系统能记录设备的运行的原始数据,并做出信息处理,给出各种报表和运行曲线图,能实时了解全部系统的运行情况。 系统运行流程图如下: 图3系统运行流程图 5 结论 本文所研究的城市污水进行集中控制系统,主体控制部分采用可编程序控制器、一些传感器和计算机,网络技术租用电信的VPN; 该系统在桂林市经过近两年的现场投入应用表明,稳定可靠,自动化程度高,为桂林市排水公司带来了很大的经济效益,正在往社会推广。 免责声明:本文仅代表作者个人观点,与automavin工控网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。 [查看全文]
- 1.引言 天津石化烯烃部污水处理装置原来采用的是西门子S5-115U,该套污水装置从1994年投入生产,至今该套系统已经连续运行十多年,按照西门子公司提供的产品元件更换周期,大部分元件(如:I/O卡,通讯卡等)均已经超过使用寿命,而且部分元件已出现明显老化现象,由于PLC故障引发的生产事故近年不断增加,有时会给环境带来一定的影响;另外原污水控制系统有部分余量,但是这些年来随着一些技改技措,增加了许多监视、控制点,原富余点已经基本利用上,再有新的改造或增加监视控制点已基本没有位置,这样为污水装置今后技改技措的发展带来一定的难度。还有由于该型号产品已经淘汰,备件产量较少,价钱比较高且采购周期长。 前段时间操作站与PLC通讯的通讯卡出现故障,不能通讯,加之工控机的硬盘也发生故障,工艺人员只能到现场手动操作控制现场的工况,故决定马上进行升级改造该套控制系统。经过综合考虑决定控制系统采用西门子S7-400,监控系统采用西门子WINCC监控软件,使操作安全、便捷。 2.控制系统硬件配置方案 由于PLC具有通用性强、使用方便、适应面广、可靠性高、抗干扰能力强、编程简单等特点。它采用可编程序的存贮器,用来在其内部存贮执行逻辑运算、顺序控制、定时、计数和算术运算等操作的指令,并通过数字的、模拟的输入和输出,控制各种类型的机械或生产过程。可编程序控制器及其有关设备,都应按易于与工业控制系统形成一个整体,易于扩充其功能的原则设计。采用以S7-400为核心的控制系统使系统更加安全、可靠而且易操作、易管理、易维护,可以进行优化控制和先进控制。另外从价格因素考虑,改造用的的PLC控制系统可以利旧使用污水车间原来限制下来的一套控制系统,不用从新购置S7-400的硬件设备,大大节省了资金,而且日后维护、检修的费用都较低。 经过对该套装置的控制点数统计以及对复杂回路、联锁回路的分析决定,改造后系统由一个主机架(CPU机架)和扩展机架构成, 其中数字量输入模板为6ES7 421-1BL00-0AA0,DI32*24VDC, 数字量输出模板为6ES7 422-1BL00-0AA0,DO32*24VDC/0.5A, 模拟量输入模板为6ES7 431-1BL00-0AB0,AO8*13Bit; 模拟量输出模板为6ES7 432-1HF00-0AA0,AO8*13Bit; PLC系统供电由一个20A的SIEMENS电源提供,以保证系统良好运行。 系统硬件组态结构如图一、图二、图三: 系统硬件组态结构如图一 系统硬件组态结构如图二 系统硬件组态结构如图三 3.控制系统软件配置方案 本系统在软件上用STEP7 V5.3用于PLC的编程和硬件及网络的组态;控制室上位机采用DELL产品,系统软件采用WINDOWS2000,人机界面采用WINCC完成组态,中空可以完成开、停车及控制的所有操作,上位机CRT显示装置开停车状态、压力、温度、液位、等参数,显示报警状态、历史趋势图、调节阀开关状态,并具有报表打印功能。 4.控制系统网络结构及网络协议配置 本系统S7400主机架和其它机架ET200M以及触屏采用PROFIBUS-DP总线连接。PLC与上位机的通讯采用MPI网,通过主机架上的网卡连接,便于以后的网络扩展。CPU上的MPI(多点接口)用于和编程器以及其他的CPU通讯。 控制系统S7-400网络组态如图四所示: 图四 控制系统S7-400网络组态图 5.此次改造的难点 软件上需要将S5-115U程序转换为S7-400的程序,一开始尝试用软件的方式将S5-115U程序转换为S7-400的程序,但转换出来的程序S7-400不能识别,没有成功,软件编写只能重新自己编写,地址需要重新定义,另外工期特别紧,只给了半个月的工期,因此工作量比较繁重。 10、综合故障监控系统 因其是全场的污水处理装置是核心生产设备,它的安全运行至关重要,其运行参数如压力、温度、液位、分析参数等必须严格监控,否则会对环境造成影响,因此有必要设置综合故障监控系统。 需要指出是,上述控制系统不是孤立的,它们应该相互联系起来,才能实现整个系统的协调控制。为了使该系统安全可靠,主要选用AB、SIEMENS和HONEYWELL等国际著名公司的产品作为系统硬件,将所有的监控点和控制回路组态成画面,组成较DCS更灵活、经济,而且速度更快、更安全可靠的控制系统;具备参数监视、历史记录、各控制回路调节、报警联锁、联锁切除、工作点运行状态显示:故障分析提示、与上位机通讯、自诊断(包括线路诊断)以及各种打印功能等。PLC控制和手动控制双重控制系统,即在PLC断电或不能正常工作的情况下,用手动控制系统来操纵主要系统阀门,保证污水的安全运行。 6.系统构成特点 安全可靠,系统机柜内的220V交流电源和24V直流电源都接入UPS电源,外部电源故障断电后可维持40分钟不间断供电,不会对PLC系统供电产生影响。 组态方便,可在线修改。工程师站和操作员站即可进行离线编程组态和流程图修改,也可进行在线编程组态,并采用软连接的方式对组态控制方案进行动态显示和模拟操作。所有组件可在线插拔,在线增减I/O卡件,在线修改控制组态并下装及在线修改流程图并下装。 易于维护性:组态专有功能块可对各个部件进行测试,诊断和维护,一旦卡件损坏,系统检测到以后立即以声光报警形式报警并启动打印机打印设备名称、故障类别及发生时间等。与此同时故障设备也有发光二极管亮灯提示,维护人员可及时处理。 7.结束语 该套控制系统经调试后机组于2008年7月一次开车成功运行至今,S7-400 PLC控制系统运行良好,人机界面直观,流程图美观大方,运行设备的启动条件和停机联锁一目了然,操作简单方便,控制系统合理、可靠获得了操作和管理人员的一致认可,控制系统的硬件配置和软件组态体现了很高的性价比。由上述可见当今高性能的PLC完全可以完成顺序控制、复杂回路控制和高级运算功能,而且方式灵活,安全可靠。有着广泛的应用前景。 免责声明:本文仅代表作者个人观点,与OFweek工控网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。 [查看全文]
- 1 引 言 在当前世界能源紧张,各种能源价格飞涨的形势下,各国都将眼光投向了可再生能源,一则这种能源可再生,取之不尽、用之不竭;再则,可再生能源对环境友好,对地球及人类的生存环境的危害几乎可以忽略不计。在可再生能源中,太阳能无疑是最引人瞩目的,太阳能的开发利用日益广泛,其技术也日益成熟。中国蕴藏着丰富的太阳能资源,太阳能利用前景广阔。然而,找到可靠的太阳能跟踪系统,是聚热型太阳能系统运行效率的基本保证,也是太阳能聚热系统投入运行的重要前提之一。资料表明Omron公司也非常重视太阳能系统的开发。在西班牙马德里郊外的日平均输出功率630-640kwh的太阳能光伏发电系统中,Omron公司的控制部件就在太阳跟踪和电能转换上就发挥了重要的作用。本文也是利用Omron的控制部件,设计出抛物面聚热型太阳能控制系统,投入使用,并起到良好的集热效果,提高了国内太阳能集热器的控制水平。 2 抛物面聚热型太阳能集热器 抛物面聚热型太阳能集热器主要由抛物面型反射镜面、集热管、跟踪机构以及热水系统组成,如图1所示。反射镜面用于将阳光反射并聚焦到集热管上,以积聚热能。反射镜面采用抛物面,材料为镜面铝板,表面有不亲灰的涂层。集热管位于抛物面的焦点位置,用于吸收反射镜面反射的阳光,加热管内循环水。集热管内管为不锈钢金属管,外管为玻璃管,内外管之间为真空,以隔绝传热。阳光穿过外管照射到涂有铝氮-铝光谱选择性涂层的金属管上,以积聚太阳能。跟踪机构控制太阳能集热板跟踪太阳不停的转动,确保集热管始终处在太阳反射光线的焦线位置。热水系统由热水泵,温度传感器,流量开关,压力控制器等组成,将集热管中的热量输送到外部系统,保证热水系统的循环运行。 3 控制系统工作原理 控制系统中的核心控制器根据当地经纬度,当地标准时间以及太阳能集热器的安装方位,计算出太阳集热板的聚焦角度;然后控制器输出脉冲信号,通过脉冲信号放大器控制步进电机SM,步进电机SM带动减速箱和传动齿轮,不断的调整集热板的角度,使集热管始终处于焦点位置,达到最高的集热效率。磁性传感器ZM用来检测步进电机是否转动,防止传动系统故障;XCW,XCC限位开关,用于限制集热板的转动位置。然而仅仅采用太阳角度计算公式来跟踪太阳有一定的局限性,与集热板的安装精度,安装角度的测量有很大的关系。所以采用光辐射传感器,判断聚焦点偏离情况,并做相应的调整,保证聚焦效果。通过太阳角度计算公式粗调,通过光辐射传感器反馈进行精调的闭环控制方案,使集热板能快速,准确的找到聚焦位置,保证太阳能的利用效率。此外控制器控制热水泵和热水温度,保护热水系统的循环运行和安全。 4 控制系统组成 控制系统采用OMRON公司的CJ1-CPU23作为控制器,该CPU内置两路脉冲I/O通道,可单独控制两列集热器,如果太阳能集热板阵列超过两列,则增加位置控制模块CJ1W-NC413,每列集热板单独控制,使各列的操作性强,控制灵活;采用CJ1-ID211和CJ1-OC211开关量输入输出模块,采集限位开关状态,控制热水泵等;CJ1-AD08用于采集光辐射、热水压力模拟量信号;CJ1-DRM21和DRT2-TS04P网络模块采集热水和环境的温度,且方便以后扩展控制系统,NT5Z触摸屛用于设计操作界面,设定参数和显示太阳能集热器的状态。图2示出控制电柜。 5 控制系统软件设计 控制系统软件可分四大功能模块:按太阳规律计算集热板角度、角度转换脉冲信号输出、光辐射自动跟踪、热水系统控制。 5.1 太阳能集热板角度计算 太阳运动规律的计算方法在《solar position algorithms for solar radiation applications》中有详细的说明,按照公式计算出太阳高度角GD和太阳方位角FW(见图3),就确定了某时刻太阳相对地面某一点的位置。根据太阳能集热器的安装方位AF,可以计算出太阳能集热板需要的角度RS。这样抛物面跟踪规律可作为二维问题来处理,只要保证RS计算正确,就可以实时跟踪太阳。 (1) 太阳高度角GD是地球表面上某点和太阳的连线与地平面之间的交角,它随着当地纬度、季节、每日时刻的不同而改变,可根据当地纬度、赤纬角、时角计算。按照下式计算。 GD = arcsin(sin(La)×sin(CW)+cos(La)×cos(CW)×cos(SJ)) La-当地纬度,单位为度。 式中: H - 真太阳时. 当地太阳位于正南向的瞬时为正午; Hs-该地区标准时间。(单位:小时); L、LS-分别为当地的经度和地区标准时间位置的经度; e-时差,单位为分钟;其值可按下式近似计算: e = 229.2×(7.5×10-5+0.001868×cosB-0.032077×sinB-0.014615×cos2B-0.04089×sin2B); B=360×(n-1)/365; (1≤n≤366)分母需要区分平年和闰年。 (2) 太阳方位角(FW)是太阳至地面上某给定点连线在地面上的投影与正南向的夹角。方位角在太阳偏东时为负,偏西时为正。太阳方位角FW可由当地纬度、赤纬角、时角、高度角计算,公式如下: FW =C1×C2×arcsin(sin(SJ)×cos(CW)/cos(GD)) + 180×C3×(1- C1×C2)/2 ;C1 C2 C3常量。 (3) 太阳能集热器角度(RS)是太阳光线与反射镜弦面的交角。可由高度角、方位角、集热器安装角计算,公式: RS= arctan(tan(GD)/cos(FW-AF)); 可见,太阳角度的计算很复杂,并需要采用浮点数计算,如果用梯型图编写将会很困难,且出现问题那很难检查。但如果能使用高级语言编写,纯属的计算就很简单了。此时,采用OMRON功能块的结构化文本(ST)语言编写, 这个问题迎韧而解。集热板角度计算功能块SolarRSCalculate_Real如图4所示。 输入参数为:当地经度,当地纬度,安装方位角,当地时间,当年天数; 计算输出为:集热板角度,真太阳时,高度角,方位角; 数据格式:浮点数; 此外,采用Matlab编写的仿真程序计算(见图5)出来的结果与OMRON PLC功能块计算出来的结果相同,表明集热板角度计算功能块SolarRSCalculate_Real设计正确。 5.2角度转换脉冲信号输出 PLC计算出集热板角度后,需要将角度转换为脉冲信号输出,控制步进电机,使集热器转到指定位置。根据齿轮的降减速比、步进电机和步进电机驱动器特性可以计算出脉冲数。假设集热板需要转动0 .3°(相对角度): 由以上比例可得,转动0.1°需要发出56个脉冲,这样就将角度转换成了所需的脉冲数;然后采用CXP软件中的FB库中\OmronlibPositionControllerNCxNCx021_MoveRelative的功能块控制NC模块输出脉冲(见图6)。 由于集热板的角度采用相对位置控制,在集热板首次运行过程中,需要确定集热板的原点。使PLC能计算出集热板的绝对位置。确定原点时,集热板向顺时针方向偏转,当达到XCW限位开关时,将当前位置作为原点位置,然后采用相对角度的方法控制集热板运行。在步进电机转动的过程中,采用磁性传感器ZM判断步进电机是否转动。如果PLC发出脉冲信号,但磁性传感器ZM没有检测到信号则认为步进电机堵转,并报警提示。 5.3 自动跟踪反馈装置的设计 只有太阳光实时的聚焦在集热管上,才能保证集热板的集热效率。集热板偏离0.6°,太阳反射光就没有聚焦在集热管,所以控制系统的准确性很重要。采用如图7所示的聚焦反馈装置,可以解决这个问题。反馈装置与集热管平行安装,太阳光通过条形挡板后,阴影投在两个辐射仪之间。聚焦准确时,两个光传感器检测的光辐射相同;聚焦偏离,则两个辐射仪之间有差值,通过判断差值,可以判断焦点偏离的方向和偏移量。光辐射仪采用4~20mA信号输出,通过CJ1-AD08模块量输入采集到控制系统,PLC在按太阳规律计算的太阳角度的基础上进行微小的调整,到达控制要求。 5.4 热水系统控制 太阳能热水系统由热水泵,温度传感器,压力传感器等组成,将太阳能集热器产生的热水输送到外部系统,通过DRT2-TS04P温度终端模块采集的热水的出入口温度,可以用来判断集热板的工作效率,同时当热水超温或超压时,自动偏移焦点,对集热板进行保护。NT5Z设计的触摸屛操作界面(见图8),用于显示集热板的运行状态,工况记录和设置控制参数。 6 结束语 整个控制系统设计中,OMRON PLC的浮点数计算,功能块的结构化文本语言,脉冲控制等功能都充分的发挥了作用。特别是集热板增加到多列,只需要增加位置控制模块,插入功能块就可以控制。而且CXP软件自身提供的功能块,使设计师只要认真考虑工艺流程,软硬件之间的接口控制,通过现有的FB库或自己设计的功能块来实现,使程序模块化更强,结构更简单。 OMRON自动化技术在纺织、包装、印刷、机床、生产线等很多领域得到运用,可再生能源作为新型的研究应用领域,也是能源可持续的发展方向,在未来的运用将越来越多,市场也将越来越广阔。所以,我希望OMRON公司也能深入这个领域,不断推出性能越来越优质的产品,来满足新领域的自动化控制需求。 [查看全文]
- 1、PWR(电源)灯亮否?如果不亮,在采用交流电源的框架的电压输入端(98-162VAC或195-252VAC)检查电源电压;对于需要直流电压的框架,测量+24VDC和0VDC端之间的直流电压,如果不是合适的AC或DC电源,则问题发生在SRPLC之外。如AC或DC电源电压正常,但PWR灯不亮,检查保险丝,如必要的话,就更换CPU框架。 2、PWR(电源)灯亮否?如果亮,检查显示出错的代码,对照出错代码表的代码定义,做相应的修正。 3、RUN(运行)灯亮否?如果不亮,检查编程器是不是处于PRG或LOAD位置,或者是不是程序出错。如RUN灯不亮,而编程器并没插上,或者编程器处于RUN方式且没有显示出错的代码,则需要更换CPU模块。 4、BATT(电池)灯亮否?如果亮,则需要更换锂电池。由于BATT灯只是报警信号,即使电池电压过低,程序也可能尚没改变。更换电池以后,检查程序或让PLC试运行。如果程序已有错,在完成系统编程初始化后,将录在磁带上的程序重新装入PLC。 5、在多框架系统中,如果CPU是工作的,可用RUN`继电器来检查其它几个电源的工作。如果RUN继电器未闭合(高阻态),按上面讲的第一步检查AC或DC电源如AC或DC电源正常而继电器是断开的,则需要更换框架。 一般查找故障步骤 其他步骤于用户的逻辑知识有关。下面的一些步骤,实际上只是较普通的,对于您遇到的特定的应用问题,尚修改或调整。查找故障的最好工具就是您的感觉和经验。首先,插上编程器,并将开关打到RUN位置,然后按下列步骤进行。 1、如果PLC停止在某些输出被激励的地方,一般是处于中间状态,则查找引起下一步操作发生的信号(输入,定时器,线川,鼓轮控制器等)。编程器会显示那个信号的ON/OFF状态。 2、如果输入信号,将编程器显示的状态与输入模块的LED指示作比较,结果不一致,则更换输入模块。入发现在扩展框架上有多个模块要更换,那么,在您更换模块之前,应先检查I/O扩展电缆和它的连接情况。 3、如果输入状态与输入模块的LED指示指示一致,就要比较一下发光二极管与输入装置(按钮、限位开关等)的状态。入二者不同,测量一下输入模块,如发现有问题,需要更换I/O装置,现场接线或电源;否则,要更换输入模块。 4、如信号是线川,没有输出或输出与线川的状态不同,就得用编程器检查输出的驱动逻辑,并检查程序清单。检查应按从有到左进行,找出第一个不接通的触点,如没有通的那个是输入,就按第二和第三步检查该输入点,如是线川,就按第四步和第五步检查。要确认使主控继电器步影响逻辑操作。 5、如果信号是定时器,而且停在小于999.9的非零值上,则要更换CPU模块。 6、如果该信号控制一个计数器,首先检查控制复位的逻辑,然后是计数器信号。按上述2到5部进行。 免责声明:本文仅代表作者个人观点,与automavin工控网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。 [查看全文]
- 概述 ----本例说明如何以自由协议实现计算机与S7-200的通信,计算机作为主站,可以实现对PLC从站各寄存器的读/写操作。 ----计算机通过COM口发送指令到PLC的PORT0(或PORT1)口,PLC通过RCV接收指令,然后对指令进行译码,译码后调用相应的读/写子程序实现指令要求的操作,并返回指令执行的状态信息。 通信协议 ----在自由口模式下,通信协议是由用户定义的。用户可以用梯形图程序调用接收中断、发送中断、发送指令(XMT)、接受指令(RCV)来控制通信操作。在自由口模式下,通信协议完全由梯形图程序控制。 指令格式定义 计算机每次发送一个33字节长的指令来实现一次读/写操作,指令格式见表1 说明: 起始字符 ----起始字符标志着指令的开始,在本例中被定义为ASCII码的"g",不同的PLC从站可以定义不同的起始字符以接收真对该PLC的指令。 指令类型 ----该字节用来标志指令的类型,在本例中05H代表读操作,06H代表写操作。 目标PLC站地址 ----目标PLC站地址占用指令的B2、B3两个字节,以十六进制ASCII码的格式表示目标PLC的站地址。 目标寄存器地址 ----在PLC内部可以用4个字节来表示一个寄存器的地址(但不能表示一个位地址)。前两个字节表示寄存器类型,后两个字节表示寄存器号。 00 00(H): I寄存器区 01 00(H): Q寄存器区 02 00(H): M寄存器区 08 00(H): V寄存器区 例如: IB000的地址可表示为 00 00 00 00(H) VB100的地址可表示为 08 00 00 64(H) 读/写字节数M ----当读命令时,始终读回从目标寄存器开始的连续8个字节的数据(转换为十六进制ASCII码后占用16个字节),可以根据自己的需要取用,M可以任意写入。 ----当写命令时,M表示的是要写入数据的十六进制ASCII码所占用的字节数。例如要写入1个字节的数据,数据在指令中以十六进制ASCII码表示,它将占用2个字节,此时应向M中写入"02"。同理,如果要写入5个字节的数据,M中应写入"0A"。 要写入的数据 ----要写入的数据在指令中以十六进制ASCII码的格式表示,占用指令的B14-B29共16个字节。数据区必须填满,但只有前M个字节的数据会被写入目标寄存器。一条指令最多可以写入8个字节的数据(此时M中应写入"10",代表十进制的16) BCC校验码 ----在传输过程中,指令有可能受到任何的干扰而使原来的数据信号发生扭曲,此时的指令当然是错误的,为了侦测指令在传输过程中发生的错误,接收方必须对指令作进一步的确认工作,以防止错误的指令被执行,最简单的方法就是使用校验码。BCC校验码的方法就是将要传送的字符串的ASCII码以字节为单位作异或和,并将此异或和作为指令的一部分传送出去;同样地,接收方在接到指令后,以相同的方式对接收到的字符串作异或和,并与传送方所送过来的值作对比,若其值相等,则代表接收到的指令是正确的,反之则是错误的。 ----在本例中,bcc为指令B1到B29的异或和,BCC为bcc的十六进制ASCII码。 ----bcc=B1 xor B2 xor B3 xor B4 xor …… xor B29 结束字符 ----结束字符标志着指令的结束,在本例中被定义为ASCII码的"G",不同的PLC从站可以定义不同的结束字符以接收真对该PLC的指令。 PLC在接到上位机指令后,将发送一个21字节长反馈信息,格式见表2 说明: 起始字符 ----起始字符标志着反馈信息的开始,在本例中被定义为ASCII码的"g",不同的PLC从站可以定义不同的起始字符,这样上位机可以根据信息的起始字符来判断反馈信息的来源。 状态信息 ----该字节包含指令执行的状态信息,在本例中 01H 代表 读取正确 02H 代表 写入正确 03H 代表 BCC校验码错误 04H 代表 指令不合法 数据区 ----反馈信息的B3到B18为读指令所要读取的数据,以十六进制ASCII码表示。 BCC校验码 ----与上位机指令中的BCC校验码类似,它是反馈信息B3到B18的异或和。 结束字符 ----结束字符标志着反馈信息的结束,在本例中被定义为26H。 指令中为何要使用ASCII码 ----一条指令除包含数据外,还包含必要的控制字(起始字符、结束字符、指令类型等)。如果指令中的数据直接以其原本的形式传输,则不可避免的会与指令中的控制字发生混淆。 ----例如本例中,指令的起始字符为"g",其ASCII码值为67H,结束字符为"G",其ASCII码值为47H。假设要写入的数据中也有47H,并且数据直接以其原本的形式传输,则PLC会因为接收到了数据中的47H而停止接收,这样PLC接收到的指令将是一个不完整的非法指令,很可能造成PLC的误动作。 ----为了避免这种情况的发生,可以用文本来传送二进制数据。通过以16进制ASCII码的格式描述数据,每个二进制的字节都可以表示成一对ASCII编码,这对编码表示这个字节的两个16进制字符。这种格式可以表示任何的数值,仅仅使用ASCII代码的30H到39H(表示0到9)和41H到46H(表示A到F)。ASCII码的其余部分可以用作控制字(起始标志、结束标志、指令类型等)。这样,数据中的47H以ASCII码的形式进行传送就变成了34H 37H 两个字节,从而避免了PLC因接收到数据中的47H而停止接收的错误。 表1 上位机指令格式 表2 反馈信息格式 PLC程序执行过程 ----PLC在第一次扫描时执行初始化子程序,对端口及RCV指令进行初始化。初始化完成后,运行RCV指令使端口处于接受状态。 ----RCV会将以"g"开头"G"结尾的指令保存到接收缓冲区,并同时产生接收完成中断。 ----RCVcomplete中断服务程序用来处理接收完成中断事件,它会将接收缓冲区中的十六进制ASCII码还原成数据并保存,同时置位Verify子程序的触发条件(M0.1)。 ----Verify子程序首先复位本身的触发条件以防止子程序被重复调用,然后求出接收缓冲区中指令的BCC校验码并与指令中的BCC校验码进行比对。如果相等则置BCC码校验正确的标志位(M0.0)为1;如果指令格式正确(指令的结束标志在接收缓冲区中特定的位置VB133)而BCC码不相等,则发送代表BCC校验码错误的反馈信息;如果指令格式不正确(VB133中不是指令的结束标志),则返回代表指令格式错误的反馈信息。 ----Read子程序的触发条件为:指令中的站地址与本机站地址相符、指令类型为读指令、BCC检验码正确。当条件满足时,Read子程序被执行。Read子程序首先禁止RCV,然后将指令所要读取的数据转换成十六进制ASCII码并写入发送缓冲区、计算BCC检验码、最后发送反馈信息。 ----Write子程序的触发条件为:指令中的站地址与本机站地址相符、指令类型为写指令、BCC检验码正确。当条件满足时,Write子程序被执行。Write子程序首先禁止RCV,然后将指令中的数据写入目标寄存器,最后发送代表写入正确的反馈信息。 ----PLC每接到一条指令后都会发送一条反馈信息,当反馈信息发送完成时,会产生发送完成中断,XMTcomplete中断服务程序用来处理发送完成中断事件。在XMTcomplete中断服务程序中所要执行的操作包括:复位BCC校验码正确的标志位(M0.0);允许RCV;bcc码寄存器清零;重新装入用于计算BCC校验码的地址指针;接收缓冲区中存放指令结束字符的字节VB133清零(用来判断下一条指令格式是否正确)。 PLC寄存器地址分配 ----此程序占用PLC寄存器的VB100-VB199,内部继电器占用M0.0和M0.1。寄存器地址分配见表3、表4、表5、表6。 表3 接收缓冲区 表4 译码区 表5 发送缓冲区 表6 其它 程序清单 主程序: NETWORK 1 LD SM0.1 //第一次扫描调用初始化子程序 CALL initialize NETWORK 2 LDB= VB134, VB199 //指令中的站地址与本机站地址相符 AB= VB102, 5 //指令类型为读指令 A M0.0 //BCC码校验正确 CALL Read //调用读子程序 NETWORK 3 LDB= VB134, VB199 //指令中的站地址与本机站地址相符 AB= VB102, 6 //指令类型为写指令 A M0.0 //BCC码校验正确 CALL Write //调用写子程序 NETWORK 4 LD M0.1 //指令接收完成后调用BCC码校验子程序 CALL Verify NETWORK 5 LD SM4.5 //当端口空闲时启动RCV RCV VB100, 0 Read子程序: NETWORK 1 LD SM0.0 //停止端口0的接收 R SM87.7, 1 R M0.0, 1 RCV VB100, 0 NETWORK 2 LD SM0.0 //将数据写入发送缓冲区 MOVB 103, VB154 MOVB 1, VB155 HTA *VD135, VB156, 16 MOVB 26, VB174 MOVB 21, VB153 NETWORK 3 LD SM0.0 //计算BCC校验码 FOR VW177, +1, +16 NETWORK 4 LD SM0.0 XORB *VD181, VB180 NETWORK 5 LD SM0.0 INCD VD181 NETWORK 6 NEXT NETWORK 7 LD SM0.0 HTA VB180, VB172, 2 //BCC校验码写入发送缓冲区 NETWORK 8 LD SM4.5 //发送反馈信息 XMT VB153, 0 Write子程序: NETWORK 1 LD SM0.0 //停止端口0的接收 R SM87.7, 1 R M0.0, 1 RCV VB100, 0 NETWORK 2 LD SM0.0 //装入要写如数据源的地址指针 MOVD &VB115, VD145 NETWORK 3 LD SM0.0 //写入数据 ATH *VD145, *VD135, VB139 NETWORK 4 LD SM0.0 //指令执行的反馈信息写入发送缓冲区 MOVB 21, VB153 MOVB 103, VB154 MOVB 2, VB155 MOVB 26, VB174 NETWORK 5 LD SM4.5 //发送指令执行的反馈信息 XMT VB153, 0 Verify子程序: NETWORK 1 LD SM0.0 R M0.1, 1 //复位verify子程序的执行条件 NETWORK 2 LD SM0.0 //计算BCC码 FOR VW175, +1, +29 NETWORK 3 LD SM0.0 XORB *VD149, VB179 NETWORK 4 LD SM0.0 INCD VD149 NETWORK 5 NEXT NETWORK 6 LDB= VB179, VB140 //当BCC码校验正确时,M0.0置1 AB= VB133, 71 S M0.0, 1 NETWORK 7 LDB= VB133, 71 //BCC码错误时发送反馈信息 AB<> VB179, VB140 MOVB 21, VB153 MOVB 103, VB154 MOVB 3, VB155 MOVB 26, VB174 R SM87.7, 1 RCV VB100, 0 XMT VB153, 0 NETWORK 8 LDB<> VB133, 71 //指令格式错误或RCV超时时发送反馈信息 MOVB 21, VB153 MOVB 103, VB154 MOVB 4, VB155 MOVB 26, VB174 R SM87.7, 1 RCV VB100, 0 XMT VB153, 0 Initialize子程序: NETWORK 1 LD SM0.0 MOVB 9, SMB30 //0口"9600,N,8,1" NETWORK 2 LD SM0.0 //RCV指令初始化 MOVB 16#EC, SMB87 MOVB 103, SMB88 MOVB 71, SMB89 MOVB +1000, SMW92 MOVB 35, SMB94 R SM87.2, 1 NETWORK 3 LD SM0.0 ATCH RCVcomplete, 23 //连接口0接收完成的中断 NETWORK 4 LD SM0.0 ATCH XMTcomplete, 9 //连接口0发送完成的中断 NETWORK 5 LD SM0.0 ENI //中断允许 NETWORK 6 LD SM0.0 MOVB 2, VB199 //将本机站地址装入寄存器 NETWORK 7 LD SM0.0 MOVB &VB102, VD149 //装入地址指针 MOVB 0, VB179 //BCC码寄存器清零 MOVB &VB156, VD181 //装入地址指针 MOVB 0, VB180 //BCC码寄存器清零 RCVcomplete中断程序 NETWORK 1 LD SM0.0 ATH VB103, VB134, 2 //指令译码(ASCII码到十六进制) ATH VB105, VB135, 8 ATH VB113, VB139, 2 ATH VB131, VB140, 2 S M0.1, 1 //置位Verify子程序的触发条件 MOVB 0, VB179 //BCC码寄存器清零 MOVD &VB102, VD149 //装入地址指针 XMTcomplete中断程序 NETWORK 1 LD SM0.0 R M0.0, 1 //复位BCC校验码正确的标志位 S SM87.7, 1 //允许口0进行接收 MOVB 0, VB179 //BCC校验码寄存器清零 MOVB 0, VB180 //BCC校验码寄存器清零 MOVD &VB102, VD149 //重新装入地址指针 MOVD &VB156, VD181 MOVB 0, VB133 //接收缓冲区中存放指令结束字符的字节 [查看全文]
- 1 引言 VC(Visual C++)是功能强大的一种Windows应用程序可视化软件开发工具。VC支持面向对象的设计方法,并可以使用功能强大的微软基础类库MFC(Micro - soft foundation class)。并且由于Microsoft公司在操作市场上的垄断地位,用VC开发出来的软件稳定性好、可移植性强,而且软件与硬件相互独立[1],可以用来开发控制系统的上层管理系统。RSView32是作为一种专门用于工业控制的组态软件,不仅包含了大量图形开发工具和现成图形库,使用户能够方便的进行系统开发,而且还可以对报警、活动记录、事件、历史趋势等进行组态,是一个功能强大的工业自动化产品[2],因此可以很方便地对下层设备进行组态。在实际系统开发时,利用OPC技术把两种工具有效的结合起来,使上层的VC程序通过RSView32间接地与下层PLC进行数据通信,以获取令人满意的结果。 2 OPC介绍 OPC(OLE for Process Control)是根据Microsoft的OLE(现在Active)、COM(部件对象模型)和DCOM(分布式部件对象模型)技术所要求的功能制定的一个开放和互用式的用户界面标准,它保证了自动化/控制应用程序和区域系统/设备之间的互用。它以OLE/COM机制作为应用程序级的通讯标准,采用 CLIENT/SERVER模式,典型的OPC体系结构如图1所示: 图1 典型的OPC体系结构 OPC规范中提供了两套接口方案,即定制接口和自动化接口。定制接口效率高,通过该接口能够发挥OPC服务器的最佳性能,采用C++语言的客户一般采用定制接口方案;自动化接口使解释性语言和宏语言访问OPC服务器成为可能,采用VB等语言的客户一般采用自动化接口。 OPC 数据存取服务器由三类对象组成:服务器(Server)、组(Group)、数据项(Item)。服务器对象用于指出特定的OPC服务器应用程序名,并作为组对象的容器;组对象存储由若干Item组成的Group信息并逻辑组织数据项;数据项对象()存储具体的Item的定义、数据值、状态值等信息,一个 Item就代表一个具体的过程变量。OPC客户应用程序要获取OPC服务器的数据,必须事先指定服务器应用程序所在的计算机名(服务器应用程序和客户应用程序不在同一台PC上)、OPC数据访问服务器名和该服务器提供的OPC项的定义。 建立OPC连接后,客户应用程序一般可以通过三种方式从OPC 服务器读取数据:使用同步接口IOPC- SyncIO,简单有效,适合于只读取少量数据的客户程序;使用接口IOPCCallback的“订阅”的功能OnChange,每当数据有变化时,服务器自动通知客户;使用异步接口IOPCASyncIO2,可以直接与物理设备通讯,速度慢但数据精确度高。 3 RSView32作为OPC服务器 西门子专门用于工业控制的通用组态软件之一RSView32支持OPC技术,它可以用作一个OPC客户和外部OPC服务器软件通信,也可以作为一个OPC服务器和其它第三方支持OPC技术的软件进行连接。本文中RSView32作为服务器,VC应用程序作为客户端,采用C/S模式实现两者之间的数据交换。 3.1 使RSView32作为OPC服务器 用下列方法之一使RSView32作为OPC服务器: (1) 选择“启动”编辑器里“启动”页上的“OPC/DDE服务器”复选框; (2) 发出RTDataServerOn命令(从命令行或另一个 RSView32组件里,使用RTDataServerOff命令可以取消此功能),这将允许其它应用程序读取数值但不能改变它; (3) 发出RTDataWriteEnable命令(从命令行或另一个RSView32组件里,使用RTDataWriteDisable命令可以取消此功能),这允许从外部OPC应用程序写入,以改变RSView32的标记值。 3.2 建立 OPC 客户项目 VC应用程序要从RSView32取得数据,必须使用下列信息: 服务器:RSI.RSView32OPCTagServer; 类型:本机/远程; 服务器计算机名或地址:如果客户和服务器在同一计算机上,这项可以是空白。 访问路径:项目名; 更新速率:一个以秒为单位的速率; 条目:标记名。可以通过查看RSView32的标签数据库获得。 4 VC应用程序作为OPC客户端的程序实现 在VC环境中使用定制接口开发OPC客户应用程序,下面是程序实现的关键步骤。 4.1 包含OPC头文件 开发OPC客户应用程序,除了需要OPC接口外,还需要在程序中包含OPC标准库文件,可以从OPC基金会网站(网址:www.opcfoundation.org)下载这些文件: #include "opcda_i.c" OPC数据存取接口 #include "opcda.h" OPC数据存取2.0头文件 #include "opccomn_i.c" OPC公共接口定义 #include "opccomn.h" OPC公共头文件 4.2 初始化COM支持库 由于OPC是基于COM技术制定,所以在使用接口类之前必须首先使用CoInitialize(NULL)函数初始化COM库,如果成功,函数返回值等于S_ OK 。 4.3 连接opc服务器 OPC 客户能够连接到OPC服务器上,并建立OPC组和OPC数据项,这是OPC数据访问的基础,如果没有这个机制,数据访问的其它机能不可能实现[4]。连接 OPC服务器,OPC客户需要事先指定计算机名(如果OPC服务器和OPC客户不在同一台计算机上)和OPC数据访问服务器名 (RSI.RSView32OPCTagServer)。实现代码如下: ConnectToServer(/*in */LPOLESTR ProgID,/*in*/ BOOL IsRemote,/*out */ IUnknown **ppUnknown) { CLSID OPCCLSID; HRESULT hRet=CLSIDFromProgID(ProgID,&OPCCLSID); //将字符串ProgID转换为唯一OPCCLSID if(IsRemote) //opc服务器和opc客户不在同一台计算机上 { COSERVERINFO ServerInfo; memset(&ServerInfo,0,sizeof(ServerInfo)); ServerInfo.pwszName=T2OLE("ServerComouter"); MULTI_QI qi[1]; memset(qi, 0, sizeof(qi)); qi[0].pIID=&IID_IUnknown; HRESULT hRet=CoCreateInstanceEx(OPCCLSID,NULL,CLSCTX_REMOTE_SERVER, &ServerInfo,1,qi); *ppUnknown=qi[0].pItf; } else //opc服务器和opc客户在同一台计算机上 { hRet=CoCreateInstance(OPCCLSID,NULL,CLSCTX_LOCAL_SERVER,IID_IUnknown, (void **)ppUnknown); } } 4.4 创建OPC组 IOPCServer接口的AddGroup()方法可以创建一个有指定名称和属性的OPC组。在调用该方法之前,可以使用上一步得到的Iunknown接口指针,通过QueryInterface()方法请求IOPCServer接口指针。代码如下: ppUnknown->QueryInterface(IID_IOPCServer,(void **)&pServer); //得到IOPCServer接口指针 pServer->AddGroup(L"",TRUE,500,1235,&lTimeBias,&fTemp,0,&hOPCServerGroup, &dwActualRate,IID_IOPCItemMgt,& pOPCItemMgt); 4.5 添加数据项 IOPCItemMgt接口的AddItem()方法可以添加具有特殊属性的指定数量的数据项。 pOPCItemMgt->AddItems(ItemNumber,ItemArray, (OPCITEMRESULT**)&pItemResult,(HRESULT **)&pErrors); ItemArray 为OPCITEMDEF类型结构数组,它包含数据项的详细信息,客户需要知道要进行交换的数据在RSView32标签数据库中的名称、数据类型及作为 OPC服务器的RSView32项目名称。添加数据项之前,要用这些数据项信息对ItemArray结构数组进行初始化。 4.6 数据交换 成功地增加完所需要的数据项后,OPC客户(VC应用程序)和OPC服务器(RSView32)就可以进行数据交换了。在数据量不大的情况下,可以使用 IOPCSyncIO同步接口的Write()和Read()两个方法进行数据的读写操作,从而实现OPC客户(VC应用程序)和OPC服务器 (RSView32)之间的数据交换。代码如下: ppUnknown->QueryInterface(IID_IOPCSyncIO,(void **)&pOPCSync); //得到IOPCSyncIO接口指针 pOPCSync->Read(OPC_DS_CACHE,ReadNumber,hServerRead,&pItemValue,&pErrors); //读ReadNumber个数据 pOPCSync->Write(WriteNumber,hServerWrite,WriteValue,&pErrors); //写WriteNumber个数据 4.7 释放接口指针 在VC应用程序停止运行之前必须使用Release()方法删除已创建的OPC对象并释放内存。 5 结束语 OPC技术规范把硬件供应商和应用软件开发者分离开来,使得双方的工作效率都有了很大提高。软件开发商无需了解硬件的实质和操作过程,就能访问OPC数据服务器中的数据,尤其是开发商在已使用了组态软件进行实时监控的过程控制系统基础上,用C++等高级语言开发系统时,大大简化了过去从设备传输数据的复杂过程。在某铝厂的自动配料系统开发中,应用OPC技术方便地实现了VC应用程序和RSView32的数据交换,间接地实现了VC应用程序与PLC的通信,获得了很好的结果。 免责声明:本文仅代表作者个人观点,与automavin工控网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。 [查看全文]
