You are on page 1of 3

Vo

l. 36No.
9 舰 船 电 子 工 程 总第 267 期
 86 Sh
i El
p  e
ctr
oni
c Eng
ine
eri
ng 2016 年第 9 期

s环境下基于 Qt的声纳信息显示设计

VxWo
rk
范新刚   姚   新   胡海燕
(上海船舶电子设备研究所   上海  201108)

摘   要   文章提出了一种在嵌入式 VxWo
rks环境 下,基 于 Qt图 形 化 视 图 框 架 的 声 纳 信 息 显 示 的 新 方 法 。 实 现 基 于
Qt图形化视图框架的声纳信息显示,使 得 图 形 用 户 界 面 具 有 信 息 显 示 实 时 和 程 序 架 构 简 单 的 优 点 。VxWo
rks 下 利 用 Qt
进行窗口图形界面开发的方法,成功地解决了嵌入式系统下图形界面开发困难的问题。
关键词  VxWo
rks;Qt;声纳信息显示
中图分类号  TB556  DOI: 3969/
10. j.i
s 1672-9730.
sn. 2016.
09.
022

De
sign 
ofSona
  r I
nfo
rma
tion 
Disp
layBas
ed  Qt
on  i
 n 
VxWo
rks

FAN  Xingang YAO  Xin HU  Haiyan



Shangha
i Ma
rine 
Ele
ctric 
Equ
ipmen
t I
 ns
tit
ut , i 201108)
e Shangha

Ab
str
act I
n o
rde
r t
o f
ind 
a s
olu
tion
 to
 the 
dif
ficu
lt abou
y  t r
gaph
ica
li
 nt
erf
ace 
deve
lopmen
t o
f embedded 
sys
tem,t
his
 ar
ti-

ce 
dis
cus
ses
 the 
deve
lopmen
t way
s o
f VxWo
rks 
graph
ica
l i
nte
rfa
ce 
deve
lopmen
t ba
sed  Qt,
on  ana
lyz
est
 he 
Qt
s r
pinc
ipl
e o

wo
rk 
and 
deve
lopmen
t f
low,
then 
pre
sen
tsan 
  app
lic
ati
on 
examp
le.
Eng
ine
eri app
ng  lic
ati
on 
prove
s t
hat 
Qtha
  s 
powe
rfu
l f
unc-

ton 
and
 it
s us
age
 is
 conven
ien
t.Al
so,i
t i
s a 
good 
sol
uti
on 
ofembedded 
  sys
tem 
graph
ica
l i
nte
rfa
ce 
deve
lopmen
t.
Ke
y Wo
rds VxWo
rks,Qt,s
ona
r i
nfo
rma
tion 
disp
lay

las
s Numb
er TB556

于背景地图等无需频繁更新的 图 层 本 文 中 使 用 Qt
1  引言 进行窗口图形界 面 开 发 的 方 法,实 现 基 于 Qt 图 形
VxWo rks 操 作 系 统 是 美 国 风 河 公 司 (Wind 化视图框架的声纳信息显示,使得图形用户界面 具
Ri
ver Sys
tems Inc)设计开 发 的 一 种 嵌 入 式 实 时 操 有信息显示实时,程序架构更加简单 [1]。
作系统,良好的 持 续 发 展 能 力、高 性 能 的 内 核 以 及 本文不考虑声纳图像显示。 对于点迹、航 迹等
rks 在 嵌 入 式 实 时
友好的用户开 发 环 境,使 VxWo 实时更新的信息 显 示,采 用 Qt 图 形 化 视 图 框 架 中
操作系统领域 占 据 一 席 之 地,广 泛 应 用 在 通 信、数 Gr
aph
ics 
View/I
tem 机制进行处理并将其绘制信
字图像设备军事、航空和航天等高精尖及实时性要 息,可以将其绘制在背景层或前景层。 对于操作界
求极高的领域中 [
4]
。 面,可以利用 Qt 
Des
i r进行设计并借助于 S
gne tyl

