OPC及OPC服务器的设计与实现

OPC及OPC服务器的设计与实现
OPC及OPC服务器的设计与实现

OPC及OPC服务器的设计与实现

上海自动化仪表股份有限公司技术中心张庆军

摘要:简要介绍了OPC原理,OPC规范以及小型DCS控制系统OPC服务器的设计与实现。

关键词:OPC COM DCOM DCS

一引言

OPC(OLE for process control)是一个工业标准。它是由一些世界上占领先地位的自动化系统和硬件、软件公司与微软合作而建立的、满足开放性的和互操作性的接口标准。OPC标准的建立基于微软的COM技术规范,并由OPC基金会这个国际组织管理。OPC为不同厂商的硬件设备、软件和系统定义了公共的接口,使得过程控制和工厂自动化中的不同系统、设备和软件之间能够相互连接、通信、操作。

一般在控制系统中,包含过程画面的软件(如SCADA软件)在与现场设备通信的时候,常采用如下的方法:

1,采用标准的通信协议,如profibus、modbus、HART、CAN总线等,因为监控管理软件与现场设备采用同样通信协议,所以监控管理软件不需要对现场设备的驱动程序。

2,对于没有采用标准的通信协议的设备,监控管理软件需要在设备制造商的配合下为这些设备开发驱动程序。这种方式虽然执行效率比较高,但兼容性差,软件供应者必须对每一种接入的设备开发驱动程序,设备制造商也必须提供设备的通信协议。

3,通过OPC 这个开放协议与过程控制或其他系统软件进行通信,这种方式的优点在于:不管硬件设备是否使用标准的通讯协议,制造商只需提供一套OPC 服务器,即可支持大部分的监控等软件, 也不需要将自己的通信协议等细

控制系统中往往混合有多种协议,有符合不同的现场总线标准的设备,也有厂商使用自定义通信协议的设备,因而开放性很差。提供过程画面的软件在

配置这样的系统的时候会非常困难,用户往往只能选择单一设备制造商提供的产品,但如果每个设备的通信协议都配置了OPC服务器,由OPC服务器封装这些协议,并通过标准的接口给提供过程画面的软件,这样提供过程画面的软件就可以通过标准的OPC接口实现与设备的互连,对于软件来说就不需要实现诸多的通信协议,对于用户来说就可以提高选择产品的自由度。

由上海自动化仪表股份有限公司技术中心开发的新一代全数字化小型DCS 控制系统,在数据访问中使用了OPC技术,并开发了OPC服务器,使得该控制系统向各种管理系统开放。

二 COM/DCOM与 OPC

COM(Component Object Model,组件对象模型),是一种独立于语言的组件规范,并提供了实现交互的环境,可以生成二进制级别的可重用组件。实际上我们平时常见的OLE(object linking and embedding,对象链接和嵌入)技术和ActiveX技术都是以COM规范为基础的,用于过程控制中的OPC技术也是以COM规范为基础的。

在OLE最初的版本OLE 1中,组件程序和客户程序之间的通信没有采用COM接口技术,而是采用了DDE(dynamic data exchange,动态数据交换)技术,DDE是建立在windows消息机制的基础上的,用于进程间的数据交换技术。由于DDE技术存在效率低、稳定性差、使用不便等缺点,在OLE技术发展到OLE 2的时候,已经成为使用COM架构的软件系统。

COM组件通过接口继承的方式分离了接口和实现,客户只能通过接口来访问COM组件的实现,实现的细节对于客户来说是不可见的。COM组件的接口是用128位的全球唯一标识符号(GUID,Globally Unique Identifier)标识的。在OPC基金会提供的IDL文件中,定义了一系列由GUID标识的接口以及接口方法的原型。这样,现场设备的硬件厂家实现的OPC服务器组件,是基于OPC 基金会定义的接口,并在组件中实现接口的方法;提供过程画面的软件厂商作为客户端,在访问现场设备的时候也是基于OPC基金会定义的接口,并通过OPC服务器对象实现的方法完成数据通信。

COM组件还分为进程内组件和进程外组件,如果以DLL(动态连接库)的方式实现组件程序,就称为进程内组件,进程内组件程序运行在客户程序的地址空间里,因此效率比较高,但其严重的错误会引起客户进程的崩溃。以EXE方式实现的组件程序是进程外组件,进程外组件程序和客户程序运行在各自独立的地址空间,稳定性较好。对于进程外组件,客户程序调用的是代理对象,通过LPC/RPC与进程外组件的存根代码进行通信。可以通过定义COM接口的IDL文件来实现代理程序和存根程序。OPC规范也考虑了跨进程调用的问题,提供了用于跨进程调用的Proxy(代理) DLL和Stub(存根)DLL,实现了对OPC客户程序的进程透明性。

DCOM(Distributed COM,分布式的COM), 是COM的扩展,它可以支持不同计算机上的组件对象和客户进行通信,这样组件对象可以分布在局域网、广域网或者互联网上。通过DCOM架构,COM组件和客户程序不需要考虑低层的网络协议等问题,就可以实现多层次的分布式应用系统。OPC服务器组件通过DCOM的配置也可以很方便的实现分布式的应用,实现对OPC客户程序的位置透明性。

三 OPC规范简介

OPC定义了一系列规范来满足多种系统和设备之间数据通信的需求。主要包括OPC数据存取规范、OPC报警与事件处理规范、OPC历史数据处理规范等。OPC规范只是定义了COM接口,OPC服务器提供者必须去实现这些接口和方法。

OPC服务器通过OPC规范定义了OPC COM组件的接口实现对数据源进行存取(读/写)或通信的方法等,数据源可以是现场的I/O设备,也可以是其它的应用程序。通过OPC服务器中COM组件提供的接口,OPC客户程序可以通过一个或多个厂商提供的OPC服务器来对数据源进行存取(读/写)或通信。

OPC规范包含了自动化接口(Automation Interface)和OPC定制接口(Custom Interface)两套接口的定义。自动化接口主要为一些用脚本语言编写的客户程序设计,C++编写的客户程序在访问定制接口的时候,可以获得较高的性能,OPC服务器必须实现定制接口。

OPC数据存取规范主要定义的是OPC DA Server(数据存取服务器)。OPC DA Server主要包含服务器对象(Server Object)、组对象(Group Object)和项对象(Item Object)。OPC服务器对象负责维护着服务器的信息,同时也是OPC组对象的包容器,如可以完成添加删除OPC Group等功能。OPC组对象维护着OPC Group的信息并提供包容OPC项的机制,同时管理OPC项对象。OPC项对象代表了与服务器里数据源的连接,例如:在DCS系统中定义的可以让OPC客户程序访问的标签(TAG)。在OPC项中没有定义外部接口, OPC组提供了对OPC项的操作。每个OPC项包含值(Value)、品质(Quality)和时间标签(Time Stamp,表示获得数据的时间)。

