Page 9 of 12

Re: Применение термостата 0,1°C в инкубаторе

Posted: 08 Apr 2015 09:55
by propell_ant
mikolasnn, ок, тут еще кучу вопросов предстоит победить. Не пропадай.

Re: Применение термостата 0,1°C в инкубаторе

Posted: 08 Apr 2015 13:03
by Recov
Приветствую всех! Да у меня всякие стабилизаторы есть, и TO90 и TO-220 и D2PAK. Последние я не поленился откуда то наколупать. propell_ant мне так не удобно что мы тебя озадачиваем этим вопросом. Ну честно.

Re: Применение термостата 0,1°C в инкубаторе

Posted: 08 Apr 2015 17:05
by propell_ant
Recov wrote:propell_ant мне так не удобно что мы тебя озадачиваем этим вопросом. Ну честно.
мне тоже надо плавное регулирование, только не было повода доделать. Всё по кускам разбросано и готово было на 90%

Важный вопрос ко всем:
какая планируется мощность нагревателя?

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

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

На схеме показан MOC с детектором нуля - детектор тут не нужен, подойдет и без него.

Пинаем, не стесняемся!
Добавлено спустя 19 дней:
Модуль проверен в железе, исправлены ошибки в софте, теперь всё работает. Архивы обновил.
Напоминаю, модуль в одиночку работать не может, ему нужен "сосед" - правильное устройство 1-wire, например датчик DS18B20. Обычно он присутствует.
пример отправки модулю команды на установку 50% мощности:

Code: Select all

  BYTE checksum = 0;
  w1_init();
  w1_write(0xCC);//SKIP ROM
  w1_write(0x45);//наша особая команда, о которой знает только наш модуль
  w1_write(0x02);//длина передаваемых данных
  w1_write(50);//младший байт
  w1_write(0x00);//старший байт
  checksum = 0x45 ^ 0x02 ^ 50 ^ 0x00;//вычисление контрольной суммы
  w1_write(checksum);//передача контрольной суммы

Re: Применение термостата 0,1°C в инкубаторе

Posted: 08 Apr 2015 18:32
by mikolasnn
Выглядит симпатично . А какая логика работы намечается . После включения работает на полную , а по достижению температуры начинает плавно пропускать полупериоды ?

Re: Применение термостата 0,1°C в инкубаторе

Posted: 08 Apr 2015 22:52
by propell_ant
mikolasnn, можно для начала попробовать просто П регулятор, и посмотреть, насколько большой окажется невязка.
П - это пропорциональный, берется разница между установленной температурой и текущей измеренной, пропорционально разнице устанавливается текущая мощность. Например, при разнице 10 градусов мощность 100 процентов. В нашем термостате это был бы коэффициент Kп=1.0 (у нас формат хранения как раз 100 пунктов на 10 градусов)
Чем ближе температура подбирается к установленной, тем меньше становится мощность. Но проблема в том, что система постоянно теряет тепло. Тепловой баланс наступит несколько ниже, чем установленная температура, в точке, где мощность подводимого тепла сравнялась с мощностью отводимого.
Вот Recov написал, что собирается использовать корпус холодильника, я и задумался, насколько велики будут эти мощности, и насколько будет отличаться температура стабилизации от уставки.

Вот у вас какой будет нагреватель?

Re: Применение термостата 0,1°C в инкубаторе

Posted: 09 Apr 2015 06:16
by Recov
Я планирую или греющий кабель или пленку от теплых полов. Ну ватт так на 150 - 200.

Re: Применение термостата 0,1°C в инкубаторе

Posted: 09 Apr 2015 09:49
by propell_ant
Что за пленка? Никогда не слышал.

Re: Применение термостата 0,1°C в инкубаторе

Posted: 09 Apr 2015 11:11
by IYra
propell_ant wrote:mikolasnn, можно для начала попробовать просто П регулятор, и посмотреть, насколько большой окажется невязка.
Тепловой баланс наступит несколько ниже, чем установленная температура, в точке, где мощность подводимого тепла сравнялась с мощностью отводимого.
Мне кажется для таких инерционных нагревателей П регулятора хватит с избытком. Невязку скорректировать поправкой.
Подбирается экспериментально.
И схема детектора 0 не нужна . Включается например на 100 мс выключено 900 - значит коэфф. = 1/10
Все можно замутить на одном термостате.

