万用表的设计与组装实验报告改装版

目录

引言... 2

实验方案:... 2

... 3

二:直流电压档... 3

三:交流电压档... 4

四:电阻档... 4

实验内容... 5

实验步骤... 5

一:制作可调电压的直流电源... 5

二:制作量程1.00mA直流电流表并校验... 6

三:制作量程2.50V的直流电压表并校验... 7

四:制作量程10.0V交流电压表并校验... 8

五:制作×100挡的欧姆表并校验... 10

万用表使用说明... 11

参考资料... 11


万用表的设计与组装

姓名:计晓龙    学号:10211068

学院:电子信息工程学院   班级:通信1003

引言

实验任务

分析研究万用表电路,设计并组装一个万用表。

实验要求

1.          分析常用万用表电路,说明个挡的够功能和设计原理;

2.          设计组装并校验具有下列四档功能的万用表。

   (1)直流电流挡:量程1.00mA;

              (2)以自制的1.00mA电流表为基础的直流电压档:量程2.50V。

(3)以自制的1.00mA电流表为基础的交流电压档:量程10.00V。

(4)以自制的1.00mA电流表为基础的电阻档(×100)电源使用1.5V电池。

            3.给出将×100电阻档改造为×10电阻档的电路。

主要仪器

表头,导线若干,电阻箱若干,万用表。

实验方案:

     用给定的表头通过与相应的电阻进行串并联可以组装成有直流电压、电流档的万用表。通过整流滤波电路可以组装成有交流电压档的万用表。该表头的内阻为,满偏电流为

表头满偏电流较小,不能直接测量较大电流。因此需要小电阻分流。分流电路如图(a)。设直流电流档的量程为I。并联电阻为。由欧姆定律的………………………………………………………………...(1)

          (a)

由公式(1)可以求得的理论值是        

二:直流电压档

由于表头内阻较小,满偏电流也很小。因此满篇电压也很小则需串联一个较大的电阻分压。设直流电压档的量程为串联电阻为由欧姆定律得U=I………………………………………………….(2)

其电路图如图(b)

               (b)

则由式(2)可求得分压电阻的理论值是

三:交流电压档

 必须先把交流电压转为直流电压再测其电压。通过半桥整流电路可将交流电转化为直流电。如图(c)

      (c)

电压的有效值为U的交流电输入后,经半桥整流后得到电压平均值为E的直流电。

四:电阻档

电阻档是在自供电压为E的直流电源下,与待测电阻串联形成通路。再测量电阻。在两极短接是电阻必须为零,故而电阻档须有调零电阻。电阻档电路图如图(d)

                (d)

实验内容

一:制作可调电压的直流电源

二:制作量程1.00mA直流电流表并校验

三:制作量程2.50V的直流电压表并校验

四:制作量程10.0V交流电压表并校验

五:制作×100挡的欧姆表并校验

实验步骤

一:制作可调电压的直流电源

用以下电路图转交流为直流

测量得最大输出电压为   V

二:制作量程1.00mA直流电流表并校验

按图(a)组装电流表。测得

表头内阻 表头内固定的电阻R= 

则表头实际内阻为  

表头量程=  Ma

=  

用下图电路进行校验

校验结果:

其中标准电流表的读数为待测电流表的读数。

其误差校验曲线为

三:制作量程2.50V的直流电压表并校验

在1mA电流表的基础上组装2.50V的电压表按图(b)组装电路

可得=  

按下图进行分刻度校验

校验结果如下

其中其校准曲线为

四:制作量程10.0V交流电压表并校验

由于整流后的电流是平均值,则有=0.45并且考虑到二极管的降压作用降压  v则10v交流电压经整流后对表头的作用只有  v换句话说10v交流电压经半波整流后作用于表头时指针偏转角相当于   v直流电压作用下的偏转角。

则有=-=  

用如下电路图进行校验

                                                                                                                                          

其校验结果如下

其中为标准电压表的读数,待校验的电压表读数。

其校验曲线如下图。

五:制作×100挡的欧姆表并校验

按图(d)组装电路即为×100挡的欧姆表。欧姆表自供电源为一节  v的干电池。

电阻与量程1mA的电流表串联。当欧姆表两端短接时待测电阻为零,表头满偏电流为1mA。由欧姆定律得

            R=  

当欧姆表外接电阻等于内阻时表头半偏,所以干路电流为  mA

路端电压为  v故中值电阻为

             =  

欧姆表校验结果如下表

下面给出×10挡的欧姆表电路

其中=   ,=   当开关切换至并且滑动变阻器阻值为     时为×10挡的欧姆表电路,当快关切换至滑动变阻器阻值为   时为×100挡的欧姆表电路

万用表使用说明:

(1)由于仪器限制电表测量值与真实值之间存在误差。因此在校验时给出了校验曲线,误差、真实值、测量值之间的关系为

真实值=测量值- 误差(误差即为校验曲线中的纵坐标)。

(2)使用电表时请注意各表量程。使用交流电压表时由于二极管的原因请不要测量较大的交流电压以防电压击穿二极管。

(3)欧姆表的调零电阻设计时已经内置在表头内,所以各表切换时不会有影响,应注意使用欧姆表时两表笔短接用调零电阻调零。

(4)由于欧姆表制作较粗糙,只能用于粗侧电阻。若要精测电阻请使用更精密的仪器。

参考资料     

   大学物理实验  成正维 牛原主编 北京交通大学出版社 20##年5月第一版

基础电路分析 闻跃 高岩主编 北京交通大学出版社 20##年10月第二版

 

第二篇:万用表的课程设计

数字万用表的设计

课程名称                              

      课题名称                                  

                                 

                              

                                  

                                  

组人                              

指导教师                              

         

                                20##年5月20

  

1、设计任务..........................................................................................1

 1.1设计目的.......................................................................................1

 1.2设计指标及要求..............................................................................1

2、设计思路与总体框图...................................................................1

3、系统硬件电路的设计…….........………….....…………..…………….2

3.1多用表主电路 …….......…………….....……………………..........2

3.2  电阻测量输入电路………………….....……………………..........2

3.3电压测量输入电路……........……………………………………….3

3.4电流输入测量电路........................................................................3

4、系统的软件设计..............……………..............……………………...4

5、系统的设计仿真............……………..............……………………...10

6、总结与体会...........…………...............……………………………..20

6.1 总结.....…………...............……………………………………….20

6.2体会.......………...............…………………………………..........21

7参考文献....................……….....…………….…………………….22

1、设计任务

1.1设计目的

采用8位8路A/D转换器ADC0809和AT89S52单片机,设计一台数字多用表,能进行电压、电流和电阻的测量,测量结果通过LED数码管显示,通过按键进行测量功能转换。

1.2设计指标及要求

电压测量范围0~5V,测量误差约为0.02V,电流测量范围1~100mA,测量误差约为0.5mA,电阻测量范围0~1000Ω,测量误差约为2Ω。

2、设计思路与总体框图

1.方案选择

用单片机AT89S52与ADC0808设计一个数字万用表,配合分流电阻、分压电阻、基准电阻可以测量直流电压值,直流电流、直流电阻,四位数码显示。实现各级量程的直流电压测量,其量程范围为0—5(V)。实现不同量程的直流电流测量,其量程范围为0—100(mA)。实现不同量程的电阻测量,其量程范围为0—1000(Ω)。

ADC0808是带有8位A/D转换器、8路多路开关以及微处理机兼容的控制逻辑的CMOS组件。它是逐次逼近式A/D转换器,可以和单片机直接接口。首先,利用P0 口数据地址复用,将地址通过P0口输入到单片机中。然后,充分利用单片机强大的运算转化功能将其转成适当的二进制信号控制数显以确保正确的显示被测量的读数。

    

2.总体框图

 

图一:总体框图

3、系统硬件电路的设计

3.1  数字多用表的主电路

