新闻中心

EEPW首页 > 电源与新能源 > 设计应用 > 便携式功率分析仪设计----功率分析仪软件设计

便携式功率分析仪设计----功率分析仪软件设计

作者:时间:2013-08-24来源:网络收藏
软件设计

4.1软件设计框架

如下图4-1所示,其中SED1335是图形液晶显示控制器,它集成在液晶显示屏幕电路中,提供独立的显示控制字,可用单片机对其进行控制,单片机通过SED1335将数据送到LCD显示。通道进来的模拟信号经由A/D转换成数字量,将这些数字量存入缓存器FIFO后,再由ARM读入进行计算处理,我们所选用的ARM LPC2138拥有强大的数据处理能力能完成数据的采集、处理、显示以及键盘操作功能。经过ARM处理的数据,系统参数等信息都将保存在FLASH中,便于调用。FLASH是非易失性存储器,可以重复进行读/写,读写时应按其时序进行。它用于存储字库和程序,本设计中使用的FLASH是ARM单片机LPC2138内部FLASH.在这里键盘按键操作和控制是直接由ARM来完成的,利用键盘扫描方式,通过定时器不断对键盘动作进行扫描,从而达到键盘控制操作的功能。本系统在调试过程中还提供了串口对外通讯,利用68013将串口转换为适合与上位机通讯的USB接口,实现与上位机通讯,达到利用电脑辅助系统调试的目的。

便携式功率分析仪设计----功率分析仪软件设计

4.1.1软件功能设计

便携式功率分析仪设计----功率分析仪软件设计

如上图4-2所示,的软件部分主要分作数据处理和测量(包含对采样数据处理、整合、计算以及对信号常用属性的测量)、液晶屏控制、键盘控制以及校准这几大部分,联机调试部分仅在本设计的试验、调试阶段使用。其中液晶屏控制和键盘控制是软件部分程序循环的重要组成部分。

4.1.2开发平台

本课题设计中采用的是32位ARM7TDMI-S CPU——LPC2138微控制器,程序开发平台选用了对该系列单片机支持较好的ADS1.2.

ADS1.2是一个使用方便的集成开发环境,全称是ARM Developer Suite v1.2。它是由ARM公司提供的专门用于ARM相关应用开发和调试的综合性软件。在功能和易用性上比较SDT都有提高,是一款功能强大又易于使用的开发工具。ADS囊括了一系列的应用,并有相关的文档和实例的支持。使用者可以用它来编写和调试各种基于ARM家族RISC处理器的应用。可以用ADS来开发、编译、调试采用包括C、C++和ARM汇编语言编写的程序。AXD提供给基于Windows和UNIX使用的ARM调试器。它提供了一个完全的Windows和UNIX环境来调试C,C++,和汇编语言级的代码。CodeWarriorIDE提供基于Windows使用的工程管理工具。它的使用使源码文件的管理和编译工程变得非常方便。但CodeWarriorIDE在UNIX下不能使用。

采用C语言编程具有以下一些特点:、

语言简洁,使用方便灵活。C语言的关键字很少,ANSI C标准一共只有32的关键字,9种控制语句,压缩一切不必要的成分。C语言的书写形式比较自由,表示方法简洁。

可移植性好。C语言是通过编译来得到可执行代码,便于移植。

表达能力强。C语言具有丰富的数据结构类型和多种运算符,可以根据需要采用整型、浮点型、字符型、数组类型、指针类型、结构类型、联合类型等各种数据类型来实现各种其它高级语言难以实现的复杂数据的结构运算。

表达方式灵活。利用C语言提供的多种运算符,可以组成各种表达式,还可以采用各种方法来获得表达式的值,从而使用户在程序设计中具有更大的灵活性。C语言的语法规则不太严格,程序设计的自由度比较大,程序的书写格式自由灵活。

本设计软件方案包括两个部分:本机程序和联机调试程序。本机程序是基于ARM Developer Suite v1.2软件编写的,联机调试程序是基于C++ Builder 6.0编写的。ARM主程序运行流程如下图4-3:

便携式功率分析仪设计----功率分析仪软件设计

ARM主程序主要分为以下几个模块:

a)数据采集、处理:通道每个采样循环采集1K数据,ARM读取通道数据,在显示数据之前对采集数据进行相应处理、计算。

一个正常采样处理循环的主要流程如下图4-4所示:

便携式功率分析仪设计----功率分析仪软件设计

