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

Здравствуйте! Я Аликин Александр Сергеевич, педагог дополнительного образования, веду кружки «Робототехника» и «Радиотехника» в ЦДЮТТ г. Лабинска. Хотел бы немного рассказать об упрощенном способе программирования Arduino с помощью программы «ArduBloсk».

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

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

Даже всеми известные роботы LEGO, такие как NXT или EV3 нашим ученикам уже не так интересны с появлением в программировании Arduino программы ArduBloсk. Еще Arduino намного дешевле любых конструкторов LEGO и многие компоненты можно просто взять от старой бытовой электронной техники. Программа ArduBloсk поможет в работе не только начинающим, но и активным пользователям платформы Arduino.

Итак, что же такое ArduBloсk? Как я уже говорил, это графическая среда программирования. Практически полностью переведена на русский язык. Но в ArduBloсk изюминка не только это, но и то, что написанную нами программу ArduBloсk конвертирует в код Arduino IDE. Эта программа встраивается в среду программирования Arduino IDE, т. е. это плагин.

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

В результате работы на программе можно не только программировать Arduino, но и изучать непонятные нам команды в текстовом формате Arduino IDE, ну а если же «лень» писать стандартные команды - стоит быстрыми манипуляциями мышкой набросать простенькую программку в ArduBlok, а в Arduino IDE её отладить.

Чтобы установить ArduBlok, необходимо для начала загрузить и установить Arduino IDE с официального сайта Arduino и разобраться с настройками при работе с платой Arduino UNO. Как это сделать описано на том же сайте или же на Амперке , либо посмотреть на просторах YouTube. Ну, а когда со всем этим разобрались, необходимо скачать ArduBlok с официального сайта, вот . Последние версии скачивать не рекомендую, для начинающих они очень сложны, а вот версия от 2013-07-12 - самое то, этот файл там самый популярный.

Затем, скачанный файл переименовываем в ardublock-all и в папке «документы». Создаем следующие папки: Arduino > tools > ArduBlockTool > tool и в последнею кидаем скачанный и переименованный файл. ArduBlok работает на всех операционных системах, даже на Linux, проверял сам лично на XP, Win7, Win8, все примеры для Win7. Установка программы для всех систем одинакова.

Ну, а если проще, я приготовил на Mail-диске 7z архив , распаковав который найдете 2 папки. В одной уже рабочая программа Arduino IDE, а в другой папке содержимое необходимо отправить в папку документы.

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

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

В разделе «Управление» мы найдем разнообразные циклы.

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

В разделе «Числа/Константы» мы можем с вами выбрать цифровые значения или создать переменную, а вот то что ниже вряд ли будите использовать.

В разделе «Операторы» мы с вами найдем все необходимые операторы сравнения и вычисления.

В разделе «Утилиты» в основном используются значки со временем.

«TinkerKit Bloks»- это раздел для приобретенных датчиков комплекта TinkerKit. Такого комплекта у нас, конечно же, нет, но это не значит, что для других наборов значки не подойдут, даже наоборот - ребятам очень удобно использовать такие значки, как включения светодиода или кнопка. Эти знаки используются практически во всех программах. Но у них есть особенность - при их выборе стоят неверные значки обозначающие порты, поэтому их необходимо удалить и подставить значок из раздела «числа/константы» самый верхний в списке.

«DF Robot» - этот раздел используется при наличии указанных в нем датчиков, они иногда встречаются. И наш сегодняшний пример - не исключение, мы имеем «Регулируемый ИК выключатель» и «Датчик линии». «Датчик линии» отличается от того, что на картинке, так как он от фирмы Амперка. Действия их идентичны, но датчик от Амперки намного лучше, так как в нем имеется регулятор чувствительности.

«Seeedstudio Grove» - датчики этого раздела мной ни разу не использовались, хотя тут только джойстики. В новых версиях этот раздел расширен.

И последний раздел это «Linker Kit». Датчики, представленные в нем, мне не попадались.

Хочется показать пример программы на роботе, двигающемся по полосе. Робот очень прост, как в сборке, так и в приобретении, но обо всем по порядку. Начнем с его приобретения и сборки.

Вот сам набор деталей все было приобретено на сайте Амперка .

  1. AMP-B001 Motor Shield (2 канала, 2 А) 1 890 руб
  2. AMP-B017 Troyka Shield 1 690 руб
  3. AMP-X053 Батарейный отсек 3×2 AA 1 60 руб
  4. AMP-B018 Датчик линии цифровой 2 580 руб
  5. ROB0049 Двухколёсная платформа miniQ 1 1890 руб
  6. SEN0019 Инфракрасный датчик препятствий 1 390 руб
  7. FIT0032 Крепление для инфракрасного датчика препятствий 1 90 руб
  8. A000066 Arduino Uno 1 1150 руб

Для начала соберем колесную платформу и припаяем к двигателям провода.

Затем установим стойки, для крепления платы Arduino UNO, которые были взяты от старой материнской платы ну или иные подобные крепления.

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

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

Теперь устанавливаем цифровые датчики линии, тут придется поискать пару болтиков и 4 гайки к ним Две гайки устанавливаем между самой платформой и датчиком линии, а остальными фиксируем датчики.

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

Сверху Motor Shield устанавливаем Troyka Shield. Он необходим для удобства соединения датчиков. Все используемые нами сенсоры цифровые, поэтому датчики линии подключены к 8 и 9 порту, как их еще называют пины, а инфракрасный датчик препятствий подключен к 12 порту. Обязательно обратите внимание, что нельзя использовать порты 4, 5, 6, 7 так как оны используются Motor Shield для управлением двигателями. Я эти порты даже специально закрасил красным маркером, чтобы ученики разобрались.

Если вы уже обратили внимание, мной была добавлена черная втулка, это на всякий случай, чтобы установленный нами батарейный отсек не вылетел. И наконец, всю конструкцию мы фиксируем обычной резинкой.

Подключения батарейного отсека может быть 2-х видов. Первый подключение проводов к Troyka Shield. Также возможно подпаять штекер питания и подключать уже к самой плате Arduino UNO.

Вот наш робот готов. Перед тем как начать программировать, надо будет изучить, как все работает, а именно:
- Моторы:
Порт 4 и 5 используются для управления одним мотором, а 6 и 7 другим;
Скоростью вращения двигателей мы регулируя ШИМом на портах 5 и 6;
Вперед или назад, подавая сигналы на порты 4 и 7.
- Датчики:
У нас все цифровые, поэтому дают логические сигналы в виде 1 либо 0;
А что бы их отрегулировать, в них предусмотрены специальные регуляторы а при помощи подходящей отвертки их можно откалибровать.

Подробности можно узнать на Амперке . Почему тут? Потому что там очень много информации по работе с Arduino.

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

И программа конвертированная в Arduino IDE:

Void setup() { pinMode(8 , INPUT); pinMode(12 , INPUT); pinMode(9 , INPUT); pinMode(4 , OUTPUT); pinMode(7 , OUTPUT); pinMode(5, OUTPUT); pinMode(6, OUTPUT); } void loop() { if (digitalRead(12)) { if (digitalRead(8)) { if (digitalRead(9)) { digitalWrite(4 , HIGH); analogWrite(5, 255); analogWrite(6, 255); digitalWrite(7 , HIGH); } else { digitalWrite(4 , HIGH); analogWrite(5, 255); analogWrite(6, 50); digitalWrite(7 , LOW); } } else { if (digitalRead(9)) { digitalWrite(4 , LOW); analogWrite(5, 50); analogWrite(6, 255); digitalWrite(7 , HIGH); } else { digitalWrite(4 , HIGH); analogWrite(5, 255); analogWrite(6, 255); digitalWrite(7 , HIGH); } } } else { digitalWrite(4 , HIGH); analogWrite(5, 0); analogWrite(6, 0); digitalWrite(7 , HIGH); } }

В заключении хочу сказать, эта программа просто находка для образования, даже для самообучения она поможет изучить команды Arduino IDE. Самая главная изюминка - это то, что более 50 значков установки, она начинает «глючить». Да, действительно, это изюминка, так как постоянное программирование только на ArduBlok не обучит вас программированию в Arduino IDE. Так называемый «глюк» дает возможность задумываться и стараться запоминать команды для точной отладки программ.