数字多表仪表主电路如图1所示。89S52单片机通过线选方式扩展了A/D转换器ADC0809和4位LED数码管,单片机的P2.7引脚作为ADC0809的片选信号,因此A/D转换器的端口地址为7FFFH.片选信号和信号一起经或非门产生ADC0809的启动信号START和地址锁存信号ALE。片选信号和信号一起经或非门产生输出允许信号OE,OE=1时选通三态门使输出锁存器中的转换结果送入数据总路线。ADC0809的EOC信号经反相后接到89S52的引脚,用于产生A/D转换完成中断请求信号。ADC0809芯片的3位模拟量输入通道地址输入端A、B、C分别接到89S52的P0.0、P0.1和P0.2,故只要向端口地址0C000H分别写入00H~07H,即可启动模拟量输入通道0~7进行A/D转换。ADC0809参考正电压为5V,参考负电压为0V,时钟输入为2MHz。


图1 数字多用表的主电路图

单片机的P1.0 ~P1.2引脚通过一个转换开关接地,通过判断P1.0 ~P1..2引脚电平的高低,决定是否进行电阻测量、电压测量或电流测量。

3.2数字多用表电阻输入电路

图-2

图-2所示为数字多用表的电阻测量输入电路。运算放大器的反馈电阻Rx作为待测电阻,通过1K电阻R19接到-5V电源上,假定运算放大器理想,那么放大器的输出电压Rv=5×Rx/R19,将Rv送给ADC0809,转换后得到数字量为Dv=Rv×255/5。单片机读取A/D转换数据,再经过逆向运算可得Rx=Dv×R19/255,注意此时得到的Rx是二进制数,需要转化成十进制数后才能送给数码管显示,程序中采取用4字节无符号除法,连续进行4次除以10的除法,依次取得4位数值,并且电阻测量范围只保证在0~ 1KΩ范围内误差不超过2Ω,如果要测量其他电阻,则需该改R19的值。为满足图-2电路需要的-5V电源,利用LM324做一个反向电路,将+5V的电源转换成了-5V,如图-3:

图-3

3.3数字多用表的电压测量输入电路

图-4

图-4所示为数字多用表的电压测量输入电路,待测电压经过低通滤波器滤除高频干扰,再经过同向放大器送给ADC0809,电压测量输入范围0~5V,ADC0809的分辨率为8位,测量误差为5/255=0.02V。

3.4数字万用表的电流测量输入电路

图-5

图-5是数字万用表电流测量输入电路。电流测量范围为1-100mA,因为ADC0809是电压转化器,必须将电压才能进行测量,这可以通过串接电阻RL来实现,注意RL必须很小(如0.1Ω),否则营销电流数值,由于待测电流和RL都很小,RL两端的电压也很小,必须将其放大到ADC0809能够分辨的范围之内。

4、系统的软件设计

数字多用表的软件设计如下程序所示,完成堆栈指针初始化之后,通过单片机P1.0—P1.2引脚进行测量功能判断,根据不同引脚电平分别进行电阻、电压或电流测量。每种测量过程都基本相同,先读取ADC0809的A/D转换数据,然后进行相应的数据处理,最后将处理后的数据送往LED数码管进行显示。

       数字多用仪表的软件程序:

org 0000h               ;单片机复位地址

    ajmp    main                ;转移到主程序处        

    org 0100h               ;main被定位在0x0100处

main:  mov sp,#80h             ;初始化堆栈指针

    jnb P1.0,cr

    jnb P1.1,cv

    jnb P1.2,ca

cr: mov R7,#00h

    lcall   adc

    LCALL   RDAT

    lcall   DISPLAY

    sjmp    main

CV: MOV R7,#01H

    LCALL   ADC

    LCALL   VDAT

    LCALL   DISPLAY

    SJMP    MAIN

CA: MOV R7,#02H

    LCALL   ADC

    LCALL   ADAT

    LCALL   DISPLAY

    SJMP    MAIN

ADC:    MOV    A,R7        ;0808 A/D转换子程序

    MOV    DPTR,#7FFFH

    MOVX   @DPTR,A

    JB     P3.3,$

    MOVX   A,@DPTR    ;输入转换结果

    RET

