Только начал изучать возможности Ардуино и прочел "конспект хакера" ))
Заранее прошу прощения за нуберские вопросы.
Хочу собрать схему управления отоплением и возник вопрос управления трехпроводными шаровыми кранами CWX-15Q.
Схема управления следующая: Дано 4 контура отопления, на обратке каждого контура ставим шаровый кран и крепим датчик температуры и еще один датчик температуры высовываем в окно. Задача поддерживать в обратке температуру 42-50 град в зависимости от температуры датчика наружного воздуха, показания которого беруться из простого одномерного массива данных на 20 чисел, где уличной температуре 0 и выше град соответствует 43 град в обратке и при - 20 и ниже температура в обратке 58град.
Алгоритм управления следующий, если температура в обратке выше чем соответствующая в массиве то подаем напряжение на закрытие на 10мсек, если ниже то соответственно на открытие.
Мне не понятно следующее:
1. Как подать напряжение на двигатель 12 вольт? Схема расмотренная в примере с реле мне не подходит, так как в схеме кран или закрыт или открыт. У меня он должен потихоньку закрываться и открываться.
2. Как сократить количество занятых управляемых пинов, сейчас получается по два на двигатель и пять на датчики температуры итого 13.
3. Так как система инерциальная необходимо после каждого импульса на открытие или закрытие жать какое-то время для изменения температуры воды, но вставка задержки на 60 секунд в конце Loop не даст мне возможность использовать Ардуино для чего-то еще. Я вижу возможность решения только с модулем времени, поправьте меня если есть возможность вести как-то еще учет времени не используя задержки.