Проекты для умного дома на базе ардуино

Содержание

Загрузить Arduino IDE с официального сайта

Для загрузки программы с официального сайта Arduino.cc вам нужно найти в навигации сайта пункт Software – Downloads. Найдите на странице ссылки на последние версии программы (для Windows, Linux, Mac OS X). Щелкнув на ссылку вы попадете на страницу загрузки, на которой можете выбрать вариант загрузки:

  • С поддержкой проекта (укажите, какую сумму вы готовы пожертвовать)
  • Без поддержки. Просто нажмите на кнопку «Загрузить».

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

Версия 1.8.7

Windows Installer, 1.8.7
Windows – ZIP файл, 1.8.7
MAC OS X, 1.8.7
Linux, 32-разрядная система, 1.8.7
Linux, 64-разрядная система, 1.8.7

Простые проекты Ардуино

Давайте начнем наш обзор с традиционно самых простых, но очень важных проектов, включающих в себя минимальное количество элементов: светодиоды, резисторы и, конечно же, плату ардуино. Все примеры рассчитаны на использование Arduino Uno, но с минимальными изменениями будут работать на любой плате: от Nano и Mega до Pro, Leonardo и даже LilyPad.

Проект с мигающим светодиодом – маячок

Все без исключения учебники и пособия для начинающих по ардуино стартуют с примера мигания светодиодом. Этому есть две причины: такие проекты требуют минимального программирования и их можно запустить даже без сборки электронной схемы – уж что-что, а светодиод есть на любой плате ардуино. Поэтому и мы не станем исключением – давайте начнем с маячка.

Нам понадобится:

  • Плата Ардуино Uno, Nano или Mega со встроенным светодиодом, подключенным к 13 пину.
  • И все.

Что должно получиться в итоге:

Светодиод мигает – включается и выключается через равные промежутки времени (по умолчанию – 1 сек). Скорость включения и выключения можно настраивать.

Схема проекта

Схема проекта довольно проста:  нам нужен только контроллер ардуино со встроенным светодиодом, подсоединенным к пину 13. Именно этим светодиодом мы и будем мигать. Подойдут любые популярные платы: Uno, Nano, Mega и другие.

Подсоединяем Arduino к компьютеру, убеждаемся, что плата ожила и замигала загрузочными огоньками. Во многих платах «мигающий» скетч уже записан в микроконтроллер, поэтому светодиод может начать мигать сразу после включения.

С помощью такого простого проекта маячка вы можете быстро проверить работоспособность платы: подключите ее к компьютеру, залейте скетч и по миганию светодиода сразу станет понятно – работает плата или нет.

Программирование в проекте Ардуино

Если в вашей плате нет загруженного скетча маячка – не беда. Можно легко загрузить уже готовый пример, доступный в среде программирования Ардуино.

Открываем программу Arduino IDE, убеждаемся, что выбран нужный порт.

Проверка порта Ардуино – выбираем порт с максимальным номером

Затем открываем уже готовый скетч Blink – он находится в списке встроенных примеров. Откройте меню Файл, найдите подпункт с примерами, затем Basics и выберите файл Blink.

Открываем пример Blink в Ардуино IDE

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

Кнопки компиляции и загрузки скетча
Информация в Arduino IDE – Загрузка завершена

Ждем немного (внизу можно отследить процесс загрузки) – и все. Плата опять подмигнет несколькими светодиодами, а затем один из светодиодов начнет свой размеренный цикл включений и выключений. Можно вас поздравить с первым загруженным проектом!

Проект маячка со светодиодом и макетной платой

В этом проекте мы создадим мигающий светодиод – подключим его с помощью проводов, резистора и макетной платы к ардуино. Сам скетч и логика работы останутся таким же – светодиод включается и выключается.

Графическое изображение схемы подключения доступно на следующем рисунке:

Другие идеи проектов со светодиодами:

  • Мигалка (мигаем двумя свтодиодами разных цветов)
  • Светофор
  • Светомузыка
  • Сонный маячок
  • Маячок – сигнализация
  • Азбука Морзе

