Программа Монитор контроллера элемента Пельтье. Адаптация контроллера под конкретную задачу.

Монитор для контроллера элемента Пельтье

В статье рассказывается о программе Монитор контроллера элемента Пельтье, а также о том, как адаптировать контроллер под конкретные задачи.

Общая информация о программе.

Контроллер холодильника на элементе Пельтье может быть адаптирован под конкретные задачи системы охлаждения. Для этого существует специальная программа позволяющая:

  • в реальном времени наблюдать состояние контроллера и всей системы;
  • оценивать динамические свойства системы с помощью регистратора;
  • устанавливать многочисленные параметры контроллера (коэффициенты регуляторов, измерительные коэффициенты, защитные функции и т.п.);
  • производить диагностику контроллера.

 

Существует множество примеров необходимости адаптации контроллера под задачу.

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

Если в системе наиболее важным показателем является стабильность температуры, то следует снизить скорость работы регуляторов. А возможно Вам необходима большая скорость реакции на изменение температуры, даже в ущерб стабильности.

Максимальная выходная мощность  контроллера должна быть установлена в зависимости от эффективности охлаждения горячей стороны модуля Пельтье. Если при небольшом радиаторе выходная мощность будет 50 Вт, то он просто нагреется до высокой температуры и вряд ли что-то охладится.

Адаптация контроллера также может потребоваться при изменении компонентов силовой части контроллера, например, сопротивлении токового шунта – резистора R15.

Примеров можно привести много. Это было первое, что мне пришло в голову. Далее я расскажу о каждом параметре, и все будет понятно.

Программа работает под управлением операционных систем:

  • Windows 95
  • Windows 98
  • Windows XP
  • Windows 7.

На остальных ОС не пробовал.

Установка приложения.

  • Загрузите архив RefMonitor.zip.
  • Распакуйте содержимое в рабочую папку. Можете оставить папку из архива RefMonitor.

Приложение состоит из следующих файлов.

RefMonitor.exe

Исполняемый файл

Conf.txt

Файл конфигурации, содержит номер COM порта

Bmp – файлы

Пиктограммы

Эти файлы должны быть в рабочей папке.

Устанавливать программу не надо, просто запускается файл RefMonitor.exe.

 

Подключение контроллера к компьютеру.

Обмен данными между компьютером и контроллером осуществляется через COM порт. Порт может быть реальным или виртуальным. Реальный порт это аппаратный порт, который существует в компьютере. Но в современных компьютерах COM порты встречаются редко.  Их вытеснили интерфейсы USB. Выход – использовать аппаратный мост USB-COM. Я использую модули PL2303 USB UART Board.

Модуль PL2303

Об этих модулях, а также о мостах USB-UART подробно написано по этой ссылке.

Я также использую модули PL2303 для подключения контроллеров к Андроид совместимым планшетам и телефонам. Может быть, напишу вариант приложения для Андроид подобно программе “Монитор фасовочного станка”.

Итак, для подключения контроллера с использованием модуля PL2303 необходимо:

  • Установить драйвер модуля. Как это сделать, подробно написано по этой ссылке. Там же можно загрузить проверенный драйвер.
  • После этого появится виртуальный COM порт. Как проверить и узнать номер порта, написано по той же ссылке. Запомните его номер.
  • Аппаратное подключение контроллера к модулю PL2303 производится двумя сигналами TTL уровней (0…5 В): RxD и TxD. Вот схема подключения. Не забудьте установить перемычку на модуле в положение ”5 V”.

Схема подключения контроллера к компьютеру

У меня это выглядит так.

Подключение к компьютеру

Если вдруг на Вашем компьютере есть штатный COM порт (интерфейс RS232), то никаких драйверов устанавливать не надо. Но интерфейс RS232 имеет уровни сигналов -10 … + 10 В. Для подключения контролера в этом случае необходимо использовать преобразователь уровней RS232 – TTL, микросхемы SP232, ADM232, MAX232 и им подобные. В принципе работать с аппаратным COM портом намного удобнее, чем с мостом USB-COM.

Первый запуск программы.

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

