Запрошуємо, Гість
Ім'я користувача: Пароль: Запам’ятати мене

ТЕМА: Контроллер управления пеллетной горелкой.Проблема.

Контроллер управления пеллетной горелкой.Проблема. 22 вер. 2015 20:57 #1

  • grin-mpx
  • grin-mpx аватар
  • Оффлайн
  • Користувач
  • Дописи: 12
Здравствуйте уважаемые форумчане.
Некоторое время назад мне подарили проект контроллера для пеллетной горелки с некоторыми проблемами.В программировании я почти ноль, но за это время существенно смог изменить прошивку под свои нужды.Сейчас она в состоянии "Уже почти закончена"
Когда собрал схему в железе, то вылез очень неприятный нюанс, а именно:
- В схеме присутствует датчик DS18B20 по показаниям температуры которого исполнялся определенный алгоритм работы, например, при достижения температуры 70 гр. горелка должна уходить в ожидание и до температуры 60 гр. не просыпаться. НО! Горелка периодически включалась не достигнув температуры 60 гр. По моим предположениям происходит сбой передачи данных от датчика и контроллер запускает процесс розжига горелки. Подобное явление (короткий сбой одного из датчиков) наблюдалось на Терморегуляторе с погодным регулировании V 2.1, но там провода были длинные, а здесь 10 см.
В связи с вышеизложенным прошу помощи в корректировке прошивки, может можно программно организовать перепроверку данных от датчика перед началом отработки алгоритма.(по типу защиты кнопки от дребезга).
Я вообще не понимаю как это сделать, помогите пожалуйста :blush:
Во вложении исходники (Pop 2) и проект в Протеусе.
с ув. Григорий

Папка большая была, отсеял как мог...


Вкладення -1.rar не знайдено



Вкладення -2.rar не знайдено



Вкладення -3.rar не знайдено



Вкладення -4.rar не знайдено



Вкладення -5.rar не знайдено

Останнє редагування: 22 вер. 2015 21:16 від grin-mpx.
Увійдіть до облікового запису, щоб писати повідомлення.

Контроллер управления пеллетной горелкой.Проблема. 22 вер. 2015 21:06 #2

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 13643
  • Подякували: 5174
  • sxem.org 2019,2021 Respect Author
grin-mpx пише:
Во вложении исходники (Pop 2) и проект в Протеусе.
Нету вложения.
Увійдіть до облікового запису, щоб писати повідомлення.

Контроллер управления пеллетной горелкой.Проблема. 23 вер. 2015 10:39 #3

  • Oto
  • Oto аватар
  • Оффлайн
  • Moderator
  • Дописи: 2532
  • Подякували: 1099
  • Site Sponsor 2017 Author sxem.org Sponsor 2019
grin-mpx пише:

Папка большая была, отсеял как мог...
Отсеяли вы как-то не очень, в архивах промежуточные версии , нужно еще догадаться какая часть является финальной, но в любом случае ко всем вариантам не хватает файла lcd_rus.h .
россия - подлая нация!
Увійдіть до облікового запису, щоб писати повідомлення.

Контроллер управления пеллетной горелкой.Проблема. 23 вер. 2015 11:21 #4

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 13643
  • Подякували: 5174
  • sxem.org 2019,2021 Respect Author
