王春泽自动电阻测量仪报告 修复的Word文档格式.docx
- 文档编号:22267976
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:21
- 大小:6.16MB
王春泽自动电阻测量仪报告 修复的Word文档格式.docx
《王春泽自动电阻测量仪报告 修复的Word文档格式.docx》由会员分享,可在线阅读,更多相关《王春泽自动电阻测量仪报告 修复的Word文档格式.docx(21页珍藏版)》请在冰豆网上搜索。
一、设计要求
设计并制作一台自动电阻测量仪,可以测量0.1Ω~10MΩ的电阻。
1.1基本要求
(1)测量量程为100Ω、1kΩ、10kΩ、10MΩ四档。
测量准确度为±
(1%读数+2字)。
(2)3位数字显示(最大显示数为999),能自动显示小数点和单位。
(3)测量及显示速率不低于1次/秒。
(4)具有自动量程转换功能。
(5)单直流电源工作。
1.2发挥部分
(1)具有定电阻值自动电阻筛选功能,实现声光报警提示。
(2)设计并制作一个能自动测量和显示电位器阻值随旋转角度变化的辅助装置,连接的示意图如图1所示。
(3)实现设定角度值测量电位器的阻值,测量准确度为±
(5%读数+2字)
(4)实现自动连续测量电位器的阻值曲线,全程测量时间不大于10秒,测量点可任意设定不少于10点。
(5)其他。
二、方案总体确立
2.1电路测量方案
测量电路的设计和实现主要有以下几种方案:
方案一:
恒流源法
该方法主要采用恒压源,恒定电流(I)通过待测电阻(R)上时,通过采集待测电阻两端的电压(U1和U2),利用公示
R=(U2-U1)/I
得到待测电阻的阻值。
优点:
测量结果精确
缺点:
测量范围有限,恒流源不便控制。
方案二:
恒压源电阻分压
该方案主要利用恒压源进行电阻分压实现。
将标准电阻Ro和待测电阻Rx串联接在电源的两端,其中Ro为接地端,通过对Ro的两端电压进行测量,得到U1和U2,利用公式
Rx=Ro*((U2-U1)/U1)
测量结果精确,电路结构简单,恒压源实现容易。
经过两种方案的对比,考虑到测量范围及电路的稳定性,最终决定采用方案二,利用恒压源采用电阻分压进行实现。
2.2显示方案确定
方案一、采用LCD显示
该方案主要采用LCD进行结果显示,可选择的LCD主要有1602和12864等。
显示稳定,可以显示中文汉字等。
占用大量接口,费用较贵,显示效果一般
方案二、采用8位数码管显示
该方案主要采用两个74HC595串行输入并行输出来驱动8位数码管进行显示。
占用接口少,显示方便,
只能显示数字。
经过两种方案的对比,为了节省接口,考虑到结果主要是数字,决定采用方案二,利用数码管进行结果显示。
2.3电源方案确定
使用电池供电
该方案使用电池为电路及单片机供电
电压小,控制方便
电压不稳定,调节困难,电路复杂
使用电源模块供电
该方案使用220V转5V的电源模块为电路及单片机供电。
电压稳定,电路简单,精确度高
电压过高,易损坏电路
经过两种方案的对比,考虑到电路的稳定性以及结果的精确度要求,决定采用方案二,但是要对电路有一定的保护措施。
三、测量原理图
电压跟随器:
U1中3、5端为采样的电压U1和U2,U2则是判断档位电路。
四、接口定义和连接
单片机的管脚定义及接法
P2.0接数码管的RCK
P2.1接数码管的SCK
P2.2借数码管的DIO
P1.2和P1.5分别为AD转换的通道2和通道5,用来接收电压值。
五、程控部分设计
5.1程序显示控制
程序显示模块在硬件上使用数码管来显示结果,数码管的的工作流程图如下
5.1.1定义段和位
unsignedcharduan[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
///共阳段段值,不带小数点
unsignedcharwei[]={0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01};
//位值
unsignedcharduan2[]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10};
//带小数点的段值
5.1.2定义接口
#defineRCK_HP2OUT|=BIT1;
#defineRCK_LP2OUT&
=~BIT1;
#defineSCK_HP2OUT|=BIT0;
#defineSCK_LP2OUT&
=~BIT0;
5.1.3数据传送
RCK_L;
for(i=0;
i<
8;
i++)
{
SCK_L;
P2OUT=((temp&
0x80)>
>
5);
//temp&
0x80表示判断最高位的状态,最高位为1时,条件为真
temp<
<
=1;
SCK_H;
//从SCK产生一上升沿(移入数据)P1.0
}
RCK_H;
5.1.4中断函数
#pragmavector=WDT_VECTOR
__interruptvoidwatchdog_timer(void)
{
In595(display[j],j);
if(j<
4)
j++;
else
j=0;
}
5.2AD转换控制
5.2.1AD初始化
P1SEL|=BIT1+BIT2+BIT0+BIT3+BIT4+BIT5;
//设置通道0到5
ADC10CTL1|=CONSEQ_3+INCH_5;
//序列通道多次转换+最大通道为A5
ADC10CTL0|=ADC10SHT_3+MSC+ADC10ON+ADC10IE;
ADC10DTC1|=0x06*2;
//一共采样6*2次
ADC10AE0|=BIT0+BIT1+BIT2+BIT3+BIT4+BIT5;
//+BIT6+BIT7;
//打开A0到A5的模拟输入通道
5.2.2AD采样部分
ADC10CTL0&
=~ENC;
//关闭采样使能
while(ADC10CTL1&
BUSY);
//检测AD是否繁忙
ADC10CTL0|=ENC+ADC10SC;
//启动ADC
ADC10SA=(unsignedint)a;
//获取a[]的首地址。
首先对A5采样,放入a[0]中。
再对A4采样,放入a[1]中,如此循环下去。
_BIS_SR(LPM0_bits+GIE);
//低功耗模式0,开中断
5.2.3数据转化部分
6;
b[i]=0;
for(j=0;
j<
j++)
b[i]+=a[i+j*6];
//b[0]等于A5通道数据相加之和,b[1]=A4通道数据相加之和,每个b有2组数
for(i=0;
b[i]=b[i]/2;
//对b[0],b[1]等求平均值
_NOP();
5.3档位开关选择
range=((3.566*ad2)/1023*1000);
//A3
if(range<
800){position=1;
}//1档
elseif(range<
1200){position=2;
}//2档
2300){position=3;
}//3档
else{position=4;
}//4档
if(position==1)//1档
if(position==2)//2档
if(position==3)//3档
if(position==4)//4档
5.4主函数控制
voidmain()
{
WDTCTL=WDT_ADLY_1_9;
//设置内部看门狗工作在定时器模式,1.9ms中断一次
IE1|=WDTIE;
//使能看门狗中断
P2DIR|=BIT0+BIT1+BIT2;
P2OUT=0xf8;
P1DIR=0;
While
(1)
六、电路调试
因为之前调试都是采用电脑USB给单片机供电,显示效果和精度都还比较满意,今天验收的时候用电源分压3.5V供电,数码管一直显示不稳定,下面是之前调试时的测量结果,调试时测量完之后,用万用表测量进行对比。
第一次调试,显示的单位都是欧姆,前面的0无效
10K的电阻
5.1K的电阻
10欧的电阻
1欧的电阻
330欧的电阻
2.7千欧的电阻
5.5千欧的电阻
10千欧的电阻
1.5千欧的电阻
430欧的电阻
第二次调试,改为3位显示,第三位上的1代表欧姆,2代表千欧,3代表兆欧
5.1千欧
9千欧
100欧
550欧
510千欧
330千欧
1.5兆欧
3.5兆欧
200千欧
45千欧
1.8兆欧
440千欧
560欧
47千欧
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 王春泽自动电阻测量仪报告 修复的 王春泽 自动 电阻 测量仪 报告 修复