簡易電阻、電感和電容的測量儀_第1頁
簡易電阻、電感和電容的測量儀_第2頁
簡易電阻、電感和電容的測量儀_第3頁
簡易電阻、電感和電容的測量儀_第4頁
簡易電阻、電感和電容的測量儀_第5頁
已閱讀5頁,還剩19頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

4/23簡易電阻、電感和電容的測試儀摘要:本系統以MSP430單片機作為控制核心,由555構成多諧振蕩電路實現對電阻和電容的測量,采用電容三點式振蕩電路實現對電感的測量。控制繼電器實現電阻、電容測量的檔位自動切換,使測量精度滿足指標要求;為使單片機精確測量待測頻率,在電感測量模塊中先進行整形和分頻,然后測量,以提高測量精度。該系統設計簡單,成本低,操作簡單,在測量范圍內誤差很小,經電路仿真分析可達到題目要求的指標。關鍵詞:555多諧振蕩電路,電容三點式振蕩,MSP430單片機,繼電器一、系統方案論證1.1電阻測量模塊方案論證方案一:伏安法。如圖1-1所示,分別用電流表和電壓表測出通過電阻的電流和電阻兩端的電壓,根據公式R=U/I求得電阻。這種測量方法雖然電路簡單,但要同時測出兩個模擬量,不易實現自動化,而電壓表與電流表都存在內阻,測量誤差大,精度不高。ARxAVV圖1-1伏安法測量原理圖1-1伏安法測量原理方案二:電阻分壓法。如圖1-2所示,將待測電阻Rx和基準電阻R串聯在電路中,由于電阻分壓的作用,當串聯到電路上的電阻Rx的值不同時其Rx上分的壓降也不同。通過測量上Vx便可由公式求得。RxRGNDVccRxRGNDVccVxVx圖1-2電阻分壓電路圖1-2電阻分壓電路該方案原理簡單,理論上只要參考電阻精確,就可以測量任何阻值的電阻,但實際上由于AD的分辨率有限,當待測電阻很大或是很小時就很難測出Rx上的壓降Vx,從而使測量范圍縮小,要提高測量范圍和精度就需要對電阻分檔測試和提高AD的分辨率。這無疑會增加系統的復雜性和成本,所以也不可行。方案三:RC和555定時器組成的多諧振蕩電路。很多儀表都是把較難測量的物理量轉變成精度較高且較容易測量的物理量。基于此思路,我們把電阻阻值轉換成頻率信號,通過測量輸出振蕩頻率的大小即可求得電阻的大小,如果固定電阻值,該方案硬件電路實現簡單,通過選擇合適的電容值即可獲得適當的頻率范圍,同時輸出波形為TTL電平的方波信號所以不需要再對信號做電平變換,即可直接供數字電路處理,這種處理一方面便于使儀表實現智能化,另一方面也避免了由指針讀數引起的誤差。綜合比較,基于對精度要求較高,并從測量時操作的簡便程度考慮,本設計采用方案三,用RC和555定時器組成的多諧振蕩電路來實現要求。1.2電容測量模塊方案論證方案一:利用RC充電原理,根據電路原理電容充電的時間常數τ=RC。通過選擇適當的參考電容,通過測量充電到一個固定電壓時所需的時間即可以測量出相應的電容大小。此方案下測量大電容較準,但在電容容量較小時,電容在極短的時間內就能充滿,即充電時間較短,所以很難測準。方案二:電橋法是另一種經典的方法,如圖1-3所示,可利用交流電橋來測量電容。Z1Z2Z1Z2GNDGVCCGNDGVCCZnZxZnZx圖1-3直流電橋平衡電圖1-3直流電橋平衡電路電橋的平衡條件為:通過調節阻抗Z1、Z2使電橋平衡,這時電表讀數是零。根據平衡條件及一些已知的電路參數就可以求出被測參數。用這種測量方法,參數的值還要通過聯立方程求解,調節電阻值一般只能手動,電橋平衡的判別亦難以用簡單的電路實現。這樣,電橋法不易實現自動測量。方案三:同樣利用RC和555定時器組成的多諧振蕩電路,通過測量輸出振蕩頻率的大小即可求得電容的大小,如果固定電阻值,該方案硬件電路實現簡單,能測出較寬的電容范圍,完全滿足題目的要求。同時輸出波形為TTL電平的方波信號所以不需要再對信號做電平變換。即可直接輸入單片機處理。綜合比較,基于對精度要求較高,并從測量時操作的簡便程度考慮,本設計采用方案三,用RC和555定時器組成的多諧振蕩電路來實現要求。1.3電感測量模塊方案論證方案一:采用電橋法測量電感。將待測電感和已知標準電阻電容組成電橋,通過單片機控制調節電阻參數使電橋平衡,電感的大小由電阻和電橋的本征頻率求得,該方案測量精準,同時可以測量電容和電阻的大小,但其電路復雜,實現起來較為困難。因為RC振蕩的穩定度可達1/1000,單片機測頻率最多誤差一個脈沖,所以由單片機測頻率值引起的誤差在百分之一以下。量程自動轉換原理:單片機在第一個頻率的記錄中發現頻率過小,即通過繼電器轉換量程。再測頻率,求的值。誤差分析:因為相當小,在左右,遠小于儀表所需要的精度,可忽略。這樣,的精度取決于,即電容的穩定性。電路中采用了穩定性良好的獨石電容,理論上說,只要小于,所測電阻的精度亦能在以下。由于單片機程序中采用了多位數的浮點運算,計算精度可遠高于。2.2電容測量的分析與計算電容測量的原理圖也如圖2-1,同樣由555電路構成的多諧振蕩電路,通過計算振蕩輸出的頻率來計算被測電容的大小。由2.1的分析知其振蕩周期為:得出:,即:為使頻率在單片機高精度測量范圍內,我們同樣設計了兩路電路,取值分別為:第一量程:;第二量程:;這樣的取值使電容檔的測量范圍很寬,同樣可通過繼電器轉換量程。誤差分析:同的測量,有,已知能滿足以下的精度,而精密的金屬膜電阻其阻值的變化亦能滿足左右的精度。這樣,電容的精度也可以做得很高。2.3電感測量的分析與計算電感的測量是采用電容三點式振蕩電路來實現的。三點式振蕩電路是指:LC回路中與發射極相連的兩個電抗元件必須是同性質的,另外一個電抗元件必須為異性質的,而與發射級相連的兩個電抗元件同為電容式的三點式振蕩電路,其振蕩頻率為:即:如圖3-3所示,C1和C2分別采用100nF和1uF的獨石電容,其電容值遠大于晶體管的極間電容,可以把極間電容忽略,則單片機的高精度測量范圍有限,因此在測電感這一檔時,只能分頻后送單片機計數。誤差分析:由此可見,因為相當小,的精度主要取決于電容值的穩定性,從理論上講,只要小于,也就能達到相當的水平。一般而言,電容的穩定性,特別是像獨石電容一類性能比較好的電容,能滿足小于的要求,這樣誤差精度就能保持在以內。三、硬件電路設計3.1測量電阻電路的設計電阻的測量分為兩個量程:第一個量程,,開關S1和S3閉合;第二個量程,,開關S2和S4閉合。電路圖如圖3-1所示:圖3-1電阻測量電路圖3.2測量電容電路的設計電容的測量同樣設計了兩路電路,取值分別為:第一量程:,開關S2和S4閉合;第二量程:,開關S1和S3閉合;電路圖如圖3-2所示:圖3-2電容測量電路圖3.3測量電感電路的設計因為電感測量模塊產生的信號是正弦信號,所以必須先整形成方波,又由理論分析可知電路的輸出頻率很高,所以也要對輸出的信號分頻,單片機才能處理。3.3.1電感測量電路圖3-3電感測量電路整形電路圖3-4整形電路3.3.3分頻電路圖3-510分頻電路3.4繼電器的設計電阻與電容的測量電路中均需要自動換擋,我們采用繼電器來實現。繼電器是一種電子控制器件,通常應用于自動控制電路中。當測量電路中所測頻率過低時,單片機就會控制繼電器轉換量程。如圖3-6所示為繼電器的原理圖,其中,二極管是對其有保護作用,三極管有放大電流的作用。在具體電路中,繼電器是1伏和3伏換擋,通過單片機來實現其自動化。圖3-6繼電器原理圖3.5按鍵部分通道的選擇可以通過MSP430單片機上面的鍵盤控制。通道選擇見表3-1.表3-1按鍵通道選擇按鍵對應測試項KEY1測試RKEY2測試CKEY5測試LKEY6返回四、程序設計開始開始時鐘、液晶屏、鍵盤初始化掃描鍵盤獲得鍵值Check_Key2電容測量3電感測量1電阻測量轉換量程f>=30Hz轉換量程C<=1nF1100低量程分頻低量程液晶顯示高量程高量程計算參數并又液晶屏輸出計算參數并又液晶屏輸出計算參數并又液晶屏輸出圖4-1主程序流程圖圖4-1主程序流程圖該系統以MSP430作為控制平臺,其主程序流程如圖4-1所示。程序開始先對系統初始化,然后由鍵盤輸入測試項目(如:1電阻測量;2電容測量;3電感測量),然后采集信號頻率,在測量電阻和測量電容時要通過對信號頻率進行分析來轉換電路(量程轉換),再將從新采集的信號頻率進行計算,得到待測器件的參數,并由液晶屏輸出參數。測量完成之后系統返回到初始化的狀態。圖4-2按鍵程序流程圖圖4-3頻率測量流程圖五、系統測試與結果分析5.1測試使用的儀器設備測試使用的儀器設備如表4.1所示。表4-1測試使用的儀器設備序號名稱、型號、規格數量備注1RLC電橋測量儀1測量精度高2數字示波器1查看輸出波形5.2測試方法根據設計搭好好電路通過撥碼選擇給個部分模塊供電,再測量前用電橋測量儀測出所需測量電阻電容與電感的實際值,再根據單片機提示選擇所需測量器件。然后待控制器自動檢測和自動換擋完成約1~3s即會在LCD上顯示出相應元件的類型和測量值,此時讀出測量結果與實際值作比較,計算出其測量誤差。5.3測試數據5.3.1電阻測量數據表4-2電阻測量數據標稱值(Ω)電橋測量(Ω)儀器測量(Ω)誤差(%)標稱值(Ω)電橋測量(Ω)儀器測量(Ω)誤差(%)1111.1128.10100K100.4k102.9k2.491009995.43.63510K511k511.8k061.652.2M2.192M2.217M1.1416k16K16.1k0.629M8.9M8.376M5.885.3.2電容測量數據表4-3電容測量數據標稱值(F)電橋測量(F)儀器測量(F)誤差(%)標稱值(F)電橋測量(F)儀器測量(F)誤差(%)10p10p10.5p5.004.7n4.9n5.1n4.08100p100p102p2.0033n35n36.3n3.711n0.98n0.94n4.08100n101n105.5n4.455.3.3電感測量數據表4-4電感測量數據標稱值(H)電橋測量(H)儀器測量(H)誤差(%)標稱值(H)電橋測量(H)儀器測量(H)誤差(%)30u31.1u30.85u0.801m1.02m0.999m2.05100u100.9u102.7u1.783.2m3.298m3.217m2.45330u339.8u340.6u0.2315m15.4m16m3.895.4測試結果分析電阻模塊的測量結果顯示在基本測量范圍內誤差均小于5%,而在拓展范圍誤差偏大。電容模塊的測量結果顯示所有測量的誤差均在5%以內。電感模塊的測量結果顯示可以測量的范圍內誤差均小于5%,但拓展指標沒有做到,10uH的電感已經測量不出來。六、小結本次課題設計系統的基本原理是電阻、電容、電感與測量電路構成各自的震蕩電路,產生的相應頻率的脈沖方波,將該頻率數據采集輸入到單片機,利用電路中其他器件已知的參數,單片機對頻率進行運算,可以算出待測元件的各個參數并顯示在1602液晶屏幕上。系統使用按鍵選擇被測元件類型,由于不同的電容、電阻、電感值的大小對應的諧振頻率不同,通過測量振蕩電路發出的頻率計算出相應的電阻、電容和電感的值。該系統設計簡單,成本低,性能基本符合題目要求指標,在測量范圍內測量誤差很小,且操作簡單,人機界面友好。通過這個儀表的設計,我們體會到了細心、認真的重要性,更深深的認識到軟件和硬件相結合的重要性,學到了很多。在最終的測量過程中,發現基本指標都可達到,拓展指標只有一個模塊達到,這就告訴我們,以后不管做什么題目,不能只是達到基本要求就放心了,而應該以最高的要求定位,這才能在競賽中存在優勢。參考文獻[1]高吉祥.全國大學生電子設計競賽培訓系列教程.北京:電子工業出版社,2007.[2]楊欣,王玉鳳,劉湘黔等.電子設計從零開始.北京:清華大學出版社,2010.[3]李桂安.電子技術實驗及課程設計.南京:東南大學出版社,2008.[4]申忠如,郭福田,丁暉.現代測試技術與系統設計.西安:西安交通大學出版社,2006.2.[5]付曉光.單片機原理與使用技術.北京:清華大學出版社,2008.[6]童詩白,華成英.模擬電子技術基礎.北京:北京航空航天大學出版社,2002