Перед запуском программы виртуальный COM порт должен быть уже создан на компьютере. А так как порт создается при подключении к разъему USB модуля PL2303, то это означает, что сначала необходимо подключить модуль к компьютеру. При установке драйвера надо запомнить номер виртуального COM порта. Только имейте в виду, что при подключении к разным USB интерфейсам могут быть созданы виртуальные порты с разными номерами. Т.е. лучше подключать модуль к одному и тому же USB разъему.

Дальше запускаете программу RefMonitor.exe. В файле конфигурации программы записан какой-то COM порт. Программа попытается его открыть при запуске. Если не получится, то она выдаст сообщение с номером ошибочного порта.

Окно предупреждения

Нажмите OK и откроется основное окно программы. Вместо данных будут прочерки.

Окно программы

Выберете в меню (сверху справа) режим выбор порта. Откроется окно выбора.

Выбор COM порта

Задайте номер Вашего порта. У каждого порта написано его состояние. Естественно, необходимо выбирать из портов с надписью “свободен”.

Закройте окно. Выбранный COM порт сохранится в файле конфигурации, и всегда будет вызываться при запуске программы. Выбирать порт при каждом запуске программы не надо.

Если контроллер включен, соединен с модулем PL2303, все работает правильно, то раз в секунду должен мигать кружок “Обмен с контроллером” и увеличиваться число циклов в этой же строчке. То, что данные поступают на модуль PL2303 от контроллера можно определить по миганию светодиода RxD на модуле.

Если что-то не так, то надо закрыть программу, отключить и тут же подключить модуль от USB порта компьютера. Затем запустить программу. У меня программа работает без зависания часами, но при выключении питания контроллера исчезает виртуальный порт. Наверное, из-за помехи при коммутации блока питания. Поэтому я сначала отключаю модуль PL2303 от контроллера, а затем выключаю питание. К компьютеру модуль остается подключенным.

Не совсем это все удобно, но это не я придумал. Со штатным COM портом можно все когда угодно подключать, запускать, выключать. Ничего не зависает при любой последовательности.

 

Показатели, параметры контроллера.

Основное окно программы выглядит так.

Основное окно программы

Для изменения параметра необходимо нажать кнопку редактирования. Откроется окно параметра. Новое значение можно задать в окне. Не забывайте, что целая часть дробных чисел отделяется точкой, а не запятой. Кнопки + и - меняют значение параметра на минимальную величину. По нажатию кнопки "Записать" параметр загружается в контроллер и, при успешной записи, окно закрывается.

Панель основные показатели.

Панель основные показатели

Температура в камере. Показывает температуру охлаждаемого объекта. Для измерения используется термодатчик DS18B20. Разрешающая способность составляет 0,0625 °C. Такое же разрешение у всех показателей температуры.

Заданная температура. Показывает заданную в контроллере температуру.

Заданная температура

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

Выходная мощность. Показывает электрическую мощность на модуле Пельтье. Измеряется с довольно большой погрешностью (до 10%). Показатель может довольно значительно ”скакать”. Я объясню это в следующей статье. На самом деле мощность держится стабильно. Об этом можно судить по показателю “напряжение на выходе”. Напряжение меняется на сотые доли В.

Разрешенная мощность. Параметр задает максимальную разрешенную мощность. Может быть задан не только от компьютера, но и кнопками контроллера. Основное назначение – ограничение по потреблению электроэнергии.

Разрешенная мощность

Напряжение на выходе. Напряжение на модуле Пельтье.

Ошибка датчика температуры в камере. Поломка датчика температуры. Система игнорирует единичные ошибки датчиков. Подробнее об этом при описании защитных функций.

Ошибка датчика температуры радиатора. Поломка датчика температуры радиатора.

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

Ошибка технологических параметров (EEPROM). Появляется при несоответствии контрольных сумм параметров в энергонезависимой памяти контроллера. Может появиться при исчезновении питания в момент загрузки параметров. Исправляется переустановкой.

Обмен с контроллером. Данные приходят от контроллера один  раз в секунду. При получении пакета данных светодиод-кружок мигает зеленым цветом. Красный цвет означает, что данные приняты с ошибкой. Счетчик циклов считает правильные пакеты данных. При нормальной работе светодиод должен мигать раз в секунду и счетчик циклов увеличиваться.

