張立
(河南工業(yè)貿(mào)易職業(yè)學(xué)院,河南 鄭州450000)
作為可以在空中自主飛行的飛行器,四旋翼無(wú)人機(jī)通過(guò)接受來(lái)自地面站的控制信息完成各種飛行動(dòng)作。近年來(lái)微電子技術(shù)以及控制理論的成熟為四旋翼無(wú)人機(jī)的發(fā)展提供了技術(shù)基礎(chǔ),越來(lái)越多的科研人員開(kāi)始展開(kāi)了對(duì)四旋翼無(wú)人機(jī)的研究,并且在很多關(guān)鍵技術(shù)上取得了突破。目前針對(duì)四旋翼無(wú)人機(jī)控制系統(tǒng)的設(shè)計(jì)主要有PID 控制算法、反步控制算法、滑??刂扑惴āQR 控制算法、自適應(yīng)控制算法等。本文首先基于運(yùn)動(dòng)學(xué)和動(dòng)力學(xué)的知識(shí)建立四旋翼無(wú)人機(jī)的數(shù)學(xué)模型,然后基于串級(jí)PID 控制算法為四旋翼無(wú)人機(jī)設(shè)計(jì)控制器,最后利用實(shí)驗(yàn)飛行平臺(tái)以及MATLAB 仿真平臺(tái)驗(yàn)證所設(shè)計(jì)控制器的有效性。
四旋翼無(wú)人機(jī)通過(guò)控制安裝在兩個(gè)垂直機(jī)架上四個(gè)電機(jī)的轉(zhuǎn)速來(lái)控制不同電機(jī)對(duì)無(wú)人機(jī)的升力,從而實(shí)現(xiàn)對(duì)無(wú)人機(jī)姿態(tài)的控制。四旋翼無(wú)人機(jī)的飛行姿態(tài)包括懸停、俯仰、橫滾、偏航這四種。當(dāng)四個(gè)旋翼的轉(zhuǎn)速相等的時(shí)候它們對(duì)機(jī)體的合扭矩作用為零,通過(guò)控制每個(gè)旋翼的旋轉(zhuǎn)速度從而改變升力,使旋翼旋轉(zhuǎn)產(chǎn)生的升力等于無(wú)人機(jī)自身的重力,此時(shí)無(wú)人機(jī)處于懸停狀態(tài)。通過(guò)控制兩個(gè)不同機(jī)架上的兩組電機(jī)實(shí)現(xiàn)不同的轉(zhuǎn)速,從而對(duì)機(jī)體產(chǎn)生扭矩的作用實(shí)現(xiàn)對(duì)四旋翼無(wú)人機(jī)的偏航動(dòng)作。當(dāng)使四旋翼無(wú)人機(jī)其中一個(gè)機(jī)架上的兩個(gè)電機(jī)的轉(zhuǎn)速保持不變,另外一個(gè)機(jī)架上的兩個(gè)電機(jī)的轉(zhuǎn)速分別一個(gè)增加、另一個(gè)減小,從而實(shí)現(xiàn)對(duì)四旋翼無(wú)人機(jī)俯仰和橫滾動(dòng)作的控制。
建立四旋翼無(wú)人機(jī)的數(shù)學(xué)模型首先要為描述四旋翼無(wú)人機(jī)的姿態(tài)選擇合適的坐標(biāo)系。在本設(shè)計(jì)中,為了描述四旋翼無(wú)人機(jī)的姿態(tài)信息以及位置信息,用到了機(jī)體坐標(biāo)系和地面坐標(biāo)系兩種坐標(biāo)系。姿態(tài)是指四旋翼無(wú)人機(jī)機(jī)體坐標(biāo)系相對(duì)于參考坐標(biāo)系各個(gè)軸的旋轉(zhuǎn)角度,分別是俯仰角(pitch)、橫滾角(roll)、以及偏航角(yaw)?,F(xiàn)給出從機(jī)體坐標(biāo)系到空間坐標(biāo)系的坐標(biāo)變換公式。
在這里我們定義四個(gè)電機(jī)所產(chǎn)生的總升力為T(mén)。在機(jī)體坐標(biāo)系中,機(jī)體所受的力總是垂直于機(jī)體平面向上的可以表示為T(mén),其中T 是四個(gè)電機(jī)的升力之和。根據(jù)坐標(biāo)變換公式則有:
由此得到位置坐標(biāo)的線性位移方程:
根據(jù)力矩平衡定理可以得到四旋翼無(wú)人機(jī)的角位移方程:
四旋翼無(wú)人機(jī)的控制本質(zhì)上是對(duì)無(wú)人機(jī)姿態(tài)的控制,根據(jù)各個(gè)傳感器測(cè)量的數(shù)據(jù)解算出四旋翼無(wú)人機(jī)的姿態(tài)角。在本設(shè)計(jì)中利用加速度傳感器解算出四旋翼無(wú)人機(jī)的橫滾角和俯仰角,利用磁力計(jì)解算出四旋翼無(wú)人機(jī)的偏航角。
完成了四旋翼無(wú)人機(jī)數(shù)學(xué)模型的建立以及姿態(tài)角信息的求解,本文利用串級(jí)PID 控制算法為四旋翼無(wú)人機(jī)設(shè)計(jì)控制器。在本設(shè)計(jì)中把四旋翼無(wú)人機(jī)動(dòng)力學(xué)模型改為狀態(tài)空間方程,從而更加方便的應(yīng)用PID 控制算法為四旋翼無(wú)人機(jī)飛控系統(tǒng)設(shè)計(jì)控制器??刂葡到y(tǒng)由兩個(gè)子系統(tǒng)構(gòu)成,其中一個(gè)為姿態(tài)子系統(tǒng),另一個(gè)為位移子系統(tǒng)。其中四旋翼無(wú)人機(jī)的姿態(tài)角φ、θ、Ψ 作為姿態(tài)子系統(tǒng)的被控量,U2、U3、U4 作為姿態(tài)子系統(tǒng)的輸入量。沿坐標(biāo)軸的三個(gè)位移x、y、z 作為位移子系統(tǒng)的被控量,三個(gè)姿態(tài)角輸出和U1 作為姿態(tài)子系統(tǒng)的輸入量。其中位移子系統(tǒng)的控制受姿態(tài)子系統(tǒng)的影響,這也驗(yàn)證了四旋翼無(wú)人機(jī)的耦合性。
分析四旋翼無(wú)人機(jī)狀態(tài)空間方程可知,對(duì)姿態(tài)子系統(tǒng)以及位移子系統(tǒng)的控制是控制器完成的主要工作。其中姿態(tài)子系統(tǒng)受U2、U3 的影響,位移子系統(tǒng)不但受控制量U1 影響,還受到姿態(tài)子系統(tǒng)輸出的影響。無(wú)人機(jī)的所有飛行動(dòng)作包括懸停、上升、下降、俯仰、橫滾、偏航及懸停。其中最為基本的動(dòng)作是懸停,四旋翼無(wú)人懸停動(dòng)作是其它所有動(dòng)作實(shí)現(xiàn)的前提和基礎(chǔ)。通過(guò)上述分析,本設(shè)計(jì)采用如圖1 所示的控制器結(jié)構(gòu)實(shí)現(xiàn)對(duì)無(wú)人機(jī)的控制。
圖1 控制器結(jié)構(gòu)
由所設(shè)計(jì)的四旋翼無(wú)人機(jī)飛行控制系統(tǒng)的結(jié)構(gòu)圖可知,四旋翼無(wú)人機(jī)姿態(tài)控制環(huán)以及高度控制環(huán)是各自獨(dú)立的,而四旋翼無(wú)人機(jī)位置信息的變化受姿態(tài)信息的影響。因此,在設(shè)計(jì)控制器的時(shí)候,位置子系統(tǒng)和姿態(tài)子系統(tǒng)的刷新頻率應(yīng)該設(shè)定成不同的值,使位置子系統(tǒng)的刷新頻率值低于姿態(tài)子系統(tǒng)的刷新頻率值。本文所設(shè)計(jì)的四旋翼無(wú)人機(jī)控制器都是基于此控制結(jié)構(gòu)的。
本文中為四旋翼無(wú)人機(jī)設(shè)計(jì)了串級(jí)PID 控制器,其中內(nèi)環(huán)采用角速度PID 控制器,這種設(shè)計(jì)的優(yōu)勢(shì)在于和單環(huán)PID 控制器相比本文所設(shè)計(jì)的控制器有更好的穩(wěn)定性和可靠性。本文所設(shè)計(jì)的系統(tǒng)PID 控制器總體結(jié)構(gòu)框圖如圖2 所示。
圖2 系統(tǒng)PID 控制器總體結(jié)構(gòu)框圖
利用Simulink 仿真平搭建了四旋翼無(wú)人機(jī)的仿真模型。在Simulink 仿真模型中把俯仰角、橫滾角、偏航角的目標(biāo)值設(shè)定為0,高度的目標(biāo)值設(shè)定為1m。圖3-5 為四旋翼無(wú)人機(jī)的懸停動(dòng)作仿真結(jié)果。
圖3 橫滾角仿真結(jié)果
圖4 俯仰角仿真結(jié)果
圖5 偏航角仿真結(jié)果
仿真結(jié)果表明,本文所設(shè)計(jì)的PID 控制器可以使四旋翼無(wú)人機(jī)有較好的懸停狀態(tài),系統(tǒng)所用調(diào)節(jié)時(shí)間短、靜態(tài)誤差小,從而證明了所設(shè)計(jì)的控制器有較好的控制效果。
本文主要研究了基于串級(jí)PID 控制算法的四旋翼無(wú)人機(jī)控制系統(tǒng)的設(shè)計(jì)。首先建立了四旋翼無(wú)人機(jī)的數(shù)學(xué)模型,然后基于所建立的數(shù)學(xué)模型以及串級(jí)PID 控制算法給四旋翼無(wú)人機(jī)設(shè)計(jì)了控制器,并為控制器確定了合適的控制參數(shù),最后利用simulink 仿真平臺(tái)驗(yàn)證了所設(shè)計(jì)控制器的有效性。