OPC报警与事件处理规范定义了OPC服务器发生异常时或OPC服务器

设定事件到来时向OPC客户程序发送通知的一种机制。

OPC历史数据处理规范的实现,可以使OPC客户端能够存取OPC服务

器中历史数据等。

四 OPC服务器的设计和实现

我们开发的小型DCS控制系统使用了OPC服务器后,实现了对主流的监控软件(一般都有OPC接口)的兼容,监控软件等OPC客户程序可以很方便的访问和设置DCS中的数据,下图是简化的系统的连接图。

OPC服务器需要实现的主要功能就是根据控制系统的组态信息,实现OPC服务器对象,组对象等,并通过OPC驱动程序实现与DCS系统中主控制器的通信,获得现场数据或设置现场数据项等。

OPC服务器软件主要分为OPC服务器对象模块、服务器界面模块和OPC 驱动程序模块,三个模块通过同一块内存数据区来共享数据,通过线程的同步和互斥等技术的使用,可以解决共享数据区的保护问题。各个模块的主要功能如下:

1 服务器界面模块

服务器界面程序主要完成根据组态信息,完成OPC Group对象和OPC Item对象的添加,并采用树形结构浏览查看的内存数据区中的数据项(TAG),如数字量信号输入卡的输入信号等。

2 OPC驱动程序模块

OPC驱动程序主要是通过TCP/IP协议实现了与多台主控制器的通信,来实现OPC服务器的驱动部分(通过对驱动程序的替换,可以实现其它产品的OPC服务器)。

3 OPC服务器对象模块

OPC服务器对象模块是OPC服务器程序与OPC客户程序的交互部分,主要依据的是OPC基金会的数据存取规范来实现。一般需要实现OPCServer, OPCGroup, EnumOPCItemAttributes 等对象,其中OPCServer对象需要实现IOPCCommon, IOPCServer, IOPCItemProperties, IConnectionPointContainer 等接口的方法; OPCGroup对象需要实现IOPCSyncIO, IOPCGroupStateMgt, IOPCAsyncIO2, IOPCItemMgt, IConnectionPointContainer 等接口的方法; EnumOPCItemAttributes需要实现IEnumOPCItemAttributes接口的方法。接口方法的原型参照OPCDa.idl中的定义。

在对OPC服务器和客户端的开发中使用IDE的是Microsoft Visual C++,其中OPCServer对象,OPCGroup对象等COM组件的定义和实现运用了微软的ATL(Active Template Library活动模板库)技术。

下面的一段代码示范了OPC客户端对OPC服务器IOPCServer接口GetStatus()方法的访问(客户端可以通过GetStatus方法获得服务器开始工作的时间、更新、名称等信息)。

OPC客户程序:

{…

CoInitialize(NULL);//初始化COM环境

…//略

IOPCServer *pSvr=NULL;//定义IOPCServer接口指针

HRESULT hr = CoCreateInstance(CLSID_OPCServer, NULL, CLSCTX_ALL,

IID_IOPCServer, (void **)&pSvr);

//注:OPCDa2.0可以通过IOPCServerList调用OPCServerList获得OPCServer的CLSID

OPCSERVERSTATUS* pServerStatus;//定义OPCServer状态的结构

pSvr->GetStatus(&pServerStatus);//获得OPCServer返回的状态

pSvr->Release();//释放IOPCServer接口指针

CoUninitialize(); ////结束COM环境

}

OPC服务器程序:

class ATL_NO_VTABLE COPCServer :

public CComObjectRootEx,

public CComCoClass,

public IOPCServer… //定义OPCServer

{ …

STDMETHOD(GetStatus)(OPCSERVERSTATUS ** ppServerStatus)

{

if ( ppServerStatus == NULL)

return E_INVALIDARG;//错误的调用

OPCSERVERSTATUS* pServerStatus;//定义OPCServer状态的结构

pServerStatus=(OPCSERVERSTATUS*)pM-

>Alloc(sizeof(OPCSERVERSTATUS));

//分配内存

if(pServerStatus)

{

pServerStatus->szVendorInfo=VendorInf;//制造商信息

pServerStatus->ftStartTime=svrStartTime;// OPCServer开始工作时间

CoFileTimeNow( &pServerStatus->ftCurrentTime);//当前时间

pServerStatus->ftLastUpdateTime = m_LastUpdate;//最近更新的时间

pServerStatus->dwServerState=OPC_STATUS_RUNNING;//OPCServer 状态

pServerStatus->dwGroupCount = 0;//OPCServer中Group个数

pServerStatus->dwBandWidth = 0;//带宽

pServerStatus->wMajorVersion = 0;//版本信息

pServerStatus->wMinorVersion = 0; //版本信息

pServerStatus->wBuildNumber = 0; //版本信息

pServerStatus->wReserved = 11;//保留位

*ppServerStatus = pServerStatus;//向OPCClient返回OPCServer状态return S_OK;//OPCClient调用成功

}

return E_OUTOFMEMORY;//内存不够

}

…//略

}

通过上面这个例子,可以了解到OPC客户程序对OPC服务器程序的调用过程,即OPC服务器程序定义了COPCServer这个COM组件,继承了IOPCServer接口并实现了该接口的GetStatus()方法,OPC客户程序获得IOPCServer接口指针后,通过对GetStatus()方法的调用获得OPC服务器的工作状态。类似的,通过对OPC规范中定义的其它的必要接口(Required Interface)的实现,就可以“即插即用”的将设备集成到各种符合OPC 规范的系统或应用中去。

五结束语

硬件设备通过OPC服务器,可以规范的、以独立于协议的方式与客户进行通信,极大的提高了控制系统的互连和互操作性,同时COM、OPC规范都在不断发展壮大之中,通过这些技术的掌握和运用,我们可以实现开放性好、兼容性强、配置方便的分布式控制系统。

参考文献

1 OPC基金会《OPC Data Access Custom Interface Standard V2.05A》

2 Jonas Berge 《过程控制现场总线—工程、运行与维护》

3 Microsoft 《Distributed Applications With Microsoft Visual C++6.0》

4 Brent Rector,Chris Sells 《ATL Internals》

冗余通讯接口设计思考