Re: Применение термостата 0,1°C в инкубаторе

Posted: 09 Apr 2015 11:49
by propell_ant
Поправка-то плавать будет. При изменении температуры от максимума днем к минимуму ночью размах температур окружающей среды будет наверно 10-15 градусов. И вместе с ней (температурой окружающей среды) будет плавать невязка, раза в два-три-четыре (навскидку). Кроме температуры может влиять еще скорость ветерка в помещении с инкубатором, дверь открылась - получите обдув. Пропорциональный регулятор ловит изменение и делает что может, но невязка плывет. Я просто не знаю на сколько.

Сделаем - увидим. Если модуль не нужен, никто его мутить не станет, поставят просто симистор. А прошивку термостата мы допилим.

Re: Применение термостата 0,1°C в инкубаторе

Posted: 09 Apr 2015 14:07
by Recov
propell_ant wrote:Что за пленка? Никогда не слышал.
Да как не слышал, слышал конечно, это я сформулировал не правильно, вот например: http://teplolivam.ru/otoplenie/teply-po ... -pola.html
Чем эти нагреватели хороши, нет инерции, как лампочки накаливания, и если пленку по всей площади инкубатора положить, прогрев будет равномерный, не надо такие мощные вентиляторы ставить. Я их еще ни разу не делал, так немного теории почитал.
А насчет перепадов температур, так по моему инкубатор как правило в квартире стоит, там температура относительно стабильна.

Re: Применение термостата 0,1°C в инкубаторе

Posted: 09 Apr 2015 15:45
by propell_ant
Recov, насчет вашего "неудобно" - вы мне только что сэкономили кучу сил и времени. Я не знал о такой пленке.

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

Добавлено спустя 1 час 22 минуты 57 секунд:
Выложил прошивку модуля рядом с железом.

Прошивка основана на этом проекте

Re: Применение термостата 0,1°C в инкубаторе

Posted: 18 Apr 2015 21:29
by propell_ant
Хорошие новости (если конечно кто-то ждет новостей):
алгоритм регулятора готов, на модели работает. ПИ регулятор.
Следущая остановка - проверка в железе.

Re: Применение термостата 0,1°C в инкубаторе

Posted: 20 Apr 2015 13:42
by Recov
У меня катастрофически нет времени..

Re: Применение термостата 0,1°C в инкубаторе

Posted: 20 Apr 2015 16:02
by propell_ant
а мы никуда и не торопимся, это я так, для приободрения постоянных читателей, что процесс идет своим чередом

Re: Применение термостата 0,1°C в инкубаторе

Posted: 23 Apr 2015 15:14
by olegrom63
Собрал термостат по схеме улучшенного термостата http://eldigi.ru/articles/uluchshennyi_ ... 13_ds18b20 ,прошивка с 1 поста с ОК.Работает, но почему-то отключатся при 35-ти градусах, дельта 0,1. Хотя по электронному термометру, он без десятых, отключение идет между 37 и 38 градусами. А собранный кажет 35-34,9. В чем дело? И разбег не получается, ставишь 0,5, а он все равно отключает через 0,1 градуса.

Re: Применение термостата 0,1°C в инкубаторе

Posted: 24 Apr 2015 08:39
by propell_ant
распишите подробнее, как проходит процесс включения нагревателя при снижении температуры и (отдельно) выключения нагревателя при повышении. А то из вашего объяснения пока не понятно.

Проверьте датчик термостата - например измерьте температуру у себя подмышкой, потом измерьте себе температуру обычным ртутным градусником, сравните показания.

Re: Применение термостата 0,1°C в инкубаторе

Posted: 27 Apr 2015 14:40
by propell_ant
Всем привет, у меня есть новости по ПИД регулятору.
Модуль управления мощностью собран и работает в железе. В прошивке найдены и исправлены ошибки, архив в исходном посте я обновил:
http://hardlock.org.ua/viewtopic.php?f= ... 222#p11135

Модуль был собран без регулятора напряжения питания, и был запитан напрямую от шины 1-wire (требуется трехпроводная схема). Напряжения хватило, модуль нормально видит передаваемые по шине данные, принимает и выполняет команды.