Подробное описание схемы подключения и логики работы программы можно найти в отдельной статье, посвященной проектам со светодиодами.

Проекты Arduino для начинающих

Если посмотреть  на все проекты ардуино, информация о которых доступна в интернете, то можно их разделить на несколько основных групп:

Начальные учебные проекты, не претендующие на какое-то важное практическое использование, но помогающие разобраться в разных аспектах платформы.
Мигающие светодиоды – маячок, мигалка, светофор и другие.
Проекты с датчиками: от простейших аналоговых до цифровых, использующих разнообразные протоколы для обмена данными.
Устройства регистрации и отображения информации.
Машины и устройства с сервоприводами и шаговыми двигателями.
Устройства с использованием различных беспроводных видов связи и GPS.

Проекты для автоматизации жилья – умные дома на Arduino, а также отдельные элементы управления домашней инфраструктурой.
Разнообразные автономные машины и роботы.
Проекты для исследования природы и автоматизации сельского хозяйства
Необычные и креативные – как правило, развлекательные проекты.

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

Как создавать проект на ардуино

Проект Ардуино – это всегда сочетание электронной схемы, некоторых связанных друг с другом аппаратных и механических устройств, системы питания и программного обеспечения, управляющего всем этим хаосом. Поэтому приступая к работе, вы должны твердо понимать, что создавая устройство в одиночестве, вы должны будете стать и программистом, и электронщиком, и конструктором.

Если речь идет не об учебном проекте, то вы обязательно столкнетесь со следующими этапами реализации с такими вот задачами:

  • Придумать что-то, что будет полезно и (или) интересно для окружающих. Даже самый простой проект несет какую-то пользу – как минимум, он помогает изучать новые технологии.
  • Собрать схему, подключить модули друг к другу и к контроллеру.
  • Написать скетч (программу) в специальной среде и загрузить ее в контроллер.
  • Проверить, как все работает вместе, и исправить ошибки.
  • После тестирования – готовиться к созданию готового устройства. Это означает, нужно собрать устройство в каком-то пригодном для эксплуатации корпусе, предусмотреть систему питания, связи с окружающей средой.
  • Если вы собираетесь распространять созданные вами устройства, то придется также заняться дизайном, системой транспортировки, задуматься о безопасности использования необученными пользователями и обучением этих самых пользователей.
  • Если ваше устройство работает, оно протестировано и обладает какими-то преимуществами перед другими решениями, то можно попытаться сделать из вашего инженерного уже бизнес-проект, попробовать привлечь инвестиции.

Каждый из этих этапов создания проекта достоин отдельной статьи

Но мы уделим главное внимание этапам сборки электронных схем (основы электроники) и программирования контроллера

Электронные схемы

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

Программирование

Создание и прошивка скетчей производится в специальной программе  – среде программирования.  Наиболее популярной версией такой среды является Arduino IDE. На нашем сайте вы сможете найти информацию о том, как скачать, установить и настроить эту программу.

Arduino IDE

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

Что такое Arduino IDE

Аббревиатура IDE расшифровывается как Integrated Development Environment, в переводе – интегрированная среда разработки. С помощью этой программы программисты пишут программы, причем делают это гораздо быстрее и удобнее, чем при использовании обычных текстовых редакторов.

В рамках платформы Ардуино программа Arduino IDE делает то же – помогает программистам писать программы. С ее помощью скетч, написанный на языке Arduino, проверяется, превращается в C++, компилируется, загружается в Arduino. Теоретически, вы можете обойтись без этой программы, но реально других вариантов начать работы с Ардуино для новичка практически не существует. Поэтому первое, что вы должны сделать – это найти и установить  себе эту среду программирования. Это совершенно не трудно и абсолютно бесплатно.

Как скачать и установить Arduino IDE

Процедура скачивания и установки абсолютно традиционна. Вы загружаете файл, запускаете установку. На официальном сайте доступны версии c установщиком (exe) и обычных zip архивах. Вы можете найти версии Arduino IDE для всех основных операционных систем.