冗余通讯接口设计思考 1数据下行 RGL网关作为ModbusTCP服务器,而DCS作为ModbusTCP客户端。两个FDSI模块(无论其主从状态)均向RGL网关写入数据,以保证两个RGL网关数据的一致性。在最初建立连接时,FDSI模块需将所有数据写入RGL网关,其后既可定期将所有数据刷新,也能够仅在数据发生变化时传输新的数据。为了对网关的主从状态实行监管,设置了两个主从标签变量:RGL997SY:RGL网关1的主从状态;RGL998SY:RGL网关2的主从状态;与其他数据一样,这两个数据在建立通讯之初必须由FDSI写入RGL网关,其后则既可定期传输,也可在数据发生变化时实行数据传输。FDSI发出的上述两个变量应遵守下述准则:RGL997SY 为1而RGL998SY为0,该组合表示RGL网关1和FDSI1处于主工作状态而RGL网关2和FDSI2处于热备用工作状态(从状态)。该组合下,RGL机架将采纳由FDSI1传输到RGL网关1的相关数据。RGL997SY为0而RGL998SY为1,该组合表示RGL网关2和FDSI2处于主工作状态而RGL网关1和FDSI1处于从工作状态。该组合下,RGL机架将采纳由FDSI2传输到RGL网关2的相关数据。RGL网关不实行数据的写操作,除非RGL网关与FDSI之间的通讯中断或RGL网关无法从FDSI模块读取数据的时间超过3秒。在上述两种情况下,RGL网关将对主从标签变量实行复位,其他数据维持不变,即保持中断数据通讯前的数据。如果两个主从标签变量均为1或均为0,RGL机架将使用最后一个由0转变为1的主从标签变量所对应的RGL网关的数据。RGL网关定期(100毫秒)读取ModbusTCP数据库中的数据,所以RGL网关的时间延迟不超过200毫秒。RGL网关对其内部故障实时监测,如果某个RGL网关探测到出现内部故障,将停止与FDSI模块和RGL机架的数据通讯(既不发出数据,也不接收数据)。RGL机架实时发送距上次数据传输的计时信号到RGL网关,若相关计时信号超过3秒,则RGL网关认为与RGL机架之间的通讯出现故障,RGL网关将停止接收FDSI模块传输的数据。

OPCDA远程连接设置

OPC DA远程连接设置 局域网内OPC DA客户端访问OPC DA服务器是基于DCOM组件的远程调用。新的OPC U A协议通过证书互换的方式可以更为简单的进行远程连接。如OPC服务器支持OPC U A建议使用OPC U A协议进行通讯,因实际工程的需要此次试验OPC D A的远程访问。 网上查阅的资料大部分通过大范围的开放DCOM调用权限来进行OPC DA通讯,通过测试和深入了解发现OPC访问的设置并不复杂,而且可以通过针对性的配置降低安全风险。 试验硬件: 局域网; 架设C(客户端)电脑和S(服务器)电脑; 保证两台PC相互ping 通; 试验软件: KEPserverEX V6(OPC客户端)安装于客户端电脑; Applicom console (OPC服务器)安装于服务器电脑;(只支持OPC DA) 关键设置: 1、用户配置(C和S都要配置) 2、防火墙配置(开启防火墙的PC需要配置) 3、本地电脑的DCOM配置(C和S均需要配置) 4、OPC服务器程序的DCOM配置(仅S需要配置) 一、创建用户账户 在C和S 上分别创建一个拥有管理员权限的同名同密码账号,例如:PMI; 要进行OPC D A远程接,C必须使用该账户登录系统,通过配置S可以以该账户登录系统。 二、配置防火墙 一般防火墙默认情况是开启的,如果C和S都不开防火墙,可以省略防火墙的配置,建议先关闭防火墙进行连接测试,测试连通后再开启防火墙进行配置。 关于防火墙的配置在最后说明。

三、配置本地电脑的DCOM 运行comexp.msc -32 进入32 位DCOM组建服务界面,一般OPC软件位32 位,如果软件为64 位,运行comexp.msc进入64 位DCOM组件服务界面进行配置。 1、客户端C和服务器S 的DCOM配置 两台电脑均进入组件服务—我的电脑—属性 如下图进行设置:

远程访问OPC服务器设置

远程访问OPC服务器设置 OPC客户端一方面可以访问本机上的OPC服务器,另一方面,它还可以利用微软的DCOM机制,通过网络来访问其它计算机上的OPC服务器,从而达到远程数据连接的目的。访问本地服务器比较简单,只要检索本地的OPC服务器,并配置相应的组(Group)和数据项(Item)即可,通过网络访问时需要考虑较多的网络连接因素,大体上来说大概有如下的几个需要配置的方面(以WINXP Xp2为例): 一. 运行OPC客户端的计算机和运行OPC服务器的计算机需要彼此能互相访问。 1.1要保证其物理连接,也就是网线正确的连接着两台计算机。 1.2在这两台计算机上分别建立同一个账号及密码,比如用户名[opcuser],密码[123456](注 意:用户密码最好不要设置为空),在这两台计算上使用这个账户都可以登录系统。关于增加账号及密码请参考对应Windows操作系统的帮助文档。 1.3启用各自Windows操作系统的Guest权限。 完成上面几步后,应该达到的效果是:从任何一台计算机搜索另一台计算机,都可以搜索到,并且可以访问对方计算机的共享目录及共享打印机等资源。如下图: 即便用户没有共享任何东西,也会显示空的共享文件夹,而不会产生诸如”不能访问”

等信息。 如果不能访问对方的计算机,首先用ping命令来保证网络的连通,如果必要的情况下,可以关闭这两台计算机的防火墙(无论是winxp xp2自带的防火墙还是专用的防火墙)以及杀毒软件,以杜绝可能产生的问题。 如果访问另一台计算机产生”拒绝访问”的错误,可从网络查找相关资源进行解决。 二. 配置OPCServer所在的计算机 2.1 注册OPCEnum.exe。 opcenum.exe是运行在服务器端的用于枚举本机OPC服务器的服务程序,由OPC基金会提供。注册opcenum有如下几种方式:a)将opcenum.exe拷贝到系统目录下,然后用命令行运行opcenum /regserver 来注册它。b)安装一些OPC服务器程序时会自动安装并注册这个服务程序,比如iconics的模拟OPC服务器程序。c)运行OPC基金会的OPC Core Redistributable安装包,其中包含必要的模块程序。 考虑到远程访问OPC服务器应用较少,以及opcenum.exe对一般用户在系统安全方面带来的混淆,在HMIBuilder中的OPC服务器本身不带OPCEnum.exe,用户根据自己的需要自行注册。 2.2 配置本机的DCOM安全 2.2.1 在命令行运行dcomcnfg,如下图: 产生配置界面如下:

电能表中通讯接口电路的设计以及实现

