Применение arduino – Arduino возможности применения

Содержание

Ардуино на русском для начинающих и профессионалов: уроки, статьи, библиотеки

Ардуино на русском для начинающих и профессионалов: уроки, статьи, библиотеки

  • Часы на Ардуино своими руками

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

  • Управление Arduino с помощью оболочки Python

    Приводим пример одного из способов по управлению платами и микроконтроллерами Arduino с помощью оболочки языка Python.

  • Как написать и запустить код Python на Raspberry Pi

    Что такое программирование на Python, для чего можно использовать Python, как написать и запустить простую программу Python на Raspberry Pi.

  • 40 самых полезных команд Raspberry Pi

    Список наиболее полезных и важных команд, которые значительно облегчат использование Linux на Raspberry Pi.

  • Управление светодиодом через пульт дистанционного управления

    Уроки по управлению светодиодами с помощью ИК-пульта дистанционного управления с использованием Arduino Uno R3 в качестве контроллера.

  • Классный способ продемонстрировать работу датчика HC-SR04

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

  • Делаем станцию мониторинга здоровья на Ардуино

    Создаем контролируемую через Android-приложение, основанную на микроконтроллере Ардуино, станцию мониторинга здоровья.

  • Ардуино термометр на основе датчика температуры DS18B20

    Мы сделаем LCD-термометр или Serial Monitor термометр на основе микроконтроллера Ардуино и цифрового датчика DS18B20

  • Как сделать браслет-шагомер на основе датчика BMI160

    Мы купили 6-осевой инерционный датчик движения BMI160 после чего решили сделать на основе него и Ардуино Beetle браслет-шагомер.

  • Настольная лампа Ардуино с включением через RFID

    Замените свою старую настольную лампу новой, управляемой картой RFID и Ардуино, и настройте ее с помощью цветовой схемы RGB.

  • Популярные контроллеры Arduino: какую плату выбрать новичку?

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

  • Подключаем датчик вибрации к Arduino Uno

    Подключаем датчик вибрации с реле к Arduino UNO, и когда датчик обнаруживает вибрацию, загорается светодиод 3 раза по 2 секунды.

Сайт Ардуино+

Сайт Ардуино+ (arduinoplus.ru) создан для того, чтобы помочь начинающим и профессиональным любителям радиоэлектроники в создании проектов различной сложности. Огромное количество библиотек, распиновка разных плат и устройств, библиотеки сенсоров и датчиков. Всё это включает в себя не только информацию про платы Ардуино, но и про многие-многие микроконтроллеры и устройства.

Что такое Ардуино?

Ардуино — плата с процессором, которая позволяет собрать любое устройство/гаджет. Благодаря Arduino своими руками можно собрать даже свой собственный «умный дом».

Arduino — эффективная аппаратно-программная платформа для проектирования и создания новых устройств, разработанная компанией Arduino Software и представляет собой плату с контактами для подключения дополнительных компонентов. Технические характеристики устройства зависят от модели используемого микроконтроллера. Это касается совместимости с дополнительными компонентами. Последнее обновление программной части 1.8.0 было выпущено 20 декабря 2016 года

Бесплатная программная интегрированная среда разработки создана на базе языков программирования C/C++ и обладает одноимённым с самим устройством название. Наличие Ардуино-совместимых плат расширяет пользовательские возможности разработки с применением аппаратных и программных компонентов.

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

Что можно создать при помощи Ардуино?

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

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

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

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

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

Преимущества работы с Arduino

Как уже было сказано ранее, Ардуино обладает открытой архитектурой, что позволяет сторонним разработчикам полностью копировать систему. Несмотря на высокую конкуренцию, Ардуино — самое популярное аппаратно-программное средство. Это достигается благодаря простоте с многофункциональностью. Рассмотрим преимущество системы над сторонними аналогами:

  • плата обладает встроенным программатором, что позволяет использовать систему без дополнительного подключения дешифратора и компилятора;
  • программная часть построена на базе C/C++, что делает её простой в использовании и изучении;
  • наличие библиотеки готовых проектов и чертежей CAD, доступных для свободного использования;
  • для сбора устройства не требуется пайка, компоненты соединяются при помощи специальной макетной доски, перемычек и проводов;
  • возможность автономной работы расширяет сферу применения устройства;
  • наличие версии для работы с популярной мобильной операционной системой Android;
  • большое количество дополнительных модулей как от разработчика, так и от сторонних производителей.

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

Работа с Arduino IDE: что и зачем

Для работы платы и вашего будущего проекта необходимо написать и загрузить на Arduino скетч. Скетч (sketch) — программа, написанная специально для Adruno. Для выполнения данного пункта вам понадобятся:

  • ардуино;
  • USB-кабель Type-A;
  • устройство, работающее на ОС Windows.

Скачайте Arduino IDE — бесплатную среду разработки для Ардуино с официального сайта производителя. Вместе с программой автоматически установятся драйвера для определения девайса при подключении к USB-порту. Если же Ардуино не определится — произведите ручную установку необходимых компонентов.

На схеме должен загореться зелёный светодиод при подключении к USB. Запустите приложение и приступайте к созданию собственного скетча. Проверка работоспособности и совместимости Arduino с ПО можно проверить при помощи встроенного скетча «LED». Запуск данного процесса должен вызвать мигание светодиода.

В меню Tool — Board выберите используемую плату. Далее следует загрузка скетча в Arduino при помощи кнопки «Upload». Успешное завершение данной операции подтверждается миганием светодиода оранжевого цвета на плате. Для подробного изучения Arduino IDE создано множество англоязычных и отечественных ресурсов, где рассказывается что такое Ардуино и как с ним работать.

Среда разработки оснащена стандартным менеджером добавления библиотек в виде исходного кода на языке C++. Данная возможность расширяет применение компонентов, добавляя новый функционал.

Платы и модули, раскрывающие функционал Arduino

Платы Ардуино различаются в частоте процессора, объемах памяти и поддерживаемых архитектурах. Можно выделить следующие модели:

  • Arduino Uno. Хорошее решение для начинающих пользователей и простых проектов. Поддерживает работу с Windows, Linux и MacOS. Встроенный микропроцессор работает на частоте 16 МГц, обладает 32 Кб встроенной памяти. Включается в комплекты для начинающих;
  • Arduino Yun. Комплект с встроенным портом Ethernet и модулем WiFi. Оптимизирован для работы с семейством Linux. Подойдёт для работы как с любительскими, так и промышленными проектами;
  • Arduino ADK. Устройство оптимизировано для работы с платформой Android. Хорошая совместимость и уникальный программный комплект позволяют создать проект, управляемый с мобильного телефона;
  • Arduino Due. Улучшенная версия, работающая на мощном 32 битном ARM процессоре с тактовой частотой 84 МГц. В плату установлено 96 Кб SRAM и 512 Кб флеш-памяти.
  • Arduino Nano. Одна из самых миниатырных, но очень полезных и популярных плат особенностью которой является разъем USB.

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

  • 3D-джойстик. Своеобразный программируемый 3D-стик, способный стать способом управления спроектированного механизма или робота;
  • Bluetooth-модуль. Даёт возможность управления механизмом или обменом данными через Bluetooth;
  • EasyVR Shield 3.0. Разработка, служащая для распознавания голосовых команд;
  • Espruino Pico. Контролер, позволяющий выполнять Java-скрипты, расширяя варианты применения платы;
  • GPRS Shield. Расширение, позволяющее принимать и отправлять голос, SMS и GPRS-данные;
  • Motor Shield. Подключаемый модуль, позволяющий программно управлять двумя моторчиками;
  • Power Bank. Аккумулятор для переносных компактных модулей на 2000 МАч.

