1 、小引
視覺(jué)檢測(cè)技巧是以機(jī)器視覺(jué)為基礎(chǔ)的新星測(cè)試技術(shù),因其秉賦測(cè)量非接觸、速度快、信息量大、應(yīng)用領(lǐng)域?qū)拸V等性狀而備受迎接。構(gòu)造光傳感器是動(dòng)用較早、邁入較成熟的視覺(jué)傳感器,故此本系統(tǒng)運(yùn)用結(jié)構(gòu)光傳感器來(lái)采錄圖像并經(jīng)圖像采集卡送給計(jì)算機(jī)甩賣。是因?yàn)橐曈X(jué)傳感器在視覺(jué)測(cè)量中承當(dāng)著視頻圖像信號(hào)(測(cè)量數(shù)量)的征集、切換與傳導(dǎo)。因而,何等讓視覺(jué)傳感器測(cè)控系統(tǒng)快速、精確地獲得理想的視頻圖像音塵,跟腳為末葉的圖像處理提供可靠的引而不發(fā),亦即視覺(jué)傳感器的測(cè)控系統(tǒng)的設(shè)計(jì)顯得越是重要。
2 、視覺(jué)系統(tǒng)的概述
視覺(jué)檢測(cè)系統(tǒng)中募集被測(cè)物體圖像的視覺(jué)傳感器有單目和雙眼兩種之分,本測(cè)控系統(tǒng)得以利用單目視覺(jué)傳感器也何嘗不可采取雙眼視覺(jué)傳感器來(lái)搜集數(shù)據(jù),正文顯要座談?dòng)啥鄠€(gè)眼睛視覺(jué)傳感器組合的多視覺(jué)傳感器測(cè)控系統(tǒng),其中的每個(gè)視覺(jué)傳感器利用的是眼下技藝早就比較成熟的線結(jié)構(gòu)光視覺(jué)傳感器,其結(jié)構(gòu)是由雙CCD 攝影機(jī)、一個(gè)激光投射器和同臺(tái)MCU控制電路血肉相聯(lián),基于立體電勢(shì)差法則,動(dòng)用兩臺(tái)攝像機(jī)來(lái)邯鄲學(xué)步實(shí)現(xiàn)人眼的效驗(yàn),使喚空間點(diǎn)在兩攝影機(jī)像表面的看透或像點(diǎn)坐標(biāo)來(lái)求取半空點(diǎn)的三維坐標(biāo)。當(dāng)被測(cè)工件較大特需高潮迭起一個(gè)視覺(jué)傳感器時(shí),上述多個(gè)視覺(jué)傳感器累加多路視頻切換電鍵就燒結(jié)了多視覺(jué)傳感器測(cè)控系統(tǒng)。如對(duì)汽車車身上的那么些特色點(diǎn)進(jìn)展檢測(cè)時(shí),就索要幾十竟然上百個(gè)傳感器來(lái)測(cè)量,出于控制器部分網(wǎng)CAN(controller area network)總線持有很強(qiáng)的帶載荷能力,一個(gè)CAN發(fā)網(wǎng)上大不了能接110個(gè)節(jié)點(diǎn),為此本系統(tǒng)使役CAN總線展開(kāi)簡(jiǎn)報(bào)和羅網(wǎng)決定。
視覺(jué)傳感器中MCU控制電路提供CCD錄相機(jī)、激光映照器的電源并且操縱著它們的開(kāi)啟與停閉,為避免激光投射器行使時(shí)日過(guò)長(zhǎng)激光器發(fā)高燒滋生線構(gòu)造光光能分布不穩(wěn)之所以熏陶測(cè)量精度,當(dāng)傳感器開(kāi)頭測(cè)量時(shí),先上電初始化,再打開(kāi)萊塞,測(cè)量為止后即關(guān)門大吉以拉開(kāi)照耀器壽命。
本系統(tǒng)中,青云機(jī)為PC機(jī),末座機(jī)為8051單片機(jī)操縱單元,上、末座機(jī)之間用CAN總線開(kāi)展報(bào)導(dǎo),鑒于PC機(jī)中并不帶CAN總線接口,據(jù)此必需一個(gè)CAN接口卡,此地選用廣州周立功商店的USBCAN智能接口卡來(lái)通信,因其領(lǐng)有體積小、外置且即插即用等特征。這一來(lái),PC可通過(guò)USB總線方便地一連至CAN總線大網(wǎng)主宰挨家挨戶CAN節(jié)點(diǎn)拓展數(shù)據(jù)采集和甩賣。USBCAN智能CAN接口卡足以與ZLGCANTest通用CAN-bus測(cè)試軟件連連周轉(zhuǎn),實(shí)施CAN-bus總線多寡的接收、殯葬測(cè)試任務(wù),較易于實(shí)現(xiàn)CAN-bus產(chǎn)品開(kāi)發(fā)和數(shù)據(jù)分析。USBCAN智能CAN接口卡使喚周立功店家提供的通用的ZLGVCI驅(qū)動(dòng)庫(kù),永葆WIN98、2000和XP操作系統(tǒng)并永葆Linux陽(yáng)臺(tái)。用戶透過(guò)接口卡提供的ZLGVCI動(dòng)態(tài)支付庫(kù)方可方便快捷的支出出CAN系統(tǒng)動(dòng)用出品。為了把如法炮制CCD照相機(jī)輸出的被測(cè)物體的效法視頻圖像轉(zhuǎn)換成數(shù)字信號(hào)并由微型機(jī)展開(kāi)處理,此地應(yīng)用了北京大恒圖像公司的CG400 型圖像采集卡,其施用PCI總線,所采采的圖像數(shù)據(jù)傳輸基本不霸占CPU時(shí)日,并可將圖像直白傳送的電腦內(nèi)存或顯存。
3、 CAN總線簡(jiǎn)介
CAN總線是德國(guó)BOSCH代銷店從80年間初為解決現(xiàn)時(shí)代汽車中眾多的決定與測(cè)試儀器之間的數(shù)據(jù)交換而開(kāi)銷的一種串行數(shù)據(jù)通信共商,它是一種多主總線,通信腐殖質(zhì)何嘗不可是雙絞線、同軸電纜或光導(dǎo)纖維。通信速率可達(dá)1Mbps。CAN總線通信接口中一統(tǒng)了CAN商酌的物理層和數(shù)量鏈路層效驗(yàn),可做到對(duì)通信多寡的成幀甩賣,統(tǒng)攬位填寫(xiě)、多寡塊編碼、循環(huán)冗余稽查、優(yōu)先級(jí)甄別等項(xiàng)做事。CAN協(xié)商的一個(gè)最大特征是丟掉了風(fēng)俗人情的站地點(diǎn)編碼,而代之以對(duì)通信數(shù)據(jù)塊進(jìn)行編碼。使喚這種辦法的長(zhǎng)項(xiàng)可使大網(wǎng)內(nèi)的節(jié)點(diǎn)個(gè)數(shù)在理論上不受限制,數(shù)量塊的標(biāo)識(shí)碼可由11位或29位二進(jìn)制數(shù)燒結(jié),就此足以界說(shuō)211或229個(gè)不同的多寡塊,這種按多寡塊編碼的措施,還可使不同的節(jié)點(diǎn)再就是收取到相同的多寡,這或多或少在分布式控制系統(tǒng)中非常有用。數(shù)額段長(zhǎng)度充其量為8個(gè)字節(jié),可滿足普通工業(yè)圈子中決定發(fā)令、干活狀態(tài)及測(cè)試數(shù)據(jù)的類同務(wù)求。與此同時(shí),8個(gè)字節(jié)決不會(huì)占用總線時(shí)日過(guò)長(zhǎng),因故保準(zhǔn)了通信的實(shí)時(shí)性。CAN商議施用CRC檢視并可提供首尾相應(yīng)的錯(cuò)誤處理效用,擔(dān)保了數(shù)據(jù)通信的可靠性。CAN卓越的表征、極高的可靠性和獨(dú)特的設(shè)計(jì),特意合乎工業(yè)過(guò)程監(jiān)督裝具的互連,就此,更進(jìn)一步遭劫工業(yè)界的器重,并已公認(rèn)為最有鵬程的當(dāng)場(chǎng)總線之一。
為著滿足大尺碼物體的三維概觀的檢測(cè),本系統(tǒng)務(wù)求起碼能帶64個(gè)傳感器,每個(gè)視覺(jué)傳感器里有兩個(gè)攝影機(jī),即集體所有128路視頻輸入,而任一時(shí)刻系統(tǒng)只挑挑揀揀之中一塊兒視頻圖像傳給微處理機(jī)拓展圖像收集拍賣,如對(duì)汽車車身四周圍陳設(shè)了幾十個(gè)傳感器來(lái)檢測(cè)車身上至關(guān)緊要尺碼如擋風(fēng)玻璃窗尺碼、車門安設(shè)棱邊夾縫、定點(diǎn)孔位置,測(cè)量其首尾相應(yīng)的棱邊、孔外部的半空中職位尺碼。視覺(jué)傳感器有何不可按務(wù)求逐一展開(kāi)勞作,也可以取舍被測(cè)靶子的特定點(diǎn)并透過(guò)CAN決定羅網(wǎng)求同求異特定傳感器來(lái)檢測(cè),微機(jī)編采檢測(cè)點(diǎn)圖像并展開(kāi)拍賣,將約計(jì)值與標(biāo)準(zhǔn)值比對(duì),故而得出視覺(jué)檢測(cè)的結(jié)莢。?
4 、多視覺(jué)傳感器的駕御設(shè)計(jì)
視覺(jué)傳感器的控制電路重在總括視頻切換、電源供給和CAN通訊接口三個(gè)一對(duì)。每個(gè)傳感器里有兩個(gè)CCD照相機(jī),即能而且采擷兩路視頻輸入,但任一時(shí)刻傳感器只能輸出一起視頻信號(hào),這里使用MAXIM店堂的視頻復(fù)用放大器max4313和max4315進(jìn)展多路視頻信號(hào)的切換傳導(dǎo),傳感器內(nèi)部用單片機(jī)操縱max4313進(jìn)展二選一視頻切換,系統(tǒng)中多個(gè)傳感器之間通過(guò)多個(gè)八選一視頻切換芯片max4315的級(jí)連來(lái)實(shí)現(xiàn)多視覺(jué)傳感器的切換選項(xiàng)。多路視頻切換開(kāi)關(guān)電路能很好實(shí)現(xiàn)這一效驗(yàn),P89C668單片機(jī)的P2口的三跟地點(diǎn)線控制max4315的三個(gè)地點(diǎn)端決定切換哪同船通途的視頻信號(hào)。max4313 和max4315是低功耗高效多路視頻復(fù)用放大器,具備通途切換速度快(40ns)、切換瞬變低(10mVp-p)、差分增益誤差低(0.06%)、相位誤差?。?.02度)等良好的視頻性狀,辦事在+4~+10.5V的單電源(雙電源最先2V~頭版5.25V),本例中坐班在頭條5V的雙電源下,為著減下攪擾與傳感器內(nèi)部空間安設(shè)方便,電源電路與控制電路分離炮制,獨(dú)家?guī)碚张R器二邊。由于視頻信號(hào)效率較高,頻帶較寬,所以當(dāng)兩路視頻信號(hào)相距較近要專注擾亂問(wèn)題,時(shí),容易生出串?dāng)_,為著竭盡裁減串?dāng)_,電路設(shè)計(jì)時(shí)應(yīng)在心以下幾點(diǎn):要把數(shù)目字模塊與視頻切換模塊在一個(gè)板子上分為二個(gè)區(qū)域,以及盡可能減少視頻引線的長(zhǎng)短并專注采取75歐姆匹配電阻,視頻縫衣針要采用帶遮蔽層的視頻同軸電纜(75歐姆抵擋)。
5、 CAN總線報(bào)道
CAN總線是一個(gè)多主站當(dāng)場(chǎng)總線,各節(jié)點(diǎn)都有權(quán)向別樣節(jié)點(diǎn)發(fā)送信息,其說(shuō)道簡(jiǎn)單,實(shí)時(shí)性強(qiáng),可靠性及抗干擾能力好,總線利用率高,硬件成本低。至關(guān)緊要表征正象:
1)CAN總線的任一節(jié)點(diǎn)在任一時(shí)刻都能動(dòng)向網(wǎng)子上其余節(jié)點(diǎn)發(fā)送數(shù)據(jù)而不分骨干,由此優(yōu)先級(jí)確定總線為哪一節(jié)點(diǎn)所據(jù)為己有,通信靈活。
2)CAN總線上的節(jié)點(diǎn)可由此裝置分為不同的優(yōu)先級(jí),用于滿足不同的實(shí)時(shí)性渴求。
3)CAN總線使役非破壞性總線議決,當(dāng)多個(gè)節(jié)點(diǎn)并且向總線發(fā)送數(shù)據(jù)時(shí),優(yōu)先級(jí)低的節(jié)點(diǎn)積極向上下馬發(fā)送數(shù)據(jù),淡出競(jìng)爭(zhēng),而優(yōu)先級(jí)高的節(jié)點(diǎn)將兼有總線使用權(quán),接軌發(fā)送數(shù)據(jù)。
4)CAN總線實(shí)有點(diǎn)對(duì)點(diǎn),或多或少對(duì)多點(diǎn)及全局播發(fā)等多種數(shù)據(jù)通訊傳遞藝術(shù)。
5)節(jié)點(diǎn)間報(bào)導(dǎo)位速率與節(jié)點(diǎn)間相差至于,總線最遠(yuǎn)通訊離開(kāi)為10km,此刻報(bào)導(dǎo)速率為5kbps,最大通訊速率能高達(dá)1Mbps(報(bào)導(dǎo)距離40m內(nèi))。
6)可根據(jù)報(bào)文的ID控制收納或屏蔽該報(bào)文,出殯的報(bào)文慘遭毀損后可電動(dòng)重發(fā)。
7)可靠的錯(cuò)誤處理和檢錯(cuò)機(jī)制,節(jié)點(diǎn)在謬誤嚴(yán)重的情況下抱有鍵鈕脫離總線的功效。
8)報(bào)文不涵蓋源地址和對(duì)象地點(diǎn),僅用報(bào)文標(biāo)志符來(lái)來(lái)指示功效消息和優(yōu)先級(jí)音信。
5.1 CAN節(jié)點(diǎn)硬件接口
CAN總線接口硬件部分著重由微控制器、CAN控制器和CAN收發(fā)器組合。CAN控制器實(shí)現(xiàn)了CAN通訊中物理層和多寡鏈路層的機(jī)能,提供了與微控制器和總線的情理路經(jīng)接口,這樣用戶只需編次相符溫馨簡(jiǎn)報(bào)和操縱務(wù)求的應(yīng)用層商討即可。本系統(tǒng)中微控制器應(yīng)用Philips商家的8位增強(qiáng)型單片機(jī) P89C668,CAN控制器和總線驅(qū)動(dòng)器用的各行其事是Philips店家的SJA1000、PCA82C250來(lái)三結(jié)合名列前茅的CAN報(bào)導(dǎo)節(jié)點(diǎn)。
電路的主干組成部分是P89C668單片機(jī),它以80C51為木本,秉賦ISP(在系統(tǒng)編程)和IAP(在運(yùn)用編程)效果的片內(nèi)Flash存儲(chǔ)器,片內(nèi)Boot ROM隱含底色FLASH編程多道程序,以實(shí)現(xiàn)經(jīng)過(guò)串行口下載晉級(jí)次序,持有8K字節(jié)RAM(可外擴(kuò)到64K)和64K字節(jié)FLASH ,還有 4個(gè)半途而廢優(yōu)先級(jí)、8個(gè)拋錨源和4個(gè)8位I/O口,可方便地展開(kāi)各種片內(nèi)操作和片外恢弘。CAN控制器相對(duì)于微控制器來(lái)說(shuō)等價(jià)一個(gè)存儲(chǔ)器I/O映象設(shè)施,SJA1000片內(nèi)有模式寄存器、狀態(tài)寄存器、指令寄存器、間歇寄存器和收、發(fā)寄存器等。單片機(jī)不怕透過(guò)讀寫(xiě)這些寄存器來(lái)實(shí)現(xiàn)對(duì)SJA1000的支配,芯片的TX0、TX1、RX0、RX1引腳用來(lái)CAN總線的接口,SJA1000的12M晶振由P89C668的大面兒晶振發(fā)出電路并且提供;PCA82C250是控制器與物理總線的接口,可提供對(duì)總線的差動(dòng)發(fā)送和收?qǐng)?zhí)效果,其TXD、RXD引腳各行其事收下和殯葬經(jīng)驅(qū)動(dòng)后的信號(hào),再由 CANH、CANL接至總線傳輸腐殖質(zhì)(這邊役使雙絞線)上,與此同時(shí)還要令人矚目CANH、CANL之間要累加120歐姆的頂點(diǎn)門當(dāng)戶對(duì)電阻才力擔(dān)??偩€的正常簡(jiǎn)報(bào)。
5.2 CAN節(jié)點(diǎn)的軟件設(shè)計(jì)
CAN總線智能節(jié)點(diǎn)的軟件設(shè)計(jì)必不可缺概括三個(gè)一些:CAN節(jié)點(diǎn)初始化、報(bào)文殯葬和報(bào)文接下。CAN節(jié)點(diǎn)的報(bào)導(dǎo)實(shí)在就是對(duì)CAN控制器其中各寄存器開(kāi)展讀寫(xiě),由于這些寄存器或殯葬、收下緩沖器均有確定的地點(diǎn),CPU可由此外設(shè)尋親訪友三令五申對(duì)它們開(kāi)展讀寫(xiě)操作。系統(tǒng)上電復(fù)位后,CPU對(duì)SJA1000的順序控制寄存器寫(xiě)入對(duì)應(yīng)駕御字消息,以大功告成CAN控制器的初始化。本例中,系統(tǒng)軟件應(yīng)用結(jié)構(gòu)化程序設(shè)計(jì)方法,先后裝有較好的模塊性和可移植性,對(duì)此不同的檢測(cè)系統(tǒng)和應(yīng)用環(huán)境,得以方便地進(jìn)展主次血肉相聯(lián)。編程語(yǔ)言施用單片機(jī)C語(yǔ)言Keil C51,它賦有較高的頻率,可讀性好,亦可有效減輕系統(tǒng)軟件編程的工作量。
CAN總線通訊的成功與否任重而道遠(yuǎn)是SJA1000的初始化設(shè)置,初始化先后通過(guò)將CAN控制器的寄存器寫(xiě)入支配字,確定CAN的行事辦法。用 P89C668的P2.7當(dāng)做片選信號(hào)與SJA1000的CS引腳不了,SJA1000的片內(nèi)寄存器和P89C668單片機(jī)寄存器是重疊編址的,故此 SJA1000寄存器尋址時(shí)要定義成片外RAM尋址。下面交到了CAN節(jié)點(diǎn)的初始化先來(lái)后到:
由于視覺(jué)傳感器測(cè)控系統(tǒng)要開(kāi)展視覺(jué)檢測(cè)多為在線檢測(cè),實(shí)時(shí)性渴求較強(qiáng),這邊各傳感器節(jié)點(diǎn)施用擱淺收到方法收起上位機(jī)的支配三令五申,節(jié)點(diǎn)初始化后,當(dāng)一幀音息經(jīng)過(guò)陰差陽(yáng)錯(cuò)檢測(cè)承認(rèn)為正確音塵后裝入收到緩沖器,SJA1000的INT腳會(huì)生出拋錨信號(hào),該信號(hào)累年到單片機(jī)P89C668的他鄉(xiāng)間歇0引腳,在外部拋錨0戛然而止處理程序中識(shí)假該音息的標(biāo)志符只要是本節(jié)點(diǎn)地點(diǎn),便讀出收下緩沖器的數(shù)目并保留在RAM中,擱淺接到程序框圖如下:
系統(tǒng)中發(fā)送報(bào)文采用查詢方法,傳感器節(jié)點(diǎn)在接下主控機(jī)的多寡吁發(fā)號(hào)施令后發(fā)送數(shù)據(jù),發(fā)送模塊率先開(kāi)展?fàn)顟B(tài)查問(wèn),判定總線是不是閑暇,如空閑,則將鵠的節(jié)點(diǎn)地址寫(xiě)入出殯標(biāo)志符寄存器,數(shù)碼寫(xiě)入出殯緩沖器,大功告成一幀CAN信息殯葬。
CAN信息格式分成音息和數(shù)碼兩一些,頭兩個(gè)字節(jié)是信息局部,其前11位為標(biāo)志符,標(biāo)志符的前八位看做吸納一口咬定,應(yīng)包含本信息包的鵠的節(jié)點(diǎn)地址,下一場(chǎng)是一位RTR位(0為數(shù)據(jù)幀,1為長(zhǎng)距離幀,本例使役數(shù)據(jù)幀),末尾是四位的DLC。別樣八個(gè)字節(jié)為是額數(shù)有點(diǎn)兒,裝有其實(shí)要發(fā)送的多寡。本例中只用到前兩個(gè)數(shù)碼,第一個(gè)表示傳感器地點(diǎn),老二個(gè)字節(jié)意味著增選傳感器里的兩路錄相機(jī)中的哪一塊兒收載圖像。
CAN節(jié)點(diǎn)之間報(bào)道成功的另一個(gè)任重而道遠(yuǎn)是波特率的安設(shè),不僅僅CAN總線上