Контроллер автополива в разобранном виде |
Контроллер собран и готов к работе! |
Итак, из чего состоит контроллер?
Arduino Leonardo. Самодельная.
Для тех, кто не в курсе, Arduino - это такие небольшие платы с микроконтроллером, который можно запрограммировать для выполнения почти каких угодно задач. Для него разработан специальный значительно упрощённый язык программирования и куча обучающих материалов.Начать работать с ним может человек, достаточно далёкий от программирования и электроники. Каким и я был в своё время.
Сделал я её уже давненько, как эксперимент.
Схема Arduino Leonardo. |
Поначалу мне удалось залить в Ардуино загрузчик, и потом заливать в неё скетчи через USB. Но потом по непонятным причинам он слетел, и пришлось программировать через ISP-разъём при помощи программатора (у меня это USBasp).
В общем, если кто захочет повторить контроллер полива - то есть два варианта. Или сделать такой же самодельный Arduino, как у меня, или проще купить готовый Arduino Leonardo, и переразвести плату контроллера под стандартное расположение его выводов.
Плата контроллера.
Плату контроллера системы автополива я сделал двустороннюю, травил популярным методом лазерно-утюжной технологии.Схема главной платы контроллера системы автоматического полива |
Кроме того, на плате расположены 6 транзисторных ключей Q1 - Q6 с обвязкой, к которым и подключаются электромагнитные клапаны. Транзисторы можно брать почти любые (биполярные NPN, или полевые N-канальные), с напряжением от 30 вольт, и силой тока от 1А. Я остановился на BD135. Перед тем стояли полевики - но они почему-то попробивались.
Микросхема сдвигового регистра 74HC595 нужна для того, чтобы, используя только 3 вывода Arduino , управлять всеми 6-ю транзисторами. Соединяется с микроконтроллером через шину SPI.
Разъёмы J14 - J16 пока не используются, в будущем могут быть использованы для подключения каких-либо аналоговых датчиков. С землёй они соединены через транзистор - чтобы можно было программно отключать питание на датчики и таким образом экономить энергию.
Модуль часов реального времени (RTC) DS1307
Модуль я сделал сам, а сейчас - так проще купить готовый в любом магазине. Микросхема часов реального времени нужна для того, чтобы при отключении питания сохранять данные о времени (и продолжать отсчитывать дальше). Для этого она получает питание не только от +5 вольт, как и вся схема - но ещё и имеет отдельную литиевую батарейку. DS1307 отличается весьма малым энергопотреблением - поэтому этой батарейки хватает на несколько лет.
LCD экран от Nokia 5110
Очень распространённый в самоделках экранчик. Продаётся в большинстве онлайн радиомагазинов, стоит дёшево. Имеет разрешение 84 на 48 точек, и к нему есть несколько библиотек для Arduino. Я для экономии выводов подключал к выводам ICSP Arduino Leonardo, и немного переделал стандартную библиотеку - так что если кто будет повторять - нужно брать мою (PCD8544_Leo). Она будет в архиве.
Также нужно учитывать, что разрешённое напряжение для выводов экранчика - 3.3 В, тогда как на выводах Arduino напряжение 5 В. И хотя при экспериментах я соединял их просто так без последствий - топри длительной работе вполне вероятен выход экрана из строя. Поэтому я сделал простенький конвертер уровней по принципу резистивного делителя напряжения, туда же влепил линейный стабилизатор на 3.3В на питание.
Клавиатура
Клавиатура состоит из 5 тактовых кнопок. Для того, чтобы обойтись не пятью, а только тремя выводами Arduino, кнопки хитро соединены с выводами через диоды. А потом уже в программе по сочетанию высоких и низких уровней напряжения на трёх вводах определяется, какая именно кнопка нажата.
Вот видео, где на всё это можно посмотреть:
Контроллер автополива в разобранном виде
Но всё, что я описал - это куча железа без программы для микроконтроллера.
Писал я её долго и упорно, несколько раз переписывал куски кода... Но в итоге работает!
В программе реализована возможность разрешать/отключать автополив и набор воды в бак, устанавливать дни недели, когда осуществлять полив, выбирать общую длительность полива и длительность включения каждого клапана, корректировать время... И вроде без явных багов. По крайней мере, в моё отсутствие полив производится, вода в бак набирается.
В следующем видео можно увидеть меню настроек и простые тесты контроллера.
Контроллер собран. Обзор меню и настроек, тестирование.
Ну, а видео того, как работает система полива непосредственно на моей даче - в моём предыдущем посте.
А по этой ссылке можно скачать схемы и прошивку всего того, что я здесь описал: https://drive.google.com/folderview?id=0B-L3FpybzEsjR2JsYU5BaGlieFU&usp=sharing
А для чего нужны диоды на коллекторах транзисторов?
ОтветитьУдалитьКогда ток через транзистор закрывается, из-за индуктивности соленоида на коллекторе возникает скачок напряжения. Вот это-то избыточное напряжение и отводится через диод.
УдалитьOrganic titanium dioxide in food: The basic recipe
ОтветитьУдалить› food › columbia titanium organic-etire_v › food 2014 ford fusion energi titanium › organic-etire_v Tertium oxide is a highly volatile molecule in food, which acts like a nutrient in The chemical, titanium white wheels Tertium dioxide, 출장마사지 is nano titanium flat iron a chemical compound that gives an excellent
h350d6dvhso052 adult sex toys,horse dildo,anal dildo,sex chair,vibrating dildos,cheap sex toys,women sexy toys,sex toys,vibrators m922j6nuwie772
ОтветитьУдалить