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

        ?

        基于CCD自動巡線智能小車設計

        2019-12-05 02:37:08司開波呂林濤
        宇航計測技術 2019年5期

        司開波 黃 健 呂林濤

        (西京學院信息工程學院,陜西西安 710123)

        1 引 言

        在智能車設計中,通常要實現(xiàn)自動循跡功能,因此人們研究了多種方法。文獻[1]采用光電傳感器TCRT5000,以STC12C5A60S2為控制核心,實現(xiàn)了對黑白線的自動循跡。文獻[2]采用新型數(shù)字式電感傳感器LDC1000實現(xiàn)了對細鐵絲構成的跑道的自動循跡。

        文獻[1]采用的方法,也是常用的一種循跡方法。采用光電傳感器,根據(jù)白線反射光強,黑線反射光弱的原理識別黑白線,達到自動巡線的功能。但該方法對黑線的寬度和當前光照強度有要求,如果當前自然光照強度大,很難識別黑白線;如果黑線寬度較細,也較難識別;如果是彎道,由于角度變化,識別也比較困難。而本文提出的CCD線陣傳感器,包含128個光電二極管的線性陣列,構成128個像素,每個像素的光敏面積是3 524.3μm2,像素之間的間隔是8μm。每個像素點具有256(8bit)級灰度輸出。相比于單個或多個光電傳感器TCRT5000,輸出精度更高,采集的信息點更多,采集范圍更寬。因此,實現(xiàn)的自動循跡功能更強。

        2 系統(tǒng)設計

        2.1 線性CCD工作原理

        該傳感器是包含128個光電二極管的線陣,光電二極管在光的照射下產(chǎn)生光電流。如圖1所示構成了光電二極管積分電路,二極管上累積的電荷量與光強度和光照時間成正比。當開關S1在1上時,積分電容上流過的電流和光電流相等,對光電流進行積分。當S1切換到2時,釋放積分電容上累積的電荷。S2采樣輸出,當S2切換到1上時,使得采樣電容電壓等于運放輸出電壓,切換到3時,輸出電壓,在2時,其它光電二極管輸出電壓[3-5]。CCD內(nèi)部有移位寄存器和邏輯控制器,可依次輸出128個像素點的電壓。

        圖1 光電二極管積分原理圖Fig.1 Photodiode Integration Principle Diagram

        2.2 系統(tǒng)設計框圖

        系統(tǒng)設計框圖如圖2所示,主控采用高性能微處理器STM32F103ZET6,主頻72MHz,具有豐富的資源和I/O接口。采用3.3V供電,CCD線陣首先采集黑線的信息,通過A/D接口送給主控STM32,主控對數(shù)據(jù)進行處理,用中值算法尋找黑線中心位置,并與小車中心點位置比較。當車身偏左時,控制小車右轉;當車身偏右時,控制小車左轉;當正在黑線的正上方時,小車直行。電機驅動采用TB6612,用編碼器測速,用速度PID控制PWM波輸出,使得小車行進穩(wěn)定、可靠。并增加藍牙串口模塊,可將小車行進的相關數(shù)據(jù)發(fā)送給上位機,便于調(diào)試。

        圖2 系統(tǒng)框圖Fig.2 System block diagram

        3 硬件電路設計

        3.1 CCD硬件電路設計

        CCD與STM32的連接圖如圖3所示。STM32的PA4引腳控制數(shù)據(jù)的起始位,PA2提供讀寫的時鐘信號,PA3作為模擬A/D輸入引腳,可連續(xù)讀取128個像素點的輸出電壓,作為軟件處理中的原始數(shù)據(jù)[4-7]。

        圖3 CCD與STM32連接圖Fig.3 Connection Chart of CCD and STM32

        3.2 TB6612電機驅動電路設計

        TB6612電機驅動電路圖如圖4所示,TB6612適合驅動小型直流電機,可同時驅動2路直流電機,峰值電流可達到2A,相比于L298具有體積小、性能高等優(yōu)點。圖中PF13,PF14,PC6控制1路電機,PF13,PF14控制電機的轉向,PC6輸出PWM波,控制電機的轉速。對應的輸出為OUT1和OUT2。PF15,PG0,PC7控制另外1路電機,PF15,PG0控制電機的轉向,PC7輸出PWM波,控制電機的轉速。對應的輸出為OUT3和OUT4。VM為電機驅動所需電壓,要高于6V,設計中采用7V[8]。VCC為芯片工作電壓,是5V。

        圖4 TB6612電機驅動硬件原理圖Fig.4 Hardware schematic diagram of TB6612 motor drive

        對電機測速時,采用編碼器,每旋轉1圈,輸出390個脈沖,將其接入STM32F103ZET6的定時器2,測量每秒鐘脈沖的個數(shù)實現(xiàn)測速。

        3.3 串口藍牙電路設計

        圖5 藍牙接口電路設計Fig.5 Bluetooth interface circuit design

        串口藍牙電路圖如圖5所示,圖中藍牙連接到STM32F103ZET6的串口2上,要實現(xiàn)藍牙通信,必須是一對。上位機的連接方法與圖5所示相同。通信之前,首先用串口調(diào)試助手對2個藍牙模塊進行設置,設置好后2個藍牙模塊會自動配對。通過串口2的PD5(RXD)和PD6(TXD)實現(xiàn)數(shù)據(jù)的收發(fā)??蓪CD數(shù)據(jù),電機測速數(shù)據(jù)等發(fā)送給上位機,方便調(diào)試。

        4 軟件編程

        4.1 軟件流程圖

        在KEIL MDK5.0下用C語言編程,軟件流程圖如圖6所示。

        圖6 軟件流程圖Fig.6 Software flow chart

        軟件編程時,首先對定時器、串口等進行初始化,然后通過A/D循環(huán)采集128個像素點的數(shù)據(jù)。通過顏色識別找到黑線的2個邊緣,記下此時像素點的位置I和J(I

        K=I+(J-I)/2

        (1)

        PWM+=Kp[e(k)-e(k-1)]+Ki×e(k)

        +Kd[e(k)-2e(k-1)+e(k-2)]

        (2)

        式中:Kp——比例系數(shù);Ki——積分系數(shù);Kd——微分系數(shù);e(k)——當前位置誤差;e(k-1)——上一次位置誤差;PWM——脈沖寬度。

        4.2 關鍵代碼

        以下是找到黑線并計算中心代碼,該段代碼在定時器Timer1中每隔100ms調(diào)用一次。對小車的控制采用動態(tài)閾值智能控制方法,當?shù)竭_閾值范圍內(nèi),控制小車直行,否則控制小車左轉或者右轉,按流程圖所示進行。這樣可以避免小車左右搖擺,這樣就能在幾秒內(nèi)將小車調(diào)整到中心位置。

        void Find_CCD_Zhongzhi(void)

        {static u8 i,j,Left,Right,Last_CCD_Zhongzhi;static u16 value1_max,value1_min;value1_max=ADV[0];//動態(tài)閾值算法,讀取最大和最小值

        for(i=5;i<123;i++)//兩邊各去掉5個點

        {if(value1_max<=ADV[i])

        value1_max=ADV[i];}

        value1_min=ADV[0];//最小值

        for(i=5;i<123;i++)

        {if(value1_min>=ADV[i])

        value1_min=ADV[i];}

        CCD_Yuzhi=(value1_max+value1_min)/2;//計算出本次中線提取的閾值

        for(i = 5;i<118; i++)//尋找左邊跳變沿

        {if(ADV[i]>CCD_Yuzhi&&ADV[i+1]>CCD_Yuzhi&&ADV[i+2]>CCD_Yuzhi&&ADV[i+3]

        {Left=i;

        break;}

        }

        for(j = 118;j>5; j--)//尋找右邊跳變沿

        {if(ADV[j]CCD_Yuzhi&&ADV[j+4]>CCD_Yuzhi&&ADV[j+5]>CCD_Yuzhi)

        {Right=j;

        break;}

        }

        CCD_Zhongzhi=(Right+Left)/2;//計算中線位置if(myabs1(CCD_Zhongzhi-Last_CCD_Zhongzhi)>70)//計算中線的偏差,如果太大

        CCD_Zhongzhi=Last_CCD_Zhongzhi;//則取上一次的值

        Last_CCD_Zhongzhi=CCD_Zhongzhi;//保存上一次的偏差

        }

        5 測試結果處理

        設計并調(diào)試好硬件電路和軟件程序后,就可以進行測試了。測試時,首先對鏡頭進行調(diào)焦,調(diào)焦如式(3)或式(4)所示

        f=v×D/V

        (3)

        f=h×D/H

        (4)

        式中:f——鏡頭的焦距長度;v——拍攝對象成像后的縱向尺寸;V——拍攝對象實際的縱向尺寸;D——鏡頭和拍攝對象之間的距離;h——拍攝對象成像后的橫向尺寸;H——拍攝對象實際的橫向尺寸。

        測試時,所選用的鏡頭的成像區(qū)域為8.128mm×0.063 5mm,焦距可調(diào)。

        測試時跑道如圖7所示。相距最遠的2條黑線的外邊沿間距是25cm,即橫向尺寸H為25cm。鏡頭與目標距離D為80cm,鏡頭焦距f為6mm,經(jīng)過式(4)計算,可得到成像后的橫向尺寸h如式(5)所示

        h=f×H/D=6mm×25cm/80cm=1.875mm

        圖7 測試用跑道示意圖Fig.7 Test Runway

        而鏡頭的成像區(qū)域為8.128mm×0.0635mm,橫向長度為8.128mm,對應128個像素點,則1.875mm對應像素點是29.5,接近于30個。

        通過藍牙發(fā)送數(shù)據(jù)給上位機,可以得到如圖8所示的測試數(shù)據(jù)。

        圖8 測試數(shù)據(jù)1Fig.8 Test data 1

        圖8顯示了經(jīng)過軟件處理后的數(shù)據(jù),最小值是18,最大值是86,中間值是52,并顯示了灰度圖和二值化圖。

        圖9顯示了當焦距為8mm時測量數(shù)據(jù),鏡頭與目標距離D為30cm時測得的數(shù)據(jù)。從圖中可得到最小值是20,最大值是127,中間值是73,并顯示了灰度圖和二值化圖。

        在實際測量中,由于環(huán)境亮度有所不同,測量值會有所不同.因為像素的亮度與曝光時間(積分時間)和環(huán)境亮度成正比,所以當光線比較暗時,增加曝光時間;當光線比較亮時,減少曝光時間。曝光時間可用軟件調(diào)整。

        圖9 測試數(shù)據(jù)2Fig.9 Test data 2

        對圖9所示數(shù)據(jù)提高曝光時間,焦距保持8mm,鏡頭與目標距離D不變,仍為30cm。得到測試數(shù)據(jù)如圖10所示。

        圖10 測試數(shù)據(jù)3Fig.10 Test data 3

        從圖中可以看到,增大曝光時間后,最大值、最小值、中間值明顯增大,中間值變?yōu)?35。因此,當光線較暗時,可增加曝光時間,增強識別能力。

        6 結束語

        文中仔細研究了CCD識別顏色的基本工作原理。設計了硬件電路,在MDK下編寫了C程序,采用中值算法得到了黑線的中線位置,通過PID算法控制了小車的行駛,實現(xiàn)了用攝像頭循跡,為智能小車的自動循跡提供了一種新方法。測試結果表明:該方法相比于普通光電傳感器,具有性能可靠、穩(wěn)定、速度快等優(yōu)點。

        亚洲欧洲无码精品ⅤA| 国产精品无码久久久久久久久久| ā片在线观看| 久久精品无码一区二区三区不卡 | 免费国产在线精品一区| 欧美最猛黑人xxxx黑人表情 | 精品视频在线观看一区二区三区| 国产少妇高潮在线视频| 色欲欲www成人网站| 又色又污又爽又黄的网站| 在线观看精品国产福利片87| 按摩少妇高潮在线一区| 国产精品永久久久久久久久久| 亚洲成色www久久网站夜月| 五月天无码| 网站在线观看视频一区二区| 正在播放老肥熟妇露脸| 性夜影院爽黄a爽在线看香蕉| 蜜桃一区二区免费视频观看| 久久综合久久综合久久| 久久久无码人妻精品无码| 欧美日韩在线观看免费| 免费啪啪av人妻一区二区| 在线观看一级黄片天堂| 国产suv精品一区二区883| 人妻精品久久中文字幕| 快射视频网站在线观看| 久9re热视频这里只有精品| 肉体裸交丰满丰满少妇在线观看| 免费福利视频二区三区| 成人国产精品一区二区八戒网| 女人高潮被爽到呻吟在线观看| 8av国产精品爽爽ⅴa在线观看| 久久99免费精品国产| 中文字幕亚洲精品无码| 日韩黑人欧美在线视频观看| 中文字幕一区二区va| 精品人妻系列无码人妻漫画| 国产成人vr精品a视频| 欧美综合自拍亚洲综合百度| 日本免费一区二区三区影院|