b)数据显示:将数据处理后的数据和采集到温度值显示在液晶显示屏中(如果为调试方式,应同时将显示的数据传送给上位机)。

c)键盘扫描处理:采用阵列扫描。定时扫描方式,有按键输入则进行相应处理。

d)校准处理:主要包括通道校准、功率测量校准、频率测量校准、功率频响校准。

e)通讯模块:与上位机调试程序的接口。上层发送的校准表数据、参数等都是通过这个模块进行相应处理。该模块主要在调试阶段使用。

4.2软件算法

4.2.1功率测量算法

根据AD8318器件的原理,其采用了对数放大器电路技术,经过平方单元输出的电压值和输入信号的功率实现一一对应,从而实现峰值测量,使测量结果基本上与波形无关。在功率计算中,关键部分是测量脉冲调制信号的峰值功率值。为了得到准确的峰值,脉冲信号的触发电平的选择直接影响的峰值测量的精度。在该设计中,触发电平的选择采用了预采样的原理。其思想为,在固定的小触发电平环境下获得粗略的峰值500个。对粗采到的峰值功率进行排序,选择其中的最大的前20个值进行平均。以平均值的1/2作为实际采样的触发电平的大小。在粗采样获得触发电平后,进行接下来的精采样。精采样以粗样采得到的触发电平作为触发值,同样采到500个功率值,并以粗采得到的功率值的4/5作为门限值,去掉低的上升沿和下降沿中的信号。将得到的信号再选取其中的3/5作为最后的峰值,进行平均为最终获得的功率值。

此时捕捉到的峰值仅仅是A/D采样得到的十六进制表示的电压值。通过此时电压和功率的对应关系拟合出电压值和功率值的曲线。拟合曲线根据不同衰减挡位进行拟合。同时为了方便用户能够自主调整示波显示,如前文所述,我们在通道中利用TLC5620向通道送入直流偏置调节,使用户可以通过键盘调整显示波形在显示屏的位置。所以为了不影响我们对AD8318输出电压的测量,所以根据TLC5620电压输出:

便携式功率分析仪设计----功率分析仪软件设计

其中VREF是参考电平,按前文图解所示,VREF =2.5V;RNG为D/A输出范围选择,恒为0.按照以上公式在计算功率之前先将A/D采样得到的电压值减掉其中直流偏置调节部分,才得到真实的信号输入电压值并进入功率计算部分。

在功率测量中,我们经常用dBm来表示功率,由于我们使用的是50欧姆的匹配网络,所以,由峰值检波出来的电压值和dBm的转换关系满足下面的等式:

便携式功率分析仪设计----功率分析仪软件设计

所以,通过等式可以以dBm的形式表示信号的功率值。

4.2.2频率测量算法

频率计数器程序包括两部分,一部分是频率计算。从计数器得到的频率为二进制表示的25位数。由于计数的门长是一秒。频率记数模块提供一个计数结束标志信号,ARM程序不断取检查该标志信号,当标志信号有效(为高)证明记数完成,再进行实际频率值的计算,避免出现记数过程与频率计算过程时序错误,造成测量值错误的情况。但由于计数门长(1s)相对于FPGA其他部分动作速度,显得过长,为使系统工作效率提高,故在软件设计中加入一个1s定时器,在测频开始后启动定时器,当定时结束时再搜索计数结束标志信号。如果使用直接搜索标志方式,所造成的整个系统暂停1s,等待标志信号出现。这势必造成对信号响应缓慢,不能满足即时响应的要求。通过频率计数器得到的数据通过四次读操作将频率值读入存储器中,通过公式

便携式功率分析仪设计----功率分析仪软件设计

得到计数值。其中,fdata_1是计数器中的低8位字节,fdata_2是计数器中的中间8位字节,fdata_3为计数器的高8位字节,fdata_4为计数器的最高1位字节。计算得到的freq仅仅是计数器计数的结果值。由于信号在计数前经过了预分频,故,需要将freq乘以分频比N得到的是最终的频率值。

4.2.3参数测量

本系统中设计在精确测量计算射频脉冲峰值功率的同时,要将经检波输出的电压变化曲线想示波器一样,显示在液晶显示屏幕上供用户观测和分析。所以在参数测量部分我们很大程度上借鉴了示波器设计原理。将波形特征参数计算并且按需要把参数的值显示于屏幕菜单显示区,这些参数有峰峰值、平均值、有效值、周期,载波频率以及温度等。计算幅度类参数的基本依据是通道量程,计算时间类参数的基本依据是时基。每


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