Защитные функции.

Защитные функции

Максимальное напряжение на выходе. Параметр ограничивает напряжение на модуле Пельтье. Это особенно важно, если контроллер питается от нестабилизированного источника или от источника с напряжением больше допустимого для охлаждающего элемента.

Максимальное напряжение

Максимальное число ошибок датчиков температуры. Система игнорирует ограниченное число ошибок датчиков. Этот параметр показывает, какое количество ошибок в подряд должно произойти, чтобы система посчитала датчик не исправным. Например, при значении этого параметра 5 система будет работать, если каждые 5 секунд приходит хотя бы одна правильная информация от датчика.

Число ошибок датчика

Температура включения вентилятора. Температура радиатора горячей стороны, при которой включается вентилятор.

Параметр включение вентилятора

Температура выключения вентилятора. Температура радиатора горячей стороны, при которой выключается вентилятор. Должна быть меньше температуры включения.

Температура выключения вентилятора

Температура перегрева радиатора. Температура радиатора горячей стороны, при которой система выключается. Считается, что вышел из строя вентилятор.

Температура перегрева

Максимальная задаваемая температура. Параметр ограничивает температуру охлаждения, задаваемую кнопками контроллера.

Максимальная задаваемая температура

Максимальная задаваемая мощность. Определяет максимальную выходную мощность контроллера. Является ограничителем для параметра разрешенная мощность. Очень важный параметр. Его надо выбирать исходя не только из параметров элемента Пельтье, но и эффективности охлаждения горячей стороны модуля. В следующей статье я дам рекомендации, как его выбирать на практике.

Максимальная мощность

Измерительные коэффициенты.

Измерительные коэффициенты

Контроллер постоянно измеряет электрические параметры: ток, напряжение и мощность. Для измерения тока используется токовый шунт – резистор R15, для напряжения резисторные делители – R12, R8 и R13, R9. Эти элементы могут быть изменены для модернизации контроллера под другие выходные параметры. Так вот, измерительные коэффициенты учитывают передаточную характеристику измерителей электрических параметров.

Измерительный коэффициент тока. Учитывает сопротивление токового шунта – резистора R15. Показывает, значение тока для одной единицы АЦП. Это самое “узкое” место измерительной части контроллера. В базовом варианте коэффициент составляет 98 мА на единицу АЦП. Т.е. ток измеряется с очень плохой разрешающей способностью. Но, чтобы ее увеличить пришлось бы ставить усилитель, формировать для него отрицательное питание. Я решил сэкономить, упростить схему. Из-за этого значение тока в программе-мониторе все время скачет, но это издержки измерения. Напряжение на элементе Пельтье держится стабильным.

Коэффициент тока

Измерительный коэффициент напряжения. Учитывает сопротивление резисторных делителей – R12, R8 и R13, R9.

Коэффициент напряжения

Измерительный коэффициент мощности. Учитывает сопротивление как токового шунта, так и резисторных делителей.

Коэффициент мощности

Версия ПО контроллера. Показывает версию программного обеспечения контроллера, считанную из контроллера.

 

Регуляторы.

Не знаю, как описывать регуляторы. Те, кто знаком с теорией автоматического регулирования в пояснениях не нуждается. Кто не знаком – вряд ли все поймет. Попытаюсь объяснить очень поверхностно.

Пропорционально-интегральный регулятор температуры.

ПИ регулятор температуры

На регулятор температуры поступают измеренная и заданная температуры. Он:

  • вычисляет ошибку (Tзаданная – Tизмеренная);
  • умножает ошибку на интегральный коэффициент (Kti) и накапливает ее в интегральном звене (Int);
  • умножает ошибку на пропорциональный коэффициент (Ktp) и прибавляет ее к интегральному звену без накопления;
  • в результате на выходе регулятора формируется заданная мощность для следующего регулятора.

Kti – интегральный коэффициент регулятора температуры.

Интегральный коэффициент

Ktp – пропорциональный коэффициент регулятора температуры.

Пропорциональный коэффициент

