《控制装置标准化通信 OPC服务器开发设计与应用》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:陆会明,朱耀春等编著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2010
  • ISBN:9787111306856
  • 页数:432 页
图书介绍:本书从应用角度出发,对当前自动化控制领域的OPC标准化通信技术进行了全面、系统的阐述。本书的特点是基于OPC数据访问服务器的开发、测试及应用,介绍OPC等内容。

第1章 引言 1

1.1 OPC概述 1

1.1.1 OPC技术产生的背景 1

1.1.2 OPC如何解决问题 4

1.2 OPC规范简介 6

1.2.1 OPC规范 6

1.2.2 OPC数据存取规范的发展历程 7

1.2.3 OPC数据存取规范3.0版的优点 7

1.2.4 OPC数据存取规范3.0版服务器 8

1.3 OPC程序开发的必要性 9

1.4 本书内容概述 9

第2章 OPC的技术基础——COM 11

2.1 COM概述 11

2.1.1 COM对象 11

2.1.2 COM接口 12

2.1.3 COM对象的标识——CLSID 12

2.1.4 COM接口特性 13

2.2 接口描述语言 13

2.2.1 IDL概述 13

2.2.2 IUnknown接口 14

2.3 COM的结构 14

2.3.1 客户端/服务器模型 15

2.3.2 COM库 15

2.4 COM的实现 16

2.4.1 进程内组件和进程外组件 16

2.4.2 COM对象的管理 18

2.5 类厂 19

2.6 COM扩展 19

2.6.1 可连接对象 19

2.6.2 分布式组件对象模型 20

2.6.3 自动化对象 21

2.6.4 COM小结 21

2.7 OPC规范 21

2.7.1 OPC规范介绍 21

2.7.2 OPC数据存取规范一览 23

2.7.3 OPC数据存取规范简介 25

2.7.4 OPC数据存取规范的基础信息 26

2.7.5 OPC服务器对象及其接口 28

2.7.6 OPC组对象及其接口 32

2.7.7 OPC客户端接口简介 36

2.7.8 OPC数据存取规范总体分析 37

2.8 OPC数据存取对象与接口分析 38

2.8.1 OPC服务器对象及其接口 39

2.8.2 OPC组对象及其接口 39

2.8.3 OPC DA 3.0版规范接口简介 41

2.8.4 OPC 3.0版客户端接口变化 42

第3章 OPC数据存取服务器开发流程与测试 43

3.1 引言 43

3.2 设计基础 43

3.3 ATL介绍 45

3.3.1 ATL对组件的支持 48

3.3.2 ATL对组件对象的宿主组件程序的支持 50

3.3.3 基于VC++ 6.0使用ATL设计COM组件示例 52

3.4 开发准备工作 60

3.4.1 关于ATL与WTL 61

3.4.2 OPC数据存取服务器3.0版的特点 61

3.5 OPC数据存取服务器3.0版总体分析 62

3.5.1 OPC数据存取服务器3.0版的基本结构 62

3.5.2 OPC数据存取服务器3.0版对象与接口分析 62

3.6 OPC数据存取服务器3.0版概要设计 63

3.6.1 总体设计结构 63

3.6.2 OPC对象与接口 63

3.6.3 服务器地址空间及数据管理 63

3.6.4 用户界面 64

3.6.5 硬件驱动程序部分 64

3.7 OPC数据存取服务器3.0版详细设计 64

3.7.1 准备工作 64

3.7.2 OPC对象与接口的添加 65

3.7.3 OPC项对象类COPCItem 66

3.7.4 OPC服务器地址空间管理类COPCAddressSpaceMgt 70

3.7.5 OPCServer对象 73

3.7.6 OPCGroup对象 94

3.7.7 后台线程 123

3.7.8 设备驱动程序与服务器之间的接口 124

3.7.9 服务器的注册 125

第4章 OPC服务器演示程序开发流程解析 131

4.1 演示程序OPCServer对象定义 131

4.1.1 IOPCCommon接口 131

4.1.2 IOPCServer 132

4.1.3 IOPCBrowse 132

4.1.4 IOPCItemIO 132

4.1.5 IConnectionPointContainer 132

4.2 OPC Group对象定义 133

4.2.1 IOPCGroupStateMgt 133

4.2.2 IOPCGroupStateMgt2 133

4.2.3 IOPCAsyncIO2 134

4.2.4 IOPCAsyncIO3 134

4.2.5 IOPCItemMgt 135

4.2.6 IOPCItemDeadbandMgt 135

4.2.7 IOPCItemSamplingMgt(可选) 135

4.2.8 IConnectionPointContainer 136

4.2.9 IOPCSyncIO 136

4.2.10 IOPCSyncIO2 136

4.2.11 IEnumOPCItemAttributes 136

4.3 用于客户端的回调定义 137

4.3.1 IOPCDataCallback 137

4.3.2 IOPCShutdown 137

4.4 OPC服务器的设计及初步实现 138

4.5 OPC服务器的编程实现 139

4.6 OPC服务器的类实现 147

4.7 OPC服务器的异步通信实现 154

4.8 OPC服务器的浏览地址空间实现 159

4.9 OPC服务器的注册 172

第5章 OPC数据存取自动化服务器 174

5.1 引言 174

