Аквариумный контроллер на pic16f628a (3 канала + PWM) - Страница 2 - Аквафорум - форум акваріумістів та тераріумістів
На сайт Всеукраинской Ассоциации аквариумистов
На главную страницу форума



 


Вернуться   Аквафорум - форум акваріумістів та тераріумістів > Аквариум и оборудование > "Самоделкин" > Аквариумная автоматика
Аукцион Регистрация Дневники Справка Пользователи Календарь Поиск Сообщения за день Все разделы прочитаны

Важная информация

Ответ
 
Опции темы Опции просмотра
Старый 29.05.2015, 01:30  
Аквариумный контроллер на pic16f628a (3 канала + PWM)
Живу я тут

Регистрация: 19.08.2011
Адрес: Киев
Сообщений: 213
 

Поблагодарил(а) : 570
Поблагодарили 290 раз(а) в 61 сообщениях
cahek80 cahek80 поза форумом 29.05.2015, 01:30
Рейтинг: ()

Доброго времени суток!

Сначала немного скучной предыстории:
Данный контроллер основан на идее контроллера "Sokol_And". Но мне не хватало некоторых функций, которые я бы мог настроить под себя. Поэтому было решено сделать свой акваконтроллер (с преферансом и библиотекаршами), основанный на pic16f628a (впоследствии я конечно же пожалел, что не начал делать хотя-бы на stm32f030f4, но, уже спаянную плату выбрасывать не хотелось).


Аквариумный контроллер оснащён микропроцессором PIC16F628A.
Экран:
- жидкокристаллический (16х2);
- подсветка экрана.
Две кнопки для настройки меню.
Часы реального времени DS1307.
Батарейка для непрерывного хода часов.
Энергонезависимая память данных.
Три выхода на 220 В (BT136-800).
Два выхода на 12 В (IRFZ44N).
Один из выходов на 12 В может работать в режиме PWM (IRFZ44N).

Контроллер может управлять по времени тремя нагрузками и одним PWM (светодиодной лентой, например). Частота PWM равна 1 Кгц. Нагрузки могут быть как на 220 вольт, так и на 12 (с некоторыми ограничениями по каналам 12 вольт).

К сожалению температурой управлять данный контроллер не может, не хватило памяти (это и есть та причина, по которой я пожалел о выборе контроллера).

При включении питания отрисовывается главный экран, на котором отображается текущее время и состояние каналов.
Нажмите на изображение для увеличения
Название: pic1.jpg
Просмотров: 938
Размер:	13.7 Кб
ID:	500099

При нажатии кнопки "S2" в главном меню контроллера на 20 минут принудительно включаются выбранные заранее каналы. При этом в нижнем правом углу пишется буква "М"
Нажмите на изображение для увеличения
Название: pic4.jpg
Просмотров: 906
Размер:	14.9 Кб
ID:	500121

Всего в контроллере можно настроить 10 таймеров (от 0 до 9) Теоретически количество каналов можно увеличить, но свободной памяти осталось несколько байт и это будет сделать непросто.
Нажмите на изображение для увеличения
Название: pic2.jpg
Просмотров: 908
Размер:	15.3 Кб
ID:	500100

Каждый таймер настраивается на нужный канал, устанавливается время его включения и выключения.
Нажмите на изображение для увеличения
Название: pic3.jpg
Просмотров: 921
Размер:	16.2 Кб
ID:	500101
Во второй строке первая цифра отвечает за номер канала, которым управляет данный таймер.

При выборе канала №4 таймер управляет каналом PWM. Время перехода от 0 до 255 и обратно составляет также 20 минут. К сожалению из-за нехватки памяти не реализован алгоритм, обеспечивающий равномерность загорания и погасания светодиодов. Хотя при таком длительном изменении это не заметно.

Время установки таймеров изменяется с шагом в 10 минут.

После выбора пункта "Y" новое значение записывается в память.

Для настройки существует 2 кнопки, одна для переключения режимов, вторая для изменения значения.

Если не трогать кнопки, то через пару минут контроллер автоматически переключается на главный экран.

Также при переключении по пунктам меню после таймеров идёт настройка выходов, которые будут включаться при нажатии кнопки "S2" в главном меню.
Нажмите на изображение для увеличения
Название: pic5.jpg
Просмотров: 903
Размер:	8.5 Кб
ID:	500130

