STM32
直播中

663593

12年用户 557经验值
私信 关注
[问答]

改造Skye无人机刷Betaflight遇到了哪些问题

改造Skye无人机刷Betaflight遇到了哪些问题?有什么解决办法吗?

回帖(1)

王梅

2021-10-14 15:36:18
  1.材料清单
  ST-LINK V2下载器、USB数据线、电烙铁、杜邦线及插针若干。
  2.电路改造
  拆下5颗固定螺丝,用电烙铁焊除4根电源线,取下整块电路板。
  主板底面需要拆除一颗8脚芯片——SN65HVD232D,因其会影响USB烧写,然后如图将其中四个引脚引出,其中
  USB_DP——USB数据线绿线
  GND ——USB数据线黑线
  VCC ——USB数据线红线(这里最好用AMS1117-3.3将USB的5V转为3.3V,因为芯片供电是2.6-3.6V)
  USB_DP——USB数据线绿线
  可以采用4P接口,方便拆装操作,USB数据线与电脑连接进行调试。
  下一步去除图中4颗螺丝,拆开主板正面对应的小黑块(小心排线),去除里面的加热片,因为刷完BF之后其会一直加热烧坏芯片。拆除之后可用热熔胶或者704硅橡胶把里面填充一下。
  SN65HVD232D封装图如下
  
  3.烧写Betaflight固件
  硬件改造完成后,就可以开始往主控里烧写程序啦~
  将ST-LINK下载器的引脚与SWD下载接口连接,对应关系如图所示。
  
  将下载器插入电脑,打开STM32 ST-LINK Utility软件,点击连接;
  
  
  点击Target》Program.。。;
  
  打开Betaflight固件hex文件(在网盘链接文件中),点击烧写。这里笔者使用的是4.0.0固件,高版本的固件无法启动笔者的电机,不知其他机器如何。
  
  烧写完成就可以将ST-LINK断开连接了,进入下一步Betaflight设置。
  4.Betaflight飞控设置
  打开Betaflight Configurator调参软件,将之前接好的USB数据线连接电脑,选择对应端口,点击连接;
  没有开始设置之前是这样的界面,主控没有识别到传感器,所以需要进行CLI命令行调试。
  点击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
  现在就可以识别到传感器了;
  将无人机水平放置,点击校准加速度计进行调平;
  端口设置里面,设置UART4波特率,启动UART5串行数字接收机(与SBUS接收机通信);
  配置界面中,设置混控类型为Quad X 1234并打开反转电机转向,这样才与无人机的电机转向匹配;
  电调协议为PWM,打开MOTOR_STOP,防止启动时发生意外;
  接收机选择串行数字接收机,协议选择SBUS;
  AIRMODE的作用是在零油门时依然能够维持飞机的姿态,但是会在飞机解锁后直接启动电机,建议开启。
  PID参数按照默认即可,飞行很稳定;
  Rate参数可按图中设置,使遥控器拨杆没有那么灵活,这款无人机较重不需要过大角度反馈;
  后来又调节的一套PID,只调整了横滚、俯仰的P和D值
  PID的作用概述:
  1、P产生响应速度和力度,是I和D的基础
  过小响应慢(虽然无震荡)
  过大会产生振荡且不断发散
  2、D抑制过冲和振荡,抵抗外界的突发干扰,阻止系统的突变。
  过小系统会过冲
  过大会减慢响应速度(虽然不引起过冲)
  3、I在有系统误差和外力作用时消除偏差、提高精度,同时也会增加响应速度,产生过冲
  过小时消除偏差的速度慢
  过大会产生振荡
  
  
  进入接收机界面,拨动摇杆,可以看到对应通道值的变化,摇杆低位阈值要设置的比油门最小值大一些,否则无法解锁;
  设置解锁通道和自稳开关,对于新手来说一定要打开自稳开关,否则飞机很难控制;
  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 (手动模式练习) :和手动模式-样,但是有角度限制,新手可以慢慢加大限制角度。 不装螺旋桨的情况下,打开我已了解风险,上电拖动滑块,对应通道的电机即可旋转。用手轻触电机侧面,判断电机转向是否与软件中相同。
  所有设置已经完成了,现在即可试飞啦~
  友情提醒:接非原装电池的话,只能2-3S电池,因为主板电压转换芯片耐压只有16V,4S电池会将其烧坏!
  解锁电机前要把油门按到最低,起飞时缓慢抬油门(因为原装遥控器油门是自动回中的)。
  5.更换遥控器方法
  官方说原装遥控器只能遥控200m,所以笔者更换了其他遥控器。取下原装接收机,如图引出主控的SBUS引脚;
  
  按照下图焊接取反电路,即可实现对接其他遥控器。
  
  如图为3.3V焊点,5V电压可以使用L7805将电源降压获得。
  6.焊接蜂鸣器
  这一步可跳过,不影响实际飞行,只是方便飞手判断飞控状态。但是这一步焊接需要一定的焊功,引脚很容易粘连,一定要使用尖头烙铁!笔者就差一点翻车。如图焊接蜂鸣器电路即可。
  
  7.原装电池改造
  STM32F405RGT6主控的引脚封装及资源使用如下:
  
举报

更多回帖

发帖
×
20
完善资料,
赚取积分