Желаю успехов.

IDE (от англ. Integrated Development Environment — интегрированная среда разработки) — это приложение или группа приложений (среда), предназначенных для создания, настройки, тестирования и обслуживания программного обеспечения.

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

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

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

После запуска программы вы можете найти четыре главных функциональных элемента:

  1. меню программы;
  2. панель быстрого доступа к наиболее важным функциям;
  3. редактор (для размещения кода программы);
  4. панель сообщений и статуса программы.

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

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

Меню «Файл» и «Правка» содержат стандартные параметры.

Меню «Скетч» содержит параметры для компиляции проекта и импорта необходимых библиотек.

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

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

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

С помощью Arduino IDE можно также загрузить, то есть запрограммировать Bootloader (загрузчик) для нового, чистого микроконтроллера Atmega, что позволяет клонировать чипы или просто заменить неисправный микроконтроллера в Arduino.

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

Они позволяют (слева направо):

  1. скомпилировать программу;
  2. загрузить программу в микроконтроллер (перед прошивкой код программы компилируется);
  3. начать работу над новым проектом;
  4. открыть существующий проект;
  5. сохранить проект на диск;
  6. включить монитор последовательного порта.

Все опции, расположенные на панели быстрого доступа, продублированы в меню программы.

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

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

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

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

× Close


Arduino IDE - это бесплатная среда разработки для платформы Arduino, содержащая редактор кода, компилятор и модуль передачи прошивки в плату. Эта среда прекрасно подойдет для программистов, которые предпочитают языки программирования C и C++. Программы (скетчи), написанные с помощью Arduino IDE, обрабатываются препроцессором, а затем компилируются в AVR-GCC.

Среда разработки Arduino поставляется вместе с библиотекой программ, которая называется «Wiring», берущей начало от проекта Wiring, который позволяет делать много стандартных операций ввода/вывода гораздо проще.

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

Основные преимущества Arduino IDE для Windows

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

Важно и то, что в этой среде разработки предусмотрены все основные инструменты, необходимые для работы. Среди ее функций является, например сохранение, экспорт, поиск, проверка, замена скетчей.

Основные недостатки

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

Инсталляция

  • загрузите программное обеспечение по ссылке;
  • откройте скачанный файл;
  • выполните команды, посмотрите в окне установки.

Что нового

  • Новая цель! Платы ARM64 теперь полностью поддерживаются (Nvidia Jetson и RaspberryPi3 с 64-битной операционной системой).
  • Исправлено ошибки, связанные с UTF8 в Windows.
  • Исправлено: теперь можно снова скомпилировать, используя OpenJDK (удалена зависимость от JavaFx).
  • Исправлено: использовать только TouchBar на OSX 10.12 или выше.
  • PluggableDiscovery: легко добавьте свой собственный первооткрыватель и сделайте его доступным в меню Boards / Port (спасибо @PaulStoffregen за идею и начальную реализацию).
  • LibManager: уменьшено замедление при поиске.
  • Исправлено: убедитесь, что линия эскиза видна, если она содержит ошибку и должна быть выделена.
  • Linux: установщик теперь пытается установить символическую ссылку / usr / local / bin (это не влияет на обычную установку вне системы) Спасибо @ 2E0PGS.
  • Исправлено обновление прошивки, недоступное для сторонних плат WINC.
  • Используйте лексикографическое расстояние как последний шанс найти нужную библиотеку (если любая другая техника не удалась).
  • Исправлено некоторые прототипы, вставляемые в середине функции.

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

Одним из примеров является Arduino Due , которая использует ARM/SAM микроконтроллеры. Для того была возможность, используя Arduino IDE , программировать Arduino Due , необходимо установить SAM-я дро с помощью Boards Manager .

В этом примере мы установим ядро, необходимое для платы Arduino Due .

Выбираем меню Инструменты → Плата → Boards Manager

Откроется окно Менеджера плат, в котором вы увидите список установленных и доступных плат. Выберем ядро SAM , требуемую версию (как и в случае с может быть доступна лишь одна версия, поэтому выпадающего списка с перечнем доступных версий может и не быть) и жмем Install .

