Как научиться программировать ардуино


Все уроки по ардуино / Хабр

Однажды появилась необходимость собрать все уроки, обучающие материалы (tutorials) с habrahabr и geektimes в одном месте и немного их систематизировать. В этом сборнике обучаек представлены более 100 статей на тему ардуино с пометкой «tutorial», либо содержащие несложные для новичков проекты на ардуино, а также немного видеоуроков по смежным темам. Статьи разделены на 10 тематик по сферам применения собранных устройств. Также хочется напомнить, что весь обучающий материал, опубликованный на habrahabr и geektimes является интерактивным: в любой момент можно задать вопрос автору в комментариях к статье. Как правило авторы на них отвечают. Этот сборник будет дополняться новыми обучайками (tutorials) по мере их публикации.


1. Знакомство, драйвера, среда разработки.(кликните, чтобы развернуть)
2. Роботы, радиоуправляемые машинки, лодки, танки.
3. Умный дом. Автоматизация в быту.
4. Ардуино в автомобиле.
5. Окружающая среда. Климат. Дача. Теплицы.
6. Велопроекты.
7. Бесполезные поделки, развлечения.
8. Реверс-инжиниринг и безопасность.
9. Автоматизация производства.
10. Здоровье. Медицина. Спорт.
P.S. Пишите в комментариях какие обучающие статьи с habrahabr и geektimes нужно добавить и в какой раздел.
P.P.S. Онлайн курс по ардуино на гиктаймс здесь.

Arduino - Введение

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

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

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

Arduino был создан в Ivrea Interaction Design Institute как простой инструмент для быстрого прототипирования, предназначенный для студентов, не имеющих опыта работы в области электроники и программирования.Как только она достигла более широкого сообщества, плата Arduino начала меняться, чтобы адаптироваться к новым потребностям и задачам, дифференцируя свое предложение от простых 8-битных плат до продуктов для приложений IoT, носимых устройств, 3D-печати и встроенных сред. Все платы Arduino имеют полностью открытый исходный код, что дает пользователям возможность создавать их независимо и, в конечном итоге, адаптировать к своим конкретным потребностям. Программное обеспечение также имеет открытый исходный код, и его объем растет благодаря участию пользователей со всего мира.

Почему Ардуино?

Благодаря простому и доступному пользовательскому интерфейсу Arduino использовалась в тысячах различных проектов и приложений.Программа Arduino проста в использовании для новичков, но достаточно гибка для опытных пользователей. Он работает на Mac, Windows и Linux. Учителя и студенты используют его для создания недорогих научных инструментов, для доказательства принципов химии и физики или для начала работы с программированием и робототехникой. Дизайнеры и архитекторы создают интерактивные прототипы, музыканты и художники используют их для инсталляций и экспериментов с новыми музыкальными инструментами. Создатели, конечно же, используют его для создания многих проектов, представленных, например, на Maker Faire.Arduino - ключевой инструмент для изучения нового. Любой человек - дети, любители, художники, программисты - может начать возиться, просто следуя пошаговым инструкциям набора, или делиться идеями в Интернете с другими членами сообщества Arduino.

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

  • Недорогой - Платы Arduino относительно недороги по сравнению с другими платформами микроконтроллеров. Наименее дорогая версия модуля Arduino может быть собрана вручную, и даже предварительно собранные модули Arduino стоят менее 50 долларов.
  • Кросс-платформенный - Программное обеспечение Arduino (IDE) работает в операционных системах Windows, Macintosh OSX и Linux.Большинство систем микроконтроллеров ограничены Windows.
  • Простая и понятная среда программирования - Программа Arduino (IDE) проста в использовании для новичков, но при этом достаточно гибкая, чтобы продвинутые пользователи могли ею воспользоваться. Для учителей он удобно основан на среде программирования Processing, поэтому студенты, обучающиеся программированию в этой среде, будут знакомы с тем, как работает Arduino IDE.
  • Программное обеспечение с открытым исходным кодом и расширяемое программное обеспечение - Программное обеспечение Arduino публикуется как инструменты с открытым исходным кодом, доступные для расширения опытными программистами.Язык может быть расширен с помощью библиотек C ++, и люди, желающие разобраться в технических деталях, могут перейти от Arduino к языку программирования AVR C, на котором он основан. Точно так же вы можете добавить код AVR-C прямо в свои программы Arduino, если хотите.
  • Открытое и расширяемое оборудование. - Планы плат Arduino публикуются под лицензией Creative Commons, поэтому опытные разработчики схем могут создать свою собственную версию модуля, расширяя и улучшая ее.Даже относительно неопытные пользователи могут создать макетную версию модуля, чтобы понять, как он работает, и сэкономить деньги.

