基于VBA的快速测试自动化设计与实现.pdf
《基于VBA的快速测试自动化设计与实现.pdf》由会员分享,可在线阅读,更多相关《基于VBA的快速测试自动化设计与实现.pdf(5页珍藏版)》请在咨信网上搜索。
1、第 17 期2023 年 9 月无线互联科技Wireless Internet TechnologyNo.17September,2023作者简介:王阴雨(1982),男,江苏南京人,工程师,学士;研究方向:雷达系统集成。基于 VBA 的快速测试自动化设计与实现王阴雨(南京电子技术研究所,江苏 南京 210039)摘要:文章针对雷达批生产中测试自动化的迫切需求,提出一种简明实用的基于 VBA 编程环境、VISA标准库和 SCPI 命令的自动化程序开发方法,以矢量网络分析仪对射频综合网络的测试为实例,阐述了开发流程和设计思路,使集成调试人员能够灵活地根据被测产品自主完成编程,快速实现仪器程控、数
2、据采集与处理分析、验收测试报告数据的自动导入等。结果表明,使用该方法开发的测试自动化程序具有便利性、实用性、扩展性,大幅提升了测试效率。目前,已在实际工程中应用。关键词:VBA;VISA;SCPI;测试自动化中图分类号:TP29 文献标志码:A0 引 言 随着雷达技术的快速发展,为了提高大数据量和大批量产品的测试效率,测试自动化系统已经广泛应用于批生产1。但定制化的测试系统产品覆盖占比依旧很低,对非定制对象不具备兼容性,程序开发和更新需由专业软件设计人员进行,开发成本高、周期长。批生产集成调试面对产品不断更新的同时,还需保持出厂产品的售后维修支持,产品种类繁多,技术状态迥异,专业涉及面广,测试
3、工作量大。使非软件专业的集成调试人员具备自主开发能力,灵活地针对测试产品快速实现测试自动化是提高效率的必要手段之一。本文以矢量网络分析仪对射频综合网络的测试为实例,详细阐述基于 VBA 编程环境、虚拟仪器软件体系结构(Virtual Instrument Software Architecture,VISA)标准库和 SCPI 命令快速完成测试自动化程序开发的方法,实现仪器程控、数据采集与处理分析,并自动将数据导出至验收测试报告。软硬件构架及工作流程如图 1 所示。1 开发环境设置1.1 VBA VBA(Visual Basic for Applications)是基于 VB(Visual B
4、asic for Windows)发展而来的,与 VB 一样是属于面向对象的编程语言。在批生产集成调试中,基于 VBA 实现自动化开发有以下优点2:(1)不需要单独安装 IDE(集成开发环境),直接使用嵌套在 Excel、Word 等 Office 软件开发工具中的VBA 编程器进行编程;对上位机的软、硬件配置要求也比较低(Windows7 及 Office2010 足以满足编程需求),可以充分地利用现有计算机硬件资源。(2)VBA 的语法结构与 VB 相似,编程环境在Office 软件内,对非软件设计专业的集成调试人员而言相对简单易学,配合宏录制功能,能够在短时间内图 1 软硬件构架及工作流
5、程完成程序编程,开发周期短。(3)VBA 可以灵活地调用 Office 软件自带的函数和图表功能,直接使用 Excel 进行数据的存储和处理分析,无需安装额外的数据处理软件。(4)使用 VBA 可以方便地在 Office 软件之间进行数据交互,采集到的数据经过 Excel 分析处理后可直接导出至 Word,生成验收测试报告。1.2 VISA VISA 提供了简单易用的控制函数集,具有完备的仪器控制功能与资源管理3。通过安装 Agilent/Keysight IO Libraries Suite,在 Excel 的 VBA 编辑器菜07第 17 期2023 年 9 月无线互联科技软件开发No.1
6、7September,2023单栏“工具-引用”选项中,勾选“VISA-COM Type Library”,即可调用 VISA 的函数库4。1.3 SCPI可编程仪器标准命令(Standard Command for Program Instrument,SCPI)是为解决程控仪器标准化而制定的标准程控语言5。SCPI 分为通用命令和仪器指定命令6。通用命令主要用来控制仪器复位、自检以及状态查询等,该组命令以“”开始;仪器指定命令用来进行测量、读取数据等操作以及控制仪器的设置,通过厂家提供的程控手册可以查询、获取对应仪器的详细命令集。2 软件设计实现2.1 程序主界面设计 在 Excel 软件
7、中使用组合键 Alt+F11 打开 VBA编辑界面,在 VBAProject 中插入用户窗体,利用工具箱中自带的框架、文本框、选择框、命令按钮等窗体控件,可以快速地完成程序主界面的布局设计。程序主界面如图 2 所示,分为显示器、仪表控制、数据采集、数据分析、文件处理 5 个框架模块。显示器为程序响应信息的显示窗口,如仪表的连接状态、打开文件的路径名称信息、报错信息等。仪表控制为仪器通信连接方式的选择、测试参数设置、窗口设置以及常用的仪表功能设置。根据测试产品的技术指标不同,可以使用分页进行管理。数据采集通过按钮点击响应,可显示累计采集次数。对误操作的采集数据,可以通过指定行号删除。工作表的首行
8、为采样频点,可一键实现隐藏和显示。数据分析根据测试产品的实际需求定制,主要展示关键指标的测量和计算结果,在工作表中对指定数据进行自动筛选、定位和标记,一键生成图表等。文件处理完成数据的导出、保存和回调。主程序保存在 xlsm 格式的 Excel 文件内,在ThisWorkbook 中输入以下代码,实现打开 Excel 工作簿自动弹出程序主界面:Sub workbook_open()UserForm1.Show(0)End Sub2.2 仪器连接 为了适应新的通信技术发展,仪器厂家逐步在推广 LAN 接口的仪器,但 GPIB 接口仍是目前被广泛使用的仪器程控接口,利用 VISA 与接口无关的特性
9、7,使用一套程序可以通过这两种方式与仪器进行通信。GPIB 接口采用 USB-GPIB 转换器、LAN 口通过网线与主控计算机相连,在链接地址文本框中修改目标仪器的 GPIB 地址或 IP 地址就能完成连接,连接成功后在程序主界面显示器内显示仪器的出厂信息。实现与仪器连接通信的核心代码如下:声明 VNA(矢网)为 VISA 的一个对象(设备)Public VNA As VisaComLib.FormattedIO488连接仪器并接收反馈信息图 2 程序主界面声明 IOManager 为 VISA 的一个对象(资源管理器)Dim IOManager As VisaComLib.ResourceM
10、anager连接不成功跳转至错误提示On Error GoTo Error1建立资源管理器和设备实例Set IOManager=New VisaComLib.ResourceManagerSet VNA=New VisaComLib.FormattedIO488发送地址码连接仪器Set VNA.IO=IOManager.Open(GPIB 地址或 IP地址)询问仪器信息并将反馈信息显示在显示器VNA.WriteString(IDN?)TextBox1.Text=(连接成功!仪表信息如下:&Chr(10)&VNA.ReadString)Exit SubError1:连接不成功提示TextBox1
11、.Text=(连接不成功!请检查连接方式和仪表地址。)2.3 仪器设置 根据实际测试仪器设计相应的控制界面,本案例测试仪器为网络分析仪,主要进行 S 参数测量,设置17第 17 期2023 年 9 月无线互联科技软件开发No.17September,2023了 4 个窗口 WIND1 WIND4 分别显示轨迹 trc1 trc4,显示格式可以通过下拉选项选择,测量参数默认分别设为 S21 幅度、S21 相位、S11 输入驻波和 S22 输出驻波。通过以下代码对窗口、轨迹、测量格式、功能参数、起止频率进行设置:窗口设置With VNA初始化仪器.WriteString(RST).WriteStr
12、ing(CONF:CHAN1:STAT OFF)设置轨迹 1 测量为 S21.WriteString(CALC:PAR:SDEF trc1,s21)读取下拉列表设置数据格式.WriteString(CALC:FORM&Space(1)&(Combox1.Text)打开窗口 1.WriteString(DISP:WIND1:STAT ON)打开轨迹 1.WriteString(DISP:WIND1:TRAC:FEED trc1)读取文本框数值设置比例值.WriteString(DISP:WIND1:TRAC:Y:PDIV&Str(TextBox16.Text)End With功能设置With V
13、NA选择轨迹 1.WriteString(CALC:PAR:SEL trc1)功率电平设置.WriteString(SOUR:POW&Space(1)&Str(TextBox11.Text)&dBm)平滑功能打开.WriteString(CALC:SMO:STAT ON)平滑值设置.WriteString(CALC:SMO:APER&Str(TextBox12.Text)扫描点数量设置.WriteString(SWE:POIN&Str(TextBox13.Text)End With频率设置声明开始频率、终止频率、频率间隔变量Dim fstart,fstop,interval As Single
14、声明采集点数变量Dim i,points As Integer清空工作表For i=1 To 4Sheets(i).UsedRange.Rows.ClearNext从文本框读取起止频率和采集点数fstart=TextBox8.Textfstop=TextBox9.Textpoints=TextBox10.Text根据采集点数计算间隔interval=(fstop-fstart)/(points-1)在工作表首行自动写入采样频点For i=1 To pointsSheet1.Cells(1,i)=fstart+interval (i-1)Next以 MHz 为单位设置仪器的起止频率 With V
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 VBA 快速 测试 自动化 设计 实现
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【自信****多点】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【自信****多点】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。