第一篇:淺談基于SolidWorks 和ANSYS 的一種四旋翼飛行器旋翼的設(shè)計(jì)及分
1、前言
四旋翼無(wú)人飛行器是一種結(jié)構(gòu)緊湊、飛行方式獨(dú)特的垂直起降式飛行器, 因其起飛降落所依賴空間小, 及姿態(tài)保持能力強(qiáng)等優(yōu)點(diǎn), 在軍事和民用多個(gè)領(lǐng)域都有廣闊的應(yīng)用前景。四旋翼飛行器采用四個(gè)旋翼作為飛行的直接動(dòng)力源,旋翼對(duì)稱分布在機(jī)體的前后、左右四個(gè)方向,四個(gè)旋翼處于同一高度平面,且四個(gè)旋翼的結(jié)構(gòu)和半徑都相同,旋翼1 和旋翼3 逆時(shí)針旋轉(zhuǎn),旋翼2 和旋翼4 順時(shí)針旋轉(zhuǎn),四個(gè)旋翼的設(shè)計(jì)對(duì)四旋翼無(wú)人飛行器的最大載重和平衡性有著重要關(guān)系,由于我們無(wú)法直觀的用肉眼分析旋翼設(shè)計(jì)是否能夠滿足要求,所以筆者采用ANSYS 對(duì)一種四旋翼飛行器的螺旋槳進(jìn)行設(shè)計(jì)及分析,由于ANSYS 三維建模效率低,因此采用SolidWorks 進(jìn)行設(shè)計(jì)后,再導(dǎo)入ANSYS 進(jìn)行相關(guān)分析和處理。
2、旋翼模型建立及調(diào)用
四旋翼飛行器螺旋槳主要是由SolidWorks 軟件建立三維模型。將模型體在SolidWorks 中另存為X_T 格式,然后啟動(dòng)ANSYS 軟件,在對(duì)話框中導(dǎo)入四旋翼飛行器旋翼模型X_T 文件。定義單元類型,采用三維實(shí)體單元,然后定義材料屬性,定義彈性模量為 8.3 GPa,泊松比為 0.28,密度為 1180 kg/m3,接下來(lái)對(duì)旋翼模型進(jìn)行網(wǎng)格劃分。再在模型上添加面1、面2 為固定面。同時(shí)在xcomponent、y component、z component 三欄分別輸入0。在inertial中Rotation Velocity 欄中的magnitude 中輸入?yún)?shù)60,即角速度60rad/s。以螺旋槳中心孔的軸線為旋轉(zhuǎn)軸。在后處理階段選擇solution 工具欄的stress 中的Equivalent, 以觀察等效應(yīng)力。選擇solution 工具欄的strain 中的Equivalent, 以觀察等效應(yīng)變。選擇solution 工具欄的Deformation 中的total, 以觀察總應(yīng)變。
3、ANSYS 分析
結(jié)合四旋翼飛行器螺旋槳以60rad/s 轉(zhuǎn)動(dòng)時(shí)的應(yīng)力圖、應(yīng)變圖及總的應(yīng)變。我們可以看出螺旋槳螺旋槳的應(yīng)力分布,其中顏色有藍(lán)色到紅色逐漸增加。我們可以看出螺旋槳螺旋槳的應(yīng)變分布,其中顏色有藍(lán)色到紅色逐漸增加,應(yīng)變可以看出與應(yīng)力大致吻合。我們可以看出螺旋槳螺旋槳的總應(yīng)變分布,其中顏色有藍(lán)色到紅色逐漸增加。分析可以得出旋翼設(shè)計(jì)安全可靠。
4、結(jié)束語(yǔ)
本文以四旋翼飛行器螺旋槳為研究對(duì)象,先用SolidWorks 軟件對(duì)四旋翼飛行器螺旋槳進(jìn)行建模,然后將SolidWorks 模型導(dǎo)入ANSYS中進(jìn)行螺旋槳的受力分析,最后得出四旋翼飛行器螺旋槳的所受的應(yīng)力圖、應(yīng)變圖及總的應(yīng)變,為螺旋槳的結(jié)構(gòu)優(yōu)化提供了必要的參數(shù)。
第二篇:關(guān)于四旋翼飛行器的心得
關(guān)于四旋翼飛行器的心得
對(duì)于飛行器或者航模之類的映像,是在高中時(shí)期,學(xué)校有航模小組,經(jīng)常可以看到拿著航模的學(xué)生在進(jìn)行試飛,當(dāng)時(shí)心中感覺(jué)“航?!笔欠浅S幸馑疾⑶摇案呖萍肌薄H缃褚呀?jīng)歷高考進(jìn)入大學(xué),在學(xué)校的為我們安排的導(dǎo)師制計(jì)劃中,非常幸運(yùn)的加入無(wú)人機(jī)航拍飛行器小組,關(guān)于四旋翼飛行器,在查閱了相關(guān)資料后,有了一定的了解。
四旋翼飛行器也稱為四旋翼直升機(jī),是一種有4個(gè)螺旋槳且螺旋槳呈十字形交叉的飛行器。Seraphi 是一款可用于空中拍攝的一體化多旋翼飛行器,它外觀時(shí)尚精美,做工精湛,還擁有集成了自身研發(fā)的飛行動(dòng)力系統(tǒng),并配置專業(yè)的無(wú)線電遙控系統(tǒng)。Seraphi集成易作、易維護(hù)的穩(wěn)定設(shè)計(jì),在出廠前已經(jīng)設(shè)置并調(diào)試所有的飛行參數(shù)及功能,具有免安裝、免調(diào)試的快速飛行模式。Seraphi 攜帶方便,可以搭配GoPro或者其它微型相機(jī)錄制空中視頻。
記得在TED的講座中,有一期叫做“TED-紅遍全球的的炫酷飛行器”,這個(gè)講座說(shuō)明了四旋翼飛行器的一些特點(diǎn)。1.時(shí)尚精美、做工精湛。Seraphi外觀時(shí)尚精美,做工精湛,還擁集成了自身研發(fā)的飛行動(dòng)力系統(tǒng),并配置專業(yè)的無(wú)線電遙控系統(tǒng)。2.集成易作、易維護(hù)的穩(wěn)定設(shè)計(jì)。Seraphi集成易作、易維護(hù)的穩(wěn)定設(shè)計(jì)。Seraphi 攜帶方便,可以搭配GoPro或者其它微型相機(jī)錄制空中視頻。3.自由切換多種飛行模式。Seraphi內(nèi)置自身研發(fā)的飛行控制系統(tǒng),具備多種飛行模式,可以根據(jù)不同的飛行需要以及不同的飛行環(huán)境進(jìn)行實(shí)時(shí)的智能切換以達(dá)到不一樣的飛行體驗(yàn)。4.方向控制靈活。Seraphi具備自身研發(fā)飛控系統(tǒng),方向控制靈活。在通常飛行過(guò)程中,可以根據(jù)需要,進(jìn)行靈活縱。
制作航拍飛行器能夠讓培養(yǎng)我們的團(tuán)隊(duì)合作意識(shí),拓寬我們的知識(shí)領(lǐng)域,同時(shí)讓我們動(dòng)手實(shí)踐的能力得到提升,相信這次經(jīng)歷肯定能成為我的大學(xué)生活中最值得回憶的事情之一。
第三篇:動(dòng)態(tài)系統(tǒng)建模(四旋翼飛行器仿真)實(shí)驗(yàn)報(bào)告
動(dòng)態(tài)系統(tǒng)建模(四旋翼飛行器仿真)
實(shí)驗(yàn)報(bào)告
院(系)名稱
大飛機(jī)班
學(xué)號(hào)
學(xué)生姓名
任課教師
2011年
X月
四旋翼飛行器的建模與仿真
一、實(shí)驗(yàn)原理
I.四旋翼飛行器簡(jiǎn)介
四旋翼飛行器通過(guò)四個(gè)螺旋槳產(chǎn)生的升力實(shí)現(xiàn)飛行,原理與直升機(jī)類似。四個(gè)旋翼位于一個(gè)幾何對(duì)稱的十字支架前、后、左、右四端,如圖1-1所示。旋翼由電機(jī)控制;整個(gè)飛行器依靠改變每個(gè)電機(jī)的轉(zhuǎn)速來(lái)實(shí)現(xiàn)飛行姿態(tài)控制。
在圖1-1中,前端旋翼1
和后端旋翼3
逆時(shí)針旋轉(zhuǎn),而左端旋翼2
和右端的旋翼4
順時(shí)針旋轉(zhuǎn),以平衡旋翼旋轉(zhuǎn)所產(chǎn)生的反扭轉(zhuǎn)矩。由此可知,懸停時(shí),四只旋翼的轉(zhuǎn)速應(yīng)該相等,以相互抵消反扭力矩;同時(shí)等量地增大或減小四只旋翼的轉(zhuǎn)速,會(huì)引起上升或下降運(yùn)動(dòng);增大某一只旋翼的轉(zhuǎn)速,同時(shí)等量地減小同組另一只旋翼的轉(zhuǎn)速,則產(chǎn)生俯仰、橫滾運(yùn)動(dòng);增大某一組旋翼的轉(zhuǎn)速,同時(shí)等量減小另一組旋翼的轉(zhuǎn)速,將產(chǎn)生偏航運(yùn)動(dòng)。
圖1-1
四旋翼飛行器旋翼旋轉(zhuǎn)方向示意圖
從動(dòng)力學(xué)角度分析,四旋翼飛行器系統(tǒng)本身是不穩(wěn)定的,因此,使系統(tǒng)穩(wěn)定的控制算法的設(shè)計(jì)顯得尤為關(guān)鍵。由于四旋翼飛行器為六自由度的系統(tǒng)(三個(gè)角位移量,三個(gè)線位移量),而其控制量只有四個(gè)(4
個(gè)旋翼的轉(zhuǎn)速),這就意味著被控量之間存在耦合關(guān)系。因此,控制算法應(yīng)能夠?qū)@種欠驅(qū)動(dòng)(under-actuated)系統(tǒng)足夠有效,用四個(gè)控制量對(duì)三個(gè)角位移量和三個(gè)線位移量進(jìn)行穩(wěn)態(tài)控制。本實(shí)驗(yàn)針對(duì)四旋翼飛行器的懸浮飛行狀態(tài)進(jìn)行建模。
II.飛行器受力分析及運(yùn)動(dòng)模型
(1)整體分析
如圖1-2所示,四旋翼飛行器所受外力和力矩為:
?
重力mg,機(jī)體受到重力沿-Zw方向
?
四個(gè)旋翼旋轉(zhuǎn)所產(chǎn)生的升力Fi(i=1,2,3,4),旋翼升力沿ZB方向
?
旋翼旋轉(zhuǎn)會(huì)產(chǎn)生扭轉(zhuǎn)力矩Mi
(i=1,2,3,4),Mi垂直于葉片的旋翼平面,與旋轉(zhuǎn)矢量相反。
圖1-2
四旋翼飛行器受力分析
(2)電機(jī)模型
?
力模型
(1.1)
旋翼通過(guò)螺旋槳產(chǎn)生升力。是電機(jī)轉(zhuǎn)動(dòng)力系數(shù),可取,為電機(jī)轉(zhuǎn)速。
?
力矩模型
旋翼旋轉(zhuǎn)產(chǎn)生旋轉(zhuǎn)力矩Mi(i=1,2,3,4),力矩Mi的旋向依據(jù)右手定則確定。
(1.2)
是電機(jī)轉(zhuǎn)動(dòng)力系數(shù),可取為電機(jī)轉(zhuǎn)速。
?
轉(zhuǎn)速模型
當(dāng)給定期望轉(zhuǎn)速后,電機(jī)的實(shí)際轉(zhuǎn)速需要經(jīng)過(guò)一段時(shí)間才能達(dá)到。實(shí)際轉(zhuǎn)速與期望轉(zhuǎn)速之間的關(guān)系為一階延遲:
(1.3)
響應(yīng)延遲時(shí)間可取0.05s(即)。期望轉(zhuǎn)速則需要限制在電機(jī)的最小轉(zhuǎn)速和最大轉(zhuǎn)速之間,范圍可分取[1200rpm,7800rpm]。
(3)運(yùn)動(dòng)方程
飛行器受到外界力和力矩的作用,形成線運(yùn)動(dòng)和角運(yùn)動(dòng)。線運(yùn)動(dòng)由合外力引起,符合牛頓第二定律,如公式(1.4)所示:
(1.4)
r為飛機(jī)的位置矢量。注意:公式(1.4)是在地平面坐標(biāo)系中進(jìn)行描述的。
角運(yùn)動(dòng)由合力矩引起。四旋翼飛行器所受力矩來(lái)源于兩個(gè)方面:1)旋翼升力作用于質(zhì)心產(chǎn)生的力矩;2)旋翼旋轉(zhuǎn)產(chǎn)生的扭轉(zhuǎn)力矩。角運(yùn)動(dòng)方程如公式(1.5)所示。其中,L
為旋翼中心建立飛行器質(zhì)心的距離,I
為慣量矩陣。
(1.5)
III.控制回路設(shè)計(jì)
控制回路包括內(nèi)外兩層。外回路由Position
Control
模塊實(shí)現(xiàn)。輸入為位置誤差,輸出為期望的滾轉(zhuǎn)、俯仰和偏航角。內(nèi)回路由Attitude
Control
模塊實(shí)現(xiàn),輸入為期望姿態(tài)角,輸出為期望轉(zhuǎn)速。Motor
Dynamics
模塊模擬電機(jī)特性,輸入為期望轉(zhuǎn)速,輸出為力和力矩。Rigid
Body
Dynamics
是被控對(duì)象,模擬四旋翼飛行器的運(yùn)動(dòng)特性。如圖1-3
圖1-3
包含內(nèi)外兩個(gè)控制回路的控制結(jié)構(gòu)
(1)內(nèi)回路:姿態(tài)控制回路
對(duì)四旋翼飛行器,我們唯一可用的控制手段就是四個(gè)旋翼的轉(zhuǎn)速。因此,這里首先對(duì)轉(zhuǎn)速產(chǎn)生的作用進(jìn)行分析。假設(shè)我們希望旋翼1的轉(zhuǎn)速達(dá)到,那么它的效果可分解成以下幾個(gè)分量:
:使飛行器保持懸停的轉(zhuǎn)速分量;
:除懸停所需之外,產(chǎn)生沿ZB軸的凈力;
:使飛行器負(fù)向偏轉(zhuǎn)的轉(zhuǎn)速分量;
:使飛行器正向偏航的轉(zhuǎn)速分量;
因此,可以將期望轉(zhuǎn)速寫(xiě)成幾個(gè)分量的線性組合:
(1.6)
其它幾個(gè)旋翼也可進(jìn)行類似分析,最終得到:
(1.7)
在懸浮狀態(tài)下,四個(gè)旋翼共同的升力應(yīng)抵消重力,因此:
(1.8)
此時(shí),可以把旋翼角速度分成幾個(gè)部分分別控制,通過(guò)“比例-微分”控制律建立如下公式:
(1.9)
綜合式(1.7)、(1.8)、(1.9)可得到期望姿態(tài)角-期望轉(zhuǎn)速之間的關(guān)系,即內(nèi)回路。
(2)外回路:位置控制回路
外回路采用以下控制方式:
?
通過(guò)位置偏差計(jì)算控制信號(hào)(加速度);
?
建立控制信號(hào)與姿態(tài)角之間的幾何關(guān)系;
?
得到期望姿態(tài)角,作為內(nèi)回路的輸入。
期望位置記為。可通過(guò)PID
控制器計(jì)算控制信號(hào):
(1.10)
是目標(biāo)懸停位置是我們的目標(biāo)懸停位置(i=1,2,3),是期望加速度,即控制信號(hào)。注意:懸停狀態(tài)下線速度和加速度均為0,即。
通過(guò)俯仰角和滾轉(zhuǎn)角控制飛行器在XW和YW平面上的運(yùn)動(dòng),通過(guò)控制偏航角,通過(guò)控制飛行器在ZB軸上的運(yùn)動(dòng)。對(duì)(1.4)進(jìn)行展開(kāi),可得到:
(1.11)
根據(jù)上式可按照以下原則進(jìn)行線性化:
(1)將俯仰角、滾轉(zhuǎn)角的變化作為小擾動(dòng)分量,有,,(2)偏航角不變,有,其中初始偏航角,為期望偏航角(3)在懸停的穩(wěn)態(tài)附近,有
根據(jù)以上原則線性化后,可得到控制信號(hào)(期望加速度)與期望姿態(tài)角之間的關(guān)系:
(1.12)
根據(jù)式(1.10)已經(jīng)通過(guò)PID
控制器得到了作為控制信號(hào)的期望加速度,因此,將(1.12)式反轉(zhuǎn),由期望加速度計(jì)算期望姿態(tài)角,作為內(nèi)回路的輸入:
(1.13)
二、實(shí)驗(yàn)步驟
I.搭建Simulink仿真控制回路
根據(jù)實(shí)驗(yàn)原理中運(yùn)動(dòng)方程及控制回路設(shè)計(jì),搭建Simulink控制回路,如圖2-1所示。主要分為五個(gè)部分:Position
Control(由期望的位置誤差通過(guò)控制律設(shè)計(jì)計(jì)算出期望的姿態(tài)角),Attitude
Control(由姿態(tài)角信息和各軸角速度信息通過(guò)控制律計(jì)算出給電機(jī)的控制信號(hào)),Motor
Dynamics(通過(guò)給電機(jī)的控制信號(hào)由電機(jī)模型計(jì)算出每個(gè)電機(jī)的輸出力和力矩),Rigid
Body
Dynamics為四旋翼飛行器的仿真模型,由產(chǎn)生的力和力矩計(jì)算出仿真模型的姿態(tài)和位置信息,VR
Sink為四旋翼飛行器的虛擬顯示模型。
圖2-1
仿真Simulink模型
下面給出每個(gè)子系統(tǒng)的仿真結(jié)構(gòu)圖及控制律設(shè)計(jì)部分。
圖2-2
Position
Control子系統(tǒng)
圖2-3
位置PID控制器結(jié)構(gòu)
圖2-4
Attitude
Control子系統(tǒng)
圖2-5
姿態(tài)角和三軸角速度之間的轉(zhuǎn)換關(guān)系
圖2-6
Motor
Dynamics子系統(tǒng)輸出力及力矩模型
圖2-7
Rigid
Body
Dynamics子系統(tǒng)
II.利用V-Realm
Builder建立四旋翼飛行器的虛擬模型
利用V-Realm
Builder建立四旋翼飛行器的大致虛擬模型,并建立四個(gè)父類分別為Simulink輸入提供質(zhì)心位移信息和機(jī)體姿態(tài)信息,如圖2-8所示。
圖2-8
四旋翼飛行器虛擬模型
III.利用MATLAB
GUI建立四旋翼飛行器仿真的控制界面
利用MATLAB
GUI建立仿真控制界面,所建立的控制界面如圖2-9所示。
圖2-9
MATLAB
GUI仿真控制界面
界面主要分為四個(gè)部分,Struct
Parameters
Panel設(shè)置飛行器的結(jié)構(gòu)參數(shù)和外部變量,Desired
Position
Panel設(shè)置期望控制飛行器所到達(dá)的位置,Control
Parameters
Panel設(shè)置PID控制律所需的增益參數(shù)和仿真時(shí)間,Plot
Panel顯示仿真結(jié)果圖形并對(duì)圖形效果進(jìn)行簡(jiǎn)單的控制。
三、仿真結(jié)果
運(yùn)行GUI,輸入所需參數(shù)或者采用默認(rèn)參數(shù),點(diǎn)擊load
data按鈕分別將三組參數(shù)載入,點(diǎn)擊Start按鈕,仿真開(kāi)始運(yùn)行。跳出VR顯示,并在仿真結(jié)束后繪制飛行器三方向的坐標(biāo)信息曲線和飛行器位置曲線。VR顯示過(guò)程中某一時(shí)刻如圖3-1所示,仿真結(jié)束后控制界面顯示的曲線如圖3-2所示。期望達(dá)到的目標(biāo)點(diǎn)設(shè)置為(10,15,20)。
圖3-1
VR顯示四旋翼飛行器運(yùn)動(dòng)狀態(tài)
圖3-2
四旋翼飛行器控制平臺(tái)
四、總結(jié)與體會(huì)
由仿真結(jié)果可以看出,四旋翼飛行器最終位置達(dá)到了期望給定的位置,三個(gè)方向的響應(yīng)曲線最終平穩(wěn),對(duì)應(yīng)飛行器懸停在期望位置,達(dá)到了控制要求。本次試驗(yàn)收獲很多,學(xué)習(xí)到了很多知識(shí),熟悉了SIMULINK由簡(jiǎn)至繁搭建系統(tǒng)的過(guò)程,學(xué)習(xí)了利用V-Realm
Builder建立虛擬模型,并在SIMULINK中連接,也熟悉了MATLAB
GUI界面的編寫(xiě)和搭建過(guò)程。
第四篇:新手四旋翼算法總結(jié)
新手四旋翼算法總結(jié) 一.姿態(tài)結(jié)算(匿名版程序)
首先,程序中一般用了兩種求解姿態(tài)的方法,一種為歐拉角法,一種為四元數(shù)法
(1)歐拉角法靜止?fàn)顟B(tài),或者總加速度只是稍微大于g時(shí),由加計(jì)算出的值比較準(zhǔn)確。
使用歐拉角表示姿態(tài),令Φ,θ和Φ代表ZYX 歐拉角,分別稱為偏航角、俯仰角和橫滾角。載體坐標(biāo)系下的 加 速 度(axB,ayB,azB)和參考坐標(biāo)系下的加速度(axN, ayN, azN)之間的關(guān)系可表示為(1)。其中 c 和 s 分別代表 cos 和 sin。axB,ayB,azB就是mpu讀出來(lái)的三個(gè)值。
這個(gè)矩陣就是三個(gè)旋轉(zhuǎn)矩陣相乘得到的,因?yàn)榫仃嚨某朔梢员硎拘D(zhuǎn)。
c?c??axB???ayB????c?s??s?s?c? ?????azB????s?s??c?s?c?c?s?c?c??s?s?s??s?c??c?s?s??s???axN??ayN?(1)s?c?????c?c?????azN???axN??0??????ayN???0?(2)?a????zN??g?飛行器處于靜止?fàn)顟B(tài),此時(shí)參考系下的加速度等于重力加速度,即
把(2)代入(1)可以解的
??arctg(axBa?a2yB2zB)(3)
??arctg??ayB??(4)?azB?即為初始俯仰角和橫滾角,通過(guò)加速度計(jì)得到載體坐標(biāo)系下的加速度即可將其解出,偏航角可以通過(guò)電子羅盤求出。
(2)四元數(shù)法(通過(guò)處理單位采樣時(shí)間內(nèi)的角增量(mpu的陀螺儀得到的就是角增量),為了避免噪聲的微分放大,應(yīng)該直接用角增量-------抄的書(shū))
上匿名的程序
void IMUupdate(float gx, float gy, float gz, float ax, float ay, float az){
float norm;// float hx, hy, hz, bx, bz;
float vx, vy, vz;// wx, wy, wz;
float ex, ey, ez;
// 先把這些用得到的值算好
float q0q0 = q0*q0;
float q0q1 = q0*q1;
float q0q2 = q0*q2;// float q0q3 = q0*q3;
float q1q1 = q1*q1;// float q1q2 = q1*q2;
float q1q3 = q1*q3;
float q2q2 = q2*q2;
float q2q3 = q2*q3;
float q3q3 = q3*q3;
if(ax*ay*az==0)
return;
norm = sqrt(ax*ax + ay*ay + az*az);
//acc數(shù)據(jù)歸一化
ax = ax /norm;
ay = ay / norm;
az = az / norm;
// estimated direction of gravity and flux(v and w)
vx = 2*(q1q3q1q1az*vy);
//向量外積在相減得到差分就是誤差
ey =(az*vxay*vx);
exInt = exInt + ex * Ki;
//對(duì)誤差進(jìn)行積分
eyInt = eyInt + ey * Ki;
ezInt = ezInt + ez * Ki;
// adjusted gyroscope measurements
gx = gx + Kp*ex + exInt;
//將誤差PI后補(bǔ)償?shù)酵勇輧x,即補(bǔ)償零點(diǎn)漂移
gy = gy + Kp*ey + eyInt;
gz = gz + Kp*ez + ezInt;
//這里的gz由于沒(méi)有觀測(cè)者進(jìn)行矯正會(huì)產(chǎn)生漂移,表現(xiàn)出來(lái)的就是積分自增或自減
// integrate quaternion rate and normalise
//四元素的微分方程
q0 = q0 +(-q1*gxq3*gz)*halfT;
q1 = q1 +(q0*gx + q2*gzq1*gz + q3*gx)*halfT;
q3 = q3 +(q0*gz + q1*gy2 * q3* q3 + 1)* 57.3;// yaw
Q_ANGLE.Y = asin(-2 * q1 * q3 + 2 * q0* q2)* 57.3;// pitch
Q_ANGLE.X = atan2(2 * q2 * q3 + 2 * q0 * q1,-2 * q1 * q1q0q2);
/
vy = 2*(q0q1 + q2q3);
vz = q0q0q2q2 + q3q3;可以看到vx,vy,vz為CRb的最后一列的三項(xiàng),四元數(shù)矩陣帶入(1)式得vx,vy,vz分別是axB,ayB,azB每一項(xiàng)g前的系數(shù)。且靜止情況下vx,vy,vz組成向量模長(zhǎng)基本可以認(rèn)為為1.3.norm = sqrt(ax*ax + ay*ay + az*az);
//acc數(shù)據(jù)歸一化
ax = ax /norm;
ay = ay / norm;
az = az / norm;以上已說(shuō),由四元數(shù)倒推回去的加速度,向量模長(zhǎng)為1,為了比較誤差進(jìn)行歸1化,算的由加計(jì)得出的向量。4.ex =(ay*vzax*vz);
ez =(ax*vyq2*gyq3*gy)*halfT;
q2 = q2 +(q0*gyq2*gx)*halfT;對(duì)四元數(shù)進(jìn)行跟新,這里用的是方程的數(shù)值解法,求得的解釋近似解,總之就是跟新了四元數(shù) 8.
norm = sqrt(q0*q0 + q1*q1 + q2*q2 + q3*q3);
q0 = q0 / norm;
q1 = q1 / norm;
q2 = q2 / norm;
q3 = q3 / norm;對(duì)四元數(shù)進(jìn)行規(guī)范化,即化為模長(zhǎng)為1,因?yàn)橹挥幸?guī)范化的四元數(shù)才能表示剛體旋轉(zhuǎn)。9.
Q_ANGLE.Y = asin(-2 * q1 * q3 + 2 * q0* q2)* 57.3;// pitch
Q_ANGLE.X = atan2(2 * q2 * q3 + 2 * q0 * q1,-2 * q1 * q1ACC_OFFSET.X;MPU6050_ACC_LAST.Y=((((int16_t)mpu6050_buffer[2])<< 8)| mpu6050_buffer[3])ACC_OFFSET.Z;MPU6050_GYRO_LAST.X=((((int16_t)mpu6050_buffer[8])<< 8)| mpu6050_buffer[9])GYRO_OFFSET.Y;MPU6050_GYRO_LAST.Z=((((int16_t)mpu6050_buffer[12])<< 8)| mpu6050_buffer[13])-GYRO_OFFSET.Z;
這里還要說(shuō)一點(diǎn),這里加速計(jì)的數(shù)據(jù)用的是滑動(dòng)平均值濾波法 void Prepare_Data(void){ static uint8_t filter_cnt=0;int32_t temp1=0,temp2=0,temp3=0;uint8_t i;
MPU6050_Read();MPU6050_Dataanl();
ACC_X_BUF[filter_cnt] = MPU6050_ACC_LAST.X;ACC_Y_BUF[filter_cnt] = MPU6050_ACC_LAST.Y;ACC_Z_BUF[filter_cnt] = MPU6050_ACC_LAST.Z;for(i=0;i temp1 += ACC_X_BUF[i]; temp2 += ACC_Y_BUF[i]; temp3 += ACC_Z_BUF[i];} ACC_AVG.X = temp1 / FILTER_NUM;ACC_AVG.Y = temp2 / FILTER_NUM;ACC_AVG.Z = temp3 / FILTER_NUM;filter_cnt++;if(filter_cnt==FILTER_NUM)filter_cnt=0; GYRO_I.X += MPU6050_GYRO_LAST.X*Gyro_G*0.0001;GYRO_I.Y += MPU6050_GYRO_LAST.Y*Gyro_G*0.0001;GYRO_I.Z += MPU6050_GYRO_LAST.Z*Gyro_G*0.0001;} 資料在附帶文件中。 一、談話導(dǎo)入。 師:上節(jié)課我們學(xué)習(xí)了怎樣制作自轉(zhuǎn)旋翼,這節(jié)課我們接著來(lái)研究一些有趣的問(wèn)題(板書(shū)課題)。 二、活動(dòng)探究。 1、放飛自轉(zhuǎn)旋翼。 學(xué)生分組讓自己的自轉(zhuǎn)旋翼飛起來(lái)。 2、學(xué)生在觀察后說(shuō)一說(shuō):剛才我們放飛的自轉(zhuǎn)旋翼在下降時(shí)有什么不同? 學(xué)生交流。 3、請(qǐng)兩名同學(xué)將自己的自轉(zhuǎn)旋翼給大家演示一下? 學(xué)生觀察后回答:哪個(gè)在空中停留的時(shí)間更長(zhǎng)呢?(學(xué)生說(shuō))為什么這個(gè)旋翼會(huì)下降得慢一些呢?我們一起來(lái)觀察一下。 4、(把兩個(gè)旋翼擺放到展臺(tái)上)學(xué)生認(rèn)真觀察兩個(gè)自轉(zhuǎn)旋翼,試著找出它們的不同。 學(xué)生說(shuō)一說(shuō)他們的不同。 5、討論:你們認(rèn)為影響自轉(zhuǎn)旋翼下降快慢的因素有哪些呢? 師:這些是我們做出的猜想。我們?cè)鯓硬拍苤肋@些猜想對(duì)不對(duì)呢?(驗(yàn)證) 6、小組討論怎樣進(jìn)行驗(yàn)證。 代表匯報(bào)。 7、小組實(shí)驗(yàn)驗(yàn)證。(學(xué)生分組驗(yàn)證,老師巡視指導(dǎo)) 8、驗(yàn)證結(jié)束以后,請(qǐng)每個(gè)小組先在小組內(nèi)部交流,然后派出兩個(gè)代表帶著制作的旋翼和研究的結(jié)果上臺(tái)演示交流。(學(xué)生交流的同時(shí)補(bǔ)充板書(shū)) 三、總結(jié)評(píng)價(jià)。 教師引導(dǎo)學(xué)生對(duì)各組的學(xué)習(xí)情況進(jìn)行評(píng)價(jià)。第五篇:科學(xué)三年級(jí)自轉(zhuǎn)旋翼教學(xué)設(shè)計(jì)