Каталог статей

Главная » Все схемы » Схемы устройств на микроконтроллерах » Устройства на микроконтроллерах

Выбранная схема!!!


3430
Теплорегулятор.

Автор - DimAlt.
Участник Конкурса "Поздравь Кота по-человечески 2008".

Данный проектик попытка помочь моему коллеге по работе. Живет он в частном секторе, и у него нет газа. Отопление само собой электрическое. Не буду заливать про экономию, при использовании регуляторов с наворотами, так как ни крутись все равно дорого. Но вот мой коллега все уши прожужжал, что она существует, только надо знать как:)

Собственно про регулятор. Сначала идея - есть 2 датчика DS18S20, первый стоит на выходе котла (тенов) и по нем задается выходная температура, второй на входе котла (обратка) разница температур первого и второго датчика пропорционально изменяет напряжение на насосе. При разнице больше ~10 градусов мотор шуршит на полную мощю. При таком подходе, по утверждениям коллеги, система отопления работает на много эффективней. Управление тенами хотелось сделать беспомеховое, как в статье Ридико Л. И. "Алгоритм Брезенхема в тиристорных регуляторах мощности", но я в алгоритмах не силен, поэтому сделал по табличке (кто не знает: симистор включается при переходе через ноль, мощность регулируется кол-вом пропущенных полупериодов). При пробных пусках вылезла проблема, при больших токах (на котле борбуляторного типа:) это не я придумал:)) и плохой проводке (в сарае:)) идут просадки по сети, вообщем свет моргает. Лучше всего это заметно на маленьких мощностях, где частота коммутирования маленькая, поэтому было принято решение мощный тен разделить на три маленьких и коммутировать их так что бы не возникало провалов в сети. Правда на маленьких мощностях, периоды кое-где выпадают. Симистор всегда пропускает полный период, что бы в сети не возникала постоянная составляющая. Напряжение на мотор, конечно же, регулируется фазовым методом, и является источником помех, поэтому блок питания регулятора нужно делать на совесть, фильтры поставить что ли:), и не допускать что бы провода от датчиков шли рядом с силовыми. И не жалейте конденсаторов по питанию.

Конкретно по схеме. Резистор R1 лучше подобрать по осциллографу. В регуляторе всего 3 кнопки первая мотает по кругу отображение инфы на дисплее, 
1) температура задания 
2) температура 1 датчика 
3) температура 2 датчика 
Каждому режиму соответствует светодиод, при изменении температуры задания, светодиоды потушены. 
Два переключателя, первый ON\OFF отключает управление симисторами, второй при подаче питания, если замкнут, настраивает датчики на 12 битное разрешение, нужно всего лишь один раз. 
В программе управление тенами задается массивом

const unsigned int Pm[15][3]={
{//--------0---------0%
0000000000000000,
0000000000000000,
0000000000000000
},
{//----------------- 0 25% задание == температура
0b0010001000010001,//0b0001000001000001,
0b0100100001000100,//0b0100000100000100,
0b0001000100100010//0b1000010000010000
},
{//----------------- 1 43.7%
0b0101010010100101,
0b1010101001001010,
0b0100100100010101
},
{//----------------- 2 44%
0b0101010010100101,
0b1010101001001010,
0b0100100101010101
},

и т. д.

Ноль-пириод пропущен, 1- включен. Можно подстраивать самим, выбирая хар-ку регулирования, для конкретного помещения. 
Регулировка в диапазоне 15 градусов, то есть мощность ровна Pm[Тзадания-Треальная], можно сформировать скорость выхода на заданную температуру, чтобы избежать больших перерегулировок, так же выбрать мощность Pm[1] при реальной температуре равной температуре задания, сейчас в программе она установлена на ~25%. 

Для мотора:
var = (unsigned char)((Tizm[0]-Tizm[1])*3);
Можно умножать не на 3, а на 2, что бы растянуть диапазон (наверное 10 гр. маловато). 

К сожалению, в реальности, схема не была проверенна с мотором. Поэтому возможна не правильная работа алгоритма. Ну и схема проверялась дистанционно, типа ну как, работает? Да, вроде ничего, но.. Вобщем в таком духе. В моих экспериментах температура при выходе на заданную выскакивала градусов на 5, потом держалась на Pm[1] и Pm[2] ступени мощности. Конечно это не пид и не пи регулятор, но думаю, что с настройкой по умолчанию система будет иметь одну и туже ошибку рассогласования, и при установке Т. задания можно просто ориентироваться на нее. 

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

Микроконтроллер тактируется от внутреннего RC генератора 8 Mhz.

Файлы:
Прошивка с исходником и проект для PROTEUS.

Вопросы, как обычно, складываем тут





Источник: http://radiokot.ru/circuit/digital/home/27/
Категория: Устройства на микроконтроллерах | Добавил: brys99 (23.11.2011)
Просмотров: 11180 | Теги: Теплорегулятор. | Рейтинг: 0.0/0


Всего комментариев: 0

Все ссылки на книги и журналы, представлены на этом сайте, исключительно для ознакомления, авторские права на эти публикации принадлежат авторам книг и издательствам журналов! Подробно тут!
Жалоба

ьте свои комментарии !!!!

Имя *:
Email:
Код *:

Copyright Zloy Soft (Company) © 2008 - 2024