Не совсем понимаю, что в этом куске программы происходит
t=ds18b20_temperature(NULL);
if(!((t<95)&(t>1)))
     {t=ds18b20_temperature(NULL);
     if(!((t<95)&(t>1))) 
        {
        t=ds18b20_temperature(NULL);
        if(!((t<95)&(t>1))) 
            {
            t=ds18b20_temperature(NULL);
но при определенных условиях происходит многократное обращение к датчику через короткий промежуток времени. Во-первых, зачем. Во-вторых, если все-таки это обосновано, то надо давать датчику время на конвертацию температуры.
Увійдіть до облікового запису, щоб писати повідомлення.

Контроллер управления пеллетной горелкой.Проблема. 23 вер. 2015 12:26 #5

  • grin-mpx
  • grin-mpx аватар
  • Оффлайн
  • Користувач
  • Дописи: 12
Не понимаю я зачем.
Контроллер отправляет программу в "аварию" в случае если на датчике зафиксированна темп. ниже 1 градуса или выше 95, либо когда нет связи с датчиком.Может кто-то пытался организовать перепроверку состояния но некорректно?
Останнє редагування: 23 вер. 2015 12:27 від grin-mpx.
Увійдіть до облікового запису, щоб писати повідомлення.

Контроллер управления пелетной горелкой.Проблема. 23 вер. 2015 14:36 #6

  • Oto
  • Oto аватар
  • Оффлайн
  • Moderator
  • Дописи: 2532
  • Подякували: 1099
  • Site Sponsor 2017 Author sxem.org Sponsor 2019
grin-mpx пише:
Контроллер отправляет программу в "аварию" в случае если на датчике зафиксированна темп. ниже 1 градуса или выше 95,....
Если посмотреть протеусе, то все понятно, за рамками диапазона (t<95)&(t>1) программа виснет.
grin-mpx дайте либу lcd_rus.h.
россия - подлая нация!
Увійдіть до облікового запису, щоб писати повідомлення.

Контроллер управления пеллетной горелкой.Проблема. 23 вер. 2015 14:49 #7

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 13643
  • Подякували: 5174
  • sxem.org 2019,2021 Respect Author
Я вот какую-то библиотеку нашел, с ней даже компилируется. Но если использовать для симуляции в Proteus *.cof, то вылетает с ошибками - не разбирался, некогда. С *. hex нормально. Не знаю, как устроена библиотека CVAVR для DS18B20, но возможно надо проверить не приходят ли прерывания во время работы с датчиком. В самой программе прерывания очень длинные, вряд ли кто меня убедит, что это обосновано...
Долучення:
Останнє редагування: 23 вер. 2015 14:49 від Soir.
Увійдіть до облікового запису, щоб писати повідомлення.
Користувачі які сказали Дякую: Oto

Контроллер управления пелетной горелкой.Проблема. 23 вер. 2015 14:59 #8

  • grin-mpx
  • grin-mpx аватар
  • Оффлайн
  • Користувач
  • Дописи: 12
Oto пише:
grin-mpx пише:
Если посмотреть протеусе, то все понятно, за рамками диапазона (t<95)&(t>1) программа виснет.
grin-mpx дайте либу lcd_rus.h.

Смогу выложить только сегодня поздно вечером.
Останнє редагування: 23 вер. 2015 15:00 від grin-mpx.
Увійдіть до облікового запису, щоб писати повідомлення.

Контроллер управления пелетной горелкой.Проблема. 23 вер. 2015 21:41 #9

  • grin-mpx
  • grin-mpx аватар
  • Оффлайн
  • Користувач
  • Дописи: 12
Вот файл lcd_rus.h с которым компилирую этот проект.

Вкладений файл:

Назва файлу: lcd_rusgrin.rar
Розмір файлу:1 KB
Увійдіть до облікового запису, щоб писати повідомлення.

Контроллер управления пелетной горелкой.Проблема. 23 вер. 2015 21:44 #10

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 13643
  • Подякували: 5174
  • sxem.org 2019,2021 Respect Author
grin-mpx пише:
Вот файл lcd_rus.h
К нему еще полагается lcd_rus.lib
Увійдіть до облікового запису, щоб писати повідомлення.

Контроллер управления пелетной горелкой.Проблема. 23 вер. 2015 22:00 #11

  • grin-mpx
  • grin-mpx аватар
  • Оффлайн
  • Користувач
  • Дописи: 12
Вот

Вкладений файл:

Назва файлу: lcd_rus.rar
Розмір файлу:2 KB
Увійдіть до облікового запису, щоб писати повідомлення.

Контроллер управления пелетной горелкой.Проблема. 25 вер. 2015 08:20 #12

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 13643
  • Подякували: 5174
  • sxem.org 2019,2021 Respect Author
grin-mpx пише:
с которым компилирую этот проект.
Файлы те же, что и я выкладывал. И проблемы те же.
1. Выскакивают предупреждения при компиляции.
2. Вылетает симуляция с файлом *.cof
3. Ошибка симуляции появляется при работе МК с индикатором. Если отключить PD7, то ошибки нет, индикации тоже. Зачем подключен вывод D3 индикатора - тоже загадка.
В общем, надо разбирать прошивку, наводить порядок, а потом уже и проблема с датчиком раскроется.
Чужие исходники править ни желания, ни времени. Все, что могу посоветовать, это поочередно отключать функции и смотреть за результатом. Отключать все, вплоть до: оставить только измерение температуры. Можно добавить фиксацию аномального (резкого) изменения температуры и вывести на индикатор. Тогда можно будет включить и оставить, а проверить как вел себя прибор в удобное время, чтобы не сидеть перед ним постоянно.
---
P.S.
Кстати, у меня длина провода к датчику метров 20 - сбоев не наблюдаю. Так что дело однозначно в прошивке (конечно, если исключить неисправность деталей и ошибки монтажа).
Останнє редагування: 25 вер. 2015 08:20 від Soir.
Увійдіть до облікового запису, щоб писати повідомлення.
Користувачі які сказали Дякую: grin-mpx

Контроллер управления пелетной горелкой.Проблема. 25 вер. 2015 09:53 #13

  • grin-mpx
  • grin-mpx аватар
  • Оффлайн
  • Користувач
  • Дописи: 12
Спасибо уважаемый Soir за попытку.
Вопрос закрыт. Попробую полностью удалить все что касается работы с датчиком DS18b20 и освободить пин, не помешает.
Останнє редагування: 25 вер. 2015 10:01 від grin-mpx.
Увійдіть до облікового запису, щоб писати повідомлення.

Контроллер управления пелетной горелкой.Проблема. 25 вер. 2015 11:36 #14

  • Soir
  • Soir аватар
  • онлайн
  • Moderator
  • Дописи: 13643
  • Подякували: 5174
  • sxem.org 2019,2021 Respect Author
grin-mpx пише:
Попробую полностью удалить все что касается работы с датчиком DS18b20
Библиотека работы с датчиком DS18B20 в самом CVAVR вроде как правильная. Поэтому надо смотреть в сторону обработки данных, вывода на индикатор и других сопутствующих и отдельно работающих функций.
Может еще раз проверить сам датчик (заменой) и его соединения с МК. Питание - на стабильность и пульсации. Правильность установки FUSE.
Попробуйте перед чтением температуры запретить прерывания, а разрешить уже после завершения чтения.
Можно там, где идет повторный опрос датчика, если первое чтение вышло за пределы, что-то вывести на индикатор, засветить светодиод или просто завесить программу. Сами пределы сузить, например, если датчик в помещении где температура +20, установить пределы +18 - +22. Только учесть, что первое считывание даст +85.
Так можно локализовать место проблемы. От результатов уже двигаться дальше.
Увійдіть до облікового запису, щоб писати повідомлення.
Модератори: wolf2000, Soir, Vakula, Айнцвайдрайченко