謝洪 摘要 介紹使用基于單片機控制紅外編碼探測障礙的方案及實現(xiàn)的方法,以解決使用紅外線自動感知障礙設(shè)備時出現(xiàn)的接收設(shè)備本身主動發(fā)送信號的干擾問題。該方案已應(yīng)用于一種單片機控制的自動給液器中,能有效抵抗干擾信號,并穩(wěn)定地運行于各種不同的場合;該方案也可應(yīng)用在以無線電波和超聲波為介質(zhì)的障礙物測量中。 關(guān)鍵詞 單片機 紅外 編碼 探測 抗干擾1 探測障礙的原理 在室內(nèi)自動感知障礙的設(shè)備中,常使用紅外線探測障礙物的存在與否。探測的基本原理是:在測量的范圍內(nèi),主動向探測方向發(fā)射紅外信號,如果存在障礙物,就會把發(fā)射的信號反射回發(fā)送端。在發(fā)送端,如果收到反射的信號,就確認障礙物的存在?! 〉窃趯嶋H應(yīng)用中,紅外干擾源較多;而且在有反射光的情況下,由于光線的干擾,很容易判斷失誤,出現(xiàn)虛警。因此,有些設(shè)備在發(fā)射信號時,改進為發(fā)送一串連續(xù)的紅外脈沖,然后接收反射的信號。如果接收到的紅外脈沖數(shù)量超過某一門限值時,就判斷障礙存在。這種方法盡管在一定程度上可以降低虛警率,但實驗表明,在較強的反射光和使用電子鎮(zhèn)流器方式的日光燈起輝時,仍很容易出現(xiàn)干擾現(xiàn)象?! ”疚奶岢鼋鉀Q干擾的方案是:由單片機控制發(fā)射有一定意義的紅外編碼脈沖串,同時,單片機接收該脈沖串。如果接收到的信號和發(fā)射的信號基本一致,才判斷為有障礙物的存在?! √綔y障礙的原理框圖如圖1所示。
圖1 探測障礙原理框圖2 電路設(shè)計 在實測電路中,使用臺灣義隆公司的em78p156e單片機,紅外發(fā)射管為mie552a2,紅外接收頭為寧波甬晶微電子有限公司的nb0038,電路如圖2所示。
圖2 紅外編碼探測障礙電路 當需要探測障礙物時,單片機u1首先讓u2紅外接收頭 nb0038接通電源。在發(fā)射電路中,d2為紅外發(fā)射管,u1的p51引腳輸出編碼脈沖,通過q2控制d2發(fā)射紅外信號。當有紅外信號進入接收頭時,u2的輸出端出現(xiàn)高電位,并送到u1的p67引腳?! b0038是用于紅外接收的一體化接收頭,采用環(huán)氧樹脂封裝,把獨立的pin二極管同前置放大器集成在同一封裝上。其內(nèi)部結(jié)構(gòu)框圖如圖3所示。接收的載波中心頻率為38.0 khz。
圖3 nb0038內(nèi)部結(jié)構(gòu)框圖3 編碼脈沖的產(chǎn)生和接收 在實際使用中,由于em78p156e單片機的工作頻率是4 mhz,載波脈沖采用26 μs,其中高電位是10 μs,低電位是16 μs,占空比是38.5%。在產(chǎn)生載波時,要檢測是否有反射信號。反射信號的檢測是單片機利用低電位的16 μs時間內(nèi)判斷接收引腳是否存在相應(yīng)的發(fā)射信號?! 榱舜_定需要編碼的調(diào)制信號脈沖寬度,在1 000個nb0038的接收頭中,隨意選擇 30個作實驗。在約20 cm的距離內(nèi)出現(xiàn)表面不光滑的障礙物,從單片機通過紅外發(fā)射管發(fā)射信號到nb0038接收信號,檢測出現(xiàn)在接收引腳為高電平時的載波脈沖量如表1所列。表1 載波脈沖數(shù)統(tǒng)計
因此,選擇調(diào)制信號脈沖為24個載波脈沖寬度為: 發(fā)射信號的格式如圖4所示。
圖4 發(fā)射信號的格式3.1 編碼“1”脈沖產(chǎn)生和接收 ?。?) 產(chǎn)生一個占空比為38.5%的載波脈沖
首先,使紅外發(fā)射控制p51=1,發(fā)射紅外信號,保持時間是10 μs。然后,重新使p51=0,停止發(fā)射紅外信號,保持時間是16 μs?! 。?) 判斷是否存在反射信號“1”
在發(fā)射到第17、19、21和23個載波脈沖時,在停止發(fā)射紅外信號的16 μs內(nèi),檢測接收引腳p52。如果p52=1,則表明存在反射信號;如果p52=0,則認為無反射信號。 在這4次判斷過程中,如果有3次以上判斷為存在反射信號,則確認接收到反射的“1”?! 崿F(xiàn)的軟件流程如圖5所示。