Как использовать Arduino?

См. Руководство по началу работы. Если вы ищете вдохновения, вы можете найти множество руководств на Arduino Project Hub.

Текст руководства по началу работы с Arduino находится под лицензией Лицензия Creative Commons Attribution-ShareAlike 3.0. Примеры кода в руководстве опубликованы в открытом доступе.

.

Arduino Uno для начинающих - проекты, программирование и детали (руководство)


Узнайте об Arduino и Arduino UNO и о том, как вы можете интегрировать эту плату в свое рабочее пространство и программу кодирования. Создавайте интерактивные проекты в Makerpace, обучаясь программированию и решению проблем.
Все больше и больше рабочих мест по всему миру стремятся добавить кодирование и электронику в свои образовательные программы для производителей. Один из лучших способов сделать это - интегрировать плату Arduino в проекты и уроки makerspace.

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

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

БЕСПЛАТНАЯ электронная книга (PDF) - Полное руководство для начинающих по Arduino

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

Arduino был представлен еще в 2005 году в Италии Массимо Банци как способ для людей, не являющихся инженерами, получить доступ к недорогому и простому инструменту для создания проектов оборудования.Поскольку плата имеет открытый исходный код, она выпущена под лицензией Creative Commons, которая позволяет любому создавать свою собственную плату. Если вы поищете в Интернете, вы найдете сотни доступных клонов и вариаций, совместимых с Arduino, но только на официальных платах есть Arduino в названии.

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

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

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

Изображение предоставлено - Sparkfun.com

Еще один фактор, который следует учитывать при выборе доски, - это тип проекта, которым вы собираетесь заниматься. Например, если вы хотите создать носимый электронный проект, вы можете рассмотреть доску LilyPad от Sparkfun.LilyPad разработан так, чтобы его можно было легко вшить в электронный текстиль и носимые предметы. Если ваш проект имеет небольшой форм-фактор, вы можете использовать Arduino Pro Mini, который занимает очень мало места по сравнению с другими платами. Ознакомьтесь с руководством по сравнению Arduino от Sparkfun, чтобы получить разбивку и сравнение лучших плат.

Далее мы сосредоточимся на нашей любимой плате Arduino, с которой мы рекомендуем начинать.

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

Распределение платы

Вот компоненты, из которых состоит плата Arduino, и каковы их функции.

  1. Кнопка сброса - перезапускает любой код, загруженный на плату Arduino
  2. AREF - Стенды для «Analog Reference» и используется для установки внешнего опорного напряжения
  3. Контакт заземления - На Arduino есть несколько контактов заземления, и все они работают одинаково.
  4. Цифровой ввод / вывод - Контакты 0-13 могут использоваться для цифрового ввода или вывода
  5. PWM - Контакты, отмеченные символом (~), могут имитировать аналоговый выход
  6. USB-соединение - Используется для включения Arduino и загрузки эскизов
  7. TX / RX - Светодиоды индикации передачи и приема данных
  8. Микроконтроллер ATmega - Это мозги, и здесь хранятся программы
  9. Светодиодный индикатор питания - Этот светодиод загорается каждый раз, когда плата подключена к источнику питания
  10. Регулятор напряжения - Контролирует количество напряжения, поступающего на плату Arduino
  11. Разъем питания постоянного тока - используется для питания Arduino от источника питания
  12. 3.Вывод 3V - Этот вывод обеспечивает питание 3,3 В для ваших проектов
  13. Вывод 5V - Этот вывод обеспечивает питание 5 В для ваших проектов
  14. Контакты заземления - На Arduino есть несколько контактов заземления, и все они работают одинаково.
  15. Аналоговые выводы - Эти выводы могут считывать сигнал с аналогового датчика и преобразовывать его в цифровой

Arduino Uno нуждается в источнике питания для работы и может получать питание различными способами.Вы можете делать то же самое, что и большинство людей, и подключать плату напрямую к компьютеру через USB-кабель. Если вы хотите, чтобы ваш проект был мобильным, подумайте об использовании батарейного блока на 9 В, чтобы дать ему заряд энергии. Последний метод - использовать источник питания переменного тока 9 В.

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

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

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

Как только схема будет создана на макетной плате, вам нужно будет загрузить программу (известную как эскиз) в Arduino. Скетч - это набор инструкций, которые говорят плате, какие функции она должна выполнять. Плата Arduino может содержать и выполнять только один эскиз за раз. Программное обеспечение, используемое для создания эскизов Arduino, называется IDE, что означает интегрированная среда разработки. Программное обеспечение можно загрузить бесплатно, его можно найти по адресу https://www.arduino.cc/en/Main/Software

.

Каждый скетч Arduino состоит из двух основных частей программы:

void setup () - Устанавливает вещи, которые нужно сделать один раз, а потом больше не повторятся.

void loop () - Содержит инструкции, которые повторяются снова и снова, пока плата не будет выключена.

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

БЕСПЛАТНАЯ электронная книга (PDF) - Полное руководство для начинающих по Arduino

Вам может быть интересно, что может делать плата Arduino, кроме мигания светодиода.Ниже приведены несколько примеров проектов, которые помогают продемонстрировать, насколько поистине удивительна эта плата и ее возможности. Если вы ищете другие идеи для проектов, посетите такие сайты, как Instructables или Make Magazine, где есть полезные руководства.

Робот слежения за светом Arduino - инструкции

Дрон Arduino, который следует за вами - инструкции

Светодиодный куб с Arduino Uno - Инструкции

Управление дверным замком с помощью Arduino и Bluetooth - журнал MAKE

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

Если вы хотите добавить в свой Arduino очень специфический функционал, вам понадобится щит. Экраны Arduino подключаются к верхней части платы Arduino и могут добавлять такие функции, как WiFi, Bluetooth, GPS и многое другое. Есть буквально сотни щитов на выбор, и вот несколько примеров.

GPS Shield подключен к Arduino Uno - Sparkfun.com

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

Примеры датчиков Arduino

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

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

Получать уведомления о будущих публикациях в блоге

.

Arduino - Как это сделать

Руководство по Arduino

Эта страница устарела. Вместо этого вы должны увидеть Windows Howto или Mac OS X howto (оба в руководстве Arduino).

Вот шаги, которые необходимо выполнить, чтобы начать работу:

  1. Получить плату Arduino
  2. Загрузить среду Arduino
  3. Установите драйверы USB
  4. Подключить плату
  5. Загрузить программу

1 | Получите плату Arduino

Плата ввода-вывода Arduino представляет собой простую схему с процессором ATmega8 от Atmel.Плата состоит из печатной платы (PCB) и электронных компонентов.

Есть несколько способов получить плату Arduino:

  • Куплю готовую плату . Посмотрите, как можно купить плату или просто печатную плату.
  • Создайте свою собственную плату . Если вы хотите, вы можете создать свою собственную печатную плату, просто загрузив файлы САПР со страницы оборудования. Распакуйте файл .brd и отправьте его производителю печатной платы. Имейте в виду, что изготовление одной печатной платы будет очень дорогим.Лучше собраться вместе с другими людьми и зарабатывать 20 или 30 за раз. Поскольку вы получаете полные файлы САПР, вы можете создать свою собственную версию Arduino. если вы вносите изменения или исправляете ошибки, пришлите нам свои изменения!
    • покупка запчастей . приобретайте запчасти в любом магазине электроники. В частности, последовательная версия была разработана для использования самых основных компонентов, которые можно найти в любой точке мира. Версия USB, с другой стороны, требует некоторых продвинутых навыков пайки из-за микросхемы FTDI, которая является частью smd.Вот список деталей для серийной платы.
    • собрать плату . Мы составили пошаговое руководство по созданию платы Arduino. Новички: раньше не паяли? боитесь разбить тысячи плат, прежде чем правильно припаять одну? не бойтесь :) научитесь овладевать искусством пайки.
    • программа загрузчика . Чтобы среда разработки могла запрограммировать чип, он должен быть запрограммирован с помощью фрагмента кода, называемого загрузчиком .См. Страницу загрузчика о том, как запрограммировать его на свой чип.

2 | Загрузите среду Arduino

Для программирования платы Arduino вам понадобится среда Arduino.