Процедура установки достаточно проста, вам нужно будет ответить на несколько вопросов. Важным этапом этого процесса является установка драйвера COM-порта. Для большинства «китайских» плат ардуино понадобится установить дополнительные драйвера.

После установки потребуется небольшая настройка среды – об этом мы поговорим в отдельной статье про установку и настройку Ардуино IDE.

Какую версию Ардуино IDE выбрать?

Первая версия среды разработки Ардуино официально появилась в августе 2005 года. С тех пор утекло много воды, программа несколько раз претерпевала революционные изменения. До 2011 года номера версий состояли из одной цифры (последней была 0023 – версия от 09.11.2011). Затем появилась более привычная запись с «минорными» и «мажорными» обновлениями. Так, Arduino 1.0.0 появилась 30.11.2011, а версия 1.0.1 – в мае 2012.

Ключевыми по количеству обновлений и связанных с ними проблем совместимости стали переходы с версии 1.0.7 и 1.5. Многие библиотеки, написанные под «старые версии» программы не могли компилироваться в новых из-за изменений в системных библиотеках и других внутренних механизмах сборки проекта. Особенно сильно это проявилось при переходе на 1.6 версию. Если в вашем проекте есть древние библиотеки, некорректно работающие с современными версиями IDE, вам придется изменять их самому, ждать, пока это сделают авторы или подчиниться обстоятельствам и установить ту версию, с которой будет работать библиотека.

Последней стабильной версией Arduino IDE на момент написания статьи является 1.8.7 (август 2018).

Arduino на русском

Еще один важный вопрос – русификация среды разработки. Давайте сразу разберемся с тем, как перевести Arduino IDE на русский. На самом деле, для этого не нужно искать или скачивать специальные версии. Вы загружаете и устанавливаете обычную версию, достаточно просто выбрать ваш язык в списке доступных языков в соответствующем пункте настроек.

Особенности проектов

Большинство электронщиков предпочитают создавать свои проекты на основе микроконтроллера Аrduino Uno, о которой и мы писали уже несколько раз.

Для начала стоит познакомиться с функционалом микропроцессора Ардуино уно, на котором строится большинство проектов, а также рассмотреть причины выбора данного приспособления. Ниже описаны факторы, по которым начинающему изобретателю стоит остановиться на Аrduino uno:

  1. Довольно простой в использовании интерфейс. Понятно, где какой контакт, и к чему прикреплять соединительные провода.
  2. Чип на плате подключается прямо к USB-порту. Преимущество этой установки заключается в том, что последовательная связь – это очень простой протокол, который проверен временем, а USB делает соединение с современными компьютерами очень удобным.
  3. Легко найти центральную часть микроконтроллера, которая представляет собой чип ATmega328. Он имеет больше аппаратных функций, таких как таймеры, внешние и внутренние прерывания, пины PWM и несколько режимов ожидания.
  4. Устройство с открытым исходным кодом, поэтому большое количество радиолюбителей могут исправить баги и неполадки в программном обеспечении. Это облегчает отладку проектов.
  5. Тактовая частота равна 16 МГц, что достаточно быстро для большинства приложений и не ускоряет работу микроконтроллера.
  6. Очень удобно управлять мощностью внутри него, и она имеет функцию встроенного регулирования напряжения. Также микроконтроллер можно отключить от USB-порта без внешнего источника питания. Можно подключить внешний источник питания до 12 В. Причем микропроцессор сам определит нужное напряжение.
  7. Наличие 13 цифровых контактов и 6 аналоговых контактов. Эти пины позволяют подключать оборудование к плате Arduino uno со стороннего носителя. Контакты используются в качестве ключа для расширения вычислительной способности Arduino uno в реальном мире. Просто подключите свои электронные устройства и датчики к разъемам, которые соответствуют каждому из этих контактов.
  8. Имеется в наличии разъем ICSP для обхода USB-порта и сопряжения с Arduino напрямую в качестве последовательного устройства. Этот порт необходим, чтобы перезагрузить чип, если он поврежден и больше не может использоваться на вашем компьютере.
  9. Наличие 32 КБ флэш-памяти для хранения кода разработчика.
  10. Светодиод на плате подключается к цифровому контакту 13 для быстрой отладки кода и упрощения этого процесса.
  11. Наконец, у него есть кнопка для сброса программы на чипе.

