1 2 3 4 5 6 7 8 9 10 10/10 9,80оценок: 15

Автоматика управления ТТ котлами своими руками

Тема в разделе "Котлы, горелки, котельное об-е своими руками", создана пользователем Senkiivan, 28.03.14.

Метки:
  1. Виктрычч
    Регистрация:
    05.06.17
    Сообщения:
    2.387
    Благодарности:
    1.327

    Виктрычч

    Живу здесь

    Виктрычч

    Живу здесь

    Регистрация:
    05.06.17
    Сообщения:
    2.387
    Благодарности:
    1.327
    Старт/стоп это управление поездом как трамваем. Что бы там не говорили. Это не лампочку включил и выключил. Какое нафик качество горения в переходных процессах. Вот про это и речь. И душить не позволяет и разогнаться не может.
    Вот кстати фрагмент. Сгорело пол чурки судя по торчащей трубе. Заслонка в крейсерском положении. Сверху нахлобучивается клапан ПВ.
    https://youtube.com/shorts/EvIyKO-3Zo8?feature=share
     
  2. Оксфорд
    Регистрация:
    12.04.12
    Сообщения:
    9.425
    Благодарности:
    1.871

    Оксфорд

    Живу здесь

    Оксфорд

    Живу здесь

    Регистрация:
    12.04.12
    Сообщения:
    9.425
    Благодарности:
    1.871
    Адрес:
    Уфа
    У каждого свой путь.
     
  3. Виктрычч
    Регистрация:
    05.06.17
    Сообщения:
    2.387
    Благодарности:
    1.327

    Виктрычч

    Живу здесь

    Виктрычч

    Живу здесь

    Регистрация:
    05.06.17
    Сообщения:
    2.387
    Благодарности:
    1.327
    Старт/стоп это управление поездом как трамваем. Что бы там не говорили. Это не лампочку включил и выключил. Какое нафик качество горения и экономия топлива в переходных процессах. Вот про это и речь. И душить не позволяет и разогнаться не может.
    Вот кстати фрагмент. Сгорело пол чурки судя по торчащей трубе. Заслонка в крейсерском положении. Сверху нахлобучивается клапан ПВ.
    https://youtube.com/shorts/EvIyKO-3Zo8?feature=share
    И дым при этом и трубу чистить не нужно
     

    Вложения:

    • IMG_20211125_162257.jpg
    Последнее редактирование: 25.11.21
  4. Оксфорд
    Регистрация:
    12.04.12
    Сообщения:
    9.425
    Благодарности:
    1.871

    Оксфорд

    Живу здесь

    Оксфорд

    Живу здесь

    Регистрация:
    12.04.12
    Сообщения:
    9.425
    Благодарности:
    1.871
    Адрес:
    Уфа
  5. Оксфорд
    Регистрация:
    12.04.12
    Сообщения:
    9.425
    Благодарности:
    1.871

    Оксфорд

    Живу здесь

    Оксфорд

    Живу здесь

    Регистрация:
    12.04.12
    Сообщения:
    9.425
    Благодарности:
    1.871
    Адрес:
    Уфа
  6. Оксфорд
    Регистрация:
    12.04.12
    Сообщения:
    9.425
    Благодарности:
    1.871

    Оксфорд

    Живу здесь

    Оксфорд

    Живу здесь

    Регистрация:
    12.04.12
    Сообщения:
    9.425
    Благодарности:
    1.871
    Адрес:
    Уфа
    Естественно это разумный компромис. Вот только как заставить нормально работать котел на минимальной мощности с большим объемом шахты по другому пока не предложили. А хочется комфорта. Например шахтный с топливником 350 литров заставить отдавать 5 кВт.
    Пока по другому получается хуже. Пример Таймень 10. 130 литров - 5 кВт горение проблемное. См тему соответствующую. Кремень 25. Шахта 180 литров. 5 кВт (у продвинутых 3) легко. Есть первоначальные данные что и 350 литов выдает 5 кВт без танцев с бубном.
     
    Последнее редактирование: 25.11.21
  7. Виктрычч
    Регистрация:
    05.06.17
    Сообщения:
    2.387
    Благодарности:
    1.327

    Виктрычч

    Живу здесь

    Виктрычч

    Живу здесь

    Регистрация:
    05.06.17
    Сообщения:
    2.387
    Благодарности:
    1.327
    Естественное горение. Шахта вверх ногами. Добивать Стропуву. Дрова отдельно от воды.
     
  8. Оксфорд
    Регистрация:
    12.04.12
    Сообщения:
    9.425
    Благодарности:
    1.871

    Оксфорд

    Живу здесь

    Оксфорд

    Живу здесь

    Регистрация:
    12.04.12
    Сообщения:
    9.425
    Благодарности:
    1.871
    Адрес:
    Уфа
    Не надо всех за идиотов держать. Принцип известен много лет- где куча довольных пользователей?
     
  9. Виктрычч
    Регистрация:
    05.06.17
    Сообщения:
    2.387
    Благодарности:
    1.327

    Виктрычч

    Живу здесь

    Виктрычч

    Живу здесь

    Регистрация:
    05.06.17
    Сообщения:
    2.387
    Благодарности:
    1.327
    Дык брошена на полдороге бизнесменами. Как и многое. Моя печь та же Стропува. Только попроще. Ненравится как горит? Тоже поначалу дёготь в вёдра сливал.
     
  10. alarin
    Регистрация:
    29.07.16
    Сообщения:
    8.662
    Благодарности:
    3.751

    alarin

    Живу здесь

    alarin

    Живу здесь

    Регистрация:
    29.07.16
    Сообщения:
    8.662
    Благодарности:
    3.751
    Адрес:
    Казахстан, Алма-Ата
    Вот именно, что примерно. У нас не измерение ошибки или сумма ошибок, а обновление данных их анализ. Алгоритм другой, хотя сам механизм действительно похож и может быть вполне использован для наших целей. В ПИДе алгоритм заставляет исполнительные механизмы следовать за некой заданной функцией, а у нас мы наоборот, должны эту функцию построить при помощи этих механизмов, да еще и не напрямую, а косвенно, через обратные связи. Обратные связи создает именно процесс горения, а не электрические цепи от исполнительного механизма.
    А вообще, давайте попробуем вместе разобрать детали алгоритма управления, если это интересно
     
  11. Виктрычч
    Регистрация:
    05.06.17
    Сообщения:
    2.387
    Благодарности:
    1.327

    Виктрычч

    Живу здесь

    Виктрычч

    Живу здесь

    Регистрация:
    05.06.17
    Сообщения:
    2.387
    Благодарности:
    1.327
    Наблюдение на малых мощностях. Если её регулировать только входом, щель получается настолько тонкая, что её сложно не только удержать саму, но и удержать режим. Но если прижать выход до минимума, то регулирование входом идёт в широком диапазоне. Причём переход идёт в устойчивый режим. Ни какого расколбаса. Ракетчикам это известно. У Берга как минимум 3 единожды настроенных заужения. Но ими же всеми можно манипулировать.
     
  12. V757V
    Регистрация:
    23.11.11
    Сообщения:
    1.683
    Благодарности:
    633

    V757V

    Живу здесь

    V757V

    Живу здесь

    Регистрация:
    23.11.11
    Сообщения:
    1.683
    Благодарности:
    633
    Адрес:
    Москва
    Так это (int=pos) оказывается я написал? Ахренеть!
     
  13. Виктрычч
    Регистрация:
    05.06.17
    Сообщения:
    2.387
    Благодарности:
    1.327

    Виктрычч

    Живу здесь

    Виктрычч

    Живу здесь

    Регистрация:
    05.06.17
    Сообщения:
    2.387
    Благодарности:
    1.327
    Всё! Теперь не отмажетесь! :)]
    Я тут накропал аварийные ограничения режима.
    Суть. Не дать потухнуть при зажимании режима термометром помещения. Ну и не дать взлететь при разгоне на легкоплавком топливе.

    / конечники бубы по дымовым

    byte Min_dg=50; / уставка от потухания
    byte Max_dg=200;/ уставка от перегрева
    byte Kf=10; / возможно подобрать
    float T_dg; / термопара дымовых газов
    void setup(){}
    void loop(){

    Min_dg=Kf*(Min_dg-T_dg);/ + к поз серво
    Max_dg=Kf*(T_dg-Max_dg);/ - к поз серво
    Бла-бла-бла

    pos=(int)(P_gain*Err_T+45+Min_dg-Max_g);
    }
    Вопрос. byte справятся с получением положительной разницы? Ну что бы коррекция шла только за краями рабочего диапазона?
     
    Последнее редактирование: 26.11.21
  14. V757V
    Регистрация:
    23.11.11
    Сообщения:
    1.683
    Благодарности:
    633

    V757V

    Живу здесь

    V757V

    Живу здесь

    Регистрация:
    23.11.11
    Сообщения:
    1.683
    Благодарности:
    633
    Адрес:
    Москва
    Не, это все, на мой взгляд не правильно. Потому что, во-первых не надо все валить в кучу, через какое-то время при таком написании по мере развития самому автору будет сложно разобраться, что где. Т. е. Структура должна быть такой, чтобы было понятно что где. Все отдельно ПИД, защита от перегрева, защита от затухания и т. д.
    Например так.
    1. Если дымогазы какое-то время подряд 5 (например) отсчетов превышают какую-то температуру
    поднимаем флаг перегрева OverT_flag=TRUE; и держим его пока есть перегрев.
    2. Если дымогазы какое-то время подряд 50 (например) отсчетов ниже чем задано
    поднимаем флаг опасности затухания UnderT_flag= TRUE;
    3. Считаем pos по ПИДу
    4. Перед тем, как отправить pos в сервомеханизм, проверяем флаги
    если флаг перегрева поднят - ставим угол на ограничение.
    если флаг затухания поднят - открываем на какое-то время заслонку, флаг опускаем по таймеру или какой-то пороговой температуре дымогазов.
    5. Если оба флага опущены, то только тогда передаем позицию по п. 3 в сервомеханизм.
    Что касается byte это число 0...255 (минуса быть не может), если это число участвует в выражениях, как например Max_dg=Kf*(T_dg-Max_dg);, то при этом могут возникать (а могут и нет) трудно отлавливаемые ошибки, потому что переменные в этом выражении разного типа. Поэтому следует сделать явное приведение типов
    Код:
    Max_dg=(byte)((float) Kf*(T_dg-(float) Max_dg));
    А лучше изначально работать с переменными одного типа, нпр float. А начинать экономить надо когда явно не хватает памяти или производительности. Чтобы уйти от float, которые чрезвычайно затратны для 8 битных МК, с далласом можно работать как с числом фиксированной разрядности, он фактически и пересылает не float а целое int, где младшие четыре бита дробная часть градуса.
     
  15. arsenty
    Регистрация:
    15.01.15
    Сообщения:
    3.097
    Благодарности:
    1.081

    arsenty

    Живу здесь

    arsenty

    Живу здесь

    Регистрация:
    15.01.15
    Сообщения:
    3.097
    Благодарности:
    1.081
    Хорошо когда толково разьясняют. :hndshk:
     
  16. Виктрычч
    Регистрация:
    05.06.17
    Сообщения:
    2.387
    Благодарности:
    1.327

    Виктрычч

    Живу здесь

    Виктрычч

    Живу здесь

    Регистрация:
    05.06.17
    Сообщения:
    2.387
    Благодарности:
    1.327
    Примерно понятно, но непонятно, как передавать позицию. На бейсике просто указываешь номер строки. А тут?