但是 VxWo
rks 下 使 用 Wi
ndML 开 发 复 杂 的 She
et属性对其美化 3 。
[]

图形界面,需要 程 序 员 编 写 大 量 的 代 码,对 控 件 的 本文重点讨论在 VxWo


rks
6.6 下用 Qt
 4.
5.0
实现都需要调用底层的作图函数进行绘制,造成了 进行窗口图形界面开发的方法。
开 发 周 期 长 的 问 题。 而 Qt 具 有 优 良 的 跨 平 台 特
性,可以一 次 编 写,随 处 编 译;良 好 封 装 机 制;
Si
rks下的 Qt的基本原理
2 VxWo
g-
l—S
na lot连接的 事 件 驱 动 机 制;提 供 Qt 
Des
igne
r Qt是一个多平台的 C+ + 图形用户界 面 应 用
工具开发界 面,便 于 程 序 开 发 等。 在 图 元 层,而 对 程序框架,它提供给开发者建立艺术级的图形用户

* 2016 年 3 月 16 日,修回日期:
收稿日期: 2016 年 4 月 27 日
作者简介:范新刚,男,硕士,工程师,研 究 方 向:嵌 入 式 系 统 显 控 设 计。 姚 新,男,高 级 工 程 师,研 究 方 向:信 号 处 理。
胡海燕,女,硕士,高级工程师,研究方向:显控设计。
2016 年第 9 期 舰 船 电 子 工 程  87

界面所需的所 用 功 能,以 下 是 在 VxWo


rks 中 使 用 方式打开控件 属 性 编 辑 框,通 过 控 件 属 性 编 辑 框,
Qt实现图形化工程的基本原理。 用户可以设定控件的标题、位置、颜色、图片、字 体、
1 Qt图形界面应用程序的配置与编译 BOX 类型、事 件 响 应 方 式 等 属 性 7 。 界 面 设 计 完
[]
2.
ndML 是 一 个 适 用 于 VxWo
Wi rks 下 开 发 图 成之后,用 户 可 以 进 行 界 面 效 果 的 预 览。 利 用 Qt
ndML 通过提供一系列的
形用户界面的媒体库,Wi 可视化界面设计工具设计好图形界面后,接下 来就
图形 API函 数,以 及 鼠 标、键 盘、字 体 和 显 示 芯 片 是在此基础上进行图形界面应用程序的编写。
的驱动,使得用户可以在嵌入式系统设备上实现图
形用户界面 [5]。在使用 Qt之前必须先根据目标机
3  声纳信息显示设计
ndML 的 处 理 器 类
配置情 况 及 应 用 需 求 来 对 Wi 声纳信息显示主要包括点迹、航迹、声纳图像、
型、图形设备、输出设备等进行配置,配置完成后编 背景地图以及 矢 量 图 形 等 信 息 显 示。 本 文 中 的 声
ndML 生成相应的目标文件 2 。
译 Wi []
纳图像实时显示功能借助于硬件手段实现,故 不再
完成 Wi
ndML 的 配 置 和 编 译 后,根 据 工 程 应 描述。对于点迹、航迹,由于其信息实时更新,因 此
用需求 对 VxWorks 进 行 配 置,将 C+ + Compo- 可以使用 作 为 图 元 绘 制 在 图 元 层 [12];而 对 于 背 景
nen
ts、POS
IX Mess s、POS
age Queue IX Sema- 地图等不经常改变的信息,绘制于背景层。
pho
res选 择 包 含 进 VxWo
rks 工 程 中,编 译 生 成 1  点迹和航迹显示
3.
VxWorks映像。 基 于 Qt 图 像 应 用 开 发,需 要 将 由于点迹和航迹显示方法类似,故以点迹显示
WindML 的 相 关 组 件 2D g
raph
ics 和 comp
let
e 2D 为例 [
,从基类 QGr
9]
aph
ics
Item 中派生一 个 用 户 定

ibr
ary 选择包含进 VxWo rks工程中 。