5.1.1 概述 174

5.1.2 开发目的 174

5.2 OPC数据存取自动化包装DLL的基本构架 175

5.2.1 功能需求 175

5.2.2 OPC数据存取自动化包装DLL的对象模型 175

5.3 OPC数据存取自动化包装DLL的详细设计 176

5.3.1 准备工作 176

5.3.2 OPC自动化对象与接口的添加 176

5.3.3 OPCServer对象 177

5.3.4 OPCBrowser对象 185

5.3.5 OPCGroups对象 191

5.3.6 OPCGroup对象 196

5.3.7 OPCItems对象 203

5.3.8 OPCItem对象 211

5.4 OPC自动化服务器的测试 215

第6章 OPC客户端程序开发流程解析 216

6.1 OPC客户端程序开发环境 216

6.2 OPC客户端程序(VC++同步) 217

6.3 OPC客户端程序(VC++异步) 233

6.4 OPC客户端程序(VC浏览地址空间) 242

6.5 OPC客户端程序(VB基础篇) 246

6.6 OPC客户端程序(VB同步) 248

6.7 OPC客户端程序(VB异步) 249

6.8 OPC客户端程序(VB浏览地址空间) 252

6.9 客户端程序远程访问OPC Server的DCOM配置 254

6.10 OPC的数据通信方式比较 255

第7章 OPC XML-DA服务器转换开发 257

7.1 引言 257

7.1.1 概述 257

7.1.2 选择gSoap2.7开发工具的原因 257

7.2 OPC XML数据存取服务器总体分析 257

7.3 OPC XML数据存取服务器设计概要 258

7.3.1 总体设计结构 258

7.3.2 OPC XML Web服务接口 259

7.3.3 用户界面 259

7.3.4 硬件驱动程序部分 259

7.4 OPC XML数据存取服务器设计步骤 260

7.4.1 准备工作 260

7.4.2 OPC XML数据存取服务器开发工程环境配置步骤 260

7.4.3 OPC XML数据存取订阅 261

7.4.4 OPC XML数据存取服务器的查找 264

7.4.5 OPC XML数据存取服务器数据结构 264

7.4.6 OPC XML与OPC DA数据类型转换 272

7.4.7 GetStatus 273

7.4.8 Read 276

7.4.9 Write 280

7.4.10 Subscribe 285

7.4.11 SubscriptionPolledRefresh 290

7.4.12 SubscriptionCancel 295

7.4.13 Browse 296

7.4.14 GetProperties 302

附录 306

附录A OPC公共定义及接口 306

A.1 OPC定义基本原则 306

A.1.1 接口定义 306

A.1.2 UNICODE、NT和Win95 306

A.1.3 线程和多任务处理 306

A.2 OPC公用接口 307

A.2.1 定制接口与自动化接口比较 307

A.2.2 必选接口和可选接口比较 307

A.2.3 内存分配 307

A.2.4 空字符串和空指针 308

A.2.5 返回数组 308

A.2.6 错误码和返回码 308

A.3 OPC服务器的切断 309

A.3.1 IConnectionPointContainer 309

A.3.2 IOPCShutdown 309

A.4 IOPCCommon 310

A.5 安装与注册 313

A.5.1 组件类别 313

A.5.2 为代理/存根DLL注册入口 315

A.5.3 创建和注册入口 315

A.5.4 版本协定 316

A.5.5 安装OPC二进制可执行文件 317

A.6 OPC服务器浏览 318

A.6.1 总览 318

A.6.2 用户所需信息 318

A.6.3 服务器程序所需信息 318

A.6.4 客户端程序所需信息 318

A.6.5 IOPCServerList接口参考 318

A.7 OPC Common IDL规范 320

A.8 样本字符串过滤函数 323

A.8.1 MatchPattern 323

A.8.2 注释 326

附录B OPC数据存取定制接口规范3.0版 327

B.1 引言 327

B.1.1 读者对象 327

B.1.2 内容 327

B.2 OPC数据存取基础 328

B.2.1 OPC一览 328

B.2.2 OPC适用于什么地方 329

B.2.3 OPC一般结构和构成 329

B.2.4 OPC数据存取结构共同规范 330

B.2.5 对象和接口一览 330

B.2.6 服务器的地址空间和配置 330

B.2.7 应用层次服务和网络结点选择 331

B.2.8 同步和流化 331

B.2.9 永久存储 332

B.3 OPC数据存取快速参考——定制接口 332

B.4 OPC定制接口 333

B.4.1 OPC定制接口一览 333

B.4.2 一般信息 333

B.4.3 OPCServer对象 347

B.4.4 OPCGroup对象 361

B.4.5 客户端接口 407

B.5 安装问题 414

B.5.1 组件类别 414

B.5.2 定制接口的注册入口 414

B.5.3 Proxy/Stub DLL的注册入口 415

B.6 数据类型、参数和结构的描述 415

B.6.1 项对象定义 416

B.6.2 访问路径 416

B.6.3 Blob 417

B.6.4 时间邮戳 417

B.6.5 OPC数据项的VARIANT数据类型 417

B.6.6 OPC句柄 418

B.6.7 结构和掩码 419

B.6.8 OPC品质标志 427

B.7 OPC错误代码概要 430

参考文献 432