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