6GK7243-1GX00-0XE0产品特点
车站联锁系统是铁路信号系统中的一个重要组成部分,它的主要任务是控制车站中的信号机和道岔,并且对信号灯状态进行处理和对进路进行选择等。随着铁路信号系统的信息化发展,微机联锁系统必然取代旧式的电气联锁系统。
就国内外现状来看,大多采用上、下位机的办法来实现对车站信号的控制;有些微机联锁系统中,下位机主要实现数据的采集、命令发送、数据输出等,而把主要的联锁功能置于上位机,这样一来,上位机负担太重,一旦上位机产生故障,不能保证系统的安全性、可靠性。如果能够将联锁功能块置于下位机,下位机安全性、可靠性比较高,那么整个系统的安全性、可靠性就能够得到有效保证。
在以前的微机联锁系统中,用工业控制机作为下位机,实现联锁功能,但不能保证系统冗余,这样就不能保证整个系统的安全性、可靠性。就要不断更新和研究,寻求更完善的、更可靠的硬件、软件环境,以提高系统性能和安全系数。用西门子PLC完成联锁功能,构成PROFIBUS-DP/MPI分布式网络系统,这样整个联锁系统安全可靠。
PROFIBUS现场总线技术是随全数字信号系统的发展而产生的,是由德国组织开发的工业现场总线协议标准——PROFIBUS现场总线标准(DIN19254)。
PROFIBUS是近年来国际上为流行的现场总线,也是目前数据传输率快的一种现场总线(传输率可达12M波特),在很多领域内广泛应用。它是不依赖于生产厂家的、开放式的现场总线,各种各样的自动化设备均可通过同样的接口交换信息。
PROFIBUS-DP(DistributedI/OS-分布系统)是一种经过优化的模块,有比较高的数据传输率,适用于系统和外部设备之间的通信,远程I/O系统尤为适合。它允许高速度周期性的小批量数据通信,适用于对时间要求比较高的自动化场合。
笔者将以S7-400HPLC为例,结合其在铁路信号中的应用,探讨实现PROFIBUS-DP/MPI网络系统原理和方法。
PROFIBUS-DP/MPI网的性质和特点
PROFIBUS-DP适用于现场层的高速数据传送。主站周期地读取从站的输入信息并周期地向从站发送输出信息。除周期性用户数据传输外,PROFIBUS-DP还提供智能化现场设备所需的非周期性通信以进行组态、诊断和报警处理等。
DP网的协议结构
PROFIBUS定义了各种数据设备连接的串行现场总线的技术和功能特性,这些数据设备可以从底层(如传感器、执行器层)到中间层(如车间层)广泛分布。
PROFIBUS连接的系统由主站和从站组成。主站一般要复杂些;从站为简单的外围设备,典型的从站为传感器、执行器及变送器,它们没有总线控制权,仅对接收到的信息给予回答,或者主站发出请求时回送给主站相应信息。从站只需要协议的一小部分,实现起来非常方便。
PROFIBUS协议结构是根据ISO7498,以开放式系统互联网络(Open SystemInterconnection,OSI)作为参考模型,该模型共有7层,PROFIBUS-DP定义了其中的、二层和用户接口。第3到7层未加描述。
图1为ISO/OSI参考模型与PROFIBUS体系结构比较。用户接口规定了用户及系统以及不同设备可调用的应用功能,并详细说明了各种不同PROFIBUS-DP设备的设备行为。物理层采用EIARS-485双绞线或光纤,连接器采用RS-485标准的9针D型插座。数据链路层提供了介质存取控制功能、数据的完整性检查以及传输执行的协议,在PROFIBUS中称第2层为现场总线数据链路(FDL)(包括介质访问存取控制(MAC)子层、现场总线链路控制(FLC)子层、现场总线管理(FMA1/2)子层),采用混合介质存取协议,对应于DIN(E)19245,支持单主或多主系统,主或从设备,大站数为126。它包括主站之间的数据传输的令牌环方式和从站之间的主-从方式。PROFIBUS第7层包括底层接口(LLI)、现场总线信息规范(FMS)和现场总线管理(FMA7)。
图1 ISO/OSI参考模型与PROFIBUS体系结构比较
图2为PROFIBUS-DP数据传输示意图,即主站发送请求,访问DP从站,其中包括帧格式;从站收到请求信息后,立即响应主站,并回送响应帧。
图2 PROFIBUS-DP用户数据传输
DP网的性质及特点
PROFIBUS—DP采用主从方式和低层的令牌环传递相结合的形式进行通道分配,整个网络可以将总线系统分割成线段,分步建立,段间用中继器连接,每个段可以有32个网络站,整个网络可以达到126个网站。由于大传输速率可达12Mbps,以及其第2层采用SRD(发送并要求回送)功能,使得输入、输出数据可以在一个周期内完成,传输速度提高了,可尽可能地减少总线周期。而在单主站系统中只有一个主站,这种组态提供了短的总线周期。PROFIBUS-DP开放性好,开展性强,灵活性高。
用S7-400HPLC构成DP网,由于SIMATICS7V5.2提供有效的系统主持,可实现软件参数化I/O、多功能自诊断,功能模块更易于连接。在S7-400H系统中,CPU之间的同步,由同步模块通过同步光纤连接,在软件和硬件方面都可以实现CPU同步。采用STEP7编程软件进行现场集中控制编程,诊断测试就象采用集中处理单元的集中编程接口时一样。在编程过程中,不需考虑硬件配置,由编程软件实现网络系统组态。
MPI网的性质和特点
CPU中用于连接象编程器这样的设备的接口叫多点接口(MPI),这是因为通过这个接口,两个或两个以上的设备可以从两个或两个以上的节点与CPU通讯。也就是说,带有MPI的CPU已经具有连网能力。MPI网络的结构与PROFIBUS-DP网络是相同的,就是说,两种网络遵循的规则和使用部件是相同的。
S7-400HPLC实现的DP/MPI网络系统
下面是一个按照上述原理用S7-400HPLC构成的多主站DP/MPI网络的实例。
系统结构
整个网络系统为一个车站信号的控制,如图3所示。该网络为由两台S7-414HPLC和ET200M组成的分布式结构。PLC通过CP5611卡与上位机通信。其中一台PLC为主站,另一台为热备。
ET200M选用西门子IM153-2。IM153-2的作用是连接I/O模板,提供PROFIBUS-DP连接;输入模块选用SM321DI32×DC24V,共需要18个模块,主模块9个,备用9个。输出模块用SM322DO32×24V,共用8个,主模块4个,备用4个。输入、输出模块都是通过DP连接。3台上位机,都是通过CP5611与PLC的CPU相连。两个CPU之间通过同步光纤连接。
用户界面
每台PLC都通过CPU模块上的MPI集中编程接口和配置有MPI接口的PC机相连。我们采用西门子的CP5611与PLC的CPU相连。PC机中配置SIMATICSTEP7V5.2编程软件。
由于是冗余系统,还需要安装西门子的冗余软件,才能做到PLC的两个CPU之间同步。3台上位机中,其中两台是操作员用的监控机,另一台为维修机。在整个系统中,上位机之间可以互相通讯,也可以与PLC之间通讯。每台PC机都要安装CP5611驱动软件,才能完成功能。
程序结构
系统组态及参数设置
由SIMATICSTEP7V5.2编程软件,进入硬件组态状态,对各台PLC进行网络参数设置。建立Pro2ject,如取名为C:\swjtu,在该文件下选择网络Subnet为PROFIBUS,站名为SIMATIC414HStation,进行硬件组态。是建立各站在网络的地址。后组态3个PG/PC站,在选项窗口中选中CP5611,并分配地址,主编程站地址为0,其余两个只要地址不相同即可。
程序结构
西门子SIMATICS7-400HPLC的编程器STEP7可运行在PC机的bbbbbbs环境下,界面友好,提供了梯形图、语句表和块图3种形式的编程、调试、诊断等功能。本实例采用模块化程序结构,程序由几大功能块组成,每个功能块完成一系列的控制逻辑,放置在组织块OB1中的指令决定控制程序的各功能块的执行。本例zhonggong能块FC1是微机联锁命令处理程序,FC2是进路处理程序,FC3,FC4是微机联锁状态处理程序,FC5是常量定义,FC6是信号输出处理,FC7是道岔输出处理,FC8是信号采集。程序结构框图如图4所示。功能块为多层次调用,FC1在调用其他功能块,比如FC1调用FC9,FC9调用FC10,FC10调用FC11、FC12、FC13、FC14等。在STEP7中,允许功能块调用多为16层。
图3为应用于唐山钢铁集团公司焦化厂火车站的微机联锁系统的PROFIBUS-DP/MPI网络原理框图。3台监控机为监控层,PLC为联锁层,I/O为控制层。车站联锁系统主要由联锁以及信号、道岔、区段和进路的动作建立。本例中,以车站微机联锁的控制过程说明PROFIBUS-DP网络的实践应用。
图3 网络系统结构图
进路控制过程包括进路建立、进路解锁。进路建立包括进路选择、道岔控制、进路锁闭、信号控制,进路解锁就是对已建立的进路、道岔进行的进路锁闭,进路解锁包括取消进路、人工解锁、正常解锁、中途折返解锁、故障解锁。
图4 程序结构框图
在组织块OB1中,先调用FC1对联锁命令进行处理,其中包括进路处理、道岔处理、信号处理,调用FC2对进路进行处理,调用功能块FC1、FC2对联锁状态进行处理,再调用功能块FC6、FC7、FC8对数据进行输入输出处理。以功能块FC1命令处理程序为例,说明其功能调用过程。功能块FC1先调用FC10进行进路选择,调用FC11、FC12、FC13等,对其他命令进行处理。
结论
从实际应用来看,整个网络运行良好,网络结构简单,技术性能稳定。实践证明,PROFIBUS-DP网构成的灵活实用分布式网络在铁路系统有良好的应用前景。
一、项目简介
1. 本项目位于天津市西青区,华能天津杨柳青热电厂。此电厂现拥有两台套200MW发电机组及两台煤粉锅炉,是一家大型火力发电厂。
2.项目的简要工艺:在火力发电行业中,煤经锅炉燃烧后加热汽包中的水产生蒸汽,推动汽机旋转带动发电机发电。锅炉出口的烟中含有大量粉尘颗粒,按照环保要求必须经过除尘后才能排入大气中。本电厂现在采用高压静电除尘器,利用静电吸尘通过震打、收集手段将灰收集到灰斗中,再经气力输灰装置输送到灰库中,供水泥行业等使用。气力输灰属于锅炉辅机部分,通常使用PLC实现其控制功能。
3.项目当中使用的西门子自动化产品:一套S5-115U、两套S5-155U作为控制装置,控制了两台炉的全部气力输灰装置,包括气动阀门、压力变送器、温度传感器等过程控制对象。新进行的改造包括WinCC监控软件,PROFIBUS总线板卡CP5431、CP5613A2, Siemens的SimaticNet2006。
二、控制系统构成
1.整个项目中的硬件配置、系统结构;各组成部分选择的依据。与S5PLC的通讯方式有许多种,基于Profibus的FDL、FMS等,或者基于Ethernet上都有成熟的通讯方案,我们选用的是基于Profibus的FMS方式。为了实现FMS通讯,3套AS站侧选用3块CP5431卡件分别插到S5-115U/155U的可用扩展插槽上,建立了AS站侧的Profibus接口;3台上位机监测电脑上各安装了1块CP5613A2通讯卡,从而为上位机提供了Profibus接口。使用专用的Profibus电缆及总线连接器将3套PLC与3台上位机连接到同一个Profibus网络上,建立起通讯总线的物理连接。
2.选用Profibus网络与选用Ethernet网络相比较,主要优点是实现成本较低。在网络规模不大、通讯负荷较轻时Profibus完全能够胜任。
三、控制系统完成的功能
1.本案例中,原有控制方式是传统的操作屏模式,在操作间设有一5000*1200的按钮操作屏,屏上刻画出了除灰过程的设备及工艺流程图,并安装了大量的开关和按钮,当前工艺过程状态通过操作屏上的指示灯进行显示,设备、功能组的启停全部通过开关和按钮控制。为了提高控制的自动化程度,降低设备检修强度,为了满足控制室的搬迁要求,决定进行操作模式的改造升级,在维持原有操作屏操作的基础上,增设3台上位机,使用WinCC实现一套新的控制平台。选用WinCC是因为其灵活快速的画面组态、报警组态功能,完善的历史数据归档、曲线、报表功能,丰富的图库、脚本函数库资源。WinCCV6版本使用了SQLServer2000数据库,开放的接口,广泛的使用面更为WinCC增添了新的亮点。WinCC对OPC技术的支持与应用,使用户获得了自由扩展的接口,WinCC即可以作为标准的OPCClient使用,又是标准的OPC DA/HDA/A&E Server。作为标准的OPCClient,我们可以用WinCC通过添加OPC Suite来访问所有支持OPC DA接口的OPCServers,即可以是象SimaticNet这样的Siemens自己的产品,也可以是第三方厂家产品。而作为标准的OPCDA/HDA/A&E Server,我们可以开发自己的OPCClient应用程序实现对WinCC过程数据/历史数据/报警事件数据的访问,现在较为流行的工厂SIS/MIS系统软件多数支持OPC访问接口,WinCC完全支持他们的访问。SimaticNet也是一套标准的OPCServer产品,它又提供了对Siemens各网络类型板卡的支持,项目中就是借助CP5613A2板卡通过SimaticNet中的OPCServer实现与S5系列AS站之间的FMS连接,上位机中FMS连接的建立是在安装了SimaticNet后生成的PCStation中实现的,借助SimaitcNet的PC Station组态工具,将建立好的FMS连接下装到PCStation中,要注意的是所建的连接一定要与AS站上的CP5431的设置参数相一致,CP5431的设置工作是在专用软件COM5431中完成的。AS站加装CP5431板卡,对程序作相应更改并调试通过后,应能建立上位机与S5PLC之间的数据通讯,在此调试过程中,SimaticNet提供了一个很好的OPC调试工具————OPC Scout,利用OPCScout我们可以方便直观的浏览、连接、测试当前能够连接上的OPC数据源。当然WinCC也不甘落后,在添加了OPC驱动包后,右击此OPC驱动包并选择Systembbbbbeter,打开的窗口同样具有OPC扫描、浏览功能,利用其完美的浏览选择功能我们能快速、方便的建立我们所需要的数据标签。此项目中除了采集3套S5PLC数据外,又连接了4套OMRON的小型PLC,我们采用的依然是OPC技术,选购了OMRON的SYSMACOPC产品,用WinCC与SYSMAC建立OPC通讯,从而实现了对OMRONPLC产品的监控,更体现了WinCC对OPC的支持所带来的益处。经以上各技术点的应用,我们成功实现了对除灰系统的WinCC监控改造。
2.项目中的难点:在项目实施过程中,遇到的大困难是通讯响应速度问题。原有控制方式中,设备的状态显示借助指示灯的状态来实现,指示灯有两种闪烁频率,1Hz和0.5Hz。为了不改变程序中的逻辑处理部分,我们力图在WinCC画面上实现与操作屏上指示灯的同步闪烁,这就要求WinCC上的数据刷新周期要快于灯的闪烁周期。为了实现这一目的,在WinCC中的画面元素的刷新周期要一致,全部设为500ms周期;关键的设置在于CP5431的发送周期上,若将SendAll/ReceiveAll的调用安排在OB1中是不合理的,因为此项目的程序量较大,导致OB1的完全执行周期较长且不稳定,对于S5-155U/948CPU,我们选择了较快的定周期中断OB11。在组态CP5431的COM5431中的数据排列顺序也要作相应考虑,力求使与显示有关的所有数据能在一个发送包中传递完毕。经过对以上几点的着重处理,终获得了令人满意的同步显示效果。
3. 附加生产工艺当中的工艺照片。
四、项目运行
到目前为止,项目已经投入运行近一年了,系统运行很稳定,用户反应良好。
五、应用体会
通过这一项目,切身体会了WinCC的OPC接口的方便性与开放性。SimaticNet体系逻辑结构清晰,接口全面使用方便,其附带的调试工具非常实用。
1引言
可编程序控制器(PLC, Programmable LogicController)是采用微电脑技术制造的自动控制设备。他以顺序控制为主,回路调节为辅,能完成逻辑判断、定时、记忆和算术运算等功能。
随着PLC技术的发展,其功能越来越多,集成度越来越高,网络功能越来越强,PLC与上位PC机联网形成的PLC及其网络技术广泛地应用到工业自动化控制之中,PLC集三电与一体,具有良好的控制精度和高可靠性,使得PLC成为现代工业自动化的支柱。PLC的生产厂家和型号、种类繁多,不同型号自成体系有不同的程序语言和使用方法,本文拟就用日本立石公司生产的OMRONC20p型PLC,设计几个PLC在三相异步电机控制中的应用,与传统的继电器控制相比,具有控制速度快、可靠性高、灵活性强等优点,可作为高校学生学习PLC的控制技术的参考,也可作为工业电机的自动控制电路。
2 PLC在电机控制中的应用
2.1三相异步电机的正反转控制
要求当按下正转按钮,电机连续正转,此时反转按钮不起作用(互锁),按下停止按钮电机断开电源,按下反转按钮电机连续反转,正转不起作用。图1所示为三相异步电机的正反转控制原理图。
2.2三相异步电机的Y—△启动
要求起动时电机接成Y型,经过一段时间自动转化为△形运行,要求Y形断开后△形才能启动,防止Y形未断△形启动造成电源短路。图2所示是三相异步电机Y—△启动控制原理图。
2.3三相异步电机时间控制
要求第1台电动机M1启动5 s后,第2台电动机M2自动启动,只有当第2台M2停止后,经过5s延时,M1自动停止。图3所示是三相异步电机时间控制原理图。
3 程序的写入与运行
将PLC联上编程器并接通电源后,PLC电源指示灯亮,将编程器开关打到“PROGRAM”位置,这时PLC处于编程状态。编程器显示PASSWORD!这时依次按Clr键和Montr键,直至屏幕显示地址号0000,这时即可输入程序。
在输入程序前,需清除存储器中内容,依次按Clr、Play/Set,Not,Rec/Reset和Montr键,即将全部程序清除。按照以上3种控制的梯形图或程序指令将3种控制程序写入PLC,当上述3部分程序输入到PLC机中后,用上下方向键读出所写程序,如程序有错,可用插入指令和删除指令修改程序。
程序输入正确后,分别按图1(a)和(c)连接PLC外部接线及主回路线路实现电机正反转控制,按图2(a)和(c)连接线路实现电机Y—△启动,按图3(a)和(c)连接线路实现电机的时间控制。此设计可以一次性把3种控制电路的程序全部输入,控制3种电路,运行时,按下SBF,SBR电机正反转启动,按下SB1,SB2控制电机Y—△启动,按下SB3,SB4电机顺序启动,互不干扰,事半功倍,实现了一台PLC控制多种电路形式。
1引言
在工业控制领域中,PLC作为一种稳定可靠的控制器得到广泛的应用。但它也有自身的一些缺点,即数据的计算处理和管理能力较弱,不能给用户提供良好的界面等。而计算机恰好能弥补PLC的不足,它不但有很强的数据处理和管理能力,能给用户提供非常美观而又易于操作的界面。将PLC与计算机结合,可使系统达到既能及时地采集、存储数据,又可处理和使用好数据,两者结合的关键是PLC与计算机之间的通信。本文以OMRON公司的CPMIA小型PLC为例,详细的讨论了PLC与计算机通信的原理和用VB如何实现PLC与计算机的通信。
2通行原理与方法
上位机要能够通过PLC监控下层设备的状态,就要实现上位机与PLC间的通信,一般工业控制中都是采用RS232C实现。上位机向PLC发送查询数据的指令(实际上是查询PLC中端子的状态和DM区的值等),PLC接收了上位的指令后,进行校验(FCS校验码),看其是否正确,如果正确,则向上位机传送数据(包含首尾校验字节)。否则,PLC拒绝向上位机传送数据。上位接收到PLC传送的数据,也要判断正确与否,如果正确,则接收,否则,拒绝接收。
由于CPM1A没有提供串行通信口,我们利用其提供的外设端口实现通信。PLC与计算机之间的连接是通过OMRON提供的专用电缆CQM1-CIF01来实现的,其硬件连接图如图1所示。
3 PLC与计算机间的通信规约
计算机与PLC间的通信是以“帧”为单位进行的,并且在通信的过程中,计算机具有更高的优先级。计算机向PLC发出命令帧,PLC作出响应,向计算机发送回响应帧。其中命令帧和响应帧的格式如下:
(1)命令帧格式。为了方便计算机和PLC的通讯,CPM1A对在计算机连接通信中交换的命令和响应规定了相应的格式。当计算机发送一个命令时,命令数据主准备格式如图2所示。
其中@放在首位,表示以@开始,设备号为上位机识别所连接的PLC的设备号。识别码为命令代码,用来设置用户希望上位机完成的操作,FCS为帧检验代码,一旦通信出错,通过计算FCS可以及时发现。结束符为“*”和CR回车符,表示命令结束。
(2) 响应帧格式。由PLC发出的对应于命令格式的响应帧格式如图3所示。
其中,异常码可以确定计算机发送的命令是否正确执行。其它的与正文中的含义相同。正文仅在有读出数据时有返回。
4通信程序的设计
为了充分利用计算机数据处理的强大功能,我们可以采用计算机有优先权的方式,在计算机上编写程序来实现计算机与PLC的通信,计算机向PLC发出命令发起通信,PLC自动返回响应。本文中采用VB来编写计算机与PLC间的通讯程序。在VB中提供了通信控件—应用通信控件(MSCOMM),实现通过串行端口传送和接受的功能。
下面介绍MSCOMM控件的属性:
*CommPort:设定通信连接端口代号,程序必须指定所要使用的串行端口号,bbbbbbs系统使用所设定的端口与外界通信。
*PortOpen:设定通信口状态,若为真,通信端口打开,否则关闭。
*Settings:设定通信口参数,其格式是"bbbb,p
,d,s",其中bbbb为通信速率(波特率),p为通信检查方式(奇偶校验), d为数据位数,s为停止位数,其设定应与PLC的设定一致。
*bbbbb:将对方传送至输入缓冲区的字符读入到程序。
*Output:将字符写入输出缓冲区。
*InBufferCount:传回接收缓冲区中的字符数。
*OutBufferCount:传回输出缓冲区中的字符数。
*bbbbbLen:设定串行端口读入字符串的长度。
*bbbbbMode:设定接收数据的方式。
*Rthreshold:设定引发接收事件的字符数。
*CommEvent:传回OnComm事件发生时的数值码
*OnComm事件:无论是错误或事件发生,都会触发此事件。
(1) 控件参数的初始化。
初始化程序如下:
Mscomm.ComPort=2 `使用串口Com2
Mscomm.Settings="9600, E, 7, 2" `波特率9600,偶校验,7位数据位,2位停止位
Mscomm.PortOpen=True `打开通信端口,准备通信
(2) 计算校验码FCS,计算FCS的VB自定义函数如下:
Function FCS(ByVal bbbbbStr As bbbbbb) As bbbbbb
Dim Slen, i, Xorresult As Integer
Dim Tempfes As bbbbbb
Slen=Len(bbbbbStr) `求输入字符串长度
Xorresult = 0
For i = 1 To Slen
Xorresult = Xorresult Xor Asc(Mid$(bbbbbStr, i, 1)) `按位异或
Next i
Tempfes=Hex$(Xorresult) `转化为16进制
If Len(Tempfes)=1Then Tempfes =“0”+Tempfes
FCS = Tempfes
End Function
(3) 计算机与PLC通信程序。
主要是一个自定义函数。
Function ReadData(ByVal bbbbbStr As bbbbbb, ByVal Num As Integer)As bbbbbb
Dim OutputStr As bbbbbb
Dim Inbbbbbb As bbbbbb
Dim ReturnStr As bbbbbb
Dim Endbbbbbb As bbbbbb
Dim FCSbbbbbb As bbbbbb
Dim ReturnFCSbbbbbb As bbbbbb)
MSComm.InBufferCount=0
OutputStr=bbbbbStr+FCS(bbbbbStr)+“*” `给出命令帧
MSComm.Output=OutputStr+Chr$(13) `向PLC传送命令帧
Do
DoEvents
Loop While MSComm.InBufferCount < 15
Inbbbbbb=MSComm.bbbbb `获取PLC的响应帧
`结束码判断
Endbbbbbb = Mid$(Inbbbbbb, Len(Inbbbbbb) -
Num- 5, 2)
If Endbbbbbb = "13" Then
ReadData = "Error"
Exit Function
ElseIf Endbbbbbb = "14" Then
ReadData = "Error"
Exit Function
ElseIf Endbbbbbb = "15" Then
ReadData = "Error"
Exit Function
ElseIf Endbbbbbb = "18" Then
ReadData = "Error"
Exit Function
ElseIf Endbbbbbb = "A3" Then
ReadData = "Error"
Exit Function
ElseIf Endbbbbbb = "A8" Then
ReadData = "Error"
Exit Function
End If
`响应帧校验
Endbbbbbb = Mid$(Inbbbbbb, 1, Len(Inbbbbbb) - 4)
ReturnFCSbbbbbb = Mid$(Inbbbbbb,Len(Inbbbbbb) - 3, 2)
FCSbbbbbb = FCS(Endbbbbbb)
If FCSbbbbbb <> ReturnFCSbbbbbb Then
ReadData = "Error"
Exit Function
End If
ReturnStr = Mid$(Inbbbbbb,
Len(Inbbbbbb) - Num - 3, Num)
ReadData = ReturnStr
End Function
从上面程序可以看到,计算机对PLC返回的响应帧要进行FCS校验,并利用异常码排除返回的异常数据,这样不但可以提高计算机获取信息的正确性,提高了计算机监控的实时性。
5结束语
本文介绍的通信方法在我校CIMS研究中心自行研制的一套机电一体化设备中得到实施运用,经试验运行,证明这种通信方法稳定、可靠,确实是一种非常有效的方法。将PLC与计算机通信网络连接起来,PLC作为下位机,计算机作为上位机,形成一个优势互补的自动控制系统,实现了“集中管理,分散控制”。其中各个PLC子系统或远程工作站在生产现场对各个被控对象进行控制,利用网络连接构成一个PLC综合控制,满足了现代自动化系统向信息化、网络化、智能化的过渡