Skye無人機刷Betaflight詳細圖文教程

前言

首先十分感謝B站TASKBL up主的視頻教程以及他的耐心指導,視頻鏈接https://www.bilibili.com/video/BV1gE411V7RN。整個改造過程耗時三天,現把改造過程以及遇到的一些問題記錄下來。

1.材料清單

ST-LINK V2下載器、USB數據線、電烙鐵、杜邦線及插針若干。

2.電路改造

拆下5顆固定螺絲,用電烙鐵焊除4根電源線,取下整塊電路板。

主板底面需要拆除一顆8腳芯片——SN65HVD232D,因其會影響USB燒寫,然後如圖將其中四個引腳引出,其中

USB_DP——USB數據線綠線

GND      ——USB數據線黑線

VCC      ——USB數據線紅線

USB_DP——USB數據線綠線

可以採用4P接口,方便拆裝操作,USB數據線與電腦連接進行調試。

下一步去除圖中4顆螺絲,拆開主板正面對應的小黑塊(小心排線),去除裏面的加熱片,因爲刷完BF之後其會一直加熱燒壞芯片。拆除之後可用熱熔膠或者704硅橡膠把裏面填充一下。

 SN65HVD232D封裝圖如下

 

3.燒寫Betaflight固件

硬件改造完成後,就可以開始往主控裏燒寫程序啦~

將ST-LINK下載器的引腳與SWD下載接口連接,對應關係如圖所示。

將下載器插入電腦,打開STM32 ST-LINK Utility軟件,點擊連接;

相關資料下載鏈接https://pan.baidu.com/s/1HTZUcf7GND3u7nu0Bez0Eg
提取碼:lw5f 

 

點擊Target》Program...;

 打開Betaflight固件hex文件(在網盤鏈接文件中),點擊燒寫。這裏筆者使用的是4.0.0固件,高版本的固件無法啓動筆者的電機,不知其他機器如何。

燒寫完成就可以將ST-LINK斷開連接了,進入下一步Betaflight設置。

4.Betaflight飛控設置

打開Betaflight Configurator調參軟件,將之前接好的USB數據線連接電腦,選擇對應端口,點擊連接;

沒有開始設置之前是這樣的界面,主控沒有識別到傳感器,所以需要進行CLI命令行調試。

Image

點擊CLI(命令行),將下面的命令粘貼,回車執行命令,之後輸入save,回車保存配置;

CLI命令段: 

# start the command batch
batch start

board_name STM32F405
manufacturer_id STM32F

# name: STM32F

# resources
resource MOTOR 1 B06
resource MOTOR 2 B09
resource MOTOR 3 B08
resource MOTOR 4 B07
resource SERIAL_TX 1 A09
resource SERIAL_TX 2 A02
resource SERIAL_TX 4 A00
resource SERIAL_TX 6 C06
resource SERIAL_RX 1 A10
resource SERIAL_RX 1 A10
resource SERIAL_RX 4 A01
resource SERIAL_RX 5 D02
resource I2C_SCL 2 B10
resource I2C_SDA 2 B11
resource LED 1 A08
resource BEEPER 1 B05
resource SPI_SCK 1 A05
resource SPI_SCK 2 B13
resource SPI_SCK 3 C10
resource SPI_MISO 1 A06
resource SPI_MISO 2 B14
resource SPI_MISO 3 C11
resource SPI_MOSI 1 A07
resource SPI_MOSI 2 B15
resource SPI_MOSI 3 C12
resource ADC_BATT 1 C02
resource ADC_CURR 1 C01
resource BARO_CS 1 A15
resource FLASH_CS 1 B12
resource GYRO_EXTI 1 C07
resource GYRO_CS 1 B12
# master
set gyro_lowpass2_hz = 300
set dyn_lpf_gyro_min_hz = 240
set dyn_lpf_gyro_max_hz = 600
set acc_calibration = -34,198,-36,1
set mag_spi_device = 1
set mag_hardware = NONE
set baro_spi_device = 3
set mid_rc = 1520
set min_check = 1200
set rc_smoothing_derivative_type = BIQUAD
set serialrx_provider = SBUS
set adc_device = 2
set blackbox_p_ratio = 4
set min_throttle = 900
set motor_pwm_protocol = OFF
set failsafe_throttle = 1100
set failsafe_procedure = AUTO-LAND
set current_meter = ADC
set current_meter = ADC
set battery_meter = ADC
set beeper_inversion = ON
set beeper_od = OFF
set yaw_motors_reversed = ON
set deadband = 2
set yaw_deadband = 2
set pid_process_denom = 16
set system_hse_mhz = 8
set dashboard_i2c_bus = 1
set flash_spi_bus = 2
set gyro_1_bustype = SPI
set gyro_1_spibus = 2
set gyro_1_sensor_align = CW0FLIP
set gyro_1_align_pitch = 1800

profile 0

# profile 0
set dyn_lpf_dterm_min_hz = 84
set dyn_lpf_dterm_max_hz = 204
set dterm_lowpass2_hz = 180
set dterm_lowpass2_hz = 180
set acro_trainer_angle_limit = 25
set p_pitch = 110
set i_pitch = 135
set d_pitch = 92
set f_pitch = 171
set p_roll = 101
set i_roll = 128
set d_roll = 84
set f_roll = 162
set p_yaw = 72
set i_yaw = 135
set f_yaw = 144
set d_min_roll = 48
set d_min_pitch = 53

rateprofile 0

# rateprofile 0
set roll_rc_rate = 95
set pitch_rc_rate = 95
set yaw_rc_rate = 95
set roll_expo = 10
set pitch_expo = 10
set yaw_expo = 10
set roll_srate = 10
set pitch_srate = 10
set yaw_srate = 10

