Автопортал || Авто - статьи

Сельскохозяйственная техника
Чтение RSS

Leoniv: DSS-90, DFS-90

Паяльна станція: паяльник DSS-90 і фен DFS-90

Паяльна станція: паяльник DSS-90 і фен DFS-90

Основні характеристики DSS-90:

• діапазон температури: 100 ... 480 ° C • крок установки температури: 0.1 ... 25.5 ° C • кількість попередніх температури: до 20 • потужність паяльника: 50 Вт • робоча напруга паяльника: 24 В • тип датчика: термопара K-типу • тип датчика холодного спаю: DS18B20 (не обов'язково) • спосіб управління: фазовий, дельта-сигма • харчування: мережа 220 В ± 10%, 50 Гц • габарити: 149 х 130 х 50 мм (корпус Z-4)

Основні характеристики DFS-90:

• діапазон температури: 100 ... 480 ° C • крок установки температури: 0.1 ... 25.5 ° C • кількість попередніх температури: до 20 • потужність нагрівача фена: 700 Вт • робоча напруга нагрівача фена: 220 В • тип датчика: термопара K-типу • тип датчика холодного спаю: DS18B20 (не обов'язково) • спосіб управління: фазовий, дельта-сигма • робоча напруга вентилятора: 24 В • діапазон завдання швидкості обертання: до 9900 об. / хв. (RPM) • харчування: мережа 220 В ± 10%, 50 Гц • габарити: 149 х 130 х 50 мм (корпус Z-4)

Попередження! Проект цієї паяльної станції є незакінченим і занедбаним. Причина - різке відміну ральних характеристик від заявлених. Для паяльника різниця температури кінчика жала і температури датчика досягає 100 ° C, в таких умовах не можна говорити ні про яку точність. Є ідеї компенсації теплового опору, але вони не реалізовані. Тому повторювати цю конструкцію не рекомендую.

Паяльна станція складається з двох окремих блоків: блоку управління паяльником DSS-90 і блоку управління феном DSS-90. Обидва блоки виконані в однакових пластмасових корпусах Z-4. Зовні блоки схожі: на передній панелі кожного блоку розташований вимикач, роз'єм для підключення інструменту (для паяльника 5-контактний, для фена 8-контактний), світлодіод індикації нагріву, трьохрозрядний світлодіодний індикатор і енкодер з Кнопа. Блоки містять однакову плату управління, виконану на мікроконтролері ATmega168. Програмне забезпечення у блоків різне.

Блок управління паяльником DSS-90 містить тороидальний трансформатор, який забезпечує змінну напругу 24 В для живлення нагрівача паяльника. Ця напруга випрямляється за допомогою синхронного випрямляча на польових транзисторах і надходить на польовий ключ, який управляє нагрівачем. Від цього ж трансформатора харчується і плата управління.

Блок управління феном DFS-90 живить нагрівач фена безпосередньо від мережі. Керуючим елементом є симистор. Ще один симистор застосований для блокування мережевого вимикача. Це необхідно для реалізації режиму швидкого охолодження фена. Після закінчення роботи з феном блок можна просто вимкнути вимикачем. При цьому він включає вентилятор на максимальні оберти і продовжує працювати до тих пір, поки температура фена не впаде нижче заданого порогу. Після цього блок відключається. Для живлення вентилятора блок є радіопередавачем понижуючий трансформатор. від нього ж харчується і плата управління.

Обидва блоки використовують одну і ту ж плату управління. На ній розташований процесор, трьохрозрядний світлодіодний індикатор, енкодер з кнопкою, звуковий випромінювач, світлодіод індикації нагріву. Установка температури здійснюється за допомогою енкодера. Значення температури відображається на індикаторі. Дискретність відображення - 1 ° C. Для фена енкодером встановлюється ще й швидкість обертання вентилятора. Вона теж відображається на індикаторі в тисячах RPM, дискретність - 10 RPM.

При включенні харчування блок керування паяльником DSS-90 відразу включає нагрів. Поворотом енкодера вліво паяльник можна перевести в режим Stb, коли буде підтримуватися знижена температура. Якщо знову повернути енкодер вліво, паяльник перейде в режим OFF, коли нагрів повністю вимкнеться. З режиму Stb є і автоматичний перехід в режим OFF через деякий запрограмований час. Якщо в робочому режимі повернути енкодер вправо, то перейдемо в режим вибору установок. Їх кількість може змінюватися, останніми в списку пресетів стоять команди Add (якої можна створити пресет і додати в нього поточну температуру натисканням кнопки енкодера) і dEL (який видаляє останній пресет зі списку натисканням кнопки енкодера). Для регулювання температури треба перебуваючи в робочому режимі натиснути кнопку енкодера. На дисплеї висвітиться встановлена ​​температури, яке почне блимати. Після чого можна регулювати температуру поворотом енкодера. В кінці регулювання треба натиснути кнопку енкодера ще раз, або просто подаждать час 7.6 сек., Тоді вихід з режиму установки відбудеться автоматично. Якщо натиснути кнопку енкодера в режимі Stb, то можна регулювати температуру для цього режиму. Якщо в режимі OFF натиснути кнопку енкодера і утримувати її 1 сек., То з'явиться значення таймера автоматичного переходу в Stb, яке можна редагувати. При наступному натисканні кнопки з'явиться значення таймера автоматичного переходу з Stb в OFF, яке теж можна редагувати. Для паяльника автоматичний перехід в Stb буде лише в разі використання автоматичного детектування активності паяльника, параметри якого задаються з сервісної програми.

При включенні харчування блок керування феном DFS-90 нагрів не включається, а на індикаторі відображається OFF. Щоб нагрів включився, фен треба зняти з підставки (якщо він був знятий, то покласти, а потім зняти). В іншому функції управління працюють аналогічно. Ще одна відмінність полягає в тому, що при натисканні кнопки енкодера після регулювання температури на дисплеї з'являється задана швидкість вентилятора, яку теж можна регулювати. Друге натискання кнопки енкодера викликає перехід в робочий режим. Для фена немає автоматичного детектування активності. Замість цього використовується датчик підставки. Якщо фен покласти на підставку, то через заданий першим таймером кількість хвилин він перейде в режим Stb, а потім через інтервал другого таймера - в режим OFF. При пеерходе в режим OFF включається прискорене охолодження фена, для чого вентилятор пережодіт на підвищені оберти. Коли температура впаде нижче заданого порогу, вентилятор відключається. Всі параметри задаються з сервісної програми.

Як датчик температури і паяльник, і фен використовують термопару K-типу. Обидва блоки мають однакові канали вимірювання температури і однакові алгоритми управління нагрівачами. Вихід напруга термопари посилюється zero drift rail-to-rail операційним підсилювачем типу AD8551, який має дуже мале зміщення нуля і не вимагає двополярного харчування. Коефіцієнт посилення 100, при температурі + 500 ° C термопара видає приблизно 20 мВ, повна шкала на виході підсилювача - приблизно 2.06 В. Цей сигнал подається на вхід АЦП мікроконтролера. В якості опорного ісочніка на 2.5 В застосовується мікросхема TL431.

АЦП працює з періодом дискретизації T_SYS = 500 мкс. Потік даних з виходу АЦП надходить на цифровий FIR-фільтр з прямокутним вікном. Тривалість вікна TSAMPLE = 100 мс. Фільтр виробляє децимації, період дискретизації на виході фільтра становить 100 мс. З таким періодом дискретизації працює PID-регулятор. Спочатку виробляється перетворення коду виміряного значення AdcCode в мікровольт Vtc з урахуванням коефіцієнта передачі підсилювача термопари і опорного напруги:

Vtc = (AdcCode * ADC_REF / ADC_RES) / (FIR_N * GAIN)

Далі проводиться перевірка цієї напруги з метою визначення обриву термопари. Якщо воно вище V_BRK = 24000, то помилка. Потім обчислюється еквівалентне напруження холодного спаю Vcj на основі показань tcj термометра DS18B20. Застосування термометра холодного спаю не є обов'язковим. Якщо його не підключити, то буде використовуватися постійне значення температури холодного спаю з EEPROM, яке можна задати за допомогою сервісної програми. Так як діапазон температур холодного спаю невеликий, обчислення проводиться за лінійним законом з коефіцієнтом TCJ_K = 40.0 мкВ / ° C:

Vcj = tcj * TCJ_K

Потім обчислити вихідну напругу термопари з компенсацією холодного спаю:

Vhj = Vtc + Vcj

Потім проводиться табличная ліанерізація показань термопари. Елементи таблиці Lin [TC_POINTS] розраховані з кроком 1000 мкв. Знаходиться елемент таблиці, менший або рівний измеренному напрузі. Індекс таблиці дає температуру ttab. Потім між точками таблиці проводиться лінійна інтерполяція:

thj = ttab + DeltaV * DeltaT / 1000

Далі отримана температура піддається процедурі цифрового калібрування:

t = thj * Gain / GAIN_NOM + Shift

Отримане значення температури t надходить на PID-регулятор. Регулятор реалізований в диференціальної формі, тобто пропорційна складова перетворюється в диференціальну, інтегральна - в пропорційну, а диференціальна - в другу похідну. На виході отримуємо диференціал впливу. Такий підхід дозволяє позбавиться від інтегральною складовою разом з проблемою її обмеження:

dP = Kp * (t [i] - t [i - 1]) - Ki * (tset - t [i]) + Kd * (t [i] - 2 * t [i - 1] + t [i - 2])

З диференціала потужності і попереднього значення потужності отримуємо поточне значення потужності, яку потрібно подати на нагрівач:

P [i] = P [i-1] - dP

Управління нагрівачем може здійснюватися в фазовому режимі або в режимі Delta-Sigma модулятора. У будь-якому випадку потрібно прив'язка до мережі по фазі. Вона реалізована за допомогою цифрової петлі PLL. Імпульси з детектора переходу через нуль (ZCD) надходять на вхід захоплення ICP таймера 1. Використовується спад імпульсу, так як він має велику крутизну. Схема захоплення має апаратний пригнічувач шумів, який включений за допомогою біта ICNC1. У перериванні по захопленню обчислюється поточна помилка фази:

dPh = ICR1 + Delay

Вона є вхідною величиною для PI-регулятора, який служить петльовим фільтром PLL:

Period [i] = Period [i-1] - Kp * (dPh [i - 1] - dPh [i]) + Ki * dPh [i]

Вихідний сигнал PI-регулятора є поточний період таймера 1, який завантажується в регістр OCR1A. Таймер працює в режимі очищення в порівнянні (CTC), причому TOP = OCR1A. В результаті робота таймера виявляється синхронізованою з мережею з точністю до фази (якщо точніше, з подвоєною частотою мережі). PLL дозволяє отримати постійний зсув Delay щодо сигналу ZCD, який дозволяє компенсувати кінцеву тривалість імпульсу ZCD і затримку спрацьовування ZCD.

При роботі в режимі фазового управління для управління ключем служить канал B апаратного PWM, значення якого завантажується в регістр OCR1B, а вихідна послідовність формується на виводі OC1B. Завантаження регістра OCR1B повинна здійснюватися як при зміні бажаного кута відкривання ключа, так і при підстроювання періоду таймера (в перериванні по захопленню). Регістри OCR1A і OCR1B мають double buffering, тому їх перезавантаження чи не порушує поточний цикл управління ключем.

Бажана потужність P задається у відсотках від максимальної з дискретністю 0.1%. Далі ця потужність повинна бути перетворена в кут відкриття ключа, який і являє собою код регістра OCR1B з точністю до постійного множника. При фазовому управлінні потужність залежить від кута нелінійно: для кута f нормалізована потужність дорівнює інтегралу від f до pi від sin ^ 2 (x) dx, поділеній на pi / 2. або

Pnorm = 1 - f / pi + sin (2 * f) / (2 * pi)

Якщо кут A задається в градусах, то

f = A * pi / 180

Аналітичне вираження для кута в залежності від необхідної потужності я знайти не зміг. І це не arccos, як обчислюють в деяких фазових регуляторах. Тому чисельними методами була згенерована таблиця з кроком по потужності 1%. Між точками таблиці проводиться лінійна інтерполяція:

angle = A [p] + DeltaP * DeltaA / 10

Знайдений кут перетвориться в код для завантаження регістра OCR1B:

OCR1B = Half_Period * angle / MAX_ANGLE;

При роботі в режимі Delta-Sigma модулятора потужність залежить від коду лінійно, ніякої спеціальної лінеаризації не потрібно. Частота дискретизації Delta-Sigma модулятора відповідає частоті порівнянь COMPA таймера 1. Модулятор реалізований наступним чином:

квантування: if (Sigma> MAX_POW) {Delta = -MAX_POW; OutOn (); } Else {Delta = 0; OutOff (); } Підсумовування: Sigma = Sigma + Power + Delta;

При використанні в блоці управління паяльником імпульсного БП замість трансформатора, на виході у нього буде постійна напруга, і прив'язка до напруги мережі не потрібна. В цьому випадку програмну PLL можна відключити, заземливши висновок TACHO

У блоці управління феном додатково здійснюється управління вентилятором. За допомогою PID-регулятора його частота обертання підтримується рівної заданої. Вентилятор не має датчика частоти обертання, тому її вимір проводиться по частоті пульсацій споживаного струму. Сигнал пульсацій виділяється на датчику струму, потім посилюється і фільтрується з допомогою ОУ типу LM358, потім надходить на компаратор зі стежить порогом, зібраний на другій половинці цього ОУ. Прямокутні імпульси з виходу компаратора надходять на вхід переривання INT0 мікроконтролера. Частота цих імпульсів в 4 рази вище частоти обертання крильчатки (для двигунів інших типів це співвідношення може бути іншим).

Вимірювання частоти обертання використовує принцип зворотного рахунку (reciprocal counting). Переривання спрацьовує по спаду імпульсу. При цьому відбувається читання системного часу за допомогою функції Main_GetSysTime (). На початку вимірювання час зчитується в змінну N_beg, в кінці виміру - в змінну N_end. Різниця цих значень дає кількість імпульсів заповнення N, які слідують з частотою системної таймера F_CLK / DIV_SYS. Крім того, в обробнику переривання INT0 проводиться рахунок вхідних імпульсів Count тахометра. Тривалість вимірювання задана константою VSAMPLE. Коли вимір закінчено, частота обертання обчислюється за формулою:

Vget [rpm] = F_CLK [Hz] / DIV_SYS * 60 / PPR * Count / N

Виміряне значення частоти обертання фільтрується за допомогою FIR-фільтра з прямокутним вікном довжиною VFIR_N = 4 точок. Для підтримки частоти обертання ротора вентилятора використовується PID-регулятор. Бажана швидкість вентилятора Vset і виміряна швидкість Vget надходять на вхід PID-регулятора, який реалізований в диференціальної формі аналогічно регулятору температури. На виході формується необхідне значення PWM вентилятора, яке завантажується в регістр порівняння OCR2A таймера 2. Таймер формує 8-бітний PWM на частоті 31.25 кГц, який подається на ключовий каскад, що формує постійну напругу живлення вентилятора необхідного для підтримки швидкості рівня.

Опис буде доповнено.

Links:

  1. Обговорення на форумі Diod.club
  2. Обговорення на форумі Radiokot
  3. Демонстраційний ролик DSS-90 на Youtube
  4. Демонстраційний ролик DFS-90 на Youtube
  5. Пости в ЖЖ на тему DSS-90 і DFS-90: 1 , 2

Downloads: