Управление мощностью ТЭНа

В этой теме 244 ответа, 39 участников, последнее обновление  Sergey_r 1 день .

Просмотр 15 сообщений - с 196 по 210 (из 245 всего)
  • Автор
    Сообщения
  • #45375

    Роман
    Участник
    • Ответов: 286
    @papazol

    стандартный UART….

    UART – это интерфейс. А я про протокол. Там используется CRC, значит, его нужно как-то формировать на передающей стороне. Кстати, неплохо было бы и ответ отправлять, чтобы контроллер знал, что его посылки не в космос уходят.

    0
    #45392

    Sergey_r
    Участник
    • Ответов: 1625
    @serjrv

    Можно ли обнародовать протокол управления этим регулятором?

    Я пока в отпуске кайфую, приеду домой, все распишу. Думаю через недельку примерно, если море отпустит )))

    0
    #45509

    Mef_poter
    Участник
    • Ответов: 104
    @mefody

    3. Резистр R10 и R11 обязательно с точностью 0,1%, а то в ЧиД не нашел.

    Есть там такие – правда цена не особо гуманная… PTF5610K000BYEK

    0
    #45639

    Роман
    Участник
    • Ответов: 286
    @papazol

    В скетче есть такая строка:

    if ( powerMax > 9000 && ( powerMax % 50 ) != 0 ) powerMax = 3000;

    Как я понял, это если при первом включении в EEPROM будет записана ересь, чтобы сразу поменять её на валидное значение мощности. Но почему условия логически умножаются? Ведь любое из них должно вызывать принудительное назначение мощности 3 кВт.

    0
    #45656

    Sergey_r
    Участник
    • Ответов: 1625
    @serjrv

    В скетче есть такая строка:

    if ( powerMax > 9000 && ( powerMax % 50 ) != 0 ) powerMax = 3000;

    Как я понял, это если при первом включении в EEPROM будет записана ересь, чтобы сразу поменять её на валидное значение мощности. Но почему условия логически умножаются? Ведь любое из них должно вызывать принудительное назначение мощности 3 кВт.

    В каком же из мест видим умножение? Просто сравниваем два условия, не более 9000 и кратность 50-ти (остаток от деления), т.е. должно срастись по условию и первое выражение и второе. Как то в языке “Си” у Вас прострация )))

    0
    #45657

    Kostyan_nsk
    Участник
    • Ответов: 51
    @kostyan-nsk

    В скетче есть такая строка:

    if ( powerMax > 9000 && ( powerMax % 50 ) != 0 ) powerMax = 3000;

    Как я понял, это если при первом включении в EEPROM будет записана ересь, чтобы сразу поменять её на валидное значение мощности. Но почему условия логически умножаются? Ведь любое из них должно вызывать принудительное назначение мощности 3 кВт.

    В каком же из мест видим умножение? Просто сравниваем два условия, не более 9000 и кратность 50-ти (остаток от деления), т.е. должно срастись по условию и первое выражение и второе. Как то в языке “Си” у Вас прострация )))

    Ну по своей сути, это и есть логическое умножение. Но, на сколько я понял, вопрос заключался именно в том, почему должны быть выполнены оба эти условия, а не одно из них (почему &&, а не ||).

    1+
    #45668

    Mef_poter
    Участник
    • Ответов: 104
    @mefody

    почему должны быть выполнены оба эти условия, а не одно из них (почему &&, а не ||).

    Ну видимо потому, что шаг приращивания мощности равен 50 Вт или 0,05 кВт.

    0
    #45673

    Роман
    Участник
    • Ответов: 286
    @papazol

    Как то в языке “Си” у Вас прострация )))

    Я не настоящий сварщик, маску нашёл 🙂 Но понятие “логическое умножение” существует независимо от этого. Как уже написали, в данной конструкции для приведения мощности к значению по умолчанию необходимо одновременное выполнение обоих условий, но ведь каждое из них может появиться независимо от другого. Например, если в ячейках EEPROM будет “прописана” мощность 1243 Вт, то последующие её изменения на 50 Вт энкодером не приведут к “круглым” значениям. Несколько лучше ситуация (но менее вероятная), если мощность окажется больше 9 кВт, но кратная 50 Вт. Тогда её можно будет отрегулировать энкодером, но только если это вовремя будет замечено пользователем.

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

    0
    #45674

    Роман
    Участник
    • Ответов: 286
    @papazol

    Ну видимо потому, что шаг приращивания мощности равен 50 Вт или 0,05 кВт.

    Если бы при прошивке программы в EEPROM прописывалась мощность ТЭНа по умолчанию, тогда никаких проблем. Но может попасться ардуина, которую раньше использовали с другой программой, которая тоже обращалась к EEPROM и записывала туда различные значения, никак не касающиеся данного регулятора. И тут жёстко запрограммированный шаг мощности в 50 Вт может сыграть злую шутку.

    0
    #45681

    Mef_poter
    Участник
    • Ответов: 104
    @mefody

    При напряжении в сети 230В/50Гц заставить 3кВт ТЭН выдавать мощность в 4-6-9 и т.д. кВт НЕВОЗМОЖНО! По логике я бы поступил так – при подозрении в ошибке стартового значения запустить для прогрева ТЭН на 30 сек на 100% сетевого напряжения, штатными средствами замерить напряжение с протекающим током и по известной формуле определить мощность ТЭНа. От него, как максимального, и плясать… Хоть с 50Вт шагом, хоть с каким другим. Тут фазовая модуляция – напряжение не изменяется, а просто обрезается часть синусоиды…

    0
    #45682

    Роман
    Участник
    • Ответов: 286
    @papazol

    При напряжении в сети 230В/50Гц заставить 3кВт ТЭН выдавать мощность в 4-6-9 и т.д. кВт НЕВОЗМОЖНО!

    Об этом речи нет. Но, поскольку ТЭН у нас не просто греет воду, а работает в довольно сложном технологическом процессе, неправильное поведение ТЭНа может дурно повлиять на этот процесс.

    Автоматическое измерение мощности ТЭНа – весьма неплохая идея! Только проделывать это придётся при каждом включении, а не записывать мощность в EEPROM.

    0
    #45683

    Mef_poter
    Участник
    • Ответов: 104
    @mefody

    Только проделывать это придётся при каждом включении, а не записывать мощность в EEPROM. 0

    Не обязательно… Достаточно в интерфейсе ЛБ предусмотреть галочку “Авто-определение мощности ТЭНа” и прописывать это значение в память Ардуины. Тогда она сама решит, измерять мощность или довериться оператору. )))

     

     

    0
    #45684

    Роман
    Участник
    • Ответов: 286
    @papazol

    Но регулятор может работать и без ЛБ, к тому же общение между регулятором и ЛБ по поводу установленной мощности не предусмотрено.

    0
    #45686

    Mef_poter
    Участник
    • Ответов: 104
    @mefody

    Я в коде глубоко не ковырялся…. Но раз имеется UART, то добавить такой фукционал, как обратная связь – вообще не проблема. Хотя я бы реализовал блок управления на мультишине – к примеру SPI . Это для масштабирования схемы к примеру в 3-фазную или на несколько ТЭНов.

    А вопрос с автономной работой можно решить перемычкой на плате… Есть перемычка – меряем ТЭН, нету – оператор сам виноват. )))

    0
    #45688

    Mef_poter
    Участник
    • Ответов: 104
    @mefody

    Кстати для автономки можно предусмотреть менюшку настроек – макс. мощность, автоопределение ТЭН, 5-6 предустановленных значений мощности, пусковая мощность при включении регулятора и т.д. Тут величайший простор для фантазии… )))

    0
Просмотр 15 сообщений - с 196 по 210 (из 245 всего)

Для ответа в этой теме необходимо авторизоваться.