6]
制的图 元 类 QGr
aph
icsP
lot
Item 表 示 声 纳 点 迹 对
利用 Qt进行 图 形 界 面 应 用 程 序 的 开 发,需 要 象。用 QGr
aph
icsP
lot
Item 成 员 变 量 表 征 点 迹 属
ndML 进行相应的 配 置、编 译 和 连 接,并 完 成
对 Wi 性,用 QGr
aph
icsP
lot
Item 成 员 函 数 定 制 点 迹 操
VxWorks 操 作 系 统 配 置 8 。 首 先 用 户 使 用 Qt 提
[]
作。 每 个 点 迹 用 一 个 QGr
aph
icsP
lot
ltem 对 象 来
供的可视化设计工具来构建相应的图形操作界面, 表示,然后建立一个点迹链 QP
lotL
ink 保存所有点
生成 .
pro 工 程 文 件,在 用 make 等 Qt 相 关 操 作 生 迹 信 息。 当 收 到 一 个 新 点 迹 时,在 点 迹 链
cpp 和 .
成. h 文 件;然 后 在 Wo 0编译环
rkBench3. QP
lotL
ink 前插入一个 QGr aph
icsPl
otIem 对 象表

境下将进行编 译 和 链 接 生 成 最 终 的 应 用 程 序 目 标 示该点迹,并调 用 setPos()函 数 设 置 其 场 景 位 置,
码。编译界面如下图 1 所示。 然后调用 add
Item()函 数 将 QGr
aph
icsP
lot
Item 对
象添加到场景中并在视图显示。 若点迹消失,此 时
需要将 QP
lotL
ink 链表中最后一个单元删除,并 调
用 QGr
aph
ic ene的函数r
sSc emove
Item()将该对象
从场景中删除。
2  背景信息显示
3.
本应 用 实 例 中,背 景 信 息 为 电 子 海 图,不 需 要
经常改变 的。 故 使 用 QP
ixmap 类 进 行 背 景 显 示,
创建一个 QP
ixmap 类 的 对 象 指 针 pP
ixmap,然 后
将 背 景 路 径 信 息 进 行 设 置 [11],例 如 QP
ixmap

