Soir пише:
Создать возможно. Что добавить Вы описали, а что убавить?
Опишите полный функционал, без ссылки на куда-либо.
В термостате на ATmega8 должны быть такие функции:
1. Измерение температуры 1 раз в секунду, вывод на 4-х разрядный семисегментный индикатор.
2. При нажатии на кнопку MODE(Работает только по короткому нажатию) индикатор переводится по кругу на отображение настроек:
- T – температура включения эл-котла;
- t – температура включения насоса;
- d – установка гистерезиса;
- режимы работы «A On» включено автоматическое управление котлом, «OFF» котел выключен. Режим выбирается кнопками PLUS/MINUS по кругу. При первом включении, исчезновении питания либо выключением кнопкой PUMP, термостат переходит в режим «OFF» котел выключен и лишь когда температура уменьшиться ниже заданной с учетом гистерезиса тогда переключится в «A On».
- буква A число % выходной мощности от 0 до 100. Если отсутствуют синхроимпульсы сетевого напряжения на дисплее будет Err0, выходная мощность будет 0, независимо от режима работы.
- ST время в секундах между шагами корректировки мощности. Быстродействие регулятора в автоматическом режиме.
- SL максимальный шаг корректировки. Ограничение единовременного изменения мощности. Шаг корректировки рассчитывается программой автоматически в пределах от 1 до SL в зависимости от динамики изменения температуры. Другими словами, величина в %, на которую производится изменение выходной мощности в автоматическом режиме по истечении времени ST.
3. По истечении 5 сек от последнего нажатия на кнопки, индикатор переходит в режим отображения текущей температуры из любого режима. Если были произведены какие-либо изменения, они запишутся в память.
4. В память заносятся: заданная температура (t), гистерезис (d), режим (A, OFF), время в секундах между шагами (ST), максимальный шаг корректировки (SL).
5. При сбое в работе датчика, если устройство было в автоматическом режиме, нагрузка выключается.
6. Возможность переключения МК для работы с индикаторами как ОА так и ОК, замыканием перемычки на плате.
7. Кнопки PLUS/MINUS работают по короткому и длинному нажатию.
8. Пределы установки температуры +20 ÷ +90 оС.
9. Пределы установки дельты 1 ÷ 20,0 оС.
10. Пределы установки времени шага регулирования 1 ÷ 99 сек.
11. Пределы установки шага регулирования 1 ÷ 20 %.
12. Функция управления циркуляционным насосом, а именно:
a. В зависимости от температуры. К примеру разжигаю ТТ котел и пока температура не поднимется выше 50гр. насос выключен. Как только t воды стала больше заданного уровня, включается насос, электрокотел при этом выключен.
При остывании ТТ котла и снижении t воды скажем до 55гр включается электрокотел, насос также продолжает работать. Температуры включения котла и насоса должны задаваться независимо друг от друга. Выключатся насос должен при 30гр.
b. Ручное управление насосом. Добавить кнопку PUMP, при кратковременном нажатии на которую насос либо включается либо выключается независимо от температуры.
c. При удержании этой же кнопки сначала выключается электрокотел(если он включен), а при снижении t воды до 30гр. выключается насос.
d. Для индикации режимов работы насоса(вкл/выкл) на один из свободных портов повесить светодиод.
Управление котлом будет симистором, а насос релюхой.
Датчик DS18b20
Err0 – отсутствие синхроимпульсов прохождения сетевого напряжения через «0».
Err1 – МК не нашел датчик.
Err2 – датчик обнаружен, но при считывании температуры произошла ошибка (не совпала контрольная сумма).
Вроде ничего не забыл!