По завершению процесса установки (который может занять достаточно продолжительное время) статус ядра SAM станет INSTALLED . Теперь плата Arduino Due станет доступна в меню Инструменты → Плата.

Ручная установка плат

Также имеется возможность добавления плат в ручном режиме. Этот метод работает на и на . Для версии IDE 1.6.2 метод не работоспособен (баг исправлен в релизе 1.6.3). Насчет версий ранее 1.6.1 ничего сказать не могу.

Расскажу на примере плат компании Adafruit .

Сначала скачиваем файлы описания для плат с GitHub -репозитория Adafruit или по ссылке ниже (на GitHub , возможно, будет более свежая версия этого архива).

Category: Programs
Date: 06.04.2015

Если вы скачали архив с Github , то распакуйте архив и переменуйте получившуюся папку из Adafruit_Arduino_Boards-master в Adafruit_Arduino_Boards .

Внутри этой папки вы обнаружите две подпапки:

  • hardware , также содержащую подпапки adafruit и tools
  • drivers , в которой находятся драйвера Flora для Windows

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

Переходим внутри по вложенным подпапкам Contents → Java и находим там папку hardware .

Теперь нужно внимательно объединить содержимое папки hardware c аналогичной папкой из скаченного нами ранее и распакованного архива с описанием плат с сайта Adafruit . Нужно удостовериться в том, что вы переписали конфликтующие файлы (в данном случае avrdude.conf ). После всех операций папка hardware приложения Arduino IDE будет иметь следующую структуру:

Если вы работаете в Windows , то вам необходимо будет переписать еще и папку drivers .

Если все сделано правильно, то новые платы появятся в меню Инструменты → Плата в Arduino IDE .

Платы на базе микроконтроллеров ATTiny

Один из моих читателей — Павел Пащенко любезно поделился файлами описаний к микроконтроллерам серии ATTiny. Cпасибо, Павел!

Category: Programs
Date: 08.04.2015

Установка аналогична описанной выше.

Получившийся у Павла результат в Windows :

Платы на базе микроконтроллера Atmega8

Для микроконтроллеров Atmega8 с внешним кварцем на 8 МГц и без загрузчика, в файл boards.txt необходимо добавить следующие строки:

############################################################## atmega8.name=ATmega8 (no bootloader 8MHz ext) atmega8.upload.protocol=arduino atmega8.upload.tool=usbasp atmega8.upload.maximum_size=7680 atmega8.upload.speed=115200 atmega8.bootloader.low_fuses=0xFF atmega8.bootloader.high_fuses=0xD9 atmega8.bootloader.unlock_bits=0x3F atmega8.bootloader.lock_bits=0x0F atmega8.build.mcu=atmega8 atmega8.build.f_cpu=8000000L atmega8.build.core=arduino atmega8.build.variant=standard

##############################################################

atmega8 . name = ATmega8 (no bootloader 8MHz ext )

atmega8 . upload . protocol = arduino

atmega8 . upload . tool = usbasp

atmega8 . upload . maximum_size = 7680

atmega8 . upload . speed = 115200

atmega8 . bootloader . low_fuses = 0xFF

atmega8 . bootloader . high_fuses = 0xD9

atmega8 . bootloader . unlock_bits = 0x3F

atmega8 . bootloader . lock_bits = 0x0F

atmega8 . build . mcu = atmega8

atmega8 . build . f_cpu = 8000000L

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

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

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

Для программирования контроллеров вам понадобится не только ПО Arduino IDE , но и соответствующая плата, а также USB-кабель. В определенных случаях на ПК понадобится установить драйвер для работы платы. Если подключение выполнено успешно, в нижнем правом углу окна программы появится модель текущей платы и последовательный порт. Программирование микроконтроллеров осуществляется на языке C++.

На нашем сайте вы сможете скачать как новую версию Arduino 1.8.7, так и старую версию 1.8.5 (ссылка внизу описания).

Основной функционал Arduino IDE:

  • Среда разработки программного кода;
  • Компилирование;
  • Проверка на наличие ошибок и выгрузка в контроллер;
  • Сохранение проекта в файлы с расширением «ino»;

Скриншоты