999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于線性CCD的智能小車循跡系統設計與研究

2020-08-13 05:44:08王信樂劉祚時
制造業自動化 2020年8期
關鍵詞:卡爾曼濾波實驗

王信樂,劉祚時

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

0 引言

在工業自動化程度日益發達的今天,諸如AGV等工廠自動搬運貨物的運輸車越來越多的應用到工業生產中,所以提升優化工業生產自動化水平迫在眉睫。本課題源于中國機器人大賽中的旅游機器人項目,此比賽項目的目的也在于激發學生對未來實現工業生產自動化的興趣,以研究設計旅游機器人為導向,為實現工業生產自動化提供理論支撐。

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

本文著重對小車的循跡進行研究,即小車如何快速準確地沿著黑色引導線行進,并在經過彎道時不偏離賽道。本循跡小車系統主要包括以下幾個模塊:電源模塊、降壓穩壓模塊、線性CCD模塊、MCU模塊、電機驅動模塊、PID控制模塊以及小車電機。實現整個系統的架構如圖1所示。

圖1 系統架構

1 線性CCD傳感器

在競賽用智能小車循跡系統中,有很多用于循跡的傳感器,其中光電傳感器應用最為廣泛。但是線性CCD傳感器對比前者的優點是:路徑分辨率高,前瞻性強,可以更遠更早地感知路徑的變化,在小車本體跑偏之前修正行進方向,并且可以實時地監控路徑的位置,及時糾偏。

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

圖2 CCD驅動時序圖

2 DMA技術

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

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

這里通過兩種數據傳輸方式,即CPU干預下的數據傳輸和DMA控制下的數據傳輸進行耗時實驗對比,驗證使用DMA控制器傳輸數據能減小系統采樣的響應時間,提高整個系統的效率。

圖3 DMA程序流程圖

實驗中先取1280個數據放于源數組中,然后分別通過CPU調控和DMA控制器兩種數據傳輸方式,將原數組中的1280個數據傳輸到目標數組中,并設置計時器分別記錄耗時情況,最后將實驗結果通過串口調試助手打印出來,如圖4所示。由測試結果可知,1280個數據通過CPU調控方式傳輸耗時160μs,通過DMA控制器傳輸耗時115μs,數據傳輸效率提高了28.12%,證明了DMA技術的可行性,并且傳輸的數據量越大,效率提高越明顯。

圖4 耗時測試結果

3 數據處理

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

3.1 數據采集

圖5 系統主程序流程圖

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

圖6 實際路徑

圖7 路徑灰度采集圖

3.2 卡爾曼濾波

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

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

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

以上五式中,X(k)是k時刻的系統狀態,U(k)是k時刻對系統的控制量,A和B是系統參數,P(k)是X(k)對應的協方差矩陣,AT是A的轉置矩陣,Q和R分別是系統過程和測量誤差的協方差矩陣,K(k)為加權因子,H是測量系統的參數,HT是H的轉置矩陣,Z(k)是k時刻的測量值[8]。

由圖7可以看出,觀測值有所波動,又由于這里無法給出下一周期的預測值,所以這里根據理論基礎并結合大量實驗給出期望估計,建立預測模型如下:

式中x為像素點坐標,y為數字電壓值。

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

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

圖8 卡爾曼濾波結果

3.3 二值化處理

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

式(15)中為動態閾值,為某一個采樣周期內的128個數據。

由于實際比賽場地光照環境情況復雜,所以選用動態閾值法。此方法能有效抑制陰影、光斑以及賽道上的污點對數據采集的干擾。又由于動態閾值在每個采樣周期內是變化的,所以它還能自適應光照強度的變化[10]。

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

圖9 二值化處理結果

3.4 黑線位置提取算法

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

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

圖10 程序運行框圖

圖11 黑線位置

3.5 方向控制算法

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

表1 判斷依據及行進情況

3.6 實驗分析

這里分別在強光環境和弱光環境下進行試驗,如圖12所示,兩圖分別是在強光和弱光條件下測得的路徑背景灰度值、黑色引導線灰度值和動態閾值,可以看出動態閾值全部處于路徑背景灰度值和黑色引導線灰度值之間,所以利用此動態閾值能很好地區分路徑背景和黑色引導線。

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

圖12 灰度值和閾值變化圖

圖13所示兩圖中兩條直線之間的點表示小車沿黑色引導線行進,直線上方的點表示小車向左矯正,反之直線下方的點表示小車向右矯正。但是由于此實驗中小車在拐彎處是沿黑色引導線逆時針行進,所以在整個實驗過程中,小車執行向左矯正的程序次數大于向右的次數,表現在圖中便是直線上方點的個數大于下方的個數。

