結(jié)合溫度補(bǔ)償?shù)某暡y(cè)距系統(tǒng)設(shè)計(jì)
2.2 超聲波發(fā)射、接收電路
超聲波發(fā)射、接收電路如圖2所示。超聲波發(fā)射電路由電阻R2及超聲波發(fā)送頭T40組成;接收電路由BG1、BG2X組成的兩組三級(jí)管放大電路組成;檢波電路、比較整形電路由C7、D1、D2及BG3組成。本文引用地址:http://2s4d.com/article/170604.htm
40kHz的方波由AT89C2051單片機(jī)的P3.5驅(qū)動(dòng)超聲波發(fā)射頭發(fā)射超聲波,經(jīng)反射后由超聲波接收頭接收到40kHz的正弦波,由于聲波在空氣中傳播時(shí)衰減,所以接收到的波形幅值較低,經(jīng)接收電路放大、整形,最后輸出一負(fù)跳變,輸入單片機(jī)的P3.7腳。由于單片機(jī)系統(tǒng)的晶振為12M晶振,所以只能產(chǎn)生半周期為12μs或13μs的方波信號(hào),頻率分別為41.67kHz和38.46kHz。本系統(tǒng)在編程時(shí)選用了后者。接收到的信號(hào)加到BG1、BG2組成的兩級(jí)放大器上進(jìn)行放大。每級(jí)放大器的放大倍數(shù)為70倍。放大的信號(hào)通過檢波電路得到解調(diào)后的信號(hào)。這里使用的是IN4148檢波二極管,輸出的直流信號(hào)即兩二極管之間電容電壓。該接收電路結(jié)構(gòu)簡單,性能較好,制作難度小。
2.3 溫度測(cè)量補(bǔ)償電路
在空氣中,常溫下超聲波的傳播速度是334m/s,但其傳播速度受空氣中溫度、濕度等因素的影響,其中受溫度影響較大,如溫度每升高1℃,聲速就會(huì)增加約0.6m/s。因此在相同的間隔測(cè)量距離,由于波的傳播時(shí)間是相同的,不同溫度下的聲速不同,所以最終造成測(cè)量出來的距離不相等,在距離測(cè)量精度要求很高的情況下,必須要對(duì)溫度進(jìn)行測(cè)量和補(bǔ)償,以避免溫度對(duì)測(cè)量精度的影響。本系統(tǒng)選用DS18B20溫度傳感器作為溫度測(cè)量、誤差補(bǔ)償裝置,與單片機(jī)交換信息僅需要一根I/O口線,其供電電源可來源于單片機(jī)I/O口數(shù)據(jù)線,而無需額外電源。不同溫度下超聲波在空氣中傳播速度隨溫度變化的關(guān)系如下:
v=331.4+0.61T (1)
式中,T為實(shí)際溫度(℃),v為當(dāng)前環(huán)境下聲速,單位為m/s。
3 系統(tǒng)軟件設(shè)計(jì)
軟件設(shè)計(jì)部分采用模塊化設(shè)計(jì),由主程序、發(fā)射子程序、接收子程序、中斷子程序、溫度測(cè)量等組成。超聲波測(cè)距的程序既有較復(fù)雜的計(jì)算(計(jì)算距離時(shí)),又要求精細(xì)計(jì)算程序運(yùn)行時(shí)間(超聲波測(cè)距時(shí)),所以控制程序采用C語言編程。主程序完成初始化工作、超聲波發(fā)射和接收順序的控制、距離上下限超限報(bào)警。定時(shí)中斷服務(wù)子程序完成超聲波回波接收,外部中斷服務(wù)子程序主要完成時(shí)間值的讀取、距離計(jì)算、結(jié)果的輸出等工作。
評(píng)論