QOb e
jct::
tr("/Dos
/i bmp" )),然 后 在 调 用
con.
se
tPxmap()函数将背景添加到场景中并显示。

3.3  矢量图形显示
在声纳信息显示中,常需绘制刻度线辅助目 标
测量,如距离刻度线、方位刻度线,具有特定功能的
图 1 Qt图形界面应用程序编译示意图 区域,如参数区、目标区 等。Qt提 供 底 层 的 绘 图 类
2  图形界面应用程序开发
2. QPa
int
er。该类既可以绘 制 简 单 的 直 线,也 可 以 绘
图形 界 面 的 开 发 主 要 通 过 Qt 
Des
i r来 实
gne 制复杂的图形。如提供 d rawl
ine()函 数 绘 制 直 线,
Qt提供了大量的图形控 件,用 户 以 拖 放 的 方 式
现, dr
awP ic()绘制 扇 形,
dr t()绘 制 文 本,
awTex draw-
从控件面板添加相应的控件对象,通过双击控件的 Path()绘制复杂图形。对于距离刻度线,通过 调 用
 88 范新刚等:
VxWo
rks环境下基于 Qt的声纳信息显示设计 总第 267 期


rawL
ine()即可实 现,对 于 方 位 刻 度 线,在 PPI 显 工具,分析了利用该工具进行用户界面设计以及相
时可以调用 d rawEI
li e()函数绘制圆形 10 。 并将
ps
[ ]
应的应用程序 的 开 发 过 程。 通 过 实 际 工 程 应 用 表
以上绘制 函 数 放 入 QPa
in t事 件 中 来 调 用 即
tEven Qt在功能和性 能 方 面 能 够 满 足 基 于 VxWo
明, rks
可。 的实时系统窗口图形界面开发要求,在嵌入式系统
4  应用程序实例
3. 图形开发方面有着广泛的应用前景。
本实例为一个窗口应用,采用 Qt
4. 0 进行声
5.
纳信息显示软件开发,其显示界面如图 2 所示。 通 参 考 文 献
过实际应用可 以 发 现 其 信 息 显 示 和 战 术 操 作 完 全
满足声纳信息 显 示 的 需 要。 本 实 例 界 面 中 包 含 有 1]孔祥营,柏 桂 枝 .嵌 入 式 实 时 操 作 系 统 VxWo
[ rks 及 其
一个菜单 条 控 件、一 个 表 格 控 件 以 及 六 个 按 钮 控 开发环境[M].北京:中国电力出版社,
2002:
156-160.

件。通过点击显 示 目 标 信 息 按 钮 可 以 在 表 格 控 件 2]陈智育,温彦军,陈琪 .
[ VxWo
rks程序 开 发 实 践[M].北
京:人民邮电出版社,
2004:
210-225.
中实时显示目标的相关信息,表格控件的内容是动
3]申 成 祎 .基 于 VxWo
[ rks 操 作 系 统 的 Wi 2D 显 示
ndML 
态更新的。通过 点 击 显 示 按 钮 可 以 实 时 显 示 设 备
方案[
J].电脑开发与应用,
2004,
10(
6):
45-47.
的参数信息。通 过 相 应 的 菜 单 选 项 可 以 进 行 目 标
4]周晓光,翟尹羚 .基于嵌入式 L
[ inux 下 的 Mi
niGUI的 应
信息的查看等。 用[
J].电脑知识与技术,
2005,
35(
10):
96-97.
5]梁勇,孟 桥 .嵌 入 式 操 作 系 统 VxWo
[ rks 中 的 显 控 程 序
设计[
J].电子工程师,
2002, 12):
28( 7-9.
6]张娜欢,叶 经 方,严 隽 钰 .Mi
[ niGUI 在 电 力 通 信 服 务 器
中的应用[
J].电子工程师,2007,
33(
12):
50-52.
7]张升,陶维青 .嵌入 式 图 形 用 户 界 面 Mi
[ n J].仪 器
iGUI[
仪表用户,2004,
11(
6):
82-84.
8]蔡华,卞新高,史中权 .基于 VxWo
[ rks的 Wi
ndML 图 形
界面开 发 方 法 [
J].工 业 控 制 计 算 机,
2005,
18(
8):
28-
30.
9]李海 亮,石 鹏 程 .VxWo
[ rks 的 Wi
ndML 图 形 界 面 程 序
的框架分析[
J].工业控制计算机,
2007,
20(
1):
46-47.
10]曾虹,吴新华,张翔 .基于 Mi
[ niGUI的数据采集 卡 应 用
图 2  声纳应用实例窗口界面
系统的开发[
J].杭州电子科技大学学报,
2007,
27(
1):

4  结语
54-58.
11]汪丽云,徐晓苏 .基 于 VxWo
[ rks 的 PCI设 备 驱 动 程 序
Qt为用户提供了一套完 整 的 嵌 入 式 人 机 界 面 开发[
J].舰船电子工程,
2006,
26(
1):
87-90.
解决方案,其简 洁 高 效 的 程 序 界 面 设 计 方 式,大 大 12]陈恩庆,王忠勇,宋豫冀 .
[ VxWo
rks下图形用户 界 面 的

减轻了程序设计人员进行界面设计的劳动强度,提 开发[
J].微 计 算 机 信 息:测 控 仪 表 自 动 化,
2003,
19

3):
48-49.
高了程序开发效率。本文介绍了 Qt图形界面开发

檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷檷
(上接第 30 页)
10]艾 加 秋,齐 向 阳,禹 卫 东 .改 进 的 SAR 图 像 双 参 数
[ [
11]S
tas
t J,Hughe
ny  s M,Ga
rci
a D,e
t a
l.A 
nove
l adap-
CFAR 舰船 检 测 算 法 [
J].电 子 与 信 息 学 报,
2009,
31 t
ive
 syn
the
tic
 ape
rtu
re r
ada
r sh
ip de
tec
tion sy
stem

12):
2881-2885. [
C]//OCEANS 
2011.IEEE,
2011:
1-7.

You might also like