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

Самодельный контроллер пеллетной горелки на Arduino

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

  1. mednagolov
    Регистрация:
    15.01.14
    Сообщения:
    623
    Благодарности:
    221

    mednagolov

    Живу здесь

    mednagolov

    Живу здесь

    Регистрация:
    15.01.14
    Сообщения:
    623
    Благодарности:
    221
    Адрес:
    Бангалор
    А перенести градусосчиталку в милис интересная идея...
     
  2. mednagolov
    Регистрация:
    15.01.14
    Сообщения:
    623
    Благодарности:
    221

    mednagolov

    Живу здесь

    mednagolov

    Живу здесь

    Регистрация:
    15.01.14
    Сообщения:
    623
    Благодарности:
    221
    Адрес:
    Бангалор
    О! а если вместо милис покрутить delay (1000) в цикле for ?
    интересно...интереснооо...
     
  3. Виктрычч
    Регистрация:
    05.06.17
    Сообщения:
    2.360
    Благодарности:
    1.299

    Виктрычч

    Живу здесь

    Виктрычч

    Живу здесь

    Регистрация:
    05.06.17
    Сообщения:
    2.360
    Благодарности:
    1.299
    Ну да, я просто не программист и выражаюсь на своём птичьем.
    Вот например в общем цикле пауза + д через мильен циклов будет мильен пауз +д. Этот мильен происходит за секунду А имхо оно не должно меняться, пока миллис не прокукарекает раз в три секунды.
    А ему приходиться кукарекать через нагоняемые 3 мильена пауз. И в прогрессии.
    Имхо. Где то тут копать нужно.
     
  4. Виктрычч
    Регистрация:
    05.06.17
    Сообщения:
    2.360
    Благодарности:
    1.299

    Виктрычч

    Живу здесь

    Виктрычч

    Живу здесь

    Регистрация:
    05.06.17
    Сообщения:
    2.360
    Благодарности:
    1.299
    Дык на delay все стоит. Как бы не правильно это. Если только не показывать зубрам программирования.
    Я в скеч не глубоко пока влез, но думаю арифметику нужно делать так: пауза (+) д.
    Само собой без скобок. Редактор не пропускает 2 плюса зараза.
    Все равно не пропускает. В скобках два! плюса.
     
    Последнее редактирование: 12.10.21
  5. mednagolov
    Регистрация:
    15.01.14
    Сообщения:
    623
    Благодарности:
    221

    mednagolov

    Живу здесь

    mednagolov

    Живу здесь

    Регистрация:
    15.01.14
    Сообщения:
    623
    Благодарности:
    221
    Адрес:
    Бангалор
    Воткнул Далосовский градусник - красота! температура чётко кажет, закоментил милисы, и что за фигня!
    пауза+Д нифига не прибавляется! и не вычитается! - вот оно ЧЁ Михааалыч!
     
  6. mednagolov
    Регистрация:
    15.01.14
    Сообщения:
    623
    Благодарности:
    221

    mednagolov

    Живу здесь

    mednagolov

    Живу здесь

    Регистрация:
    15.01.14
    Сообщения:
    623
    Благодарности:
    221
    Адрес:
    Бангалор
    Не пойму строчки
    if (T <Tmin){ podacha + D; pause - D; Sp=3; } / скорость подачи - если холоднее то подача = *3
    if (Tmax >T) && (Tmin < T){ podacha + D; pause + D; Sp=2; } / расчёт подача при норме
    if (T > Tmax){ podacha - D; pause + D; Sp=1; } / скорость подачи - если теплее то подача = 1
    if (T >Tmax + 5){ P = 0; Sp=0; } / скорость подачи - если теплее Tmax + 5 то подача СТОП!
    почему то не прибавляют ни вычитают ...?
     
  7. Виктрычч
    Регистрация:
    05.06.17
    Сообщения:
    2.360
    Благодарности:
    1.299

    Виктрычч

    Живу здесь

    Виктрычч

    Живу здесь

    Регистрация:
    05.06.17
    Сообщения:
    2.360
    Благодарности:
    1.299
    Думаю правильней писать: если... То х=х+y. Или два плюса. В зависимости от задачи.
     
  8. mednagolov
    Регистрация:
    15.01.14
    Сообщения:
    623
    Благодарности:
    221

    mednagolov

    Живу здесь

    mednagolov

    Живу здесь

    Регистрация:
    15.01.14
    Сообщения:
    623
    Благодарности:
    221
    Адрес:
    Бангалор
    Походу if не считает математику, а только присваивает, или инкременирует ну типа х+, а например х+5 не хочет... ни в int ни в float ...
     
  9. Виктрычч
    Регистрация:
    05.06.17
    Сообщения:
    2.360
    Благодарности:
    1.299

    Виктрычч

    Живу здесь

    Виктрычч

    Живу здесь

    Регистрация:
    05.06.17
    Сообщения:
    2.360
    Благодарности:
    1.299
    Не должно. Там много тонкостей. Только нужно разобраться. Я серву гонял и в хвост и в гриву. Только все на старом телефоне. Сейчас че-нить из чужого для примера попробую тиснуть.
     

    Вложения:

    • Screenshot_2021-10-12-12-38-13-969_name.antonsmirnov.android.arduinodroid2.jpg
  10. V757V
    Регистрация:
    23.11.11
    Сообщения:
    1.682
    Благодарности:
    633

    V757V

    Живу здесь

    V757V

    Живу здесь

    Регистрация:
    23.11.11
    Сообщения:
    1.682
    Благодарности:
    633
    Адрес:
    Москва
    Он делает все, что ему указали, а считать вы ему не указали. Считать будет podacha += D; или podacha= podacha + D
     
  11. mednagolov
    Регистрация:
    15.01.14
    Сообщения:
    623
    Благодарности:
    221

    mednagolov

    Живу здесь

    mednagolov

    Живу здесь

    Регистрация:
    15.01.14
    Сообщения:
    623
    Благодарности:
    221
    Адрес:
    Бангалор
    это присвоение и число будет всё время рости при каждой итерации, podacha += D; тоже постаянно увеличивается, а надо чтоб podacha увеличилась на D при температуре ниже Тмин. и наоборот уменшилась на D усли выше Тмин.
     
  12. V757V
    Регистрация:
    23.11.11
    Сообщения:
    1.682
    Благодарности:
    633

    V757V

    Живу здесь

    V757V

    Живу здесь

    Регистрация:
    23.11.11
    Сообщения:
    1.682
    Благодарности:
    633
    Адрес:
    Москва
    Ничего не понял. оператор if вычисляет лог. выражение, если выражение истинно, то выполняется блок за ним, если ложно блок игнорируется. Как вы ему написали, он ровно так и делает, он по другому не умеет.
    Я же вам ответил в ЛС, что вас не правильно построен код. Читать температуру и вычислять времена подачи и паузы нужно один раз в начале полного цикла "подача +пауза". Вы похоже уже сами зациклились. Сделайте перерыв и подумайте о том, что я написал.
     
  13. mednagolov
    Регистрация:
    15.01.14
    Сообщения:
    623
    Благодарности:
    221

    mednagolov

    Живу здесь

    mednagolov

    Живу здесь

    Регистрация:
    15.01.14
    Сообщения:
    623
    Благодарности:
    221
    Адрес:
    Бангалор
    Да! три дня и две ночи бился как муха об косяк...:)]
    Да, спасибо вам правильно ткнули меня носом...:super:
    Проблема решена!
    В сетупнике присвоил подачи и паузы переменным Po и Pa соответственно. В оператор if делаю присвоение подача += Д, потом милис их спокойно отрабатывает, а digitalWrite (pin_on ,P);дрыгает релюшкой, потом в начале ЛОПА востанавливаю значения подачи и паузы (т к они изменились в градусощиталке), и понеслось всё по кругу...:victory:
    digitalWrite (pin_on ,P) перенёс выше, сразу после градусосчиталки, иначе когда Р=0 не останавливалась подача, релюшка всеравно щелкала.
    Вобщем всё получилось и всё заработало к стари таймера сейчас болие - мение стабильно отрабатывают, Считаю блок ПОДАЧИ сделан, сейчас буду к ниму блок МЕНЮ прикручивать, и блок АЛЯРМ. пока всё ...:hello:...ВСЕМ СПАСИБО!
     
  14. alarin
    Регистрация:
    29.07.16
    Сообщения:
    8.632
    Благодарности:
    3.746

    alarin

    Живу здесь

    alarin

    Живу здесь

    Регистрация:
    29.07.16
    Сообщения:
    8.632
    Благодарности:
    3.746
    Адрес:
    Казахстан, Алма-Ата
    @_Reba_, Павел, поясни еще раз насчет вента. У меня решение простое ШИМ от ДС-12 В. Если надо использовать управление от 220, то можно в цепь симистора воткнуть оптопару и по ней синхронизировать работу ДС. По выходу оптопары будет видно какого типа управление на симисторе. На низкой стороне в одном случае меняем скважность импульсов, в другой меняем количество импульсов в периодической последовательности. Это в зависимости от того, как управляется тиристор. Схемы в принципе не сложные...
     
  15. _Reba_
    Регистрация:
    13.10.15
    Сообщения:
    1.971
    Благодарности:
    1.746

    _Reba_

    Живу здесь

    _Reba_

    Живу здесь

    Регистрация:
    13.10.15
    Сообщения:
    1.971
    Благодарности:
    1.746
    Адрес:
    Приазовье
    Куда и как ? схемку нужно (можно с номиналами :|:) или ссылку на ченить подобное в инете.

    Предполагается 2 ДС вента (ПВ и ВВ) и они будут управляться от одного сигнала контролера через собственные коректоры оборотов.
    Сейчас контролер управляет АС, на выходе этого канала на плате стоит симистор (на остальных релюхи).
    Когда один вент на ПВ и ВВ настройка горелки может затянуться на ...годы.
    Пример - 4отв, 2шт Д 3мм и 2шт Д 5мм, ВВ типа мало, рассверлил все до 5мм стало много (нужно было или по одному рассверливать или по 0,5мм добавлять:(). Все мелкое, неудобное, часть заварено автором - неразборное .