На всякий случай выкладываю код, который в прошивке термостата посылает модулю команду установить новый процент мощности:

Code: Select all

  BYTE checksum = 0;
  w1_init();
  w1_write(0xCC);//SKIP ROM
  w1_write(0x45);//наша особая команда, о которой знает только наш модуль
  w1_write(0x02);//длина передаваемых данных
  w1_write(50);//младший байт
  w1_write(0x00);//старший байт
  checksum = 0x45 ^ 0x02 ^ 50 ^ 0x00;//вычисление контрольной суммы
  w1_write(checksum);//передача контрольной суммы
PS - теперь думаю, как же тестировать работу ПИД регулятора. Дело в том, что у инкубатора при мощности нагревателя 200 Вт характеристики весьма своеобразные, городить коробку в натуральную величину и искать нагревательный элемент мне что-то пока лениво. Есть соблазн просто воткнуть утюг и попробовать регулировать температуру его подошвы в районе 50 градусов.

Re: Применение термостата 0,1°C в инкубаторе

Posted: 29 Apr 2015 15:24
by olegrom63
сравнивал с медицинским ртутным под мышкой- врет на 3.5 градуса.Потому и отключает в 35 градусов, а не в 38.5. Как отрегулировать или датчик или схему. Подключение датчика по второй схеме.

Re: Применение термостата 0,1°C в инкубаторе

Posted: 29 Apr 2015 16:18
by propell_ant
я бы, конечно, посоветовал сменить датчик, вещь достаточно дешевая.
Но в соседней ветке mcm777 как раз попросил и уже тестирует термостат с настраиваемой поправкой показаний.
Но если у вас инкубатор - всё же рекомендую заменить датчик. Вы не знаете, почему он сейчас врет, и не узнаете, когда он станет врать с другой погрешностью.

Re: Применение термостата 0,1°C в инкубаторе

Posted: 29 Apr 2015 20:23
by olegrom63
А схемы подключения его имеют значение?

Re: Применение термостата 0,1°C в инкубаторе

Posted: 30 Apr 2015 08:52
by propell_ant
olegrom63, нет, датчик цифровой, если что-то неправильно подключено - на экране будет 0.0 или (бывает иногда) 85.0. Если как-то неправильно собрать термостат - на экране будет белиберда нечитаемая.
Внутри датчика никакой подстройки показаний нет.

ЗЫ перестаньте писать в три ветки форума сразу. Все дальнейшие дубликаты будут удаляться, основными буду считать ваши сообщения в ветке "Инкубатора", т.е. здесь.

Re: Применение термостата 0,1°C в инкубаторе

Posted: 30 Apr 2015 10:35
by vigilant
подскажите это куда
Исходник один на все варианты - компилируется в нужную версию путём комментирования (раскомментирования) нужных дэфайнов:

КОД: ВЫДЕЛИТЬ ВСЁ
#define Cathode //для индикатора с ОК
//#define Anode //для индикатора с ОА

#define heat //точка отображается если T < Tуст.
//#define cold //точка отображается если T > Tуст.

Re: Применение термостата 0,1°C в инкубаторе

Posted: 30 Apr 2015 13:43
by propell_ant
это нагреватель под индикатор с ОК
если, конечно, я правильно понял вопрос

Re: Применение термостата 0,1°C в инкубаторе

Posted: 12 May 2015 13:46
by olegrom63
Снастройками непонятно. Ставишь 0.5 градуса в настройках, а выключение все-равно через 0.1 градуса идет, ставишь дельту на + или - 2.5 току нет. Ставишь температуру выключения 38.5, а выключается все-равно в 36.5, включается на 36.4. Может что-то не так делаю? Пните плиз! :wall:

Re: Применение термостата 0,1°C в инкубаторе

Posted: 12 May 2015 14:39
by propell_ant
olegrom63 wrote:Ставишь 0.5 градуса в настройках, а выключение все-равно через 0.1 градуса идет
Опишите как можно подробнее, что и как вы настраиваете. Типа включил, нажел вот так-то вижу то-то, нажимаю, настраиваю... и т.д. все ваши действия.

Кроме того, хочу отметить, что дельта (гистерезис) не может быть настроена на -2.5, ее значение ограничено снизу на уровне 0.1