Arduino был создан в 2005 году двумя итальянскими инженерами – Дэвидом Куартиллесом и Массимо Банзи с целью, чтобы ученики научились программировать микроконтроллер Arduino uno и улучшить свои навыки в области электроники и использовать их в реальном мире.

Arduino uno может воспринимать окружающую среду, получая вход от различных датчиков, и способен влиять на окружающую среду, контролируя свет, двигатели и другие исполнительные механизмы. Микроконтроллер запрограммирован с использованием языка программирования Arduino (на основе проводки) и среды разработки Arduino (на основе обработки).

Теперь переходим непосредственно к проектам на Аrduino uno.

Самый простой проект для начинающих

Рассмотрим несколько простых и интересных проектов Ардуино uno, которые под силу сделать даже новичкам в этом деле — система сигнализации.

Мы уже делали урок по этому проекту — Датчик движения с Arduino, HC-SR04 и светодиодом (LED). Вкратце о то, что делается и как.

В этом проекте используется датчик движения для обнаружения движений и излучений высокого тона, а также визуальный дисплей, состоящий из мигающих светодиодных индикаторов. Сам проект познакомит вас с несколькими дополнениями, которые входят в комплект для начинающих Arduino, а также нюансами использования NewPing.

Он является библиотекой Arduino, которая помогает вам контролировать и тестировать ваш датчик расстояния сонара. Хотя это не совсем целая защита дома, она предлагает идеальное решение для защиты небольших помещений, таких как спальни и ванные комнаты.

Для этого проекта вам понадобятся:

  1. Ультразвуковой датчик «пинг» – HC-SR04.
  2. Пьезо-зуммер.
  3. Светодиодная лента.
  4. Автомобильное освещение посредством ленты RGB. В этом руководстве по проекту Arduino вы узнаете, как сделать внутреннее освещение автомобиля RGB, используя плату Arduino uno.

Многим автолюбителям нравится добавлять дополнительные огни или модернизировать внутренние лампочки до светодиодов, однако на платформе Arduino вы можете наслаждаться большим контролем и детализацией, управляя мощными светодиодами и световыми полосками.

Вы можете изменить цвет освещения с помощью устройства Android (телефон или планшет) с помощью приложения «Bluetooth RGB Controller» (Dev Next Prototypes), которое вы можете бесплатно загрузить с Android Play Store. Также вы можете найти схему электронной EasyEDA или заказать свою собственную схему на основе Arduino на печатной плате.

Разработка проекта

На современном рынке представлено множество устройств Arduino, имеющих различную комплектацию. Но универсального решения «на все случаи жизни» не существует. В зависимости от поставленной задачи каждый комплект подбирается в индивидуальном порядке. Чтобы избежать ошибок, требуется разработка проекта.

Какие проекты можно создавать на Arduino?

Ардуино позволяет создавать множество уникальных проектов. Вот лишь некоторые из них:

  • Сборка кубика Рубика (система справляется за 0,887 с);
  • Контроль влажности в подвальном помещении;
  • Создание уникальных картин;
  • Отправка сообщений;
  • Балансирующий робот на двух колесах;
  • Анализатор спектра звука;
  • Лампа оригами с емкостным сенсором;
  • Рука-робот, управляемая с помощью Ардуино;
  • Написание букв в воздухе;
  • Управление фотовспышкой и многое другое.

Как подключить проходной выключатель: одноклавишный, двухклавишный, как обычный, схемы, критерии выбора

Составление проекта для умного дома

