Betaflight支持使用可寻址LED灯带。可寻址LED灯带允许灯带中的每个LED被独立编程为互不相同的颜色。这比普通的RGB灯带要先进得多,因为普通RGB灯带中的每个LED都将显示相同的颜色。
LED灯带具有三个子模式:STATUS,RACE和BEACON。分别使用三个独立的与名称对应的LED配置文件来配置。可以从CLI、OSD的LED菜单或拨杆辅助通道(遥控器)更改所选的配置文件。请注意,使用遥控器的辅助通道做出的更改会覆盖其他方式所选择的LED配置文件。
该模式用于显示以下所有信息,即警告、指示、左右扫描等。
可寻址的LED的LED灯条可用于显示来自飞控的信息,当前支持以下功能:
- 最高支持32个LED。(可以支持更多的LED,只是需要进一步开发)
- 灯光指示当前Pitch/Roll摇杆位置
- 方向/指向灯
- 某一飞行模式下使用特定的灯光配色方案
- 电池低电压警告
- 辅助通道控制LED开/关
- GPS状态信息
- RSSI强度显示
- 电池电量显示
该模式将会把所有LED灯带都调成相同颜色,以用于竞赛。例如,根据灯带颜色来辨认飞机。LED灯带所有灯珠颜色都将保持相同且不再变化,不会显示其他信息。
该模式用于搜寻坠机的飞机,它每秒使所有LED变白一次。同样,在此模式下,LED灯带上不会显示其他信息。
- 开启专家模式 - 点击配置程序右上方“启用专家模式”按钮。
- 在“调整”页面内设置一个调整通道,以供切换LED灯带配置文件使用
- 启用“调整”。(“如果激活”)
- 选择用于更改LED配置文件的AUX通道。(“当通道”)
- 设置范围以覆盖所选AUX通道的整个范围。(“在指定范围时”)
- 对于该操作,选择“RC Rate 调整”。(“执行”)
这样操作意味着余下的设置将在CLI中进行配置,因为配置程序10.4.0及更早版本不支持在图形页面内开启LED配置文件选择。仅选择“ RC Rate 调整”是为了使接下来在CLI中的配置更容易一些。 - 选择“通过通道”以匹配上面选择的AUX通道。(“当通道”)。
- 保存
- 打开CLI并键入
adjrange
然后回车。 - 复制上面步骤2中配置的adjrange,并将其粘贴到命令窗口中。然后将通道范围后的“1”改为“30”,然后回车。键入save,并再次回车。现在将保存已配置的adjrange,并且飞控将重启。
- 在您的遥控器上配置对应的AUX通道。更改此通道之后,所选的LED灯带配置文件将在STATUS、RACE和BEACON之间切换,这样做时您应该会看到LED功能发生了变化。
- 打开CLI。
- 键入
get ledstrip_profile
并回车,以显示当前选择的LED配置文件。 - 键入
set ledstrip_profile = x
,其中x是配置文件的名称,可以是STATUS,RACE或BEACON,然后按回车键。 - 键入
save
并回车,以保存所选的LED配置文件。
- 在遥控器上以偏航向左、俯仰向上的杆位来激活OSD菜单。
- 使用俯仰杆移动至LED Strip菜单,然后横滚向右以进入菜单。
- 横滚向左可以用来返回上一页来配置STATUS和RACE配置文件,俯仰向上/向下可以用来更改颜色值。
- 横滚向左退到顶层菜单,然后选择“Save & Reboot”以完成切换。
- 打开CLI。
- 键入
get ledstrip_race_color
并回车,以显示当前RACE模式的颜色编号。 - 键入
set ledstrip_race_color = x
,其中X是颜色编号。 - 键入
save
并回车,以保存RACE模式的颜色。
当前仅支持有32个WS2811/WS2812灯珠的LED灯带。若灯珠数量超过32个,则仅会使用前32个LED灯珠。
需要使用800KHz信号和精准的时序才能控制WS2812灯珠,因此需要为LED焊盘配置专用的硬件计时器。
注意:并非所有WS2812芯片都使用相同的时序,有些批次使用的时序并不一样。
如果确实有需要的话,可由用户自定义所需的时序。
WS2811是一个连接到RGB灯珠上的LED驱动芯片。可以向其输入红-绿-蓝各8位的数据信号。(红、绿、蓝各8位)
WS2812则是5050(或3535)灯珠中集成LED驱动芯片,而不是两者各自作为独立设备。可以向其输入绿-红-蓝各8位的数据信号。
因此,根据LED灯带使用的芯片不同,需要使用红-绿-蓝或绿-红-蓝数据编码。可以通过下列CLI来修改颜色数据编码序列
set ledstrip_grb_rgb = RGB
或
set ledstrip_grb_rgb = GRB
然后只需将LED设置为绿色,即可确认设置是否正确。如果LED呈红色,则设置错误。
WS2812灯带通常需要一根数据线、5V供电线和GND地线。
WS2812 LED处于全亮状态会消耗大量电流。建议检查电流消耗情况,以确保您的电源足以拖动负载。若多旋翼飞行器的电调均具有BEC,可以尝试用不同的BEC分别为飞控板和LED灯带供电。例如,ESC1/BEC1->FC,ESC2/BEC2->LED灯带。也可以一侧灯带使用一个BEC供电,另一侧使用另一个BEC供电。只需要确保所有的BEC与LED均接有效地即可。
如果您的LED有的亮有的不亮、闪烁或显示错误的颜色,那么可以尝试将输入电压降至4.7v以下。例如,可以在5v供电线上串联二极管。这些问题都是由于数据信号与电源信号之间的电压差而引起的。WS2811要求数据信号(Din)高低电平分别0.7xVin以上,0.3xVin以下,才能完成高低信号的辨识。飞控板上的LED焊盘输出电平为0-3.3V,所以供电电压应该为4.7V(3.3V/0.7 = 4.71V)。部分输入信号容受区间较宽的LED则可忽略此要求。
可以在配置程序内的图形界面内配置LED灯带的功能。
使用“LED灯带”选项卡来配置LED。首先设置LED的布局,以告知飞控有多少个LED可用,也便于稍后对LED进行可视化配置。
有关如何使用配置程序来逐步配置LED的功能,请参阅这里。该指南由Oscar Liang于2015年初发布,在您阅读本文时部分内容可能已不再具有实用意义。
通过CLI命令启用LED灯带功能:
feature LED_STRIP
如果您启用该功能,但在重启之后该功能仍被关闭,那么您需要检查您的配置是否有与LED灯带功能冲突的其他功能,如上文所示。
您可以使用CLI命令led
来配置LED。
led
命令有两个参数:从0开始的LED编号、一个控制序列。该控制序列包含一个坐标、方向标志、模式标志和一种颜色。
每个LED的控制序列可以使用如下模板进行配置:
x,y:ddd:mmm:cc
x
和y
是16x16的网格坐标,从零计数,左上角为0,0,右下角为15,15。
ddd
用于指定朝向。假定网格为上北下南左西右东,飞机头部在北,尾部在南。因为LED可以面向任何方向,因此有多种方向可供选择:
N
-北E
-东S
-南W
-西U
-上D
-下
例如,向下45°面向东南方向的LED可以配置为SED
。
注意:可以将LED配置为全向,但NESWUD
可能没有任何意义。
mmm
用于设定LED的模式。
每一个LED都可以设置一个基本功能:
C
-颜色ColorF
-模式和方向Flight mode & OrientationA
-锁定状态Armed stateR
-推力环Ring thrust stateG
-GPSS
-RSSI强度RSSI levelL
-电池电量Battery Lever
并且每个LED都可以有叠加功能:
W
-警告WarningsI
-指示灯IndicatorT
-油门状态Thrust stateB
-闪烁(两次)模式Blink modeO
-左右扫描Larson ScannerN
-降落指示灯(油门低于50%闪烁)Blink on landing
cc
用于设置LED颜色编号(编号从0计数)。
例如:
led 0 0,15:SD:AWI:0
led 1 15,0:ND:AWI:0
led 2 0,0:ND:AWI:0
led 3 0,15:SD:AWI:0
led 4 7,7::c:1
led 5 8,8::C:2
led 6 8,9::B:1
要擦除LED并标记LED灯带尾端,请将第二个参数设置为0,0:::
,如下所示:
led 4 0,0:::
最好擦除所有未使用的LED。
当触发警告时,此模式仅会闪烁LED。
警告 | LED闪烁模式 | 注释 |
---|---|---|
处于无法解锁状态 | 绿灯闪烁 | 在校准期间或当飞行器因倾角过大而无法解锁时出现 |
低电量 | 红灯闪烁 | 必须启用电池监视功能。可能会在高油门下因电压下降而暂时触发 |
失控保护 | 浅蓝与黄色交替闪烁 | 必须已设置并启用失控保护 |
各种模式将按顺序逐次闪烁显示,因此很容易得知到底启用了哪些警告。
此模式显示GPS状态和已经搜到的卫星数量。
- 定位未成功/失败=闪烁红色
- 3D定位成功=闪烁绿色
LED的闪烁次数指示当前已搜到的卫星数量。闪烁x次后将暂停闪烁,并重新开始(闪烁)。
此模式将使用LED颜色指示RSSI级别。
颜色 | RSSI |
---|---|
绿色 | 100% |
柠檬绿 | 80% |
黄色 | 60% |
橙子 | 40% |
红 | 20% |
深粉红色 | 0% |
当RSSI低于50%时,LED将缓慢闪烁;低于20%时,LED将快速闪烁。
此模式将使用LED颜色指示电池剩余电量。
颜色 | 剩余电量 |
---|---|
绿色 | 100% |
柠檬绿 | 80% |
黄色 | 60% |
橙子 | 40% |
红 | 20% |
深粉红色 | 0% |
当达到警告电压或临界电压时,LED将缓慢或快速闪烁。注意:此模式需要启用电流传感器。如果您并没有此设备,则可以设置并使用虚拟电流计(请参阅电池章节)。
此模式将使选定的LED闪烁,或从黑色闪烁到当前的设定颜色下。
当油门低于50%且已解锁时,此模式将使选定的LED闪烁,或从黑色闪烁到当前设定颜色下。
左右闪烁(拉森扫描仪,Cylon特效,来自《霹雳游侠》)
该模式复刻了霹雳游侠中机械Cylons和Kitt的“眼睛”特效。此覆盖层动画会使所有激活此功能的LED在某些时刻变暗,并在某些时刻变亮。不论解锁状态如何,动画都不会静止。
此模式显示飞行模式和方向。
当此功能激活时,LED会根据模式、自身所处的网络位置和方向,显示不同的颜色。
LED的优先级:
- 标记为朝上或者朝下的LED
- 标记为面向西或东且在网格的西或东
- 标记为面向北或南且在网格的北或南
也就是说,朝南的LED优先权最低。
目前,LED模式和颜色之间的映射是固定的,无法更改。
此模式将使与Pitch和Roll摇杆位置相对应的LED闪烁。即,它们指示飞行器的转向。
模式 | 方向 | LED颜色 |
---|---|---|
方向 | 北 | 白色 |
方向 | 东 | 暗紫 |
方向 | 南 | 红 |
方向 | 西 | 深粉红色 |
方向 | 上 | 蓝色 |
方向 | 下 | 橙子 |
无头模式 | 北 | 柠檬绿 |
无头模式 | 东 | 暗紫 |
无头模式 | 南 | 橙子 |
无头模式 | 西 | 深粉红色 |
无头模式 | 上 | 蓝色 |
无头模式 | 下 | 橙子 |
半自稳模式 | 北 | 蓝色 |
半自稳模式 | 东 | 暗紫 |
半自稳模式 | 南 | 黄色 |
半自稳模式 | 西 | 深粉红色 |
半自稳模式 | 上 | 蓝色 |
半自稳模式 | 下 | 橙子 |
自稳模式 | 北 | 青色 |
自稳模式 | 东 | 暗紫 |
自稳模式 | 南 | 黄色 |
自稳模式 | 西 | 深粉红色 |
自稳模式 | 上 | 蓝色 |
自稳模式 | 下 | 橙子 |
磁力计 | 北 | 薄荷绿 |
磁力计 | 东 | 暗紫 |
磁力计 | 南 | 橙子 |
磁力计 | 西 | 深粉红色 |
磁力计 | 上 | 蓝色 |
磁力计 | 下 | 橙子 |
气压计 | 北 | 浅蓝 |
气压计 | 东 | 暗紫 |
气压计 | 南 | 红 |
气压计 | 西 | 深粉红色 |
气压计 | 上 | 蓝色 |
气压计 | 下 | 橙子 |
此模式将在解锁和上锁时,使LED颜色在绿色和蓝色之间切换。
注意:解锁状态不能与飞行模式一起使用。
此模式将会根据油门杆的位置将当前LED逐渐淡入HSB色彩空间的上一个/下一个颜色。当位于中油门时,颜色将不受影响,因此可以将其与方向混合使用用来指示方向和油门。通常来说,推力模式应该与“颜色”或“模式/方向”结合使用。
此模式允许您使用一个或多个LED环(例如NeoPixel灯板)来实现跑马/彩虹灯特效。开启此模式的LED将以指定颜色重复发光。将黑色分配给开启推力环状态模式的LED可以防止LED点亮。
当LED仅仅设置推力环状态而未开启/设置其他功能时,效果最好。
LED方向/XY位置与LED的推力环状态无关。LED的顺序决定了LED的闪烁/跑马方式,而油门值则决定了动画速率的快慢。该动画仅在解锁后播放。
环上的每一个LED的颜色都可以互不相同,可以设置为最多16种颜色。例如,下列设置将使LED0设置为推力环状态,颜色为13。
led 0 2,2::R:13
LED灯带模式和推力环可以组合使用。
该模式将允许你为LED指定特定颜色并永久亮起。
使用此模式时,X/Y的位置和方向将会被忽略。
其他模式将覆盖此模式或与此模式结合。
例如,要将LED0设置为永久亮起,颜色设置为10号,则请使用如下命令:
led 0 0,0::C:10
可以使用CLI命令color
来配置颜色。
color
命令具有零或两个参数 - 从零开始的色号和指示色相(Hue)、饱和度(Saturation)及色值(Value)。
另请参阅:http://en.wikipedia.org/wiki/HSL_and_HSV
如果调用此命令而不使用任何参数,它将打印出颜色配置,可以将其复制保存以供参考。
默认颜色配置如下:
编号 | 颜色 |
---|---|
0 | 黑色 |
1 | 白色 |
2 | 红色 |
3 | 橘色 |
4 | 黄色 |
5 | 柠檬绿 |
6 | 绿色 |
7 | 薄荷绿 |
8 | 青色 |
9 | 浅蓝 |
10 | 蓝色 |
11 | 深紫色 |
12 | 品红 |
13 | 深粉红色 |
14 | 黑色 |
15 | 黑色 |
color 0 0,0,0
color 1 0,255,255
color 2 0,0,255
color 3 30,0,255
color 4 60,0,255
color 5 90,0,255
color 6 120,0,255
color 7 150,0,255
color 8 180,0,255
color 9 210,0,255
color 10 240,0,255
color 11 270,0,255
color 12 300,0,255
color 13 330,0,255
color 14 0,0,0
color 15 0,0,0
可以使用CLI命令mode_color
来配置模式的颜色。
- 无参调用时:列出所有模式的颜色
- 参数:
mode
,function
,color
前7组模式(mode
)序号为:
模式 | 名称 |
---|---|
0 | 方向 |
1 | 无头 |
2 | 半自稳 |
3 | 自稳 |
4 | 磁力计 |
5 | 气压计定高 |
6 | 特殊模式 |
其中前6个模式的function
参数表如下:
功能 | 名称 |
---|---|
0 | 北 |
1 | 东 |
2 | 南 |
3 | 西 |
4 | 向上 |
5 | 向下 |
特殊模式(Mode 6)的function
参数表如下:
功能 | 名称 |
---|---|
0 | 上锁 |
1 | 解锁 |
2 | 动画 |
3 | 背景色 |
4 | 闪烁背景色 |
5 | GPS:无卫星 |
6 | GPS:尚未定位 |
7 | GPS:3D定位成功 |
color
形参的参数可从颜色数组(“调色板”或GUI中的)中选取。
示例(使用默认颜色):
- 将解锁状态设置为红色:
mode_color 6 1 2
- 将上锁状态设置为黄色:
mode_color 6 0 4
- 将无头模式的南设置为青色:
modoe_color 1 2 8
按照下图将LED切成小段。切割LED灯带之后,请使用电线将下一灯带的输入与上一灯带的输出相连。例如,5V输出接入到5V输入,GND与GND相连接,数据输出连接到数据输入。
默认朝向是飞机的头部(摄像头)背对着您,并且您正在从上方观察。
led 0 15,15:SD:IA:0
led 1 8,8:E:FW:0
led 2 8,7:E:FW:0
led 3 15,0:ND:IA:0
led 4 7,7:N:FW:0
led 5 8,7:N:FW:0
led 6 0,0:ND:IA:0
led 7 7,7:W:FW:0
led 8 7,8:W:FW:0
led 9 0,15:SD:IA:0
led 10 7,8:S:FW:0
led 11 8,8:S:FW:0
led 12 7,7:D:FW:0
led 13 8,7:D:FW:0
led 14 7,7:U:FW:0
led 15 8,7:U:FW:0
转换为实际位置:
6 3
\ /
\ 5-4 /
\ FRONT /
7,8 | 12-15 | 1,2
/ BACK \
/ 10,11 \
/ \
9 0
RING 16-27
LED0、3、6、9应该朝下放置在飞机下方。
LED1-2、4-5、7-8和10-11应分别朝向东/北/西/南。
LED12-13应朝下放置,LED14-15应该朝上放置,均放置在中部。
尾部的LED环16-27应该朝南放置。
这是默认设置,因此如果您不想将LED上下放置在中间,只需要连接前12个LED。
led 0 15,15:SD:IA:0
led 1 8,8:E:FW:0
led 2 8,7:E:FW:0
led 3 15,0:ND:IA:0
led 4 7,7:N:FW:0
led 5 8,7:N:FW:0
led 6 0,0:ND:IA:0
led 7 7,7:W:FW:0
led 8 7,8:W:FW:0
led 9 0,15:SD:IA:0
led 10 7,8:S:FW:0
led 11 8,8:S:FW:0
led 12 7,7:D:FW:0
led 13 8,7:D:FW:0
led 14 7,7:U:FW:0
led 15 8,7:U:FW:0
转换为实际位置:
6 3
\ /
\ 5-4 /
7 \ FRONT / 2
| 12-15 |
8 / BACK \ 1
/ 10-11 \
/ \
9 0
LED0、3、6、9应该朝下放置在飞机下方。
LED1-2、4-5、7-8和10-11应分别朝向东/北/西/南。
LED12-13应朝下放置,LED14-15应该朝上放置,均放置在中部。
#right rear cluster
led 0 9,9:S:FWT:0
led 1 10,10:S:FWT:0
led 2 11,11:S:IA:0
led 3 11,11:E:IA:0
led 4 10,10:E:AT:0
led 5 9,9:E:AT:0
# right front cluster
led 6 10,5:S:F:0
led 7 11,4:S:F:0
led 8 12,3:S:IA:0
led 9 12,2:N:IA:0
led 10 11,1:N:F:0
led 11 10,0:N:F:0
# center front cluster
led 12 7,0:N:FW:0
led 13 6,0:N:FW:0
led 14 5,0:N:FW:0
led 15 4,0:N:FW:0
# left front cluster
led 16 2,0:N:F:0
led 17 1,1:N:F:0
led 18 0,2:N:IA:0
led 19 0,3:W:IA:0
led 20 1,4:S:F:0
led 21 2,5:S:F:0
# left rear cluster
led 22 2,9:W:AT:0
led 23 1,10:W:AT:0
led 24 0,11:W:IA:0
led 25 0,11:S:IA:0
led 26 1,10:S:FWT:0
led 27 2,9:S:FWT:0
16-18 9-11
19-21 \ / 6-8
\ 12-15 /
\ FRONT /
/ BACK \
/ \
22-24 / \ 3-5
25-27 0-2
在这种情况下,所有LED应该朝外放置。
注意:此配置是专门为Alien Spider AQ50D PRO 250mm机架设计的。
初次通电时,灯条上的所有LED灯珠都将被设置为白色。这意味着如果您的测量设备反应速度足够快的话,则可以检测电流消耗情况。大多数5050封装的LED灯珠的功耗为0.3W。这也意味着您可以确保灯条上每个LED的灯珠中的R、G、B都可以正常工作。经过短暂的延迟之后,LED将显示上锁时的颜色序列/电池电量不足警告序列。
您还应检查LED_STRIP
功能是否已正确启用,并且与其他功能没有冲突