Загрузить Arduino : Со страницы программного обеспечения.

Linux note : Чтобы получить помощь по запуску IDE Arduino в Debian, см. FAQ («Как запустить IDE Arduino под Linux?»).

Mac OS X Примечание: После загрузки IDE запустите macosx_setup.команда . Он исправляет разрешения для нескольких файлов для использования с последовательным портом и запрашивает пароль. После запуска этого сценария вам может потребоваться перезагрузка.

Для получения дополнительной информации см. Руководство по среде Arduino.

3 | Установите драйверы USB

Если вы используете USB Arduino, вам необходимо установить драйверы для микросхемы FTDI на плате. Их можно найти в каталоге драйверов дистрибутива Arduino.

В Windows необходимо распаковать драйверы USB FTDI.zip . Затем, когда вы подключаете плату Arduino, укажите в мастере установки оборудования Windows каталог FTDI USB Drivers .

На Mac смонтируйте образ диска FTDIUSBSerialDriver_v2_1_6.dmg (на машинах PPC) или FTDIUSBSerialDriver_v2_2_6_Intel.dmg (на машинах Intel) и запустите прилагаемый FTDIUSBSerialDriver.pkg .

Последнюю версию драйверов можно найти на сайте FTDI.

4 | Подключаем плату

Если вы используете плату последовательного интерфейса, запитайте плату от внешнего источника питания (от 6 до 25 В постоянного тока, с положительной жилой разъема).Подключите плату к последовательному порту на вашем компьютере.

На платах USB источник питания выбирается перемычкой между USB и вилками питания. Для питания платы от порта USB (подходит для управления маломощными устройствами, такими как светодиоды), установите перемычку на два контакта, ближайших к разъему USB. Для питания платы от внешнего источника питания (необходимого для двигателей и других сильноточных устройств) установите перемычку на два контакта, ближайших к вилке питания. В любом случае подключите плату к USB-порту вашего компьютера.В Windows откроется мастер установки нового оборудования; сообщите ему, что вы хотите указать место для поиска драйверов, и укажите папку, содержащую драйверы USB, которые вы распаковали на предыдущем шаге.

Светодиод питания должен загореться.

5 | Загрузить программу

Откройте пример скетча с миганием светодиода: Файл> Скетчбук> Примеры> led_blink.

.

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

Введение и требования
Обзор курса с требованиями к аппаратному и программному обеспечению.

Часть 1: Структура и последовательность действий Arduino Sketch
Объясняет структуру программы Arduino и то, как выполняются операторы программы. Демонстрирует простую программу «Hello World».

Часть 2: Основной цикл Arduino Sketch и функции вызова
Как работает основной цикл Arduino и что означает вызов функции.

Часть 3: Переменные
Введение в переменные Arduino, показывающее использование целочисленных (int) и переменных с плавающей запятой (float).

Часть 4: Арифметические операторы
Сложение, вычитание, умножение, деление и остаток на Arduino.

Часть 5: Операторы отношения
Сравнение значений в Arduino.

Часть 6: Оператор приращения и комментарии
Как работает оператор приращения Arduino. Использование комментариев в скетчах Arduino.

Часть 7: Arduino for Loop
Как работает Arduino for loop. Используйте цикл for Arduino для выполнения кода заданное количество раз.

Часть 8: Arduino while Loop
Как использовать Arduino while и do-while loop.

Часть 9: Оператор if для Arduino
Использование оператора if для Arduino. Как получить ввод с клавиатуры в Arduino из окна последовательного монитора.

Часть 10: Принятие решений с помощью if-else
Конструкция if-else Arduino. Включите и выключите светодиод с помощью окна Serial Monitor.

Часть 11: Решения с использованием if-else-if
Arduino конструкции if-else-if и if-else-if-else. Управляйте частотой мигания светодиода с помощью конструкций if-else-if.

Часть 12: Логические операторы
Логические операторы OR, AND и NOT, используемые в эскизах Arduino для управления светодиодом из окна Serial Monitor.

Часть 13: Switch & Break

, часть 14: условный оператор

Часть 15: Функции

Часть 16: Возврат значения из функции

Часть 17: Массивы

Часть 18: Струны

Часть 19: Последовательный ввод

Часть 20 еще впереди ...

← Вернуться в область программного обеспечения ArduinoПерейти к курсу программирования Arduino Введение →

.

Смотрите также