电能表中通讯接口电路的设计以及实现 /h1 随着电力和电子产业的蓬勃发展,及用户和电力公司对电能表的要求愈来愈高,电能表作为用户和电力公司交易平台,其作用至关重要。电能表作为衡量电能的计量仪器,其技术性要求很高,既要求精确、更要求稳定,并保证长期可靠运行,并且随着我国电力市场的逐步建立和完善,电力系统越来越复杂,作为电力系统重要组成部分的电能表受到了越来越多的关注。为了满足各方面的需求,电能表设计也朝着复费率、精确计量、智能化和网络化的方向发展,在工业用户的电力系统中,电能表从性能上还要满足恶劣的工作环境,电压高、电流大、负荷重等条件。但我国早先普遍使用的感应式电表存在精度差、功耗大、受谐波影响大等问题,在用电计费上给国家带来了很大的损失。随着电子技术发展和现代电力应用,电能表专用计量芯片如ATT7022B、A TT7022C也随即而出,从某种程度上提高了电能计量精度,简化了电度表设计结构,功能上也得到了更多的扩展。但是为了提高电力管理部门工作效率,实现远程控制、自动抄表等,那么高精度智能电能表才是今后市场的迫切所需。 本系统采用专用计量芯片来检测电信号,配以微控制器(MCU)编程实现多种功能。检测部分由精密电流互感器、电压互感器和外围处理电路组成,从而得到电流、电压、频率、相位等电网的实时参数,经计量芯片ATT7022B处理,并使用FPGA实现其通信,将计量得到各种电网参数进行处理和相应的存储,最后通过液晶显示屏显示或通过通信模块(RS-485或红外)进行远程通信和红外抄表。

1.SPI通信接口 本论文设计的SPI接口电路连接可以参考图1,ATT7022B的SPI通信格式是相同的,8位地址,24位数据,MSB在前,LSB在后。CS为片选,允许访问串口的控制线,CS由高电平变为低电平是表示SPI操作开始,CS由低电平变为高电平时表示SPI操作结束,所以每次操作SPI 时CS必须出现下降沿,CS出现上升沿时表示SPI操作结束;DIN为串行数据输入,用于把用户的数据(如数据/命令/地址等)传输到ATT7022B;DOUT为串行数据输出,用于从ATT7022B寄存器读出数据;SCLK为串行时钟,控制数据移出或移入时串行口的传输率,上升沿放数据,下降沿取数据。SCLK下降沿时将DIN上的数据采样到ATT7022B中,SCLK上升沿时将ATT7022B的数据放置于DOUT上输出。 SPI读操作时序图如图2。ATT7022B的计量参数以及校表参数寄存器是通过SPI 提供给外部FPGA来进行处理。 其命令格式为 7 6 5 4 3 2 1 0 Bit7:0表示读命令,用于读取A TT70 22B的计量及校表寄存器。

OPC 连接名 配置

用SIMATIC NET通过ETHERNET 建立OPC 服务器与S7 PLC 的S7 连接 1.OPC 服务器与PLC S7 连接通讯的组态 步骤一:配置PC 站的硬件机架 当SIMATIC NET 软件成功安装后,在PC 机桌面上可看到Station Configurator 的快捷 图标,同时在任务栏(Taskbar)中也会有Station Configuration Editor 的图标。 图1: Station Configurator 桌面快捷图标 图2:任务栏中的图标 1) 通过点击图标打开Station Configuration Editor 配置窗口

2) 选择一号插槽,点击Add 按钮或鼠标右键选择添加,在添加组件窗口中选择OPC Server 点击OK 即完成。 2) 同样方法选择三号插槽添加IE General

插入IE General 后,即弹出其属性对话框。点击Network Properties,进行网卡参数配置 4) 网卡的配置 点击Network Properties 后,WINDOWS 网络配置窗口即打开,选择本地连接属性菜单设置网卡参数,如IP 地址,子网掩码等。 5) 分配PC Station 名称 点击“Station Name”按钮,指定PC 站的名称,这里命名为PCStation。点击“OK”确认即完成了PC 站的硬件组态

步骤二:配置控制台(Configuration Console)的使用与设置 1) 配置控制台(Configuration Console)是组态设置和诊断的核心工具,用于PC 硬件组件和PC 应用程序的组态和诊断。 2) 正确完成PC 站的硬件组态后,打开配置控制台(start→simatic→simatic net→Configuration console),可以看到所用以太网卡的模式已从PG mode 切换到Configuration mode,插槽号(Index)也自动指向3。

OPC通讯接口设计

神龙汽车成都四厂 焊装制造执行系统FMES 详细设计书 施耐德电气(中国)有限公司 2015年8月25日 版本:A

第一章引言 1.1编写目的 本说明书在需求分析的基础上,对神龙汽车四厂焊装制造执行系统FMES的各个功能模块的实现,以及系统管理界面UI和数据库的设计进行了说明。程序开发人员应参考本说明进行代码的编写和测试。 1.2背景 系统的名称:神龙汽车四厂焊装制造执行系统FMES 任务提出者:神龙汽车有限公司成都分公司 系统开发者:施耐德电气(中国)有限公司 本系统完成后,在神龙汽车有限公司成都四厂进行安装部署和投入使用,该项目总体目标应达成以下要求: 1.实现ANDON管理模式,实施生产可视化、停线和响声管理; 2.对现场发生事件的统计分析,以便持续改善; 3.对现场各类设备(输送、工艺和机器人)的实时监控; 4.实现车间车身和载具的详细跟踪; 5.实现各分装区的生产管理; 6.实现与自动化和管理系统的通讯; 7.实现各类统计报表的生成; 1.3定义 1.4参考资料 四厂MES项目招标文件 神龙四厂FMES需求分析报告 工业应用系统与PLC的接口规范 神龙四厂FMES与SPPV系统接口设计规范

第二章系统架构 2.1网络架构 FMES系统布置2台应用服务器,具备热备冗余和负荷均衡功能。通过软件方案keepalived + Heartbeat来实现。 2.2系统功能分解图 2.3任务概述 2.3.1业务需求 2.3.2运行与开发环境 操作系统: 神龙四厂FMES服务器:Windows Server 2008 R2简体中文标准版 开发环境: 微软开发平台C# .net framework 4.0开发版 开发工具:Microsoft Visual Studio 2010 数据库:Microsoft SQL Server 2008 R2 PRO 开发语言:C# 版本控制:SVN UML建模:Enterprise Architect 11 结构图绘制:Microsoft office visio 2007

opc服务器与s7-plcs7连接的建立

一、实验名称:OPC服务器与S7-PLC S7连接的建立 二、实验目的:本试验通过ETHERNET使用OPC技术, 实现matlab与西门子s7300的数据交 换。 三、实验设备 1、硬件要求 S7-300PLC;西门子交换机X208;PC机。 2、软件要求 西门子step7;SIMATIC NET。 四、实验内容及步骤 通过ETHERNET 建立OPC 服务器与S7 PLC 的S7 连接(基于先进的PC组态)。 1、OPC 服务器与PLC S7 连接通讯的组态 步骤一:配置PC 站的硬件机架 当SIMATIC NET 软件成功安装后,在PC机桌面上可看到Station Configurator 的快捷图标,同时在任务栏(Taskbar)中也会有Station Configuration Editor 的图标。 1) 通过点击图标打开Station Configuration Editor 配置窗口 2) 选择一号插槽,点击Add 按钮或鼠标右键选择添加,在添加组件窗口中选择OPCServer 点击OK即完成。

