本帖最后由 Harddisk7503 于 2024-5-23 18:33 编辑
最近烧了2个灯,网上查了相关资料发现LED在工作时发热会导至功率提高,越热越高进入了死循环,还有无良商家为了节省成本散热的铝材都用得比较少,这就是LED容易烧坏的主要原因
ESP32C3有5组的ADC输入,用这个ADC加NTC热敏电阻做了几个温度传感器,热敏电阻很便宜2块钱可以买20个了,用Node-RED做了个热保护的流,应该可以用效的延长LED的
使用寿命,分享出来给有需要的坛友。
GPT4.0给的答案:LED灯的理想工作温度应控制在较低的范围内,一般设计在-20°C至40°C之间[2]。在这个范围内,LED灯具能够正常工作,并保持较长的寿命。温度过高会导致光衰加速和寿命缩短[6]。LED灯珠的工作温度最好不超过70°C,因为每提升5°C,寿命会减少一半[3]。同时,LED灯的工作温度范围应符合国家强制标准,一般要求在-20°C至65°C之间[4]。
一般情况下,散热器表面温度为55°C不会对其寿命造成显著影响。然而,长期处于高温环境可能会对散热器的材料造成一定的疲劳,逐渐影响其性能和寿命。要确保散热器长期有效运行,建议定期检查和清洁散热器,确保其正常散热功能[1]。
// 获取当前消息的payload
var payload = msg.payload;
// 获取当前灯光实体的状态
var currentState = global.get('homeassistant').homeAssistant.states['你的灯实体ID'];
// 检查灯光实体当前是否为"on"状态
if (currentState.state !== "on") {
return null; // 如果不是"on"状态,不进行任何操作
}
// 检查payload是否为"off"
if (payload === "off") {
// 重置初始亮度
global.set('initialBrightness', undefined);
} else if (payload > 49 && global.get('initialBrightness') === undefined) {
// 如果payload大于49且没有保存初始亮度,就保存它
global.set('initialBrightness', currentState.attributes.brightness);
}
// 如果已经保存了初始亮度,就可以调整亮度
if (global.get('initialBrightness') !== undefined) {
if (payload > 49) {
// 计算新的亮度值,降低5%
var newBrightness = currentState.attributes.brightness * 0.95;
// 返回一个新的消息,用于调整灯光实体的亮度
return {
payload: {
domain: "light",
service: "turn_on",
data: {
entity_id: "你的灯实体ID",
brightness: newBrightness
}
}
};
} else if (payload < 48) {
// 如果payload小于48,将亮度调回初始值
return {
payload: {
domain: "light",
service: "turn_on",
data: {
entity_id: "你的灯实体ID",
brightness: global.get('initialBrightness')
}
}
};
}
}
// 如果payload不在这两个范围内,不做任何操作
return null;
|