Самоделки на ардуино уно для дома
В этой статье вы найдете обзор инженерных проектов ардуино с кратким описанием каждого из них. Мы постарались не просто рассказать о проектах для начинающих, но и дать краткие комментарии с примерами и схемами реализации. Большинство проектов могут быть созданы с контроллерами Arduino Uno R3, Nano или Mega. Надеемся, что ваше знакомство с платформой продолжится, и вы сможете не только повторить уже существующие идеи, но и придумать свои решения, вдохновленные примерами.
Проекты Arduino для начинающих
Если посмотреть на все проекты ардуино, информация о которых доступна в интернете, то можно их разделить на несколько основных групп:
- Начальные учебные проекты, не претендующие на какое-то важное практическое использование, но помогающие разобраться в разных аспектах платформы.
- Мигающие светодиоды – маячок, мигалка, светофор и другие.
- Проекты с датчиками: от простейших аналоговых до цифровых, использующих разнообразные протоколы для обмена данными.
- Устройства регистрации и отображения информации.
- Машины и устройства с сервоприводами и шаговыми двигателями.
- Устройства с использованием различных беспроводных видов связи и GPS.
- Проекты для автоматизации жилья – умные дома на Arduino, а также отдельные элементы управления домашней инфраструктурой.
- Разнообразные автономные машины и роботы.
- Проекты для исследования природы и автоматизации сельского хозяйства
- Необычные и креативные – как правило, развлекательные проекты.
По каждой из этих групп можно найти множество самых разнообразных материалов в книгах и на сайтах. В этой статье мы начнем знакомство с описанием наиболее простых проектов, с которых рекомендуется стартовать начинающим.
Как создавать проект на ардуино
Проект Ардуино – это всегда сочетание электронной схемы, некоторых связанных друг с другом аппаратных и механических устройств, системы питания и программного обеспечения, управляющего всем этим хаосом. Поэтому приступая к работе, вы должны твердо понимать, что создавая устройство в одиночестве, вы должны будете стать и программистом, и электронщиком, и конструктором.
Если речь идет не об учебном проекте, то вы обязательно столкнетесь со следующими этапами реализации с такими вот задачами:
- Придумать что-то, что будет полезно и (или) интересно для окружающих. Даже самый простой проект несет какую-то пользу – как минимум, он помогает изучать новые технологии.
- Собрать схему, подключить модули друг к другу и к контроллеру.
- Написать скетч (программу) в специальной среде и загрузить ее в контроллер.
- Проверить, как все работает вместе, и исправить ошибки.
- После тестирования – готовиться к созданию готового устройства. Это означает, нужно собрать устройство в каком-то пригодном для эксплуатации корпусе, предусмотреть систему питания, связи с окружающей средой.
- Если вы собираетесь распространять созданные вами устройства, то придется также заняться дизайном, системой транспортировки, задуматься о безопасности использования необученными пользователями и обучением этих самых пользователей.
- Если ваше устройство работает, оно протестировано и обладает какими-то преимуществами перед другими решениями, то можно попытаться сделать из вашего инженерного уже бизнес-проект, попробовать привлечь инвестиции.
Каждый из этих этапов создания проекта достоин отдельной статьи. Но мы уделим главное внимание этапам сборки электронных схем (основы электроники) и программирования контроллера.
Электронные схемы
Электронные схемы обычно собираются с применением макетных плат, скрепляющих элементы друг с другом без пайки и скрутки. О том, как работают модули и схемы подключения можно узнать на нашем сайте. Обычно в описании проекта указаны способы монтажа деталей. Но для большинства популярных модулей есть уже десятки готовых схем и примеров в интернете.
Программирование
Создание и прошивка скетчей производится в специальной программе – среде программирования. Наиболее популярной версией такой среды является Arduino IDE. На нашем сайте вы сможете найти информацию о том, как скачать, установить и настроить эту программу.
Где купить все необходимое
Мы собрали ссылки Aliexpress на стартовые наборы Arduino Starter Kit, в которых есть все самое необходимое для создания своих первых проектов.
Простые проекты Ардуино
Давайте начнем наш обзор с традиционно самых простых, но очень важных проектов, включающих в себя минимальное количество элементов: светодиоды, резисторы и, конечно же, плату ардуино. Все примеры рассчитаны на использование Arduino Uno, но с минимальными изменениями будут работать на любой плате: от Nano и Mega до Pro, Leonardo и даже LilyPad.
Проект с мигающим светодиодом – маячок
Все без исключения учебники и пособия для начинающих по ардуино стартуют с примера мигания светодиодом. Этому есть две причины: такие проекты требуют минимального программирования и их можно запустить даже без сборки электронной схемы – уж что-что, а светодиод есть на любой плате ардуино. Поэтому и мы не станем исключением – давайте начнем с маячка.
Нам понадобится:
- Плата Ардуино Uno, Nano или Mega со встроенным светодиодом, подключенным к 13 пину.
- И все.
Что должно получиться в итоге:
Светодиод мигает – включается и выключается через равные промежутки времени (по умолчанию – 1 сек). Скорость включения и выключения можно настраивать.
Схема проекта
Схема проекта довольно проста: нам нужен только контроллер ардуино со встроенным светодиодом, подсоединенным к пину 13. Именно этим светодиодом мы и будем мигать. Подойдут любые популярные платы: Uno, Nano, Mega и другие.
Подсоединяем Arduino к компьютеру, убеждаемся, что плата ожила и замигала загрузочными огоньками. Во многих платах «мигающий» скетч уже записан в микроконтроллер, поэтому светодиод может начать мигать сразу после включения.
Программирование в проекте Ардуино
Если в вашей плате нет загруженного скетча маячка – не беда. Можно легко загрузить уже готовый пример, доступный в среде программирования Ардуино.
Открываем программу Arduino IDE, убеждаемся, что выбран нужный порт.
Затем открываем уже готовый скетч Blink – он находится в списке встроенных примеров. Откройте меню Файл, найдите подпункт с примерами, затем Basics и выберите файл Blink.
В открытом окне отобразится исходный код программы (скетча), который вам нужно будет загрузить в контроллер. Для этого просто нажимаем на кнопку со стрелочкой.
Ждем немного (внизу можно отследить процесс загрузки) – и все. Плата опять подмигнет несколькими светодиодами, а затем один из светодиодов начнет свой размеренный цикл включений и выключений. Можно вас поздравить с первым загруженным проектом!
Проект маячка со светодиодом и макетной платой
В этом проекте мы создадим мигающий светодиод – подключим его с помощью проводов, резистора и макетной платы к ардуино. Сам скетч и логика работы останутся таким же – светодиод включается и выключается.
Графическое изображение схемы подключения доступно на следующем рисунке:
Другие идеи проектов со светодиодами:
- Мигалка (мигаем двумя свтодиодами разных цветов)
- Светофор
- Светомузыка
- Сонный маячок
- Маячок – сигнализация
- Азбука Морзе
Подробное описание схемы подключения и логики работы программы можно найти в отдельной статье, посвященной проектам со светодиодами.
Проекты Ардуино в Интернете
В интернете можно найти огромное количество примеров самых разных проектов с Arduino. Мы сделали небольшую подборку самых необычных проектов.
Сегодня без труда можно найти сотни проектов, созданных руками инженеров-энтузиастов по всему миру. Невозможно сделать качественный обзор всех их. В данной подборке мы просто сделали небольшой обзор
Управление телевизором силой мысли и Ардуино.
Этот оригинальный проект кажется невероятным, ведь для переключения канала нужен не пульт, а мысль о его смене. Для создания потребуется Ардуино Уно, игра Star Wars Force Trainer, инфракрасные приемник и передатчик.
Проект был реализован Дэниэлом Дэвисом в домашних условиях. За основу он взял игру 2009 года Star Wars Force Trainer и разобрал ее. Сама игра содержит гарнитуру, которая может обнаружить электрические поля разума (аналогично ЭЭГ). Внутри был обнаружен чип NeuroSky ЭЭГ, который Дэниэл подключил к плате Ардуино. Данные ЭЭГ собираются и преобразовываются на компьютере.
С помощью serial монитора можно посмотреть сигналы, которые передает пульт на ИК приемник при переключении каналов. Далее записывается код кнопки и пишется небольшая программа.
После завершения программной части на человека надевают шлем, и он может переключать канаты телевизора и выключать его путем сосредоточения мыслей.
Механическая рука, которая записывает время на доске.
Plotclock является простейшим роботом, который состоит из руки с маркером, которая пишет на доске текущее время. Когда время изменяется, рука стирает ранее записанное число и пишет новые значения. Проект постоянно развивается, описанная технология является простейшей.
Для реализации проекта нужны 3D принтер, Ардуино Уно, 3 сервомотора, болты и гайки, маркер для стираемой доски, белая поверхность.
Механическая составляющая робота выполняется из пластиковых элементов и соединенных между собой механизмов. Управляется рука с помощью платы Ардуино и трех серводвигателей.
Окей Google, Сезам, открой дверь
В проекте реализуется открытие двери с помощью определенной голосовой команды. Чтобы войти в помещение, достаточно назвать фразу «Сезам, откройся».
Для создания потребуются Ардуино Уно, серводвигатель, Bluetooth модуль.
Для разблокирования двери используются команды Google Now. Для смартфонов и планшетов есть приложение с названием «Сезам», которое и отправляет команду дверному замку при произношении слов «О’кей Google, Сезам, откройся».
Сервопривод подключается к дверному замку. Модуль Bluetooth ожидает команду, и при ее получении подает сигнал Ардуино через serial порт. Arduino Uno отдает команду сервоприводу и дверь открывается.
Светодиодный куб 4х4х4.
Куб из светодиодов на базе Ардуино – это развлекательное осветительное устройство. Он может быть разного размера с различными режимами подсветки. Куб оснащен кнопкой переключения режимов.
Для создания понадобится 64 светодиода, 4 резистора 100 Ом, проводники, макетная плата, коннекторы, коробка, источник питания на 9 В и плата Ардуино Уно.
На коробке рисуется или распечатывается эскиз квадрата 4х4. Проделываются отверстия, в которые помещаются светодиоды. Аноды нужно соединить между собой, затем коробку требуется повернуть и вытащить диоды. Аналогично формируются еще 3 слоя. Все слои нужно соединить с помощью оставшихся катодов. На макетную плату ставится получившийся куб и подключается к плате.
Робот пылесос
На базе Ардуино можно создать полезную вещь для дома – робота-уборщика. Самостоятельно сделанная модель не будет уступать по своим характеристикам магазинному экземпляру.
Для сборки потребуется:
- Arduino;
- драйвер L298N для управления двигателем;
- миниатюрные двигатели с редуктором и колесами;
- 6 инфракрасных датчиков;
- двигатель для турбины;
- турбина;
- двигатели для щеток;
- датчики столкновения;
- 4 аккумулятора;
- повышающий и понижающий преобразователи тока;
- контроллер для батареи.
Пылесос оборудован ИК датчиками. Они реагируют, когда пылесос приближается к препятствию, и дают ему команду остановиться и развернуться. При столкновении со стеной или другим препятствием срабатывает один из выключателей, соединяющий бампер и корпус робота.
Система распознавания лиц и слежения за ними на Ардуино.
Веб-камера закрепляется на поворотном механизме и подключается к ПК, на котором установлено программное обеспечение OpenCV. Когда программа обнаруживает лицо, начинается вычисление его центральной точки. Полученные координаты передаются на микроконтроллер Ардуино, который управляет сервомоторами и следит за лицом.
Для реализации потребуются:
- программное обеспечение Arduino IDE, OpenCV;
- плата Ардуино Уно;
- 2 сервомотора;
- веб-камера.
Автоматизированная система для аквариума
Автоматизация задач для аквариума помогает облегчить жизнь пользователя. Проект должен отвечать за следующие действия:
- подача подсветки того или иного цвета в зависимости от условий;
- отображение времени;
- регулирование компрессора;
- включение и выключение фильтров;
- отображение данных о температуре, влажности.
Чтобы собрать устройство, потребуются плата Ардуино Уно, пьезо сигналка, RGB лента, белая диодная лента, датчик температуры и влажности, LCD экран, часы, 2 реле, ик-приемник, транзисторы.
Схем реализации прибора существует множество. Пример одной из них приведен ниже.
Требуется также прописать код для включения того или иного цвета в зависимости от условий и настроить работу ЖК экрана.
Теплица для растений
В умной теплице для цветов происходит мониторинг и регулировка температуры и освещения и полив почвы. Особенно это актуально для теплолюбивых тропических растений, в которых необходимо постоянно поддерживать высокую температуру. Управлять можно автоматически или удаленно с планшета или смартфона.
Чтобы собрать проект, нужны следующие компоненты:
- Ардуино Уно;
- USB кабель;
- плата прототипирования;
- провода;
- фоторезистор;
- резистор на 10 кОм;
- температурный датчик;
- модуль температуры и влажности окружающей среды;
- модуль влажности почвы.
Фоторезистор отвечает за измерение освещенности. Температурный сенсор получает температуру воздуха. Модуль влажности почвы помещается в землю и измеряет уровень воды в ней.
Отслеживание потребляемого электричества в реальном времени при помощи Ардуино и LabVIEW.
Прибор может использоваться в умном доме в качестве измерителя потребляемой электроэнергии на современных счетчиках. Считывание информации происходит через светодиод счетчика – просчитывается длительность между миганиями.
Принцип работы следующие. Ардуино считывает частоту миганий и подает информацию через беспроводной модуль. Модуль, установленный на компьютер, получает эти данные и передает их в программу LabVIEW, в которой отображаются данные потребления мощности в режиме реального времени.
Мигание светодиода детектирует фоторезистор. Аналоговые данные считываются с помощью делителя напряжения.
Для работы потребуются:
- Ардуино;
- фоторезистор;
- светодиод;
- модуль Xbee;
- программное обеспечение Arduino IDE, LabView;
- простые и подстроечные резисторы;
- провода.
В программе будет отображаться график потребления за последние 5 минут и в реальном времени.
Аудиоплеер
Своими руками на базе Ардуино можно создать аудиопроигрыватель. Его конструкция проста – он состоит из динамика, транзистора, micro-sd карты с записанными на нее треками. В качестве платы используется Ардуино, также можно взять контроллер Seeeduino 2.21 или Garagino на ATmega328.
Для сборки нужны:
- контроллер;
- карт-ридер;
- динамик;
- печатная плата;
- карта памяти с записанными аудиотреками;
- транзистор;
- резистор;
- провода.
Работает плеер следующим образом. Ардуино загружает файлы с расширением .wav карты памяти. Происходит генерирование сигнала, который выводится через динамики, подсоединенные к пину 9 на плате.
Предварительно песню нужно преобразовать в формат .wav. Сделать это можно с помощью самого простого онлайн-конвертера. Музыкальные файлы имеют ограничения при воспроизведении мелодии. Транзистор не сможет прочитать сложные .wav-файлы, поэтому советуется преобразовать треки к следующему виду: 16 кГц в секунду, моно канал, бит на сэмпл – 8.
Музыка записывается на заранее отформатированную карту памяти и сохраняется с простыми наименованиями.После сбора схемы требуется прописать код, включить питание, после чего начнется воспроизведение музыки.
Рекомендации по работе с проектами Ардуино в Интернете
Найдя в интернете интересующий вас проект, попробуйте сначала понять его принцип действия. Посмотрите, как связаны между собой элементы, какие функции они выполняют, каковы ограничения. Попробуйте сперва создать прототип устройств (электронная схема с прошивкой) и только затем пытайтесь полностью повторить то, что видите в описании.
Другие идеи проектов
Проекты умного дома на Ардуино
Проекты умного дома являются одним из примеров того, как перейти от «игрушек» и тренажеров к реальным системам, помогающими и облегчающим жизнь. Как правило, с помощью ардуино невозможно создать полноценные автономные решения, но отдельные компоненты сделать вполне реально.
При этом нужно понимать, что сталкиваясь с реальными инфраструктурными объектами, мы должны соблюдать особую предусмотрительность при работе с электричеством, отоплением, водопроводом под давлением, канализацией. Любые эксперименты здесь нужно проводить обязательно под контролем профессионала.
Что может являться прототипом умного дома на ардуино:
- Системы освещения с автоматическим включением и отключением в зависимости от показателей датчиков. Наиболее популярнее варианты – использовать датчик освещенности, PIR датчик движения или датчик звука.
- Дистанционно управляемые электрические приборы. Например, включение или выключение системы отопления в зависимости от температуры или умное управление освещением в помещениях. Здесь вам понадобятся различные виды реле и один из механизмов обеспечения беспроводной связи: WiFi, GPRS, Bluetooth или радиоканал. Управлять устройствами можно через Web-интерфейс (через браузер) или с использованием соответствующего мобильного приложения (можно написать самому или выбрать одну из готовых платформ).
- Всевозможные системы учета: воды, тепла, электроэнергии. Начинающим доступны любительские датчики напора воды, температуры, влажности, силы тока. Можно использовать и профессиональные приборы, взаимодействуя с ними по одному из промышленных протоколов. Полученные данные можно собирать локально или отправлять в облако для последующего анализа.
- Охранные системы и контролирование внештатных ситуаций. Здесь понадобится различные датчики присутствия, движения, звука, магнитные датчики Холла и другие. Естественно, не обойтись без коммуникаций и возможности быстрой передачи информации владельцу через интернет.
Каждое из этих направлений может содержать в себе десятки разных проектов. Вы можете без труда найти себе подходящий вариант в интернете или в одной из наших статей.
Источник: ArduinoMaster.ru
Arduino – это универсальная платформа для самоделок на микроконтроллерах. К ней есть множество шилдов (плат расширения) и датчиков. Это многообразие позволяет сделать целый ряд интересных проектов, направленных на улучшение вашей жизни и повышение её комфорта. Сферы применения платы безграничны: автоматизация, системы безопасности, системы для сбора и анализа данных и прочее.
Из этой статьи вы узнаете, что можно сделать интересного на Ардуино. Какие проекты станут зрелищными, а какие полезными.
Что можно сделать с помощью Arduino
Робот пылесос
Уборка в квартире – рутинное занятие и малопривлекательное, тем более на это нужно время. Сэкономить его можно, если часть хлопот по дому возложить на робота. Этого робота собрал электронщик из г. Сочи – Дмитрий Иванов. Конструктивно он получился достаточно качественным и не уступает в эффективности заводским аналогам.
Для его сборки вам понадобятся:
1. Arduino Pro-mini, или любая другая подобная и подходящая по размерам…
2. USB-TTL переходник, если вы используете Pro mini. Если вы выбрали Arduino Nano, то он не нужен. Он уже установлен на плате.
3. Драйвер L298N нужен для управления и реверсирования двигателей постоянного тока.
4. Маленькие двигателя с редуктором и колесами.
5. 6 ИК-датчиков.
6. Двигатель для турбины (побольше).
7. Сама турбина, а вернее крыльчатка от пылесоса.
8. Двигателя для щеток (небольшие).
9. 2 датчика столкновения.
10. 4 аккумулятора 18650.
11. 2 преобразователя постоянного напряжения (повышающий и понижающий).
13. Контроллер для работы (заряда и разряда) аккумуляторов.
Система управления выглядит следующим образом:
А вот система питания:
Подобные уборщики развиваются, модели заводского изготовления обладают сложными интеллектуальными алгоритмами, но вы можете попытаться сделать свою конструкцию, которая не будет уступать по качеству дорогим аналогам.
Управление RGB-лентой со смартфона и Arduino
RGB-ленты способны выдавать световой поток любого цвета, в них обычно используются светодиоды в корпусе которых размещено три кристалла светящиеся разным цветом. Для их управления продаются специальные RGB-контроллеры, их суть заключается в регулировании тока подаваемого на каждый из цветов светодиодной ленты, следовательно – регулируется интенсивность свечения каждого из трёх цветов (отдельно).
Вы можете сделать своими руками RGB-контроллер на Ардуино, даже более того, в этом проекте реализовано управление через Bluetooth.
На фото приведен пример использования одного RGB-светодиода. Для управления лентой потребуется дополнительный блок питания на 12В, тогда ШИМ-выходы Arduino будут управлять затворами полевых транзисторов включенных в цепь. Ток заряда затвора ограничен резисторами на 10 кОм, они устанавливаются между пином Ардуино и затвором, последовательно ему.
Автор использовал для связи со смартфоном Bluetooth, для этого был куплен модуль HC-05.
Пульт управления на базе Arduino и смартфона
С помощью микроконтроллера можно сделать универсальный пульт дистанционного управления управляемый с мобильного телефона.
Для этого понадобится:
-
Arduino любой модели;
-
ИК-приемник TSOP1138;
-
ИК-светодиод;
-
Bluetooth-модуль HC-05 или HC-06.
Проект может считывать коды с заводских пультов и сохранять их значения. После чего вы можете управлять этой самоделкой через Bluetooth.
Система распознавания лиц и слежения за ними
Веб-камера устанавливается на поворотный механизм. Её подключают к компьютеру, с установленным программным обеспечением. Оно базируется на библиотеке компьютерного зрения – OpenCV (Open Source Computer Vision Library), после обнаружения программой лица, координаты его перемещения передаются на плату Arduino через USB-кабель.
Ардуино даёт команду приводу поворотного механизма и позиционирует объектив камеры. Для движения камеры используется пара сервоприводов.
На видео изображена работа этого устройства.
Следите за своими животными!
Идея заключается в следующем – узнать, где гуляет ваше животное, это может вызвать интерес для научных исследований и просто для развлечения. Для этого нужно использовать GPS-маячок. Но чтобы хранить данные о местоположении на каком-нибудь накопителе.
При этом габариты устройства здесь играют решающую роль, поскольку животное не должно ощущать от него дискомфорт. Для записи данных можно использовать Arduino шилд для работы с картами памяти формата Micro-SD.
Ниже приведена схема оригинального варианта устройства.
В оригинальной версии проекта использовалась плата TinyDuino и шилды к ней. Если вы не можете найти такую, вполне можно использовать маленькие экземпляры Arduino: mini, micro, nano.
Для питания использовался элемент Li-ion, малой ёмкости. Маленького аккумулятора хватает примерно на 6 часов работы. У автора в итоге все поместилось в обрезанную баночку из-под тик-така. Стоит отметить, что антенна GPS должна смотреть вверх, чтобы получать достоверные показания датчика.
Взломщик кодовых замков
Для взлома кодовых замков с помощью Ардуино понадобятся серво- и шаговый двигатель. Этот проект разработал хакер Samy Kamkar. Это достаточно сложный проект. Работа этого устройства изображена на видео, где автор рассказывает все подробности.
Конечно, для практического применения такое устройство вряд ли подойдет, но это отличный демонстрационный.
Ардуино в музыке
Это скорее не проект, а небольшая демонстрация какое применение нашла эта платформа у музыкантов.
Драм машина на Ардуино. Примечательна тем, что это не обычный перебор записанных сэмплов, а, в принципе, генерация звука с помощью «железных» приспособлений.
Анализатор спектра звука, с видео выходом.
Схема устройства:
Номиналы деталей:
-
Транзистор NPN-типа, например 2n3904 – 1 шт.
-
Резистор 1 кОм (R2, R4, R5) – 3 шт.
-
330 Ом (R6) – 1 шт.
-
10 кОм (R1) – 1 шт.
-
100 кОм (R3) – 1 шт.
-
Электролитический конденсатор 3.3 мкФ – 1 шт.
Для работы проекта потребуется подключение библиотеки для быстрого разложения в ряд Фурье.
Это достаточно простой и интересный проект из разряда «можно похвастаться перед друзьями».
3 проекта роботов
Робототехника – одно из интереснейших направлений для гиков и просто любителей сделать что-нибудь необычное своими руками, я решил сделать подборку из нескольких интересных проектов.
BEAM-робот на Ардуино
Для сборки четырёхногого шагающего робота вам понадобятся:
-
Для движения ног нужны сервомоторчики, например, Tower Hobbies TS-53;
-
Кусок медной проволоки средней толщины (чтобы выдерживала вес конструкции и не гнулась, но и не слишком толстой, т.к. не имеет смысла);
-
Микроконтроллер — AVR ATMega 8 или плата Ардуино любой модели;
-
Для шасси в проекте указано, что использовалась Рамка Sintra. Это что-то вроде пластика, он сгибается в любую форму при нагревании.
В результате вы получите:
Примечательно то, что этот робот не ездит, а шагает, может перешагивать и заходить на возвышения до 1 см.
Робот fijibot с функцией самоподзарядки
Этот проект мне, почему-то, напомнил робота из мультфильма Wall-e. Его особенностью является использование солнечной батареи для зарядки аккумуляторов. Он перемещается подобно автомобилю, на 4-х колесах.
Его составляющие детали:
-
Пластиковая бутылка подходящего размера;
-
Arduino UNO;
-
Proto-shield;
-
Перемычки мама-папа;
-
Солнечная панель с выходным напряжением в 6В;
-
В качестве донора колес, двигателей и других деталей – машинка на радиоуправлении;
-
Два сервопривода непрерывного вращения;
-
Два обычных сервопривода (180 градусов);
-
Держатель для батареек типа АА и для «кроны»;
-
Датчик столкновений;
-
Светодиоды, фоторезисторы, постоянные резисторы на 10 кОм – всего по 4 штуки;
-
Диод 1n4001.
Вот основа – плата Ардуино с прото-шилдом.
Вот так выглядят запчасти от радиоуправляемой машины – колеса.
Конструкция почти в сборе, датчики установлены.
Суть работы робота заключается в том, что он едет на свет. Обилие фоторезисторов нужно ему для навигации.
Художник из деталей от CD-приводов
Это скорее ЧПУ станок, чем робот, но проект весьма занимательный. Он представляет собой 2-х осевой станок для рисования. Вот перечень основных компонентов, из которых он состоит:
-
(DVD)CD-приводы – 2 шт;
-
2 драйвера для шаговых двигателей A498;
-
сервопривод MG90S;
-
Ардуино Уно;
-
Источник питания 12В;
-
Шариковая ручка, и другие элементы конструкции.
Из привода оптических дисков используется блоки с шаговым двигателем и направляющей штангой, которые позиционировали оптическую головку. Из этих блоков извлекают двигатель, вал и каретку.
Управлять шаговым двигателем без дополнительного оборудования у вас не выйдет, поэтому используют специальные платы-драйверы, лучше, если на них будет установлен радиатор двигателя в момент пуска или смены направления вращения.
Полный процесс сборки и работы показан на этом видео.
Смотрите также 16 лучших Arduino проектов от AlexGyver:
Заключение
В статье рассмотрена лишь малая капля из всего того, что вы можете сделать на этой популярной платформе. На самом деле всё зависит от вашей фантазии и задачи, которую вы ставите перед собой.
Алексей Бартош
Источник: electrik.info
Arduino — это хорошо, когда хочется быстро реализовать идею, не заморачиваясь мелочами. Но когда идея проверена, лишняя функциональность начинает просто мешать.
Собирая робота на гусеничном шасси, я столкнулся с тем, что бутерброд из Arduino + MotorShield + Sensor Shield плюс ко всему аккумулятор и прочие компоненты обросли проводами и стали с трудом помещаться на не самом крошечном шасси. Городить еще кучу шилдов, чтобы избавиться от лишних проводов не хотелось.
Появилась идея избавиться от всего, что в Arduino не требуется в готовом девайсе. Попутно хотелось снизить стоимость робота.
Многих интересующихся электроникой отпугивает еще и стоимость Arduino в магазинах. С ebay и китайских магазинов посылка идет долго, изобретательский пыл успевает остыть, поэтому приобретение откладывается «на потом», «когда сын подрастет». Поэтому я решил собрать Arduino-совместимую плату из деталей, которые всегда можно купить в городе.
В итоге я получил Arduino-совместимую плату, стоимостью в 210 рублей на макетной плате и в ~270 рублей в готовом для наращивания функционала виде.
«Minimalist Arduino»
С нуля до полной готовности собирается с дешевым 40Вт паяльником за 1 выходной без каких-то особых навыков.
Лазерного принтера у меня нет, печатные платы самостоятельно никогда не разводил, поэтому решено было использовать не ЛУТ, а макетную плату с односторонней металлизацией (максимально дешевая, всегда есть в продаже).
Сначала я хотел купить Atmega328P в DIP корпусе, чтобы воспользоваться статьей Arduino on a Breadboard и собрать Arduino на беспаечной макетке.
Но оказалось, что в DIP28 ее в Москве крайне трудно найти, да к тому же в этом корпусе она существенно дороже. Зато в наличии навалом Atmega168 в любом корпусе. Но цена DIP28 и TQFP-32 отличается тоже довольно существенно. Для робота на гусеничном шасси и домашней автоматизации возможностей Atmega168 более чем достаточно, поэтому поборов страх, я решил сэкономить и использовать 168ю в TQFP-32 корпусе (шаг ножек — 0.8мм)
Все компоненты кроме эпоксидной макетки я купил в Москве, в одном магазине (макетки продаются в любом радиомагазине или на рынке, просто у меня уже было 5 штук, купленных ранее на ebay).
Итак, для начала нужно припаять микроконтроллер размером 9х9 мм на DIP переходник, чтобы более комфортно с ней было работать.
mkpochtoi не работал, поэтому купить готовую макетную плату не получилось, купил макетку MP-QFP, от которой ножовкой по металлу отпилил кусок под TQFP-32.
Просмотрев видеоурок по пайке от DIHALT я водрузил микруху на макетку с помощью обычного 40Вт паяльника, потратив на это чуть больше 5 минут (опыта пайки таких мелких компонентов и вообще SMD компонентов у меня не было). В качестве флюса использовал несколько капель глицерина (попросил у девушки, она занимается мыловарением). Отмыл горячей водой и высушил феном.
«Atmega 168PA-AU»
40-ногую линейку PBS-40 кусачками настрогал на кусочки по 4 ножки и впаял с обратной стороны. Я взял гнезда, а не штырьки, чтобы микроконтроллерную плату можно было подключать к макетке проводками без пайки.
Дальше все как в статье — собрал на макетной плате схему, использовав datasheet от семейства Atmega 48/88/168 (номера ножек на DIP28 и TQFP-32 различаются).
Поскольку процессор я взял чистый, то предстояло прошить его бутлоадером от Arduino. Тут меня поджидала засада:
Arduino IDE знает только Atmega168 и ничего не знает об Atmega168P (точнее Atmega168PA-AU) — более свежей версии микросхемы. Прошивать она его отказалась. А еще раньше я выяснил, что Freeduino Nano v5.0 почему-то не хочет работать ISP программатором. Пришлось разобрать робота и достать Freeduino 2009. с помощью скетча ArduinoISP и примера на Freeduino.ru удалось заставить avrdude игнорировать различие в сигнатуре (ключ -F) и прошить бутлоадер, фьюзы и лок.
У меня сработал такой вариант:
::Прошиваем bootloader (порт COM9 нужно поменять на Ваш)
avrdude -F -C avrdude.conf -p m168p -c avrisp -P COM9 -b 19200 -e -U flash:w:optiboot_diecimila.hex
::Прошиваем fuse и lock биты
avrdude -F -C avrdude.conf -p m168p -c avrisp -P COM9 -b 19200 -Uefuse:w:0x00:m -Uhfuse:w:0xdd:m -Ulfuse:w:0xff:m -Ulock:w:0x0F:m
На официальном сайте есть описание подключения для прошивки:
Как вариант, можно обновить файл avrdude.conf, прописав правильную сигнатуру, но нужды в этом особой нет.
Все, Arduino на макетке готова. Можно подключать любой USB — serial TTL (или RS-232-TTL) адаптер и зашивать скетч из Arduino IDE, выбрав Board->Arduino Diecimila, Duemilanove or Nano w/Atmega168.
«Breadboard Arduino»
Убедившись в работоспособности, я занялся переносом на макетную плату.
Сложнее всего оказалось оптимально разместить элементы. Для этого наиболее простым бесплатным инструментом оказался Fritzing. Правда нагромождение картинок и проводов выглядит страшно, но позволяет при сборке не запутаться в проводах:
«Minimalist Arduino»
Я старался уменьшить количество отдельных проводов, припаивая где возможно выводы воткнутого компонента к нужному контакту просто сгибая его ножки и обрезая излишек.
Добавив примерно 65 р на запчасти я получил вот такой результат:
«Minimalist Arduino»
Для удобства я добавил шину питания и землю (2 гребенки справа внизу), кнопку питания, гнездо RX, TX, DTR для загрузки скетчей и ICSP разъем для прошивки микроконтроллера программатором прямо на плате.
«Minimalist Arduino в сборе»
Воткнув микроконтроллерную плату с Atmega328P-AU, можно прогапгрейдить девайсик для задач, где 16 кб под скетч не хватает. Оставшееся на макетке место я собираюсь использовать под сенсоры, драйвер мотора и прочие нужные вещи.
Вот список компонентов и цен:
Наименование | Цена | Кол-во | Стоимость |
---|---|---|---|
Mакетная плата MP-QFP | 64 | 1 | 64 |
Glass-Epoxy Board Prototyping PCB 9×15 FR4 | 43 | 1 | 43 |
PBS-4 | 4 | 8 | 32 |
PBS-6 | 4 | 2 | 8 |
PLS-40 | 4 | 1 | 4 |
ATMega168PA-AU | 62 | 1 | 62 |
LM7805 1A 5V Positive Voltage Regulator | 15 | 1 | 15 |
16.000MHz Clock Crystal | 10 | 1 | 10 |
22pF Capacitor | 1 | 2 | 2 |
10uF Capacitor | 5 | 2 | 10 |
100nF Capacitor | 1 | 1 | 1 |
10kOhm Resistor | 1 | 1 | 1 |
150 Ohm Resistor | 1 | 2 | 2 |
DTS-61 кнопка | 2 | 1 | 2 |
PS-22E85L | 7 | 1 | 7 |
WF-02 вилка на плату | 1 | 1 | 1 |
Red 3mm LED | 2 | 1 | 2 |
Green 3mm LED | 2 | 1 | 2 |
Итого | 268р. |
Сантиметров 20 монтажного провода, припой и флюс я не посчитал 🙂
Получилось даже чуть-чуть дешевле чем Arduino Pro Mini ($9.5), при этом удобнее в использовании и не нужно ждать 3 недели, пока приедет из китая ).
Но самое приятное — это может собрать каждый и все компоненты есть в продаже и легко доступны. Ждать и искать ничего не нужно. Увидели на хабре интересный проект на ардуино? Соберите его!
Если нет знакомых с ардуино или прогрмматором, то бутлоадер за 50 рублей вам может прошить продавец, а переходник USB — Serial TTL покупать не обязательно, если у компа есть COM порт.
Я собрал вот такой переходник из MAX232CPE, разъема DB9F и 4 конденсаторов по рублю штука:
«Loading Sketch»
Источник: habr.com
Что за Arduino
Arduino — это программируемый микроконтроллер. То есть это плата, на которую можно записать вашу программу, и эта плата сможет управлять другими штуками: например, зажечь лампочку, издать звук, включить электроприбор, измерить температуру, отправить СМС.
На самом базовом уровне Arduino просто отправляет и считывает электрические импульсы. Например, можно подключить к нему термометр, и Arduino сможет считать температуру в комнате. А потом, в зависимости от программы, отправить сигнал на устройство, которое включит вентилятор.
Или можно подключить к Arduino датчик углекислого газа. Arduino можно научить считывать показания датчика каждые пять минут и, когда уровень углекислого газа превышает норму, запищать, замигать лампочкой или с помощью серии моторчиков открыть окно.
К Arduino есть много плат расширения и датчиков. Сферы применения платы почти безграничны: автоматизация, системы безопасности, умный дом, музыка, робототехника и многое другое. Вот что можно делать на этой умной итальянской плате и на её российских и зарубежных клонах.
1. Робот-бармен с Bluetooth-управлением
Сложность: 4/5.
Время: 5/5.
Незаменимое устройство для любой вечеринки: работает от восьми батареек, готовит много коктейлей и управляется без проводов. В основе механического бармена — плата Arduino, приводы для позиционирования шейкера и подачи напитков, датчики положений.
Главная сложность при изготовлении — инженерная. Нужно точно прикрутить все детали и соединить их между собой, чтобы ёмкость оказывалась точно под нужными бутылками.
Подробности: usamodelkina.ru.
2. Светящийся куб на 512 светодиодов
Сложность: 3/5.
Время: 3/5.
Красивая штука, которая может светиться в такт музыке как трёхмерный эквалайзер и показывать 3D-анимацию. А ещё это может работать как необычный ночник.
Для сборки понадобится деревянное шасси с отверстиями, чтобы каждый ярус был таким же по размеру и форме, что и остальные. Число светодиодов в каждой грани выбрано не случайно: 8 ламп = 8-битная логика, самая простая в программировании и управлении через контроллер.
Подробности: instructables.com.
3. Взломщик кодовых замков
Сложность: 5/5.
Время: 4/5.
Этот проект разработал хакер Сэми Камкар, и мы приводим его только в демонстрационных целях. Для взлома, кроме платы Arduino, автор взял серво- и шаговый двигатели для перебора комбинаций и соединил всё на самодельном шасси из алюминия. В основе алгоритма — простой перебор всех комбинаций, но робот это делает быстрее человека.
Подробности: YouTube.
4. Nod Bang — киваем головой и делаем бит
Сложность: 2/5.
Время: 3/5.
Идея в том, чтобы не просто кивать в такт музыке, а кивками самому генерировать звук. Эндрю Ли сделал специальное устройство, которое следит за положением головы и в момент наклона воспроизводит нужный звук.
В наушники он встроил акселерометр, кнопки отвечают за выбор звука, а Arduino — за воспроизведение звука на компьютере через MIDI-интерфейс. Чтобы всё выглядело эффектнее, у кнопок есть подсветка, и они тоже делают бит.
Подробности: YouTube.
5. Поющее растение
Сложность: 2/5.
Время: 2/5.
По сути это терменвокс, который сделали в виде растения. Все остальные принципы работы остались теми же: звук возникает при движении рук, и разные движения генерируют разную мелодию.
Плата регистрирует изменение амплитуды сигнала, для чего автор использует самодельный сенсорный детектор для анализа прикосновений к цветку. Кроме этого понадобилась плата расширения Gameduino и сам цветок.
Подробности: Vimeo.
6. Замок, который открывается на секретный стук
Сложность: 3/5.
Время: 2/5.
Интересная вещь для тех, кто хочет поиграть в шпионов или пускать в комнату только своих друзей. Замок распознаёт стук по двери и сравнивает его с базовым звучанием, которое установил владелец. Если совпадает — приводы отодвигают замок и дверь открывается, если нет — ничего не происходит, можно постучать заново.
Чтобы установить новый стук на открытие, нужно зажать кнопку на ручке и постучать по двери новым способом. Пьезосенсор распознаёт вибрации и записывает их в память платы.
Подробности: grathio.com.
7. Горшок для цветов с автополивом
Сложность: 4/5.
Время: 3/5.
Полезный горшок для тех, кто забывает полить цветы перед отъездом или просто не знает, как часто надо их поливать. Вся электроника, насосы и ёмкость для воды находятся внутри горшка. Для каждого растения можно запрограммировать свой режим полива в каждом горшке.
Основные характеристики чудо-горшка:
- встроенный резервуар для воды;
- датчик контроля уровня влажности почвы;
- насос для подачи воды;
- датчик уровня воды в резервуаре;
- светодиод, информирующий о недостатке воды в резервуаре.
Подробности: usamodelkina.ru.
8. Драм-машина
Сложность: 1/5.
Время: 2/5.
Простая драм-машина на Arduino. Проект интересен тем, что это не обычный перебор записанных семплов, а настоящая генерация звука с помощью встроенного железа. Ещё здесь есть анализатор спектра звука: через видеовыход можно посмотреть на диаграммы и частотные характеристики.
Математическая основа этого устройства — разложение в ряд Фурье, которое решается подключением стандартной библиотеки.
Подробности: YouTube.
9. Шагающий робот
Сложность: 2/5.
Время: 1/5.
Простой в изготовлении четырёхногий робот, который шагает и самостоятельно преодолевает препятствия в сантиметр высотой.
Чтобы его сделать, вам понадобятся сервомоторы для ног, немного проволоки и любой пластик, из которого делается шасси. Для питания — аккумулятор любой модели, который крепится на спине робота.
Подробности: xakep.ru.
10. Робот-пылесос
Сложность: 4/5.
Время: 5/5.
Дмитрий Иванов из Сочи собрал настоящий робот-пылесос, который делает всё то же самое, что и промышленные устройства, только с возможностью тонкой настройки под себя и свою квартиру.
Основные детали — плата Arduino, 6 инфракрасных датчиков, турбина с двигателем и щётками и аккумулятор. Ещё у робота есть датчики столкновения, которые помогают объезжать препятствия, и контроллер аккумулятора, который следит за уровнем батарей и предупреждает о том, что пылесос надо зарядить.
Подробности: habr.com.
Источник: thecode.media
Шаг 1. Изменения в оригинальной версии
Прежде всего давайте поговорим об изменениях, которые собираемся внести в оригинальную схему Arduino Uno, которую вы можете увидеть выше или скачать ниже.
Изменения будут следующими:
- Мы не будем использовать какие-либо компоненты SMD. Все элементы будут в формате сквозных отверстий.
- Мы не нашли ни одного чипа FTDI в формате сквозного отверстия, поэтому преобразование USB в TTL не будет выполняться. Для программирования нового Arduino будет использоваться отдельная отладочная плата FTDI.
- Оригинальный Arduino использует компаратор Mosfet, чтобы определить, подключаем ли мы плату с помощью источника питания USB или постоянного тока. Но в нашей версии мы будем вручную переключать это с помощью перемычки.
- Традиционно используется микросхема LP2985 от Texas Instruments, чтобы получить источник питания 3,3 В на борту. Но из-за недоступности платы в формате TH мы будем использовать простой линейный регулятор. Таким образом, LM1117 должен быть очевидным выбором, но чтобы сохранить стоимость изготовления еще ниже, мы будем использовать LM317 с R1 и R2 как 240E и 390E соответственно.
- Последнее, что нужно на плате, — это достаточное количество линий питания и два разъема для каждого порта IO ввода-вывода. Поэтому мы будем размещать ряд разъемов папа и мама вокруг платы, что поможет подключить большее количество устройств непосредственно к Arduino.
Учитывая все изменения, мы можем записать окончательный список компонентов.
Шаг 2. Необходимые компоненты
Компоненты, которые вам нужны для этого проекта. Везде, где количество не указано, считайте его единственным.
- Микроконтроллер Atmel Atmega328p-pu
- 28-контактная база IC
- 16 МГц кварцевый генератор
- конденсатор 22 пФ — 2 шт.
- конденсатор 100 нФ — 4 шт.
- Электролитический конденсатор 100 мкФ — 3 шт.
- 3 мм красный светодиод — 2 шт.
- 330E 1/4W резистор — 2 шт.
- 240E 1/4W резистор — 1 шт.
- 390E 1/4W резистор — 1 шт.
- 10K 1/4W резистор — 1 шт.
- Кнопка для сброса
- Диод общего назначения 1N4007
- Линейный регулятор напряжения 7805
- Линейный регулятор переменного напряжения LM317
- DC разъем мама
- 2-контактный винтовой клеммный блок
- много разъемов «папа» и «мама»
Кроме всего вышеперечисленного для своей собственной Arduino Uno вам также понадобится паяльное оборудование и некоторые аппаратные средства, чтобы облегчить жизнь.
Вам также понадобится программатор USBASP ICSP или конвертер USB в TTL, такой как FTDI для программирования Arduino с вашего компьютера.
Вот проектная спецификация от компании Easyeda:
Собираем все компоненты и переходим к следующему шагу.
Шаг 3. Рисуем окончательную схему
Чтобы нарисовать окончательную схему, использовали Easyeda, набор инструментов EDA на основе веб-технологий. На этом портале очень просто рисовать большие схемы. Также это онлайн сервис. Таким образом, благодаря удобству использования что-то лучшее найти сложно. Рекомендуем вам использовать в своих проектах. Схема, которая разработана может быть скачена по ссылке ниже, PDF документ:
Шаг 4. Создаем печатную плату
Как только схема завершена, пришло время сделать печатную плату. Мы использовали веб-сайт JLCPCB (ссылка), чтобы сделать печатную плату. Эти ребята являются одними из лучших в производстве печатных плат в последние дни.
После завершения проектирования схемы преобразуйте ее в печатную плату и спроектируйте печатную плату на веб-сайте easyEDA (ссылка). Будьте терпеливы. Ошибка на этом шаге испортит вашу печатную плату. Проверьте несколько раз перед генерацией файла gerber. Вы также можете проверить 3d модель вашей платы здесь. Нажмите на создание файла gerber и оттуда вы можете напрямую заказать эту плату через JLCPCB. Загрузите файлы gerber, выберите правильную спецификацию, ничего не меняйте в этом разделе. Оставьте как есть. Это достаточно хорошие настройки для старта. Разместите заказ. Вы получите его через 1-2 недели.
Шаг 5. Пайка компонентов
После того, как вы получили печатную плату, пришло время припаять компоненты на неё, чтобы сделать конечный продукт. В этом нет ничего сложного. Просто держите распечатку схемы перед собой и начинайте размещать компоненты по одному на печатной плате. Убедитесь, что после завершения этого шага нет короткого замыкания по питанию и заземлению.
Одна вещь, которую стоит пояснить, заключается в том, что значения конденсаторов не обязательно должны быть идеальными. Нечто близкое к тем величинам, что мы обсуждали выше, вполне будет работать. То же самое касается резисторов. Но сохраните значения R1 и R2 LM317.
Одна вещь, которую вы можете найти странной, что у arduino, который мы сделали, есть две кнопки сброса. На самом деле, когда разрабатывали макет, использовали четырехконтактную кнопку для справки. Но во время пайки стало понятно, что у нас её нет. Поэтому мы припаяли 2 двухполюсных переключателя сброса на место. Там нет ничего особенного.
Шаг 6. Запуск загрузчика на микроконтроллере
Если вы используете конвертер USB — TTL для программирования микроконтроллера, тогда загрузчик Arduino должен быть установлен в новый чип atmega328p. Об этом мы сделаем следующий большой урок. После этого процесс загрузки кода будет точно таким же, как и в обычной Arduino.
Если вы используете программатор ICSP, то есть программатор USBASP, тогда этот шаг не нужен. Но процесс загрузки кода немного отличается.
Шаг 7. Программируем Ардуино
Подключите коммутационную плату к Arduino и подключите её к компьютеру. Откройте диспетчер устройств и наблюдайте за com-портом конвертера usb — ttl. В Arduino IDE выберите com-порт и плату правильно. Теперь здесь начинается сложная часть.
Если ваша плата FTDI имеет вывод DTR и она подключена для сброса, просто сохраните программу и загрузите ее в Arduino как обычно. Ошибки не будет. Но если у вас нет пина DTR, как у нас, то, прежде чем нажать кнопку загрузки, удерживайте кнопку сброса на плате, а затем нажмите кнопку загрузки. Удерживайте кнопку до тех пор, пока программа не скомпилируется, когда IDE говорит «загрузка», затем отпустите переключатель сброса. Затем код будет загружен.
Шаг 8. Итоговый результат
Здесь вы можете увидеть, что мы загрузили 3-контактный код в новую arduino, и все работает, как и предполагалось. Используя только 3 контакта, мы контролируем 6 светодиодов с промежутком 200 мс между ними. Мы проверяли другие программы, все они работают без нареканий.
Источник: ArduinoPlus.ru