Это основные коэффициенты, определяющие динамику системы.

Интегральный регулятор мощности.

Регулятор мощности

Имеет одно звено – интегральное.

Регулятор получает значения напряжения и тока, потребляемые ШИМ преобразователем,

  • вычисляет потребляемую мощность;
  • сравнивает ее с заданной и вычисляет ошибку;
  • умножает ошибку на интегральный коэффициент (Kpi) и накапливает ее;
  • в результате формируется заданное напряжение для регулятора напряжения.

Kti – интегральный коэффициент регулятора мощности.

Интегральный коэффициент

Я установил этот коэффициент минимальным.

Пропорционально-интегрально-дифференцирующий регулятор напряжения.

ПИД регулятор

Сложный, быстрый (80 мкс) регулятор. Стабилизирует напряжение и компенсирует пульсации входного напряжения. Чтобы с ним работать, необходимо к выходу подключить осциллограф. Настраивается пропорциональное звено, затем интегральное, затем дифференциальное. Дифференциальный коэффициент компенсирует пульсации питающего напряжения. С заданными мною коэффициентами регулятор работает устойчиво и прилично подавляет пульсации питания. Лучше не трогайте эти коэффициенты.

Kui – интегральный коэффициент регулятора напряжения.

Интегральный коэффициент

Kup – пропорциональный коэффициент регулятора напряжения.

Пропорциональный коэффициент

Kud – дифференциальный коэффициент регулятора напряжения.

Дифференциальный коэффициент

В следующей статье я расскажу о первых результатах работы регуляторов.

 

Регистратор.

В программе существует регистратор, который позволяет анализировать динамику процессов охлаждения и упрощает выбор коэффициентов регуляторов.

Регистратор запускается автоматически при запуске программы. Он записывает значения:

  • текущей температуры;
  • заданной температуры;
  • выходной мощности;
  • температуры радиатора горячей стороны.

Запись идет с дискретностью по времени 1 секунда. Максимальное время регистрации 20 000 сек или 5,5 часов.

Чтобы посмотреть результаты записи необходимо нажать закладку меню ”Регистратор”.

Регистратор

Увеличить фрагмент диаграмм можно выбором прямоугольной области с нажатой правой кнопкой мыши. Область надо выбирать слева-направо, сверху-вниз .

Регистратор

Выбор слева-направо, снизу-вверх вернет отображение всей информации.

 

Я постарался написать максимально понятную, удобную программу. Возможно, где-то не доработал, но я больше специализируюсь в программах для микроконтроллеров. К тому же не захотелось тратить много времени на “вылизывание” программы. Она предназначена только для отладки контроллера, а не для научных экспериментов.

В следующей статье я напишу о первых результатах испытаний контроллера, выводах, рекомендациях.