4 PID閉環位置控制算法

在確定了小車是否跑偏以及左偏還是右偏之后,就要控制調節電機使小車的行進方向回正,但是具體調節電機多少轉速能使小車回正方向,這里便需要PID閉環控制調節算法[11,12]。其數學模型為:

圖13 CCD采集的中線位置圖

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

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

圖14 PID控制原理框圖

5 循跡實驗

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

圖15 小車實物圖

圖16 循線路徑

實驗中,調整小車以不同的速度V勻速行進,每一相同速度實驗5次,并以小車車頭偏離中心黑色引導線的最大距離△S和小車沖出賽道的次數N作為衡量小車循跡穩定性的標準。這里在采樣過程中分別采用CPU直接調控和DMA控制兩種數據傳輸方式進行對比實驗,現將實驗數據記錄如表2所示。△S'和N'表示在CPU直接調控下小車車頭偏離黑線的最大距離和其沖出賽道的次數;△S和N表示在DMA控制下的最大距離和沖出賽道次數。

表2 小車實驗數據

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

圖17 小車彎道循跡測試

6 結語

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

猜你喜歡
卡爾曼濾波實驗
記一次有趣的實驗
微型實驗里看“燃燒”
做個怪怪長實驗
改進的擴展卡爾曼濾波算法研究
測控技術(2018年12期)2018-11-25 09:37:34
基于遞推更新卡爾曼濾波的磁偶極子目標跟蹤
NO與NO2相互轉化實驗的改進
實踐十號上的19項實驗
太空探索(2016年5期)2016-07-12 15:17:55
基于模糊卡爾曼濾波算法的動力電池SOC估計
電源技術(2016年9期)2016-02-27 09:05:39
基于擴展卡爾曼濾波的PMSM無位置傳感器控制
電源技術(2015年1期)2015-08-22 11:16:28
基于EMD和卡爾曼濾波的振蕩信號檢測
主站蜘蛛池模板: 亚洲国内精品自在自线官| 欧美一区精品| 婷婷开心中文字幕| 天天综合网色| 老色鬼欧美精品| 色网在线视频| 免费观看亚洲人成网站| 久久99国产综合精品女同| 国产乱子伦一区二区=| 在线日本国产成人免费的| 久久综合结合久久狠狠狠97色| 天堂久久久久久中文字幕| 一级爱做片免费观看久久| 欧美精品三级在线| 亚洲无码视频一区二区三区| 在线观看视频一区二区| 97se亚洲综合在线| 中文字幕亚洲另类天堂| 免费人成视网站在线不卡| 天堂网国产| 欧美激情综合| 日韩精品一区二区三区中文无码| jizz国产视频| 亚洲综合久久成人AV| 欧美综合区自拍亚洲综合绿色 | 亚洲第一视频网| 色屁屁一区二区三区视频国产| 精品亚洲国产成人AV| 久久精品日日躁夜夜躁欧美| igao国产精品| 热久久国产| 国产精品无码影视久久久久久久| 久久中文字幕不卡一二区| 日本草草视频在线观看| 日韩在线2020专区| 国产91精品久久| 亚洲香蕉在线| 欧美在线一级片| 国产高清精品在线91| 日韩av无码精品专区| 91免费国产在线观看尤物| 国产精品微拍| 毛片久久网站小视频| 日本免费福利视频| 国产成人精品视频一区视频二区| 亚洲精品成人7777在线观看| 在线视频一区二区三区不卡| 亚洲黄色网站视频| 人妻丰满熟妇αv无码| 亚洲国产成人精品无码区性色| 精品视频第一页| 直接黄91麻豆网站| 国产凹凸一区在线观看视频| 日韩无码视频播放| 伊在人亚洲香蕉精品播放| 亚洲天堂区| 男人的天堂久久精品激情| 亚洲综合久久成人AV| 91精品专区国产盗摄| 特级毛片8级毛片免费观看| 欲色天天综合网| 欧美综合区自拍亚洲综合绿色| 亚洲国产中文综合专区在| 77777亚洲午夜久久多人| A级毛片无码久久精品免费| 亚洲av无码人妻| 九九视频免费看| 丁香婷婷久久| 亚洲无码91视频| 91久久国产热精品免费| 色悠久久综合| 一级毛片在线播放免费| 欧美在线视频a| 国产人妖视频一区在线观看| 人妻精品久久无码区| 福利一区在线| 制服丝袜一区| 国产精品一区二区久久精品无码| 国产午夜精品一区二区三| 亚洲AV无码不卡无码| 亚洲天堂视频在线播放| 欧美另类图片视频无弹跳第一页|