完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
最近在网上看到一篇关于自己制作的万用表的文章,觉得不错就将她翻译了过来,推荐给各位同仁。当然限于个人水平,有不当指出恳请指正。大家也可以看原文:https://hackaday.io/project/9395-multimeter#menu-description,同时感谢作者公开这些资料。有兴趣的也可以加入这一项目,正文如下: 1、描述 我经常带着很多设备去往各地,但每次乘坐飞机都被要求做“随机抽查”。所以我决定制作我自己的手提式万用表,它的功能将覆盖我在实验室使用的大部分设备。我使用PIC24FJ256GA110微控制器设计了一个带有双通道24位ADC的电路板,以及具有过电压保护的高电压模拟前端。PIC24F拥有一个500 ksps ADC,所以我设计成了一个拥有55khz(- 3db)带宽的单通道示波器。由于PIC24有一个PWM功能,所以我将其做成了一个简单的PWM波形生成器。我还添加了电阻和电容测量电路。我添加了两个通道用于数字跟踪,采用中断驱动的数字嗅探器。两个通道的24位数据记录器满足所有数据记录的需求。具有自动的AC / DC切换功能,所以不需要手动设置DC或AC读数。这台万用表可以通过按键或者电脑来控制。所有的数据都可以实时地显示在显示屏或者上位界面上。 2、详细说明 下面是Multimeter+的方块结构图: 在项目主页中,有一个显示原理图的各部分联系的框图: 该仪器有两路低频高压的独立输入,用于测量1kHz以下的信号和电压。在前面的框图中,它们被标记为输入1和输入2,他们都是带过压保护和滤波的全差分输入。模拟信号经过信号处理电路后,就会被24位AFE(MCP3911)数字化。MCP3911是一个双通道模拟前端(AFE),它包含两个同步采样delta-sigma模拟/数字转换器(ADC)、两个PGA、相位延迟补偿块、内部电压参考、调制器输出块和20MHz高速SPI兼容串行接口。 电压读数能够在自带的LCD显示器或者PC用户接口上实时显示。输入2能够被设置用于0.5A一下的电流测量(后续我将继续提高电流的测量范围)。选择电流测量时,继电器会连通Rsh1到输入2. 到目前为止,已经能够测量高达120VAC的AC和DC电压,理论上这台仪器应该可以达到220VAC或310VDC。 有一个单独的示波器通道,可以约380ksps的速度将高达55kHz的输入信号送到电脑上显示,后续我们将继续提高采样速度,时期达到500ksps。PIC24FJ256GA110有500ksp的ADC转换器,但是因为我必须操作和存储数据,有效的采样率下降。 如下显示了MCU部分的电路图: PIC24FJ256GA110是带外围插脚选择的100Pin通用闪存微控制器。 所有PIC24F设备的核心都是修改16位哈佛架构,首先介绍了芯片的dsPIC®数字信号控制器。 它是理想的低功好设备(< 100nA备用电流)并能连接各种应用,因为它拥有多个串口(3xI2C、3xSPI)、4xUARTS和23个独立计时器可供使用。大容量的RAM(16kB)内存以及大容量(高达256kB)增强闪存程序存储器,使其适合于嵌入式控制和监控应用程序。PPS(外围插脚选择)辅助工具能够实现最有效的I/O配置,CTMU提供了多达64个按键的触摸感应支持。 •高达16MIPS的性能 •16x16硬件乘法器,单周期执行 •12位x16位硬件除法器 •C编译器优化指令集 内置数据记录器使用的内部串行flash: SPI总线用于传送MCU的数据到串行Flash。数据记录仪目前正在开发中。 下面的图片显示了数据记录器的“下载配置”页面: 有一个独立的输入用于电阻和电容的测量。 板载脉冲发生器输出可用于测试电子电路。 数字嗅探器是一项正在进行中的工作,它将被用来追踪数字信号。 内部串行闪存允许在内部记录数据,以便以后的数据展示。 采用电位隔离的全速度USB接口使得从Multemeter+到PC用户界面的数据传输速率能达到1.2 Mbit/s。隔离减少了由PC所引入的测量失真的影响。 Multimeter+通过一个可充电的锂离子电池供电,并有一个板载充电电路。 充电电路由外接12VDC电源供电。主要组件是BQ24103RHLR同步开关,锂离子电池和聚合物锂电池的电荷管理集成电路。U4和U5用于监视电池的充电状态。电池状态显示在液晶显示器上。 扩展端口用于无线通信和额外的硬件,传感器。 Micro USB用于Multimeter+和电脑之间的串行通讯。 测量值实时显示。下图显示了一个连续运行的DVM(数字电压表)页面的快照。在图像上测量两个小的直流值,波形图显示在直流电压上的噪声。 采样频率可在3.56 ksps和57 ksps之间切换。切换到57个ksp可以提供更好的噪声图像。 FFT页面显示测量电压的光谱图: Multimeter+设计成适用于Hammond 1553T。 也许和大多数人一样,我经常使用两块万用表。原因是我经常需要比较两个不同来源的电压。如果我只有1块表,我需要比较两个读数,我要么试着记住电压读数,要么我把它写下来,然后比较。这不是很方便。此外,计算功耗电压和电流必须同时测量。Multimeter+通过双输入来解决所有这些问题。仪器可以同时测量两种不同的电压或者电流。 该仪器基于PIC24FJ256GA110微芯片微控制器。它由锂离子充电电池供电,可以作为独立的或USB测试和测量设备。 下面的图片是能不的情况。它有两个约-3db/1kHz的24位全差分通道。采样率可设置为3.56 ksps或57ksps。有4个自动开关电压范围,最低为0到+/-0.6v,最高可达400V最大值。每个通道都是独立的,目前有10M欧姆输入阻抗(希望能做到20M),两个通道都根据测量的输入自动切换交流和直流测量。交流值是真实的RMS读数。通道1可用于测量交流或直流电流。 通过USB连接读数能以数字和图形方式在PC上实时显示。如果您正在测试电源,需要查看低频波纹,您可能会发现此设备非常有用。 该仪器有一个单通道10位分辨率USB示波器,带宽大约为55kHz(我仍在测试频率参数以获得更精确的值)。示波器输入有x1和x10范围。 示波器中还在还发中,还需要做大量的测试和调试。 电容和电阻表: 电容计的范围从15nF到大约2000 uF。电阻测量目前可以从2k欧姆到15兆欧姆。我在做低电阻测量,希望我能得到1欧姆的读数。 还有一个带有32M存初期的2通道数据记录器,这部分还在开发中。 可以用数字嗅探器来跟踪数字信号。数字嗅探器是一种输入,它驱动芯片上的一个中断引脚。一旦中断发生,我检查引脚的当前状态,“High”或“Low”,并读取我的计时器来确定上一次中断的时间。时间间隔表示接收了多少位数据。我还在做这个项目的这一部分。我应该能在下个周末之前把它弄出来,然后发布一个短片。 在仪器上有一个扩展端口。它有一些GPIO引脚UART,I2C和SPI端口。只有2个端口可以同时使用。我使用UART端口连接一个NordicNRF51822BLE设备,在我的万用表和我的手机之间运行一个简单的无线通讯。 计算机发送命令并接收来自手持设备的数据。 命令是由计算机向手持设备传输的单个字符。设备接收字符并解码,运行相应的代码段。例如,当采用电压测量和在两个通道上收集数据时,必须将两个通道的字符发送给手持设备。当这个字符被接收时,单元开始转换循环。转换完成后,固件加载CH0和CH1数据缓冲区,结果为24位。当所有缓冲区都满时,数据就会被发送回PC。我使用labview来分析和显示PC上的数据。LabVIEW是一种图形编程语言,它使得开发自定义用户界面变得非常容易。以下是用于控制和配置来自PC的单元的字符命令的部分列表: ‘I’——返回董事会的ID。 ‘p’——暂停收购。 ‘s’——传输256个样本开始一个新的周期。 ‘W’——写ADC寄存器 ‘R’——读取ADC寄存器 命令通过串口发送。该设备被分配一个连接到计算机的COM端口号码,并通过COM端口与LabVIEW进行通信。波特率设置为每秒1.2M。LabVIEW有许多准备使用块来进行信号处理。一旦接收到数据,就可以通过低通、高通、带通或任何其他的LabVIEW过滤器过滤数据。LabVIEW有一个信号处理组件,因此可以研究和处理所有捕获的信号。 评分
|
||
相关推荐
|
||
只有小组成员才能发言,加入小组>>
求解外围电路实现的是4脚给持续低电平复位并正常工作,高电平不工作的原因
2084 浏览 1 评论
3629 浏览 3 评论
PIC1946程序有一个变量在运行过程中恢复初始值其他变量保持不变
2336 浏览 2 评论
2763 浏览 0 评论
PIC16F1825的RC5引脚,在主程序中操作无效,在中断中可以改变是为什么?
4027 浏览 5 评论
973浏览 0评论
用XC8编译PIC18F25K80时提示下面Error,求怎么解决这个问题
6360浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-4 07:14 , Processed in 0.512477 second(s), Total 51, Slave 42 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号