Рассмотрим ситуацию, когда необходимо сделать автоматику для дома с одной комнатой.

Такое здание состоит из пяти основных зон — прихожей, крыльца, кухни, санузла, а также комнаты для проживания.

При составлении проекта стоит учесть следующее:

  • КРЫЛЬЦО. Включение света производится в двух случая — приближение хозяина к дому в темное время суток и открытие дверей (когда человек выходит из здания).
  • САНУЗЕЛ. В бойлере предусмотрен выключатель питания, который при достижении определенной температуры выключается. Управление бойлером производится в зависимости от наличия соответствующей автоматики. При входе в помещение должна срабатывать вытяжка, и загорается свет.
  • ПРИХОЖАЯ. Здесь требуется включение света при наступлении темноты (автоматическое), а также система обнаружения движения. Ночью включается лампочка небольшой мощности, что исключает дискомфорт для других жильцов дома.
  • КОМНАТА. Включение света производится вручную, но при необходимости и наличии датчика движения эта манипуляция может происходить автоматически.
  • КУХНЯ. Включение и отключение света на кухне осуществляется в ручном режиме. Допускается автоматическое отключение в случае продолжительного отсутствия перемещений по комнате. Если человек начинает готовить пищу, активируется вытяжка.

Отопительные устройства выполняют задачу поддержания необходимой температуры в помещении. Если в доме отсутствуют люди, нижний предел температуры падает до определенного уровня.

После появления людей в здании этот параметр поднимается до прежнего значения. Рекуперация воздуха осуществляется в случае, когда система обнаружила присутствие владельца. Продолжительность процесса — не более 10 минут в час.

Стоит обратить внимание, что если в доме планируется установка умных розеток, то для управления ими лучше использовать приложения на мобильных устройствах, WIFI или через SMS сообщения. Визуальное программирование для Arduino можно осуществлять с помощью специального приложения FLProg, которое можно скачать с официального сайта https://flprog.ru/

Визуальное программирование для Arduino можно осуществлять с помощью специального приложения FLProg, которое можно скачать с официального сайта https://flprog.ru/.

Простой и интересный проект на Ардуино — подарочная книга с секретом на Ардуино

Необходимые инструменты и материалы для книги с секретом на Ардуино

  • Бумага.
  • Картон.
  • Бархатный картон.
  • Декоративные камни.
  • Черный чай.
  • Ардуино.
  • Сервопривод.
  • 3 светодиода.
  • Акселерометр MPU 6050.
  • 2 геркона.
  • 2 резистора 10 кОм.
  • Резистор 220 Ом.
  • Переключатель.
  • Потенциометр 1 кОм.
  • Батарея 9 В.
  • Провода.
  • Клей.
  • Ножницы.
  • Краска.
  • 3D принтер.
  • Утюг.
  • Паяльник.
  • Клеевой пистолет.

Шаг первый: подготовка листов
Шаг второй: сервопривод
Шаг третий: отсеки
Шаг четвертый: установка сервопривода
Шаг пятый: обложка
Шаг шестой: сборка книги
Шаг седьмой: Ардуино
Шаг восьмой: шахматные фигуры

podarochnaya-kniga-s-sekretom.rar

Первые шаги

Когда вы впервые задумаетесь о том, какие Ардуино нано проекты для начинающих выбрать на старте, первое, что вы должны сделать, это:

  1. Прикупить все соответствующие расходники. Помимо плат и модулей, это также платформы, канифоль и медные пластины, если вы планируете проектировать материнку самостоятельно.
  2. Найти как можно более подробное пособие по вашему проекту и постараться разобраться в том, что там делают, а не просто скопировать. Больше разных интересных проектов и инструкций вы найдете в нашей рубрике Уроки.
  3. Модифицировать ваш проект. Хорошие системы являются масштабируемыми, то есть вы можете добавить к ним какой-то функционал, и они продолжат быть комфортными в работе и управлении кодом.

Что такое Arduino Nano?

