Как сделать умный дом на arduino своими руками
Содержание:
- Raspberry Pi Arduino Intelligent Tea Sensor
- Установка Arduino IDE
- Radio Control (RC) Arduino Projects
- Начало работы
- ШИМ Arduino
- Самые простые проекты для начинающих
- Программирование Ардуино
- Проекты Arduino для начинающих
- Tinkercad для ардуино
- All Arduino Projects List
- Lightweight Arduino GSM Mobile Phone
- Модули и решения «умного дома» на Ардуино
Raspberry Pi Arduino Intelligent Tea Sensor
Ref: Allaboutcircuits
Do you ever find yourself opening up a teabag/coffee container with no tea or coffee beans? This is one of the saddest moments that one could experience so we’ve got a solution to solve it! With this project, we will be building an intelligent tea bag container sensor to estimate the number of tea bags left which will inform us if we start to run out.
What do you need? (Other than Arduino UNO)
- Raspberry Pi 4 Computer Model B 4 GB
- Grove – ADC for Load Cell (HX711)
- Any Load cell between 3KG and 15KG
- Reed Switch
- Magnet
- 10KΩ resistor
- Speaker
- 3.5mm Cable for Speaker
- USB B Cable for connection between Raspberry Pi and Arduino
Interested? You can find the full tutorial on All About Circuits!
Установка Arduino IDE
Прежде чем начать работу с Arduino необходимо установить среду программирования Arduino IDE на ваш компьютер/ноутбук. Все описанные далее шаги по установке данной программной среды будут ориентированы на операционную систему Windows, для остальных операционных систем последовательность действий будет примерно такой же. Если возникнут проблемы с другими системами, то помощь можно найти по следующим ссылкам – для пользователей Mac и пользователей Linux. Перед началом установки Arduino IDE убедитесь что вы обладаете правами администратора на вашем компьютере – это облегчит установку.
Шаг 1. Загрузите Arduino IDE с официального сайта — https://www.arduino.cc/download_handler.php.
Шаг 2. Запустите скачанный exe файл.
Шаг 3. В открывшемся окне кликните на “I Agree” чтобы согласиться с условиями лицензии Arduino.
Шаг 4. В окне опций установки отметьте все галочки (см. рисунок).
Шаг 5. На этом шаге необходимо выбрать место установки Arduino IDE. По умолчанию стоит путь установки в Program files на диске C – крайне рекомендуется оставить именно этот путь.
Шаг 6. На этом шаге вы можете наблюдать как Arduino IDE устанавливается на ваш компьютер (см. рисунок). После того как установка будет завершена нажмите кнопку “completed”.
Шаг 7. После завершения установки запустите на выполнение файл Arduino.exe. Откроется окно IDE с минимумом кода внутри него – см. рисунок.
Radio Control (RC) Arduino Projects
DIY Arduino based RC Transmitter
Many Arduino projects that I make require wireless control and that’s why I build this Arduino based wireless radio controller. With this RC transmitter I can wirelessly control pretty much with a range up to 700m in open space. It features 14 channels, 6 of which are analog and 8 digital inputs.
The brain of this Arduino project is an Arduino Pro Mini board which is the smallest Arduino board, the radio communication is based on the NRF24L01 module, it has 2 joysticks, 2 potentiometers and 4 momentary push buttons and also an accelerometer and gyro module which can be used for controlling things with just moving around or tilting the controller. I mounted all electronic components on a custom design PCB and made a cover out of transparent acrylic.
Difficulty: Intermediate
DIY Arduino RC Receiver for RC Models and Arduino Projects
This is a follow up project of the above one. Just like DIY RC Transmitter, this DIY Arduino RC Receiver can be used for many application. We can easily pair the two projects together and control anything wirelessly. Among others, I made an example of controlling a commercial RC car model using these DIY transmitter and receiver.
The custom PCB that I made uses the same NRF24L01 module for the radio communication. The controller is an Arduino Pro Mini and it features input/ output 9 channels.
Difficulty: Intermediate
DIY Arduino based RC Hovercraft
The following Arduino project is a great example of utilizing the DIY RC transmitter from above. It’s a 3D printed hovercraft which I entirely designed on my own, and of course, the 3D printing files are available for downloading. The hovercraft uses two brushless motors, one for creating an air cushion for the lift, and the other for generating thrust or moving forward.
For the wireless control we are using the NRF24L01 module, which accepts the data coming from the RC transmitter. Then using the Arduino and two ESCs (Electronic Speed Controler) we control the BLDC motors speed. On the back side of the hovercraft there is also a servo for controlling the rudders, or for controlling the steering. I must say that driving this DIY hovercraft is so fun.
Difficulty: Advanced
Arduino RC Airplane
Anyone who had a chance of playing around with some RC airplanes knows how cool and fun it is. It’s even cooler and more satisfying if you build the RC airplane on your own. The following project steps the satisfaction up even further, because here I will show you how to build your own RC airplane which is 100% DIY build. Also, we have a 100% DIY radio control system based on the Arduino.
The airplane is entirely made out of Styrofoam and what’s cooler, the shapes are made with the help of my DIY Arduino CNC Foam Cutting Machine, a project already mention above. The radio communication is based on the NRF24L01 transceiver modules. For that purpose, I used my DIY Arduino RC Transmitter and DIY Arduino RC Receiver.
Difficulty: Advanced
Arduino Robot Car Wireless Control
This Arduino project is an extension to the previous one, and here we will learn how to wirelessly control the Arduino robot car.
You can choose one of the three different methods of wireless control explained in this project, or that’s the HC-05 Blueooth module, the NRF24L01 transceiver module and the HC-12 long range wireless module. Additionally you can learn how to make your own Android app for controlling the Arduino robot car.
Difficulty: Intermediate
Arduino Wireless Weather Station
This Arduino project idea is rather practical because it features indoor and outdoor temperature and humidity measurement. It is based on the DHT11/ DHT22 sensor, the NRF24L01 transceiver module for the wireless communication and the DS3231 RTC. For the display we can either use 16×2 character LCD or a 3.2 inches TFT touch screen.
The outdoor unit can be powered with batteries and the indoor unit with an AC adapter. The outdoor unit measures the temperature and the humidity and sends the values to the main indoor unit. Here these values are printed on the LCD along with the data and time values from the DS3231 real time clock module.
Additionally, we can use SD Card module for storing the data onto Micro SD card.
Difficulty: Intermediate
Начало работы
Как только необходимое оборудование подготовлено, а проект разработан, можно приступать к выполнению поставленной задачи.
Этапы
При организации системы «Умный дом» на базе Ардуино, стоит действовать по следующему алгоритму:
- Инсталляция программного кода;
- Конфигурация приложения под применяемое устройство;
- Переадресация портов (для роутера);
- Проведение тестов;
- Внесение правок и так далее.
В Сети имеется весь необходимый софт на применяемое оборудование — его достаточно скачать с официального сайта и установить (ссылку смотрите выше).
Приложение позволяет увидеть информацию о датчиках. Если это требуется, настройки IP-адрес могут быть изменены.
Последовательность действий при подключении к компьютеру
Чтобы начать работать с Ардуино в Windows, сделайте следующие шаги:
- Подготовьте необходимое оборудование — USB-кабель и Arduino.
- Скачайте программу на странице arduino.cc/en/Main/Software.
- Подсоедините плату с помощью USB-кабеля. Проследите, чтобы загорелся светодиод PWR.
- Поставьте необходимый набор драйверов для работы с Ардуино. На этом этапе стоит запустить установку драйвера и дождаться завершения процесса. После жмите на кнопку «Пуск» и перейдите в панель управления. Там откройте вкладку «Система и безопасность» и выберите раздел «Система». После открытия окна выберите «Диспетчер устройств», жмите на название Ардуино и с помощью правой кнопки мышки задайте команду обновления драйвера. Найдите строчку «Browse my computer for Driver software!», кликните по ней и выберите соответствующий драйвер для вашего типа платы — ArduinoUNO.inf (находится в папке с драйверами). Это может быть UNO, Mega 2560 или другая.
- Запустите среду разработки Ардуино, для чего дважды кликните на значок с приложением.
- Откройте готовый пример (File — Examples — 1.Basics — Blink).
- Выберите плату. Для этого перейдите в секцию Tools, а дальше в Board Menu.
- Установите последовательный порт (его можно найти путем отключения и подключения кабеля).
- Скачайте скетч в Ардуино. Кликните на «Upload» и дождитесь мигания светодиодов TX и RX на плате. В завершение система показывает, что загрузка прошла успешно. Через несколько секунд после завершения работы должен загореться светодиод 13 L (он будет мигать оранжевым). Если это так, система готова к выполнению задач.
Работа с роутером
Для полноценной работы «Умного дома» важно правильно обращаться с роутером. Здесь требуется выполнить следующие действия — открыть конфигурацию, указать адрес Arduino IP, к примеру, 192.168.10.101 и открыть 80-й порт
После требуется присвоить адресу доменное имя и перейти к процессу тестирования проекта. Учтите, что для такой системы запрещено применение открытого IP-адреса, ведь в этом случае высок риск взлома через Сеть.
Умный дом на базе Raspberry Pi 3 своими руками, пошаговая инструкция
ШИМ Arduino
Широтно-импульсная модуляция (ШИМ) — это процесс управления напряжением за счет скважности сигнала. То есть используя ШИМ мы можем плавно управлять нагрузкой
Например можно плавно изменять яркость светодиода, но это изменение яркости получается не за счет уменьшения напряжения, а за счет увеличения интервалов низкого сигнала. Принцип действия ШИМ показан на этой схеме:
ШИМ ардуино
Когда мы подаем ШИМ на светодиод, то он начинает быстро зажигаться и гаснуть. Человеческий глаз не способен увидеть это, так как частота слишком высока. Но при съемке на видео вы скорее всего увидите моменты когда светодиод не горит. Это случится при условии что частота кадров камеры не будет кратна частоте ШИМ.
В Arduino есть встроенный широтно-импульсный модулятор. Использовать ШИМ можно только на тех пинах, которые поддерживаются микроконтроллером. Например Arduino Uno и Nano имеют по 6 ШИМ выводов: это пины D3, D5, D6, D9, D10 и D11. В других платах пины могут отличаться. Вы можете найти описание интересующей вас платы в этом разделе.
Для использования ШИМ в Arduino есть функция analogWrite(). Она принимает в качестве аргументов номер пина и значение ШИМ от 0 до 255. 0 — это 0% заполнения высоким сигналом, а 255 это 100%. Давайте для примера напишем простой скетч. Сделаем так, что бы светодиод плавно загорался, ждал одну секунду и так же плавно угасал и так до бесконечности. Вот пример использования этой функции:
Самые простые проекты для начинающих
Приведем примеры нескольких простых самоделок на Ардуино, которые может сделать даже неопытный в конструировании электронных приборов человек:
- Arduino RFID дверной замок. RFID обозначает радиочастотную идентификацию. Каждая RFID-карта имеет уникальный идентификатор, встроенный в нее, и считыватель RFID используется для считывания RFID-карты no. EM-18 RFID-считыватель работает на частоте 125 кГц, поставляется со встроенной антенной и может питаться от источника питания 5 В. Он обеспечивает последовательный выход вместе с выходом Weigand. Диапазон составляет около 8-12 см. Параметры последовательной связи – 9600 бит/с, 8 бит данных, 1 стоповый бит. Эта беспроводная RF-идентификация используется во многих системах.
- Знаменитый Аrduino проект – взаимодействующий датчик наклона с микроконтроллером. Переключатель датчика наклона представляет собой электронное устройство, которое определяет ориентацию объекта и дает свой выход, высокий или низкий, соответственно. В нем есть ртутный шар, который перемещается. Таким образом, датчик наклона может включать или выключать схему, в зависимости от ориентации. В этом проекте мы взаимодействуем с датчиком Mercury/Tilt с Arduino UNO. Мы контролируем светодиод и зуммер в соответствии с выходом датчика наклона. Всякий раз, когда мы наклоняем датчик, будильник включается.
- На Ардуино делается элементарный проект – цифровой вольтметр. С простым знанием цепи Arduino и Voltage Divider Circuit мы можем превратить Arduino в цифровой вольтметр и измерить входное напряжение с помощью Arduino и ЖК-дисплея 16×2. Arduino имеет несколько аналоговых входных контактов, которые соединяются с аналого-цифровым преобразователем (АЦП) внутри Arduino. Arduino ADC – это десятибитовый преобразователь. Это означает, что выходное значение будет находиться в диапазоне от 0 до 1023. Мы получим это значение, используя функцию analogRead. Если вы знаете опорное напряжение, вы можете легко рассчитать текущее напряжение на аналоговом входе. Мы можем использовать схему делителя напряжения для расчета входного напряжения.
Программирование Ардуино
Язык программирования устройств Ардуино основан на C/C++. Он прост в освоении, и на данный момент Arduino — это, пожалуй, самый удобный способ программирования устройств на микроконтроллерах.
Базовые и полезные знания, необходимые для успешного программирования под платформу Arduino:
|
|
Справочник языка Ардуино
Язык Arduino можно разделить на три раздела:
Операторы
Управляющие операторы
Синтаксис
Арифметические операторы
Операторы сравнения
Логические операторы
Унарные операторы
|
ДанныеКонстанты
Типы данных
Преобразование типов данных
Область видимости переменных и квалификаторы
|
ФункцииЦифровой ввод/вывод
Аналоговый ввод/вывод
Дополнительные фунции ввода/вывода
Работа со временем
Математические функции
Тригонометрические функции
Генераторы случайных значений
Внешние прерывания
Функции передачи данныхSerial |
Библиотеки Arduino
Servo — библиотека управления сервоприводами.EEPROM — чтение и запись энергонезависимой памяти микроконтроллера.SPI — библиотека, реализующая передачу данных через интерфейс SPI.Stepper — библиотека управления шаговыми двигателями.
Проекты Arduino для начинающих
Если посмотреть на все проекты ардуино, информация о которых доступна в интернете, то можно их разделить на несколько основных групп:
Начальные учебные проекты, не претендующие на какое-то важное практическое использование, но помогающие разобраться в разных аспектах платформы
- Мигающие светодиоды – маячок, мигалка, светофор и другие.
- Проекты с датчиками: от простейших аналоговых до цифровых, использующих разнообразные протоколы для обмена данными.
- Устройства регистрации и отображения информации.
- Машины и устройства с сервоприводами и шаговыми двигателями.
- Устройства с использованием различных беспроводных видов связи и GPS.
Проекты для автоматизации жилья – умные дома на Arduino, а также отдельные элементы управления домашней инфраструктурой.
Разнообразные автономные машины и роботы.
Проекты для исследования природы и автоматизации сельского хозяйства
Необычные и креативные – как правило, развлекательные проекты.
По каждой из этих групп можно найти множество самых разнообразных материалов в книгах и на сайтах. В этой статье мы начнем знакомство с описанием наиболее простых проектов, с которых рекомендуется стартовать начинающим.
Как создавать проект на ардуино
Проект Ардуино – это всегда сочетание электронной схемы, некоторых связанных друг с другом аппаратных и механических устройств, системы питания и программного обеспечения, управляющего всем этим хаосом. Поэтому приступая к работе, вы должны твердо понимать, что создавая устройство в одиночестве, вы должны будете стать и программистом, и электронщиком, и конструктором.
Если речь идет не об учебном проекте, то вы обязательно столкнетесь со следующими этапами реализации с такими вот задачами:
- Придумать что-то, что будет полезно и (или) интересно для окружающих. Даже самый простой проект несет какую-то пользу – как минимум, он помогает изучать новые технологии.
- Собрать схему, подключить модули друг к другу и к контроллеру.
- Написать скетч (программу) в специальной среде и загрузить ее в контроллер.
- Проверить, как все работает вместе, и исправить ошибки.
- После тестирования – готовиться к созданию готового устройства. Это означает, нужно собрать устройство в каком-то пригодном для эксплуатации корпусе, предусмотреть систему питания, связи с окружающей средой.
- Если вы собираетесь распространять созданные вами устройства, то придется также заняться дизайном, системой транспортировки, задуматься о безопасности использования необученными пользователями и обучением этих самых пользователей.
- Если ваше устройство работает, оно протестировано и обладает какими-то преимуществами перед другими решениями, то можно попытаться сделать из вашего инженерного уже бизнес-проект, попробовать привлечь инвестиции.
Каждый из этих этапов создания проекта достоин отдельной статьи
Но мы уделим главное внимание этапам сборки электронных схем (основы электроники) и программирования контроллера
Электронные схемы
Электронные схемы обычно собираются с применением макетных плат, скрепляющих элементы друг с другом без пайки и скрутки. О том, как работают модули и схемы подключения можно узнать на нашем сайте. Обычно в описании проекта указаны способы монтажа деталей. Но для большинства популярных модулей есть уже десятки готовых схем и примеров в интернете.
Программирование
Создание и прошивка скетчей производится в специальной программе – среде программирования. Наиболее популярной версией такой среды является Arduino IDE. На нашем сайте вы сможете найти информацию о том, как скачать, установить и настроить эту программу.
Tinkercad для ардуино
Тинкеркад (Tinkercad Circuits Arduino) – бесплатный, удивительно простой и одновременно мощный эмулятор Arduino, с которого можно начинать обучение электронике и робототехнике. Он предоставляет очень удобную среду для написания своих проектов. Не нужно ничего покупать, ничего качать – все доступно онлайн. Единственное, что от вас потребуется – зарегистрироваться.
Что такое Tinkercad?
Tinkercad – это онлайн сервис, который сейчас принадлежит мастодонту мира CAD-систем – компании Autodesk. Тинкеркад уже давно известен многим как простая и бесплатная среда для обучения 3D-моделированию. С ее помощью можно достаточно легко создавать свои модели и отправлять их на 3D-печать. Единственным ограничением для русскоязычного сегмента интернета долгое время являлось отсутствие русскоязычного интерфейса, сейчас эта ситуация исправляется.
Совсем недавно Тинкеркад получил возможность создания электронных схем и подключения их к симулятору виртуальной платы ардуино. Эти крайне важные и мощные инструменты способны существенно облегчить начинающим разработчикам Arduino процессы обучения, проектирования и программирования новых схем.
История создания
Tinkercad был создан в 2011 году, его авторы – Кай Бекман (Kai Backman) и Микко Мононен (Mikko Mononen). Продукт изначально позиционировался как первая Web-платформа для 3D-проектирования, в которой пользователи могли делиться друг с другом результатами. В 2013 году сервис был куплен компанией Autodesk и дополнила семейство продуктов 123D. За все это время в рамках сервиса пользователями было создано и опубликовано более 4 млн. проектов (3D-моделей).
В июне 2017 г. Autodesk решил перенести часть функционала другого своего сервиса Electroinics Lab Circuits.io, после чего Tinkercad получил крайне важные и мощные инструменты, способные существенно облегчить начинающим разработчикам Arduino процессы обучения, проектирования и программирования новых схем. Если вы уже пользовались Circuits.io, то имейте в виду, что все старые проекты Circuits.io могут быть экспортированы в Tinkercad без каких-либо проблем (о сервисе Circuits.io от Autodesk Electroinics Lab мы постараемся подробно рассказать в одной из следующих статей).
Возможности симулятора Tinkercad для разработчика Arduino
Список основного функционала и полезных фич Tinkercad Circuits:
- Онлайн платформа, для работы не нужно ничего кроме браузера и устойчивого интернета.
- Удобный графический редактор для визуального построения электронных схем.
- Предустановленный набор моделей большинства популярных электронных компонентов, отсортированный по типам компонентов.
- Симулятор электронных схем, с помощью которого можно подключить созданное виртуальное устройство к виртуальному источнику питания и проследить, как оно будет работать.
- Симуляторы датчиков и инструментов внешнего воздействия. Вы можете менять показания датчиков, следя за тем, как на них реагирует система.
- Встроенный редактор Arduino с монитором порта и возможностью пошаговой отладки.
- Готовые для развертывания проекты Arduino со схемами и кодом.
- Визуальный редактор кода Arduio.
- Возможность интеграции с остальной функциональностью Tinkercad и быстрого создания для вашего устройства корпуса и других конструктивных элементов – отрисованная модель может быть сразу же сброшена на 3D-принтер.
- Встроенные учебники и огромное сообщество с коллекцией готовых проектов.
Звучит фантастично, не правда ли? Не нужно скачивать Arduino IDE, не нужно искать и скачивать популярные библиотеки и скетчи, не нужно собирать схему и подключать плату – все, что нам нужно, находится сразу на одной странице. И, самое главное – это все действительно работает! Давайте уже перейдем от слов к делу и приступим к практическому знакомству.
All Arduino Projects List
- Automatic Hydroponic Plant Grow Pot
- Gesture Control Bluetooth Speaker
- Rain Sensing Hands Free Umbrella Bag
- LIDAR Micro Done With Proximity Sensing
- IOT Syringe Infusion Pump
- Programmable Robotic Arm Using Arduino
- IOT Virtual Doctor Robot
- COVID-19 Vaccine Cold Storage Box
- Arduino Alcohol Sense Engine Lock
- Arduino Covid Disinfection Box
- Arduino Multi Player Air Hockey Table
- Dry Handwashing Machine By Fog Disinfection To Save Water
- IOT Covid Patient Health Monitor in Quarantine
- Auto Indoor Hydroponic Fodder Grow Chamber
- DIY Oxygen Concentrator Generator For Covid 19
- DIY Ventilator using Arduino For Covid Pandemic
- Auto Temperature Detector for Entrance For Covid Safety
- Solar Powered Water Trash Collector
- Multi-purpose Sea Surveillance + Search & Rescue RC Boat
- Arduino PID based DC Motor Position Control System
- IOT based Intelligent Gas Leakage Detector Using Arduino
- Smart Shopping Trolley with Automated Billing using Arduino
- Arduino based Snake Robot Controlled using Android Application
- Quadriplegics Wheelchair Control by Head Motion using Accelerometer
- Health Monitoring System using 7-Segment Display & Atmega Microcontroller
- Smart Charger Monitoring System using Arduino
- IOT based Smart Agriculture Monitoring System Project
- Advanced Automatic Self-Car Parking using Arduino Project
- Arduino Based Autonomous Fire Fighting Robot
- Arduino Ultrasonic Sonar/Radar Monitor Project
- IOT Circuit Breaker Project
- Third Eye For Blind Ultrasonic Vibrator Glove
- Smart E Glasses For Voltage Measurement
- IOT Industry Protection System Arduino
- Automatic Sketching Machine Project
- Smart Dustbin With IOT Notifications
- Womens Safety Device With GPS Tracking & Alerts
- Sun Tracking Solar Panel Using Arduino
- Arduino Based System To Measure Solar Power
- Rotating Solar Panel Using Arduino
- IOT Based Fire Department Alerting System
- IOT Solar Power Monitoring System
- Programmable Energy Meter With Bill Estimation
- Advanced Footstep Power Generation System
- Coin Based Water Dispenser System
- Fingerprint Based Bank Locker System
- IOT Irrigation Monitoring & Controller System
- Fingerprint Vehicle Starter Project
- Rough Terrain Beetle Robot
- Zigbee Based Secure Wireless Communication Using AES
- Heart Attack Detection By Heart Beat Sensing
- Joystick Controlled Steering Mechanism Vehicle
- Fingerprint Bank Locker
- Fire & Gas Accident Avoider System
- Solar UPS Project
- GPS Vehicle Tracking & Theft Detection
- Automated Car Parking With Empty Slot Detection
- Vehicle Movement Street Light With Light Sensing Atmega
- Wireless Patient Health Monitoring
- Smart Solar Grass Cutter With Lawn Coverage
- High Performance Hovercraft With Power Turning
- Alcohol Sensing Alert with Engine Locking Project
- Smart Wireless Battery Charging With Charge Monitor Project
- Hand Motion Controlled Robotic Arm
- Hand Motion Controlled Robotic Vehicle
- Gsm Based Weather Reporting (Temperature/Light/Humidity)
- Prepaid Energy Meter With Theft Detection
- IOT Garbage Monitoring System
- GSM Patient Health Monitoring
- IOT Electronic Door Opener
- Soldier Health & Position Tracking System
- IOT Liquid Level Monitoring System
- Anti Drowning System With Remote Alert
- Hovercraft Controlled By Android
- Fully Automated Solar Grass Cutter
- Traffic Density Control With Android Override Using Avr
- GSM based Industry Protection System
- CNG/LPG Gas Leakage Accident Prevention System
- Accident Identification and alerting project
- Fingerprint Authenticated Device Switcher
- Fingerprint Based Exam Hall Authentication
- Mobile Charging On Coin Insertion
- Rain Sensing Automatic Car Wiper
- Remote Stepper Motor Controller System
- RTC Based Pump Switcher
- Secure Fingerprint Bank Locker With Image Capture
- Smart Room Temperature Controller Atmega
- Automatic Unauthorized Parking Detector With SMS Notification To Owner
- Ultrasonic Blind Walking Stick
- Alcohol Sensing Display With Alarm Project
- CNG/LPG Gas Accident Prevention With Gsm Alert
- Prepaid Electricity Billing Meter
- IOT Weather Reporting System
- IOT Air & Sound Pollution Monitoring System
- Energy Meter Monitoring Over IOT
- IOT Based Person/Wheelchair Fall Detection
- IOT Patient Health Monitoring Project
- IOT Heart Attack Detection & Heart Rate Monitor
- IOT Based Toll Booth Manager System
Lightweight Arduino GSM Mobile Phone
Ref: Avishek
Feel like your mobile phone is too heavy for your liking or too costly? Why not try making one yourself that is lightweight and capable of national and international features!
This Arduino mobile phone is able to make calls, receive calls and also send and receive SMS as well. It uses a GSM module to connect to the mobile network and Nextion display to visualize GUI interfaces.
What do you need? (Other than Arduino UNO)
- GPRS Shield V3.0
- Nextion Enhanced NX8048P070-011R – Generic 7.0” HMI 800*480 Touch Display for Arduino Raspberry Pi
- SIM Card
- Arduino IDE software
- Nextion Edition software
- Paint.net Software
Interested? You can find the full tutorial by Avishek at Hackster.io!
Модули и решения «умного дома» на Ардуино
Основным элементом умного дома является центральная плата микроконтроллера. Две и более соединенных между собой плат, отвечают за взаимодействие всех элементов системы.
Существует три основных микроконтроллера в системе:
Arduino UNO – средних размеров плата с собственным процессором и памятью. Основа — микроконтроллер ATmega328. В наличии 14 цифровых входов/выходов (6 из них можно использовать как ШИМ выводы), 6 аналоговых входов, кварцевый резонатор 16 МГц, USB-порт (на некоторых платах USB-B), разъем для внутрисхемного программирования, кнопка RESET. Флэш-память – 32 Кб, оперативная память (SRAM) – 2 Кб, энергонезависимая память (EEPROM) – 1 Кб.
Arduino UNO
Arduino NANO – плата минимальных габаритов с микроконтроллером ATmega328. Отличие от UNO – компактность, за счет используемого типа контактных площадок – так называемого «гребня из ножек».
Arduino Nano
Arduino MEGA – больших размеров плата с микроконтроллером ATMega 2560. Тактовая частота 16 МГц (как и в UNO), цифровых пинов 54 вместо 14, а аналоговых 16, вместо 6. Флэш-память – 256 Кб, SRAM – 8 Кб, EEPROM – 4.
Arduino Mega
Arduino UNO – самая распространённая плата, так как с ней проще работать в плане монтажных работ. Плата NANO меньше в размерах и компактнее – это позволяет разместить ее в любом уголке умного дома. MEGA используется для сложных задач.
Сейчас на рынке представлено 3 поколение плат (R3) Ардуино. Обычно, при покупке платы, в комплект входит обучающий набор для собирания StarterKit, содержащий:
- Шаговый двигатель.
- Манипулятор управления.
- Электросхематическое реле SRD-05VDC-SL-C 5 В.
- Беспаечная плата для макета MB-102.
- Модуль с картой доступа и и двумя метками.
- Звуковой датчик LM393.
- Датчик с замером уровня жидкости.
- Два простейших устройства отображения цифровой информации.
- LCD-дисплей для вывода множества символов.
- LED-матрица ТС15-11GWA.
- Трехцветный RGB-модуль.
- Температурный датчик и измеритель влажности DHT11.
- Модуль риал тайм DS1302.
- Сервопривод SG-90.
- ИК-Пульт ДУ.
- Матрица клавиатуры на 16 кнопок.
- Микросхема 74HC595N сдвиговый регистр для получения дополнительных выходов.
- Основные небольшие компоненты электроники для составления схемы.
Можно найти и более укомплектованный набор для создания своими руками умного дома на Ардуино с нуля. А для реализации иного проекта, кроме элементов обучающего комплекта, понадобятся дополнительные вещи и модули.
Сенсоры и датчики
Чтобы контролировать температуру и влажность в доме и в подвальном помещении, потребуется датчик измерения температуры и влажности. В конструкторе умного дома это плата, соединяющая в себе датчики температуры, влажности и LCD дисплей для вывода данных.
Плата дополняется совместимыми датчиками движения или иными PIR-сенсорами, которые определяют присутствие или отсутствие человека в зоне действия, и привязывается через реле к освещению.
Датчик Arduino
Газовый датчик позволит быстро отреагировать на задымленность, углекислоту или утечку газа, и позволит при подключении к схеме, автоматически включить вытяжку.
Газовый датчик Arduino
Реле
Компонент схемы «Реле» соединяет друг с другом электрические цепи с разными параметрами. Реле включает и выключает внешние устройства с помощью размыкания и замыкания электрической цепи, в которой они находятся. С помощью данного модуля, управление освещением происходит также, если бы человек стоял и самостоятельно переключал тумблер.
Реле Arduino
Светодиоды могут указывать состояние, в котором реле находится в данным момент времени. Например, красный – освещение выключено, зеленый – освещение есть. Схема подключение к лампе выглядит так.
Для более крупного проекта лучше применять шину реле, например, восьмиканальный модуль реле 5V.
Контроллер
В качестве контроллера выступает плата Arduino UNO. Для монтажа необходимо знать:
описание элементов;
распиновку платы;
принципиальную схему работы платы;
распиновку микроконтролеера ATMega 328.
Программная настройка
Программирование подключенных элементов Ардуино происходит в редакторе IDE. Скачать его можно с официального сайта. Для программирования можно использовать готовые библиотеки.
Или воспользоваться готовым скетч решением Ardublock – графический язык программирования, встраиваемый в IDE. По сути, вам нужно только скачать и установить ПО, а затем использовать блоки для создания схемы.