3) 同样方法选择三号插槽添加IE General 图4:添加IE General

插入IE General 后,即弹出其属性对话框。点击Network Properties,进行网卡参数配置。 4) 网卡的配置 点击Network Properties 后,WINDOWS 网络配置窗口即打开,选择本地连接属性菜单设置网卡参数,如IP 地址,子网掩码等。步骤如图6,图7,图8。确认各步设置后,网卡配置完成。 图6: 本地连接

图7:网卡属性选择 图8:分配普通网卡参数

电容式触摸屏的通讯接口设计方案

电容式触摸屏的通讯接口设计方案 随着手机、PDA等便携式电子产品的普及,人们需要更小的产品尺寸和更大的LCD显示屏。受到整机重量和机械设计的限制,人机输入接口开始由传统的机械按键向电阻式触摸屏过渡。2007年iPhone面世并取得了巨大成功,它采用的电容式触摸屏提供了更高的透光性和新颖的多点触摸功能,开始成为便携式产品的新热点,并显现出成为主流输入接口方式的趋势。 一、 Cypress TrueTouch?电容触摸屏方案介绍 Cypress PSoC技术将可编程模拟/数字资源集成在单颗芯片上,为感应电容式触摸屏提供了TrueTouch?解决方案,它涵盖了从单点触摸、多点触摸识别手势到多点触摸识别位置的全部领域。配合高效灵活的PSoC Designer 5.0 开发环境,Cypress TrueTouch?方案正在业界获得广泛的应用。 图1是Cypress TrueTouch?方案中经常使用的轴坐标式感应单元矩阵的图形,类似于触摸板,将独立的ITO 感应单元串联在一起可以组成Y 轴或X 轴的一个感应单元,行感应单元组成Y 轴,列感应单元组成X 轴,行和列在分开的不同层上。多点触摸识别位置方法是基于互电容的触摸检测方法(行单元上加驱动激励信号,列单元上进行感应,有别于激励和感应的是同一感应单元的自电容方式),可以应用于任何触摸手势的检测,包括识别双手的10 个手指同时触摸的位置(图2)。它通过互电容检测的方式可以完全消除“鬼点”,当有多个

触摸点时,仅当某个触摸点所在的行感应单元被驱动,列感应单元被检测时,才会有电容变化检测值,这样就可以检测出多个行 / 列交*处触摸点的绝对位置。 图1 轴坐标式感应单元矩阵的图形

AB PLC通过OPC方式通讯的连接方法

AB PLC通过OPC方式通讯的连接方法 Rockwell Automation 的A-B PLC是一个著名的可编程控制器产品。其产品体系基本上涵盖了工业控制产品的各个领域,由于A-B的PLC的种类繁多,且各种类型的PLC支持的通信协议不尽相同,使得第三方的HMI软件都不能很好的与A-B PLC进行连接。RSLinx软件是A-B PLC通用的通信配置软件(2.2以上的版本支持对以太网的网关配置),目前主要有以下几个版本:RSLinx OEM、RSLinx Professional 、RSLinx Gateway、RSLinx SDK四个版本。且均支持OPC服务(2.3版以上支持OPC2.0版)。 多数上位机软件已内嵌了OPC服务功能,支持OPC客户端和OPC服务器的工作方式。这样就可以很方便的与A-B PLC进行通信。具体的配置方法如下: 与A-B PLC进行OPC的配置是必须要有A-B PLC及相关的通讯附件。 1、安装A-B PLC 、通讯卡、相关的软件,并作物理连接。 2、使用RSLinx连接A-B PLC的通讯网络。 配置通讯卡(参加图1),选择ConFigure Drivers。 图1 弹出入下的配置窗口(参见图2)。

图2 选择对应的通讯卡,并进行端口配置(可参照附带的安装手册),配置成功后将显示所配置的设备的运行状态。 使用RSWho命令查找连接的PLC设备(参见图3)。 参见图3 RSWho命令成功的执行后,将在设备列表中列出与本机连接的所有硬设备(参见图4)。

图4 使用Topic Configoration来进行OPC服务的配置(参见图5)。 图5 在Date Source配置框中配置Topic,选择一个物理设备(PLC),按New按钮即可建立一个Topic,在DATA SOURCE中选中你所要连接的物理设备,选中后,单击Done即可(参见图6)。

OPC服务器开发的几种方法

OPC服务器开发的几种方法 陈丹丹钱美夏立邵英 (武汉海军工程大学 湖北 武汉 430033) 摘要:简要介绍了OPC DA规范,描述了OPC DA(数据访问)服务器开发的三种方法:使用MFC的COM库函数开发OPC服务器、通过ATL开发OPC服务器和利用工具包快速开发OPC服务器,最后对三种方法的特点作出了比较。 关键词:OPC;ATL;服务器开发 Abstract: Simply describe the OPC DA specification ,then three Methods of server model design based on OPC DA(Data Access) specification are introduced. The three methods are using MFC ATL and the fast developmentToolkit to develop OPC server.At last, compare the characteristics of three methods . Key words: OPC;ATL;Server development 1.引言: OPC DA (OPC 数据访问规范)是OPC基金会最早发布的一个工业标准,主要是对现场设备的在线数据进行存取,目前已经发展到OPC DA 3.0版本。OPC基于微软的OLE/COM原理,采用客户/服务器模式。OPC 数据访问服务器主要由服务器对象、组对象和项对象组成。OPC 服务器对象维护服务器的有关信息并包容OPC组对象,可以动态的创建或释放组对象;而OPC 组对象维护有关其自身的信息并包容OPC项,逻辑上管理OPC项;OPC项则标识了与OPC服务器中数据的连接。OPC项不可以由OPC客户直接操作,所有对OPC项的操作都是通过包容该项的OPC组对象进行的。而OPC服务器对象和组对象是聚合关系,即OPC服务器对象产生OPC组对象后,将组对象的指针传递给客户,由客户之间操作对象。这样既提高了数据存取的速度也易于功能扩展,体现了组件软件的重用性。 它支持COM技术的双向通信机制,具有事件驱动功能,当OPC服务器的数据发生变化时它能自动通知OPC客户。在OPC1.0规范中事件驱动使用的是COM的通报连接机制,在OPC2.0规范中又增加了对连接点的支持。而一般的数据采集应用程序,从数据源读数据是主动的,相当于客户主动访问服务器的数据。这就要求客户不断地查询服务器的数据,不管服务器的数据是否发生了变化,增加了系统的开销。因此OPC DA的效率大大高于一般的数据采集应用程序。 2.OPC 服务器开发概述 OPC 服务器的设计与实现是一个较为复杂与繁重的任务,设计者需要有很高的编程水平,熟悉OPC规范,同时也必须掌握相应的硬件产品特性。OPC 数据服务器大致可以分解为不同的功能模块:OPC 对象接口管理,Item 数据项管理以及服务器界面和设置等[1]如图1。 图1.OPC服务器结构图 一个设备的OPC服务器主要由两部分组成,OPC标准接口的实现和与硬件设备的通信。OPC服务器的开发必须以OPC规范为基础,实现各个对象及其接口。下面将就OPC标准接口

