freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于arm的智能機器人圖像采集系統(tǒng)-資料下載頁

2025-01-18 16:08本頁面
  

【正文】 值時設(shè)為0。 經(jīng)過二值化處理后的圖像存放在image_buf中覆蓋原來的數(shù)據(jù),由于第一行圖像相對同一張圖像的其它行,反應(yīng)到賽道上的實際寬度最窄,與攝像頭中心連線夾角最小,賽道寬度為50cm中間為12cm寬的黑線,所以第一行圖像相對整張圖像而言是最穩(wěn)定,最可靠的。因此先確定第一行圖像的中心點,如圖15為確定第一行中心點流程圖:圖15 確定第一行中心點流程圖第二行以后的圖像以上一行圖像中心點為起始搜索點,設(shè)定一個搜索范圍search_area經(jīng)過測試設(shè)置search_area等于20,這個搜索范圍若與邊界沖突時以邊界線距起始搜索點的像素點個數(shù)為搜索范圍,下面往左搜索即表示往該行圖像起始方向搜索,往右搜索即表示往該行終點方向搜索。(1) 如果起始搜索點center[row1]為黑點,則往左至該行左邊界搜索范圍內(nèi)搜索白點,找到第一個白點x0,若接下來連續(xù)出現(xiàn)5個白點說明黑線左邊邊界為x0,若找到第一個白點后,接下來的5個點中出現(xiàn)了黑點則繼續(xù)搜索黑線左邊界,如果到該行左邊界仍然未找到黑線左邊界則以該行左邊界為黑線左邊界。最終得到黑線左邊界坐標(biāo)x0。(2) 如果起始搜索點center[row1]為黑點,往右搜索黑線右邊界方法與往左搜索方法一致。最終得到黑線右邊界坐標(biāo)x1。(3) 如果起始搜索點為白點,若往左和往右search_area個像素點搜索范圍內(nèi)都沒有找到一個黑點,表示該行找不到中心點,將該行中心點設(shè)置為上一行的中心點center[row]=center[row1]。(4) 如果起始點為白點,往左search_area未找到黑點,往右search_area找到黑點,則往右找到的第一個黑點記位xr0,然后按照第(2)種情況中的方法找到x1。(5) 如果起始點位白點,往右search_area未找到黑點,往左search_area找到黑點,則往左找到的第一個黑點記位xl0,然后按照第(1)種情況中的方法找到x1。(6) 如果起始點為白點,往左往右search_area范圍內(nèi)都能找到黑點,則采用第(1)種情況方法找到x0,采用第二種情況方法找到x1。(7) 根據(jù)當(dāng)前情況確定當(dāng)前行中心點的位置center[row],對比相應(yīng)行的中心點在上下兩幅圖像中的坐標(biāo)差距,若差距大于center_gap,此處設(shè)為5,則center[row]=center[row1],將中心點值設(shè)為0,其余都設(shè)為255。 不論起始搜索點是黑點還是白點,都需要在確定第一個黑點后采用同樣的搜索方法向起始方向或終點方向搜索黑線邊界,下面先來解決搜索到第一個黑點包括起始點就為黑點的搜索程序。int search(unsigned short *buf,int row,int start,int fangxiang)搜索函數(shù)帶有四個參數(shù):(1) *buf:表示圖片起始地址。(2) row:表示搜索的是第幾行圖像。(3) start:表示第一個黑點距起始搜索點的距離,如果起始搜索點就是黑點則start值為0。(4) fangxiang:表示搜索的方向,fangxiang=0表示往起始方向搜索;fangxiang!=0表示往終點方向搜索。圖16為確定黑點后搜索子函數(shù)流程圖 圖16 確定黑點后搜索子函數(shù)流程圖 圖16為確定第二行之后圖像中心點函數(shù)流程圖。 圖17 確定第二行之后圖像中心點函數(shù)流程圖 控制策略 舵機控制 攝像頭采集到的圖像總共有240行,控制小車并不需要用上所有的圖像,我們只用第0、150、200三行就行了int angle_line[3]={0,150,200}。,程序執(zhí)行,按鍵1按下時取這三行中心點為舵機控制的三個基準(zhǔn)點centervalue[],即當(dāng)采集到的圖像第0、150、200行中心點與對應(yīng)centervalue[i]相等時舵機在該行分量轉(zhuǎn)角為0度,由于舵機與車輪由連桿連接,當(dāng)輪子轉(zhuǎn)到最左邊角度時,舵機相對零點處需要加上220個分度,當(dāng)輪子轉(zhuǎn)到最右邊角度時,舵機相對零點處需要減少240個分度。所以角度控制方案如下:(1) 如果center[i]centervalue[i],則舵機在第i行轉(zhuǎn)角分量是正的,需要往左轉(zhuǎn)。(2) 如果center[i]centervalue[i],則舵機第i行轉(zhuǎn)角分量是負(fù)的,需要往右轉(zhuǎn)。for(i=0。i3。i++) { if(center[angle_line[i]]=(int)centervalue[i]) a[i]=(int)(long int)((220*100/(240centervalue[i])*(center[angle_line[i]]centervalue[i])))/100。 else a[i]=(int)(longint)((240*100/centervalue[i]*(centervalue[i]center[angle_line[i]])))/100。 } jiaodu=(kp1*a[0]+kp2*a[1]+kp3*a[2])/100。 servo(jiaodu)。函數(shù)中kpkpkp3分別表示0、150、200三行的轉(zhuǎn)角分量,此次設(shè)計中kp1設(shè)置為50,kp2設(shè)置為25,kp3設(shè)置為25。 電機控制電機采用比例微分控制PD,這里需要用到一個測速編碼器來測量給定采樣時間內(nèi)編碼器采樣的脈沖個數(shù)(個數(shù)的多少能反應(yīng)速度的大小)。 e=vi_refpulse。ec=pulseb_pulse。add=kp*e/100+kd*ec/100。s=s+add。 if(s0) s=0。 if(supspeed) s=upspeed。直道和彎道的速度給定值是不一樣的,速度的上限值也不一樣。 結(jié)束語本課題實現(xiàn)了基于ARM 和Linux的嵌入式圖像采集系統(tǒng),并控制小車沿著賽道黑線行駛,設(shè)計所作的工作主要包括以下幾個方面:(1) 搭建應(yīng)用程序開發(fā)環(huán)境;(2) 編寫PWM控制驅(qū)動程序;(3) 編寫LCD顯示及usb攝像頭圖像采集程序;(4) 處理采集到的圖像獲取賽道中心線;(5) 控制小車賽道行駛。本課題尚有待改進的方面,總結(jié)如下:(1) 圖像處理方案不是很完善,提取的賽道中心線和實際的中心線存在偏差,使得小車容易沖出賽道。(2) 設(shè)計采用兩塊開發(fā)板,重量大,小車行駛過程中電機和電機驅(qū)動發(fā)熱量大,實際項目中必須對硬件進行相應(yīng)裁剪。(3) 操作系統(tǒng)的優(yōu)勢在于可以并行執(zhí)行多任務(wù),使系統(tǒng)處理事務(wù)的能力變得很強,而在整個設(shè)計的過程中程序的構(gòu)思設(shè)計仍然沒有跳出單片機只能執(zhí)行單任務(wù)的圈子。(4) Linux本身為分時操作系統(tǒng),速度慢,實時性差,其系統(tǒng)目標(biāo)為較好的平均響應(yīng)時間和較高的吞吐量,而本次設(shè)計采用USB攝像頭采集圖像控制小車沿著賽道行駛需要有很高的實時性,采用Linux系統(tǒng)導(dǎo)致圖像采集速度慢,實時性低,小車行駛速度慢。(5) Linux操作系統(tǒng)過于復(fù)雜,現(xiàn)在對于基于linux系統(tǒng)驅(qū)動程序開發(fā)、內(nèi)核的調(diào)度等仍然知之甚少,還需要進一步學(xué)習(xí)。隨著計算機技術(shù)、通信技術(shù)、電子技術(shù)一體化進程不斷加劇以及人們對電子設(shè)備功能要求日益提升,嵌入式系統(tǒng)以其軟硬件可裁剪、穩(wěn)定性高、成本低、并行執(zhí)行多任務(wù)等優(yōu)勢必將得到市場的青睞,其高速發(fā)展已成為必然的趨勢。如今隨著IC業(yè)得發(fā)展已經(jīng)出現(xiàn)了越來越多的價格低廉、結(jié)構(gòu)小巧的CPU和外設(shè),限制嵌入式系統(tǒng)發(fā)展的瓶頸就突出表現(xiàn)在軟件方面了,目前比較著名的操作系統(tǒng)有Vxwork、eCOS、RTEMS、Linux、windows CE、μC/OS、QNX等,不同的操作系統(tǒng)有不同的特性,開發(fā)項目是必須根據(jù)實際應(yīng)用選擇合適的軟硬件,以達到最佳效果。參考文獻 [1] 王黎明,陳雙橋,閆曉玲,史毓達,葛德宏.ARM9嵌入式系統(tǒng)開發(fā)與實踐[M].北京:北京航空航天大學(xué)出版社2008[2] 林曉飛,劉彬,張輝.基于ARM嵌入式Linux應(yīng)用開發(fā)與實例教程[M].北京:清華大學(xué)出版社2007[3] 黃智偉,鄧月明,王彥.ARM9嵌入式系統(tǒng)設(shè)計基礎(chǔ)教程[M].北京:北京航空航天大學(xué)出版社 2008[4] 徐磊.Linux系統(tǒng)下C程序開發(fā)詳解[M].北京:電子工業(yè)出版社2008[5] 吳岳.Linux C程序設(shè)計大全[M].北京:清華大學(xué)出版社 2009[6] 于明,范書瑞,曾祥燁.ARM9嵌入式系統(tǒng)設(shè)計與開發(fā)教程[M].北京:電子工業(yè)出版社 2006[7] 張綺文,謝建雄,謝勁心.ARM嵌入式常用模塊與綜合系統(tǒng)設(shè)計實例精講[M].北京:電子工業(yè)出版社2007[8] 徐千洋.Linux C函數(shù)庫詳解詞典[M].北京:機械工業(yè)出版社 2008[9] 宋寶華.Linux設(shè)備驅(qū)動開發(fā)詳解[M].北京:人們郵電出版社 2008[10] 華成英,[M].北京:高等教育出版社 2006[11] 閻石.?dāng)?shù)字電子技術(shù)基礎(chǔ)(第五版)[M].北京:高等教育出版社 2006 [12] 竇振中.基于單片機的嵌入式系統(tǒng)工程設(shè)計[M].北京:中國電力出版社 2008[13] 周立功.ARM嵌入式系統(tǒng)基礎(chǔ)教程[M].北京:北京航空航天大學(xué)出版社 2005[14] Jean .MicroC/OSII The RealTime Kernel Second Edition[M].北京:北京航空航天大學(xué)出版社 2003[15] Brian ,Dennis .The C Programming Language[M].北京:機械工業(yè)出版社 2004致謝 這次畢業(yè)設(shè)計能夠順利完成,是所有曾經(jīng)指導(dǎo)過我的老師,幫助過我的同學(xué)對我的教誨、幫助和鼓勵的結(jié)果。在此我要對他們表示深深的謝意! 首先特別感謝我的指導(dǎo)老師**。**老師在我畢業(yè)設(shè)計過程中給我提供了許多寶貴的意見,使我少走了很多彎路。**32
點擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1