1、基 于 高 速 数 据 采 集 卡 的 虚 拟 示 波 器 设 计 虚 拟 仪 器 简 介 虚 拟 仪 器 (VI-ViItuaIInstrument)是 指 通 过 应 用 程 序 将 通 用 计 算 机 与 功 能 化 硬 件 结 合 起 来 , 用 户 可 通 过 友 好 的 图 形 界 面 操 作 计 算 机 , 就 像 在 操 作 自 己 定 义 、 自 己 设 计 的 单 个 仪 器 一 样 , 从 而 完 成 对 被 测 量 的 采 集 、 处 理 、 分 析 、 判 断 、 显 示 、 数 据 存 储 等 。 在 这 种 仪 器 系 统 中 , 各 种 复 杂 测 试 功 能
2、、 数 据 分 析 和 结 果 显 示 都 完 全 由 计 算 机 软 件 完 成 , 在 很 多 方 面 较 传 统 仪 器 有 无 法 比 拟 的 优 点 , 如 使 用 灵 活 方 便 、 测 试 功 能 丰 富 、 价 格 低 廉 、 一 机 多 用 等 , 这 些 使 得 虚 拟 仪 器 成 为 未 来 电 子 测 量 仪 器 发 展 的 主 要 方 向 之 一 。 ( 来 自 大 比 特 商 务 网 : http:/www.big- ) 当 今 虚 拟 仪 器 系 统 开 发 采 用 的 总 线 包 括 传 统 的 Rs232串 行 总 线 、 GPIB 通 用 接 口 总 线 、
3、 VXI 总 线 、 PCI 总 线 和 IEEE 1394总 线 即 Firewire(也 叫 做 火 线 )。 本 文 介 绍 基 于 PCI 总 线 接 口 的 CompuS,cope82G 型 高 速 数 据 采 集 卡 和 Visual C+编 程 工 具 的 快 速 虚 拟 示 波 器 试 验 系 统 , 该 系 统 集 波 形 采 集 、 数 据 分 析 、 输 出 、 显 示 为 一 体 。 为 了 保 证 数 据 采 集 和 波 形 显 示 的 实 时 性 , 设 计 中 还 采 用 了 多 线 程 技 术 。 2 系 统 组 成 和 采 集 卡 的 硬 件 结 构 2.1
4、系 统 组 成 虚 拟 示 波 器 系 统 主 要 由 数 据 采 集 卡 、 计 算 机 和 专 用 软 件 组 成 , 其 中 , 数 据 采 集 卡 完 成 对 输 入 测 量 信 号 的 调 理 采 集 和 缓 存 , 并 通 过 计 算 机 PCI 总 线 送 入 内 存 ;计 算 机 在 应 用 程 序 控 制 下 对 数 据 进 行 处 理 、 运 算 , 最 后 完 成 各 种 电 量 测 试 并 在 屏 幕 上 用 图 形 或 数 据 形 式 显 示 。 这 一 切 均 在 人 机 交 互 方 式 下 完 成 。 2.2 数 据 采 集 卡 的 硬 件 结 构 本 虚 拟 示
5、 波 器 采 用 Gage 公 司 的 CompuScope82G 型 高 速 数 据 采 集 卡 作 为 PCI 接 口 。 采 集 卡 的 硬 件 结 构 如 图 1所 示 。 该 数 据 采 集 卡 主 要 由 前 置 滤 波 器 、 可 程 控 衰 减 器 、 可 程 控 模 拟 放 大 电 路 、 A/D 转 换 器 、 D/A 转 换 器 、 计 数 , 定 时 电 路 、 振 荡 电 路 、 时 序 控 制 电 路 及 PCI 接 口 电 路 组 成 , 其 功 能 电 路 由 数 字 控 制 逻 辑 电 路 统 一 控 制 。 该 卡 是 具 有 2个 模 拟 量 输 入 通
6、道 的 标 准 的 PCI 总 线 插 卡 , 卡 上 集 成 的 2个 高 速 8位 ADC 的 工 作 频 率 高 达 IGHz, 在 单 通 道 工 作 模 式 下 , 2个 ADC 同 时 工 作 , 分 别 在 脉 冲 的 上 升 沿 和 下 降 沿 进 行 转 换 , 所 以 最 高 采 样 频 率 可 以 达 到 2GHz。 卡 上 配 置 有 16M 的 高 速 存 储 器 , 解 决 了 高 采 样 率 和 相 对 较 低 PCI 总 线 数 据 传 输 速 率 的 匹 配 问 题 。 在 使 用 之 前 必 须 对 采 集 卡 的 硬 件 进 行 配 置 , 这 些 控 制
7、 程 序 用 到 相 应 的 底 层 DAQ 驱 动 程 序 。 通 过 采 集 卡 自 带 的 DLL 可 以 在 程 序 中 灵 活 地 对 硬 件 进 行 控 制 , 比 如 输 入 阻 抗 、 输 入 电 压 范 围 、 放 大 器 增 益 、 采 样 频 率 、 每 次 采 样 点 数 等 。 3 系 统 的 软 件 设 计 3.1 虚 拟 示 波 器 的 软 件 开 发 环 境 虚 拟 仪 器 最 核 心 的 技 术 是 软 件 技 术 。 目 前 , 用 于 虚 拟 仪 器 开 发 的 软 件 开 发 平 台 主 要 有 二 大 类 : 一 类 是 通 用 的 可 视 化 软 件
8、 编 程 环 境 , 主 要 有 Microsoft 公 司 的 Visual C+和 Visual Basic、 Inprise 公 司 的 Delphi 和 C+Builder 等 ;另 一 类 是 一 些 公 司 推 出 的 专 用 于 虚 拟 仪 器 开 发 软 件 的 编 程 环 境 , 主 要 有 NI 公 司 的 图 形 化 编 程 环 境 LabView 及 文 本 编 程 环 境 IabWindows/CVI、 Agilent 公 司 的 图 形 化 编 程 环 境 Agilent VEE。 考 虑 到 软 件 的 灵 活 性 、 高 效 性 和 可 移 植 性 , 本 设
9、计 中 采 用 visual C+作 为 虚 拟 示 波 器 的 开 发 环 境 。 ( 来 自 大 比 特 商 务 网 : http:/www.big- ) 3.2 软 件 功 能 模 块 该 虚 拟 示 波 器 有 5大 功 能 模 块 : 信 号 采 集 、 用 户 界 面 、 频 谱 分 析 、 数 字 滤 波 、 波 形 显 示 。 3.2.1信 号 采 集 模 块 信 号 采 集 模 块 主 要 完 成 数 据 的 采 集 , 根 据 采 集 信 号 的 不 同 选 用 不 同 的 采 样 频 率 。 该 模 块 中 的 应 用 程 序 通 过 采 集 卡 的 驱 动 程 序 和
10、硬 件 进 行 通 信 , 如 果 把 该 模 块 放 在 程 序 主 线 程 中 实 现 , 那 么 , 当 应 用 程 序 与 驱 动 程 序 进 行 数 据 通 信 时 主 界 面 就 会 冻 结 。 为 了 解 决 这 个 问 题 , 本 文 直 接 创 建 一 种 子 线 程 来 单 独 完 成 与 驱 动 程 序 的 通 信 任 务 , 让 主 界 面 专 用 于 响 应 视 窗 界 面 的 信 息 。 在 子 线 程 中 通 过 调 用 gage_start_capture()函 数 进 行 数 据 的 采 集 。 图 2 示 出 数 据 采 集 流 程 。 数 据 采 集 的
11、主 要 代 码 如 下 : 3.2.2用 户 界 面 模 块 界 面 主 要 切 分 为 3个 视 图 : 主 视 图 基 类 为 ScrollView, 用 于 显 示 波 形 ;2个 视 图 基 类 为 For-mView, 1个 用 于 动 态 显 示 采 集 数 据 的 特 征 参 数 , 另 1个 用 于 对 示 波 器 进 行 操 作 。 整 个 软 件 的 主 界 面 设 计 如 图 3所 示 。 3.2.3频 谱 分 析 模 块 本 软 件 利 用 快 速 傅 里 叶 变 换 (FFT)进 行 频 谱 分 析 。 频 谱 分 析 采 用 按 时 间 抽 取 FFT 算 法 ,
12、然 后 将 幅 值 频 谱 分 析 结 果 在 用 户 界 面 上 以 坐 标 曲 线 形 式 显 示 。 进 行 FFT 时 可 以 选 择 点 数 , 有 1024、 2048、 4096 3种 选 择 , 如 果 点 数 不 够 , 程 序 自 动 补 零 。 3.2.4数 宇 滤 波 模 块 本 软 件 可 以 对 所 采 集 的 信 号 进 行 低 通 和 高 通 滤 波 。 首 先 根 据 给 定 通 带 截 止 频 率 、 阻 带 截 止 频 率 、 通 带 衰 减 和 阻 带 衰 减 设 计 出 巴 特 沃 思 (Butter-worth)模 拟 滤 波 器 , 再 用 双 线
13、 性 变 换 法 设 计 出 数 字 滤 波 器 。 3.2.5波 形 显 示 模 块 虚 拟 示 波 器 的 工 作 原 理 是 对 信 号 波 形 进 行 高 速 采 样 , 采 样 值 被 数 字 化 后 存 储 起 来 , 当 重 建 波 形 时 便 从 缓 冲 区 取 数 , 然 后 用 清 晰 、 均 匀 一 致 的 轨 迹 映 像 在 屏 幕 上 。 由 于 采 集 的 模 拟 波 形 经 数 字 化 后 成 为 一 串 离 散 数 据 , 因 此 , 如 何 重 建 信 号 波 形 是 虚 拟 示 波 器 设 计 中 的 关 键 问 题 之 一 。 当 前 的 波 形 显 示
14、主 要 有 分 段 显 示 和 滚 动 显 示 。 这 里 采 用 滚 动 显 示 , 并 且 提 出 一 种 新 的 滚 动 显 示 算 法 , 突 破 了 滚 动 显 示 只 能 观 察 变 化 缓 慢 的 信 号 的 限 制 。 算 法 核 心 思 想 如 下 : (1)得 到 所 采 集 数 据 块 的 第 1个 和 最 后 1个 数 据 点 的 横 坐 标 m_xMin 和 rn_xMax, m_xMax-m_xMin 为 波 形 的 逻 辑 宽 度 。 (2)m_xMax-m_xMin 的 值 为 逻 辑 坐 标 , 把 它 转 化 为 设 备 坐 标 cx, 用 cx 设 定 整
15、 个 滚 动 视 图 的 宽 度 。 (3)为 了 提 高 画 图 的 效 率 , 只 需 画 出 滚 动 视 图 可 视 部 分 的 图 形 , 也 就 是 剪 裁 区 的 图 形 , 因 此 要 得 到 剪 裁 区 。 (4)画 出 坐 标 及 剪 裁 区 内 的 一 段 波 形 。 (5)利 用 CSplitterWnd:DoSerollBy()函 数 , 根 据 采 样 间 隔 的 大 小 决 定 断 滚 动 视 图 速 度 的 快 慢 。 这 样 视 图 滚 动 以 后 相 应 的 剪 裁 区 也 会 发 生 改 变 , 促 使 动 态 画 出 新 的 波 形 。 ( 来 自 大 比
16、 特 商 务 网 : http:/www.big- ) 主 要 代 码 如 下 : 4 实 验 与 讨 论 在 实 验 中 使 用 该 系 统 对 正 弦 信 号 和 锯 齿 波 信 号 进 行 了 采 集 , 并 对 2个 通 道 的 信 号 分 别 进 行 了 频 谱 分 析 。 实 验 时 示 波 器 参 数 设 置 如 下 : 采 样 模 式 为 双 通 道 , 其 中 通 道 1对 正 弦 信 号 进 行 采 样 , 通 道 2对 锯 齿 波 信 号 进 行 采 样 ;采 样 率 为 120Ms/s;采 样 深 度 为 16 000点 ;触 发 源 为 软 件 触 发 ;触 发 时
17、间 极 限 为 20ms;输 入 信 号 电 压 范 围 为 5V。 实 验 结 果 如 图 4所 示 。 达 到 了 预 定 的 效 果 。 本 文 基 于 Gage 公 司 的 CompuScope 82G 型 高 速 数 据 采 集 卡 , 用 Visual C+编 程 工 具 设 计 出 一 种 快 速 虚 拟 示 波 器 试 验 系 统 , 实 现 了 高 速 数 据 的 采 集 和 动 态 波 形 的 显 示 。 同 时 提 出 一 种 新 的 波 形 滚 动 算 法 , 大 大 改 观 了 滚 动 波 形 的 动 态 显 示 效 果 。 在 此 基 础 上 实 现 了 传 统 示 波 器 无 法 实 现 的 频 谱 分 析 和 数 字 滤 波 功 能 。 采 用 Visual c+作 为 仪 器 编 程 语 言 使 得 编 写 的 程 序 通 用 性 和 可 移 植 性 强 。 ( 来 自 大 比 特 商 务 网 : http:/www.big- )