Блок живлення з набору ADALP2000. Цифрова частина

Цифрова частина блоку живлення є примітивною. Ардуіно керує по І2С дисплеєм і двома ЦАПами (один на живлення і один на струм). Також МК міряє справжні напругу і струм. Для цього на аналоговій платі я встановив дільники. Керується блок живлення енкодером з кнопкою. До того ж я встановив лінійний регулятор на 3.3В аби уніфікувати напругу і мати єдине вхідне джерело напруги. Терморезистор встановлений для потенційного термозахисту блока живдення.

При тестуванні примітив кілька недоліків аналогової частини: вхідна напруна 12 вольт, але через те, що використаний підсилювач не є Rail-to-rail, то максимальна вихідна напруга є 10В. Все таки тут є необхідний якісний rail-to-rail, тоді можна буде і джерего негативної напруги викинути. Окрім того потрібно поміняти шунт на менший або встановити дільник напруги на вихід підсилювача шунта, бо з максимальними 3.3В на виході ЦАПу не вдається досягти бажаних 2А.

Програмна частина наразі доволі проста. По перериванню опитуєтсья енкодер. FSM на енкодер, що я написав кілька років тому працює як годинник. 5 разів на секунду оновлюється дисплей. Кнопкою вибирається меню: нейтральне і меню встановлення напруги чи струму.

Планується зробити:

  • зарядка акумуляторів з підрухунком ємності
  • динамічна зміна множника енкодера (чим швидше крутиш, тим більший крок)
  • термозахист
  • акумуляторне живлення з потенційною комутацією батарей, моніторинг заряду батарей
  • анімація екрану
  • вимірювач мікроструму

Поточний проект. Далі буде...