vdat:

        mov R2,#00h

        mov R3,A

        mov R6,#01h

        mov R7,#0F4h

        call    MULD2               ;乘以500

        clr C

        mov A,r5

        add A,#60h              ;加96修正

        mov r5,A

        mov A,r4

        addc    A,#00h

        mov r4,A

        mov A,r3

        addc    A,#00h

        mov r3,A

        mov A,r2

        addc    A,#00h

        mov r2,A

        mov r0,#30h

        mov r1,#34h

        mov A,R2

        mov @r1,A

        inc r1

        mov A,R3

        mov @r1,A

        inc r1

        mov A,R4

        mov @r1,A

        inc r1

        mov A,R5

        mov @r1,A

        inc r1

        mov @r1,#00h

        inc r1

        mov @r1,#00h

        inc r1

        mov @r1,#00h

        inc r1

        mov @r1,#0FFh

        call    DIVD4               ;除以255

        mov r1,#38h

        mov @r1,#00h

        inc r1

        mov @r1,#00h

        inc r1

        mov @r1,#00h

        inc r1

        mov @r1,#0Ah

        call    DIVD4

        mov 43h,33h

        call    DIVD4

        mov 42h,33h

        call    DIVD4

        mov 41h,33h

        mov r0,#40h

        mov @r0,#00h

        inc r0

        mov A,41h

        mov DPTR,#SEGMENT7

        movc    A,@A+DPTR

        orl A,#80h

        mov @r0,A

        inc r0

        mov A,42h

        mov DPTR,#SEGMENT7

        movc    A,@A+DPTR

        mov @r0,A

        inc r0

        mov A,43h

        mov DPTR,#SEGMENT7

        movc    A,@A+DPTR

        mov @r0,A

        ret

ADAT:

        mov B,A

        mov A,#0B6h

        clr C               ;以下根据范围设置数值以防溢出

        subb    A,B

        jc  LARGERA

        mov A,B

        subb    A,#16h

        jc  LESSA

        ajmp    MIDDLEA

LARGERA:    mov A,#0B6h

        ajmp    CALCULATEA

LESSA:      mov A,#16h

        ajmp    CALCULATEA

MIDDLEA:    mov A,B

CALCULATEA: mov r2,#0C3h

        mov r3,#50h

        mov r6,#00h

        mov r7,A

        call    MULD2           ;乘以50000

        clr C

        mov A,r5

        subb    A,#70h          ;以下减去102000

        mov r5,A

        mov 37h,A

        mov A,r4

        subb    A,#8Eh

        mov r4,A

        mov 36h,A

        mov A,r3

        subb    A,#01h

        mov r3,A

        mov 35h,A

        mov A,r2

        subb    A,#00h

        mov r2,A

        mov 34h,A

        mov r0,#30h

        mov r1,#38h

        mov @r1,#00h

        inc r1

        mov @r1,#01h

        inc r1

        mov @r1,#5Eh

        inc r1 

        mov @r1,#0A0h

        call    DIVD4           ;除以89760

        mov r1,#38h

        mov @r1,#00h

        inc r1

        mov @r1,#00h

        inc r1

        mov @r1,#00h

        inc r1 

        mov @r1,#0Ah

        mov DPTR,#SEGMENT7

        call    DIVD4

        mov A,33h

        movc    A,@A+DPTR

        mov 43h,A

        call    DIVD4

        mov A,33h

        movc    A,@A+DPTR

        mov 42h,A

        call    DIVD4

        mov A,33h

        movc    A,@A+DPTR

        cjne    A,#3Fh,NOTEQU

        mov A,#00h

NOTEQU:     mov 41h,A

        mov 40h,#00h

        RET

rdat:

        mov R2,#00h

        mov R3,A

        mov R6,#03h

        mov R7,#0E8h

        call    MULD2       ;乘以1000

        mov r0,#30h

        mov r1,#34h

        mov A,R2

        mov @r1,A

        inc r1

        mov A,R3

        mov @r1,A

        inc r1

        mov A,R4

        mov @r1,A

        inc r1

        mov A,R5

        mov @r1,A

        inc r1

        mov @r1,#00h

        inc r1

        mov @r1,#00h

        inc r1

        mov @r1,#00h

        inc r1

        mov @r1,#0FFh

        call    DIVD4               ;除以255

        mov r1,#38h

        mov @r1,#00h

        inc r1

        mov @r1,#00h

        inc r1

        mov @r1,#00h

        inc r1

        mov @r1,#0Ah

        mov DPTR,#SEGMENT7

        call    DIVD4               ;连续进行4次除以10的操作

        mov A,33h               ;取得10进制值

        movc    A,@A+DPTR

        mov 43h,A

        call    DIVD4

        mov A,33h

        movc    A,@A+DPTR

        mov 42h,A

        call    DIVD4

        mov A,33h

        movc    A,@A+DPTR

        mov 41h,A

        call    DIVD4

        mov A,33h

        movc    A,@A+DPTR

        cjne    A,#3Fh,NONZERO

        mov A,#00h

