Падіння напруги на кабелі

Стало цікаво, як спадає напруга на кабелі, коли навантаження не зібрано все в одній точці на кінці, а розподілено рівномірно. Скажімо, декілька десятків споживачів із приблизно однаковим споживанням на приблизно рівних відстанях. Спочатку напруга спадатиме швидше, бо підключено більше споживачів, потім, ближче до кінця кабелю, швидкість спадання зменшиться. Але якими будуть загальні втрати напруги?
От якщо на кінці кабелю із загальним опором R висить навантаження зі споживанням струму I, то напруга впаде на величину IR. А що буде при рівномірному підключенні?

Позаяк і пристроїв доволі багато, і цікавить варіант, коли загальні втрати відносно невеликі (нехай з 20 до 18 вольт), та й самі споживачі не чисто резистивні (десь всередині є стабілізатор живлення частини електроніки, та частина разом із стабілізатором себе поводять як джерело постійного струму), в ідеалізованій моделі можна вважати, що навантаження зовсім рівномірне і незалежне від напруги.

Отже, струм I рівномірно розподілено на всю довжину L, з відстанню x від початку струм спадає i = I (1 − x/L). Загальний опір кабеля R, питомий R/L.

Зміна напруги:
dU = −idR = −I (1 − x/L)(R/L)dx = (IR/L2)(x − L)dx

Повна зміна на відстані a то інтеграл по x від 0 до a:
ΔUa = (IR/L2)(a2/2 − La) = (IR/(2L2)) ((L−a)2L2) = (IR/2)((1−a/L)2−1)
На кінці кабеля
ΔU = −IR/2

Якщо віднормувати напругу на падіння при зосередженому на кінці кабелю навантаженні IR, а відстань на довжину кабелю L, отримаємо такі графіки зміни напруги:

Падіння напруги на кабелі

Тобто втрата напруги на кінці при рівномірно розподіленому навантаженні вдвічі нижча, ніж була б при всьому навантаженні на кінці.

Або можна взяти кабель із вдвічі меншою площею перерізу і знизити собівартість.

DIDR0 та PRR

Трохи інший проект, трохи інший мікроконтролер (ATmega168PA, а не ATmega48PA), але знову мікроампери, як і у випадку зі світлодіодом. Тільки тепер головними героями є не світлодіод, який вирішив побути фотодіодом, а два регістри, які посперечатися, хто з них головніший.

Результат той же — завищене споживання. Навіть основна причина та ж сама — проміжна напруга на цифровому вході. На відміну від того світло-фото-діода вона там і повинна бути такою, бо це ще й вхід АЦП. Оскільки входи АЦП штатно повинні приймати «нецифрові» напруги, у мікроконтролері є регістр DIDR0 (Digital Input Disable Register), бітами у якому можна від’єднати від потрібної ніжки цифровий вхід і закоротити його на лінію GND. Звісно, я це знаю і, звісно, маску потрібних ніжок я у регістр записав.

«Але є одне але»
АЦП у цьому проекті потрібен періодично і ненадовго, тому він майже постійно вимкнений бітиком регістра PRR (Power Reduction Register), щоб додатково зекономити дещицю струму. При старті програми АЦП вимкнено. Відповідний фрагмент ініціалізації мікроконтролера виглядав наступним чином:

1
2
3
4
5
6
7
8
     // TIM1 та TIM2 потрібні завжди, інше буде дозволено при потребі
    xouti   ACSR, 1 << ACD
    xouti   PRR, ~((1<<PRTIM2) | (1<<PRTIM1))
     // Порти
    xouti   DIDR0, DIDR0_MASK
    xouti   PORTB, PORTB_PORT_MASK
    xouti   DDRB,  PORTB_DDR_MASK
    xouti   PORTC, PORTC_PORT_MASK

І от що з’ясувалося.
Якщо порядок запису у регістри PRR та DIDR0 такий, як показано вище, то цифрові входи не відключаються від ніжок. В результаті на вході заміру напруги живлення плати при збільшенні напруги струм плати спочатку росте з десь 250 мікроампер до 400, потім спадає до 300, бо напруга на вході АЦП минає середину живлення і наближається до безпечного рівня.
Якщо ж рядок 5 поставити перед рядком 3, то цифрові входи відключаються і залишаються відключеними і після вимикання живлення АЦП. Тобто при встановленні біта PRADC у регістрі PRR сам регістр DIDR0 продовжує працювати і керувати портами, але схеми запису в нього вирубаються начисто.

Мені і в голову не прийшло, що таке може бути — незважаючи на те, що опис регістра DIDR0 розміщено в кінці розділу опису АЦП. Все ж таки керує цей регістр ланцюгами цифрових входів портів, а не аналоговими входами.
Тепер знатиму…

Мікроампери

Працюю зараз з платкою, яка повинна мати якнайменше споживання.
Сьогодні щось дописав, щось виправив і вирішив знову перевірити струм. І виявив, що плата їсть на 20-50 мікроампер більше, ніж очікувалося. Та ще й струм залежить від положення плати!

Винним виявився… світлодіод.
Зрозуміло, зрештою винний я сам і причина зайвого струму вічна і банальна — не ініціалізована ніжка мікроконтролера. Вона десь пізніше таки ініціалізується, але аж тоді, коли світлодіод треба увімкнути. А до того — високоомний вхід.
Світлодіод працює як фотодіод, від положення плати залежить освітленість цього «фотодіода» і, відповідно, напруга на цифровому вході. От звідти і змінна зайвина у споживанні.

[flagcounter image]