11 комментариев на «Программа Монитор контроллера элемента Пельтье. Адаптация контроллера под конкретную задачу.»

  1. Спасибо Эдуард за интересные статьи! Жалко, что раньше их не встретил в инете, теперь пересматриваю концепцию будущего холодильника с возможностью применения твоего опыта. И ещё, потестил программу на win8. Везде вместо русского языка кракозябры. Понимаю, что что то не то со шрифтами или языками в винде (наверно отсутствует что либо), но понять в чём дело не могу.

    • Здравствуйте. Никогда не запускал программу под Windows 8. Программа написана на Borland Builder и использует шрифт MS Sans Serif. Проверьте, установлен ли у вас этот шрифт. Я еще не уверен, что обмен по последовательному порту будет работать под Windows 8. Будет возможность проверю.

  2. Шрифт установлен, дополнительно переустановил, не помогло. В принципе при наличии картинки с описанием на сайте (в статье) — можно настроить параметры, несмотря на кракозябры. Не совсем в данной теме наверно вопрос, но всё же: если использовать данный контроллер с 2мя пельтье (до 120 Вт), то без переделки зашивки для МК, 1) нужно изменить номинал R15 до 0,03 Ома (3Вт, или 0,025 Ом на 2,5Вт , отличаются данные на схеме и на сборке — на схеме 0,05, на сборке 0,06 ома), поставить полевик мощнее , в наличии есть IRFZ44N, но они «хорошо» открываются при более 10В, возможно ли VT2 подрубить к цепи +12В (?), постараться индуктивность намотать 300-400, диод шоттки и катушки с запасом ампер на 12-14, VT4 поставлю помощнее, вентиляторов 2-3 шт, может тоже полевик (имею по ним небольшой запас, т.к. планировал сделать на пельтье Н-мост с обогревом). Достаточно ли данных действий или вмешаются ограничения ПО ? Спасибо за скорый ответ =).

    • Программное обеспечение никаких доработок не потребует. Все остальное надо смотреть более конкретно.
      VT2 к + 12 В цеплять нельзя. VT2 , VT3 это простейший драйвер – два эммитерных повторителя относительно земли и + 5В. Если подключите к + 12 В, то сгорит PIC контроллер. Для не низкопороговых транзисторов надо использовать микросхему – драйвер. Их много.
      Резистор R15 можно уменьшить, но при больших мощностях он будет грется. Можно применить интегральный датчик тока или усилитель на ОУ. Это позволит уменьшить нагрев R15 и увеличит разрешающую способность по току. Аппаратно я реализовал самый простой и дешевый вариант. Если увеличивать мощность, я думая стоит внести изменения в схему измерения тока.
      Дроссель на больших токах можно использовать меньшей индуктивности, но нельзя забывать о токе насыщения. Он должен быть соответствующим.
      Насчет обогрева непонятно, как вы реализуете на этом ПО.
      Я подумываю написать статью об увеличении мощности контроллера и завести страницу развернутых ответов на вопросы по контроллеру. Этот вопрос интересует срочно? Если да, попробую сделать это поскорее. Планировал в течение 2-3 недель.

      • Забыл сказать, что есть много низкопороговых MOSFET транзисторов на токи 10-20 и больше А. Они будут работать с этой схемой.

  3. Обогрев думаю реализовать на простенькой проге и SQP резисторах, включаемых через полевик (70-100Вт). Схема обогрева и охлаждения будет усложнённая — с компрессором, поэтому есть возможность теплообменник с одной стороны на пельтье охлаждать, с другой — резисторами греть. Для этого конечно будет отдельная схема управления со своими свистелками и т.д. =) Да, тогда забыл сказать чтобы не пробило пик ещё диод хотел впихнуть по выходу пик перед резистором, но думаю что с драйвером действительно выйдет не дороже и не хуже. А на счёт тех транзисторов — просто хочу применить то, что уже лежит и пылится (а они довольно здоровские). На счёт скорости статей — тут как вам удобнее, муза она такая штука интересная, подгонять нельзя! К тому же пельтьехи заказал в китае — ждать ещё точно месяц. Жду ваших новых статей!

  4. Эдуард спасибо за статьи и уникальную информацию!
    С нетерпением жду (и наверняка не один) статью по увеличению мощности контроллера.
    В моем случае задача нагрева так же стоит, но думал решить ее банально — отдельным нагревателем (лампочкой накаливания?!) и реле.

    Скажите, можно с вами договориться по поводу изготовления готового контроллера, так сказать для тех кто «умеет включать паяльник» но не более?

  5. Эдуард Спасибо за программу для контроля режимов все очень наглядно, но у меня почему-то не записываются данные в PIC. аппаратно все хорошо, а через программу не хочет вносить изменения? Подскажите в чем проблема.

    Спасибо за скорый ответ =).

    • Что значит не записываются? Программа работает, ошибок обмена нет, данные отображаются, а не записываются?

      • Эдуард, это значит что я не могу программой изменить параметры, пример Заданную температуру Разрешенную мощность, Защитные функции, коэффициенты … в общем везде где есть символ карандаша. Я его нажимаю открывается панель изменений за нашу свое значение, нажимаю записать, и … ничего не происходит значение не меняется!?
        Программа работает, ошибок обмена нет. циклы считает, информацию показывает, графики строит

        • Могу предположить только одно. У Вас отсутствует соединение сигнала TxD модуля PL2303 и вывода RxD PIC контроллера. Проверьте осциллографом непосредственно на выводе PIC контроллера в момент записи.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *