亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于線性CCD的智能小車循跡系統(tǒng)設(shè)計與研究

        2020-08-13 05:44:08王信樂劉祚時
        制造業(yè)自動化 2020年8期
        關(guān)鍵詞:黑線循跡卡爾曼濾波

        王信樂,劉祚時

        (江西理工大學(xué) 機(jī)電工程學(xué)院,贛州 341000)

        0 引言

        在工業(yè)自動化程度日益發(fā)達(dá)的今天,諸如AGV等工廠自動搬運(yùn)貨物的運(yùn)輸車越來越多的應(yīng)用到工業(yè)生產(chǎn)中,所以提升優(yōu)化工業(yè)生產(chǎn)自動化水平迫在眉睫。本課題源于中國機(jī)器人大賽中的旅游機(jī)器人項(xiàng)目,此比賽項(xiàng)目的目的也在于激發(fā)學(xué)生對未來實(shí)現(xiàn)工業(yè)生產(chǎn)自動化的興趣,以研究設(shè)計旅游機(jī)器人為導(dǎo)向,為實(shí)現(xiàn)工業(yè)生產(chǎn)自動化提供理論支撐。

        本比賽項(xiàng)目的要求是,循跡小車從比賽場地的起點(diǎn)出發(fā),沿著賽道中間的黑線循跡行進(jìn),到達(dá)指定點(diǎn)完成規(guī)定的任務(wù)之后,再沿黑線行進(jìn),到達(dá)終點(diǎn)。目前此類循跡小車有很多,大部分也都能很好地完成循跡任務(wù),但是仍會出現(xiàn)在賽道上特別是彎道處跑偏或跑丟的情況,本文則針對這一問題提出了具體的解決方案,該方案重點(diǎn)圍繞路徑信息的采集和處理方面進(jìn)行研究,最后經(jīng)過實(shí)地實(shí)驗(yàn),跑偏率大大降低。

        本文著重對小車的循跡進(jìn)行研究,即小車如何快速準(zhǔn)確地沿著黑色引導(dǎo)線行進(jìn),并在經(jīng)過彎道時不偏離賽道。本循跡小車系統(tǒng)主要包括以下幾個模塊:電源模塊、降壓穩(wěn)壓模塊、線性CCD模塊、MCU模塊、電機(jī)驅(qū)動模塊、PID控制模塊以及小車電機(jī)。實(shí)現(xiàn)整個系統(tǒng)的架構(gòu)如圖1所示。

        圖1 系統(tǒng)架構(gòu)

        1 線性CCD傳感器

        在競賽用智能小車循跡系統(tǒng)中,有很多用于循跡的傳感器,其中光電傳感器應(yīng)用最為廣泛。但是線性CCD傳感器對比前者的優(yōu)點(diǎn)是:路徑分辨率高,前瞻性強(qiáng),可以更遠(yuǎn)更早地感知路徑的變化,在小車本體跑偏之前修正行進(jìn)方向,并且可以實(shí)時地監(jiān)控路徑的位置,及時糾偏。

        本設(shè)計是基于TSL1401線性CCD傳感器[1],該傳感器有5個引腳,其中時鐘CLK用于協(xié)調(diào)控制電荷傳輸和像素輸出;串行輸入SI用于控制數(shù)據(jù)輸出序列的開始;模擬輸出AO用于輸出模擬電壓值,其驅(qū)動時序圖如圖2所示。

        圖2 CCD驅(qū)動時序圖

        2 DMA技術(shù)

        DMA技術(shù),即直接內(nèi)存存取技術(shù)。它在外設(shè)與內(nèi)存進(jìn)行數(shù)據(jù)傳輸時,不需要依賴于CPU的調(diào)控,而是由DMA控制器直接將外設(shè)采集的數(shù)據(jù)存入存儲器。即在CCD傳感器對路徑信息進(jìn)行采集時,利用DMA技術(shù)將采集到的數(shù)據(jù)直接傳輸給存儲器。此時CPU不需對數(shù)據(jù)采集過程進(jìn)行干預(yù),而是把此過程全權(quán)交給DMA控制器完成,等輸出設(shè)備需要數(shù)據(jù)時,再到存儲器中讀取。此技術(shù)大大節(jié)省了CPU的資源,在數(shù)據(jù)的傳輸過程中,不需要CPU的干預(yù),所以它可以進(jìn)行其他的工作,大大提高了整個系統(tǒng)的效率[2]。

        此技術(shù)在循跡小車系統(tǒng)中的應(yīng)用表現(xiàn)在于,當(dāng)小車進(jìn)行彎道循跡時,由于一般的查詢和中斷數(shù)據(jù)采集方式,是CPU邊控制采集路徑信息,邊控制小車轉(zhuǎn)向,其過程控制效率相對較低,但是小車的行進(jìn)速度又很快,所以小車不能準(zhǔn)確快速地轉(zhuǎn)彎,很容易在彎道處跑偏。但是DMA技術(shù)解決了這一問題,圖3是基于STM32F103單片機(jī)DMA控制器的具體程序流程圖。

        這里通過兩種數(shù)據(jù)傳輸方式,即CPU干預(yù)下的數(shù)據(jù)傳輸和DMA控制下的數(shù)據(jù)傳輸進(jìn)行耗時實(shí)驗(yàn)對比,驗(yàn)證使用DMA控制器傳輸數(shù)據(jù)能減小系統(tǒng)采樣的響應(yīng)時間,提高整個系統(tǒng)的效率。

        圖3 DMA程序流程圖

        實(shí)驗(yàn)中先取1280個數(shù)據(jù)放于源數(shù)組中,然后分別通過CPU調(diào)控和DMA控制器兩種數(shù)據(jù)傳輸方式,將原數(shù)組中的1280個數(shù)據(jù)傳輸?shù)侥繕?biāo)數(shù)組中,并設(shè)置計時器分別記錄耗時情況,最后將實(shí)驗(yàn)結(jié)果通過串口調(diào)試助手打印出來,如圖4所示。由測試結(jié)果可知,1280個數(shù)據(jù)通過CPU調(diào)控方式傳輸耗時160μs,通過DMA控制器傳輸耗時115μs,數(shù)據(jù)傳輸效率提高了28.12%,證明了DMA技術(shù)的可行性,并且傳輸?shù)臄?shù)據(jù)量越大,效率提高越明顯。

        圖4 耗時測試結(jié)果

        3 數(shù)據(jù)處理

        該循跡小車控制系統(tǒng)在運(yùn)行時,首先進(jìn)行初始化,然后由線性CCD采集路徑信息并發(fā)送到STM32F103單片機(jī),通過卡爾曼濾波和二值化處理得到黑色引導(dǎo)線位置。然后通過計算可以得出,當(dāng)前小車的方向與黑色引導(dǎo)線之間的位置偏差,接著將此位置偏差信號輸入到閉環(huán)位置控制系統(tǒng),經(jīng)過PID閉環(huán)位置控制算法進(jìn)行調(diào)節(jié),將調(diào)節(jié)后的信號再輸入到驅(qū)動控制模塊,實(shí)現(xiàn)對電機(jī)在速度上的控制,使小車沿黑色引導(dǎo)線行進(jìn)。系統(tǒng)軟件流程圖如圖5所示。

        3.1 數(shù)據(jù)采集

        圖5 系統(tǒng)主程序流程圖

        該傳感器中有128個線性排列的光電二極管[3,4],它在每一個采樣周期內(nèi),會拍攝一行含有128個可視像素的像素點(diǎn),然后通過模擬輸出口AO將采集到的一行數(shù)據(jù)經(jīng)過A/D轉(zhuǎn)換之后發(fā)送給STM32單片機(jī)。如圖6和圖7所示為循跡的實(shí)際路徑和采集到的一組灰度值圖像,其灰度值范圍是0~255。理論上白色的灰度值接近255,黑色的灰度值接近0,但是由于在實(shí)際采樣過程中會受到光照條件的影響,在弱光環(huán)境下采集到的白色背景灰度值只有60左右。

        圖6 實(shí)際路徑

        圖7 路徑灰度采集圖

        3.2 卡爾曼濾波

        由于在實(shí)際的比賽場地上,由光照條件不足帶來的局部陰影和光斑,以及人員走動造成白色地面臟亂等不確定因素的存在,如圖6中白色地面的污點(diǎn)造成采集到的路徑數(shù)據(jù)中存在很多的干擾噪聲,如圖7所示。從圖7可以看出,數(shù)據(jù)中仍存在的噪聲,會干擾下一步數(shù)據(jù)的二值化處理,所以這里需要用到卡爾曼濾波算法[5]對數(shù)據(jù)進(jìn)行降噪處理??柭鼮V波是一種算法,通過它能對含有噪聲的數(shù)據(jù)進(jìn)行處理,在平均的意義上,求得最接近真實(shí)數(shù)據(jù)的估計值。它被廣泛應(yīng)用于通信、航天、工業(yè)控制等領(lǐng)域。

        卡爾曼濾波算法在此CCD采樣的具體工作過程是,先根據(jù)前一采樣周期的狀態(tài),估計當(dāng)前采樣周期的狀態(tài),這一過程稱為狀態(tài)預(yù)測;然后再根據(jù)當(dāng)前采樣的實(shí)際數(shù)據(jù)作為反饋,去修正估計的數(shù)據(jù),這一過程稱為測量修正。它就是一種利用反饋來控制實(shí)現(xiàn)對當(dāng)前狀態(tài)估計的算法,因此它能根據(jù)采集的數(shù)據(jù)的普遍性來剔除數(shù)據(jù)中的噪聲。

        卡爾曼濾波算法[6,7]分為狀態(tài)預(yù)測方程式(1)~式(2)和測量修正方程式(3)~式(5),其中式(1)是向前推算狀態(tài)變量,式(2)是向前推算誤差協(xié)方差,式(3)是計算卡爾曼增益,式(4)是根據(jù)實(shí)際測量值進(jìn)行修正估計,式(5)是更新協(xié)方差計算。

        以上五式中,X(k)是k時刻的系統(tǒng)狀態(tài),U(k)是k時刻對系統(tǒng)的控制量,A和B是系統(tǒng)參數(shù),P(k)是X(k)對應(yīng)的協(xié)方差矩陣,AT是A的轉(zhuǎn)置矩陣,Q和R分別是系統(tǒng)過程和測量誤差的協(xié)方差矩陣,K(k)為加權(quán)因子,H是測量系統(tǒng)的參數(shù),HT是H的轉(zhuǎn)置矩陣,Z(k)是k時刻的測量值[8]。

        由圖7可以看出,觀測值有所波動,又由于這里無法給出下一周期的預(yù)測值,所以這里根據(jù)理論基礎(chǔ)并結(jié)合大量實(shí)驗(yàn)給出期望估計,建立預(yù)測模型如下:

        式中x為像素點(diǎn)坐標(biāo),y為數(shù)字電壓值。

        然后由式(1)~式(6)得到卡爾曼濾波算法如下:

        最后得出卡爾曼濾波結(jié)果,對比觀測值,數(shù)據(jù)中的噪聲被濾除,數(shù)據(jù)有了明顯的改善。濾波結(jié)果如圖8所示。

        圖8 卡爾曼濾波結(jié)果

        3.3 二值化處理

        由于初步獲得的圖像灰度值范圍為0~255,但是在實(shí)際應(yīng)用中只需判斷出黑白兩色即可,所以需要對初步得到的數(shù)據(jù)進(jìn)行簡化,即二值化處理[9]。這里首先需要設(shè)定一個閾值才能對數(shù)據(jù)進(jìn)行二值化處理。對于閾值的設(shè)定,有固定閾值法和動態(tài)閾值法兩種。固定閾值法是根據(jù)經(jīng)驗(yàn),取一個固定的數(shù)值作為閾值來對數(shù)據(jù)進(jìn)行二值化處理;動態(tài)閾值法是對每一采樣周期內(nèi)的128個數(shù)據(jù)取平均,將此平均值作為閾值來處理數(shù)據(jù)。即:

        式(15)中為動態(tài)閾值,為某一個采樣周期內(nèi)的128個數(shù)據(jù)。

        由于實(shí)際比賽場地光照環(huán)境情況復(fù)雜,所以選用動態(tài)閾值法。此方法能有效抑制陰影、光斑以及賽道上的污點(diǎn)對數(shù)據(jù)采集的干擾。又由于動態(tài)閾值在每個采樣周期內(nèi)是變化的,所以它還能自適應(yīng)光照強(qiáng)度的變化[10]。

        確定了閾值之后,就在這128個數(shù)據(jù)中進(jìn)行篩選,小于設(shè)定閾值的則為0,代表黑色;大于設(shè)定閾值的則為1,代表白色。這樣就能將大量的數(shù)據(jù)簡化成0和1,方便了單片機(jī)的處理,便于尋找黑線的位置。二值化處理之后如圖9所示,相比圖8顯得更為簡潔。

        圖9 二值化處理結(jié)果

        3.4 黑線位置提取算法

        經(jīng)過二值化處理之后,路徑信息被保存在一個一維數(shù)組a[128]中,此數(shù)組中一共有128個連續(xù)的0或1,0代表黑色軌跡,1代表白色賽道,只要找到數(shù)字0在這組數(shù)組中的坐標(biāo),就找到了黑線邊緣位置,再計算黑線的寬度,便能找到黑線的中心位置。

        這里假設(shè)小車在路徑中間位置,為了提取黑線位置,首先,從左至右,依次檢驗(yàn)數(shù)組中的128個數(shù)據(jù),待找到第一個“0”時,記此“0”的坐標(biāo)為,并令為“0”的個數(shù),此時=1。然后依次向右進(jìn)行檢驗(yàn),當(dāng)檢驗(yàn)到的數(shù)據(jù)為“0”時,自加1。程序運(yùn)行框圖如圖10所示。由此就可以得到黑線在像素點(diǎn)中的坐標(biāo)寬度值,那么黑線中點(diǎn)坐標(biāo)的計算公式如式(16)所示,黑線位置如圖11所示。

        圖10 程序運(yùn)行框圖

        圖11 黑線位置

        3.5 方向控制算法

        找到了黑線的位置之后,還需要設(shè)定一個判斷是否跑偏的閾值。由于此組數(shù)據(jù)一共有128個,所以中點(diǎn)坐標(biāo)為64,黑色線寬為,所以黑線的坐標(biāo)寬度范圍是[64-,64+]。判斷依據(jù)和小車的行進(jìn)情況如表1所示。

        表1 判斷依據(jù)及行進(jìn)情況

        3.6 實(shí)驗(yàn)分析

        這里分別在強(qiáng)光環(huán)境和弱光環(huán)境下進(jìn)行試驗(yàn),如圖12所示,兩圖分別是在強(qiáng)光和弱光條件下測得的路徑背景灰度值、黑色引導(dǎo)線灰度值和動態(tài)閾值,可以看出動態(tài)閾值全部處于路徑背景灰度值和黑色引導(dǎo)線灰度值之間,所以利用此動態(tài)閾值能很好地區(qū)分路徑背景和黑色引導(dǎo)線。

        圖13所示兩圖分別是在強(qiáng)光和弱光條件下小車行進(jìn)過程中CCD采集到的中線位置,這里將黑色引導(dǎo)線設(shè)置在一定范圍內(nèi),即在小車不偏離所設(shè)置的范圍內(nèi)時,認(rèn)為偏移量很小,不足以影響到循線效果,仍然執(zhí)行直行程序。只有當(dāng)小車偏離了這一設(shè)置范圍,才進(jìn)行左偏或右偏的矯正。但是這一范圍的設(shè)置也不能過大,經(jīng)過反復(fù)實(shí)驗(yàn),這里將范圍確定為正負(fù)7個像素點(diǎn)。即當(dāng)Pm在區(qū)間[64-Ct/2-7,64+Ct/2+7]時,認(rèn)為小車沒有偏離中線。

        圖12 灰度值和閾值變化圖

        圖13所示兩圖中兩條直線之間的點(diǎn)表示小車沿黑色引導(dǎo)線行進(jìn),直線上方的點(diǎn)表示小車向左矯正,反之直線下方的點(diǎn)表示小車向右矯正。但是由于此實(shí)驗(yàn)中小車在拐彎處是沿黑色引導(dǎo)線逆時針行進(jìn),所以在整個實(shí)驗(yàn)過程中,小車執(zhí)行向左矯正的程序次數(shù)大于向右的次數(shù),表現(xiàn)在圖中便是直線上方點(diǎn)的個數(shù)大于下方的個數(shù)。

        4 PID閉環(huán)位置控制算法

        在確定了小車是否跑偏以及左偏還是右偏之后,就要控制調(diào)節(jié)電機(jī)使小車的行進(jìn)方向回正,但是具體調(diào)節(jié)電機(jī)多少轉(zhuǎn)速能使小車回正方向,這里便需要PID閉環(huán)控制調(diào)節(jié)算法[11,12]。其數(shù)學(xué)模型為:

        圖13 CCD采集的中線位置圖

        式中e(t)為PID控制系統(tǒng)的位置偏差,u(t)為經(jīng)過PID整定的控制信號,KP為比例系數(shù),TI為積分時間常數(shù),TD為微分時間常數(shù)。

        具體到小車循跡的控制過程是,首先通過線性CCD測出小車相對于路徑中心具體偏離像素點(diǎn)的個數(shù),即將此次小車的實(shí)際位置與路徑中心目標(biāo)位置作差。然后將此偏離像素點(diǎn)的個數(shù)作為調(diào)節(jié)小車左右輪電機(jī)轉(zhuǎn)速的依據(jù),即PID控制系統(tǒng)的位置偏差e(t)。這里再預(yù)設(shè)一個偏差的閾值△e,經(jīng)過反復(fù)試驗(yàn),△e取值7。即如果位置偏差e(t)大于7個像素點(diǎn),則將e(t)送入PID調(diào)節(jié)器中,輸出系統(tǒng)控制信號u(t),然后轉(zhuǎn)換成對應(yīng)小車電機(jī)的轉(zhuǎn)速,矯正小車的位置;如果e(t)小于7,則控制對象保持當(dāng)前有效的輸出值不變。最后重復(fù)上述步驟,直至接近或達(dá)到期望狀態(tài)。控制原理框圖如圖14所示。

        圖14 PID控制原理框圖

        5 循跡實(shí)驗(yàn)

        小車實(shí)物如圖15所示,標(biāo)號a為線性CCD傳感器,其視角角度56°,安裝高度10cm,與路面夾角45°。標(biāo)號b為循線路徑,如圖16所示,圖中黑線軌跡彎道是半徑為20cm的1/4圓,轉(zhuǎn)彎角度90°。該路徑既能檢驗(yàn)小車直線行駛時的循跡狀態(tài),也能考驗(yàn)小車通過彎道時循跡的準(zhǔn)確性和機(jī)動性。

        圖15 小車實(shí)物圖

        圖16 循線路徑

        實(shí)驗(yàn)中,調(diào)整小車以不同的速度V勻速行進(jìn),每一相同速度實(shí)驗(yàn)5次,并以小車車頭偏離中心黑色引導(dǎo)線的最大距離△S和小車沖出賽道的次數(shù)N作為衡量小車循跡穩(wěn)定性的標(biāo)準(zhǔn)。這里在采樣過程中分別采用CPU直接調(diào)控和DMA控制兩種數(shù)據(jù)傳輸方式進(jìn)行對比實(shí)驗(yàn),現(xiàn)將實(shí)驗(yàn)數(shù)據(jù)記錄如表2所示?!鱏'和N'表示在CPU直接調(diào)控下小車車頭偏離黑線的最大距離和其沖出賽道的次數(shù);△S和N表示在DMA控制下的最大距離和沖出賽道次數(shù)。

        表2 小車實(shí)驗(yàn)數(shù)據(jù)

        由表2實(shí)驗(yàn)數(shù)據(jù)可以看出,通過DMA控制下的采樣相比于CPU直接調(diào)控下的采樣小車循跡效果更好。當(dāng)小車的行駛速度小于0.5m/s時,采用DMA控制器的采樣方式能夠使小車更好地沿黑色引導(dǎo)線行駛并準(zhǔn)確地通過彎道。小車的彎道循跡測試如圖17所示。

        圖17 小車彎道循跡測試

        6 結(jié)語

        經(jīng)過實(shí)驗(yàn)表明,在循跡上線性CCD傳感器相比于傳統(tǒng)光電傳感器,具有更高的前瞻性,能更早地感知路徑的變化,提前矯正前進(jìn)方向;DMA直接存取技術(shù)減少了CPU處理任務(wù)的數(shù)量,在數(shù)據(jù)傳輸測試中,使系統(tǒng)的采樣效率提升28.12%,并且傳輸?shù)臄?shù)據(jù)量越大,效率提升越明顯,確保了小車能快速準(zhǔn)確地轉(zhuǎn)過更大的彎道;卡爾曼濾波使數(shù)據(jù)中的噪聲大大減少,更便于數(shù)據(jù)的二值化處理;PID位置控制算法使偏離矯正有了依據(jù),能使系統(tǒng)快速響應(yīng)且不超調(diào)。通過理論論證及實(shí)地實(shí)驗(yàn),均驗(yàn)證了方案的可行性,達(dá)到了預(yù)期要求。

        猜你喜歡
        黑線循跡卡爾曼濾波
        基于DFT算法的電力巡檢無人機(jī)循跡檢測系統(tǒng)設(shè)計
        黑線
        基于單片機(jī)的智能循跡小車的設(shè)計
        電子測試(2018年15期)2018-09-26 06:01:14
        基于遞推更新卡爾曼濾波的磁偶極子目標(biāo)跟蹤
        蝦背黑線真的特別“臟”嗎
        智能差分循跡小車設(shè)計
        電子制作(2017年1期)2017-05-17 03:54:20
        基于MC9S12XS128處理器的智能循跡小車分析研究
        電子制作(2016年11期)2016-11-07 08:43:49
        基于模糊卡爾曼濾波算法的動力電池SOC估計
        七巧數(shù)獨(dú)
        基于擴(kuò)展卡爾曼濾波的PMSM無位置傳感器控制
        日本国产精品高清在线| 久久亚洲av成人无码国产| 熟妇无码AV| 在线视频一区二区三区中文字幕| 亚洲中文字幕日韩综合| 四虎成人精品国产永久免费无码 | 亚洲精品www久久久久久| 超薄肉色丝袜一区二区| 人妻少妇看A偷人无码电影| 免费看片的网站国产亚洲| 欧美性生交活xxxxxdddd | 久久精品国产亚洲黑森林| 亚洲国产综合精品中文| 青青草 视频在线观看| 樱桃视频影视在线观看免费| 狠狠久久精品中文字幕无码| 中文字幕中文字幕人妻黑丝| 国产精品成人亚洲一区| 天天躁日日躁狠狠很躁 | 在线观看免费不卡网站| 久久伊人精品一区二区三区| 亚洲欧洲日产国码高潮αv| 青榴社区国产精品| 少妇人妻精品久久888| 久久亚洲欧美国产精品| 波多野结衣免费一区视频| 少妇放荡的呻吟干柴烈火动漫| 成年女人A级毛片免| 小草手机视频在线观看| 色大全全免费网站久久| 青青草97国产精品免费观看| 亚洲一区二区欧美色妞影院| 不卡av一区二区在线| 久久亚洲av午夜福利精品一区 | 青青草视全福视频在线| 国产精品毛片无遮挡高清| 波多野结衣av手机在线观看| 日韩在线观看网址| 亚洲伊人久久大香线蕉| 国产精品久久久久乳精品爆| 无码一级视频在线|