Тепловые режимы электронных компонентов

Общеизвестно, что электроника потребляя энергию, выделяет тепло т.е. греется.
При постройке RC-моделей точно оценить тепловые режимы практически невозможно.
Представьте какое разочарование приходит от того, что модель терпит крушение (частенько из-за отказа регулятора или двигателя).
При постройке тренера из потолочной плитки у меня возникла задача выяснить тепловые режимы.

Я взял Arduino Nano, два датчика DS18B20, SD-Cardreader, 4 резистора на 4,7 кОм. набросал примитивную схемку.

В данной схеме присутствует модуль телеметрии который легко исключается.
В Arduino залил скетч для опроса датчиков DS с записью на SD карту.
Собственно сам скетч не претендующий на оригинальность.

#include <OneWire.h>
#include <DallasTemperature.h>
#include <SPI.h>
#include <SD.h>
int CS_pin = 10;
long ID = 1;
#define ONE_WIRE_BUS 2

OneWire oneWire(ONE_WIRE_BUS);

DallasTemperature sensors(&oneWire);

DeviceAddress Thermometer1 = { 0x28, 0xFF, 0x1C, 0xD8, 0x63, 0x14, 0x02, 0x22 }; // адрес датчика DS18B20 28ff1cd863140222

DeviceAddress Thermometer2 = { 0x28, 0xFF, 0x65, 0xBB, 0x63, 0x14, 0x02, 0xA4 }; // адрес датчика DS18B20 28ff65bb631402a4

void setup() {
Serial.begin(57600);
Serial.println(“init SD Card”);
pinMode(CS_pin, OUTPUT);

sensors.begin();
sensors.setResolution(Thermometer1, 10);
sensors.setResolution(Thermometer2, 10);

if (!SD.begin(CS_pin))
{
Serial.println(“Card Filed”);
// return;
}
else {
Serial.println(“Card Ready”);
}
}
/*
void printDS(DeviceAddress deviceAddress) {
float tempC = sensors.getTempC(deviceAddress);
Serial.println(tempC);
}
*/
void loop() {

int sensorValue = analogRead(A0);
// Convert the analog reading (which goes from 0 - 1023) to a voltage (0 - 5V):
float Vbat = sensorValue * (15.0 / 1023.0);
sensors.requestTemperatures();

float tempC1 = sensors.getTempC(Thermometer1);
float tempC2 = sensors.getTempC(Thermometer2);

String dataString = String(ID) + “;” + String(tempC1) + “;” + String(tempC2) + “;” + String(Vbat) ;
String dataString2 = String(ID) + " " + String(“Motor=”) + String(tempC1) + " " + String(“Reg=”) + String(tempC2) + " " + String(“Vbat=”) + String(Vbat) ;

File dataFile = SD.open(“LOG.csv”, FILE_WRITE);
if (dataFile)
{
dataFile.println(dataString);
dataFile.close();
Serial.println(dataString2);
}
else
{
Serial.println(“Couldn’t access file…”);
Serial.println(dataString2);
}
ID++;

delay(1000);
}

Все это хозяйство разместил на борту, DS-ки разместил на регуляторе и у основания двигателя и после контрольного полета получил первые результаты.


Явный перегрев как говориться на лицо. Полученные данные были учтены в дальнейшем при размещении регулятора и при устройстве вентиляции.
P:S В дальнейшем устройство обросло датчиком давления и модулем 3 DR Radio на 433 MHz.

  • 1560
Comments
Lazy

КПД двигателя известно.
КПД регулятора известно.
Мощность двигателя для используемого пропеллера известна.
Закон Ома работает.
Задача в 4 действия.

higin

Согласен с вами практически полностью.
А эффективность вентиляции во сколько действий описать можно?

Lazy

Не во сколько. Достаточно просто думать.

ADF

… крушение (частенько из-за отказа регулятора или двигателя).

Исключительно редкая ситуация!

Такое происходит только при откровенно (извиняюсь) рукожопом отношении к эксплуатации электроники: мотор горит, если установить винт бОльшего размера, регулятор - если выбран без запаса по току (полтора китайских ампера на этикетке регулятора равняются одному реальному амперу) и-или если его зуморовали в пенопластовый термос.

Сечение воздушного канала (в самом узком месте) для охлаждения регулятора достаточно в районе 4 квадратных сантиметров, к сегодняшнему дню это уже лет 10 как известно.

Lazy
ADF;bt151437

регулятор - если выбран без запаса по току

Любимое развлечение экспертов от электричества на этом форуме. На мотор в 200 Вт привинтить регулятор в 1 кВт.
Аксиома. Не для обсуждения, для вбивания в мозг навсегда.
Максимальный рабочий ток регулятора должне быть равен максимальному рабочему току двигателя. При перегрузке наступает отсечка по току и все довольны - мотор цел и регулятор не сгорел.

higin

Возможно я не правильно назвал запись в дневнике.
В данном случае у меня получилось примитивное средство объективного контроля, которое позволило выявить недостатки в системе охлаждения.
А как бороться с перегревом, к сегодняшнему дню это уже лет 10 как известно.

Prikupets

Спасибо, поучительный девайс - схема и прога - но я бы использовал датчик тока, терморезистор и OSD + FPV, чтобы видеть ток и t на в очках.

Andrew1978

Согласен с Андреем. Спасибо. ИМХО для ДВС-ков весьма полезная штука…
А если использовать как заготовку, и поставить неск датчиков - баро, GPS, ток - получается весьма полезный бортовой самописец. Черный ящик =) для любителей в хорошем смысле слова - рукоблудников

Панкратов_Сергей
Lazy;bt151438

Аксиома. Не для обсуждения, для вбивания в мозг навсегда.
Максимальный рабочий ток регулятора должне быть равен максимальному рабочему току двигателя. При перегрузке наступает отсечка по току и все довольны - мотор цел и регулятор не сгорел.

Щас научит…
Пойдут пробовать…а по факту устраивать соревнование- что сгорит вперед, мотор или регулятор.😃

Pacific
Lazy;bt151438

При перегрузке наступает отсечка по току и все довольны - мотор цел и регулятор не сгорел.

Мой регуль об этом не знал. И, когда я его безбожно перегрузил, он сгорел. Буквально. Слава Богу, на наземных испытаниях.

ADF
Lazy;bt151438

Аксиома. Не для обсуждения, для вбивания в мозг навсегда.

У Вас такой классный белый конь 😁

Lazy;bt151438

Любимое развлечение экспертов от электричества на … При перегрузке наступает отсечка по току…

Это вы сейчас времена вспоминаете, когда из регуляторов были только маркусы, да jeti. Избаловали они вас!
У современных китайских, на которых летает большинство в силу экономических причин, отсечка по току реализована через выход волшебного дыма. Поэтому если подбор по току НЕ произведен заранее (Аксиома. Не для обсуждения, для вбивания в мозг навсегда! 😛) - имеем шанс получить окирпичивание аэроплана в воздухе с последующим бесконтрольным приземлением об землю.

Правило выбора китайского регулятора: на каждый реальный ампер тока, который будет потреблять мотор на полном газу, требуется примерно полтора китайских ампера, что нанесены на этикетку. Если мотор просит 20А, регуль берем на 30. Если мотор просит 30, регуль на 45.

Приложение:
Упражнения для самостоятельного выполнения дома: какой регулятор надо выбрать для мотора, хотящего 40 ампер тока? А какой мотор можно подключить к регулятору на 20 китайских ампер? Вырежьте фигурки мотора и регулятора из плотной бумаги, раскрасьте и разыграйте в ролях.

gorbln

Знающие дяТьки-ардуинцы, подскажите мне такую штуку:

Когда я перезаписываю один и тот же файл на карте памяти 100500 раз в секунду - флешка изнашивается? Или внутре карты памяти есть хитрый контроллер, по типу как в SSD, который размещает файл при перезаписи каждый раз в новом секторе флеша?

Т.к. ардуино - штука довольно простая, подозреваю, что при перезаписи она не запаривается износом флеша, и, если писать один и тот же файл хотя бы 20 раз в секунду - через сутки-другие карте памяти придёт каюк.
Я для себя вижу такое решение - ставить внешнюю память (RAM), килобайта на 32-64-512, и по её заполнению сбрасывать всё на флешку, в отдельный файл.

По теме - а где перегрев? 90 градусов для регулятора - ну, это, конечно, много, но не перегрев. Силовые транзисторы современные до 150 градусов тащат. Другой вопрос, что обычно на таких температурах отклеиваются всякие скотчи и термосопли, которыми приклеивают регулятор =))

higin

Вы правы, с памятью у Atmel чипов все очень печально. Если не изменяет память то количество циклов перезаписи порядка 1к.
Flash тоже имеет ограниченный ресурс (10к-100к). Контроллер конечно пишет в разные ячейки, но как говорится- “ни что в этом мире не вечно”.
RAM определенно решит проблему.

gorbln

Эмм. Не, я не планирую использовать EEPROM или FLASH атмеги. Там пишешь сам в каждую конкретную ячейку.
А меня интересует, есть ли контроллер в карте памяти? Или, может, библиотека ардуиновская сама пишет в разные ячейки (что, конечно, вряд ли).