通過請教組員一些組件的作用以及他們之間的連接關(guān)系后,參考論文,模仿建立出初始 PID 控制模型,并對各個(gè)部分都有了一定認(rèn)識。下面是小編帶來的大學(xué)生計(jì)算機(jī)專業(yè)暑期科研營心得體會,趕緊學(xué)習(xí)看看吧。
參加這個(gè)項(xiàng)目之前,自身的項(xiàng)目背景幾乎為零,當(dāng)在第一天下午的各自自我介紹中,看到各位同學(xué)的項(xiàng)目背景時(shí)首先感受到的是驚訝,然后想到的是接下來自己還有很多事情要去嘗試和實(shí)踐。在各位同學(xué)的自我介紹內(nèi)容中,除了專業(yè)知識外,還有很多很重要的東西去學(xué)習(xí),比如發(fā)言表達(dá)能力與做 PPT 展示能力等等。
在正式上課之前,自身對于這個(gè)涉及無人機(jī)項(xiàng)目的認(rèn)識是用某一門編程語言去編寫程序去控制無人機(jī)按照要求飛行。當(dāng)涉及到自動(dòng)控制方面的知識時(shí),意識到完全和我想象的不一樣。由于自身時(shí)計(jì)算機(jī)專業(yè),對于自動(dòng)化控制方面的知識比較有限,所以只能一邊聽老師講解,一邊去查閱各種資料基本知識以及問同一小組地同學(xué)。所以自動(dòng)控制方面的知識感覺收獲良多,從自動(dòng)控制理論中形成一種建立模型的意識。當(dāng)在對無人機(jī)進(jìn)行建模時(shí),接受起來比較容易,并對整體控制模型結(jié)構(gòu)能夠有一個(gè)較好的理解。
在本項(xiàng)目中,感覺較為困難的是對四旋翼飛行器模型建立之后的參數(shù)調(diào)試以及對模型適當(dāng)修改以及加上干擾因素。參數(shù)的調(diào)試一開始處于效率低的階段,參考了有關(guān)論文的參數(shù),以及使用了老師說的先調(diào) P,再調(diào) I 或 D 的方法,但感覺還是調(diào)出來還是不太理想,出現(xiàn)超調(diào)過大,時(shí)間過長,振蕩較大的單個(gè)或幾個(gè)一起的問題。于是一直和組員一起討論這個(gè)問題,也一起查閱了一些有關(guān)論文,想出了一些方法,但還是處于瓶頸位置時(shí)間較長。同時(shí)也同其他小組討論過這個(gè)問題,發(fā)現(xiàn)也是卡在了這個(gè)問題上。之后老師介紹了 PSO 算法,發(fā)了參考代碼給我們。我對這個(gè)算法還是可以理解,但對于結(jié)合到參數(shù)優(yōu)化方面就感覺有點(diǎn)困難,在與組員的討論中才明白 PSO 與 PID 參數(shù)優(yōu)化的結(jié)合。然后跟著組長學(xué)習(xí)使用PSO 算法在 PID 上的應(yīng)用。先把代碼大致看明白,然后對粒子以及各種參數(shù)和函數(shù)的設(shè)置,雖然得出過許多組非常奇怪的數(shù)據(jù),但最后還是得到了部分想要的結(jié)果,但每次調(diào)試都需要以小時(shí)為單位進(jìn)行計(jì)算。雖然對模型有一定的理解,但在轉(zhuǎn)化到 Simulink 時(shí)還是思考了一段時(shí)間來想明白內(nèi)環(huán),外環(huán),反解算以及飛行器模型的建立,其中還要包含反饋。通過請教組員一些組件的作用以及他們之間的連接關(guān)系后,參考論文,模仿建立出初始 PID 控制模型,并對各個(gè)部分都有了一定認(rèn)識。
接下來,浦老師還講解了遺傳算法。對于這個(gè)算法,沒什么了解,待老師講解后有了一定認(rèn)識,并產(chǎn)生了興趣。雖然對這個(gè)算法有一個(gè)基本的了解,但對于如何應(yīng)用遺傳算法這個(gè)問題上還是有些疑問。只好通過網(wǎng)絡(luò)資源,查看了一些博客文章才開始知道如何應(yīng)用。有一篇博客舉了一個(gè)袋鼠跳的例子。有一個(gè)圖像含有許多極值的函數(shù),目標(biāo)就是在一定區(qū)間范圍內(nèi)尋找到最大值,然后運(yùn)用遺傳算法來尋求最優(yōu)解。對于代碼實(shí)現(xiàn)遺傳算法的解決,目前還在研究中。然后就是朱老師講解了人工神經(jīng)網(wǎng)絡(luò),開始對運(yùn)用機(jī)器模仿人腦解決問題有了一個(gè)概念。人工神經(jīng)網(wǎng)絡(luò)的應(yīng)用感覺以后可以用在很多不同的鄰域。期間,朱老師還推薦了DSST 算法。這個(gè)算法我在看有關(guān)論文或解釋時(shí),很難理解的是一些數(shù)學(xué)上的式子,但對整體概念還是有一定的了解。在大致看懂下載下來的代碼后,嘗試去實(shí)現(xiàn)自己錄制視頻然后識別。錄制視頻不是很困難,但問題是如何按一定頻率截取圖片,一開始想到的是用 Matlab 加載一段視頻,然后輸入?yún)?shù)截取并修改好名稱保存到一個(gè)文件夾內(nèi)。但由于時(shí)間比較有限,所以從網(wǎng)絡(luò)上下載了一個(gè)自帶連續(xù)截圖并能設(shè)置參數(shù)功能的播放器。但當(dāng)幾百張圖片截取完后對其按照運(yùn)行代碼格式改名比較困難,我想到的是用 Matlab 寫一個(gè)程序批量改名,還有另一個(gè)方法是改代碼中的文件名,最后我采取的是第一個(gè)方法。然后設(shè)置好兩個(gè) txt 文件就成功演示出像事例視頻中的一樣。但后來發(fā)現(xiàn)了一個(gè)問題,就是當(dāng)原物體被遮擋時(shí),會自動(dòng)識別到遮擋物,這是一個(gè)比較有趣的地方,也是算法中的一個(gè)存在的一個(gè)問題。
這次的項(xiàng)目經(jīng)歷有一個(gè)很重要的地方便是團(tuán)隊(duì)合作。一個(gè)人的能力和精力是有限的,在思考問題時(shí)很容易陷入一個(gè)局部。而跟組員討論會容易避免片面,并且可以從不同角度去思考和切入問題。結(jié)合各個(gè)方面,得出一個(gè)比較優(yōu)的解決方案。我感到在所處小組內(nèi)就經(jīng)常是這個(gè)樣子。在一個(gè)團(tuán)隊(duì)里面對自身很大的幫助之一就是可以向不同專業(yè)的組員學(xué)習(xí)對于自身來說新的知識,例如我所在的小組里面有位同學(xué)是電子專業(yè)的。在老師布置的一項(xiàng)作業(yè)中,我所在小組選擇了一個(gè)包含有濾波方面知識的題目,而我在濾波方面的認(rèn)識較為淺薄,在網(wǎng)絡(luò)上查閱資料的時(shí)候又遇到許多疑問,便只好向他學(xué)習(xí)。這位同學(xué)沒有跟我說太多的定義方面的專業(yè)語言,而是舉出一些實(shí)例然后加以一些公式來向我講解。雖然這些知識在書面看起來比較枯燥,因?yàn)楹枚喽夹枰獢?shù)學(xué)基礎(chǔ)和嚴(yán)密的數(shù)學(xué)推導(dǎo),但結(jié)合到生活中的一些例子,感覺使用起來特別有趣。同時(shí),在和同學(xué)討論到涉及編程時(shí),由于是計(jì)算機(jī)專業(yè),平時(shí)涉及編程比較多,也會盡量使語言表達(dá)清楚,表義清晰去說出自己的想法。面對這個(gè)項(xiàng)目所涉及的任務(wù),對于一個(gè)人來說會很巨大,很容易放棄懈怠或顧此失彼。在一個(gè)團(tuán)隊(duì)中,由組長的領(lǐng)導(dǎo)下,各組員按照各項(xiàng)相對較少的任務(wù)去完成,然后最終拼接起來,效率會比較高,并且如果出現(xiàn)某些環(huán)節(jié)有所落后,而另外一些進(jìn)展較快的同學(xué)可以去幫忙,這個(gè)自身很有體會,因?yàn)楹芏鄸|西我一直在學(xué)習(xí)。這有點(diǎn)像把全局分割,各局部處理好,那全局便會像預(yù)期所想,類似于問題模塊化。
在最后上臺展示的時(shí)候,一開始不太自信在大家面前。但由于是講 DSST 的演示,而我又剛好是組內(nèi)負(fù)責(zé)這個(gè)方面,所以組長安排我去代表小組展示。一開始由組長說明了一些基本情況,然后我來解釋。當(dāng)開始解釋的時(shí)候,一直想的是表達(dá)邏輯清晰,不能有含糊的地方。當(dāng)老師向我提問的時(shí)候,我盡量把我自己找到的一個(gè)解決方法步驟都一一表達(dá)清楚。展示結(jié)束后,感覺松了一口氣,總算沒有表達(dá)的太不如人意。
在這次的項(xiàng)目過程中,我學(xué)習(xí)到了很多東西,但感覺知識開了個(gè)頭,以后還有很長的一段路在等著我去探索。同時(shí)也學(xué)到了很多非專業(yè)也很重要的東西,那就是和別人合作以及向他人提問學(xué)習(xí)。
來源:網(wǎng)絡(luò)整理 免責(zé)聲明:本文僅限學(xué)習(xí)分享,如產(chǎn)生版權(quán)問題,請聯(lián)系我們及時(shí)刪除。