[7]申忠如,申淼,譚亞麗.MCS-51單片機原理及系統設計.西安:西安交通大學出版社,2008.[8]閻石.數字電子技術基礎.北京:高等教育出版社,2005.[9]張毅剛.MCS-51單片機應用系統.哈爾濱:哈爾濱工業大學出版社,1997[10]曹磊.MSP430單片機C程序設計與實踐.北京:北京航天航空大學出版社,2007.附錄一:系統程序主程序:#include"msp430x14x.h"#defineTIMER32768typedefunsignedcharuchar;typedefunsignedintuint;//引用外部變量的聲明externunsignedintkey_val;//key_val鍵值externunsignedcharkey_Flag;//key_Flag標志unsignedlongCap_Tar=0,cap_first=0,cap_last=0,pulse=0,time=0,Value,Lf,F;doubleR=0,CZ,L,f;unsignedcharflag=0;/***********時鐘設置************/voidInit_clk(){unsignedchari;do{IFG1&=~OFIFG;//清除振蕩器失效標志for(i=0Xff;i>0;i--);//穩定時間}while((IFG1&OFIFG)!=0);//如果振蕩器失效標志存在BCSCTL2|=SELM_2+SELS;//SMCLK=LFXT2CLK}/*********捕獲設置**********/voidInit_cap(){P1DIR&=~BIT3;//P1.3輸入P1SEL|=BIT3;//p1.3復用為TA2TACCTL2=CM_2+SCS+CCIS_0+CAP+CCIE;//下降沿捕獲+同步捕獲+CCIxA(P1.3)++捕獲中斷使捕獲模式能CCR0=TIMER;TACTL=TASSEL_1+MC_1+TAIE+TACLR;//時鐘源ACLK+增計數模式+TAIFG中斷請求使能}//timer_B設置。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。voidInit_TB(){P1DIR=0xfe;P1SEL|=BIT0;//閘門法測頻輸入口為P1.0TBCCTL0=CCIE;//使能CCR0中斷TBCCR0=1023;//設定周期0.25STBCTL=TBSSEL_1+ID_3+MC_1;//定時器b的時鐘源選擇ACLK,增計數模式CCTL0=CCIE;TACTL=TASSEL_0+MC_2;//外部引腳TACLK信號+連續計數模式TAR=0;}//‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’‘’/****************顯示界面********************/constucharhang1[]={"RLC測量:"};constucharhang2[]={"電阻請按:1"};constucharhang3[]={"電容請按:2"};constucharhang4[]={"電感請按:5"};/***************測量界面********************/constucharhang5[]={"電阻測量:"};constucharhang6[]={"R="};constucharhang7[]={"退出測量請按:6"};constucharhang8[]={"電容測量:"};constucharhang9[]={"C="};constucharhang10[]={"電感測量:"};constucharhang11[]={"L=uH"};//constucharhang22[]={"Ω"};constucharhang17[]={"KΩ"};constucharhang_f[]={"f=Hz"};constucharhang_99[]={"****************"};/***************************主函數*************************/voidmain(void){//intp=0;intK;//StopwatchdogtimertopreventtimeoutresetWDTCTL=WDTPW+WDTHOLD;Init_clk();//初始化時鐘Ini_Lcd();//初始化液晶Init_Keypad();//初始化鍵盤端口chuanying();P6DIR=0xff;P6OUT=0x00;while(1){Ini_Lcd();P6OUT=0x00;Disp_HZ(0x80,hang1,7);Disp_HZ(0x90,hang2,5);Disp_HZ(0x88,hang3,5);Disp_HZ(0x98,hang4,5);Key_Event();Check_Key();if(key_Flag==1){key_Flag=0;K=key_val;}/**********電阻計算**********/if(K==1){inti=0;P6OUT=0x40;Init_cap();//初始化CAPTBCCTL0=~CCIE;//關閉CCR0中斷Ini_Lcd();doubleRc=0,RA=0;Disp_HZ(0x80,hang5,8);Disp_HZ(0x90,hang_f,8);Disp_HZ(0x88,hang6,8);Disp_HZ(0x98,hang7,8);_EINT();//打開中斷while(1){Key_Event();Check_Key();if(key_Flag==1){key_Flag=0;K=key_val;}while(flag){_DINT();flag=0;//清楚捕捉標志f=pulse;if(f>26){constucharhang22[]={"Ω"};f=f*100;Value=(unsignedlong)(f);Disp_ShuZhi(0x92,Value);f=f/100;P6OUT=0x40;Rc=1;RA=500;R=1.4427/((Rc*1e-6)*f)-RA;R=R/2;if(R<30){R=R-R*0.30;}if(30<R&&R<45){R=R-2;}R=R*100;Value=(unsignedlong)(R);Disp_ShuZhi(0x8A,Value);Disp_HZ(0x8E,hang22,2);Init_cap();//初始化CAP_EINT();}else{P6OUT=0x48;Init_cap();//初始化CAPTBCCTL0=~CCIE;//關閉CCR0中斷_EINT();while(1){Key_Event();Check_Key();if(key_Flag==1){key_Flag=0;K=key_val;}//Init_cap();//初始化CAPTBCCTL0=~CCIE;//關閉CCR0中斷_EINT();while(flag){delay_1ms(1000);_DINT();flag=0;//清楚捕捉標志f=pulse;if(f>2400){i=1;}f=f*100;Value=(unsignedlong)(f);Disp_ShuZhi(0x92,Value);f=f/100;Rc=0.01;RA=20000;constucharhang22[]={"KΩ"};R=1.4427/((Rc*1e-6)*f)-RA;R=R/1000;R=R/2;if(25<R&&R<550){R=R+R*0.04;}//if(100<R&&R<450){R=R+R*0.07;}//if(R<2500){R=R+R*0.05;}if(R>4500){R=R-R*0.06;}R=R*100;Value=(unsignedlong)(R);Disp_ShuZhi(0x8A,Value);Disp_HZ(0x8E,hang22,2);Init_cap();//初始化CAP_EINT();delay_1ms(1000);//else{i=1;f=0;break;}if(K==6)break;}if(K==6)break;if(i==1){i=0;f=0;break;}}}}if(K==6){_DINT();f=0;pulse=0;Value=0;TAR=0;break;}}}/*************電容計算************/elseif(K==2){inti=0;P6OUT=0x80;Init_cap();//初始化CAPTBCCTL0=~CCIE;//關閉CCR0中斷Ini_Lcd();doubleR1=0,R2=0;Disp_HZ(0x80,hang8,8);Disp_HZ(0x90,hang_f,8);Disp_HZ(0x88,hang9,8);Disp_HZ(0x98,hang7,8);_EINT();//打開中斷while(1){if(i==0){P6OUT=0x80;}Key_Event();Check_Key();if(key_Flag==1){key_Flag=0;K=key_val;}TBCCTL0=~CCIE;//關閉CCR0中斷_EINT();while(flag){_DINT();flag=0;//清楚捕捉標志f=pulse;f=f*100;Value=(unsignedlong)(f);Disp_ShuZhi(0x92,Value);f=f/100;R1=1000;R2=1000000;constucharhang23[]={"pF"};CZ=1.4427/((R1+2*R2)*f*1e-6);CZ=CZ*1e+6;_EINT();if(CZ>950){i=1;P6OUT=0x84;_DINT();flag=0;//清楚捕捉標志f=pulse;f=f*100;Value=(unsignedlong)(f);Disp_ShuZhi(0x92,Value);f=f/100;R1=465500;R2=461000;constucharhang23[]={"nF"};CZ=1.4427/((R1+2*R2)*f*1e-6);CZ=CZ*1e+3;if(1.5<CZ&CZ<6){CZ=CZ-CZ*0.03;}if(CZ>40){CZ=CZ-CZ*0.07;}CZ=CZ*100;Value=(unsignedlong)(CZ);Disp_ShuZhi(0x8A,Value);Disp_HZ(0x8F,hang23,1);Init_cap();//初始化CAP_EINT();}else{i=0;//if(CZ<65){CZ=CZ-18;}if(65<CZ<900){CZ=CZ-20;}CZ=CZ*100;Value=(unsignedlong)(CZ);Disp_ShuZhi(0x8A,Value);Disp_HZ(0x8F,hang23,1);Init_cap();//初始化CAP_EINT();}}if(K==6){_DINT();f=0;pulse=0;Value=0;TAR=0;break;}}}/*************電感計算************/elseif(K==5){P6OUT=0xC0;Init_cap();//初始化CAPTBCCTL0=~CCIE;//關閉CCR0中斷Ini_Lcd();doubleLC=9.090909;Disp_HZ(0x80,hang10,8);Disp_HZ(0x90,hang_f,8);Disp_HZ(0x88,hang11,8);Disp_HZ(0x98,hang7,8);_EINT();//打開中斷while(1){Key_Event();Check_Key();if(key_Flag==1){key_Flag=0;K=key_val;}constucharhang_mH[]={"mH"};_EINT();//打開中斷while(flag){_DINT();flag=0;//清楚捕捉標志f=pulse;f=f*100;Value=(unsignedlong)(f);Disp_ShuZhi(0x92,Value);f=f/100;L=0.02535/(LC*f*f);L=L*1e+12;//if(L<80){L=L-L*0.04;}if(80<L&&L<100){L=L+L*0.15;}if(275<L&&L<300){L=L+L*0.20;}if(6000<L&&L<7000){L=L+L*0.12;}L=L*100;Value=(unsignedlong)(L);Disp_ShuZhi(0x8A,Value);Init_cap();//初始化CAP_EINT();}if(K==6){_DINT();f=0;pulse=0;Value=0;TAR=0;break;}}}}}采頻程序#pragmavector=TIMERA1_VECTOR__interruptvoidTimerA1_ISR(void){switch(TAIV){case2:break;case4:{Cap_Tar++;break;}case10:{pulse=Cap_Tar-1;Cap_Tar=0;flag=1;break;}}}鍵盤掃描、獲得鍵值程序voidCheck_Key(void){ucharrow,col,tmp1,tmp2;tmp1=0x80;for(row=0;row<2;row+

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論