根據(jù)四旋翼的運(yùn)動調(diào)節(jié)方式將四旋翼無人機(jī)劃分為四種基本的飛行控制方式。
(1)垂直飛行控制;
(2)橫滾控制;
(3)俯仰控制;
(4)偏航控制。
垂直飛行控制 | 垂直飛行控制主要是控制飛機(jī)的爬升、下降和懸停(上圖)。四旋翼處于水平位置,在垂直方向慣性坐標(biāo)系同機(jī)體坐標(biāo)系重合。同時(shí)增加或減小四個旋翼的轉(zhuǎn)速,旋翼產(chǎn)生升力使得四旋翼上升某一飛行高度。懸停時(shí),保持四個旋翼的轉(zhuǎn)速相等,產(chǎn)生的合推力與重力相平衡,從而四旋翼在某一高度處于相對靜止?fàn)顟B(tài),姿態(tài)角為零。垂直飛行控制的關(guān)鍵是要穩(wěn)定四個旋翼的轉(zhuǎn)速,保持一致的變化量。 |
橫滾控制 | 橫滾控制通過增加左邊旋翼轉(zhuǎn)速,使拉力增大,相應(yīng)減小右邊旋翼轉(zhuǎn)速,使拉力減小,同時(shí)保持其它兩個旋翼轉(zhuǎn)速不變。這樣由于存在拉力差,機(jī)身會俯仰傾斜,從而使旋翼拉力產(chǎn)生水平分量,向右運(yùn)動。?2=?4時(shí)可控制四旋翼作側(cè)向平飛運(yùn)動。 |
俯仰控制 | 俯仰控制在保持左右兩個旋翼速度不變的情況下,增加上面旋翼的轉(zhuǎn)速,并相應(yīng)減小下面旋翼的轉(zhuǎn)速,使得上下兩面存在著拉力差,從而引起機(jī)身的傾斜,產(chǎn)生側(cè)向的旋翼拉力,因此四旋翼做側(cè)向飛行。 |
偏航控制 | 偏航控制四旋翼為了克服反扭矩影響,四個旋翼中的兩個順時(shí)針轉(zhuǎn),兩個逆時(shí)針轉(zhuǎn),且對角線上的兩個旋翼轉(zhuǎn)動方向相同。反扭矩的大小與旋翼轉(zhuǎn)速有關(guān),當(dāng)四個旋翼轉(zhuǎn)速不完全相同時(shí),不平衡的反扭矩會引起四旋翼轉(zhuǎn)動。同時(shí)增加一對同方向旋轉(zhuǎn)的旋翼轉(zhuǎn)速并減小另一對按相反方向旋轉(zhuǎn)的電機(jī)轉(zhuǎn)速,且轉(zhuǎn)速增加的旋翼轉(zhuǎn)動方向與四旋翼機(jī)身轉(zhuǎn)動方向相反。中心控制模塊即飛行控制系統(tǒng)的核心處理器,作為整個系統(tǒng)的核心控制部分,主要負(fù)責(zé)采集傳感器檢測的姿態(tài)角速率(俯仰角速率、橫滾角速率和偏航角速率)、三軸的線加速度和航向信息并實(shí)時(shí)計(jì)算;根據(jù)檢測的飛行信息,結(jié)合既定的控制命令改變飛行狀態(tài)和下傳飛行狀態(tài)數(shù)據(jù)。 |
以四軸,X形狀為例。為方便說明,把電機(jī)進(jìn)行編號, 右下為9號,右上為10號,左下為11,左上為3號電機(jī)。
1、飛行器保持懸停,4個電機(jī)的轉(zhuǎn)速保持一致,來使飛行器保持水平。
四個電機(jī)的轉(zhuǎn)速=懸停油門。
2、當(dāng)我們希望飛行器向右飛的時(shí)候,我們設(shè)定在第一種情況的基礎(chǔ)上,增加左邊兩個電機(jī)(3,11)的轉(zhuǎn)速,減小右邊兩個電機(jī)(9,10)的轉(zhuǎn)速。
9號電機(jī)=懸停油門 - 右傾的量;
10號電機(jī)= 懸停油門 - 右傾的量;
11號電機(jī) = 懸停油門 + 右傾的量;
3號電機(jī)= 懸停油門 + 右傾的量;
3、當(dāng)我們希望飛行器向左飛的時(shí)候,上面公式依然成立,只不過右傾的量是負(fù)數(shù)了。
4、當(dāng)我們希望飛行器向前飛的時(shí)候,我們要增加后面一組電機(jī)(11,9)的轉(zhuǎn)速,減小前面一組電機(jī)(3,10)的轉(zhuǎn)速。
9號電機(jī)=懸停油門 + 前飛的量;
10號電機(jī)= 懸停油門 - 前飛的量;
11號電機(jī) = 懸停油門 + 前飛的量;
3號電機(jī)= 懸停油門 - 前飛的量;
5、飛行器向后飛的情況,上面公式依然成立,前飛的量為負(fù)數(shù)。
6、當(dāng)我們希望飛行器順時(shí)針旋轉(zhuǎn), 我們增加10號,11號 對角線兩個電機(jī)的轉(zhuǎn)速,減小3號,9號這條對角線電機(jī)的轉(zhuǎn)速。
9號電機(jī)=懸停油門 - 旋轉(zhuǎn)的量;
10號電機(jī)= 懸停油門 + 旋轉(zhuǎn)的量;
11號電機(jī) = 懸停油門 + 旋轉(zhuǎn)的量;
3號電機(jī)= 懸停油門 - 旋轉(zhuǎn)的量;
7、當(dāng)我們希望飛行器逆時(shí)針旋轉(zhuǎn), 我們減小10號,11號對角線兩個電機(jī)的轉(zhuǎn)速,增加3號,9號這條對角線電機(jī)的轉(zhuǎn)速。繼續(xù)使用上面的公式。
8、最后,針對一個電機(jī),它同時(shí)要負(fù)責(zé)前后左右和旋轉(zhuǎn)的情況, 那它就疊加了4種情況下的值:
9號電機(jī) = 懸停油門 - 右傾的量 + 前飛的量 - 旋轉(zhuǎn)的量;
10號電機(jī) = 懸停油門 - 右傾的量 - 前飛的量 + 旋轉(zhuǎn)的量;
11號電機(jī) = 懸停油門 + 右傾的量 + 前飛的量 + 旋轉(zhuǎn)的量;
3號電機(jī) = 懸停油門 + 右傾的量 - 前飛的量 - 旋轉(zhuǎn)的量。
所以實(shí)現(xiàn)代碼如下:
#define PIDMIX(X,Y,Z) rcCommand[THROTTLE] + axisPID[ROLL]*X + axisPID[PITCH]*Y + YAW_DIRECTION * axisPID[YAW]*Z
#ifdef QUADX
motor[0] = PIDMIX(-1,+1,-1); //REAR_R
motor[1] = PIDMIX(-1,-1,+1); //FRONT_R
motor[2] = PIDMIX(+1,+1,+1); //REAR_L
motor[3] = PIDMIX(+1,-1,-1); //FRONT_L
#endif
一切對稱、不對稱的多旋翼布局都基于此理論,可以參考上述說明推導(dǎo)出來。
2025-08-26 13:48
2025-08-21 12:57
2025-08-19 12:55
2025-08-11 22:18
2025-08-09 13:51
2025-08-08 09:59
2025-08-08 09:57
2025-08-07 09:35
2025-08-05 16:54
2025-08-05 16:41