第3l卷增刊2
2011年12月
计算机应用
Joumal“ComPuterApplications
v01.3l
Suppl.2
Dec.2011
文章编号:1001—9081(2011)S2—0169一03
MySQL数据库在自动测试系统中的应用
李荣国,王见
(重庆大学机械工程学院,重庆400030)
(rglinuc@qq.cmn)
摘要:针对虚拟仪器的传统数据管理方法,将MysQL数据库引入到自动测试系统的设计中。介绍了hbvIEw数据库接口、MySQL数据库与L丑bⅥEw之间的通信以及各种数据库功能实现方法,结合实例用MySQL数据库实现了硅油风扇离合器性能测试系统的数据管理,取得了良好的效果。
关键词:MySQL数据库;hbvIEWsQL1.ooIkjt;自动测试系统;虚拟仪器中图分类号:TP
392
文献标志码:A
ApplicationofMySQL
databaseinautomatictest
systems
(似如驴o,胁咖,l赴耐肠删g.cJIo哪垤协I跏妨CIlo哪沁400030,Ch汛)
Abst髓ct:AccoIding
to
URong—guo,WANGJi姐
metraditi鲫al
眦king
to
mutllal
co咖umcation
dataⅡ哪ageIIlentmetllodsof、,inualinsm蚰ent'thispaperimrodueedtheway0f
possible蚰drealjziIlgthe麟pectivefⅢIctio璐0fVario璐databases锄oIlgLabVIEWSQL
thesisdemo璐trated
’I钿lkit,MySQLdatab鹊e蚰dLabVIEW.Besides,the
tlIe
the胡ktive
methodof
applyingMysQL
satis铆Ilg.
datab酗e
peIf孤n蚰ce
testingsystem
ofsilic∞eoil
Key
words:MySQLdatabase;LabVIEw
SQL础t;肌tomatic
f如clutch.EVentually,theresuhoftllisexperimemis
t∞ting;1,inllalinstmIllentation
O
引言
随着控制理论及电子和计算机技术的高速发展,为适应
点是易于理解,操作简单¨曲J。
安装好LabV正ⅣsQL1klkit工具包后,会在函数模板中
互连接口下出现一个Databa∞子模板。在D如ba鸵子模板,
主要由三部分函数组成,一部分是基本的数据库连接、插入、查询函数;一部分是高级函数,可以编写sQL语句完成许多复杂的数据库操作;还有一部分是辅助函数,可以实现一些数据库辅助功能,如列出数据库表及其字段、数据库事件处理等。表1中列出了该工具包中常用的Ⅵ名称和功能p“J。
表1
1
科研和生产中的需求,在检测技术领域出现了许多新的理论、技术和概念,虚拟仪器也由此而生【IJ。虚拟仪器的概念提出后,自动化测试系统的软件设计在整个系统中就显得更为重要。在硬件通用测试平台的基础上,系统的人机界面、测试功能与系统扩展都需要软件来实现。在传统测试软件编制过程中,主要以测试流程为依据,由上至下逐步完成,所有的输入参数、测试标准等都内置于测试软件中。任何参数的改动以及测试系统的扩展,都需要重新编译程序,大大增加了软件的开发时间,降低了系统的可靠性。面对复杂的设备测试时,自动测试软件不仅变得十分庞大,而且软件的维护也更加困难’2】。所以,传统测试软件的通用性、可维护性、可扩展性都比较差。显然采用传统的数据管理方法是不可行的,所以通过数据库来实现测试项目选择、测试流程控制以及测试数据管理,可以实现软件的高效开发、使用和维护。而首先要解决的就是专业软件与数据库之间的互访和管理问题。1
LabVlEwsQLT00lkit工具包常用函数的功能
V1名称
DBTool8DB
功能
建立与指定数据库的连接断开与指定数据库的连接生成数据库表删除数据库表
向指定数据库表中插入一行新数据查询指定数据库表中所有字段或某字段数据
执行SQL语句查询
通过关闭相关引用来释放对象列出指定数据库表的所有字段
O∞nC∞nection
1钿lsClo∞Com婚出∞
CreateTable
DBl硼8
DBT00lsDB
DroDl枞e
TcdslnsertDa纽
selectDa诅
DB‰18
DBTcd8
DB乳d8ExecuteQueIy
Fr∞Obi∞t
LabVIEW数据库接口
在测试领域,美国国家仪器(简称Ⅵ)公司开发的
DBToolsUstColumns
LabVIEwSQL1klkit提供了两种数据库连接方式:一种
LabVIEw是一款非常优秀的测试系统开发环境,具备完善的测试功能,但没有提供与通用数据库直接接口的方法。为解决这一问题,NI公司提供了数据库接口工具包LabVIEwSQL1钿Ikit(又称LabVIEW
Databa∞Connecdvity
是开放数据互连技术(Open
(Application
DataBa鸵C咖ectivity,0DBc),
它只能对关系型数据库进行访问。由多层的应用程序接口
Pr0舒帅IIlingInte出ce,API)和一个驱动程序文件
soIlrce
JI砺Iset)。它是一组成,通过定义数据源的名字DSN(D砒a连接;另一种是UDA(Unive玛al
Data
Name)来实现
个能快速连接本地或远程数据库,不使用sQL语言就能完成诸多数据库操作的工具包,它支持当前流行数据库,包括Micms旃Acc髂s,MicroSoRsQLsever以及MysQL等。它的优
收稿日期:20ll—07—03。
Acc髓s),此标准既可以
访问关系型数据库,又可以访问非关系型数据库。UDA标准中又分为0LEDB和ADO两种不同的方法一J。OLEDB是针
作者简介:李荣国(1986一),男,山东安丘人.硕士研究生,主要研究方向:智能测试、虚拟仪器;王见(1975一),男。新疆喀什人,副教授,博士,主要研究方向:智能测试技术、虚拟仪器技术、机电一体化技术。
170
计算机应用
3.1测试数据存储
20lI车
对操作系统设计的,AD0则在应用程序接口中使用可依据数据的类型来选择不同的方法。2
2.1
数据的存储是数据库最常用的功能之一,可以用以下两种方法来实现:一种是用DB
LabⅥEw访问MySQL数据库
MySQL数据库
自动测试系统的大容量数据存储需要借助优秀的数据库
T池Iflse^Data、rI来完成,在输
入端连接表格的名称,若将全部字段下的数据插入到表中则“∞h珊m”端设置为空,如图3(a)所示。若只向某些字段中
插人数据,则需要在“砌岫m”端连接由相应字段名构成的字
符串数组中。该方法比较方便,操作也很简单。另一种是用“Adv蚰ced“下的DBQueryVI和DB1切kFk
平台,完成数据的安全、完整和快速存储,方便灵活的查询。而MysQL数据库无疑是一个很好的选择,它是多线程、多用户的关系型数据库,具有以下特性:存储方面,每个表可以处理多达50
000
1诎Ex∞ute
ObjectVl来完成。但该方法需要编写sQL语句,在sQL语言中,通过用“ins酣”命令向表中插人新的数据行,其语法格式为:i舶en
jIl士o
000个记录;写人数据所用时间只有sQL
servcr、^cc嘲的1%或更少;优化的sQL查询算法,有效地提
高查询速度;完善的权限设置机制,保证数据的安全;提供TcP/妒、ODBc和JDBc等多种数据库连接途径;提供用于管理、检查、优化数据库操作的管理工具。另外MysQL占用磁盘空间很小,只有100多兆,安装、启动执行也很方便。
2.2
table(col眦以,洲岫nB,colu啪c)valu船(’
a’,1,2)。由于jn跎^语句为字符串语句,要将数字型数据转换成字符串,数字型的数组也要转化成字符串,字符型数据之间用“.”隔开”“。
《里甄零西
,............』』:..一=二卫=
l连接记录集
J
断开记录集
ODBC致据琢的配置
l
为实现陆、rⅢw与MysQL的通信,须安装MysQL数据
库的ODBc驱动程序MysQLconnec【o∥ODBc.然后在控制面板中的oDBc数据源中创建一个DsN(数据源名)文件,以保证LabVIEW通过DsN来调用设计好的MysQL数据库。可以通过以下方法来创建DsN:打开控制面板上的管理工具,选择数据源(ODBc),点击“文件DsN”选项卡,再点击“添加”,选择MysQLoDBc驱动。然后为DsN文件命名,这样就建立了一个DsN文件“…。建立好DsN文件后需要对其进行配置才能使用,包括用户名、密码、设置本地服务器还是远程服务器以及选择哪个数据库,设置好之后点击。T鹩t”看是否能连接成功。
虽然手动配置OnBc方便简单,但当数据源位置改变或测试系统软件更换运行电脑时,需要用户运行程序之前重新进行ODBc的相关配置,从而降低了测试系统的可操作性和
=二卫二
l对记录集进行操作l
I
———矿一
逼显亟丞蟹圈多
图2访问嘶sQL流程
(时存储致据程序
通用性。因此.可以编写汕V皿w程序通过向注册表中添加
键值来实现oDBc的动态配置,然后将其做成子Ⅵ放到测试软件中在访问MysQL之前运行即可。具体实现方法可见参考文献[11]。
2.3
LabV正W与MysQL的连接
O)修改数据程序
在蚰vIEw开发环境下。利用DB
1钿b
Openc0衄ecti加
Ⅵ可以建立与MysQL数据库的连接,如图3所示程序框图,输入端分别为DsN文件路径、My9QL数据库用户名和密码。
聱
叵三卜5一
(c)删除教据行程序
圈1用DsN文件连接M岿QL散据库
2.4访问MysQL散据库藏程
若编程对MysQL数据库进行各种操作,须按照如图2所示流程进行。其中建立和断开记录集的连接及对记录集的操作主要由数据集功能下的相关功能Ⅵ实现m一”。3
~:厘到童2
(d)敦据库备份程序
闰3散据库功能实现程序框图
3.3查询、修改和翻眙
用DBT∞k的数据。
系统数据库功能的实现.
下面就自动化测试系统中常用的各种数据库操作进行介
sel耐n出Ⅵ可以直接完成对数据库的查
询,既可查询数据库表的全部数据。也可查询某个或某些字段
绍。
修改某个数据或删除某个数据行.需要利用DB伽k
增刊2
Exe∞te
车荣国等:MysQL数据库在自动洲试系统中的应用
17l
如图3(b)、(c)所示,分别使用uPDA’IE函数和DEmE函
数实现了修改数据和删除数据行的功能。3.4数据库备份与恢复
我们可以用myBqldump程序把一个完整的数据库备份成
Qt搬yⅥ和sQL语句直接调用岣sQL数据库m1。
一个文本格式的文件。需要注意的是my¥中d衄p是一个独立
的程序而不是myeql程序里的一个命令;也就是说,不能在
唧砷程序里执行m州dtmp命令,必须像“my5州umP—u
k;iI瑚m—pdbIl8嘶>bac垃le”这样在一个shdl或命令窗
口里启动它。在bhvⅢw中,。sy帅E僦.Ⅵ”即执行系统
命令能从Ⅵ内部启动Wi-・d删s应用程序。因此用该Ⅵ可以
实现n驴棚u。p程序的调用。程序如图3(d),该程序将生成
名为~ack.唧。的备份文件,保存路径为在c盘DBb”uP文
件夹下。
当数据库被破坏或数据需要转移时,我们可以用上面生
陶5统计矗谢抖词
成的备份文件来恢复数据库,这就需要调用my唧程序来完成。其命令行的编写跟Mysqld—p相似,形式如下:“my唧
3(d)中命令行的叼s4Id岫p改为酬即可。
4应用实例
一u
J09imm—p
dbnam>b日c蛐,,程序的编写只要将图
本实例是基于h坍Ew设计的某车用硅油风扇离合器性能测试系统,该系统采用模块化设计能够实现全自动化测试,得到的数据保存到远程数据库中。使用M)rSQL数据库后不仅可以实现测试数据的网络共享,而且便于完整、综合地管
4.3敛据库维护
图6按时向查询程序框图
理系统中的数据㈣,系统软件结构如图4所示。在数据库维护模块下能查询数据库中的每个表,还能对
除测试信息表外的数据库表进行修改、删除、插入操作。对于测试信息表,侧重查询的优化,有分页查询和条件查询两种方式,并对该表建立索引以提高查询速度。图7为查询测试信息表时得到的结果。另外还能用备份文件实现数据库恢复功能。
图4铡试系统软件结构
数据库维护
本系统数据库由测试人员表、产品型号表、管理权限表、测试产品信息表、合格标准表等组成,其中测试得到的数据保存在测试产品信息表中。运用hbvm霄sQL
1甜姑t工具包
和sQL语言进行编程,系统实现了数据入库、存储数据的历史查询、统计、调用、添加、删除、修改和生成报表等功能。另外,为防止数据库中数据的意外丢失,增加了数据库的备份和恢复功能。这些功能主要在以下几个模块得以体现。4.1自动测试
自动测试摸块能够实时显示不同型号的硅油风扇离合器
≮一、”¨m--一一
圈7查询测试信息袭
在模拟工况下的性能相关参数和曲线图。通过调用数据库中
合格标准表的相应数据,智能的判断产品是否合格,最后将测
5结语
本文在深入研究bbvIEwsQL1钿Il【it工具包和致据库原理基础上,把My9QL散据库应用到硅油风扇离合器性能测试系统中。通过建立数据源(oDBc)用L丑bv皿wsQLTo濉t
得的数据和曲线图存储到测试产品信息表中。
4.2统计童询
统计主要是通过针对测试产品信息表的各种条件的查询得到涮试过的产品数量,从而准确得到其产量。前面板如图5所示,既可以按照测试时问、舅试人员、产品型号和产品质量这四个条件任意组合来查询.也可以按某个条件进行统计。当不选择任何条件时,系统会统计总的产量。该模块主要用sQL语句来实现对应的操作。图6为按时间查询的程序框图,采用选择结构.可以按照年、月、日、季度、周和任意时间来统计产量。
工具包与MysQL数据库进行了通信。在m唧环境下实
现了数据的存储、调用、查询和统计等功能,使敷据管理更加
系统、科学。大大提高了软件系统的可维护性,便于功能的扩展.同时也节省了开发时问。
参考文越:
【1】王恰苹.许爱强.汪定国.自动舅试系统中敷据管理IJ】.电子滔
量技木.2010.33(3):137一l”.
(下转第175页)
增刊2徐砖进等:基于音高与端点联合检测的音符识别算法
bd}ed蚰AMDF姐d^cFI
175
相关音高提取算法㈣的联合检测中表现尤其明显,已经无法
正确完成最后一个音符的识别。
c0血煳∞^嘲l正∞.辆h册d野窜11.1
a啪孔N^IEEE.2006:377—377.【4】
sUNx.^pilcll
c】//IcAssP2006:眦EI疵皿—佃咀l
PI。嘲ei‘l昏Hoc小
I一喜篝熊l
【3】马英.石小荣,李海新.基于cEP和眦谱提取语音信号基音周
期的方法【J1.现代电子技术.2∞9.32(20):150—151.
L..L.L
捌馨碘燃
L
I.
j
—M
_
h删毗T_曲【c】//Pm∞Edin学0fn悖6mImem吐ior■c口r矗p
朋∞0f卸0kenI
—679.
d删n蚯∞d日叫itlImbd}ed∞棚妯锄船瞌帅
_一■
g薛n帕酆iIIg.Beij岵I8.n.1,姗:676
【5】馀国庆.杨丹,王彬洁.等.乐音识别方法厦应用【J】.计算机应
¨¨眈。批叫:争螂枷0
用.2啷,25(4):968—970.
2
时侗b
图7基于sHR的联合检测
【6】赵彦平.赵晓晖.用于语音螭点检测的鲁棒性特征提取新方法
【习.吉林大学学报:工学版,2晰,26(T):77—81.
17】赵春明,赵索萍.语音识别中端点检测的研究【刀.福建电脑,
3结语
本文在sHR音高提取算法的基础上,结合经典端点检测方法,实现了一种音高、端点联合检测的音符识别方法。实验表明,该方法能有效提高音符切割精度,从而提高音符识别的准确性。这种联合检测方法的两个方面是相互影响的,使用传统的端点检测要完成连续乐音的粗切分,音高的检测要有一定的平稳性,否则会造成错误的判断,所以要选择具有一定抗干扰性的音高提取算法。合适的音高检澍算法可以提高该联合检测在噪声环境下的表现。参考文献:
Il】cERHARD
112】
2瞄.24(9):78—79.
18】徐国庆,扬丹.王彬洁。等.FRED和矾盯在乐音音符识别中的
应用研究【J】.计算机工程与应用,2∞5.4l(18):19l—193.
【9】曹西征,刘春红,孙林.基于w^V文件的独奏乐曲信号中的乐
谱识别【刀.计算机应用.2泐,29(3):7鹤一770.
【10】李超。熊璋,薛玲,等.一种嗣值自适应调整的宴时音频分割方
法【刀.北京航空航天大学学报,2啷,3I(12):1317—1321.
【1l】应氟赵晓晖.一种高精度改进型刚R基音检爵算法【J】.通信
学报.2瞄,衢(12):黼一92.
suNx.‰h如时mi瑚茁叫a,ld州∞qII丑l畸明dy幽憾吨H如
h蚰啪ic-峥h皿肿dcmdoIq∥n∞∞曲诤of匹雎l呲蜘u龋pdcor妇咖∞帆^o锄sti馏。却∞cl|。卸dsi弘dh∞e§豳gPi疆-
_Ⅱd∞咖t衄lⅫ%,耵嘲003・嘶【R】.R
m曲lI.2003.
D.PjtclI靠hI甜∞们d矗md岫nmbI珊:j7:阿卿
gi
u拓岫畸。ft口w.NJ:I髓E.2002.1:333—336.
【131韩纪庆.冯涛.郑贵滨,等.音频信息处理技术【M】.北京:清华
【2】
删l
u。nAI
BEl・QL^N。硼LU.^pi曲dcl幽d耐tllIn
大学出版社,撕.
(上接弟171页)
【21
橱乐平,李海涛等.hbv唧高级程序设}HM】.北京:清华大学
出版社.2003.470一473.
】
队DHEE
【3】wEN眦0.D洲G
崩etrch
ofd出山m删m钟6∞啦岫inhbVn挪b啪d掘AD0【q//hm“∞越co出№mc0_”u”qplk“∞“dsymⅢ
xI加R【II,姒YUc删c.d缸.‰
0
p∞c嘲u慨出唧【c】//皿旺s扫IdeⅡ睇Tds,q“m.删n阻Dc:唧娜uⅪsoc畸,∞11:329
0l‘口
—334.
s,s矾GHY.n山lo馨i唱姐d叫pe而。町∞“bd0f
枷婚W柚K。嚼咖,DC:皿EE
—233.
LOANG.DeB;即咄衄d.mI.’罾Iim
PHP
C删puterS0ciety,2010,7:229
nd址vIEw
pz。F咖【J1.M村Ⅲ出h岫m曲毗
ZH^O
a
d出h^特by心略嘶sQk
2嘲,13(6):32—36.
1
【4】柏林.王见.秦树人.虚拟仪器及其在机械澍试中的应用【M】.北
京:科学出版杜,2007.【5】
u
朱后,彭字宁.在hbVIEw中动态配置0DBc数据源的方法【j1.工业控箭计算机.2006。19(7):45—46.
zHONCI从NG,YU^N且”ⅨIN.w^NCK^I.d吐
2
Z}I^NCWANxU。HELrU,
WU.脚龃6柏h-oed∞
hdh∞_硒
^l曲:Il;蚰0f址VmW.inT-di“on咖itor蛐d曲^bt时
bybI{dI|bVmw-nd
InknIad叩-l
呻88即蛳Ⅱ竹日蛔af)【i.越”l|c托-c衄【J】.Nud蚺P眦
16】J矾C删删G.H皿LUHU^.踟CB0.西d.Ite咄
b咖目i昏2咖.29‘2):1∞一1∞.
l‘bⅢl叼她∞删忡捌∞址vmw【C1∥
山仰m_妇.WI曲如睁眦DC:皿EE
lOl6一1019.
,
锄呼WIdil妒札DC:I既EC哪棚船Sod啊.20lO:1—3.朱飞.洪荣景,陈捷.等.基于m哪的回转支承罚控系统敦
据库的访问【JI.轴承.20lO.110):51—55.
Cadh撇oⅡhI南n珊匝叩TII州越d
c#p10印“眦i“g幻删棚da汕嘶【c】∥
h吐印呲圳岛n缸柚∞舶^I哪u一唱‰d。口-nd№曲曲帆h
co唧恤r蜘唧.∞10,2:
【7】
庸渡,潘红兵.赵以属.等.在【丑bv皿w环境下基于AD0技术和
4
谢标错.沈辉,陈呜.基于址哪的光伏运行数据库设计和
MI^O
应用【刀.太阳能学报.20lO.3l(8):994一螂.
5
M村l】(I^NG.m^-b‘螺吨I吐嵋mdId-I.d印pli∞dm
jn
d∞呐k
sQL语言的教据库系统实现【JJ.仪器仪表学报.姗.2B(4】:
227—229.
p咖m瞳-i缸町咖b,埘ng工J‘鸲QL{n一咖d
i地咖m龇I丑bVlEw【刀.1nl抽n毗j吼hchIdo盯k‰咖k时h唔
匈“%2010,∞:llO—115.
6
【8】冀伟.虚拟仪器及散据库在起落槊测试系统中的应用【D】.西
安:西北工业大学.2∞6.
崔洲娟.基于I曲、,IEw的电破频谱数据处理系统的开发【J】.国
外电子滔量技术,2010.29(3):52—55.
MySQL数据库在自动测试系统中的应用
作者:
作者单位:刊名:英文刊名:年,卷(期):
李荣国, 王见, LI Rong-guo, WANG Jian重庆大学机械工程学院,重庆,400030计算机应用
Journal of Computer Applications2011,31(z2)
参考文献(16条)
1. 王怡苹;许爱强;汪定国 自动测试系统中数据管理[期刊论文]-电子测量技术 2010(03)2. 杨乐平;李海涛 LabVIEW高级程序设计 2003
3. WEN HA0;DONG XIAORUI;MA YUCHENG The research of database connection methods in LabVIEW based on ADO 20104. 柏林;王见;秦树人 虚拟仪器及其在机械测试中的应用 2007
5. LI ZHONGLIANG;YUAN JIANXIN;WANG KAI Application of LabVIEW,in radiation monitor and database management system ofXi'an pulse reactor[期刊论文]-Nuclear Power Engineering 2008(02)
6. JING JUNFENG;NIE LUHUA;WANG BO Remote laboratory data management system based on LabVIEW 20107. 唐波;潘红兵;赵以顺 在LabVIEW环境下基于ADO技术和SQL语言的数据库系统实现 2007(04)8. 冀伟 虚拟仪器及数据库在起落架测试系统中的应用[学位论文] 2006
9. PADHEE S;SINGH Y Data logging and supervisory control of process using LabVIEW 2011
10. LOAN G Designing and interrogation a datable by using My3QL,PHP and LabVIEW programmes 2008(06)11. 朱后;彭宇宁 在LabVIEW中动态配置ODBC数据源的方法[期刊论文]-工业控制计算机 2006(07)
12. ZHANG WANXU;HE LIU;ZHAO WU Realization based on hybrid LabVIEW and C# programming to aceess database 201013. 朱飞;洪荣景;陈捷 基于LabVIEW的回转支承测控系统数据库的访问[期刊论文]-轴承 2010(10)14. 谢标锴;沈辉;陈鸣 基于LabVIEW的光伏运行数据库设计和应用[期刊论文]-太阳能学报 2010(08)
15. MIAO MANXIANG Database visiting method and application in electronic power monitor system by using LabSQL invirtual instrument LabVIEW 2010
16. 崔洲娟 基于LabVIEW的电磁频谱数据处理系统的开发[期刊论文]-国外电子测量技术 2010(03)
本文读者也读过(1条)
1. 耿剑峰. 倪天倪 跨平台下MySQL数据库的自动备份[期刊论文]-计算机与现代化2004(2)
本文链接:http://d.g.wanfangdata.com.cn/Periodical_jsjyy2011z2052.aspx
第3l卷增刊2
2011年12月
计算机应用
Joumal“ComPuterApplications
v01.3l
Suppl.2
Dec.2011
文章编号:1001—9081(2011)S2—0169一03
MySQL数据库在自动测试系统中的应用
李荣国,王见
(重庆大学机械工程学院,重庆400030)
(rglinuc@qq.cmn)
摘要:针对虚拟仪器的传统数据管理方法,将MysQL数据库引入到自动测试系统的设计中。介绍了hbvIEw数据库接口、MySQL数据库与L丑bⅥEw之间的通信以及各种数据库功能实现方法,结合实例用MySQL数据库实现了硅油风扇离合器性能测试系统的数据管理,取得了良好的效果。
关键词:MySQL数据库;hbvIEWsQL1.ooIkjt;自动测试系统;虚拟仪器中图分类号:TP
392
文献标志码:A
ApplicationofMySQL
databaseinautomatictest
systems
(似如驴o,胁咖,l赴耐肠删g.cJIo哪垤协I跏妨CIlo哪沁400030,Ch汛)
Abst髓ct:AccoIding
to
URong—guo,WANGJi姐
metraditi鲫al
眦king
to
mutllal
co咖umcation
dataⅡ哪ageIIlentmetllodsof、,inualinsm蚰ent'thispaperimrodueedtheway0f
possible蚰drealjziIlgthe麟pectivefⅢIctio璐0fVario璐databases锄oIlgLabVIEWSQL
thesisdemo璐trated
’I钿lkit,MySQLdatab鹊e蚰dLabVIEW.Besides,the
tlIe
the胡ktive
methodof
applyingMysQL
satis铆Ilg.
datab酗e
peIf孤n蚰ce
testingsystem
ofsilic∞eoil
Key
words:MySQLdatabase;LabVIEw
SQL础t;肌tomatic
f如clutch.EVentually,theresuhoftllisexperimemis
t∞ting;1,inllalinstmIllentation
O
引言
随着控制理论及电子和计算机技术的高速发展,为适应
点是易于理解,操作简单¨曲J。
安装好LabV正ⅣsQL1klkit工具包后,会在函数模板中
互连接口下出现一个Databa∞子模板。在D如ba鸵子模板,
主要由三部分函数组成,一部分是基本的数据库连接、插入、查询函数;一部分是高级函数,可以编写sQL语句完成许多复杂的数据库操作;还有一部分是辅助函数,可以实现一些数据库辅助功能,如列出数据库表及其字段、数据库事件处理等。表1中列出了该工具包中常用的Ⅵ名称和功能p“J。
表1
1
科研和生产中的需求,在检测技术领域出现了许多新的理论、技术和概念,虚拟仪器也由此而生【IJ。虚拟仪器的概念提出后,自动化测试系统的软件设计在整个系统中就显得更为重要。在硬件通用测试平台的基础上,系统的人机界面、测试功能与系统扩展都需要软件来实现。在传统测试软件编制过程中,主要以测试流程为依据,由上至下逐步完成,所有的输入参数、测试标准等都内置于测试软件中。任何参数的改动以及测试系统的扩展,都需要重新编译程序,大大增加了软件的开发时间,降低了系统的可靠性。面对复杂的设备测试时,自动测试软件不仅变得十分庞大,而且软件的维护也更加困难’2】。所以,传统测试软件的通用性、可维护性、可扩展性都比较差。显然采用传统的数据管理方法是不可行的,所以通过数据库来实现测试项目选择、测试流程控制以及测试数据管理,可以实现软件的高效开发、使用和维护。而首先要解决的就是专业软件与数据库之间的互访和管理问题。1
LabVlEwsQLT00lkit工具包常用函数的功能
V1名称
DBTool8DB
功能
建立与指定数据库的连接断开与指定数据库的连接生成数据库表删除数据库表
向指定数据库表中插入一行新数据查询指定数据库表中所有字段或某字段数据
执行SQL语句查询
通过关闭相关引用来释放对象列出指定数据库表的所有字段
O∞nC∞nection
1钿lsClo∞Com婚出∞
CreateTable
DBl硼8
DBT00lsDB
DroDl枞e
TcdslnsertDa纽
selectDa诅
DB‰18
DBTcd8
DB乳d8ExecuteQueIy
Fr∞Obi∞t
LabVIEW数据库接口
在测试领域,美国国家仪器(简称Ⅵ)公司开发的
DBToolsUstColumns
LabVIEwSQL1klkit提供了两种数据库连接方式:一种
LabVIEw是一款非常优秀的测试系统开发环境,具备完善的测试功能,但没有提供与通用数据库直接接口的方法。为解决这一问题,NI公司提供了数据库接口工具包LabVIEwSQL1钿Ikit(又称LabVIEW
Databa∞Connecdvity
是开放数据互连技术(Open
(Application
DataBa鸵C咖ectivity,0DBc),
它只能对关系型数据库进行访问。由多层的应用程序接口
Pr0舒帅IIlingInte出ce,API)和一个驱动程序文件
soIlrce
JI砺Iset)。它是一组成,通过定义数据源的名字DSN(D砒a连接;另一种是UDA(Unive玛al
Data
Name)来实现
个能快速连接本地或远程数据库,不使用sQL语言就能完成诸多数据库操作的工具包,它支持当前流行数据库,包括Micms旃Acc髂s,MicroSoRsQLsever以及MysQL等。它的优
收稿日期:20ll—07—03。
Acc髓s),此标准既可以
访问关系型数据库,又可以访问非关系型数据库。UDA标准中又分为0LEDB和ADO两种不同的方法一J。OLEDB是针
作者简介:李荣国(1986一),男,山东安丘人.硕士研究生,主要研究方向:智能测试、虚拟仪器;王见(1975一),男。新疆喀什人,副教授,博士,主要研究方向:智能测试技术、虚拟仪器技术、机电一体化技术。
170
计算机应用
3.1测试数据存储
20lI车
对操作系统设计的,AD0则在应用程序接口中使用可依据数据的类型来选择不同的方法。2
2.1
数据的存储是数据库最常用的功能之一,可以用以下两种方法来实现:一种是用DB
LabⅥEw访问MySQL数据库
MySQL数据库
自动测试系统的大容量数据存储需要借助优秀的数据库
T池Iflse^Data、rI来完成,在输
入端连接表格的名称,若将全部字段下的数据插入到表中则“∞h珊m”端设置为空,如图3(a)所示。若只向某些字段中
插人数据,则需要在“砌岫m”端连接由相应字段名构成的字
符串数组中。该方法比较方便,操作也很简单。另一种是用“Adv蚰ced“下的DBQueryVI和DB1切kFk
平台,完成数据的安全、完整和快速存储,方便灵活的查询。而MysQL数据库无疑是一个很好的选择,它是多线程、多用户的关系型数据库,具有以下特性:存储方面,每个表可以处理多达50
000
1诎Ex∞ute
ObjectVl来完成。但该方法需要编写sQL语句,在sQL语言中,通过用“ins酣”命令向表中插人新的数据行,其语法格式为:i舶en
jIl士o
000个记录;写人数据所用时间只有sQL
servcr、^cc嘲的1%或更少;优化的sQL查询算法,有效地提
高查询速度;完善的权限设置机制,保证数据的安全;提供TcP/妒、ODBc和JDBc等多种数据库连接途径;提供用于管理、检查、优化数据库操作的管理工具。另外MysQL占用磁盘空间很小,只有100多兆,安装、启动执行也很方便。
2.2
table(col眦以,洲岫nB,colu啪c)valu船(’
a’,1,2)。由于jn跎^语句为字符串语句,要将数字型数据转换成字符串,数字型的数组也要转化成字符串,字符型数据之间用“.”隔开”“。
《里甄零西
,............』』:..一=二卫=
l连接记录集
J
断开记录集
ODBC致据琢的配置
l
为实现陆、rⅢw与MysQL的通信,须安装MysQL数据
库的ODBc驱动程序MysQLconnec【o∥ODBc.然后在控制面板中的oDBc数据源中创建一个DsN(数据源名)文件,以保证LabVIEW通过DsN来调用设计好的MysQL数据库。可以通过以下方法来创建DsN:打开控制面板上的管理工具,选择数据源(ODBc),点击“文件DsN”选项卡,再点击“添加”,选择MysQLoDBc驱动。然后为DsN文件命名,这样就建立了一个DsN文件“…。建立好DsN文件后需要对其进行配置才能使用,包括用户名、密码、设置本地服务器还是远程服务器以及选择哪个数据库,设置好之后点击。T鹩t”看是否能连接成功。
虽然手动配置OnBc方便简单,但当数据源位置改变或测试系统软件更换运行电脑时,需要用户运行程序之前重新进行ODBc的相关配置,从而降低了测试系统的可操作性和
=二卫二
l对记录集进行操作l
I
———矿一
逼显亟丞蟹圈多
图2访问嘶sQL流程
(时存储致据程序
通用性。因此.可以编写汕V皿w程序通过向注册表中添加
键值来实现oDBc的动态配置,然后将其做成子Ⅵ放到测试软件中在访问MysQL之前运行即可。具体实现方法可见参考文献[11]。
2.3
LabV正W与MysQL的连接
O)修改数据程序
在蚰vIEw开发环境下。利用DB
1钿b
Openc0衄ecti加
Ⅵ可以建立与MysQL数据库的连接,如图3所示程序框图,输入端分别为DsN文件路径、My9QL数据库用户名和密码。
聱
叵三卜5一
(c)删除教据行程序
圈1用DsN文件连接M岿QL散据库
2.4访问MysQL散据库藏程
若编程对MysQL数据库进行各种操作,须按照如图2所示流程进行。其中建立和断开记录集的连接及对记录集的操作主要由数据集功能下的相关功能Ⅵ实现m一”。3
~:厘到童2
(d)敦据库备份程序
闰3散据库功能实现程序框图
3.3查询、修改和翻眙
用DBT∞k的数据。
系统数据库功能的实现.
下面就自动化测试系统中常用的各种数据库操作进行介
sel耐n出Ⅵ可以直接完成对数据库的查
询,既可查询数据库表的全部数据。也可查询某个或某些字段
绍。
修改某个数据或删除某个数据行.需要利用DB伽k
增刊2
Exe∞te
车荣国等:MysQL数据库在自动洲试系统中的应用
17l
如图3(b)、(c)所示,分别使用uPDA’IE函数和DEmE函
数实现了修改数据和删除数据行的功能。3.4数据库备份与恢复
我们可以用myBqldump程序把一个完整的数据库备份成
Qt搬yⅥ和sQL语句直接调用岣sQL数据库m1。
一个文本格式的文件。需要注意的是my¥中d衄p是一个独立
的程序而不是myeql程序里的一个命令;也就是说,不能在
唧砷程序里执行m州dtmp命令,必须像“my5州umP—u
k;iI瑚m—pdbIl8嘶>bac垃le”这样在一个shdl或命令窗
口里启动它。在bhvⅢw中,。sy帅E僦.Ⅵ”即执行系统
命令能从Ⅵ内部启动Wi-・d删s应用程序。因此用该Ⅵ可以
实现n驴棚u。p程序的调用。程序如图3(d),该程序将生成
名为~ack.唧。的备份文件,保存路径为在c盘DBb”uP文
件夹下。
当数据库被破坏或数据需要转移时,我们可以用上面生
陶5统计矗谢抖词
成的备份文件来恢复数据库,这就需要调用my唧程序来完成。其命令行的编写跟Mysqld—p相似,形式如下:“my唧
3(d)中命令行的叼s4Id岫p改为酬即可。
4应用实例
一u
J09imm—p
dbnam>b日c蛐,,程序的编写只要将图
本实例是基于h坍Ew设计的某车用硅油风扇离合器性能测试系统,该系统采用模块化设计能够实现全自动化测试,得到的数据保存到远程数据库中。使用M)rSQL数据库后不仅可以实现测试数据的网络共享,而且便于完整、综合地管
4.3敛据库维护
图6按时向查询程序框图
理系统中的数据㈣,系统软件结构如图4所示。在数据库维护模块下能查询数据库中的每个表,还能对
除测试信息表外的数据库表进行修改、删除、插入操作。对于测试信息表,侧重查询的优化,有分页查询和条件查询两种方式,并对该表建立索引以提高查询速度。图7为查询测试信息表时得到的结果。另外还能用备份文件实现数据库恢复功能。
图4铡试系统软件结构
数据库维护
本系统数据库由测试人员表、产品型号表、管理权限表、测试产品信息表、合格标准表等组成,其中测试得到的数据保存在测试产品信息表中。运用hbvm霄sQL
1甜姑t工具包
和sQL语言进行编程,系统实现了数据入库、存储数据的历史查询、统计、调用、添加、删除、修改和生成报表等功能。另外,为防止数据库中数据的意外丢失,增加了数据库的备份和恢复功能。这些功能主要在以下几个模块得以体现。4.1自动测试
自动测试摸块能够实时显示不同型号的硅油风扇离合器
≮一、”¨m--一一
圈7查询测试信息袭
在模拟工况下的性能相关参数和曲线图。通过调用数据库中
合格标准表的相应数据,智能的判断产品是否合格,最后将测
5结语
本文在深入研究bbvIEwsQL1钿Il【it工具包和致据库原理基础上,把My9QL散据库应用到硅油风扇离合器性能测试系统中。通过建立数据源(oDBc)用L丑bv皿wsQLTo濉t
得的数据和曲线图存储到测试产品信息表中。
4.2统计童询
统计主要是通过针对测试产品信息表的各种条件的查询得到涮试过的产品数量,从而准确得到其产量。前面板如图5所示,既可以按照测试时问、舅试人员、产品型号和产品质量这四个条件任意组合来查询.也可以按某个条件进行统计。当不选择任何条件时,系统会统计总的产量。该模块主要用sQL语句来实现对应的操作。图6为按时间查询的程序框图,采用选择结构.可以按照年、月、日、季度、周和任意时间来统计产量。
工具包与MysQL数据库进行了通信。在m唧环境下实
现了数据的存储、调用、查询和统计等功能,使敷据管理更加
系统、科学。大大提高了软件系统的可维护性,便于功能的扩展.同时也节省了开发时问。
参考文越:
【1】王恰苹.许爱强.汪定国.自动舅试系统中敷据管理IJ】.电子滔
量技木.2010.33(3):137一l”.
(下转第175页)
增刊2徐砖进等:基于音高与端点联合检测的音符识别算法
bd}ed蚰AMDF姐d^cFI
175
相关音高提取算法㈣的联合检测中表现尤其明显,已经无法
正确完成最后一个音符的识别。
c0血煳∞^嘲l正∞.辆h册d野窜11.1
a啪孔N^IEEE.2006:377—377.【4】
sUNx.^pilcll
c】//IcAssP2006:眦EI疵皿—佃咀l
PI。嘲ei‘l昏Hoc小
I一喜篝熊l
【3】马英.石小荣,李海新.基于cEP和眦谱提取语音信号基音周
期的方法【J1.现代电子技术.2∞9.32(20):150—151.
L..L.L
捌馨碘燃
L
I.
j
—M
_
h删毗T_曲【c】//Pm∞Edin学0fn悖6mImem吐ior■c口r矗p
朋∞0f卸0kenI
—679.
d删n蚯∞d日叫itlImbd}ed∞棚妯锄船瞌帅
_一■
g薛n帕酆iIIg.Beij岵I8.n.1,姗:676
【5】馀国庆.杨丹,王彬洁.等.乐音识别方法厦应用【J】.计算机应
¨¨眈。批叫:争螂枷0
用.2啷,25(4):968—970.
2
时侗b
图7基于sHR的联合检测
【6】赵彦平.赵晓晖.用于语音螭点检测的鲁棒性特征提取新方法
【习.吉林大学学报:工学版,2晰,26(T):77—81.
17】赵春明,赵索萍.语音识别中端点检测的研究【刀.福建电脑,
3结语
本文在sHR音高提取算法的基础上,结合经典端点检测方法,实现了一种音高、端点联合检测的音符识别方法。实验表明,该方法能有效提高音符切割精度,从而提高音符识别的准确性。这种联合检测方法的两个方面是相互影响的,使用传统的端点检测要完成连续乐音的粗切分,音高的检测要有一定的平稳性,否则会造成错误的判断,所以要选择具有一定抗干扰性的音高提取算法。合适的音高检澍算法可以提高该联合检测在噪声环境下的表现。参考文献:
Il】cERHARD
112】
2瞄.24(9):78—79.
18】徐国庆,扬丹.王彬洁。等.FRED和矾盯在乐音音符识别中的
应用研究【J】.计算机工程与应用,2∞5.4l(18):19l—193.
【9】曹西征,刘春红,孙林.基于w^V文件的独奏乐曲信号中的乐
谱识别【刀.计算机应用.2泐,29(3):7鹤一770.
【10】李超。熊璋,薛玲,等.一种嗣值自适应调整的宴时音频分割方
法【刀.北京航空航天大学学报,2啷,3I(12):1317—1321.
【1l】应氟赵晓晖.一种高精度改进型刚R基音检爵算法【J】.通信
学报.2瞄,衢(12):黼一92.
suNx.‰h如时mi瑚茁叫a,ld州∞qII丑l畸明dy幽憾吨H如
h蚰啪ic-峥h皿肿dcmdoIq∥n∞∞曲诤of匹雎l呲蜘u龋pdcor妇咖∞帆^o锄sti馏。却∞cl|。卸dsi弘dh∞e§豳gPi疆-
_Ⅱd∞咖t衄lⅫ%,耵嘲003・嘶【R】.R
m曲lI.2003.
D.PjtclI靠hI甜∞们d矗md岫nmbI珊:j7:阿卿
gi
u拓岫畸。ft口w.NJ:I髓E.2002.1:333—336.
【131韩纪庆.冯涛.郑贵滨,等.音频信息处理技术【M】.北京:清华
【2】
删l
u。nAI
BEl・QL^N。硼LU.^pi曲dcl幽d耐tllIn
大学出版社,撕.
(上接弟171页)
【21
橱乐平,李海涛等.hbv唧高级程序设}HM】.北京:清华大学
出版社.2003.470一473.
】
队DHEE
【3】wEN眦0.D洲G
崩etrch
ofd出山m删m钟6∞啦岫inhbVn挪b啪d掘AD0【q//hm“∞越co出№mc0_”u”qplk“∞“dsymⅢ
xI加R【II,姒YUc删c.d缸.‰
0
p∞c嘲u慨出唧【c】//皿旺s扫IdeⅡ睇Tds,q“m.删n阻Dc:唧娜uⅪsoc畸,∞11:329
0l‘口
—334.
s,s矾GHY.n山lo馨i唱姐d叫pe而。町∞“bd0f
枷婚W柚K。嚼咖,DC:皿EE
—233.
LOANG.DeB;即咄衄d.mI.’罾Iim
PHP
C删puterS0ciety,2010,7:229
nd址vIEw
pz。F咖【J1.M村Ⅲ出h岫m曲毗
ZH^O
a
d出h^特by心略嘶sQk
2嘲,13(6):32—36.
1
【4】柏林.王见.秦树人.虚拟仪器及其在机械澍试中的应用【M】.北
京:科学出版杜,2007.【5】
u
朱后,彭字宁.在hbVIEw中动态配置0DBc数据源的方法【j1.工业控箭计算机.2006。19(7):45—46.
zHONCI从NG,YU^N且”ⅨIN.w^NCK^I.d吐
2
Z}I^NCWANxU。HELrU,
WU.脚龃6柏h-oed∞
hdh∞_硒
^l曲:Il;蚰0f址VmW.inT-di“on咖itor蛐d曲^bt时
bybI{dI|bVmw-nd
InknIad叩-l
呻88即蛳Ⅱ竹日蛔af)【i.越”l|c托-c衄【J】.Nud蚺P眦
16】J矾C删删G.H皿LUHU^.踟CB0.西d.Ite咄
b咖目i昏2咖.29‘2):1∞一1∞.
l‘bⅢl叼她∞删忡捌∞址vmw【C1∥
山仰m_妇.WI曲如睁眦DC:皿EE
lOl6一1019.
,
锄呼WIdil妒札DC:I既EC哪棚船Sod啊.20lO:1—3.朱飞.洪荣景,陈捷.等.基于m哪的回转支承罚控系统敦
据库的访问【JI.轴承.20lO.110):51—55.
Cadh撇oⅡhI南n珊匝叩TII州越d
c#p10印“眦i“g幻删棚da汕嘶【c】∥
h吐印呲圳岛n缸柚∞舶^I哪u一唱‰d。口-nd№曲曲帆h
co唧恤r蜘唧.∞10,2:
【7】
庸渡,潘红兵.赵以属.等.在【丑bv皿w环境下基于AD0技术和
4
谢标错.沈辉,陈呜.基于址哪的光伏运行数据库设计和
MI^O
应用【刀.太阳能学报.20lO.3l(8):994一螂.
5
M村l】(I^NG.m^-b‘螺吨I吐嵋mdId-I.d印pli∞dm
jn
d∞呐k
sQL语言的教据库系统实现【JJ.仪器仪表学报.姗.2B(4】:
227—229.
p咖m瞳-i缸町咖b,埘ng工J‘鸲QL{n一咖d
i地咖m龇I丑bVlEw【刀.1nl抽n毗j吼hchIdo盯k‰咖k时h唔
匈“%2010,∞:llO—115.
6
【8】冀伟.虚拟仪器及散据库在起落槊测试系统中的应用【D】.西
安:西北工业大学.2∞6.
崔洲娟.基于I曲、,IEw的电破频谱数据处理系统的开发【J】.国
外电子滔量技术,2010.29(3):52—55.
MySQL数据库在自动测试系统中的应用
作者:
作者单位:刊名:英文刊名:年,卷(期):
李荣国, 王见, LI Rong-guo, WANG Jian重庆大学机械工程学院,重庆,400030计算机应用
Journal of Computer Applications2011,31(z2)
参考文献(16条)
1. 王怡苹;许爱强;汪定国 自动测试系统中数据管理[期刊论文]-电子测量技术 2010(03)2. 杨乐平;李海涛 LabVIEW高级程序设计 2003
3. WEN HA0;DONG XIAORUI;MA YUCHENG The research of database connection methods in LabVIEW based on ADO 20104. 柏林;王见;秦树人 虚拟仪器及其在机械测试中的应用 2007
5. LI ZHONGLIANG;YUAN JIANXIN;WANG KAI Application of LabVIEW,in radiation monitor and database management system ofXi'an pulse reactor[期刊论文]-Nuclear Power Engineering 2008(02)
6. JING JUNFENG;NIE LUHUA;WANG BO Remote laboratory data management system based on LabVIEW 20107. 唐波;潘红兵;赵以顺 在LabVIEW环境下基于ADO技术和SQL语言的数据库系统实现 2007(04)8. 冀伟 虚拟仪器及数据库在起落架测试系统中的应用[学位论文] 2006
9. PADHEE S;SINGH Y Data logging and supervisory control of process using LabVIEW 2011
10. LOAN G Designing and interrogation a datable by using My3QL,PHP and LabVIEW programmes 2008(06)11. 朱后;彭宇宁 在LabVIEW中动态配置ODBC数据源的方法[期刊论文]-工业控制计算机 2006(07)
12. ZHANG WANXU;HE LIU;ZHAO WU Realization based on hybrid LabVIEW and C# programming to aceess database 201013. 朱飞;洪荣景;陈捷 基于LabVIEW的回转支承测控系统数据库的访问[期刊论文]-轴承 2010(10)14. 谢标锴;沈辉;陈鸣 基于LabVIEW的光伏运行数据库设计和应用[期刊论文]-太阳能学报 2010(08)
15. MIAO MANXIANG Database visiting method and application in electronic power monitor system by using LabSQL invirtual instrument LabVIEW 2010
16. 崔洲娟 基于LabVIEW的电磁频谱数据处理系统的开发[期刊论文]-国外电子测量技术 2010(03)
本文读者也读过(1条)
1. 耿剑峰. 倪天倪 跨平台下MySQL数据库的自动备份[期刊论文]-计算机与现代化2004(2)
本文链接:http://d.g.wanfangdata.com.cn/Periodical_jsjyy2011z2052.aspx