RSS блога
Подписка
Термоконтроллер с PID-регулированием в мирно-хозяйственных целях
- Цена: 12.58$
- Перейти в магазин
Я брал год назад по другой ссылке за 50 с лишним долларов, но там комплект с еще одним, более навороченным термоконтроллером. Поэтому даю ссылку на другой лот с вроде бы нормальным продавцом и множеством заказов.
Брался для совсем других целей, но оказался приделан к кухонной электродуховке :) В этом применении работает отлично :)
Подробнее под катом.
Год назад я заказал себе для паяльной печи комплект из двух термоконтроллеров — один обозреваемый и второй гораздо более функциональный. Почему-то у меня появилась глупая мысль использовать их вместе, но когда уже получил заказ резко поумнел и этот сравнительно простой термоконтроллер остался не удел.
Итак, что этот термоконтроллер может. Самое главное, конечно же, это поддерживать заданную температуру, управляя нагревателем. Но чем он лучше любого термоконтроллера за 1.5-2 бакса, которых полно на Али? Самое главное — тем, что он обеспечивает регулирование температуры PID-регулятором.
Основные параметры этого регулятора (именно этой модели — REX-C100FK02-V*AN):
Вот русскоязычный мануал на этот контроллер (нашел где-то в сети) — drive.google.com/open?id=1HDs7UX5rllDy8GFdYrdINbcGI_Snoo00
А вот качественный англоязычный, чуть более полный, но по настройкам немного не соответствует — drive.google.com/open?id=1Ez--F-3hjLzNtKP36FkGy6vfGQ_AkPkn
И пролежал бы он у меня еще неизвестно сколько, если бы жена не пожаловалась, что в нашей электродуховке она не может запекать полимерную глину — температуру там нормально не выставить. Да и пироги порой подгорают :) Духовка из самых дешевых, увы :) И я вспомнил об этом контроллере. Мне он не понадобился, слишком примитивен, а вот для духовки — самое то. Но решил я не курочить духовку, а сделать отдельную коробочку с этим регулятором и твердотельным реле на 40 ампер. Точно такое же реле уже год трудится у меня на почти такой же духовке (переделанной в паяльную печь) и не жужжит.
Крепится контроллер очень просто — вставляется в панель и с обратной стороны поджимается рамкой с защелками. Рамка снабжена пружинными рычажками, поджимающими регулятор:
Все подключения производятся через винтовые клеммы на задней стенке:
Подключение очень понятно расписано как на наклейке на корпусе контроллера, так и в мануале.
Меня интересует: питание (220 вольт), выход управляющего напряжения (прямиком на твердотельное реле), вход термопары.
При желании можно еще подключить выход аварийной сигнализации. Ее можно отключить или настроить на один из режимов:
Общий план был такой — отдельная коробочка с контроллером и твердотельным реле на радиаторе, из нее выходят два силовых провода с вилкой и розеткой (да, розетка на проводе) и термопара. Термопара вставляется в духовку и зажимается ее дверцей, изоляция у термопары термоупорная, ничего ей не будет :)
Сначала мелькнула мысль напечатать корпус на 3D-принтере, но печатать такой размер из ABS на моем открытом всем сквознякам Anet A8 — геморрой, а PLA, размягчающийся уже при 55-60 градусах рядом с духовкой долго не проживет. Решил резать из литого поликарбоната толщиной 6 мм, их у меня есть несколько листов 50х50 см :)
Для начала нарисовал модель (стакан для масштаба):
Вот так оно будет собираться:
Верхняя крышка и одна стенка съемные, на винтах, остальное клееное. Правда, уже потом, когда все было сделано, до меня дошло, что лучше бы было сделать съемным дно, а не крышку, но переделывать не стал :)
Вырезал на фрезерном станке, так что размеры сошлись идеально. Неидеально сошлась только толщина, которая оказалась 5.9 мм вместо 6. Для более прочной склейки (или чтобы думать что так более прочно) по краям стенок сделал проточки, так что стенки соединяются полупазами:
И вот кучка запчастей готова к дальнейшей работе:
Сначала думал обклеить самоклейкой, но во-первых в магазине мне не попалась пленка нормального цвета, только цветочки да тканевые узоры, а во-вторых я не был уверен, что смогу обклеить без складок и щелей, так что решил красить.
Предварительная примерка показала что все сходится, поэтому закрепил стенки малярным скотчем и проклеил все стыки. Клеил дихлорметаном, держит железно. Набрал его в шприц с иглой, у которой отрезал скошенный носик, и прошелся иголкой по всем стыкам изнутри (даже по одному стыку, который не надо было клеить, увлекся :)). Дихлорметан очень текуч — моментально заполняет мельчайшие щели, и очень интенсивно испаряется, так что даже не пришлось давить поршень, тепло рук нагревало дихлорметан достаточно, чтобы его испарения создавали избыточное давление внутри шприца.
Сохнет:
А пока корпус сох, я откопал у себя кусок радиатора, который когда-то зачем-то заказывал на али (уже даже не помню зачем). По размерам он подошел идеально, разве что по длине пришлось отпилить нужный кусок.
Распечатал шаблон отверстий, прихватил его кусочками двухстороннего скотча к радиатору и просверлил отверстия:
После чего обнаружил, что слегка неправильно нарисовал модель твердотельного реле, и отверстия на радиаторе теперь не совсем совпадают с отверстиями в реле. К счастью, я ошибся очень удачно — во-первых не совпадало только одно отверстие, а во-вторых оно не совпадало так сильно, что совершенно не мешало просверлить правильное :) Так что все обошлось просто лишним отверстием :)
Через час корпус уже был достаточно прочным, чтобы можно было спокойно его крутить и примерять. И вот тут я обнаружил свой второй прокол в модели: сам-то контроллер по габаритам я нарисовал верно, а вот крепежную рамку с защелками рисовать не стал. И оказалось, что она теперь мешает крышке закрыться примерно на 3 мм. Пришлось класть крышку в станок и фрезеровать на ее внутренней стороне выемку.
Еще одна моя ошибка была в том, что узкие планки, которые я приклеил к стенкам и к которым должны прикручиваться крышки, я вырезал без отверстий для болтов. Решил, что приклею, а потом по месту просверлю. Сверлить ровно и именно там где наметил никогда не было моей сильной стороной. Короче, почти все отверстия в этих планках уехали. Из-за этого пришлось разбивать сверлом отверстия в крышках и зенковкой пытаться профрезеровать скосы для шляпок в ту же сторону :) Получился слегка колхоз…
Кстати, резьба в поликарбонате держит болты очень хорошо, никаких гаек не нужно.
Перед покраской слегка закруглил грани с помощью напильника и шкурки, процесс очень быстрый и легкий.
В процессе покраски я не делал фото, как-то забыл об этом, да там ничего интересного, в общем-то, и нет. Шкуркой заматировал поверхности, обезжирил, покрыл двумя слоями грунта и потом двумя слоями краски.
Почему такой цвет? А фиг его знает :) Просто кроме этого у меня были лишь черный, синий, красный и зеленый, а они мне не нравились в данном случае :) Ну и почему бы и нет :)
В отверстия для проводов я вставил специальные резиновые шайбы для таких случаев, брал их тоже на али:
(коцка — это результат моего нетерпения, полез ковырять корпус когда краска еще не высохла окончательно)
Так как они не предназначены для панелей толщиной 6 мм, пришлось с внутренней стороны делать под них выемки, оставляя стенки толщиной 1 мм:
Затянул в отверстия силовые провода, соединил заземление и одну из жил, из которой сделал отвод для запитки контроллера, как и от одной из вторых жил, идущей от вилки, прикрутил реле на термопасту к радиатору, а радиатор к корпусу:
Дальше все просто — провода к реле, отмерить длину проводов до контроллера, отрезать, зачистить, залудить, прикрутить…
Все провода, выходящие из корпуса я обтянул изнутри стяжками чтобы их случайно не выдернули. Стандартная практика.
Все соединил и включил посмотреть не бахнет ли что-нибудь салютом. Не бахнуло:
Там в глубине корпуса можно увидеть светящийся индикатор реле, значит все нормально, можно собирать :)
Для начала я решил устроить ему стресс-тест и подключил к нему вот такой тепловентилятор на 3 кВт:
Термопару при этом я посадил на радиатор реле и закрепил кусочком каптона чтобы контролировать температуру не только на ощупь.
Включил, тепловентилятор зажужал, а я пошел писать спойлер про ПИД-регулятор, время от времени отвлекаясь и проверяя температуру радиатора. Через 15 минут после старта температура дошла до 50 градусов. Еще через 20 минут она была уже 67 градусов и на этом значении продержалась следующие 30 минут пока я не выключил все это — в офисе стало жарко :) Вердикт — с духовкой 1.5-2 кВт справится без проблем :)
Повседневное (когда не нужно менять какие-то глубокие настройки) управление этим контроллером очень простое. Сразу после подачи питания она начинает пытаться регулировать температуру, отдельного включения для этого не предусмотрено.
Вообще передняя панель минималистична:
Верхний, красный дисплей — измеряемая (текущая) температура
Нижний, зеленый дисплей — заданная температура
Индикаторы слева по порядку сверху вниз:
1. Аварийная сигнализация 1
2. Выходной сигнал
3. Аварийная сигнализация 2
4. Индикатор работающей автонастройки PID
Кнопки слева направо: «настройка», «сдвиг», «вверх», «вниз».
Для установки заданной температуры нажимаем «настройку», все разряды нижнего дисплея кроме младшего начинают мерцать. Кнопками «вверх» и «вниз» выставляем в младшем разряде нужную цифру и нажимаем «сдвиг», теперь мерцают все разряды кроме десятков, настройка сдвигается на разряд влево. И так выставляем нужные цифры во всех разрядах. Для окончания настройки нажимаем еще раз «настройку».
Результат всей этой возни :)
Итог:
Контроллер своих денег стоит и с работой справляется очень неплохо, особенно если настроить его чуть более тонко, чем предполагает автонастройка. Твердотельное реле тоже отлично справляется с достаточно большой нагрузкой, хотя насчет заявленных 40 ампер у меня очень большие сомнения. Максимум 20, да и то с хорошим радиатором и его активным охлаждением.
Все :)
Брался для совсем других целей, но оказался приделан к кухонной электродуховке :) В этом применении работает отлично :)
Подробнее под катом.
Год назад я заказал себе для паяльной печи комплект из двух термоконтроллеров — один обозреваемый и второй гораздо более функциональный. Почему-то у меня появилась глупая мысль использовать их вместе, но когда уже получил заказ резко поумнел и этот сравнительно простой термоконтроллер остался не удел.
Итак, что этот термоконтроллер может. Самое главное, конечно же, это поддерживать заданную температуру, управляя нагревателем. Но чем он лучше любого термоконтроллера за 1.5-2 бакса, которых полно на Али? Самое главное — тем, что он обеспечивает регулирование температуры PID-регулятором.
постараюсь объяснить попроще что такое PID-регуляция :)
По русски это понятие, кстати, сокращается в те же буквы — ПИД, Пропорционально-Интегрирующе-Дифференцирующая регуляция.
В инете множество статей, посвященных ПИД, но очень мало рассказывающих об этом понятными словами. Я не популяризатор, но постараюсь изложить принцип работы ПИД-регуляторов максимально доступно :)
ЗЫ: конкретные цифры на графиках могут не совпадать с цифрами в примерах, но принцип сохраняется :)
Представьте, что у нас есть банка с водой, температуру которой нужно поддерживать 70 градусов с помощью вставленного в эту банку нагревателя мощностью 100 Ватт. Для измерения температуры в воду опущен термометр.
Самый простой способ сделать это как раз применяется в однбаксовых терморегуляторах: включаем нагреватель, температура достигает заданной, выключаем нагреватель, температура падает ниже заданной — включаем нагреватель, и т.д.
Элементарнейший и дешевейший способ, не требующий никаких вычислительных ресурсов. На этом принципе делают как цифровые контроллеры, так и аналоговые, и даже механические. Однако есть у него большой недостаток — он не поддерживает более-менее точно заданную температуру. С таким регулятором температура воды в нашей банке будет гулять вокруг заданной, то превышая ее, то падая ниже. График температуры будет напоминать пилу. Это называется пороговый регулятор, то есть который включает или выключает нагреватель по достижении заданных порогов:
А что если не просто включать-выключать нагреватель, а регулировать его мощность — чем температура воды ниже заданной тем больше мощности подаем на нагреватель? Звучит логично и вот так у нас и начинает появляться ПИД :) Точнее, появилась первая его составляющая Пс — пропорциональная, значение которой прямо пропорционально разнице между заданной и текущей температурами. Итак, будем выдавать на нагреватель значение Пс: при текущей температуре воды 20 градусов он выдаст в нагреватель 70-20=50 Ватт. Когда вода нагреется до 40 градусов, он уже будет выдавать 70-40=30 Ватт. При температуре воды 60 градусов он будет выдавать 70-60=10 Ватт. Отлично, никаких прыжков вокруг заданной температуры, все плавно :) Однако есть одна закавыка: при мощности на нагревателе 10 Ватт он уже не может и дальше нагревать воду, а может только удерживать эти достигнутые 60 градусов. Итак, вода 60 градусов, Пс соответственно выдает 10 Ватт и температура воды стоит на месте, до 70 градусов с таким регулятором ей не добраться:
Нужно что-то добавлять к пропорциональной составляющей, какое-то значение, причем не постоянное. На помощь приходит Ис — интегрирующая составляющая. Это накопитель ошибок. При каждом измерении в него добавляется разница между заданной и текущей температурами. Если заданная температура больше, то добавляется положительное число, если меньше, то отрицательное. У этой составляющей есть заданное максимальное значение, превысить которое она не может, то есть если при очередном добавлении оказывается, что сумма превысит максимум, то Ис становится равной максимуму, но не больше. То же касается нуля — отрицательным числом она тоже не может стать. Пусть у нас этот максимум будет равен мощности нагревателя — 100. Теперь на нагреватель будет выдаваться суммарное значение мощности Пс+Ис. Для примера последовательность температур и что при этом получается:
1. Температура 20 градусов, Ис изначально равна нулю, Пс=70-20=50, в нагреватель выдается Ис+Пс=0+50=50 Ватт.
2. Вода нагрелась до 30 градусов, Ис=0(ее предыдущее значение)+(70-30)=40, Пс=70-30=40, в нагреватель выдается Ис+Пс=40+40=80 Ватт.
3. Вода нагрелась до 40 градусов, Ис=40(ее предыдущее значение)+(70-40)=70, Пс=70-40=30, в нагреватель выдается Ис+Пс=70+30=100 Ватт.
4. Вода нагрелась до 60 градусов, Ис=70(ее предыдущее значение)+(70-60)=80, Пс=70-60=10, в нагреватель выдается Ис+Пс=80+10=90 Ватт.
Смотрите-ка, пока все выглядит неплохо, вода уже 60 градусов, а нагреватель все еще греет воду, хотя и начал снижать мощность :)
5. Вода нагрелась до 70 градусов, Ис=80(ее предыдущее значение)+(70-70)=80, Пс=70-70=0, в нагреватель выдается Ис+Пс=80+0=80 Ватт.
6. Вода нагрелась до 80 градусов, Ис=80(ее предыдущее значение)+(70-80)=70, Пс=70-80=-10, в нагреватель выдается Ис+Пс=70+(-10)=60 Ватт.
Вода перегрелась. И хотя, как видно, мощность пошла вниз, температура еще будет какое-то время колебаться пока не успокоится на заданном значении:
Это называется перерегулирование. Происходит оно из-за того, что и нагреватель и термометр и, главное, вода имеют какую-то инерцию, регулятор получает обратную связь (показания температуры) с определенным запаздыванием. При подаче на нагреватель полной мощности вода не нагреется мгновенно до 100 градусов, и точно так же она не остынет мгновенно при выключении нагревателя. Регулятор посмотрел на температуру — холодная вода, добавил мощности. Через 2 секунды глянул — все еще холодная — опять добавил. А когда в очередной раз он обнаруживает, что вода уже дошла до нужной температуры то начинает выдавать мощность, накопленную в Ис, считая, что это как раз нужное для поддержания температуры значение мощности (на самом деле интегрирующая составляющая после устаканивания всех возмущений действительно содержит значение, необходимое для ровного поддержания регулируемой величины, а пропорциональная призвана только компенсировать случайные отклонения). Но для воды это много и она продолжает нагреваться. И только после превышения заданной температуры регулятор начинает снижать мощность. И эта качка продолжается некоторое время пока значение Ис не придет к нужной величине.
Что можно предпринять в таком случае? Ну, например можно понизить влияние на выходную мощность Ис. Это называется коэффициент, у каждой составляющей ПИД может быть свой коэффициент, которым можно повышать или понижать влияние этой составляющей на выходной результат. Уменьшим влияние Ис до 0.3 от его значения — Ис*0.3:
Уже лучше, но все равно есть колебание в начале. Это из-за слишком большого влияния пропорциональной составляющей, давайте уменьшим и ее влияние в 2 раз — Пс*0.5:
Идеально, правда? :)
Нуу… Почти. Колебаний нет, но вот время нагрева увеличилось. Оно пришло к заданной температуре только к 25-му отсчету.
На самом деле зачастую используют ПИ-регулятор, без его дифференцирующей части и это вполне работает, как видно. Однако часто можно добиться еще лучшего результата с использованием третьей составляющей — дифференцирующей, Дс.
Она является «демпфером», не дающим регулируемому устройству слишком быстро менять свое состояние. В нашем примере Дс начнет снижать выходную мощность тем сильнее чем быстрее будет нагреваться вода, иными словами она не даст «разогнаться» графику роста температуры настолько, чтобы он проскочил заданную температуру :) При этом, пока до заданной температуры далеко влияние Дс не очень значительно на фоне других составляющих, температура может расти быстро. Но чем ближе она к заданной тем сильнее становится влияние Дс на фоне все уменьшающихся Ис и Пс.
Дс в отличии от Пс и Ис не прибавляется к выходному сигналу (в нашем примере- мощности), а вычитается из него. Она равна скорости изменения регулируемой величины (в нашем примере — температуры). Например, если в прошлый замер температура была 28 градусов, а в текущем замере она уже 31 градус, то Дс будет равна 3 — на столько температура выросла с прошлого замера, это скорость роста температуры. И это значение, возможно умноженное на свой коэффициент, вычитается из выходной мощности, потому эта составляющая и называется дифференцирующей :)
Вот что получится при добавлении Дс:
Как видно, температура вышла на режим гораздо быстрее и при этом без всплесков и колебаний. Попытку регулятора проскочить температуру вверх погасила как раз дифференцирующая составляющая.
Вот, если интересно, график изменения значений Пс, Ис и Дс в этом регуляторе в том же временном масштабе:
А вот что было бы без дифференцирующей составляющей при тех же условиях:
И еще раз коротким итогом :)
ПИД — это регулятор, который формирует сигнал воздействия на регулируемую величину из трех составляющих: пропорциональной, интегрирующей и дифференцирующей.
Пропорциональная составляющая добавляет в выходной сигнал сиюминутную разницу между заданной и текущей измеренной величинами (т.н. ошибку). Интегрирующая накапливает (интегрирует) разницы всех измерений и добавляет в выходной сигнал накопленное значение (но не превышающее заданного максимума). Дифференцирующая определяет скорость изменения регулируемой величины (на сколько она изменилась с прошлого измерения) и вычитает эту величину из выходного сигнала. Все три составляющие могут иметь свои коэффициенты, усиливающие или ослабляющие их влияние на выходной сигнал.
Уфф… :) Ну, я говорил, что не являюсь популяризатором, поэтому за доходчивость своего изложения не отвечаю. Но я старался :)
ЗЫ: самое веселое заключается в подборе коэффициентов этих составляющих, т.к. без правильных (хотя бы примерно) значений этих коэффициентов ПИД-регулятор или вообще не будет регулировать или будет регулировать очень плохо. Подбор идеальных коэффициентов, как я понял, дело весьма нетривиальное. Пока я не встречал в инете доступное объяснение как их рассчитывать, в основном приводятся методики их экспериментального подбора. Что, впрочем, достаточно логично, т.к. для расчета нужно столько всего знать о регулируемом механизме, сколько о нем не всегда знают даже его создатели :))
В инете множество статей, посвященных ПИД, но очень мало рассказывающих об этом понятными словами. Я не популяризатор, но постараюсь изложить принцип работы ПИД-регуляторов максимально доступно :)
ЗЫ: конкретные цифры на графиках могут не совпадать с цифрами в примерах, но принцип сохраняется :)
Представьте, что у нас есть банка с водой, температуру которой нужно поддерживать 70 градусов с помощью вставленного в эту банку нагревателя мощностью 100 Ватт. Для измерения температуры в воду опущен термометр.
Самый простой способ сделать это как раз применяется в однбаксовых терморегуляторах: включаем нагреватель, температура достигает заданной, выключаем нагреватель, температура падает ниже заданной — включаем нагреватель, и т.д.
Элементарнейший и дешевейший способ, не требующий никаких вычислительных ресурсов. На этом принципе делают как цифровые контроллеры, так и аналоговые, и даже механические. Однако есть у него большой недостаток — он не поддерживает более-менее точно заданную температуру. С таким регулятором температура воды в нашей банке будет гулять вокруг заданной, то превышая ее, то падая ниже. График температуры будет напоминать пилу. Это называется пороговый регулятор, то есть который включает или выключает нагреватель по достижении заданных порогов:
А что если не просто включать-выключать нагреватель, а регулировать его мощность — чем температура воды ниже заданной тем больше мощности подаем на нагреватель? Звучит логично и вот так у нас и начинает появляться ПИД :) Точнее, появилась первая его составляющая Пс — пропорциональная, значение которой прямо пропорционально разнице между заданной и текущей температурами. Итак, будем выдавать на нагреватель значение Пс: при текущей температуре воды 20 градусов он выдаст в нагреватель 70-20=50 Ватт. Когда вода нагреется до 40 градусов, он уже будет выдавать 70-40=30 Ватт. При температуре воды 60 градусов он будет выдавать 70-60=10 Ватт. Отлично, никаких прыжков вокруг заданной температуры, все плавно :) Однако есть одна закавыка: при мощности на нагревателе 10 Ватт он уже не может и дальше нагревать воду, а может только удерживать эти достигнутые 60 градусов. Итак, вода 60 градусов, Пс соответственно выдает 10 Ватт и температура воды стоит на месте, до 70 градусов с таким регулятором ей не добраться:
Нужно что-то добавлять к пропорциональной составляющей, какое-то значение, причем не постоянное. На помощь приходит Ис — интегрирующая составляющая. Это накопитель ошибок. При каждом измерении в него добавляется разница между заданной и текущей температурами. Если заданная температура больше, то добавляется положительное число, если меньше, то отрицательное. У этой составляющей есть заданное максимальное значение, превысить которое она не может, то есть если при очередном добавлении оказывается, что сумма превысит максимум, то Ис становится равной максимуму, но не больше. То же касается нуля — отрицательным числом она тоже не может стать. Пусть у нас этот максимум будет равен мощности нагревателя — 100. Теперь на нагреватель будет выдаваться суммарное значение мощности Пс+Ис. Для примера последовательность температур и что при этом получается:
1. Температура 20 градусов, Ис изначально равна нулю, Пс=70-20=50, в нагреватель выдается Ис+Пс=0+50=50 Ватт.
2. Вода нагрелась до 30 градусов, Ис=0(ее предыдущее значение)+(70-30)=40, Пс=70-30=40, в нагреватель выдается Ис+Пс=40+40=80 Ватт.
3. Вода нагрелась до 40 градусов, Ис=40(ее предыдущее значение)+(70-40)=70, Пс=70-40=30, в нагреватель выдается Ис+Пс=70+30=100 Ватт.
4. Вода нагрелась до 60 градусов, Ис=70(ее предыдущее значение)+(70-60)=80, Пс=70-60=10, в нагреватель выдается Ис+Пс=80+10=90 Ватт.
Смотрите-ка, пока все выглядит неплохо, вода уже 60 градусов, а нагреватель все еще греет воду, хотя и начал снижать мощность :)
5. Вода нагрелась до 70 градусов, Ис=80(ее предыдущее значение)+(70-70)=80, Пс=70-70=0, в нагреватель выдается Ис+Пс=80+0=80 Ватт.
6. Вода нагрелась до 80 градусов, Ис=80(ее предыдущее значение)+(70-80)=70, Пс=70-80=-10, в нагреватель выдается Ис+Пс=70+(-10)=60 Ватт.
Вода перегрелась. И хотя, как видно, мощность пошла вниз, температура еще будет какое-то время колебаться пока не успокоится на заданном значении:
Это называется перерегулирование. Происходит оно из-за того, что и нагреватель и термометр и, главное, вода имеют какую-то инерцию, регулятор получает обратную связь (показания температуры) с определенным запаздыванием. При подаче на нагреватель полной мощности вода не нагреется мгновенно до 100 градусов, и точно так же она не остынет мгновенно при выключении нагревателя. Регулятор посмотрел на температуру — холодная вода, добавил мощности. Через 2 секунды глянул — все еще холодная — опять добавил. А когда в очередной раз он обнаруживает, что вода уже дошла до нужной температуры то начинает выдавать мощность, накопленную в Ис, считая, что это как раз нужное для поддержания температуры значение мощности (на самом деле интегрирующая составляющая после устаканивания всех возмущений действительно содержит значение, необходимое для ровного поддержания регулируемой величины, а пропорциональная призвана только компенсировать случайные отклонения). Но для воды это много и она продолжает нагреваться. И только после превышения заданной температуры регулятор начинает снижать мощность. И эта качка продолжается некоторое время пока значение Ис не придет к нужной величине.
Что можно предпринять в таком случае? Ну, например можно понизить влияние на выходную мощность Ис. Это называется коэффициент, у каждой составляющей ПИД может быть свой коэффициент, которым можно повышать или понижать влияние этой составляющей на выходной результат. Уменьшим влияние Ис до 0.3 от его значения — Ис*0.3:
Уже лучше, но все равно есть колебание в начале. Это из-за слишком большого влияния пропорциональной составляющей, давайте уменьшим и ее влияние в 2 раз — Пс*0.5:
Идеально, правда? :)
Нуу… Почти. Колебаний нет, но вот время нагрева увеличилось. Оно пришло к заданной температуре только к 25-му отсчету.
На самом деле зачастую используют ПИ-регулятор, без его дифференцирующей части и это вполне работает, как видно. Однако часто можно добиться еще лучшего результата с использованием третьей составляющей — дифференцирующей, Дс.
Она является «демпфером», не дающим регулируемому устройству слишком быстро менять свое состояние. В нашем примере Дс начнет снижать выходную мощность тем сильнее чем быстрее будет нагреваться вода, иными словами она не даст «разогнаться» графику роста температуры настолько, чтобы он проскочил заданную температуру :) При этом, пока до заданной температуры далеко влияние Дс не очень значительно на фоне других составляющих, температура может расти быстро. Но чем ближе она к заданной тем сильнее становится влияние Дс на фоне все уменьшающихся Ис и Пс.
Дс в отличии от Пс и Ис не прибавляется к выходному сигналу (в нашем примере- мощности), а вычитается из него. Она равна скорости изменения регулируемой величины (в нашем примере — температуры). Например, если в прошлый замер температура была 28 градусов, а в текущем замере она уже 31 градус, то Дс будет равна 3 — на столько температура выросла с прошлого замера, это скорость роста температуры. И это значение, возможно умноженное на свой коэффициент, вычитается из выходной мощности, потому эта составляющая и называется дифференцирующей :)
Вот что получится при добавлении Дс:
Как видно, температура вышла на режим гораздо быстрее и при этом без всплесков и колебаний. Попытку регулятора проскочить температуру вверх погасила как раз дифференцирующая составляющая.
Вот, если интересно, график изменения значений Пс, Ис и Дс в этом регуляторе в том же временном масштабе:
А вот что было бы без дифференцирующей составляющей при тех же условиях:
И еще раз коротким итогом :)
ПИД — это регулятор, который формирует сигнал воздействия на регулируемую величину из трех составляющих: пропорциональной, интегрирующей и дифференцирующей.
Пропорциональная составляющая добавляет в выходной сигнал сиюминутную разницу между заданной и текущей измеренной величинами (т.н. ошибку). Интегрирующая накапливает (интегрирует) разницы всех измерений и добавляет в выходной сигнал накопленное значение (но не превышающее заданного максимума). Дифференцирующая определяет скорость изменения регулируемой величины (на сколько она изменилась с прошлого измерения) и вычитает эту величину из выходного сигнала. Все три составляющие могут иметь свои коэффициенты, усиливающие или ослабляющие их влияние на выходной сигнал.
Уфф… :) Ну, я говорил, что не являюсь популяризатором, поэтому за доходчивость своего изложения не отвечаю. Но я старался :)
ЗЫ: самое веселое заключается в подборе коэффициентов этих составляющих, т.к. без правильных (хотя бы примерно) значений этих коэффициентов ПИД-регулятор или вообще не будет регулировать или будет регулировать очень плохо. Подбор идеальных коэффициентов, как я понял, дело весьма нетривиальное. Пока я не встречал в инете доступное объяснение как их рассчитывать, в основном приводятся методики их экспериментального подбора. Что, впрочем, достаточно логично, т.к. для расчета нужно столько всего знать о регулируемом механизме, сколько о нем не всегда знают даже его создатели :))
Основные параметры этого регулятора (именно этой модели — REX-C100FK02-V*AN):
- питание — 24 вольта постоянного напряжения / 24 вольта переменного напряжения / 85-264 вольта переменного напряжения
- потребление — не более 9 VA при питании 240 вольт
- выход — напряжение, 12 вольт, сопротивление нагрузки 600 Ом и выше
- тип подключаемой термопары — K (в настройках можно выбрать целую кучу типов, но я не уверен, что железо универсальное и поддерживает всю эту кучу)
- диапазон регулирования температуры — 0-400 градусов Цельсия (зависит от типа термопары)
- выход аварийной сигнализации — один выход, реле на замыкание
- период цикла регулирования — 0.5 сек
- метод регулирования — PID, вкл/выкл (дискретный), P, PI, PD (настраивается)
- вес — около 170 грамм
- крепление — в отверстие панели
Вот русскоязычный мануал на этот контроллер (нашел где-то в сети) — drive.google.com/open?id=1HDs7UX5rllDy8GFdYrdINbcGI_Snoo00
А вот качественный англоязычный, чуть более полный, но по настройкам немного не соответствует — drive.google.com/open?id=1Ez--F-3hjLzNtKP36FkGy6vfGQ_AkPkn
И пролежал бы он у меня еще неизвестно сколько, если бы жена не пожаловалась, что в нашей электродуховке она не может запекать полимерную глину — температуру там нормально не выставить. Да и пироги порой подгорают :) Духовка из самых дешевых, увы :) И я вспомнил об этом контроллере. Мне он не понадобился, слишком примитивен, а вот для духовки — самое то. Но решил я не курочить духовку, а сделать отдельную коробочку с этим регулятором и твердотельным реле на 40 ампер. Точно такое же реле уже год трудится у меня на почти такой же духовке (переделанной в паяльную печь) и не жужжит.
Крепится контроллер очень просто — вставляется в панель и с обратной стороны поджимается рамкой с защелками. Рамка снабжена пружинными рычажками, поджимающими регулятор:
Все подключения производятся через винтовые клеммы на задней стенке:
Подключение очень понятно расписано как на наклейке на корпусе контроллера, так и в мануале.
Меня интересует: питание (220 вольт), выход управляющего напряжения (прямиком на твердотельное реле), вход термопары.
При желании можно еще подключить выход аварийной сигнализации. Ее можно отключить или настроить на один из режимов:
- превышение заданной температуры
- падение ниже заданной температуры
- попадание в заданный промежуток температуры
- выход за заданный промежуток температуры
Внутренности
Разбирается контроллер очень легко и даже без применения инструментов. Для этого нужно нажать защелку на корпусе (у нее даже есть выступы для нажатия пальцем):
и потянуть корпус, второй рукой удерживая рамку передней панели:
Контроллер состоит из трех плат: собственно управляющая, блок питания и дисплей с кнопками. Платы управления и БП соединяются довольно жестким шлейфом, плата дисплея припаяна к плате управления:
С клеммниками платы соединяются через скользящие контакты:
Платы крупнее:
и потянуть корпус, второй рукой удерживая рамку передней панели:
Контроллер состоит из трех плат: собственно управляющая, блок питания и дисплей с кнопками. Платы управления и БП соединяются довольно жестким шлейфом, плата дисплея припаяна к плате управления:
С клеммниками платы соединяются через скользящие контакты:
Платы крупнее:
Общий план был такой — отдельная коробочка с контроллером и твердотельным реле на радиаторе, из нее выходят два силовых провода с вилкой и розеткой (да, розетка на проводе) и термопара. Термопара вставляется в духовку и зажимается ее дверцей, изоляция у термопары термоупорная, ничего ей не будет :)
Сначала мелькнула мысль напечатать корпус на 3D-принтере, но печатать такой размер из ABS на моем открытом всем сквознякам Anet A8 — геморрой, а PLA, размягчающийся уже при 55-60 градусах рядом с духовкой долго не проживет. Решил резать из литого поликарбоната толщиной 6 мм, их у меня есть несколько листов 50х50 см :)
Для начала нарисовал модель (стакан для масштаба):
Вот так оно будет собираться:
Верхняя крышка и одна стенка съемные, на винтах, остальное клееное. Правда, уже потом, когда все было сделано, до меня дошло, что лучше бы было сделать съемным дно, а не крышку, но переделывать не стал :)
Вырезал на фрезерном станке, так что размеры сошлись идеально. Неидеально сошлась только толщина, которая оказалась 5.9 мм вместо 6. Для более прочной склейки (или чтобы думать что так более прочно) по краям стенок сделал проточки, так что стенки соединяются полупазами:
И вот кучка запчастей готова к дальнейшей работе:
Сначала думал обклеить самоклейкой, но во-первых в магазине мне не попалась пленка нормального цвета, только цветочки да тканевые узоры, а во-вторых я не был уверен, что смогу обклеить без складок и щелей, так что решил красить.
Предварительная примерка показала что все сходится, поэтому закрепил стенки малярным скотчем и проклеил все стыки. Клеил дихлорметаном, держит железно. Набрал его в шприц с иглой, у которой отрезал скошенный носик, и прошелся иголкой по всем стыкам изнутри (даже по одному стыку, который не надо было клеить, увлекся :)). Дихлорметан очень текуч — моментально заполняет мельчайшие щели, и очень интенсивно испаряется, так что даже не пришлось давить поршень, тепло рук нагревало дихлорметан достаточно, чтобы его испарения создавали избыточное давление внутри шприца.
Сохнет:
А пока корпус сох, я откопал у себя кусок радиатора, который когда-то зачем-то заказывал на али (уже даже не помню зачем). По размерам он подошел идеально, разве что по длине пришлось отпилить нужный кусок.
Распечатал шаблон отверстий, прихватил его кусочками двухстороннего скотча к радиатору и просверлил отверстия:
После чего обнаружил, что слегка неправильно нарисовал модель твердотельного реле, и отверстия на радиаторе теперь не совсем совпадают с отверстиями в реле. К счастью, я ошибся очень удачно — во-первых не совпадало только одно отверстие, а во-вторых оно не совпадало так сильно, что совершенно не мешало просверлить правильное :) Так что все обошлось просто лишним отверстием :)
Через час корпус уже был достаточно прочным, чтобы можно было спокойно его крутить и примерять. И вот тут я обнаружил свой второй прокол в модели: сам-то контроллер по габаритам я нарисовал верно, а вот крепежную рамку с защелками рисовать не стал. И оказалось, что она теперь мешает крышке закрыться примерно на 3 мм. Пришлось класть крышку в станок и фрезеровать на ее внутренней стороне выемку.
Еще одна моя ошибка была в том, что узкие планки, которые я приклеил к стенкам и к которым должны прикручиваться крышки, я вырезал без отверстий для болтов. Решил, что приклею, а потом по месту просверлю. Сверлить ровно и именно там где наметил никогда не было моей сильной стороной. Короче, почти все отверстия в этих планках уехали. Из-за этого пришлось разбивать сверлом отверстия в крышках и зенковкой пытаться профрезеровать скосы для шляпок в ту же сторону :) Получился слегка колхоз…
Кстати, резьба в поликарбонате держит болты очень хорошо, никаких гаек не нужно.
Перед покраской слегка закруглил грани с помощью напильника и шкурки, процесс очень быстрый и легкий.
В процессе покраски я не делал фото, как-то забыл об этом, да там ничего интересного, в общем-то, и нет. Шкуркой заматировал поверхности, обезжирил, покрыл двумя слоями грунта и потом двумя слоями краски.
Почему такой цвет? А фиг его знает :) Просто кроме этого у меня были лишь черный, синий, красный и зеленый, а они мне не нравились в данном случае :) Ну и почему бы и нет :)
В отверстия для проводов я вставил специальные резиновые шайбы для таких случаев, брал их тоже на али:
(коцка — это результат моего нетерпения, полез ковырять корпус когда краска еще не высохла окончательно)
Так как они не предназначены для панелей толщиной 6 мм, пришлось с внутренней стороны делать под них выемки, оставляя стенки толщиной 1 мм:
Затянул в отверстия силовые провода, соединил заземление и одну из жил, из которой сделал отвод для запитки контроллера, как и от одной из вторых жил, идущей от вилки, прикрутил реле на термопасту к радиатору, а радиатор к корпусу:
Дальше все просто — провода к реле, отмерить длину проводов до контроллера, отрезать, зачистить, залудить, прикрутить…
Все провода, выходящие из корпуса я обтянул изнутри стяжками чтобы их случайно не выдернули. Стандартная практика.
Все соединил и включил посмотреть не бахнет ли что-нибудь салютом. Не бахнуло:
Там в глубине корпуса можно увидеть светящийся индикатор реле, значит все нормально, можно собирать :)
Для начала я решил устроить ему стресс-тест и подключил к нему вот такой тепловентилятор на 3 кВт:
Термопару при этом я посадил на радиатор реле и закрепил кусочком каптона чтобы контролировать температуру не только на ощупь.
Включил, тепловентилятор зажужал, а я пошел писать спойлер про ПИД-регулятор, время от времени отвлекаясь и проверяя температуру радиатора. Через 15 минут после старта температура дошла до 50 градусов. Еще через 20 минут она была уже 67 градусов и на этом значении продержалась следующие 30 минут пока я не выключил все это — в офисе стало жарко :) Вердикт — с духовкой 1.5-2 кВт справится без проблем :)
Повседневное (когда не нужно менять какие-то глубокие настройки) управление этим контроллером очень простое. Сразу после подачи питания она начинает пытаться регулировать температуру, отдельного включения для этого не предусмотрено.
Вообще передняя панель минималистична:
Верхний, красный дисплей — измеряемая (текущая) температура
Нижний, зеленый дисплей — заданная температура
Индикаторы слева по порядку сверху вниз:
1. Аварийная сигнализация 1
2. Выходной сигнал
3. Аварийная сигнализация 2
4. Индикатор работающей автонастройки PID
Кнопки слева направо: «настройка», «сдвиг», «вверх», «вниз».
Для установки заданной температуры нажимаем «настройку», все разряды нижнего дисплея кроме младшего начинают мерцать. Кнопками «вверх» и «вниз» выставляем в младшем разряде нужную цифру и нажимаем «сдвиг», теперь мерцают все разряды кроме десятков, настройка сдвигается на разряд влево. И так выставляем нужные цифры во всех разрядах. Для окончания настройки нажимаем еще раз «настройку».
Более подробные настройки вкратце
Как я писал в спойлере про PID-регулятор, коэффициенты такого регулятора — дело тонкое и подбирать их нужно для каждого случая. Изначальные настройки коэффициентов в этом регуляторе скорее всего не подойдут под ваше применение, нужно подбирать свои. Эти коэффициенты и другие параметры в регуляторе можно изменить в более глубоких настройках. Чтобы войти в этот режим нажмите и удерживайте кнопку «настройка» 3-4 секунды.
На верхнем дисплее название параметра, а на нижнем — текущее значение этого параметра. Настройка значения производится так же, как и настройка температуры — кнопками вверх-вниз меняем текущий разряд, потом кнопкой сдвига переходим к следующему и т.д. Для перехода к следующему параметру нажимаем «настройку». Для сохранения всех настроек и выхода из этого режима жмем и удерживаем 3-4 секунды кнопку «настройка».
Список параметров в той последовательности в которой они перебираются:
И в этих настройках можно изменить коэффициенты ПИД на требуемые. Однако чтобы знать на что их менять нужно очень хорошо понимать что делаешь и как это отразится на работе контроллера, или же долго и нудно перебирать их в надежде наткнуться на правильные значения. И чтобы облегчить жизнь простым смертным в контроллере предусмотрена автоматическая настройка этих коэффициентов.
Порядок проведения автонастройки:
Все условия должны быть приближены к реальным. То есть если Вы настраиваете для использования с духовкой, то духовка должна быть подключена, закрыта и температура на контроллере должна быть выставлена на максимальную (можно процентов на 10 меньше) из того диапазона, который предполагается применять в духовке. В процессе настройки контроллер нагреет духовку до этой температуры и подержит ее некоторое время.
Итак, подключили духовку (но пока не включаем ее нагреватели), выставили температуру (я установил 180 градусов), заходим в настройки, перебираем пункты пока не появится AГU, выставляем в 1 младший разряд и выходим из настроек. Начинает мигать индикатор AT. Теперь включаем нагреватели духовки и ждем пока мигание AT прекратится. Контроллер нагревает духовку постоянным нагревом до заданной температуры, выключает нагрев и следит за тем на сколько и как быстро температура превысит заданную после выключения нагрева. Исходя из скорости нагрева, «перескока» температуры и скорости дальнейшего остывания он и вычисляет коэффициенты ПИД. Этот процесс он может повторить 2-3 раза для уточнения.
Процесс автонастройки категорически рекомендуется после покупки или после изменения условий работы (другой нагревательный прибор, что-то изменили в текущем нагревателе и т.п., то есть все, что влияет на процесс нагрева). У меня до автонастройки контроллер вообще не мог довести температуру духовки до заданных 180 градусов. Провел автонастройку (видео ускороено в 10 раз):
И работа контроллера после этого (тоже ускорено в 10 раз):
Как видно, ПИД остался настроен не совсем оптимально (а никто и не обещал идеала :)), температура перескакивает по инерции заданную аж на 10 градусов. В дальнейшем при желании можно подкорректировать вычисленные им коэффициенты (что я и сделаю на домашней духовке), но при этом нужно понимать что и зачем менять.
Кстати, тот второй, более продвинутый контроллер (он видел слева на видео) справился с автонастройкой гораздо лучше, ничего корректировать не пришлось, перескок температуры на 200 градусах не превышает 2-3 градусов.
Есть и еще один уровень настроек, вход в него осуществляется нажатием и удержанием в течении 3-4 секунд одновременно кнопок «настройка» и «сдвиг». Но туда без необходимости лучше не лазить, а при необходимости внимательно сверяться с мануалом :)
На верхнем дисплее название параметра, а на нижнем — текущее значение этого параметра. Настройка значения производится так же, как и настройка температуры — кнопками вверх-вниз меняем текущий разряд, потом кнопкой сдвига переходим к следующему и т.д. Для перехода к следующему параметру нажимаем «настройку». Для сохранения всех настроек и выхода из этого режима жмем и удерживаем 3-4 секунды кнопку «настройка».
Список параметров в той последовательности в которой они перебираются:
- AL1 — настройка выхода первой аварийной сигнализации (в этой модели она одна, второй нет).
- AГU — автонастройка PID
- P — коэффициент Пс (пропорциональной составляющей ПИД), когда выставлен в 0 контроллер работает в дискретном режиме регулирования
- I — коэффициент Ис (интегрирующей составляющей ПИД), когда установлен в 0 контроллер работает в режиме ПД
- d — коэффициент Дс (дифференцирующей составляющей ПИД), когда установлен в 0 контроллер работает в режиме ПИ
- Ar — насколько я понял, этот параметр задает максимум Ис, но не уверен, что понял правильно.
- Г — тоже не совсем понял этот параметр, но похоже, что это период, с которым происходит измерение текущей температуры и соответствующее изменение выходного сигнала
- SC — тут можно подкорректировать показания термопары, это значение добавляется к ним. Может быть как положительным, так и отрицательным числом.
- LCK — блокировка настроек, 0000 — все настройки доступны, 0001 — изменить можно только заданную температуру и AL1, 0011 — изменить можно только заданную температуру, 0111 — изменить ничего нельзя.
И в этих настройках можно изменить коэффициенты ПИД на требуемые. Однако чтобы знать на что их менять нужно очень хорошо понимать что делаешь и как это отразится на работе контроллера, или же долго и нудно перебирать их в надежде наткнуться на правильные значения. И чтобы облегчить жизнь простым смертным в контроллере предусмотрена автоматическая настройка этих коэффициентов.
Порядок проведения автонастройки:
Все условия должны быть приближены к реальным. То есть если Вы настраиваете для использования с духовкой, то духовка должна быть подключена, закрыта и температура на контроллере должна быть выставлена на максимальную (можно процентов на 10 меньше) из того диапазона, который предполагается применять в духовке. В процессе настройки контроллер нагреет духовку до этой температуры и подержит ее некоторое время.
Итак, подключили духовку (но пока не включаем ее нагреватели), выставили температуру (я установил 180 градусов), заходим в настройки, перебираем пункты пока не появится AГU, выставляем в 1 младший разряд и выходим из настроек. Начинает мигать индикатор AT. Теперь включаем нагреватели духовки и ждем пока мигание AT прекратится. Контроллер нагревает духовку постоянным нагревом до заданной температуры, выключает нагрев и следит за тем на сколько и как быстро температура превысит заданную после выключения нагрева. Исходя из скорости нагрева, «перескока» температуры и скорости дальнейшего остывания он и вычисляет коэффициенты ПИД. Этот процесс он может повторить 2-3 раза для уточнения.
Процесс автонастройки категорически рекомендуется после покупки или после изменения условий работы (другой нагревательный прибор, что-то изменили в текущем нагревателе и т.п., то есть все, что влияет на процесс нагрева). У меня до автонастройки контроллер вообще не мог довести температуру духовки до заданных 180 градусов. Провел автонастройку (видео ускороено в 10 раз):
И работа контроллера после этого (тоже ускорено в 10 раз):
Как видно, ПИД остался настроен не совсем оптимально (а никто и не обещал идеала :)), температура перескакивает по инерции заданную аж на 10 градусов. В дальнейшем при желании можно подкорректировать вычисленные им коэффициенты (что я и сделаю на домашней духовке), но при этом нужно понимать что и зачем менять.
Кстати, тот второй, более продвинутый контроллер (он видел слева на видео) справился с автонастройкой гораздо лучше, ничего корректировать не пришлось, перескок температуры на 200 градусах не превышает 2-3 градусов.
Есть и еще один уровень настроек, вход в него осуществляется нажатием и удержанием в течении 3-4 секунд одновременно кнопок «настройка» и «сдвиг». Но туда без необходимости лучше не лазить, а при необходимости внимательно сверяться с мануалом :)
Результат всей этой возни :)
Итог:
Контроллер своих денег стоит и с работой справляется очень неплохо, особенно если настроить его чуть более тонко, чем предполагает автонастройка. Твердотельное реле тоже отлично справляется с достаточно большой нагрузкой, хотя насчет заявленных 40 ампер у меня очень большие сомнения. Максимум 20, да и то с хорошим радиатором и его активным охлаждением.
Все :)
Самые обсуждаемые обзоры
+63 |
2787
115
|
+49 |
3083
63
|
+24 |
1862
31
|
+48 |
1799
34
|
А то температура гуляет и получается неоднородно, но все равно вкусно. На фото 7 кг, уже почти нет, разобрали знакомые.
Дома у меня такая:
На работе для пайки такая же, но чуть меньше объемом.
А что за моделька, и ширина камеры? :)
Это Rolsen KW-2626 WT, покупал полтора года назад тут — www.dns-shop.ru/product/7c6f59e6558b3120/elektropec-rolsen-kw-2626-wt-belyj/
Ширину камеры точно не скажу, сейчас не дома, но где-то на 2-3 см шире чем у рабочей, у которой 33.5 см.
чееееегооо?
Да ужжж…
Надеюсь, что немного позже поставлю еще один плюс за обзор паяльной печки, как я понимаю, на РС410 :)
У меня там до сих пор все на соплях и проводках. Да и разбирать духовку очень уж не хочется, тем более, что многие изменения в ней нужно было фотографировать в процессе их совершения :)
Но может быть и напишу коротко когда-нибудь.
Да, управляет ею PC410, замечтальная штука для этих целей :)
Так вот: мне ехать.
Мне мало интересно, насколько там все красиво выглядит, да и как оно там доподлино устроено — желательно, конечно, но тоже переживу.
А вот результат — интересен.
Потому как тепловая инерционность у всех этих печек достаточно приличная, и если таки удается выдержать что то близкое к термопрофилю, особенно при понижении температуры — вот это и интересно.
Мне приходится не очень часто, но в количествах больше десятка (скажем так) паять светодиоды.
Сначала было желание (оно и сейчас есть в общем то) собрать что то вроде относительно нормального паяльного стола, типа керамика (или длинные галогенки от прожекторов/нагревателей) под сеткой, РС410, накидал на сетку подготовленные звездочки/платы или что в голову придет, нажал кнопочку и пошел пить кофе.
С остальным все равно завязал.
Из этого без изменения остался только последний пункт, про кофе, но и то не после нажатия кнопочки, а после окончания пайки.
Электроплитка с закрытым нагревателем, REX-C100, вместо термопрофиля выставляется температура, кидаешь звездочку на плитку, начала паста плыть — кидаешь рядом вторую, первая доходит и снимаешь, ставишь следующую, предыдущая доходит до кондиции…
В общем, пока за раз больше полусотни сделать не надо — вроде еще ничего, хотя уже напрягает…
Без принудительной вентиляции или приоткрывания дверцы нормальной скорости остывания добиться нельзя.
У PC410 есть выход охлаждения, и ПИД для него так же автоматически может быть настроен. Я планировал сделать на основе этого выхода приоткрывание дверцы с помощью моторчика с редуктором, даже заказал моторчик и шкив. Планировал просто привязать нитку к ручке дверцы и моторчиком ее ослаблять, чтобы дверца под своим весом приоткрывалась (она открывается вниз). Но возникла проблема — испарения флюса при пайке оседают на дверце и на тех плоскостях, к которым дверца примыкает, так что после цикла пайки дверца оказывается слегка прилипшей и не открывается сама, без приложения к ней усилия. Так пока и не придумал ничего :) Поставил платы, включил, пошел заварить себе кофе, к приходу профиль уже почти завершен и по его окончанию я просто руками приоткрываю дверцу духовки :)
Может быть сделать на задней стенке вентиляцию с заслонкой, управляемой мотором… Не знаю пока.
Мысль была использовать выход охлаждения у контроллера примерно так: если сигнал охлаждения выдается в течении 2 секунд — приоткрываем на 10% и начинаем отсчет времени заново, если сигнала нет 2 секунды — прикрываем на 10% и начинаем отсчет времени заново.
1. Не хочет показывать оставшееся по программе время, в любом режиме показывает там одно и то же число 1376, кажется.
2. В профилях отсутствует возможность организации «цепочки», когда по окончании одного профиля контроллер автоматически переходит к другому. Параметр профилей, отвечающий за это, в их настройках просто отсутствует.
А вот по духовке и по общей конструкции шишек полно :)
1. Проблема с охлаждением по окончанию профиля. Закрытая духовка остывает очень медленно, нужно приоткрывать ее при остывании. Возможно, самой простой автоматизацией этого будет сделать щель в задней стенке и заслонку, которая будет с помощью моторчика приоткрывать эту щель.
2. Проблема с нагревом. Духовка в стоке нагревается медленно. По распространенным термопрофилям скорость нагрева требуется довольно высокая, особенно в пике температуры, до 2-3 градусов в секунду, но стоковая духовка могла обеспечить максимум 1 градус в 4-5 секунды при температуре близкой к 200 градусам. Разобрал, утеплил базальтовой ватой (слоем около 2 см) стенки и крышу (низ и задняя стенка выходят «на улицу»), стало получше, но все равно не так хорошо как хотелось бы, где-то 1 градус в 1-2 секунды. Нужно добавлять нагреватели еще Ватт на 500 к имеющимся 1500.
3. Термопара у меня выходит из потолка и висит примерно в 1.5 см над платой, но по хорошему термопара должна лежать на плате, желательно уткнутая в какую-нить металлизированную площадку.
Трафаретами я пока не пользуюсь, но подумываю перейти на них. Если буду заказывать, то, скорее всего, там же где и платы — в Резоните :) И там же закажу и пасту, предназначенную для нанесения через трафареты.
А пока я наношу пасту пневмодозатором. В принципе и им получается не так уж долго, в среднем выходит где-то 120 точек в минуту :)
Можете преобразовывать в ток, в напряжение, в громкость, в световой поток, в ШИМ — это все уже за пределами ПИД-а, он к этому не имеет отношения.
Но для печки или самогонного аппарата оно вполне подходит. И там как правило можно обойтись простым Р-регулятором.
В данном дивайсе мне понравилась возможность автонастройки параметров, т.к. IRL это может быть порядочный геморрой.
PID применим вообще везде где можно регулировать и есть обратная связь, он просто считает и выдает результаты расчетов. А во что Вы потом превратите этот результат — в аналоговую мощность, в широтную/фазовую/амплитудную/частотную модуляцию, в данные по какому-то интерфейсу — PID-у глубоко фиолетово :)
В данном случае, как и с любым мощным инертным исполнителем, ШИМ просто удобнее и выгоднее. Но никто не мешает перевести результаты PID-а не в широтно-импульсную, а в фазовую модуляцию и подавать полученный сигнал на управляющий электрод симистора, получив регулирование почти напрямую :) Точно так же можно превратить результат PID-а в ток и подавать на базу мощного транзистора, питающего нагреватель — будет вообще прямее некуда :) И все это будет PID :)
И почему вы и уважаемый ksiman mysku.club/blog/aliexpress/58532.html#comment2392570 говорите, что на выходе ШИМ? Ведь один из признаков ШИМ это постоянство частоты с которой следуют импульсы регулируемой ширины. Здесь же и ширина и период следования «плавают».
Во-первых в широком смысле ШИМ-ом можно называть и сигнал с плавающей частотой. Во-вторых тут период неизменный, меняется только ширина импульсов, классический ШИМ.
Надо добавить картинку для порогового регулятора и всё.
Сейчас попробую поправить под более реальный вид.
Исправил. Прямоугольника там все равно не будет, т.к. это график из экселя, но ввел небольшую инерционность температуры и пороговые значения выше и ниже заданной температуры :)
Родная слишком массивная, у нее довольно большая инерционность. Хотя в воде она может быть и не так инертна будет как в воздухе :)
Месье знает толк в извращениях.
ПИД нужен где исполнительный механизм инерционен и не следует его часто включать отключать.
https://aliexpress.com/item/store/product/AC-220V-30A-Digital-Thermostat-Temperature-Regulator-Controller-with-NTC-sensor-LED-Display/525387_32464628190.html
Ну то есть обозреваемый лучше, да :)
Обычно мощность нагревателей так и регулируется, прямое управление мощностью слишком неэффективно.
А вообще статья интересная, особенно этапы сборки.
Опишу вкратце. У него можно задать 10 отдельных профилей. Каждый профиль может включать в себя от 1 до 8 шагов. Каждый из этих шагов задается несколькими параметрами:
— r — скорость изменения (подъема или опускания) температуры, градусов в секунду, до 99 с шагом 0.01. При нуле (точнее, вместо нуля отображается StEP) подразумевается, что скорость не учитывается, нужно просто довести температуру до заданной. В этом же параметре можно выставить признак окончания профиля (отображается как End), при этом контроллер отключает нагрев и переходит в режим ожидания.
— L — заданной температурой, до которой она должна дойти на этом шаге, с шагом 1 градус.
— d — временем удержания заданной температуры в секундах, до 9999 с шагом 1.
Работает не только на нагрев, но и на охлаждение, для этого у него есть отдельный выход, тоже регулируемый ПИД-регулятором.
Например, если Вам нужна программа:
— поднять температуру до 80 градусов со скоростью 2 град/сек и затем удерживать ее 40 секунд
— поднять температуру до 120 градусов со скоростью 1.5 град/сек и продержать ее 60 сек
— поднять температуру до 180 градусов со скоростью 3 град/сек
— поднять температуру до 210 градусов без оглядки на скорость роста
— опустить температуру до 40 градусов со скоростью 5 град/сек
— выключиться
То получается 6 шагов (включая последний с признаком окончания профиля):
1. r = 2.00, L = 80, d = 40
2. r = 1.50, L = 120, d = 60
3. r = 3.00, L = 180, d = 0
4. r = StEP, L = 210, d = 0
5. r = 5.00, L = 40, d = 0
6. r = End
(сорри, сначала неправильно написал два последних шага, потом исправил)
На предпоследнем шаге (опускание температуры до 40) он отключит нагрев и начнет регулировать охлаждение если увидит, что без этого скорость падения температуры недостаточна.
И таких профилей можно запрограммировать до 10 штук. В каждом профиле кроме всех шагов можно еще задать отклонение температуры, при котором начинается отсчет времени удержания — одно значение на профиль.
Плюс там еще куча разных параметров и режимов. Плюс возможность подключения к компу и работы под управлением софта, тогда возможности еще более расширяются
Вот мануал на этот терморегулятор, можете изучить подробнее :) Правда на английском — drive.google.com/open?id=1pBnaYKok_rYRcoeTao5_iEZbGLoXVEFY
Влияние изменения параметров ПИД
Во-вторых если Вы думаете, что подобрать хорошо работающие коэффициенты так просто как может показаться из этой гифки («сейчас вот это накручу побольше, а вот это поменьше и все будет зашибись»), то вынужден Вас разочаровать :) В реальной жизни коэффициенты очень тесно связаны друг с другом, и меняя один из них Вы в большинстве случаев ломаете целиком всю работу ПИД, после чего требуется заново подбирать и остальные коэффициенты.
А графиков таки в инете полно. И обычно перед ними идут формулы с интегралом :)
Случаи бываю сильно разные. И не надо всё гнать под «в большинстве». Где, в большинстве? Если взять завод (я работал на трубном), где громадная печь для закалки труб, то там, пожалуй, Ваше «большинство» будет актуальным. Если в повседневную жизнь окунуться, то по моему опыту «большинство» — это теплопункты, имеющиеся практически в каждой многоэтажке, и насосы повышающие давление (поддерживающие) на ГВС и ХВС, опть же имеются почти в каждой многоэтажке. В моём большинстве настройка длится от двух часов до пары дней, в основном по удалёнке (спасибо MOXA), и связано с тем, что пики потребления воды приходятся на утро и вечер, то есть за пару часов в любое время не настроить, не видя реальных перепадов.
Так что не надо нагнетать, не у всех всё сложно. В моём «большинстве» всё просто, и моё «большинство» встречается чаще.
Принцип работы ПИД регулятора не очень прост и очевиден, пока сам не столкнёшься.
Но ваш вариант очень понравился.)))
Более того, у меня корпус и с входной вилкой, и с выходной. Редко, но такие встречаются. Использую, для подключения нагрузки.
Ну и период ШИМ побольше задали, наверное?
Постараюсь проверить это в ближайшие дни.
А вот такой, похоже, то что надо https://aliexpress.com/item/item/General-damper-Actuator-2Nm-modulating-for-operation-of-air-control-dampers-in-HVAC-system-ADC24V-AC100/32794338611.html