NONZERO:    mov 40h,A

        ret

DELAY_5ms:  mov R5,#01h             ;设置R5初始计数值

DELAY_5ms1: mov R6,#16h             ;设置R6初始计数值

DELAY_5ms2: mov R7,#70h             ;设置R7初始计数值

DELAY_5ms3: djnz    R7,DELAY_5ms3       ;延时时间为 Time=( ( (R7*2)+2+1 )*R6+2+1 )*R5+1

        djnz    R6,DELAY_5ms2       ;

        djnz    R5,DELAY_5ms1       ;

        ret

               

SEGMENT7:   DB  3Fh ;7段数码管字符0的abcdefg的值,a在最低位,最高位始终保留为0

        DB  06h

        DB  5Bh

        DB  4Fh

        DB  66h                

        DB  6Dh            

        DB  7Dh                

        DB  07h            

        DB  7Fh                

        DB  6Fh            

                           

DISPLAY:    mov DPTR,#0fEffh        ;写第一位数码管

        mov r1,#40h            

        mov A,@r1

        movx    @DPTR,A

        setb    C

        mov P1.4,C

        clr C

        mov P1.4,C

        call    DELAY_5ms

        setb    C

        mov P1.4,C

        inc r1     

        mov A,@r1               ;写第二位数码管

        movx    @DPTR,A

        setb    C

        mov P1.5,C

        clr C

        mov P1.5,C

        call    DELAY_5ms

        setb    C

        mov P1.5,C

        inc r1 

        mov A,@r1               ;写第三位数码管

        movx    @DPTR,A

        setb    C

        mov P1.6,C

        clr C

        mov P1.6,C

        call    DELAY_5ms

        setb    C

        mov P1.6,C

        inc r1     

        mov A,@r1               ;写第四位数码管

        movx    @DPTR,A

        setb    C

        mov P1.7,C

        clr C

        mov P1.7,C

        call    DELAY_5ms

        setb    C

        mov P1.7,C

        ret            

;双字节二进制无符号数乘法

;被乘数在R2(高位)、R3(低位)中,乘数在R6(高位)、R7(低位)中。

;乘积在R2(高位)、R3、R4、R5(低位)中。

;用到累加器A,B,PSW,R2~R7。

;永远不会产生进位。

;在出口时总是清除C。

;若结果超出2个字节范围则OV=1。

MULD2:

        MOV     A,R3

        MOV     B,R7

        MUL     AB

        MOV     R4,B

        MOV     R5,A

        MOV     A,R3

        MOV     B,R6

        MUL     AB

        ADD     A,R4

        MOV     R4,A

        CLR     A

        ADDC    A,B

        MOV     R3,A

        MOV     A,R2

        MOV     B,R7

        MUL     AB

        ADD     A,R4

        MOV     R4,A

        MOV     A,R3

        ADDC    A,B

        MOV     R3,A

        CLR     A

        RLC     A

        XCH     A,R2

        MOV B,R6

        MUL AB

        ADD     A,R3

        MOV     R3,A

        MOV     A,R2

        ADDC    A,B

        MOV     R2,A

        ORL A,R3

        JZ  MULD21 

        SETB    OV

        RET

MULD21:

        CLR OV

        RET

   

   

;四字节无符号数除法

;R0存放被除数,除数,商数的地址。

;从R0开始的连续四个字节为结果的余数,入口时可以为任意,但在出口时发生变化。

;其后的连续4个字节在入口时是被除数,出口时是商数。