save

現在就可以識別到傳感器了,更多命令可以參考https://github.com/betaflight/betaflight

將無人機水平放置,點擊校準加速度計進行調平;

端口設置裏面,設置UART4波特率,啓動UART5串行數字接收機(與SBUS接收機通信);

配置界面中,設置混控類型爲Quad X 1234並打開反轉電機轉向,這樣才與無人機的電機轉向匹配;

電調協議爲PWM,打開MOTOR_STOP,防止啓動時發生意外;

接收機選擇串行數字接收機,協議選擇SBUS;

PID參數按照默認即可,飛行很穩定; 

 Rate參數可按圖中設置,使遙控器撥杆沒有那麼靈活,這款無人機較重不需要過大角度反饋;

進入接收機界面,撥動搖桿,可以看到對應通道值的變化,搖桿低位閾值要設置的比油門最小值大一些,否則無法解鎖;

設置解鎖通道和自穩開關,對於新手來說一定要打開自穩開關,否則飛機很難控制; 

其他模式可以自行摸索,這裏給出一些說明(摘自http://www.5imx.com/forum.php?mod=viewthread&page=1&tid=1252868

    Horizon Mode (水平模式) :也是自穩模式,但是可以翻滾,感覺上和玩具的一建翻滾差不多。
    Acro Mode或者Rate mode (手動模式或者比率模式) :根據遙控器杆的輸入進行相應比率的動作。真正意義 上的飛行模式就以上三種:角度模式、水平模式、手動模式,其他均爲輔助飛行的模式。
    Beeper (蜂鳴器) :當你的通道輸出某個值時,蜂鳴器會發聲,如果設置了電調的話,電調也會發聲。
    Airmode (空中模式) :當油門]打到最低時,還可以控制飛機。如果配置表中勾選了即默認開啓,並且在模式列表中隱藏。
    Anti-Gravity (反重力模式) :1 飛行時模擬無重力。 通過檢測油門]變化來實時干預PID參數中的|值運算,提供大機動大油門狀態下的飛機l值的穩定性。
    一般來說Airmode和Anti-Gravity默認開啓, 增加飛行的順滑。
    Blackbox Start/Erase (黑匣子開啓/清除) :名字很明顯了。
    Camera Control 1, 2, 3 (相機控制) : 基本用不到,沒描述。
    OSD Disable SW (OSD顯示去除鍵) :去除屏幕上的OSD顯示。
    Pre-arm (預解鎖) :爲了防止解鎖鍵誤按,多設置一個開關鍵, 解鎖後可以關掉。
    Flip Over After Crash (反烏龜) :炸機後翻身,需要支持Dshot的電調。
    VTX Pit Mode (圖傳降功率) :圖傳功率將會降到接近0,爲了防止干擾其他玩家。需要圖傳支持OSD調參,並設置好。
    Failsafe (失控保護) :手動進入失控保護,而不用等遙控器失控。需Betaflight另設置失控保護。
    FPV angle mix (攝像頭角度補償) :簡單的來說,就是穿越機的攝像頭-般都是朝上一 個角度。這個攝像機角度軸線和機身軸線有一個角度。如果飛機以機身角度橫滾,那麼從你的攝像頭裏面看出去會混合一個俯仰角度進去, 因爲兩個軸線不重合。
    Baro或alt hold (定高模式) :也就是barometer (氣壓計)的意思,使用氣壓計定高。
    Telemetry (遙控信號) :資料找不到Headfree (無頭模式或簡單模式) :當機頭朝某個方向解鎖,則方向杆向上打則是飛往那個指向,此時打油方向杆機頭會轉動,但方向杆向上打還是往那個方向飛。
    Headadj (頭調整模式或超級簡單模式) :不管機頭往哪個方向朝,向杆向上打則是往你起飛點遠處飛,向上打則是往你起飛點飛。(好像要GPS ,我只試過apm飛K控)Paralyze (癱瘓模式) :團隊賽時,使用備用機,同時爲了防止解鎖墜毀的飛機。當在鎖定時
    可以啓動,啓動後關閉模式改變、圖傳改成不常用頻段且低功率輸出、關閉遙控信號。解鎖時
    會檢測癱瘓模式是否開啓。
    Acro trainer (手動模式練習) :和手動模式-樣,但是有角度限制,新手可以慢慢加大限制角度。

不裝螺旋槳的情況下,打開我已瞭解風險,上電拖動滑塊,對應通道的電機即可旋轉。用手輕觸電機側面,判斷電機轉向是否與軟件中相同;

所有設置已經完成了,現在即可試飛啦~ 

5.更換遙控器方法

官方說原裝遙控器只能遙控200m,所以筆者更換了其他遙控器。取下原裝接收機,如圖引出主控的SBUS引腳;

按照下圖焊接取反電路,即可實現對接其他遙控器。 好像軟件也可以取反,但是4.0.0固件不支持,更高版本的固件可以嘗試執行這個命令,如果可以執行則不用硬件取反了。


set sbus_inversion = OFF

 

如圖爲3.3V焊點,5V電壓可以使用L7805將電源降壓獲得。

6.焊接蜂鳴器

這一步可跳過,不影響實際飛行,只是方便飛手判斷飛控狀態。但是這一步焊接需要一定的焊功,引腳很容易粘連,一定要使用尖頭烙鐵!筆者就差一點翻車。如圖焊接蜂鳴器電路即可。

STM32F405RGT6主控的引腳封裝及資源使用如下:

---------------------------------------------------------------------

相關資料下載

鏈接:https://pan.baidu.com/s/1HTZUcf7GND3u7nu0Bez0Eg
提取碼:lw5f 

最後再次感謝B站TASKBL up主提供的支持與幫助!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章