工控系统中的RS485通讯接口设计

工控系统中的RS485通讯接口设计 在工业控制、采集等现场应用中,非常普遍地都会使用到RS485、CAN等通讯接口。同时这类通讯线缆连接的两个设备相隔距离又比较远(最长的距离会达到1公里以上)、设备工作环境也比较恶劣(机器机房、山区、电站)。所以,如此长的通讯线缆,会有效的把系统外的干扰信号或电磁脉冲接收 到板子上。如果没有对这部分信号进行处理,这些有害的信号则有可能使系统运行出错,严重的会导致 系统物理损坏。在山区雷雨季节,雷电辐射电流会通过通讯线缆直接导致系统损坏。所以,需要对这类 通讯接口进行物理隔离,达到保护系统正常运行的要求。 最基本的设计思路,可以参考下面的说明: 1、电路设计 由于通讯接口要连接较长的通讯线缆,所以通讯接口在系统中,就是主要的干扰源输入端口。在电 路设计的时候,需要把这部分电路完全物理隔离开,包括这部分的工作电源,同时端口驱动芯片也需要 选用有一定防护能力器件(如SN74LBC184,接触放电:+/-30KV 空隙放电:+/-15KV 人体放电: +/-15KV)。 在电气隔离方面,最常用的电路设计方法就是使用光电隔离器件(或磁耦器件),将系统中的信号 进行物理隔离后,传输给端口驱动器件,同时必须给端口驱动部分提供独立的电源(单独使用一个电源、或者是使用隔离电源)。如下图所示:

上图中,串口通讯信号经过关电隔离器件H11L1后,连接到RS485驱动器件SN75LBC184器件上,同时RS485驱动器件的收/发控制信号RTS,也经过光电隔离器件TL181。图纸中的ISO_VCC及 ISO_GND地线是一组电源,5V0及GND是一组电源,这两组电源是物理隔离的。经过这样设计,串口的收、发信号、控制信号和电源,全部都达到了物理隔离的要求。 2、光电隔离器参数 由于每颗光电隔离器都有它的工作参数,如数据传输率、输入二极管正向电流IF、输出电流等IC, 它们决定了光电隔离器的工作状态与稳定性。 如TLP181的推荐工作参数:

局域网内远程连接OPC配置方法详解

局域网内远程连接O P C 配置方法详解 The manuscript was revised on the evening of 2021

一.运行环境 OPC服务器操作系统:Win7,客户端操作系统:Win7,如果是XP系统则配置方法类似(见后面)。 由于OPC(OLE for Process Control)建立在Microsoft的COM(Component Object Model)组件对象模型基础上,并且OPC的远程通讯依赖Microsoft的DCOM(Distribute COM),安全方面则依赖Microsof的Windows安全设置。 二.配置 (配置前先对注册表备份,特别是关键的几个项单独导出 HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\DCOM和 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Ole) 1.保持OPC Server服务器与客户端的用户名密码相同。(服务器端与客户端) 分别在客户端和服务端上添加相同的账户名和密码,一定要确保相同。因为访问是通过windows验证的,在远程访问时需要有着相同的账户和密码。操作如下: 若是为了安全考量,请保持密码不为空。要想使新创建的用户有使用DCOM的权限,需要将用户加入“Distribute COM Users”用户组。 2.关闭防火墙或在防火墙设置中将相应的程序和端口加入到例外(服务器端与客户端)

服务器端的防火墙设置中OPC服务器软件端口例外 3.组件服务配置(服务器端) 操作:开始--》运行--》输入:dcomcnfg 在“组件服务”管理器的左侧树形菜单,选择“组件服务\计算机\我的电脑”,在鼠标右键的弹出菜单,选择“属性”项目,在弹出的“我的电脑属性”,选择“默认属性”标签页,如下图: 注意,若“我的电脑”显示红色向下箭头,右键无“属性”项,处理如下: a.在运行中输入msdtc –resetlog; b.在命令行下运行 msdtc -uninstall,删除了 msdtc(Distributed Transaction Coordinator)服务 c.重新启动机器后,在命令行下运行 msdtc -install,安装 msdtc 服务。

opc服务器

Opc 1、在控制领域中,系统往往由分散的各子系统构成;并且各子系统往往采用不同厂家的设备和方案。用户需要,将这些子系统集成,并架构统一的实时监控系统。 2、这样的实时监控系统需要解决分散子系统间的数据共享,各子系统需要统一协调相应控制指令。 3、再考虑到实时监控系统往往需要升级和调整。 4、就需要各子系统具备统一的开放接口。 5、OPC(OLE for Process Control) 规范正是这一思维的产物。 6、OPC 基于Microsoft公司的Distributed interNet Application (DNA) 构架和Component Object Model (COM) 技术的,根据易于扩展性而设计的。OPC规范定义了一个工业标准接口。 7、OPC是以OLE/COM机制作为应用程序的通讯标准。OLE/COM是一种客户/服务器模式,具有语言无关性、代码重用性、易于集成性等优点。OPC规范了接口函数,不管现场设备以何种形式存在,客户都以统一的方式去访问,从而保证软件对客户的透明性,使得用户完全从低层的开发中脱离出来。 8、OPC定义了一个开放的接口,在这个接口上,基于PC的软件组件能交换数据。它是基于Windows的OLE——对象链接和嵌入、COM——部件对象模型(Comp onent Object Model)和DCOM——分布式COM(Distributed COM)技术。因而,OP C为自动化层的典型现场设备连接工业应用程序和办公室程序提供了一个理想的方法。 OPC应用领域 1、工控解决方案用户 2、楼控解决方案用户 3、工控解决方案厂商 4、楼控解决方案厂商 5、工控解决方案集成商 6、楼控解决方案集成商 7、All Automation Fields OPC是为了连接数据源(OPC服务器)和数据的使用者(OPC应用程序)之间的软件接口标准。数据源可以是PLC,DCS,条形码读取器等控制设备。随控制系统构成的不同,作为数据源的OPC服务器即可以是和OPC应用程序在同一台计算机上运行的本地OPC服务器,也可以是在另外的计算机上运行的远程OPC服务器。 OPC接口既可以适用于通过网络把最下层的控制设备的原始数据提供给作为数据的使用者(OPC应用程序)的HMI(硬件监督接口)/SCADA(监督控制与数据采集),批处理等自动化程序,以至更上层的历史数据库等应用程序,也可以适用于应用程序和物理设备的直接连接。所以OPC接口是适用于很多系统的具有高厚度柔软性的接口标准。

