数传电台与MCGS工控组态软件通信研究.pdf_第1页
数传电台与MCGS工控组态软件通信研究.pdf_第2页
数传电台与MCGS工控组态软件通信研究.pdf_第3页
全文预览已结束

数传电台与MCGS工控组态软件通信研究.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第2 5 卷第6 期电力自动化设备V 0 1 2 5N o 6 固p 2 0 0 5 年6 月 E l e c t r i cP o w e rA u t o m 砒i o nE q u i p m e n t J u n 2 0 0 5 数传电台与M C G S 工控组态软件通信研究 方彦军 牛兴林 南京师范大学电气与自动化工程学院 江苏南京2 1 0 0 4 2 摘要 简要介绍了数传无线电台通过R S 一2 3 2 总线与计算机的串口连接 并以四线制半双工方式的 工作机制通信 详细探讨了数传电台与工控组态软件M C G S M o n i t o ra n dC o n t r o lG e n e r a t e ds v s t e m 通信的三种方式 第一种是编制电台设备驱动程序挂接在M C G S 中实现通信 第二 三种方法 是在V B 环境下编制电台数据采集程序 其中第二种方法是利用对象链接与嵌入O L E O b i e c t s L i n k i n ga n dE m b e d d i n g 自动化操作M C G S 第三种方法是利用动态数据交换D D E D y n a m i cD a t a E x c h a n g e 连接方法与M C G S 进行数据交换实现通信 实际运行表明 三种方法均可实现数传电台 与M C G S 通信 且各有适用场合 关键词 数传电台 M C G S 设备驱动 O L E 自动化 动态数据变换 中图分类号 T N9 2 4文献标识码 A文章编号 1 0 0 6 6 0 4 7 2 0 0 5 0 6 0 0 3 8 0 3 M C G S M o n i t o ra n dC o n t r o lG e n e r a t e dS y s t e m 在国内的工控组态软件中比较优秀 功能完善 可维 护性强 且其采用开放式结构 系统可以与广泛的数 据源交换数据 M C G S 提供了一套可扩充的接口规 范和配套的高级开发工具包 由此提供了很强的可扩 充性 使M C G S 不仅可以通过设备驱动构件与下位 机通信 而且可以通过对象链接与嵌入O L E O b j e c t s n k i n ga n dE m b e d d i n g 自动化 动态数据交换D D E D y n a m i cD a t aE x c h a n g e O P C 和其他应用程序交 互 本文在利用M C G S 组建数传电台无线数据采 集系统时 对电台如何与M C G S 通信进行了研究 1 数传电台工作机制 数传无线电台 本文以摩托罗拉公司的G M 9 5 0 i 为例 一般配有外接R S 一2 3 2 接口 可直接和计算机 的串口相连接 数据传输方式为四线制的半双工通 信 即除了R X D T X D G N D 之外还有R T S R T S 信号 控制电台收发状态转换 3 4 当R T S 信号为高时 电 台为发送数据状态 当R r l l s 信号为低时 电台为接 收数据状态 因为电台为半双工通信 所以在一个 无线通信系统中不允许有两个以上的电台同时处于 发送状态 无线电台的发射机启动 从功率为0W 到最大功率称作发射机启动时间 及接收机的静噪 开启都需要一定的时间 这个时间根据不同的电台 从几毫秒到几百毫秒不等 在发送数据时 如果在 打开发射机时 即R T S 有效 立即向空中送出数据 D 由于此时发射机尚未稳定工作而接收方的 静噪也未打开 前面一段数据就会丢失 所以应该在 打开发射机后 等待1 0 0 2 0 0m s 后再送出数据 数 据发送完毕后 延时1 0 5 0 m s 后再关闭发射机 另 收稿日期 2 0 0 5 0 1 1 0 修回日期 2 0 0 5 一0 3 2 3 外 由于在传输的头 发射机启动至稳定 尾 接收 机静噪关闭一刹那 接收方的R X D 上会产生一些乱 码 就需要用软件进行 过滤 剔除这些乱码 由此可见 要实现上位机软件M C G S 与数传电 台通信 必须能够有效控制R 髑信号 即无论采用何 种方式通信 应用程序应该对串口进行有效控制 从 而实现电台对数据的发送接收 还有如何对乱码过 滤 以取出有效数据 电台作为一种信息传输设备 并没有相应的设 备命令 即电台并不适合单独开发设备驱动程序 应 该配合下位机的智能设备共同组成一个设备驱动 程序 简称为电台设备驱动程序 2 电台设备驱动方法 M C G S 提供了一套规范的设备驱动程序接口 允许用户根据自己需要定制设备驱动程序 设备构 件的实现方法和原理与标准V B 的A c t i v e X D L L 完 全一致 但必须遵守这些接口规范 才能用作M C G S 的设备驱动构件 其接口规范见文献 1 利用M C G S 的高级开发工具包 生成设备驱动 构件的源程序框架 之后便可以根据设备的特性和 含义完成其8 个方法功能的编制 从而完成定制的 设备驱动构件 M C G S 把实际外部设备分为独立的设备 父设 备和子设备三类 独立的设备是可独立工作 完成 特定数据输入输出功能的设备 父设备是本身不直 接处理数据输入输出 但起到管理其他设备工作的 设备 如串行口设备等 子设备是本身具有处理数据 输入输出的功能 但只有和对应的父设备一起才构 成完整工作系统的设备 如P L C 设备和带智能通信 功能的仪器仪表等 电台设备驱动属于子设备一类 由通用串口父设备管理电台设备的工作 万方数据 编写通信子设备驱动程序时 主要使用的就是 对串行端口进行操作 M C G S 根据驱动程序的实现 特点 充分运用3 2 位操作系统多任务多线程的优 势 把对串行端口的设置 初始化和读写操作全部封 装在M C G S 提供的串行通信父设备中 在通信子设 备驱动程序中只需调用父设备提供的标准串口读写 函数 即可完成各种功能通信子设备驱动程序的开 发编程工作 串行通信父设备提供的主要串行端口函数如下 C o m O u t D a t 是把数据写到串行端口输出到通信 设备 C o m A l l I n D a t 是将当前输入缓冲区的数据全部 读取 用来清空输入缓冲区 f u n c S e t R r I S 使R I S 信号置高 f u n c R e s e t R 佟使R 码信号置低 电台设备驱动程序流程大致如下 将设备命令 或有效数据放在1 个字节数组 b y t O u t p u t 内 在 R r I S 信号置高l o om s 后 用C o m O u t D a t 函数把数组 数据从串行端口送出 隔1 0 0 m s 后R r I s 信号置低 延 时2s 用C o m A l l I n D a t 函数将下位机送来的数据从 输入缓冲区全部读入 然后进行协议转换 数据处理 之类的工作 整个数据采集周期设定为5s 通信过程中数据发送和接收的主要代码如下 C a l l C m d P r o c e s s s t r C o m m O r d e r b r t O u t p u t 7 食令犍遵j o b j C o m 瑚P a r e n t f u n c S e t R 髑 D e l a y1 0 0 延时1 0 0 m s l n g R e t u m o b j C o m m P a r e n t C o m o u t D a t U b o u n d b y t O u t p u t b y t O u t p u t 发送数据 D e l a y2 0 0 延时2 0 0 m s o b j C o m m P a 心n t f u n c R e s e t R T S D e l a y2 0 0 0 延时2 0 0 0 m s l n g R e a d L e n o b j C o m m P a r e n t C o m A U I n D a t b y t I n p u t 接收数据 C a l lD a t P r o c e s s b y t I n p u t 数据处理 把生成的设备驱动构件 复制到用户定制设备 文件夹后 在组态环境中对设备进行组态配置 从而 实现了数传电台和组态软件M C G S 之间的通信 30 L E 自动化方法 M C G S 组态软件本身的自动化功能可以帮助用 户在其他应用程序中很方便地操纵M C G S 组态软件 的运行 如用户可以在一个程序里指挥M C G S 运行 环境打开某个窗口 执行某个策略 或者向某个设备 发出命令等 基本上 在M C G S 组态软件中用户脚 本程序可以完成的功能也都可以通过M C G S 组态软 件的自动化功能完成 t 实时数据库是M C G S 的核心 M C G S 把整个实 时数据库作为一个对象封装起来 提供一系列的方 法和属性 M C G S 运行后 实时数据库对象被暴露出 来 在其他应用程序中 通过O L E 自动化操作 就可 取到实时数据库对象 从而做到在外部应用程序直 接操作M C G S 的目的 下面介绍在应用程序中利用O L E 自动化读写 实时数据库的2 个方法 方法1 G e t V a l u e F r o m N a m e 用途 根据数据对象的名称读取数据对象的当 前值 使用范围 只用于运行环境 组态环境中无效 语法形式 G e t V a l u e F r o m N 籼e N 锄ea sS t r i n g V a l u ea sV 撕a n t a sL 0 n g 返回值 0 调用失败 0 调用成功 参数说明 N a m e 为字符数 数据对象的名称 V a l u e 为V 撕a I l t 型 存放读取的数据对象的当前值 方法2 S e t V a l u e F r o m N a m e 用途 根据数据对象的名称写入数据对象的当 前值 使用范围 只用于运行环境 组态环境中无效 语法形式 S e t V a l u e F m m N a m e N a m ea sS t r i n g V a l u ea sV 撕a n t a sL 0 n g 返回值 0 调用失败 0 调用成功 参数说明 N a m e 为字符数 数据对象的名称 V a l u e 为V 撕a n t 型 存放要写入数据对象的当前值 M C G S 的实时数据库对象及其对应的属性和方 法仅供扩充构件和外部应用程序在编程时使用 在 M C G S 内 脚本程序和表达式中 不能直接使用 在V B 环境下编制数传电台串口通信程序 其 中主要用到了M S C o m m 控件 其提供了非常丰富的 属性和方法 s t 6 利用它可以方便的对串行端口操作 对R T S 信号的控制也很简单 在把有效数据取出 后 便可以直接采用O L E 自动化方式 对运行环境 中的实时数据库进行读写操作 从而在M C G S 环境下 实现数据采集 并可以利用M C G S 强大的工程组态 功能 实现各种报表 曲线 报警 数据存盘等功能 下面给出在应用程序中操作M C G S 的主要代码 D i mD a t O b jA sO b j e e t S e tD a t O b i G e t O b i e c t M c g s R u n D a t a C e n t r e 在V B 环境下取到M C G S 运行环境下的实时 数据库 I fE r rT h e n M s g B o x 请先启动M C G S 运行环境 E n d E n dI f 有效数据存放在D a t a 2 数组中 D i mt tA sI n t e g e r iA sI n t e g e r m s gA sS t 五n g F o ri 0T o 2 t t D a t a i m s g D a t F o 彻a t i 0 0 D a t O b j S e t V a l u e F m m N a m em s g t t N e x ti 从而实现了数传电台和M C G S 之间的通信 万方数据 电力自动化设备 第2 5 卷 4D D E 方法 D D E 是在M i c m s o f tW i n d o w s 系统下使用共享 内存在两个应用程序之间进行数据交换的方式 它 的特点是如果数据在链接的应用程序中改变 则本 程序数据库中的数据也会发生变化 反之亦然 在V B 环境下编制好数传电台的通信程序后 关键是如何建立V B 程序与M C G S 之间的D D E 连 接 为说明方便起见 假设电台采集了3 个通道数 据 在经过协议分解 取出有效数据后 分别用3 个 文本框显示 在此种情况下V B 程序是作为服务器 M C G S 作为客户端 在V B 程序的工程属性生成选项 卡中把应用程序的标题名改为S e r D D E 作为D D E 连接的服务器名 窗体的L i n k M o d e l s o u r s e 以定 义其为数据源 L i n k T o p i c F o 珊D D E F o 珊D D E 作为D D E 连接的主题名 窗体的这2 个属性不能够 在运行时设置 T e x t l T e x t 2 T e x t 3 作为项目名 在 M C G S 的实时数据库中建立3 个数据对象 T 0 0 T D l 哟2 然后在D D E 连接管理窗口中 对3 个数据 对象进行D D E 连接配置 运行时首先要启动服务器 然后运行客户端 由 此用D D E 方法实现数传电台和M C G S 之间的通信 5 结论 所介绍的三种方法均可成功实现数传电台和工 控组态软件M C G S 之间通信 M C G S 提供了高级开 发平台 可直接生成源程序框架 电台设备驱动实现 方便 且设备构件与M C G S 运行在同一进程 速度 快 可靠性高 实时数据库提供了丰富的属性方法 可以非常方便利用O L E 自动化方式实现 并可充分 利用V B 语言的方便性扩充出很强大的功能 但速 度不如设备构件方式快 利用D D E 方式实现数据交 换 虽然实现方便 却有数据流通不畅和数据传输速 度慢等问题 适合用在数据量小 实时性不高的场合 在工控领域实现通信 遵守O P C 标准乃是大势 所趋 O P C 解决了工业过程控制领域内来自不同厂 商的硬件和软件部件协同工作的问题 按照O P C 规 范 硬件供应商只需提供一套符合O P CS e r v e r 规范 的程序组 而软件开发商只需要l 套具备O P C 客户 能力的软件 就可以与所有符合O P C 服务器规范的 程序组连接 获取需要的数据 相信利用O P C 技术 也可以解决数传电台与M C G S 之间的通信 参考文献 1 黄皎 刘建国 高敏 基于M C G S 的数据采集器驱动 程序设计 J 计算机工程 2 0 0 3 2 9 2 0 1 7 7 1 7 9 H U A N GJ i a o U UJ i a l l g I l o G A 0M i n D r i v e r sd e s i 印0 f d a t ac o l l e c t i o nb a s e do nM C G S J C o m p u t e rE n g i n e e d n g 2 0 0 3 2 9 2 0 1 7 7 1 7 9 2 杨永竹 M C G S 组网智能积算仪的流量监控系统及其串行 通信设计 J 仪表技术与传感器 2 0 0 4 9 2 3 2 4 Y A N GY o n g z h u D e s i g no fd r i v e rf o rs e r i a lc o m m u n i c a t i o n i nn e tf o m e db yi n t e l l e c t u a ln o wt o t a l i z e r sb a s e do nM C G S J I 鹏t r 岫e n tT 佻h l l i q 眦粕ds e n r 2 0 0 4 9 2 3 2 4 3 何志敏 梅大成 谭文学 一种基于无线传输的分布式数 据采集和控制系统 J 现代电子技术 2 0 0 4 2 7 1 9 2 7 2 8 H Ez h i m i n M E ID a c h e n g T A NW e n x u e Ad i b u t e d d a t aa c q u i r e da n dc o n t m U e ds y s t e mb a s e do nw i r e l e s s 讹n s m i s s i o n J M o d e mE l 打o I i cT 比h l I i q 眦 2 0 0 4 2 7 1 9 2 7 2 8 4 李润平 数传电台在计算机监控中的应用 J 电气传动 自动化 2 0 0 4 2 6 5 4 8 5 0 L I R u n p i n g A p p l i c a t i o no fd a t a s e ts t a t i o ni nc o m p u t e r s u p e n r i s i o n J E l e c t cD r i v eA 删t o m a 6 0 n 2 0 0 4 2 6 5 4 8 5 0 5 李旭东 陈俊杰 基于V B 中M S C o m m 控件的通信软件开 发与实现 J 电脑开发与应用 2 0 0 4 1 7 7 2 5 2 7 UX u d o n g C H E NJ u n j i e D e v e l o p m e n ta n di m p l e m e n t a t i o no fc o m m u n i c a t i o ns o f t w a r ei n S C o m mc o n n 0 1 w a r eb a s e do nV B J C o m p u t e rD e v e l o p m e n ta n dA p p c a 廿 璐 2 0 0 4 1 7 7 2 5 2 7 6 魏志强 利用V B 实现P C 机与多单片机远程无线通讯 J 微计算机信息 2 0 0 4 2 0 1 1 9 0 9 1 W E IZ h i q i a n g R e a l i z a t i o no ft 王l er e m o t ew i r e l e s sc o m m u n i c a t i o nb e t w e e nP Ca n dm u l t is i n d e c h i pw i t hV B J C o n t r o l A u t o m a 6 叫I 2 0 0 4 2 0 1 1 9 0 一9 1 责任编辑 汪仪珍 作者简介 方彦军 1 9 5 7 一 男 福建福州人 教授 博士研究生导 师 从事检测与控制方面的教学与科研工作 R e s e a r c ho nc o m m u I l i c a t i o nb e t w e e nd a t ar a d i ot r a n s c e i v e ra n d1 V C G S F A N GY a n j u n N I UX i n g 1 i n S c h 0 0 1o fE 1 e c t d c a l A u t o m a t i o nE n 百n e e r i n g N a n j i n gN o 瑚a lU n i v e r s j t y N a n j i n g2 1 0 0 4 2 C h i n a A b s t m c t T h ew o r k i n gm e c h a n i s mo fd a t ar a d i ot m n s c e i v e ri si n t r o d u c e db r i e n y w h i c hc o m m u n i c a t e sw i t hc o m p u t

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论