Рассмотрев список выше, вы уже представили множество вариантов применения дополнительных модулей. Это далеко не весь список, а лишь популярные и распространённые устройства. Существуют разнообразные подключаемые картридеры, акселерометры, передатчики и модули для разнообразных сфер жизнедеятельности. Andruino начинает эффективно применяться даже в медицине.

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

С чего начать?

2017-2018 © Arduino+. Все права защищены. Копирование материалов запрещено, если не указано другого.

arduinoplus.ru

Обзор плат Arduino

Оригинальный Arduino был разработан для одной специфической задачи, и справился с этой задачей в совершенстве. С успехом первой оригинальной платы Arduino, компания решила создать больше проектов, некоторые из них для очень специфических задач. Кроме того, поскольку оригинальный дизайн Arduino был под открытой лицензией, несколько компаний и частных лиц разработали свои собственные Arduino совместимые платы расширений, или следуя принципам открытого исходного кода, предложили свои изменения в Arduino. Arduino начал программу сертификации для обеспечения совместимости с бордами, которые используют различные процессоры, и Intel Galileo был первым, кто получил подобный сертификат. Любой может сделать свой собственный Arduino-совместимый прибор, но наименование и логотип Arduino зарезервирован как торговая марка. Таким образом, вы найдете множество плат с именами, заканчивающимися на «uino», подразумевающие совместимость.

Arduino сделал дизайн платы с открытым исходным кодом, но они по-прежнему производят платы самостоятельно. Эти платы известны как официальные. Другие компании также делают Arduino совместимые платы.

Arduino Uno является стандартной платой Arduino и возможно наиболее распространенной. Она основана на чипе Atmel ATmega328, имеющем на борту 32 КБ флэш-памяти, 2 Кб SRAM и 1 Кбайт EEPROM памяти. На периферие имеет 14 дискретных (цифровых) каналов ввода / вывода и 6 аналоговых каналов ввода / вывода, это очень разносторонне-полезные девайсы, позволяющие перекрывать большинство любительских задач в области микроконтроллерной техники. Чип ATmega16u2 на борту управляет последовательной связью. Данная плата контроллера является одной из самых дешовых и наиболее часто используемых. При планировании нового проекта, если вы незнакомы, с платформой Arduino, советую начать с Uno.

Платформа Arduino Leonardo немного отличается от Uno. На основе ATmega32u4, этот микроконтроллер имеет расширенные возможности USB и, следовательно, не требует отдельного микрочипа для последовательной связи по USB, как Uno. Это означает меньшую стоимость; меньше микросхем — дешевле решение. Это также означает, что разработчик может использовать микроконтроллер в качестве родного устройства USB, увеличивается гибкость при коммуникации с компьютером. Леонардо может эффективно эмулировать клавиатуру и мышь через USB HID.

Платформа Arduino Ethernet на основе ATmega328, взятая с Uno, может подключаться к сети Ethernet,функциональность необходимая во множестве проектов. Физически, платформа Arduino Ethernet имеет те же14-дискретных входов / выходов, как Arduino Уно, с темисключением, что 4 используются для управления модулем Ethernet и встроенным считывателем микро-SD карт, ограничиваяколичество доступных выводов.

Интересноотметить, что Arduino Ethernet имеет дополнительный модуль POE (Power Over Ethernet). Эта опция позволяет Arduino Ethernet питаться непосредственно от сети Ethernet, без необходимости использования внешнегоисточника питания при условии, что питание POE подключено на другом конце кабеля Ethernet. Без POE Arduino должен быть запитан с помощью внешнего источника питания.

Еще одно отличиеот других плат Arduino — это отсутствие разъема USB. Потому что довольно много места занято разъемом Ethernet, зато устройство поддерживает коммуникации черезобычные выводы.

Arduino Mega 2560

Arduino Mega 2560

лиш немного длиннее, чем Arduino Uno, но она имеет значительно больше каналов ввода — вывода. Она имеет в общей сложности 54 цифровых линий ввода / вывода и 16 аналоговых входов. Она также имеет большое количество флэш-памяти: 256 КБ, что позволяет хранить большие программы, чем Uno. Она также имеет немалую SRAM и EEPROM: 8 КБ и 4 КБ, соответственно. Она также имеет 4 аппаратных UART порта, что делает ее идеальной платформой для коммуникаций с несколькими устройствами параллельно.

Платы Arduino Mega используются там, где необходимо большое количество входов и выходов.

Arduino Mini

Платформа Arduino Mini это крошечное устройство, используемое в проектах, требующих максимальной экономии места. Она содержит 14 цифровых входов / выходов и 4 аналоговых входных контакта. (Еще четыре доступны, но не выведены.) Устройство настолько миниатюризировано, что не имеет ни USB-разъема, ни регулятора мощности ни даже гребёнки для подключения периферии. Программирование осуществляется с помощью внешнего USB или RS232 через TTL последовательный адаптер.

Arduino Micro

Контроллер Arduino Micro

полностью соответствует своему названию; это одна из самых маленьких плат из линейки Arduino. Несмотря на свой небольшой размер, она все же имеет большое количество входных и выходных выводов; она имеет 20 цифровых каналов ввода / вывода, из которых 7 могут быть использованы как выходы ШИМ. Она также имеет 12 аналоговых входов. Микро не спроектирована, для наращивания подсоединенными шилдами, но у её такое расположение выводов гребенок, что её удобно размещать непосредственно на макетной плате.

Arduino Due

Контроллер Arduino Due отличается от всех Arduino тем, что он спроецирован не на базе AVR, а на чипе Atmel SAM3X8E архитектуры ARM Cortex-M3. Этот передовой микроконтроллер работает на частоте 84 МГц и является полноценным 32-разрядным устройтвом. Он имеет большое количество дискретных и аналоговых входов / выходов: 54 цифровых канала (12, из которых могут быть использованы в качестве ШИМ) и 12 аналоговых входов. На плате предусмотрены 4 UART, порт SPI, интерфейс Twin-Wire, а так же включает в себя порт JTAG.

Платформа Arduino Due имеет более высокие требования пи питанию и питается от 3,3 В. Будьте осторожны, чтобы не подать 5 В на любой из выводов: в противном случае, вы можете спалить плату. При выборе шилда расширения для Due, убедитесь, что он поддерживает питание 3.3 В. 

Arduino Due невероятно мощный Arduino. Due имеет на борту 512 КБ флэш-памяти и в суммарно 96 КБ SRAM. Он может обрабатывать крупнейшие программы на высокой скорости. Если вам нужны мощные вычислительные процессы, то эта Ардуина для вас.

LilyPad Arduino

LilyPad Arduino — довольно интересное устройство. Оно выпадает из привычных стереотипов об обычном Arduino, потому что имеет не прямоугольную, а круглую форму. Во-вторых, оно не поддерживает механические соединения с шилдами. Оно предназначено для, небольших автономных устройство. Круглая форма продиктовала то, что разъемы равномерно распределены по окружности, и его небольшой размер (2 дюйма в диаметре) делает его идеальным для переносных устройств. Это устройство легко спрятать, и несколько производителей разработали устройства, специально для LilyPad: экраны, датчики света, даже коробки для батарей питания, которые могут быть зашиты в ткань. Для того, чтобы сделать LilyPad как можно меньше и как можно легче, на сколько возможно, были принесены некоторые жертвы. У LilyPad нет регулятора напряжения на борту, так что ему для питания будет необходимо обеспечить по крайней мере 2,7 вольт, и не более 5,5 вольт; в противном случае, будет пшик.

Arduino Pro

Контроллер Arduino Pro заявлен в двух версиях, на основе ATmega168 и ATmega328. Версия 168 работает на 3,3 В с тактовой частотой 8 МГц, а версия 328 работает на 5 В и частоте 16 МГц. Обе версии имеют 14 цифровых входов / выходов и 6 аналоговых входов. Контроллер имеет разъем питания батареи JST, переключатель для выбора между режимами питания, и пространство, отведенное для модуля питания, при необходимости. На плате нет порта USB, но вместо него используется кабель FTDI для программирования.

Arduino Pro отличается от большинства других Arduino тем, что являясь отдельной самостоятельной макетной платой, он также может быть использован для расширения функционала других контроллеров в качестве шилда. Он выпускается без портов и привычных гребёнок. Все цифровые и аналоговые входы и выходы расположены по краям платы, сохраняя стандартное для Ардуино расположение отверстий, готовых к припаиванию гребенок или проводов, по необходимости. Вместо использования для прототипирования новых проектов, Arduino Pro больше направлен на окончательный монтаж в готовой продукции. Arduino Pro не разрабатывался самим Arduino, а был разработан и запущен в производство фирмой SparkFun Electronics.

Arduino Robot

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

Управляющая плата контролируется чипом ATmega32u4, с 32 КБ флэш, 2,5 КБ SRAM и 1 Кбайт EEPROM памяти. Она также имеет внешнее I2C EEPROM устройство, обеспечивая больше места для хранения информации. На борту есть компас, динамик, три светодиода, клавиатура на пять кнопок и ЖК-экран. Она также имеет три вывода под пайку для внешнего I2C устройства. Она также имеет отдельные каналы ввода / вывода, с пятью цифровыми входами / выходами, шестью ШИМ и четырьмя аналоговыми входами. Оставлено место для восьми аналоговых входов (для датчиков расстояния, ультразвуковых датчиков или других) и шести дискретных входов / выходов для других устройств (четыре из которых могут быть использованы для аналогового входа).

Плата двигателей полностью независима, основана на ATmega32u4, тоесть на том же чипе что и плата управления. Плата двигателей имеет в своем составе два двигателя с колесами, запитанных отдельно, пять ИК датчиков, I2C и SPI порты. Она также содержит батарейный блок, в который вставляется четыре аккумуляторные батареи типа АА, а так же содержит гнездо для подзарядки аккумуляторов на борту. Плата может быть также запитана от разъема USB, но в этой конфигурации, из каких-то соображений безопасности, двигатели при этом отключаются.

Arduino Esplora

Arduino Esplora это довольно странное устройство. Большинство плат Arduino предназначены для стационарного размещения на столе или в щите, но Esplora предназначен для держания руками. Основан ATmega32u4, геометрически не совместим с шилдами и не имеет на борту контактов для входов и выходов. Вместо этого, он выглядит и ощущается в руках как геймпад; у него есть курсор под большой палец в виде четырех дискретных кнопок, один аналоговый джойстик, а так же линейный потенциометр. В качестве обратной связи предусмотрены зуммер и трехцветный светодиод. Esplora также имеет следующие датчики: она имеет на борту микрофон, датчик температуры, разъем для подключения ЖК-экрана и трех-осевой акселерометр. У Esplora 32 Кб флэш памяти; 4 Кб используются загрузчиком. Так же имеется 2,5 Кб SRAM и 1 Кбайт EEPROM памяти. Для совместимости Esplora c другими контроллерами, предусмотрены 4 разъёма TinkerKit: с двумя входами и двумя выходами.

Arduino Yún

Платформа Arduino Yun базируется на чипе ATmega32u4, но он также имеет Atheros AR9331 на одной плате. Процессор Atheros имеет полный дистрибутив Linux, на основе OpenWRT, операционной системы распространенной в беспроводных маршрутизаторах на Linux. Плата Arduino Yun имеет встроенный Ethernet и WiFi, а также слот для micro-SD. Юн отличается от других Arduino и шилдов тем, что у него серьезная сетевая функциональность; Arduino может посылать команды в OpenWRT, и дальше продолжать обработку своего скетча. Оба процессора работают самостоятельно, существующая библиотека обмена данными облегчает коммуникацию между двумя процессорами.

Arduino Tre

Arduino Tre только планируется запустить в производство но обещает стать феноменальным монстром в сфере любительских контроллеров. До этого момента, самым быстрым Arduino был Due, на основе ARM-совместимого микроконтроллера. Tre, созданный Arduino и BeagleBoard, сочетает в себе мощность полного компьютера с гибкостью каналов ввода / вывода платформ Arduino. Tre будет иметь процессор класса Cortex-A8 под названием Sitara AM335X, работающий на частоте 1 ГГц. Этот процессор имеет доступ к 512 Мб оперативной памяти и имеет HDMI порт способный отображать Full HD (1920 х 1080). Вся эта мощь сопряжена с интерфейсом разработчика с помощью Atmel ATmega32u4 используя среду программирования Arduino, столь полюбившуюся фанатам.

Arduino Zero

Arduino Zero это новый Arduino на чипе Atmel SAM D21 микроконтроллера. У него 256 Кб флэш-памяти, 32 Кб оперативной памяти, и работает он на частоте 48 МГц. Arduino Zero предназначен для удовлетворения будущих потребностей сообщества разработчиков, предлагая дизайн, который одновременно является мощным, надежным, и достаточно гибким, который будет востребован в робототехнике и переносных проектах.

geekmatic.in.ua

Что такое Arduino?||Arduino-diy.com

Arduino — это open-source платформа, которая состоит из двух основных частей: самой платы (часто называемой микроконтроллер) и программного обеспечения (специальной оболочки для программирования платы) или IDE (Integrated Development Environment).

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

Общая информация об Arduino