微机原理与接口技术课程设计(串行通讯)

一、设计意义 在信息飞速发展的时代,计算机的应用越来越广泛。而微机原理是机械工业控制设备的理论基础,学好了就能在激烈的竞争环境中找到一份好一点的工作。理论课程学习是让学生学习基本理论知识,对课程内容和原理有比较深刻的理解,只要从理论上理解,不用考虑实际的可行性。通过本次课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程,不仅需要在理论上能实现而且还要考虑实际的可行性,不能纸上谈兵。 二、设计目的 1、了解串行通信的基本原理。 2、掌握串行接口芯片8251的工作原理。 3、掌握8251芯片的编程方法。 4、了解8253的初始化。 5、巩固和加深在微机原理课程中所学的理论知识。通过课程设 计加深理解课堂教学内容,掌握计算机接口技术的基本应用方法。 6、学会查阅相关手册与资料,培养独立分析与解决问题能力。 三、设计环境 PC机一台,串行通讯接口芯片8251A一片,8253一片。TC-1集成开发环境实验箱一台。 四、设计题目及要求 4.1 设计题目 串行通讯

4.2 设计要求 设计一个串行通信系统,用软件编程和硬件实验来实现。具体要求: 用8253芯片作为计数器,用于产生8251的发送和接受时钟。TXD和RXD连在一起。 从PC机的键盘输入一个字符,将其ASCII码加1后发送出去,在接受回来在屏幕上显示,实现自发自收。 8251的控制端口地址为2B9H ,数据口地址为2B8H. 8253计数器的计算初值=时钟频率/(波特率*波特率因子),这里的时钟频率接1MHZ,波特率若选1200,波特因子若选16,则计数器初值为52。 收发采用查询方式。 五、设计原理 5.1.8251A的基本性能 8251A是可编程的串行通信接口芯片,基本性能: 1.两种工作方式:同步方式,异步方式。同步方式下,波特率为064K,异步方式下,波特率为0~19.2K。 2.同步方式下的格式 每个字符可以用5、6、7或8位来表示,并且内部能自动检测同步字符,从而实现同步。除此之外,8251A也允许同步方式下增加奇/偶校验位进行校验。 3.异步方式下的格式

ABLC通过OPC方式通讯的连接方法

A B L C通过O P C方式 通讯的连接方法 集团标准化办公室:[VV986T-J682P28-JP266L8-68PNN]

AB PLC通过OPC方式通讯的连接方法 Rockwell Automation 的A-B PLC是一个着名的可编程控制器产品。其产品体系基本上涵盖了工业控制产品的各个领域,由于A-B的PLC的种类繁多,且各种类型的PLC支持的通信协议不尽相同,使得第三方的HMI软件都不能很好的与A-B PLC进行连接。RSLinx软件是A-B PLC通用的通信配置软件以上的版 本支持对以太网的网关配置),目前主要有以下几个版本:RSLinx OEM、 RSLinx Professional 、RSLinx Gateway、 RSLinx SDK四个版本。且均支持OPC服务版以上支持版)。 多数上位机软件已内嵌了OPC服务功能,支持OPC客户端和OPC服务器的工作方式。这样就可以很方便的与A-B PLC进行通信。具体的配置方法如下: 与A-B PLC进行OPC的配置是必须要有A-B PLC及相关的通讯附件。 1、安装A-B PLC 、通讯卡、相关的软件,并作物理连接。 2、使用RSLinx连接A-B PLC的通讯网络。 配置通讯卡(参加图1),选择ConFigure Drivers。 图1 弹出入下的配置窗口(参见图2)。

图2 选择对应的通讯卡,并进行端口配置(可参照附带的安装手册),配置成功后将显示所配置的设备的运行状态。 使用RSWho命令查找连接的PLC设备(参见图3)。 参见图3 RSWho命令成功的执行后,将在设备列表中列出与本机连接的所有硬设备(参见图4)。

PCS7远程访问OPC服务器设置

OPC服务器设置 OPC客户端一方面可以访问本机上的OPC服务器,另一方面,它还可以利用微软的DCOM机制,通过网络来访问其它计算机上的OPC服务器,从而达到远程数据连接的目的。访问本地服务器比较简单,只要检索本地的OPC服务器,并配置相应的组(Group)和数据项(Item)即可,通过网络访问时需要考虑较多的网络连接因素,大体上来说大概有如下的几个需要配置的方面(以WINXP Xp2为例): 一. 运行OPC客户端的计算机和运行OPC服务器的计算机需要彼此能互相访问。 1.1要保证其物理连接,也就是网线正确的连接着两台计算机。 1.2在这两台计算机上分别建立同一个账号及密码,比如用户名[opcuser],密码[123456](注 意:用户密码最好不要设置为空),在这两台计算上使用这个账户都可以登录系统。关于增加账号及密码请参考对应Windows操作系统的帮助文档。 1.3启用各自Windows操作系统的Guest权限。 完成上面几步后,应该达到的效果是:从任何一台计算机搜索另一台计算机,都可以搜索到,并且可以访问对方计算机的共享目录及共享打印机等资源。如下图: 即便用户没有共享任何东西,也会显示空的共享文件夹,而不会产生诸如”不能访问”

等信息。 如果不能访问对方的计算机,首先用ping命令来保证网络的连通,如果必要的情况下,可以关闭这两台计算机的防火墙(无论是winxp xp2自带的防火墙还是专用的防火墙)以及杀毒软件,以杜绝可能产生的问题。 如果访问另一台计算机产生”拒绝访问”的错误,可从网络查找相关资源进行解决。 二. 配置OPCServer所在的计算机 2.1 注册OPCEnum.exe。 opcenum.exe是运行在服务器端的用于枚举本机OPC服务器的服务程序,由OPC基金会提供。注册opcenum有如下几种方式:a)将opcenum.exe拷贝到系统目录下,然后用命令行运行opcenum /regserver 来注册它。b)安装一些OPC服务器程序时会自动安装并注册这个服务程序,比如iconics的模拟OPC服务器程序。c)运行OPC基金会的OPC Core Redistributable安装包,其中包含必要的模块程序。 考虑到远程访问OPC服务器应用较少,以及opcenum.exe对一般用户在系统安全方面带来的混淆,在HMIBuilder中的OPC服务器本身不带OPCEnum.exe,用户根据自己的需要自行注册。 2.2 配置本机的DCOM安全 2.2.1 在命令行运行dcomcnfg,如下图: 产生配置界面如下:

通讯接口RS485的EMC设计方案