Arduino Это уже классика в мире бесплатного оборудования и в мире производителей. С его разработкой и программным обеспечением вы можете создавать множество проектов, предел которых — ваше воображение и ну … конечно, некоторые технические ограничения. Но они позволяют изучать электронику, программирование, а также творить настоящие чудеса.

Даже профессиональные проекты основаны на этих досках для разработки. В случае Arduino Nano, это уменьшенная версия de Arduino UNO. Это сводит к минимуму потребление энергии, а также означает, что для размещения тюка требуется меньше места, что делает его идеальным для проектов, где важен размер.

Это не тарелка Arduino UNO точно в миниатюре, как вы увидите, есть некоторые важные технические отличия. И это не альтернатива LilyPad. Но он разделяет другие характеристики и суть, которые присутствуют во всех проектах Arduino. Конечно, его можно запрограммировать таким же Arduino IDE как и остальные.

технические характеристики

Плата Arduino Nano имеет некоторые технические характеристики, которые вы должны знать, прежде чем начинать с нее, в дополнение к оцените, действительно ли это то, что вам нужно для вашего проекта или не соответствует вашим ожиданиям.

те технические характеристики являются:

  • Это небольшая, гибкая и простая в использовании плата микроконтроллера.
  • Он основан на микроконтроллере Atmel ATmega328p или MCU в версиях 3.x и на ATmega168 в предыдущих версиях. В любом случае он работает на частоте 16 МГц.
  • Память состоит из 16 или 32 КБ флэш-памяти в зависимости от версии (2 КБ используется для загрузчика), с 1 или 2 КБ памяти SRAM и 512 байт или 1 КБ EEPROM в зависимости от MCU.
  • Он имеет напряжение питания 5 В, но входное напряжение может варьироваться от 7 до 12 В.
  • Он имеет 14 цифровых контактов, 8 аналоговых контактов, 2 контакта сброса и 6 контактов питания (Vcc и GND). Из аналоговых и цифровых выводов им назначено несколько дополнительных функций, таких как pinMode () и digitalWrite () и analogRead () для аналогов. В случае аналогов они допускают 10-битное разрешение от 0 до 5 В. На цифровых устройствах 22 могут использоваться как выходы. ШИМ.
  • Он не включает розетку постоянного тока.
  • Он использует стандартный miniUSB для подключения к компьютеру для программирования или питания.
  • Его потребляемая мощность составляет 19 мА.
  • Размер печатной платы 18×45 мм, вес всего 7 грамм.

Распиновка и таблица данных

На этом изображении, любезно предоставленном Arduino, вы можете увидеть распиновка или предрасположенность контактов и соединений, которые вы можете найти на этой плате разработки. Как видите, у Arduino Nano не так много контактов ввода-вывода, как у его сестер, но для большинства проектов их достаточно.

Если вы хотите увидеть более подробную информацию, вы можете получить доступ таблицы данных которые существуют для этой версии Arduino Nano:

  • Технический паспорт в PDF
  • Файлы Eagle
  • Электронная схема Arduino Nano
  • Скачать распиновку в PDF

Отличия от других плат Arduino Mini и Micro

В официальный Arduinos Вы можете найти те версии, о которых мы говорили в этом блоге, такие как UNO, Mega и т. Д. Еще один — это Arduino Nano, который имеет следующие отличия, которые вы видели в предыдущих разделах.

Однако делать краткое изложение наиболее выдающихся, они являются наиболее важными по сравнению с другими официальными пластинами небольшого размера:

  • Он был разработан с той же целью, что и Arduino Mini, только у Nano есть порт miniUSB запрограммировать и подпитать энергией.
  • Su цена он находится между Arduino Mini и Arduino Micro.
  • Остальные характеристики можно увидеть в следующих таблица:
Характеристики

Ардуино Мини

Ардуино Микро

Ардуино Нано

Микроконтроллер

Atmega328P

ATmega32U4

ATmega168 / ATmega328P

Рабочее напряжение

5 V

5 V

5 V

Напряжение питания

7 9-V

7 12-V

