Базовый курс на Ардуино

Arduino Uno R3

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

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

Плоттер  Шестиногий робот  Часы со словами

Наш курс состоит из очных уроков и домашних заданий, сгруппированных по темам. Хотя сами упражнения и описание к ним мы адаптировали специально для преподавания в школах, взрослому они тоже будет интересны :) Каждый урок непременно заканчивается рабочей схемой или каким-то полезным устройством, будь то электронные часы, термометр, или целый робот.

Описание

Тема 1. Знакомство с платформой Arduino — Знакомимся со средой программирования Arduino IDE и с беспаечной макетной платой.

Тема 2. Работа с цифровыми сигналами — Подключаем светодиод, зуммер и кнопку.

Тема 3. Индикация — Знакомимся с сегментным индикатором и жидкокристаллическим дисплеем.

Тема 4. Работа с аналоговыми сигналами — Подключаем потенциометр, датчик температуры и фоторезистор.

Тема 5. Управление двигателями — Управляем двигателем с помощью ШИМ, и двигаем серво-приводом.

Спецификация

Продолжительность курса — 16 академических часов. По два часа на каждое занятие.

Получаемые знания:

  • основы программирования на языке с++;
  • основы построения электрических цепей;
  • принципы обработки цифровых и аналоговых сигналов;
  • принципы работы ШИМ.

Получаемые умения:

  • работа с Arduino Uno через ПК; автономная работа Arduino Uno;
  • составление программ для Arduino Uno; загрузка программ в контроллер;
  • работа с беспаечной макетной платой;
  • подключение электронных компонентов: светодиод, зуммер, резистор, кнопка, потенциометр;
  • подключение индикаторов: ЖК дисплей, 7-сегментный индикатор;
  • работа с АЦП, подключение потенциометра, датчика температуры, датчика освещенности;
  • управление двигателем при помощи ШИМ;
  • использование датчика Холла; одометрия.

 


Изменено:

Базовый курс на Ардуино: 10 комментариев

  1. Здравствуйте. Меня очень заинтересовала тема робототехники. Очень захотел собрать робота на основе Arduino. Как мне можно приобрести комплект для сборки робота arduino в Беларуси Минск и сколько это будет стоить, Заранее Вам благодарен.

    • Проще всего будет поискать подходящие компоненты в каком-нибудь популярном магазине типа e-bay или aliexpress. Также доступны чертежи наших наборов, по которым вы можете изготовить кузов робота у себя в городе (сейчас много компаний, которые предлагают резку оргстекла/пластика лазером). А в скором времени эти наборы появятся в нашем интернет магазине shop.makeitlab.ru!

  2. Из приобретенного опыта роботостроения я сделал вывод, что покупать механику у китайцев — долго и дорого. Проще использовать уже имеющиеся в продаже игрушечные автомобили и т.п. (с чего обычно начинают). Нужно иметь ввиду, что понадобится помудрить с шестеренками, кои купить не просто, но выручают китайцы (dx.com, к примеру). Можно и на базе металлического детского конструктора собрать простую платформу. Но вот электронная начинка — это уже к китайцам. У них в 2-3 раза дешевле, за это стОит потерпеть и поволноваться около месяца. Если не в терпеж, то есть наши перепродавцы Амперка, Робоворкс и т.п. У Робоворксов есть неплохие аналоги типа CraftDuino. Двигатели тоже лучше брать у китайцев, поскольку обычные, что без редукторов, слабы и много потребляют. Первый робот-машина была сделана на базе инерционного полицейского джипа. В результате доработок, помимо движения по комнате и объезда препятствий, эта игрушка была с мигалкой на крыше и издавала грозные звуки, когда встречала препятствие на пути :) Ну а дальше — больше. Танки, гонки, лабиринты.Самое захватывающее для детей — это квадрокоптеры, но тут уже более старший и продвинутый уровень, поскольку требуется более сложная математика поведения модели. В общем, есть из чего делать, было бы желание :)

  3. Спасибо за ОТЛИЧНЫЕ уроки, описание и толкование. Не останавливайтесь, сделайте ещё уроки пожалуйста для средне понимающих и продвинутых в программировании! :)
    А то везде в инете только всё самое базовое….

  4. Зачем в задании 2,3,1, пример 1. объявленной переменной k присваивается значение «0», ведь в функции опять идёт присвоение?
    int buzz=2;
    int k=0;
    ………

    for(k=0; k<3; k=k+1)
    ……..
    Это обяхательно делать или нет?

    И второй вопрос.
    Зачем в примере с кнопкой, при объявлении используется "const".

    const int btn=3;
    const int buzz=4;
    byte val=0
    Почему этого нет в предидущих примерах?
    Ведь принцип работы кнопки и её привязка работают аналогично.

    • 1) Если k используется только в for, то присваивать значение по-умолчанию не обязательно. Более того, переменную-итератор можно объявить прямо в for:
      for( int k=0; k<3; k++ )
      2) const служит для объявления переменных в режиме чтения. То есть их нельзя менять во время выполнения программы. Это делать не обязательно, но принято.

      • Спасибо.
        А есть ли курс только по языку, используемому в Ардуино?
        Типа справочника.
        Я понимаю, что ноги растут из С++, но для Ардуины используется не полноценный С++, а какая-то кастрированная версия.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>