Arduino обрели особенно сильную популярность среди людей, которые только начинают заниматься электроникой. На то есть несколько причин. В отличие от большинства предшественников, Arduino не требует дополнительного оборудования (программатора) для загрузки кода на плату — используется простой USB-кабель. Оболочка для программирования — Arduino IDE использует упрощенную версию C++, что облегчает процесс обучения для новичков. Кроме того, Arduino использует стандартизированный форм фактор для большинства своих плат, благодаря чему появился целый комплект дополнительных «шилдов».

Arduino Uno показана на рисунке ниже:

Arduino Uno — одна из самых популярных плат в линейке и является отличным выбором для начинающих. Технические характеристики этой модели будут рассмотрены ниже.

Оболочка Arduino IDE:

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

В этой статье мы остановимся на следующих основных моментах:

  • Какие проекты можно реализовать с Arduino
  • Основные узлы плат Arduino
  • Номенклатура самых удачных моделей Arduino
  • Дополнительные (периферийные) устройства для Arduino

Рекомендуем также дополнительно почитать

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

Зачем вам Arduino?

Arduino разработана для… Всех. Так, во всяком случае, заявлено на официальном сайте компании. Список примерно такой: артисты, дизайнеры, хакеры, программисты, инженеры, для всех, кто интересуется разработкой и воплощением интерактивных проектов. Arduino может взаимодействовать с кнопками, светодиодами, двигателями, динамиками, GPS-модулями, температуру, камерами, интернетом и даже вашим смартфоном или телевизором! Подобная гибкость в сочетании с тем, что софт от Arduino — совершенно бесплатный, сами платы достаточно дешевые и легки в осваивании привела к появлению огромного сообщества поклонников данной платформы, которые выкладывают собственные куски кода, библиотеки и инструкции для огромного количества проектов с использованием Arduino.

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

И это только вершина айсберга. Если вам интересно взглянуть на Arduino проекты в действии, вот несколько ссылок на хорошие ресурсы (на английском языке):

Из чего состоит плата Arduino?

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

Разъем питания (USB / разъем для адаптера)

Каждая плата Arduino должна подключаться к источнику питания. Arduino Uno может запитываться от USB кабеля от вашего персонального компьютера Или от отдельного адаптера, который подключается к предусмотренному на плате разъему. На рисунке соединение через USB отмечено (1), а разъем для внешнего источника питания — (2).

USB также используется для загрузки вашей программы (скетча) на плату.

Примечание! Не используйте источник питания с напряжением на выходе более 20 вольт. Это может привести к тому, что ваша плата перегорит. Рекомендуемое напряжение питания для Arduino — от 6 до 12 вольт.

Разъемы (пины) (5V, 3.3V, GND, Analog, Digital, PWM, AREF)

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

  • GND (3): сокращение от ‘Ground’ — ‘Земля’. На платах несколько пинов GND, каждый из которых может использоваться для заземления вашей электрической цепи.
  • 5V (4) и 3.3V (5): как вы могли уже догадаться — питы, которые на выходе обеспечивают питание 5 вольт и 3.3 вольт соответственно. Большинство компонентов, которые подключаются к Arduino, благополучно питаются именно от 5 или 3.3 вольт.
  • Analog (6): на участке, который подписан ‘Analog In’ (от A0 до A5 на Arduino Uno) расположены аналоговые входы. Эти пины позволяют считывать сигналы от аналоговых датчиков (например, датчик температуры) и преобразовывать их в цифровые значения, которыми мы в дальнейшем оперируем.
  • Digital (7): напротив аналоговых пинов находятся цифровые пины (от 0 до 13 на Arduino Uno). Эти пины используются для цифровых входящих (input) сигналов (например, нажатие кнопки) и для генерации цифровых исходящих (output) сигналов (например, питание светодиода).
  • PWM (8): вы наверное заметили знак (~) рядом с некоторыми цифровыми пинами (3, 5, 6, 9, 10, и 11 на UNO). Эти пины работаю как в обычном цифровом режиме, так и в режиме ШИМ-модуляции (PWM). Если объяснить вкратце — эти пины могут имитировать аналоговый выходной сигнал (например, для постепенного затухания светодиода).
  • AREF (9): Этот пин используется достаточно редко. В некоторых случаях это подключают в схему для установки максимального значения напряжения на аналоговых входах (от 0 до 5 вольт).

Кнопка сброса (Reset Button)

Как и на оригинальных Nintendo, на Arduino есть кнопка сброса (reset) (10). При нажатии на нее контакт сброса замыкается с землей и код, загруженный на Arduino начинает отрабатывать заново. Полезная опция, если ваш код отрабатывает без повторов, но вы хотите протестить его работу.

Индикатор питания (Power LED)

Немного справа и ниже надписи “UNO” установлен светодиод, подписанный «on» (11). Этот светодиод должен загореться, когда вы подключили Arduino к источнику питания. Если светодиод не загорелся — плохой знак ;).

Светодиоды TX и RX

TX — сокращение от transmit (передача), RX — от receive (прием). Эти условные обозначения часто встречаются в электронике для обозначения контактов, которые отвечают за серийный обмен данным. На Arduino Uno эти контакты встречаются два раза на цифровых пинах 0 и 1 и в качестве светодиодов TX и RX (12). Эти светодиоды позволяют визуально отслеживать, передает или принимает данные Arduino (например, при загрузке программы на плату).

Главная интегральная микросхема (IC)

Черная деталь с металлическими коннекторами с двух сторон это интегральная микросхема, микропроцессор (IC или Integrated Circuit) (13). Можете смело считать, что это «мозги» нашей Arduino. Этот чип разный в разных моделях Arduino, но обычно он относится к линейке микропроцессоров ATmega от компании ATMEL. Это может оказаться важной информацией для загрузки скетча на плату. Модель интегральной микросхемы обычно указана на ее верхней корпусной части. Для дополнительной информации о вашей микросхеме стоит обратиться к ее даташиту.

Регулятор напряжения

Регулятор напряжения (14) is выполняет функцию, указанную в названии — контролирует напряжение, которое поступает на плату Arduino. Можете его себе представить как охранника, который не пропускает слишком большое напряжение на плату во избежание ее повреждений. Конечно же, у регулятора есть свой предел. Так что питать Arduino напряжением больше 20 вольт нельзя.

Номенклатура плат Arduino

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

Arduino Uno (R3)

Arduino Uno — отличный выбор для начинающих. Очень сбалансированная плата, на которой есть, все, что вам может понадобиться и минимум лишнего. На плате 14 цифровых пинов, которые работаю на вход и на выход (6 из них поддерживают ШИМ-модуляцию), 6 аналоговых входов. Подключается плата с помощью USB. Есть джек для отдельного источника питания, кнопка сброса и т.п. Для начала работы с микроконтроллером достаточно подключить плату к компьютеру с помощью USB кабеля.

LilyPad Arduino

Основная плата в линейки LilyPad Arduino! LilyPad разработана в первую очередь для использования на одежде. Пины соединяются с периферийными устройствами с помощью токопроводящей нити. Есть куча дополнительных плат расширений для LilyPad. Большинство из них спроектированы таким образом, что не боятся влаги.