На плате включена возможность управления как 12 вольтовой нагрузкой, так и нагрузкой 220-вольт.
В случае 12-и вольт управление идёт через транзисторы. Нагрузка 220 вольт включается через тиристоры. При управлении индуктивной нагрузкой необходимо будет добавление цепи из резистора и конденсатора.

На плате есть 2 перемычки, J1 и J2. Через них можно подключить один из транзисторов (T1) для управления 12 вольтовой нагрузкой. При подключении перемычки J1 управление дублируется с каналом 2.
При подключении перемычки J2, транзистор подключается к каналу 4 (PWM).
Транзистор T2 подключен к каналу 1.

Вот краткое описание контроллера. По возможности фотографии собранного устройства выложу на выходных.

Плата размерами получилась чуть больше платы экранчика.

Экранчик используется китайский, поэтому надписи выполнены латиницей. При желании надписи можно русифицировать, все значения записаны в EEPROM, при необходимости укажу адреса и длину надписей.

Изначально таймеры настроены неправильно. После сборки необходимо настроить их под свои нужды.

PS
Контроллер собран и работает уже неделю. Управления подсветкой экранчика нет, мне это было не актуально, да и памяти в контроллере не хватит уже.
В моем случае один канал (канал 3) идёт на включение основного освещения на лампах. Канал PWM используется для управления 30 ватт диодами светодиодной подсветки, которые реализуют рассвет-закат и доп. освещение аквариума.
Канал 2 используется для включения блока питания для светодиодного освещения.
Канал 1 - включается досветка красными светодиодами (светодиодная лента), а также работает как ночник.

Схема:
Нажмите на изображение для увеличения
Название: AquaControl.jpg
Просмотров: 1748
Размер:	60.3 Кб
ID:	500119

Печатная плата (нарисовано не оптимально, при желании можно нарисовать красивее конечно):
Нажмите на изображение для увеличения
Название: Плата.JPG
Просмотров: 1099
Размер:	378.6 Кб
ID:	500120

Во вложении схема, плата, прошивка, проект под Протеус(8) и картинка с некой схемой, описывающей логику работы с меню.
archive.zip

PPS
Следующий мой контроллер будет уж точно не на контроллерах PIC. Скорее всего это будет STM32 с графическим дисплеем 2.2" или 3" (возможно с тачем), несколько PWM, 2 датчика температуры, секундными таймерами и прочим.


Внимание! В процессе доработки плата немного менялась. Я её проверял, но мог пропустить некоторые мелочи.


В архиве в файле lay есть и первая версия платы (под названием Плата+), в которой был предусмотрен выход на термодатчик, который впоследствии пришлось вырезать.

UPD
всё, включая исходники.
control.rar


Последний раз редактировалось cahek80; 21.09.2016 в 21:16..
Просмотров: 11064
Ответить с цитированием
3 пользователей поблагодарили cahek80 за данный пост:
IS1971 (29.05.2015), sae74 (30.05.2015), _Vadim (16.09.2016)
Реклама помогает развиваться
Старый 20.09.2016, 17:05   #16
Живу я тут
  
 
Регистрация: 19.08.2011
Адрес: Киев
Сообщений: 213
Поблагодарил(а) : 570
Поблагодарили 290 раз(а) в 61 сообщениях
Re: Аквариумный контроллер на pic16f628a (3 канала + PWM) ===www.aquaforum.ua===

Добрый день! Я отказался от этого вида контроллеров (PIC) ибо запарился в 2 килобайта вмещать всё то что хотелось. Постараюсь выложить исходники, может сделаете что хотите. Ещё у этой программы аква-контроллера мне не нравится, что не удалось обновление экрана вместить в прошивку и у меня иногда изображение на экранчике портится.
могу написать что-то подобное под такую плату Оффтоп, в Китае её стоимость до 2-х долларов. Ну или под stm32f030f4, стоит копейки, но паять её и печатную плату делать многим будет не очень удобно. Но сроки сказать не могу, сейчас переделываю управление освещением дома.

cahek80 поза форумом   Ответить с цитированием


Share/Bookmark

Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход




Текущее время: 11:26. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
(с)Бешлега Олександр Анатолійович, 2002-2024. Використання матеріалів сайту без посилання на джерело заборонено.
Дякуємо за ліцензійну версію форума компанію Барбус, представника торгової марки Sera в Україні.

Друзі форуму: Зоомагазин byCOLLAR.com; waudog.ua

AQA.ru  - все об аквариумах

no new posts