基于單片機(jī)的線(xiàn)陣CCD實(shí)時(shí)檢測(cè)系統(tǒng)方案設(shè)計(jì)
檢測(cè)過(guò)程描述:參見(jiàn)圖2的系統(tǒng)電路圖,當(dāng)CCD被驅(qū)動(dòng)后因其光電特性會(huì)有視頻模擬信號(hào)Vout輸出,信號(hào)如圖4所示??梢钥闯觯耗M信號(hào)Vout在CCD掃描到深色區(qū)和白色區(qū)有明顯的幅值大小區(qū)別,要提取的信息就是這個(gè)變化的電壓信號(hào),但單片機(jī)不能直接處理模擬信號(hào)Vout,因此必須先將Vout通過(guò)二值化處理得到數(shù)字信號(hào)BIN(見(jiàn)圖2二值化電路部分)。這樣便得到了反映白線(xiàn)左右兩個(gè)邊緣的脈沖信號(hào)BIN。為了方便上位機(jī)的處理,不直接輸出信號(hào)BIN,而是將BIN反饋給AT89C2051,讓其通過(guò)程序編制來(lái)捕捉其上升沿和下降沿的跳變,再?gòu)牧硗獾囊_輸出與BIN上升沿和下降沿同步的負(fù)脈沖信號(hào)BIN_OUT。這樣上位機(jī)可方便地通過(guò)中斷檢測(cè)到白線(xiàn)的左右側(cè)。這里AT89C205l還要輸出一個(gè)同步信號(hào)FC(即驅(qū)動(dòng)轉(zhuǎn)移脈沖φTG)。因?yàn)橄到y(tǒng)是在連續(xù)掃描地面信息,故FC脈沖可標(biāo)志CCD上一次掃描的結(jié)束和新一行掃描的開(kāi)始。新一行開(kāi)始掃描時(shí),上位機(jī)收到FC負(fù)脈沖后可進(jìn)入中斷對(duì)定時(shí)器TO、Tl清零并立即開(kāi)始計(jì)數(shù)。當(dāng)收到BIN_OUT的第一個(gè)負(fù)脈沖后進(jìn)入中斷并停止,定時(shí)器TO;當(dāng)收到BIN_OUT的第二個(gè)負(fù)脈沖后進(jìn)人中斷并停止定時(shí)器T1,讀出定時(shí)器TO、T1里的數(shù)t0、t1。t0、t1便反映了路面白線(xiàn)的坐標(biāo)位置,很明顯t1與t0之差便是白線(xiàn)寬度。 本文引用地址:http://www.butianyuan.cn/article/193929.htm
綜合以上驅(qū)動(dòng)和檢測(cè)信號(hào)要求得出:在主程序中用一個(gè)死循環(huán)產(chǎn)生連續(xù)的四路驅(qū)動(dòng)脈沖,并通過(guò)嵌入相應(yīng)的其他功能的指令來(lái)保證四個(gè)驅(qū)動(dòng)脈沖的相位關(guān)系,對(duì)BIN信號(hào)的上升沿和下降沿的判斷也在此循環(huán)中完成。對(duì)BIN信號(hào)的當(dāng)前狀態(tài)還必須有一個(gè)狀態(tài)標(biāo)志BIN_STATE。一旦遇到BIN信號(hào)有電子變化便給出相應(yīng)的BIN_OUT負(fù)脈沖,而B(niǎo)IN_OUT恢復(fù)高電平是靠定時(shí)器TO溢出中斷服務(wù)程序?qū)崿F(xiàn)的。
本系統(tǒng)用一片小型單片機(jī)完全實(shí)現(xiàn)了預(yù)定功能,幾乎沒(méi)有復(fù)雜的外圍電路器件,結(jié)構(gòu)簡(jiǎn)單可靠,硬件、軟件代價(jià)都較低,系統(tǒng)成本預(yù)算較低。整個(gè)檢測(cè)系統(tǒng)角在機(jī)器人視覺(jué)上實(shí)驗(yàn)效果也非常理想。系統(tǒng)可根據(jù)具體的需要和要求進(jìn)行擴(kuò)展和改變,如增加信號(hào)輸出、改變檢測(cè)系統(tǒng)和上位機(jī)的信號(hào)接口等。
評(píng)論