通讯接口RS485的电磁兼容设计方案 -----本方案由电磁兼容设计平台(EDP)软件自动生成 一.原理图设计方案 1. RS485接口6KV防雷电路设计方案 图1 RS485接口防雷电路 接口电路设计概述: RS485用于设备与计算机或其它设备之间通讯,在产品应用中其走线多与电源、功率信号等混合在一起,存在EMC隐患。 本方案从EMC原理上,进行了相关的抑制干扰和抗敏感度的设计,从设计层次解决EMC 问题。 电路EMC设计说明: (1)电路滤波设计要点: L1为共模电感,共模电感能够对衰减共模干扰,对单板内部的干扰以及外部的干扰都能抑制,能提高产品的抗干扰能力,同时也能减小通过429信号线对外的辐射,共模电感阻抗选择范围为120Ω/100MHz ~2200Ω/100MHz,典型值选取1000Ω/100MHz; C1、C2为滤波电容,给干扰提供低阻抗的回流路径,能有效减小对外的共模电流以同时对外界干扰能够滤波;电容容值选取范围为22PF~1000pF,典型值选取100pF;若信号线对金属外壳有绝缘耐压要求,那么差分线对地的两个滤波电容需要考虑耐压;当电路上有多个节点时要考虑降低或去掉滤波电容的值。 C3为接口地和数字地之间的跨接电容,典型取值为1000pF, C3容值可根据测试情况进行调整;

(2)电路防雷设计要点: 为了达到IEC61000-4-5或GB17626.5标准,共模6KV,差摸2KV的防雷测试要求,D4为三端气体放电管组成第一级防护电路,用于抑制线路上的共模以及差模浪涌干扰,防止干扰通过信号线影响下一级电路;气体放电管标称电压VBRW要求大于13V,峰值电流IPP要求大于等于143A;峰值功率WPP要求大于等于1859W; PTC1、PTC2为热敏电阻组成第二级防护电路,典型取值为10Ω/2W;为保证气体放电管能顺利的导通,泄放大能量必须增加此电阻进行分压,确保大部分能量通过气体放电管走掉; D1~D3为TSS管(半导体放电管)组成第三级防护电路,TSS管标称电压VBRW要求大于8V,峰值电流IPP要求大于等于143A;峰值功率WPP要求大于等于1144W; 接口电路设计备注: 如果设备为金属外壳,同时单板可以独立的划分出接口地,那么金属外壳与接口地直接电气连接,且单板地与接口地通过1000pF电容相连; 如果设备为非金属外壳,那么接口地PGND与单板数字地GND直接电气连接。 二. PCB设计方案 1. RS485接口电路布局 图1 RS485接口滤波及防护电路布局 方案特点: (1)防护器件及滤波器件要靠近接口位置处摆放且要求摆放紧凑整齐,按照先防护后滤波的规则,走线时要尽量避免走线曲折的情况; (2)共模电感与跨接电容要置于隔离带中。 方案分析: (1)接口及接口滤波防护电路周边不能走线且不能放置高速或敏感的器件;

局域网内远程连接OPC配置方法详解

Win7系统局域连接OPC配置 一.运行环境 OPC服务器操作系统:Win7,客户端操作系统:Win7,如果是XP系统则配置方法类似(见后面)。 由于OPC(OLE for Process Control)建立在Microsoft的COM(Component Object Model)组件对象模型基础上,并且OPC的远程通讯依赖Microsoft的DCOM(Distribute COM),安全方面则依赖Microsof的Windows安全设置。 二.配置 (配置前先对注册表备份,特别是关键的几个项单独导出 HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\DCOM和 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Ole) 1.保持OPC Server服务器与客户端的用户名密码相同。(服务器端与客户端) 分别在客户端和服务端上添加相同的账户名和密码,一定要确保相同。因为访问是通过windows验证的,在远程访问时需要有着相同的账户和密码。操作如下: 若是为了安全考量,请保持密码不为空。要想使新创建的用户有使用DCOM的权限,需要将用户加入“Distribute COM Users”用户组。 2.关闭防火墙或在防火墙设置中将相应的程序和端口加入到例外(服务器端与客户端) 服务器端的防火墙设置中OPC服务器软件端口例外

3.组件服务配置(服务器端) 操作:开始--》运行--》输入:dcomcnfg 在“组件服务”管理器的左侧树形菜单,选择“组件服务\计算机\我的电脑”,在鼠标右键的弹出菜单,选择“属性”项目,在弹出的“我的电脑属性”,选择“默认属性”标签页,如下图: 注意,若“我的电脑”显示红色向下箭头,右键无“属性”项,处理如下: a.在运行中输入msdtc–resetlog; b.在命令行下运行msdtc -uninstall,删除了msdtc(Distributed Transaction Coordinator)服务 c.重新启动机器后,在命令行下运行msdtc -install,安装msdtc服务。

微机原理与接口技术课程设计(串行通讯)

微机原理与接口技术课程设计(串行通讯)

一、设计意义 在信息飞速发展的时代,计算机的应用越来越广泛。而微机原理是机械工业控制设备的理论基础,学好了就能在激烈的竞争环境中找到一份好一点的工作。理论课程学习是让学生学习基本理论知识,对课程内容和原理有比较深刻的理解,只要从理论上理解,不用考虑实际的可行性。通过本次课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程,不仅需要在理论上能实现而且还要考虑实际的可行性,不能纸上谈兵。 二、设计目的 1、了解串行通信的基本原理。 2、掌握串行接口芯片8251的工作原理。 3、掌握8251芯片的编程方法。 4、了解8253的初始化。 5、巩固和加深在微机原理课程中所学的理论知识。通过课程设 计加深理解课堂教学内容,掌握计算机接口技术的基本应用方法。 6、学会查阅相关手册与资料,培养独立分析与解决问题能力。 三、设计环境 PC机一台,串行通讯接口芯片8251A一片,8253一片。TC-1集成开发环境实验箱一台。 四、设计题目及要求 4.1 设计题目 2

串行通讯 4.2 设计要求 设计一个串行通信系统,用软件编程和硬件实验来实现。 具体要求: 用8253芯片作为计数器,用于产生8251的发送和接受时钟。TXD和RXD连在一起。 从PC机的键盘输入一个字符,将其ASCII码加1后发送出去,在接受回来在屏幕上显示,实现自发自收。 8251的控制端口地址为2B9H ,数据口地址为2B8H. 8253计数器的计算初值=时钟频率/(波特率*波特率因子),这里的时钟频率接1MHZ,波特率若选1200,波特因子若选16,则计数器初值为52。 收发采用查询方式。 五、设计原理 5.1.8251A的基本性能 8251A是可编程的串行通信接口芯片,基本性能: 1.两种工作方式:同步方式,异步方式。同步方式下,波特率为064K,异步方式下,波特率为0~19.2K。 2.同步方式下的格式 每个字符可以用5、6、7或8位来表示,并且内部能自动检测同步字符,从而实现同步。除此之外,8251A也允许同步方式下增加奇/偶校验位进行校验。 3

相关文档
最新文档