RedBoard

Разработка SparkFun, которая программируется с помощью USB Mini-B кабеля в оболочке Arduino IDE. Основными преимуществами производитель называет: стабильность работы под ОС Windows 8 благодаря драйверам с необходимой цифровой подписью. На плате используется чип USB/FTDI, который меньше по габаритам по сравнению с чипом на Arduino UNO. Для заливки скетча на плату в IDE выбирается модель Arduino UNO. Регулятор напряжения рассчитан на питание в диапазоне от 7 до 15 вольт.

Arduino Mega (R3)

Arduino Mega — словно старший брат Uno. На плате много (54!) цифровых входов/выходов (14 из них поддерживают ШИМ-модуляцию). Благодаря большому количеству пинов, плата используется для комплексных проектов, в которых подключается большое количество периферии (например, сведодиодов или кнопок). Подключение к компьютеру реализуется таким же кабелем как и на Arduino Uno. Естественно, предусмотрен джек для адаптера.

Arduino Leonardo

Leonardo — первая разработка Arduino, в которой используется один микроконтроллер со встроенным USB. Это значит, что плата становится проще и дешевле. Так как плата подключается непосредственно к USB без конвертера, есть библиотеки, которые позволяют эмулировать компьютерную мышь, клавиатуру и многое другое!

Arduino Pro Mini

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

Дополнительные устройства для Arduino

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

Датчики (сенсоры)

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

Шилды (Shields) для Arduino

Помимо всего прочего, есть такая замечательная вещь как шилды — по сути это отдельная электросхема, которая имеет коннекторы и садится на вашу плату Arduino и обеспечивает упрощенное управление двигателями (Motor шилд), подключение к интернету (Ethernet шилд), радиосвязь, управление жидкокристаллическими и сенсорными экранами и т.д.

Некоторые из шилдов показаны на рисунке ниже:

Оставляйте Ваши комментарии, вопросы и делитесь личным опытом ниже. В дискуссии часто рождаются новые идеи и проекты!

arduino-diy.com

Изменение частоты ШИМ (PWM) Ардуино — РоботоТехника на Ардуино

Широтно-импульсная модуляция Arduino выполняется с частотой 488,28 Гц с помощью функции analogWrite на аналоговых выводах, но частоту ШИМ можно изменить.

Широтно-импульсная модуляция (ШИМ) Arduino UNO и NANO работает на аналоговых выходах 3, 5, 6, 9, 10, 11 с частотой 488,28 Гц. С помощью функции analogWrite частота ШИМ изменяется в диапазоне 0 до 255 и соответствует коэффициенту заполнения импульса от 0 до 100 %. Для многих устройств частота PWM Arduino NANO слишком мала, поэтому ее требуется увеличить. Рассмотрим, как это правильно сделать.

Широтно-импульсная модуляция Arduino

ШИМ, по-английски Pulse-Width Modulation (PWM) — это управление мощностью на нагрузке с помощью изменения скважности (ширины) импульсов при постоянной частоте и амплитуде сигнала. На следующем графике видно, что при разных значениях в функции analogWrite, амплитуда импульсов остается постоянной, но меняется ширина импульсов. Мощность сигнала определяет коэффициент заполнения импульса.

График. Параметры сигнала, коэффициент заполнения ШИМ

Можно выделить две области применения широтно-импульсной модуляции:

1. PWM используется в источниках питания, регуляторах мощности и т.д. Применение ШИМ на Arduino Nano позволяет значительно упростить управление яркостью источников света (светодиодов, LED-ленты) и скоростью вращения двигателей.

2. PWM используется для получения аналогового сигнала. Цифро-аналоговый преобразователь (ЦАП) на Ардуино прост в реализации, так как требует минимума радиоэлементов — достаточно одной RC цепочки из резистора и конденсатора.

Изменение частоты ШИМ Ардуино (разрядности)

Платы Arduino Uno и Arduino Nano на базе ATmega168/328 имеют 6 аппаратных ШИМ модуляторов на аналоговых портах 3, 5, 6, 9, 10, 11. Управление ШИМ сигналом осуществляется с помощью функции analogWrite, которая генерирует на выходе аналоговый сигнал и задает коэффициент заполнения импульса. Arduino устанавливает на выводах частоту 488,28 Гц и разрешение 8 разрядов (от 0 до 255).

Схема. Широтно-импульсная модуляция для чайников

В Arduino на базе ATmega168/328 для ШИМ используются три таймера:

Таймер 0 — выводы 5 и 6
Таймер 1 — выводы 9 и 10
Таймер 2 — выводы 3 и 11

ШИМ Ардуино определяется интегральными компонентами, называемыми таймерами. Каждый таймер в платах Arduino Uno и Nano на базе микроконтроллера ATmega168/328 имеет по два канала, подключенных к выходам. Для изменения частоты PWM сигнала требуется изменение таймера, к которому он подключается. При этом PWM изменится и на аналоговых выходах, подключенных параллельно к этому же таймеру.

Как увеличить частоту и разрядность ШИМ Ардуино

Не существует способа изменить частоту ШИМ Arduino без прямого управления памятью на низком уровне. Рассмотрим далее, как изменить режим работы таймера, чтобы увеличить частоту (frequency) ШИМ Ардуино. Таймер 0 используется для расчета времени, т.е. функции delay и millis. Увеличение частоты на Таймер 0 приведет к нарушению функций сохранения времени, которые могут использоваться в скетче.

Чтобы увеличить разрядность Ардуино на 9 и 10 аналоговом выходе, изменим частоту Таймера 1 без библиотеки. Максимальная частота PWM может достигать на платах Ардуино Уно и Нано — 62 500 Гц. Для этого в процедуре void setup() необходимо добавить соответствующую команду из таблицы, которая приведена далее.

РазрешениеЧастота ШИМКоманды установки режима
8 бит62 500 ГцTCCR1A = TCCR1A & 0xe0 | 1;
TCCR1B = TCCR1B & 0xe0 | 0x09;
7 812,5 ГцTCCR1A = TCCR1A & 0xe0 | 1;
TCCR1B = TCCR1B & 0xe0 | 0x0a;
976,56 ГцTCCR1A = TCCR1A & 0xe0 | 1;
TCCR1B = TCCR1B & 0xe0 | 0x0b;
244,14 ГцTCCR1A = TCCR1A & 0xe0 | 1;
TCCR1B = TCCR1B & 0xe0 | 0x0c;
61,04 ГцTCCR1A = TCCR1A & 0xe0 | 1;
TCCR1B = TCCR1B & 0xe0 | 0x0d;

Максимальная частота ШИМ Ардуино (Arduino PWM Frequency) — 62 500 Гц.

xn--18-6kcdusowgbt1a4b.xn--p1ai

Что вообще такое Arduino?

Стандартная плата Arduino с базовым набором компонентов.

Здравствуйте.