7 9-V

Рабочая частота

16 МГц

16 МГц

16 МГц

Аналоговые входы / выходы

8/0

12/0

8/0

Цифровые входы / выходы

14/14

20/20

14/14

ШИМ

6

7

6

EEPROM (кБ)

1

1

0.512 / 0

SRAM (кБ)

2

2.5

1 / 2

Flash (КБ)

32

32

16 / 32

Основной порт питания и программирования

Через карту FTDI или кабель

MicroUSB

MiniUSB

UART

1

1

1

размеры 3 х 1.8 см 4.8 х 1.77 см 4.5 х 1.8 см

совместимость

Плата Arduino Nano — это совместим со всеми видами электронных компонентов как и остальные тарелки. Нет никаких ограничений, кроме поддерживаемых максимальных ограничений по току и напряжению. Но в противном случае вы можете использовать любой компонент, который хотите все видели в HwLibre.

Особенности реализации проектов

Стоит понимать, что в любой готовой системе имеются свои особенности, которые стоит учитывать при решении задачи. В случае с Ардуино есть такие нюансы, как:

  1. Особенности в подключении к платам. Различные распиновки вариаций модуля, а также датчиков и вспомогательных элементов вынуждают проектировать плату индивидуально под каждый проект.
  2. Язык программирования. Программная часть пишется не на чистом СИ, а на модернизированном языке, с помощью уже готовых библиотек функций, что значительно усложняет контроль памяти и распределения информации. Не говоря о том, что реализация некоторых алгоритмов становится просто невозможной.

Проектирование умного дома Arduino

Умного дома «на все случаи жизни» не существует. Поэтому, его проектирование начинается с определения поставленных задач, выбора и размещения основного узла Arduino, а затем и остальных элементов. На конечном этапе связывается и дорабатывается функционал, с помощью программирования.

На базе Ардуино можно создать множество проектов, а затем скомпоновать их в единую систему. Среди таких:

  1. Контроль влажности в цоколе.
  2. Автоматическое включение конвекторов, при падении температуры в доме ниже допустимой в двух возможных вариантах – при наличии и отсутствии человека в комнате.
  3. Включение освещения на улице в сумерки.
  4. Отправка сообщений об изменениях каждого детектируемого состояния.

В качестве примера можно рассмотреть проектирование автоматики одноэтажного дома с двумя комнатами, подвальным помещением под хранение овощей. В комплекс входит семь зон: прихожая, душевая комната, кухня, крыльцо, спальня, столовая, подвал.

При составлении пошагового плана проектирования учитываем следующее:

  1. Крыльцо. При приближении владельца к дому ночью, включится освещение. Также следует учесть обратное – выходя из дома ночью, тоже надо включать освещение.
  2. Прихожая. При детектировании движения и в сумерки включать свет. В темное время необходимо, чтобы загорался приглушенный свет лампочки.
  3. Подвал на улице. При приближении хозяина, в темное время суток, должна загораться лампа возле дверцы подвала. Открывая дверь, загорается свет внутри, и выключается в том случае, когда человек покидает здание. При выходе, включается освещение на крыльце, а по мере отхождения от подвального помещения, выключается возле дверцы. В подвале установлен контроль влажности и при достижении критической температуры, включаются несколько вентиляторов для улучшения циркуляции воздуха.
  4. Душевая комната. В ней установлен бойлер. Если человек присутствует в доме, бойлер включает нагрев воды. Автоматика выключается, когда максимальная температура нагрева достигнута. При входе в туалет, включается вытяжка и свет.
  5. Кухня. Включение основного освещения ручное. При длительном отсутствии хозяина дома на кухне, свет выключается автоматически. Во время приготовления еды автоматически включается вытяжка.
  6. Столовая. Управление светом происходит по аналогии с кухней. Присутствуя на кухне, есть возможность дать голосовую команду ассистенту умной колонки, чтобы тот запустил музыку.
  7. Спальная комната. Включение освещение происходит вручную. Но есть автоматическое выключение, если в комнате долгое время отсутствует человек. Дополнительно, нужно выключать освещение по хлопку.

