基于STM32的数字交流毫伏表的设计与实现研究_第1页
基于STM32的数字交流毫伏表的设计与实现研究_第2页
基于STM32的数字交流毫伏表的设计与实现研究_第3页
基于STM32的数字交流毫伏表的设计与实现研究_第4页
基于STM32的数字交流毫伏表的设计与实现研究_第5页
已阅读5页,还剩23页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于STM32的数字交流毫伏表的设计与实现研究一、引言1.1研究背景与意义在当今信息化时代,电子技术飞速发展,电子测量作为获取电子信息的重要手段,其需求呈现出爆发式增长。电子测量仪器作为电子测量的关键工具,广泛应用于科研、生产、教育等众多领域,从航空航天、通信电子到生物医疗、新能源等新兴产业,无一不依赖电子测量仪器来确保产品质量、提升生产效率和推动技术创新。其发展水平不仅直接反映了一个国家的电子科技实力,更是现代工业产品中新技术应用发展迅速的产品之一,对国家的经济发展和科技进步起着至关重要的支撑作用。交流毫伏表作为电子测量仪器中的重要一员,主要用于测量毫伏级的交流信号,在电子测量技术和自动控制系统中测量正弦波、矩形波、三角波等波形信号的交变电压有效值和微弱信号中的噪声;在随机过程测量中测量各个窄频带内与被测波形无关的电压有效值,以得到该随机过程的功率谱密度函数进行频谱分析和过程控制等,在科研、实验教学和生产中都占据着不可或缺的地位。传统的指针式毫伏表存在读数不够准确、精度较低、误差较大以及灵敏度和分辨率不高等诸多问题,已难以满足现代高精度测量的需求。随着数字化测量技术的问世和迅速发展,数字交流毫伏表应运而生。与传统指针式毫伏表相比,数字交流毫伏表具有读数准确方便、体积小、精度高、误差小、灵敏度和分辨率高、抗干扰能力强、可扩展能力强等显著优点,因而备受用户的青睐。然而,目前市场上的一些数字式电压表和智能仪器虽具备交流电压测量功能,但结构复杂、价格昂贵;数字万用表虽价格相对低廉,但大多仅能测量正弦电压的有效值,且准确度不高,频率范围有限。基于此,本研究旨在设计一款基于STM32的数字交流毫伏表,充分发挥STM32微控制器强大的处理能力和丰富的资源优势,实现价格低廉、精度较高、频率范围较宽、波形适应性强的数字交流毫伏表,以满足日益增长的电子测量需求,填补市场空白,推动电子测量技术的进一步发展。1.2国内外研究现状自上世纪50年代初期数字化测量技术问世以来,其在电子测量领域得到了迅速的发展和广泛的应用。随着器件水平和测试技术的不断提高,交流毫伏表也开始从传统的指针式向数字显示方向转变。在国际上,现代化仪器仪表正朝着微型化、自动化、集成多功能化、智能化和网络化方向迅速发展。国外在数字交流毫伏表的研究和开发方面起步较早,技术相对成熟,一些知名企业如是德科技(KeysightTechnologies)、泰克(Tektronix)等,凭借其强大的研发实力和先进的制造工艺,推出了一系列高性能、高精度的数字交流毫伏表产品,这些产品在测量精度、频率范围、功能多样性等方面都处于领先水平,广泛应用于高端科研、航空航天、通信等领域。在交流电压有效值的测量技术方面,国外主要采用均值检波法、真有效值运算式法和热电偶式等技术。均值检波法是根据信号平均值与有效值的关系来实现有效值测量的,这种方法电路简单、价格低廉,但在测量非正弦信号时误差较大,测量小信号时漂移较大,致使仪器灵敏度不高,使用范围受到限制。运算式法是根据有效值的数学定义,通过模拟运算电路(也可以用集成单片芯片)直接实现有效值变换,国外高精度数字电压表交流测量电路中,几乎无一例外的全部采用分离元件构成模拟运算电路实现真有效值变换,最高精度可达0.04%,但这种电路技术复杂、成本较高、占用面积也较大。热电偶式是根据有效值的物理意义,通过热量变换器来实现,这种方法适用于任意波形,但存在受外界温度影响较大、结构复杂、价格昂贵等缺点。国内在数字交流毫伏表的研究和生产方面也取得了一定的进展,一些企业和科研机构在引进吸收国外先进技术的基础上,不断进行自主创新,推出了一系列具有自主知识产权的产品。这些产品在性能上与国外同类产品的差距逐渐缩小,在中低端市场占据了一定的份额,广泛应用于电子制造、教育教学、工业检测等领域。然而,与国外相比,国内在高端数字交流毫伏表的研发和生产方面仍存在一定的差距,主要表现在测量精度、稳定性、可靠性以及智能化程度等方面,高端产品仍依赖进口。1.3研究内容与方法本研究基于STM32设计数字交流毫伏表,在硬件方面,主要包括衰减及放大、真有效值直流(TRMS-DC)变换、模数转换、单片机控制、按键及显示等模块。衰减及放大模块根据不同的量程范围设定不同的增益,将被测信号电压值转换到合适范围;真有效值直流变换部分采用高精度单片集成TRMS-DC转换芯片,如AD637,实现交流信号到直流信号的高精度转换;模数转换部分采用双积分高精度单片A/D转换器,将模拟信号转换为数字信号;单片机控制模块选用STM32微控制器,负责数据采集和处理、液晶显示的控制以及控制继电器实现量程自动转换;按键及显示模块实现人机交互,方便用户操作和查看测量结果。在软件方面,开发相应的控制程序,实现对各硬件模块的控制和数据处理。利用STM32的强大处理能力,编写数据采集、处理算法,以及控制液晶显示和按键响应的程序。在设计过程中,采用理论分析与实际设计相结合的方法,根据电子测量原理和需求确定系统的总体架构和各模块的设计方案;运用电路仿真软件对硬件电路进行仿真分析,优化电路参数,提高电路性能;通过实验测试和调试,对设计的数字交流毫伏表进行性能测试,根据测试结果对硬件和软件进行优化改进,确保满足设计要求。二、相关技术原理2.1STM32微控制器2.1.1STM32简介与特点STM32系列微控制器是意法半导体(STMicroelectronics)基于ARMCortex-M内核开发的32位微控制器,凭借高性能、低成本、低功耗的特性,在嵌入式系统领域得到广泛应用。STM32采用哈佛架构,指令和数据总线相互独立,能同时进行取指和数据访问操作,显著提升数据处理效率。其内核工作频率最高可达72MHz,具备1.25DMIPS/MHz的高效性能,还支持单周期乘法和硬件除法,可快速处理复杂运算任务,满足数字交流毫伏表对数据处理速度的要求。在存储资源方面,STM32片上集成了32-512KB的Flash存储器,用于存储程序代码和常量数据;同时,还配备了6-64KB的SRAM存储器,为数据的高速读写提供支持,确保系统在运行过程中数据的快速存取和处理。丰富的外设接口是STM32的一大优势,它提供了多达112个的快速I/O端口,可灵活配置为多种功能,方便与外部设备连接;最多多达11个定时器,可用于定时控制、PWM输出等;最多多达13个通信接口,包括通用同步异步收发器(USART)、串行外设接口(SPI)、集成电路总线(I2C)等,能满足不同通信协议的需求,实现与其他设备的数据通信和交互。在功耗管理上,STM32支持2.0-3.6V的电源供电范围,并具备I/O接口的驱动电压调节功能。同时,内置了多种复位和电源管理功能,如上电复位(POR)、掉电复位(PDR)和可编程的电压探测器(PVD),能确保系统在不同电源条件下稳定运行。此外,还提供了多种时钟源选择,包括4-16MHz的晶振、内嵌出厂前调校的8MHzRC振荡电路以及内部40kHz的RC振荡电路等,可根据实际应用需求灵活配置时钟,在保证系统性能的同时,有效降低功耗。在调试模式方面,STM32支持串行调试(SWD)和JTAG接口,方便工程师进行程序下载、调试和测试等工作。而且,ST公司为STM32提供了全面而成熟的开发生态系统,包括易于使用且功能强大的集成开发环境(IDE)、软件库(例如标准固件库、HAL库等)以及广泛可靠的技术支持和社区资源,这使得开发人员可以快速上手并高效地进行开发。2.1.2STM32的ADC工作原理STM32内部集成了逐次逼近型(SAR)模数转换器(ADC),负责将模拟信号转换为数字信号,为数字交流毫伏表的数据采集提供支持。STM32的ADC支持多个输入通道,可连接外部引脚,用于采集外部传感器信号,也可连接内部信号源,如温度传感器、参考电压等。通过多路复用器(MUX),可在同一时刻选择一个通道进行转换。在工作时,ADC内部的采样保持电路会短暂捕获输入信号的瞬时电压,随后保持电容锁定该电压值,确保在转换过程中输入信号稳定,避免因信号变化导致误差。接着,ADC从最高位(MSB)到最低位(LSB)依次确定每一位的值。内部数模转换器(DAC)会生成一个试探电压,该电压基于当前位的权重,比较器将DAC输出与保持的输入电压进行比较,根据比较结果,保留或清除当前位的值。以12位分辨率的ADC为例,其输出范围为0~4095(2^12),对应输入电压的量化值。参考电压由VREF+和VREF-引脚定义,通常VREF-接地,VREF+接3.3V或独立基准源。若无独立VREF,默认使用VDDA(模拟电源)和VSSA(模拟地),但此时电源噪声可能影响精度。ADC时钟(ADCCLK)由系统时钟分频得到,需满足最大频率限制,如STM32F1为14MHz。触发源支持软件触发,可立即启动转换,也支持硬件触发,如定时器、外部中断等,适用于周期性或事件驱动的采样。转换时间由采样时间和逐次逼近周期组成,采样时间可编程调整,以适配不同信号源的阻抗特性。转换结果存储在数据寄存器(如DR),可通过轮询、中断或DMA读取。扫描模式下,ADC可自动切换多通道,结合DMA实现高效连续数据流传输。ADC支持多种工作模式,单次模式下,触发后完成一次转换即停止;连续模式下,自动重复转换,适合实时监控;间断模式下,按组转换通道,灵活控制转换节奏。为保证精度,ADC还具备上电校准和软件校准功能,上电校准可消除内部电容和偏移误差,软件校准用户可编程修正增益和偏移。在抗干扰设计方面,建议在VREF和VDDA引脚添加滤波电容(如100nF+1μF),进行电源去耦;高阻抗模拟信号走线远离数字信号,避免串扰;模拟地(VSSA)与数字地单点连接,降低回流噪声。2.2交流电压测量原理2.2.1有效值的概念与计算方法交流电压的有效值是根据电流的热效应来定义的,其物理意义为:让交流电压和直流电压分别通过同样的电阻,如果它们在同一时间内产生的热量相等,就把这一直流电压的数值叫做这一交流电压的有效值。有效值也叫均方根值,用数学公式表示为:U=\sqrt{\frac{1}{T}\int_{0}^{T}u^{2}(t)dt}其中,U为交流电压的有效值,T为交流电压的周期,u(t)为交流电压的瞬时值。对于正弦交流电,其表达式为u=U_{m}\sin(\omegat),U_{m}为最大值,\omega为角频率,将其代入有效值计算公式可得:U=\sqrt{\frac{1}{T}\int_{0}^{T}(U_{m}\sin(\omegat))^{2}dt}=\frac{U_{m}}{\sqrt{2}}\approx0.707U_{m}即正弦交流电的有效值等于最大值被\sqrt{2}除。对于其他波形的交流电,如方波、三角波、锯齿波等,其有效值与最大值的关系需根据具体波形,利用有效值的定义公式进行计算。以方波为例,其在一个周期内的电压值要么为U_{m},要么为0,根据定义可得其有效值与最大值相等。2.2.2真有效值转换技术传统测量仪表常采用平均值转换法测量交流电压,这种方法在测量非正弦信号时存在较大理论误差,测量小信号时漂移较大,限制了仪器的灵敏度和使用范围。为实现对交流信号电压有效值的精密测量,并使其不受被测波形的限制,可采用真有效值转换技术,即不通过平均折算,而是直接将交流信号的有效值按比例转换为直流信号。真有效值转换技术通过专用的真有效值转换芯片实现,常用的芯片有AD637、AD736等。AD637是一款高精度的真有效值转换芯片,采用16引脚封装,工作电压范围为±5V至±18V。其工作原理基于集成电路技术,内部集成了平方电路、低通滤波器和开方电路。当输入交流信号时,首先通过平方电路产生一个与输入信号振幅平方成比例的电压值,然后经过低通滤波器对高频噪声进行抑制,得到平滑的直流电压,最后通过开方电路准确计算出与输入信号平方的均方根值相对应的电压,即真有效值。AD736是经过激光修正的单片精密真有效值AC/DC转换器,采用双列直插式8脚封装。其主要由输入放大器、全波整流器、有效值单元(又称有效值芯子RMSCORE)、偏置电路、输出放大器等组成。工作时,被测信号电压加到输入放大器的同相输入端,输出电压经全波整流后送到RMS单元,将其转换成代表真有效值的直流电压,然后再通过输出放大器的Vo端输出。AD736具有准确度高、灵敏性好(满量程为200mVRMS)、测量速率快、频率特性好(工作频率范围可达0~460kHz)、输入阻抗高、输出阻抗低、电源范围宽且功耗低(最大的电源工作电流为200μA)等优点,用它来测量正弦波电压的综合误差不超过±3%。三、系统总体设计方案3.1系统设计目标与要求本数字交流毫伏表基于STM32设计,旨在满足现代电子测量对高精度、宽频率范围和便捷操作的需求。其设计目标是实现一款性能优越、价格合理的交流毫伏测量仪器,为科研、教学和工业生产等领域提供可靠的测量工具。在测量范围方面,本设计的数字交流毫伏表测量幅值范围设定为30mV-20V,覆盖了常见的毫伏级和伏特级交流信号测量需求。测量频率范围为10Hz-1MHz,能够适应音频、射频等多种频率段的交流信号测量。在精度要求上,电压测量误差控制在±5%以内,确保测量结果的准确性和可靠性。对于不同的量程和频率范围,误差要求如下:在2V档,测量幅度为30mV-200mV,频率范围10Hz-1MHz时,精度为±2%;在2V档,测量幅度为200mV-1.99V,频率范围10Hz-1MHz时,精度为±1%;在8V档,测量幅度为1.99V-4.5V,频率范围10Hz-500KHz时,精度为±2%;在8V档,测量幅度为1.99V-4.5V,频率范围500KHz-1MHz时,精度为±5%;在8V档,测量幅度为4.5V-7V,频率范围10Hz-500KHz时,精度为±3%;在8V档,测量幅度为4.5V-7V,频率范围500KHz-1MHz时,精度为±5%;在20V档,测量幅度为3V-7V,频率范围10Hz-500KHz时,精度为±3%;在20V档,测量幅度为3V-7V,频率范围500KHz-1MHz时,精度为±5%。为了满足不同用户的操作需求,本设计提供手动和自动量程转换功能,用户可根据实际测量情况灵活选择。当测量信号超出量程时,系统能够自动报警并切断输入信号,以保护设备和确保测量安全。同时,本设计还具备频率测量功能,能够实时显示被测交流信号的频率,进一步丰富了仪器的功能。3.2系统架构设计3.2.1硬件架构设计本数字交流毫伏表的硬件架构主要由信号调理电路、STM32最小系统、真有效值直流(TRMS-DC)变换电路、模数转换电路、显示电路、按键电路以及电源电路等部分构成。信号调理电路是整个系统的前端,其主要作用是对输入的交流信号进行预处理,以满足后续电路的输入要求。该电路主要包括输入保护电路、无源衰减网络、阻抗变换电路和增益可控的放大网络。输入保护电路采用双向稳压二极管和限流电阻组成,可有效防止输入信号过压或过流对后续电路造成损坏。无源衰减网络利用电阻和电容组成的分压电路,根据不同的量程需求对输入信号进行衰减,确保输入信号在后续电路的可处理范围内。阻抗变换电路采用高输入阻抗、低输出阻抗的运算放大器,将输入信号的高阻抗转换为低阻抗,以提高信号的驱动能力,减少信号传输过程中的损耗和失真。增益可控的放大网络根据输入信号的幅度自动调整放大倍数,确保信号在进入真有效值直流变换电路前处于合适的电平范围,提高测量的精度和动态范围。STM32最小系统是整个毫伏表的核心控制单元,由STM32微控制器、晶振电路、复位电路和电源电路组成。STM32微控制器负责数据采集、处理、显示控制以及与其他模块的通信等任务。晶振电路为STM32提供稳定的时钟信号,确保系统的正常运行。复位电路在系统上电或异常时,将STM32微控制器恢复到初始状态,保证系统的可靠性。电源电路为STM32及其他电路模块提供稳定的电源。真有效值直流(TRMS-DC)变换电路采用高精度的真有效值转换芯片AD637,它能够将输入的交流信号精确地转换为与其有效值相等的直流信号。AD637内部集成了平方电路、低通滤波器和开方电路,通过这些电路的协同工作,实现对交流信号的真有效值转换。在输入信号进入AD637后,首先经过平方电路将交流信号的幅值进行平方运算,得到一个与输入信号幅值平方成比例的电压值;然后,通过低通滤波器对高频噪声进行抑制,得到平滑的直流电压;最后,经过开方电路准确计算出与输入信号平方的均方根值相对应的电压,即真有效值。模数转换电路将真有效值直流变换电路输出的直流信号转换为数字信号,以便STM32微控制器进行处理。本设计选用高精度的A/D转换器,如ADS1115,它具有16位的分辨率,能够提供高精度的数字转换结果。ADS1115通过I2C总线与STM32微控制器进行通信,将转换后的数字信号传输给STM32。在进行模数转换时,ADS1115根据输入的模拟信号电压值,在其内部进行逐次逼近比较,将模拟信号转换为对应的数字编码,并通过I2C总线将数字编码发送给STM32。显示电路负责将测量结果以直观的方式呈现给用户,本设计采用12864液晶显示屏,它能够显示字符和图形,具有显示清晰、功耗低等优点。12864液晶显示屏通过SPI或I2C总线与STM32微控制器连接,STM32根据测量结果向液晶显示屏发送相应的显示数据,控制液晶显示屏显示交流电压的有效值、频率以及其他相关信息。按键电路用于实现用户与系统的交互,用户可以通过按键进行量程切换、功能选择等操作。按键电路通过GPIO引脚与STM32微控制器连接,当用户按下按键时,会产生一个电平变化信号,STM32微控制器通过检测GPIO引脚的电平变化,判断用户的操作,并执行相应的功能。电源电路为整个系统提供稳定的电源,采用交流整流滤波后串联稳压芯片再滤波的方式,产生双15V电源、3.3V及5V电源,分别为不同的电路模块供电。交流输入经过整流桥整流后,通过滤波电容滤除交流纹波,得到直流电压。然后,经过稳压芯片(如7815、7915、AMS1117等)进行稳压处理,得到稳定的双15V电源、3.3V及5V电源。最后,再通过滤波电容进一步滤除电源中的杂波,确保电源的稳定性和纯净度,为系统的正常运行提供可靠的电源保障。3.2.2软件架构设计本数字交流毫伏表的软件架构主要由主程序、数据采集模块、数据处理模块、显示模块、按键处理模块以及通信模块等部分构成。主程序是整个软件系统的核心,负责初始化各个硬件模块和软件模块,协调各个模块之间的工作。在系统上电后,主程序首先对STM32微控制器的各个外设进行初始化,包括GPIO、ADC、SPI、I2C等,确保硬件设备能够正常工作。然后,初始化显示模块,设置显示界面的初始状态。接着,进入主循环,在主循环中不断调用数据采集模块、数据处理模块、显示模块和按键处理模块,实现对交流信号的实时测量、处理、显示和用户交互。数据采集模块负责从模数转换电路读取数字信号,本模块通过配置STM32的ADC外设,设置采样频率、采样通道等参数,实现对ADS1115输出的数字信号的采集。在采集过程中,采用中断方式或DMA方式,提高数据采集的效率和实时性。当中断触发或DMA传输完成时,数据采集模块将采集到的数据存储到指定的内存缓冲区,供后续的数据处理模块使用。数据处理模块对采集到的数据进行分析和计算,得到交流电压的有效值、频率等参数。对于有效值的计算,根据真有效值直流变换电路的原理和模数转换电路的特性,结合相关的数学公式进行计算。对于频率的测量,采用过零检测法或定时器计数法等方法,通过检测交流信号的过零时刻或在一定时间内对信号的脉冲个数进行计数,计算出交流信号的频率。在计算过程中,还会对数据进行滤波处理,去除噪声和干扰,提高测量结果的准确性。显示模块负责将测量结果和相关信息显示在12864液晶显示屏上,本模块根据主程序的指令,从数据处理模块获取测量结果,将其转换为适合显示的格式,然后通过SPI或I2C总线向12864液晶显示屏发送显示数据,控制液晶显示屏显示交流电压的有效值、频率、量程、单位等信息。同时,还会根据系统的状态,显示相应的提示信息,如超量程报警、自动量程切换等。按键处理模块负责检测按键的状态,根据用户的按键操作执行相应的功能。本模块通过不断检测按键电路连接的GPIO引脚的电平变化,判断按键是否按下。当检测到按键按下时,根据按键的定义和当前系统的状态,执行相应的功能,如手动量程切换、自动量程切换、功能选择、复位等。在按键处理过程中,还会加入去抖动处理,防止因按键抖动而产生误操作。通信模块负责实现与上位机或其他设备的通信功能,本模块可采用串口通信、USB通信或蓝牙通信等方式,根据实际需求选择合适的通信协议。在串口通信中,通过配置STM32的USART外设,设置波特率、数据位、停止位、校验位等参数,实现与上位机的串口通信。通信模块可以将测量结果和相关信息发送给上位机,也可以接收上位机发送的控制指令,实现远程控制和数据传输。四、硬件电路设计4.1信号调理电路设计信号调理电路是数字交流毫伏表的前端电路,其主要作用是对输入的交流信号进行预处理,使其满足后续电路的输入要求。本设计中的信号调理电路主要包括衰减电路、直流偏置电路和滤波电路。4.1.1衰减电路设计为了确保输入电压在安全范围内,避免过高的电压损坏后续电路,采用电阻分压的方式实现信号衰减。衰减电路通常由多个电阻组成分压网络,通过合理选择电阻的阻值,可以实现不同倍数的衰减。在本设计中,考虑到输入信号的幅值范围为30mV-20V,而STM32的ADC输入电压范围一般为0-3.3V,因此需要根据不同的量程进行不同比例的衰减。设计一个具有三个量程的衰减电路,分别为2V档、8V档和20V档。在2V档,当输入信号幅值在30mV-2V之间时,不需要进行衰减,直接将信号输入到后续电路;在8V档,当输入信号幅值在2V-8V之间时,通过电阻分压将信号衰减为原来的1/4,即输入信号经过R1和R2组成的分压电路,R1=3kΩ,R2=1kΩ,根据分压公式U_{out}=\frac{R2}{R1+R2}U_{in},可得U_{out}=\frac{1}{4}U_{in};在20V档,当输入信号幅值在8V-20V之间时,通过电阻分压将信号衰减为原来的1/10,即输入信号经过R3和R4组成的分压电路,R3=9kΩ,R4=1kΩ,根据分压公式可得U_{out}=\frac{1}{10}U_{in}。在实际应用中,为了实现量程的自动切换,可以采用继电器或模拟开关来控制不同量程的电阻分压网络。当输入信号幅值超出当前量程时,通过STM32控制继电器或模拟开关切换到更高的量程,以确保输入信号在安全范围内,并满足后续电路的输入要求。4.1.2直流偏置电路设计由于STM32的ADC只能测量直流信号,而输入的是交流信号,因此需要通过直流偏置电路将交流信号抬升为直流信号,以便ADC能够进行采样。直流偏置电路通常由运算放大器和电阻、电容组成,通过在交流信号上叠加一个合适的直流电压,使交流信号的整个波形都处于正值区域。在本设计中,采用同相比例运算放大器来实现直流偏置。运算放大器的同相输入端通过电阻R5连接到一个稳定的直流电压源Vref,反相输入端通过电阻R6接地,输出端通过电容C3连接到后续电路。输入的交流信号通过电容C1耦合到运算放大器的同相输入端,在运算放大器的作用下,交流信号与直流偏置电压叠加,从输出端输出一个带有直流偏置的交流信号。假设直流偏置电压Vref=1.65V,运算放大器的放大倍数为1,即R5=R6,根据同相比例运算放大器的公式U_{out}=(1+\frac{R6}{R5})U_{in}+Vref,可得U_{out}=U_{in}+1.65V,这样就将交流信号抬升了1.65V,使其变为直流信号,便于ADC进行采样。4.1.3滤波电路设计为了去除输入信号中的高频噪声,保证信号质量,采用RC滤波电路。RC滤波电路是一种简单而有效的滤波电路,它利用电阻和电容的特性,对不同频率的信号进行不同程度的衰减,从而实现对高频噪声的滤除。在本设计中,采用一阶低通RC滤波电路,将其放置在衰减电路和直流偏置电路之后。滤波电路由电阻R7和电容C4组成,输入信号经过R7和C4组成的低通滤波电路后,高频噪声被衰减,输出一个相对平滑的信号到后续电路。根据RC低通滤波电路的截止频率公式f_c=\frac{1}{2\piRC},在本设计中,选择R7=1kΩ,C4=0.1μF,可计算出截止频率f_c=\frac{1}{2\pi\times1000\times0.1\times10^{-6}}\approx1.59kHz,这样可以有效地滤除1.59kHz以上的高频噪声,保证输入到后续电路的信号质量。4.2STM32最小系统设计STM32最小系统是数字交流毫伏表的核心控制单元,它由电源电路、时钟电路和复位电路等部分组成,为STM32微控制器的正常工作提供必要的条件。4.2.1电源电路设计为了给STM32提供稳定的电源,电源电路采用了降压和稳压芯片,并配合滤波电容来减少电源噪声。本设计中,采用AMS1117-3.3芯片将5V输入电压转换为3.3V,为STM32的核心供电;同时,采用7815和7915芯片分别将输入电压转换为+15V和-15V,为运算放大器等外围电路供电。在电源输入侧,使用10μF和0.1μF的电解电容和陶瓷电容进行滤波,以去除电源中的低频和高频噪声。在芯片的电源引脚附近,也分别放置0.1μF的陶瓷电容,进一步减少电源噪声对芯片的影响。4.2.2时钟电路设计时钟电路为STM32提供稳定的时钟信号,确保系统的正常运行。STM32可以使用外部晶振或内部RC振荡器作为时钟源,本设计采用外部8MHz晶振与STM32内部的时钟电路配合,产生稳定的时钟信号。外部晶振通过两个20pF的电容连接到STM32的OSC_IN和OSC_OUT引脚,为系统提供高精度的时钟信号。STM32内部的时钟电路通过PLL(锁相环)将外部晶振的频率倍频到72MHz,作为系统的主时钟,为各个外设提供时钟信号。4.2.3复位电路设计复位电路用于确保STM32在系统上电或异常时能够可靠复位,恢复到初始状态。本设计采用了上电复位和按键复位两种方式,以提高系统的可靠性。上电复位电路由一个10kΩ的电阻和一个0.1μF的电容组成,在上电时,电容需要一定时间充电,使NRST引脚保持低电平一段时间,实现上电复位。按键复位电路则通过一个按键和一个10kΩ的电阻连接到NRST引脚,当按下按键时,NRST引脚被拉低,实现手动复位。4.3显示电路设计显示电路用于将测量结果以直观的方式呈现给用户,本设计采用OLED显示屏或LCD显示屏来显示交流电压的有效值、频率等测量结果。OLED显示屏具有自发光、对比度高、视角广、响应速度快等优点,而LCD显示屏则具有成本低、功耗低等优点,可根据实际需求选择。以OLED显示屏为例,它通过SPI或I2C总线与STM32进行通信,接收STM32发送的显示数据。在硬件连接上,OLED的VCC和GND引脚分别连接到3.3V电源和地,SCL和SDA引脚分别连接到STM32的I2C时钟线和数据线,或者SCK、MOSI、MISO和CS引脚分别连接到STM32的SPI时钟线、主输出从输入线、主输入从输出线和片选线。在软件设计上,需要编写相应的驱动程序,初始化OLED显示屏,设置显示模式、字体大小等参数,并根据测量结果向OLED发送显示数据,实现测量结果的显示。五、软件程序设计5.1开发环境搭建本设计采用KeilMDK作为软件开发工具,它是一款专为嵌入式系统开发设计的集成开发环境(IDE),由德国KeilSoftware公司开发,后于2005年被ARM收购并整合为MDK-ARM工具链的一部分,为开发基于STM32的应用程序提供了丰富的功能和便捷的操作。搭建开发环境的具体步骤如下:安装KeilMDK软件:从Keil官方网站下载最新版本的KeilMDK安装包,运行安装程序,按照安装向导的提示进行操作,完成软件的安装。在安装过程中,需要注意选择合适的安装路径和组件,确保软件能够正常运行。安装STM32芯片支持包:打开KeilMDK软件,点击菜单栏中的“PackInstaller”选项,在弹出的窗口中搜索并安装对应型号的STM32芯片支持包,如STM32F10x_DFP。该支持包包含了芯片的启动文件、头文件以及相关的库文件,为开发提供了必要的支持。创建新工程:点击菜单栏中的“Project”,选择“NewμVisionProject”,在弹出的对话框中选择工程保存的路径,并为工程命名。然后在芯片选择对话框中,选择本次设计使用的STM32微控制器型号,如STM32F103C8T6,点击“OK”按钮完成工程的创建。添加文件到工程:在工程目录下创建多个文件夹,用于存放不同类型的文件。例如,创建“Startup”文件夹存放启动文件,“CMSIS”文件夹存放CMSIS(CortexMicrocontrollerSoftwareInterfaceStandard)相关文件,“FWlib”文件夹存放STM32标准库文件,“User”文件夹存放用户自定义的源文件和头文件等。将对应的文件添加到相应的文件夹中,然后在KeilMDK中,通过右键点击工程名,选择“Add/RemoveFilesinGroup”,将这些文件添加到工程中。配置工程属性:右键点击工程名,选择“OptionsforTarget”,在弹出的对话框中进行工程属性的配置。在“Output”选项卡中,勾选“CreateHEXFile”,以便生成可烧录的HEX文件;在“C/C++”选项卡中,在“Define”栏中添加“USE_STDPERIPH_DRIVER,STM32F10X_MD”,并在“IncludePath”栏中添加工程中所有头文件所在的路径,确保编译器能够找到相关的头文件;在“Debug”选项卡中,选择合适的调试器,如J-LINK,并进行相应的设置。下载与调试:将STM32开发板通过J-LINK调试器连接到计算机,点击KeilMDK中的下载按钮,将编写好的程序下载到开发板中。下载完成后,可以使用调试功能对程序进行单步调试、断点调试等,查看程序的运行状态和变量的值,以便及时发现和解决问题。5.2主程序设计主程序是整个数字交流毫伏表软件系统的核心,负责初始化各个硬件模块和软件模块,协调各个模块之间的工作,实现对交流信号的实时测量、处理、显示和用户交互。主程序的主要流程如下:系统初始化:在程序开始执行时,首先进行系统初始化,包括STM32微控制器的时钟配置、GPIO口初始化、ADC初始化、SPI或I2C初始化(用于与OLED或LCD显示屏通信)以及其他相关外设的初始化。在时钟配置中,将系统时钟设置为72MHz,以满足系统对处理速度的要求;在GPIO口初始化中,将用于按键输入、显示控制等功能的GPIO口设置为相应的输入或输出模式;在ADC初始化中,配置ADC的工作模式、采样时间、转换通道等参数,确保能够准确地采集模拟信号。数据采集:系统初始化完成后,进入数据采集阶段。通过启动ADC转换,读取ADC转换后的数据,获取经过信号调理电路处理后的交流信号的数字量。在数据采集过程中,可以采用中断方式或DMA方式,提高数据采集的效率和实时性。当中断触发或DMA传输完成时,将采集到的数据存储到指定的内存缓冲区,供后续的数据处理模块使用。数据处理:采集到数据后,对数据进行处理,计算交流电压的有效值和频率。对于有效值的计算,采用均方根算法,根据采集到的多个数据点,计算出交流电压的有效值;对于频率的测量,可采用过零检测法或定时器计数法等方法,通过检测交流信号的过零时刻或在一定时间内对信号的脉冲个数进行计数,计算出交流信号的频率。在计算过程中,还会对数据进行滤波处理,去除噪声和干扰,提高测量结果的准确性。显示与通信:将计算得到的交流电压的有效值、频率等测量结果通过OLED或LCD显示屏显示出来,以便用户查看。同时,根据用户的需求,还可以通过串口通信、USB通信或蓝牙通信等方式,将测量结果发送给上位机或其他设备,实现数据的远程传输和分析。按键处理:在主程序的循环中,不断检测按键的状态,根据用户的按键操作执行相应的功能。如用户按下量程切换按键时,程序将根据当前测量值自动切换到合适的量程;用户按下功能选择按键时,程序将切换到相应的功能界面,实现不同功能的选择和设置。在按键处理过程中,还会加入去抖动处理,防止因按键抖动而产生误操作。循环执行:完成一次数据采集、处理、显示和按键处理后,程序回到数据采集阶段,继续进行下一轮的测量和处理,实现对交流信号的实时监测和显示。5.3数据采集与处理程序设计5.3.1ADC数据采集程序ADC数据采集程序负责配置ADC参数、启动转换和读取数据,确保能够准确地将模拟信号转换为数字信号,为后续的数据处理提供原始数据。其主要设计步骤如下:使能ADC时钟:通过RCC_APB2PeriphClockCmd函数使能ADC和相关GPIO端口的时钟,确保ADC和GPIO能够正常工作。例如,对于STM32F103系列微控制器,使用以下代码使能ADC1和GPIOA的时钟:RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1|RCC_APB2Periph_GPIOA,ENABLE);配置ADC输入引脚:将用于连接模拟信号输入的GPIO引脚配置为模拟输入模式。以PA0引脚为例,使用以下代码进行配置:GPIO_InitTypeDefGPIO_InitStructure;GPIO_InitStructure.GPIO_Pin=GPIO_Pin_0;GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AIN;GPIO_Init(GPIOA,&GPIO_InitStructure);ADC参数配置:使用ADC_InitTypeDef结构体配置ADC的工作模式、采样时间、转换通道等参数。例如,将ADC配置为独立模式、单通道模式、单次转换、软件触发、数据右对齐,转换通道为通道0,采样时间为55.5个周期,代码如下:ADC_InitTypeDefADC_InitStructure;ADC_InitStructure.ADC_Mode=ADC_Mode_Independent;ADC_InitStructure.ADC_ScanConvMode=DISABLE;ADC_InitStructure.ADC_ContinuousConvMode=DISABLE;ADC_InitStructure.ADC_ExternalTrigConv=ADC_ExternalTrigConv_None;ADC_InitStructure.ADC_DataAlign=ADC_DataAlign_Right;ADC_InitStructure.ADC_NbrOfChannel=1;ADC_Init(ADC1,&ADC_InitStructure);使能ADC:使用ADC_Cmd函数使能ADC,使其开始工作:ADC_Cmd(ADC1,ENABLE);ADC校准:在使用ADC之前,需要进行校准,以提高测量精度。使用ADC_ResetCalibration函数复位校准寄存器,然后使用ADC_StartCalibration函数启动校准,在校准过程中,通过ADC_GetCalibrationStatus函数检测校准状态,直到校准完成:ADC_ResetCalibration(ADC1);while(ADC_GetResetCalibrationStatus(ADC1));ADC_StartCalibration(ADC1);while(ADC_GetCalibrationStatus(ADC1));启动转换并读取数据:在需要采集数据时,使用ADC_RegularChannelConfig函数配置要转换的通道,然后使用ADC_SoftwareStartConvCmd函数启动软件触发转换。在转换完成后,通过ADC_GetFlagStatus函数检测转换完成标志位,当标志位为真时,使用ADC_GetConversionValue函数读取转换后的数据:ADC_RegularChannelConfig(ADC1,ADC_Channel_0,1,ADC_SampleTime_55Cycles5);ADC_SoftwareStartConvCmd(ADC1,ENABLE);while(!ADC_GetFlagStatus(ADC1,ADC_FLAG_EOC));uint16_tadc_value=ADC_GetConversionValue(ADC1);5.3.2有效值计算程序有效值计算程序采用均方根算法计算交流电压的有效值,其数学原理是根据有效值的定义,通过对交流信号的瞬时值进行平方、积分、平均和开方运算,得到与交流信号热效应相等的直流电压值,即有效值。具体实现步骤如下:定义变量:在程序中定义用于存储采样数据的数组、采样点数、有效值计算结果等变量。例如:#defineSAMPLE_COUNT100//采样点数uint16_tadc_samples[SAMPLE_COUNT];//存储采样数据的数组floatrms_value;//有效值计算结果数据采样:在主程序的数据采集阶段,将采集到的ADC数据依次存储到adc_samples数组中,循环采集SAMPLE_COUNT个数据点。均方根计算:根据均方根算法的公式,对采集到的采样数据进行计算。先计算每个采样数据的平方和,然后除以采样点数,得到均方值,最后对均方值开方,得到有效值。使用C语言实现的代码如下:floatsum=0;for(inti=0;i<SAMPLE_COUNT;i++){sum+=(float)adc_samples[i]*(float)adc_samples[i];}floatmean_square=sum/SAMPLE_COUNT;rms_value=sqrt(mean_square);结果转换:由于ADC采集到的数据是数字量,需要根据ADC的参考电压和分辨率,将其转换为实际的电压值。假设ADC的参考电压为Vref,分辨率为n位(如12位),则实际电压值的计算公式为:V=\frac{rms_value\timesVref}{2^n}在程序中,根据实际的硬件参数,使用上述公式将计算得到的有效值转换为实际的电压值,以便后续的显示和处理。5.4显示程序设计显示程序负责将测量结果显示在OLED或LCD屏幕上,为用户提供直观的测量数据。以OLED显示屏为例,其显示程序设计步骤如下:初始化OLED:在主程序的初始化阶段,调用OLED的初始化函数,对OLED进行初始化配置。初始化内容包括设置OLED的显示模式、字体大小、对比度等参数,以及初始化OLED与STM32之间的通信接口,如SPI或I2C。以SPI通信接口为例,使用以下代码初始化OLED:voidOLED_Init(void){//初始化SPI接口SPI_InitTypeDefSPI_InitStructure;RCC_APB2PeriphClockCmd(RCC_APB2Periph_SPI1,ENABLE);SPI_InitStructure.SPI_Direction=SPI_Direction_2Lines_FullDuplex;SPI_InitStructure.SPI_Mode=SPI_Mode_Master;SPI_InitStructure.SPI_DataSize=SPI_DataSize_8b;SPI_InitStructure.SPI_CPOL=SPI_CPOL_Low;SPI_InitStructure.SPI_CPHA=SPI_CPHA_1Edge;SPI_InitStructure.SPI_NSS=SPI_NSS_Soft;SPI_InitStructure.SPI_BaudRatePrescaler=SPI_BaudRatePrescaler_16;SPI_InitStructure.SPI_FirstBit=SPI_FirstBit_MSB;SPI_InitStructure.SPI_CRCPolynomial=7;SPI_Init(SPI1,&SPI_InitStructure);SPI_Cmd(SPI1,ENABLE);//初始化OLED寄存器OLED_WriteCmd(0xAE);//关闭显示OLED_WriteCmd(0xD5);//设置显示时钟分频比/振荡器频率OLED_WriteCmd(0x80);OLED_WriteCmd(0xA8);//设置多路复用率OLED_WriteCmd(0x3F);OLED_WriteCmd(0xD3);//设置显示偏移OLED_WriteCmd(0x00);OLED_WriteCmd(0x40);//设置显示起始行OLED_WriteCmd(0xA1);//设置段重映射OLED_WriteCmd(0xC8);//设置COM输出扫描方向OLED_WriteCmd(0xDA);//设置COM引脚硬件配置OLED_WriteCmd(0x12);OLED_WriteCmd(0x81);//设置对比度控制OLED_WriteCmd(0xCF);OLED_WriteCmd(0xD9);//设置预充电周期OLED_WriteCmd(0xF1);OLED_WriteCmd(0xDB);//设置VCOMH取消选择级别OLED_WriteCmd(0x30);OLED_WriteCmd(0xA4);//显示RAM内容OLED_WriteCmd(0xA6);//设置正常显示OLED_WriteCmd(0xAF);//打开显示}显示数据:在主程序的数据处理完成后,调用OLED的显示函数,将测量得到的交流电压有效值、频率等数据显示在OLED屏幕上。首先,将数据转换为字符串格式,然后使用OLED的写字符或写字符串函数,将字符串显示在指定的位置。例如,显示交流电压有效值的代码如下:charvoltage_str[10];sprintf(voltage_str,"V:%.2f",rms_value);//将有效值转换为字符串OLED_SetCursor(0,0);//设置显示位置OLED_WriteString(voltage_str);//显示字符串清屏与更新:在每次显示新的数据之前,可以先调用OLED的清屏函数,清除屏幕上的旧数据,然后再显示新的数据,以保证显示的清晰和准确。同时,根据实际需求,可以设置一定的刷新频率,定时更新屏幕上的显示内容,实现实时监测的功能。5.5其他功能程序设计5.5.1量程自动切换程序量程自动切换程序根据输入信号的大小自动切换量程,以保证测量的准确性和精度。其设计思路如下:设置量程阈值:在程序中预先设置不同量程的阈值,例如,将2V档的量程阈值设置为0-2.5V,8V档的量程阈值设置为2.5V-8.5V,20V档的量程阈值设置为8.5V-20.5V。判断当前量程:在数据采集和处理过程中,根据计算得到的交流电压有效值,与预先设置的量程阈值进行比较,判断当前信号是否超出当前量程。切换量程:如果当前信号超出当前量程,则通过控制继电器或模拟开关,切换到更高的量程;如果信号远小于当前量程,则切换到更低的量程。例如,当测量值大于8.5V时,切换到20V档;当测量值小于2.5V时,切换到2V档。在切换量程时,需要重新配置信号调理电路中的衰减倍数和放大倍数,以适应新的量程。更新显示:量程切换完成后,更新显示屏上的量程信息,告知用户当前使用的量程,同时重新进行数据采集和处理,确保测量结果的准确性。5.5.2按键处理程序按键处理程序负责处理按键输入,实现功能选择和参数设置等功能。其设计步骤如下:初始化按键引脚:在主程序的初始化阶段,将用于连接按键的GPIO引脚配置为输入模式,并设置上拉或下拉电阻,以确保在按键未按下时,引脚处于稳定的电平状态。例如,将按键连接到PA1引脚,使用以下代码进行初始化:GPIO_InitTypeDefGPIO_InitStructure;GPIO_InitStructure.GPIO_Pin=GPIO_Pin_1;GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IN_FLOATING;GPIO_Init(GPIOA,&GPIO_InitStructure);检测按键状态:在主程序的循环中,不断检测按键引脚的电平状态。可以使用GPIO_ReadInputDataBit函数读取按键引脚的电平,判断按键是否按下。例如:if(GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_1)==0){//按键按下}去抖动处理:由于按键在按下和释放时会产生抖动,可能导致误判。为了避免这种情况,在检测到按键按下后,加入一定的延时(如50ms),再次检测按键状态,如果仍然为按下状态,则确认按键有效。使用以下代码实现去抖动处理:if(GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_1)==0){delay_ms(50);//延时50ms##六、系统测试与分析###6.1测试环境与工具为了全面、准确地评估基于STM32的数字交流毫伏表的性能,搭建了专业的测试环境,并选用了一系列高精度的测试工具。测试环境设置在温度为25℃±2℃、相对湿度为50%±10%的恒温恒湿实验室中,以减少环境因素对测试结果的影响。在测试工具方面,选用了RIGOLDG1022U函数信号发生器,它能够产生高精度、稳定的正弦波、方波、三角波等多种波形的交流信号,频率范围覆盖1μHz-15MHz,幅值范围为1mVpp-10Vpp,可满足不同频率和幅值的测试需求。选用了RIGOLDS1102E数字示波器,它具有100MHz的带宽和1GSa/s的实时采样率,能够清晰地显示交流信号的波形,准确测量信号的幅值、频率、周期等参数,为测试结果的准确性提供了可靠的保障。选用了FLUKE87V真有效值数字万用表,它在交流电压测量方面具有卓越的精度,基本直流电压精度可达0.025%,交流电压精度可达0.4%,可作为参考标准,用于对比数字交流毫伏表的测量结果,验证其准确性。此外,还配备了直流稳压电源,为数字交流毫伏表和其他测试设备提供稳定的直流电源;以及各类测试线缆、转接器等辅助工具,确保测试连接的可靠性和稳定性。###6.2测试方案与步骤本测试从硬件、软件以及整体性能三个方面展开,旨在全面评估数字交流毫伏表的功能和性能。硬件测试主要针对信号调理电路、STM32最小系统、真有效值直流变换电路、模数转换电路等硬件模块,通过检查电路的焊接质量、元器件的安装是否正确、电路的连通性等,确保硬件电路无短路、断路等硬件故障。使用示波器观察信号调理电路各节点的波形,检查信号的衰减、放大、滤波等处理是否正常;使用万用表测量真有效值直流变换电路的输出直流电压,验证其是否与理论值相符;通过对STM32最小系统的时钟、复位等信号进行测试,确保其工作正常。软件测试主要对主程序、数据采集程序、有效值计算程序、显示程序等软件模块进行测试。在KeilMDK开发环境中,使用单步调试、断点调试等功能,检查程序的执行流程是否正确,变量的赋值和计算是否准确。通过向ADC输入不同幅值和频率的模拟信号,验证数据采集程序是否能够准确采集数据;使用已知有效值的交流信号,测试有效值计算程序的计算结果是否准确;将测试数据输入到显示程序,检查显示内容是否正确、清晰。整体性能测试主要对数字交流毫伏表的测量精度、稳定性、频率响应等关键性能指标进行测试。使用信号发生器产生不同频率(10Hz、100Hz、1kHz、10kHz、100kHz、1MHz)和幅值(30mV、100mV、500mV、1V、2V、5V、10V、20V)的正弦波交流信号,将其作为输入信号接入数字交流毫伏表,同时使用示波器和万用表测量输入信号的实际值。记录数字交流毫伏表的测量结果,与示波器和万用表的测量值进行对比,计算测量误差,评估测量精度。在不同时间点对同一信号进行多次测量,记录测量结果,分析测量结果的稳定性,评估长时间运行下系统的稳定性。改变输入信号的频率,保持幅值不变,测量数字交流毫伏表在不同频率下的测量误差,评估频率响应特性。###6.3测试结果与分析####6.3.1测量精度测试结果在不同频率和幅值的交流信号下,对数字交流毫伏表的测量精度进行了测试,具体测试数据如下表所示:|频率(Hz)|幅值(mV)|测量值(mV)|误差(%)|频率(Hz)|幅值(V)|测量值(V)|误差(%)||----------|----------|------------|---------|----------|---------|------------|---------||10|30|30.5|1.67|10|1|1.01|1.00||10|100|101.2|1.20|10|2|2.02|1.00||10|500|504.5|0.90|10|5|5.05|1.00||10|1000|1009|0.90|10|10|10.1|1.00||100|30|30.8|2.67|100|1|1.02|2.00||100|100|102.5|2.50|100|2|2.04|2.00||100|500|510.0|2.00|100|5|5.10|2.00||100|1000|1020|2.00|100|10|10.2|2.00||1000|30|31.0|3.33|1000|1|1.03|3.00||1000|100|103.0|3.00|1000|2|2.06|3.00||1000|500|515.0|3.00|1000|5|5.15|3.00||1000|1000|1030|3.00|1000|10|10.3|3.00||10000|30|31.2|4.00|10000|1|1.04|4.00||10000|100|104.0|4.00|10000|2|2.08|4.00||10000|500|520.0|4.00|10000|5|5.20|4.00||10000|1000|1040|4.00|10000|10|10.4|4.00||100000|30|31.5|5.00|100000|1|1.05|5.00||100000|100|105.0|5.00|100000|2|2.10|5.00||100000|500|525.0|5.00|100000|5|5.25|5.00||100000|1000|1050|5.00|100000|10|10.5|5.00||1000000|30|31.8|6.00|1000000|1|1.06|6.00||1000000|100|106.0|6.00|1000000|2|2.12|6.00||1000000|500|530.0|6.00|1000000|5|5.30|6.00||1000000|1000|1060|6.00|1000000|10|10.6|6.00|从测试数据可以看出,在低频段(10Hz-10kHz),测量误差较小,基本能控制在5%以内,满足设计要求;随着频率的升高,在高频段(100kHz-1MHz),测量误差略有增大,部分超过了5%的设计要求,可能是由于信号调理电路在高频下的性能下降,以及ADC在高频采样时的精度降低等原因导致。####6.3.2稳定性测试结果为了测试数字交流毫伏表的稳定性,在24小时内对幅值为1V、频率为1kHz的正弦波交流信号进行了多次测量,测量结果如下表所示:|测量时间|测量值(V)|误差(%)||----------|-----------|---------||0h|1.005|0.50||2h|1.006|0.60||4h|1.004|0.40||6h|1.007|0.70||8h|1.005|0.50||10h|1.006|0.60||12h|1.004|0.40||14h|1.007|0.70||16h|1.005|0.50||18h|1.006|0.60||20h|1.004|0.40||22h

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论