本本针对Telink BLE MESH SDK  灯控的使用进行说明。


1、调整灯光的频率



默认情况下 SDK PWM波的频率是 600HZ的,有时我们需要将它调整频率,例如调整为4K,只需要更改参数 PMW_MAX_TICK_MULTI 为31 就好了。


计算 PWM 频率公式

freq = CLOCK_SYS_CLOCK_HZ / (PMW_MAX_TICK) 
 
 
 

   PMW_MAX_TICK=PMW_MAX_TICK_BASE*PMW_MAX_TICK_MULTI 
 
 
 

   PMW_MAX_TICK_BASE=255 为常量 不变化。

 



2、调整灯光的亮度,



SDK中,灯光的亮度范围5%~100%,但是发现设置亮度为50%, 实际亮度却不是50%,实际上对应的表格如下。你设置的亮度百分比只是一个 索引号,例如设置亮度为50%, 实际PWM频率为



rgb_lumen_map[50]=(75*256)/255=29.4%;设置亮度为10%,实际PWM频率为rgb_lumen_map[10]=(7*256)/255=2.75%;


 

BLE MESH 场景设置 ble mesh 距离_色温

 

以下为逻辑分析仪抓图。设置亮度为50%,



PWM波频率为4K,设置亮度为50%波形


 

BLE MESH 场景设置 ble mesh 距离_逻辑分析_02

 


PWM波频率为4K,设置亮度为10%波形


 

BLE MESH 场景设置 ble mesh 距离_色温_03


实际测试,某些灯具设置占空比太小时,会出现闪烁的情况,因此SDK中做了限制,亮度值设置为0~4时,认为是无效值。


3、色度与亮度的关系

有时为了渲染效果需要改变灯的颜色,本质其实是调整Red Green Blue 3路PWM波达到一个效果,每个灯厂商的灯珠的RGB与色温 都有对应的表格。具体可以去网上查找“ 常用色温对应RGB颜色表”


色温的定义:以绝对温度K来表示。是将一标准黑体加热,温度升高至某一程度时,颜色开始由红—浅红-橙黄-白-蓝白-蓝,逐渐变化,利用这种光色变化的特性,某光源的光色与黑体在某一温度下呈现的光色相同时,我们将黑体当时的绝对温度称为该光源的相关色温。

3000K 黄色光,强穿透力  
 
  

   4200K 白中带黄,原车配氙气灯  
 
  

   5000K 光全白,欧规最高色温  
 
  

   6000K 光全白,略带蓝色  
 
  

   6500K 阳光下的白天  
 
  

   7000??8000K白中明显带蓝


8000K以上蓝光,穿透力极差推荐6000K左右的色温正好是最白略微开始转蓝的色温,人眼容易接受,不易疲劳,提高安全性,而卤素灯则较差。


   


 

BLE MESH 场景设置 ble mesh 距离_BLE MESH 场景设置_04


 


4、色温的实现


为了方便测试,先将亮度百分比设置为100%,发送 指令 LGT_CMD_LIGHT_RC_SET_RGB,也是对应的索引值,例如说1,那么 R G B对应的占空比即为 ((8/255 )*lum)、((8/252 )*lum)、((8/132 )*lum),

 


因此如果需要微调整灯的颜色,只需修改这个表格即可。


 


 

BLE MESH 场景设置 ble mesh 距离_色温_05