По всему дому расставлены конвекторы. Необходим автоматический контроль поддерживаемой температуры в доме в двух режимах: когда человек есть в доме и вовремя его отсутствия. В первом варианте, температура должна опускаться не ниже 20 градусов и подниматься не выше 22. Во втором, температура дома должна опускаться не ниже 12 градусов.

Проект готов, осталось заняться его реализацией.

Плюсы и минусы системы

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

Преимущества умного дома Arduino:

  1. Использование компонентов других производителей с контроллером Arduino.
  2. Создание собственных программ умного дома, так как исходных код проекта открыт.
  3. Язык программирования простой, мануалов в сети для него много, разобраться сможет даже начинающий.
  4. Простой проект делается за один час практики с помощью дефолтных библиотек, разработанных для: считывания сигналов кнопок, вывода информации на ЖК-дисплеи или семи сегментные индикаторы и так далее.
  5. Запитать, посылать команды и сообщения, программировать, или перенести готовые программные решения в Arduino, можно с помощью USB-кабеля.

Недостатки:

  1. Среда разработки Arduino IDE – это построенная на Java ппрограма, в которую входит: редактор кода, компилятор, передача прошивки в плату. По сравнению с современными решениями на 2019 год – это худшая среда разработки (в том виде, в котором она подается). Даже когда вы перейдете в другую среду разработки, IDE вам придется оставить для прошивки.
  2. Малое количество флэш-памяти для создания программ.
  3. Загрузчик нужно прошивать для каждого шилда микроконтроллера, чтобы закончить проект. Его размер – 2 Кб.
  4. Пустой проект занимает 466 байт на Arduino UNO и 666 байт в постоянной памяти платы Mega.
  5. Низкая частота процессора.

Правильный выбор Arduino для вашего проекта

Теперь, когда мы рассмотрели некоторые подробности о каждой плате, можно определить оптимальное использование каждой платы. Хотя UNO является самой популярной платой, также все остальные доски имеют отличную поддержку через онлайн-форумы благодаря общей архитектуре и использованию общего языка и IDE. Это означает, что вы вряд ли попадёте в специфичные для устройства ловушки, которые могут помешать работе части кода из-за конфигурации оборудования или присущих ошибок. Код Ардуино можно легко перенести на другую плату без каких-либо изменений. Это выгодно для пользователя, желающего поменять плату на определенной стадии проекта. Решающий фактор выбора платы, сводится к двум основным вещам аппаратному обеспечению и стоимости. Если аспект стоимости каждого Arduino очевиден, предпочтительнее вариант с наименьшей стоимостью. То аппаратное обеспечение быть может не так легко определить. При рассмотрении оборудования следует учитывать следующее:

  • Физические размеры
  • Мощность процессора
  • Размер памяти
  • Возможности ввода / вывода
  • Бортовая периферия
  • Вес
  • Связь

Что касается физических размеров, Arduino Nano является самым маленьким и очень портативным устройством. UNO — это доска для разработки среднего размера, но она всё ещё довольно мала. Её можно использовать во многих проектах, включая устройства с дистанционным управлением, такие как радиоуправляемые автомобили и лодки. Mega и Due — намного больше, что затрудняет их использование в проектах с ограниченным пространством. Если проект требует высокой вычислительной мощности, Due выходит на первое место с мощным ядром ARM и большим RAM / ROM. Несмотря на то что Mega — это большой Arduino с большим количеством пинов, скорость его процессора остаётся той же, что и в UNO и Nano (то же семейство Mega). Поэтому использование Mega не даёт никаких преимуществ в скорости. UNO и Nano используют один и тот же процессор. С точки зрения аппаратного и периферийного оборудования UNO и Nano идентичны. Если проект требует много пинов, Due и Mega являются очевидным выбором. Проекту, которому не требуется сильного процессора, но нужно большое количество контактов подключения, подойдёт Mega.