;再其后的连续四个字节在入口时是除数,出口时保持不变。

;用到累加器A,B,PSW,R0~R7。

;如果除数为零,则置OV=1标志,否则清零。

;在出口时总是清除C。

DIVD4: 

        MOV A,R0

        MOV B,A

        ADD A,#08h

        MOV R1,A

        MOV A,#00h

        ORL A,@R1

        INC R1

        ORL A,@R1

        INC R1

        ORL A,@R1

        INC R1

        ORL A,@R1

        JZ  DIVD45

        MOV R1,B

        MOV R2,#04h

DIVD41:

        MOV @R1,#00h

        INC R1

        DJNZ    R2,DIVD41

        MOV R3,#20h

DIVD42:

        MOV R2,#08h

        MOV A,B

        MOV R0,A

        ADD A,#07h

        MOV R1,A

        CLR C

DIVD43:

        MOV A,@R1

        RLC A

        MOV @R1,A

        DEC R1

        DJNZ    R2,DIVD43

        MOV A,R0

        ADD A,#03h

        MOV R1,A

        MOV A,R0

        ADD A,#0Bh

        MOV R0,A

        MOV A,@R1

        SUBB    A,@R0

        MOV R4,A

        DEC R1

        DEC R0

        MOV A,@R1

        SUBB    A,@R0

        MOV R5,A

        DEC R1

        DEC R0

        MOV A,@R1

        SUBB    A,@R0

        MOV R6,A

        DEC R1

        DEC R0

        MOV A,@R1

        SUBB    A,@R0

        MOV R7,A

        JC  DIVD44

        MOV A,B

        MOV R0,A

        ADD A,#03h

        MOV R1,A

        MOV A,R4

        MOV @R1,A

        DEC R1

        MOV A,R5

        MOV @R1,A

        DEC R1

        MOV A,R6

        MOV @R1,A

        DEC R1

        MOV A,R7

        MOV @R1,A

        MOV A,R0

        ADD A,#07h

        MOV R1,A

        INC @R1

DIVD44:

        DJNZ    R3,DIVD42

        MOV R0,B

        CLR OV

        CLR C

        RET

DIVD45:

        SETB    OV

        CLR C

        RET

        end

5、系统的设计仿真

电压测量仿真

电流测量仿真

电阻测量仿真

      6.1总结与体会

数字多用表的课程设计,从确定方案、查找资料、仿真电路图,到最后电路设计实践,耗时2个星期。数字多用表的设计方案采取AT89S52单片机结合A/D转换器,从而实现对电阻、电流和电压的测量的方案,从而实现电阻、电流和电压的数字化测量。

本次课程设计,虽然方案基本出来了,但是在硬件制作方面出现了几个问题,这也暴露出我们知识方面的一欠缺。不足主要体现在以下几个方面:

(1)ADC0809的第10脚的时钟信号,我们是通过单片机编程实现的但是由于频率过低,只有500KHz,造成LED数码管显示不稳定而出现闪烁现象。最终验收时是通过从外部信号发生器输入2MHz时钟信号解决的。

(2)万用板焊接时,由于布线不太合理,使得背面线很零乱。并给后面的线路检查带来了不少麻烦。

(3)对Proteus仿真软件使用不熟练,使画仿真图时遇到不少问题。

(4)51单片机基础知识不扎实,电路分析遇到比较多的问题历经两个星期的课程设计后我深得做课程设计同时也是对课本知识的巩固和加强,由于课本上的知识太多,平时课间的学习并不能很好的理解和运用各个元件的功能,而且考试内容有限,所以在这次课程设计过程中,我们了解了很多元件的功能,并且对于其在电路中的使用有了更多的认识。

虽然最终的结果让人失望,但在此期间我们也曾一度热情高涨。从开始时满富盛激情到最后汗水背后的复杂心情,点点滴滴无不令我回味。

7、参考文献

《单片机原理及应用》 张毅刚 主编       高等教育出版社

《单片机原理实用教程》 徐爱钧 编著      电子工业出版社

《电子技术基础》康华光  主编           高等教育出版社

《集成电路原理及应用》谭博学、苗汇静 主编  电子工业出版社

相关推荐