В этой статье просто познавательная информация про Arduino. Дело в том, что на нашем сайте будут регулярно появляться статьи связанные с платой Arduino. И на случай, если вы новичок и не знаете что это такое, то здесь это объясняется. Arduino — это что то вроде маленького компьютера. Плата Arduino сейчас завоевала большую популярность среди разработок компьютеров, робототехники, различных электронных игрушек и т. д. Итак, что такое Arduino.

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

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

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

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

Чтобы было удобно работать с Arduino имеется бесплатная официальная среда программирования «Arduino IDE» (вот ссылка http://arduino.cc/en/Main/Software), которая специально создана для таких операционных систем как Windows, Mac OS и Linux.

При помощи неё загрузка новой программы в Arduino становится очень простым делом, достаточно просто кликнуть один раз, нужно всего лишь подключить плату к компьютеру через вход USB, этот вариант самый простой и удобный. Есть еще варианты работы и через Visual Studio, Eclipse, другие IDE или командную строку.

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

Принцип «бутерброда»

Есть ещё одна отличительная особенность Arduino — это наличие плат расширения, они называются shields либо просто «шилдов». Это дополнительные платы, которые устанавливаются подобно слоям бутерброда поверх Arduino, для того чтобы давать ему новые возможности. Так к примеру, имеются платы расширения, чтобы подключать к локальной сети и интернету — Ethernet Shield

Чтобы управлять мощными двигателями — Motor Shield

Чтобы получать координаты и временя со спутников GPS — модуль GPS

И многое другое.

Arduino — это так сказать сердце конструктора, в нём не имеется конечного, определённого набора элементов, и оно не имеет ограничений в разнообразии всего того, что возможно собирать. Всё ограничивается только вашим воображением. Это есть новый мир, отличное увлечение и очень хороший подарок. Уже  десятки тысяч человек в мире убедились в этом.

С чего же начать?

В первую очередь вам будет нужен конечно же сам Arduino. Arduino Uno — это самая известная модель в настоящеё время.

Для начальных работ её вполне хватит. Но если вы хотите брать как говорится «на вырост», то можете использовать более мощную версию — Aruino Mega.

Ещё вам будет нужно:

Кабель — USB

Макетная доска

Перемычки

Резисторы, транзисторы… и ещё десяток подручных деталей. Для того, чтобы не мучить себя в поисках нужного, можете взять всё, что вам понадобится в  готовом наборе, которые продаются в специализированных магазинах.

Вот и всё. Всего вам доброго. Удачи.

payaem.ru

Что такое Arduino

Сейчас в мире людей, увлечённых техникой, наблюдается настоящая «ардуиномания». Этому маленькому загадочному устройству посвящены тысячи статей, сотни блогов и форумов. Так что же это такое — Arduino? И почему он обрёл столь большую популярность? Arduino — торговая марка аппаратно-программных средств для построения простых систем автоматики и робототехники, ориентированная на непрофессиональных пользователей. Arduino — это электронный конструктор и удобная платформа быстрой разработки электронных устройств для новичков и профессионалов. Платформа пользуется огромной популярностью во всем мире благодаря удобству и простоте языка программирования, а также открытой архитектуре и программному коду. Устройство программируется через USB без использования программаторов.


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

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

С 2008 года в компании-разработчике начался раскол, выразившийся в существовании двух независимых ветвей развития и продаж под одной торговой маркой: одна на сайте arduino.cc, другая на arduino.org. Докризисные изделия на обоих сайтах продаются под одинаковыми названиями. Набор новых изделий на сайтах различается. Также существует две ветви Arduino IDE, поддерживающие разный набор плат и библиотек. Одинаковые названия и пересекающиеся номера версий IDE вносят путаницу. Тем не менее, говоря об Ардуино, обычно подразумевают первоначальную ветвь проекта на сайте arduino.cc.

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

Аппаратная часть

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

Конструктив

Arduino и Arduino-совместимые платы спроектированы таким образом, чтобы их можно было при необходимости расширять, добавляя в устройство новые компоненты. Эти платы расширений подключаются к Arduino посредством установленных на них штыревых разъёмов. Существует ряд плат с унифицированным конструктивом, допускающим конструктивно жесткое соединение процессорной платы и плат расширения в стопку через штыревые линейки. Кроме того, выпускаются платы уменьшенных габаритов (например, Nano, Lilypad) и специальных конструктивов для задач робототехники. Независимыми производителями также выпускается большая гамма всевозможных датчиков и исполнительных устройств, в той или иной степени совместимых с базовым конструктивом Ардуино.

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

Миниатюрные клоны Arduino

Помимо стандартных конструктивов Ардуино сторонние разработчики создали множество миниатюрных клонов, сохранив только архитектурную и программную совместимость. Среди этих клонов выделяется линейка продуктов Microduino. Линейка содержит полноценный набор конструктивно совместимых процессорных модулей, модулей связи, сенсоров и исполнительных устройств, практически не уступая ассортименту классических модулей Arduino. Как и Arduino, сборка плат производится в стопки.


Самый миниатюрный клон был выпущен под торговой маркой Femtoduino. Его размеры всего 15*20 мм, включая разъем micro USB, стабилизатор напряжения и полный комплект ввода-вывода Arduino UNO. Той же компанией выпущен самый нафаршированный миниатюрный клон под торговой маркой IMUduino. Это клон Arduino Leonardo с поддержкой USB Host (клавиатура и мышь), Bluetooth 4 Low Energy, шестиосный гироскоп/акселерометр, трехосный магнитометр (компас), барометр. Размер устройства 16*40 мм. К сожалению, проект на данный момент не предлагает совместимых по цоколевке плат расширения.

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

Микроконтроллеры для Arduino отличаются наличием предварительно прошитого в них загрузчика (bootloader). С помощью этого загрузчика пользователь загружает свою программу в микроконтроллер без использования традиционных отдельных аппаратных программаторов. Загрузчик соединяется с компьютером через интерфейс USB (если он есть на плате) или с помощью отдельного переходника UART-USB. Поддержка загрузчика встроена в Arduino IDE и выполняется в один щелчок мыши.

На случай затирания загрузчика или покупки микроконтроллера без загрузчика разработчики предоставляют возможность прошить загрузчик в микроконтроллер самостоятельно. Для этого в Arduino IDE встроена поддержка нескольких популярных дешевых программаторов, а большинство плат Arduino имеет штыревой разъем для внутрисхемного программирования (ICSP для AVR, JTAG для ARM).

В Arduino IDE от компании, базирующейся на сайте arduino.cc, встроена возможность создания своих программно-аппаратных платформ. Этой возможностью пользуются сторонние компании, добавляющие в Arduino IDE свои наборы плат и компиляторов-загрузчиков к ним. Компания на сайте arduino.org не поддерживает такую возможность.

AVR

В линейке устройств Arduino в основном применяются микроконтроллеры Atmel AVR: ATmega328, ATmega168, ATmega2560, ATmega32U4, ATTiny85 с частотой тактирования 16 или 8 МГц. В старых изделиях применялись ATmega8, ATmega1280 и другие.

ARM Cortex M

Есть также платы на процессоре ARM Cortex M.

ESP8266

Сторонние разработчики портировали в Arduino поддержку популярного Wi-Fi микроконтроллера ESP8266. Теперь компилировать и загружать прошивку для ESP8266 со своими скетчами и поддержкой Wi-Fi можно прямо из Arduino IDE, получая одноплатную схему с поддержкой сети Wi-Fi. Подробное русскоязычное описание процесса установки и доступного API здесь, пример работы здесь.

Intel x86

В рамках сотрудничества со сторонними производителями в Arduino IDE была включена поддержка некоторых аппаратных средств Intel x86. Intel Galileo (процессор Intel Quark X1000 400 МГц), Intel Edison и Arduino 101 — Arduino-совместимые платы на Intel x86 архитектуре. Платы механически и электрически совместимы с периферийными платами Ардуино. Платы функционируют под собственной ОС Linux, поверх которой работает приложение, позволяющее загружать и исполнять скетчи Arduino.

Периферия

Порты ввода-вывода микроконтроллеров оформлены в виде штыревых линеек. Никакого буферизирования, защиты, конвертации уровней или подтяжек, как правило, нет. Микроконтроллеры питаются от 5В или 3,3В, в зависимости от модели платы. Соответственно порты имеют такой же размах допустимых входных и выходных напряжений. Программисту доступны некоторые специальные возможности портов ввода-вывода микроконтроллеров, например широтно-импульсная модуляция , аналогово-цифровой преобразователь, интерфейсы UART, SPI, I2C. Количество и возможности портов ввода-вывода определяются конкретным вариантом микропроцессорной платы.

Помимо портов на платах микроконтроллеров иногда устанавливается периферия в виде интерфейсов USB или Ethernet. Опциональный набор внешней периферии на модулях расширения включает в себя:

  • USB Device (чаще всего как виртуальный COM порт через FTDI FT232, имеются также версии с эмуляцией USB HID Class клавиатур и мышек).
  • Проводной и беспроводной Ethernet как на основной плате так и на платах расширения.
  • Модуль GSM и другие беспроводные интерфейсы.
  • USB Host.
  • SD card.
  • Модуль управления низковольтным мотором на базе L298. Поддерживаются шаговый и коллекторный двигатели с напряжением до 12В и током до 2А на канал. Могут подключаться также реле, электромагниты и т. п. Модуль не имеет гальванической развязки.
  • Графический ЖКИ индикатор.
  • Модуль с макетным полем.

 

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

Характеристики популярных микроконтроллерных плат проекта Ардуино (таблица)














ArduinoМКНапряжение питанияФлеш-память,
КБ
EEPROM,
КБ
SRAM,
КБ
Двоичные
входы/выходы
…c
ШИМ
Аналоговые
входы
USB-интерфейсПрочие
интерфейсы
Размеры,
мм
DueAtmel SAM3X8E ARM Cortex-M33.3 В512Нет256541212 + 2ЦАПATmega16U2CAN, JTAG, I2C101,6 × 53.3
ADKATmega25605 В25648541416ATmega8U2MAX3421E
USB хост
101,6 × 53.3
BT (Bluetooth)ATmega3285 В32121446НетBluegiga WT11 Bluetooth 
DiecimilaATmega1685 В160.511466FTDI 68,6 × 53.3
DuemilanoveATmega168/328P5 В16/320.5/11/21466FTDI 68,6 × 53.3
EthernetATmega3285 В32121446НетWiznet Ethernet
MicroSD
 
FioATmega328P3.3 В32121468Нет 40,6 × 27.9
LeonardoAtmega32u45 В321214612Atmega32u4 68,6 × 53.3
LilyPadATmega168V или ATmega328V2.7-5.5 В160.511466Нет 50 ⌀
MegaATmega12805 В12848541416FTDI 101,6 × 53.3
Mega2560ATmega25605 В25648541416ATmega8U2 ATmega16U2 101,6 × 53.3
NanoATmega168 или ATmega3285 В16/320.5/11/21468FTDI 43 × 18
UnoATmega328P5 В32121466ATmega8U2 ATmega16U2 68,6 × 53.3

Язык программирования

Программирование ведется целиком через собственную программную оболочку (IDE), бесплатно доступную на сайте Arduino. В этой оболочке имеется текстовый редактор, менеджер проектов, препроцессор, компилятор и инструменты для загрузки программы в микроконтроллер. Оболочка написана на Java на основе проекта Processing, работает под Windows, Mac OS X и Linux.

Язык программирования Arduino является стандартным C++ (используется компилятор AVR-GCC) с некоторыми особенностями, облегчающими новичкам написание первой работающей программы.


  • Программы, написанные программистом Arduino называются наброски (или иногда скетчи) и сохраняются в файлах с расширением .ino. Эти файлы перед компиляцией обрабатываются препроцессором Ардуино. Также существует возможность создавать и подключать к проекту стандартные файлы C++.
  • Обязательную в C++ функцию main() препроцессор Arduino создает сам, вставляя туда необходимые «черновые» действия.
  • Программист должен написать две обязательные для Arduino функции setup() и loop(). Первая вызывается однократно при старте, вторая выполняется в бесконечном цикле.
  • В текст своей программы (скетча) программист не обязан вставлять заголовочные файлы используемых стандартных библиотек. Эти заголовочные файлы добавит препроцессор Arduino в соответствии с конфигурацией проекта. Однако пользовательские библиотеки нужно указывать.
  • Менеджер проекта Arduino IDE имеет нестандартный механизм добавления библиотек. Библиотеки в виде исходных текстов на стандартном C++ добавляются в специальную папку в рабочем каталоге IDE. При этом название библиотеки добавляется в список библиотек в меню IDE. Программист отмечает нужные библиотеки и они вносятся в список компиляции.
  • Arduino IDE не предлагает никаких настроек компилятора и минимизирует другие настройки, что упрощает начало работы для новичков и уменьшает риск возникновения проблем.

Простейшая Arduino-программа состоит из двух функций:


  • setup(): функция вызывается однократно при старте микроконтроллера.
  • loop(): функция вызывается после setup () в бесконечном цикле все время работы микроконтроллера.

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

«Ардуино» имеет одно преимущество – ему не нужен программатор. Всё сделано так, чтобы программирование Arduino для начинающих не составляло труда. Написанный код можно загрузить в МК посредством USB-шнура. Достигается это преимущество не каким-то встроенным уже заранее программатором, а спецпрошивкой – бутлоадером. Бутлоадер является специальной программкой, которая запускается сразу после подключения и слушает, будут ли какие-то команды, прошивать ли кристалл, есть ли проекты Arduino или нет. Из использования бутлоадера выплывает несколько очень привлекательных плюсов:

Использование только одного канала связи, что не требует дополнительных затрат по времени. Так, проекты Arduino не требуют, чтобы вы подключали множество различных проводов, и возникала путаница при их использовании. Для успешной работы хватает одного USB-шнура.

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

Пользователь может самостоятельно запрограммировать загрузчик в чистый микроконтроллер. Для этого в IDE интегрирована поддержка программатора на основе проекта AVRDude. Поддерживается несколько типов популярных дешёвых программаторов.

Почему Arduino?

Существует множество микроконтроллеров и платформ для осуществления «physical computing».  Parallax Basic Stamp, Netmedia’s BX-24, Phidgets, MIT’s Handyboard и многие другие предлагают схожую функциональность. Все эти устройства объединяют разрозненную информацию о программировании и заключают ее в простую в использовании сборку.  Arduino, в свою очередь, тоже упрощает процесс работы с микроконтроллерами, однако имеет ряд преимуществ перед другими устройствами для преподавателей, студентов и любителей:

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

Кросс-платформенность – программное обеспечение Arduino работает под ОС Windows, Macintosh OSX и Linux. Большинство микроконтроллеров ограничивается ОС Windows.

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

Программное обеспечение с возможностью расширения и открытым исходным текстом – ПО Arduino выпускается как инструмент, который может быть дополнен опытными пользователями. Язык может дополняться библиотеками C++. Пользователи, желающие понять технические нюансы, имеют возможность перейти на язык AVR C. Соответственно, имеется возможность добавить код из среды AVR-C в программу Arduino.

Аппаратные средства с возможностью расширения и открытыми принципиальными схемами – микроконтроллеры ATMEGA8 и ATMEGA168 являются основой Arduino.  Схемы модулей выпускаются с лицензией Creative Commons, а значит, опытные инженеры имеют возможность создания собственных версий модулей, расширяя и дополняя их. Даже обычные пользователи могут разработать опытные образцы с целью экономии средств и понимания работы.

 

micpic.ru

Ардуино модули: виды, описание, примеры датчиков

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

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

Зачем нужен модуль для Ардуино

Для начала стоит понять, зачем вообще подобная модульность необходима. Ведь, казалось бы, Ардуино – это всего лишь микроконтроллер, к которому можно приспособить любой сторонний датчик. Но на деле всё не так просто, как раз из-за программной части и других особенностей системы, поэтому, для расширения функционала, и присутствуют специальные Аrduino модули, позволяющие приспособить МК к любым потребностям человека, который его использует. Это основная функция, объясняющая необходимость модульности, помимо неё, присутствуют и другие причины такого решения:

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

Виды

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

  1. Датчики. Разнообразные системы или контроллеры, позволяющие считывать, отправлять и обрабатывать информацию. Хотя последние иногда относят ко второму классу модулей, но из-за тесной связи с устройствами ввода-вывода их лучше причислить именно к датчикам, тем более, зачастую они выполняют сразу две функции. Все эти устройства направленны на расширение аппаратного функционала системы, например, чтобы дать возможность Ардуино считывать расстояние до объекта или влажность воздуха, что просто необходимо для многих систем.
  2. Модули, расширяющие вычислительные мощности проекта. Это различные карты памяти, дополнительные буферы для проведения операций и вспомогательные многопоточные процессоры. К ним же можно отнести вариации самого микроконтроллера, характеристики которого варьируются от версии к версии. Они направлены именно на улучшение возможностей программной части системы, например, дополнительные карты памяти позволяют хранить больше информации в различных кодеках, чтобы воспроизводить какие-то аудиодорожки. Особенно необходимы при проектировании сложных систем с нейросетями или в робототехнике, в которой также используется Ардуино.

Сами же датчики отдельно делятся на:

  1. Устройства ввода или получения информации. Это различные сканеры, которые позволяют получить данные об окружающей среде, будь то уровень освещённости или влажности воздуха. С их помощью возможно ввести различные переменные, в зависимости от которых система будет определять свои дальнейшие действия. Являются базой для большинства систем, и без них невозможно реализовать любой смарт-девайс. Простейшим примером будет всё тот же датчик расстояния, хотя и их существует несколько видов.
  2. Устройства обработки информации. Зачастую уже встроены в предыдущий тип, из-за чего считаются комбинированными, но нередко такие модули устанавливаются и отдельно. Имеют небольшой объем памяти или вовсе продаются без него, и способны выполнять лишь простые промежуточные операции. Подобным модулем можно считать даже МК Ардуино различных версий, но не стоит их путать с устройствами, расширяющими вычислительные возможности главного контроллера, ведь они именно выполняют операции.
  3. Устройства вывода информации. У большинства ассоциируются с простейшим ЖК-экраном, хотя это далеко не единственная разновидность данных девайсов. Необходимы для того, чтобы выводить результаты вычислений, для получения фидбека от системы и проверки различного функционала. Бывают звуковыми, визуальными и тактильными, соответствуя каждому из органов чувств человека. Также могут комбинироваться с первыми двумя видами, становясь гибридным дополнением к микроконтроллеру.

Существуют и разновидности дополнений, без строгой типизации, так как их сложно отнести к какой-то конкретной группе устройств. Это происходит или из-за узкой направленности их функционала, или из-за изначальной гибридности модулей.

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

Технические характеристики, свойства и функции

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

Примеры популярных Ардуино модулей

Ультразвуковой дальномер HC-SR04

Самый популярный ультразвуковой датчик, которые работает по следующему принципу: отправляет ультразвуковую волну, считает время, за которое она возвратится. Мы знаем скорость звука и время, за которое волна вернулась, а далее мы рассчитываем расстояние до объекта. Данный модуль стоит довольно дешево, диапазон измерений от 2 см до 4 метров.

Инфракрасный дальномер Sharp

Также довольно широко используются дальномеры Sharp с рабочим диапазоном от 20 см до 1,5 метров. Цена таких модулей выше, чем звуковых дальномеров.

Модуль температуры и влажности DHT11

Этот Ардуино модуль измеряет температуру в диапазоне от 0 до +50 °C и влажность от 20 до 90%. Часто используется для измерений данных в комнате или теплице. Также оченб популярен при создании систем по управлению климатом или умных домов.

Барометр BMP085 или BMP180

С помощью модуля Барометр можно определить атмосферное давление от 30 до 110 кПа. Используется при создании на базе Ардуино аналогов метеостанциё.

Модуль-датчик влажности почвы FC-28

Модуль измеряет влажности почвы или среды в которую его втыкают. Состоит из двух частей. Его используют для автоматизированного полива растений.

Bluetooth HC06

Помогает организовать беспроводную связь Ардуино с компьютером, телефоном или другими устройствами.

Как подсоединить

Подсоединяются модули с помощью всё той же распиновки, но не напрямую к МК. Зачастую для этого используют специальные платформы с дорожками, которые делаются самими инженерами или заказываются отдельно.

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

Стоимость

Стоимость дополнительных датчиков и других девайсов также крайне вариативна, может начинаться от 50 центов и заканчиваться десятками долларов. Всё напрямую зависит от того, где вы их заказываете, конкретной разновидности и множества других факторов, поэтому выдать какое-то среднее арифметическое по их цене – невозможно.

arduinoplus.ru