Начните и завершите проект светофора на Arduino на этих выходных вместе с вашим ребенком! Эти выходные пройдут весело и увлекательно. И вы, и ваш ребенок можете вместе изучать электронику, удивляться тому, как ребенок смотрит на мир.

Проект 1: «Светофор светодиодный — Готов, поставил, поехал!»

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

Железо и софт

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

  1. MacOS или Windows
  2. Ардуино Уно
  3. 3 светодиода (на ваш выбор любого цвета!)
  4. Мало разъемов/проводов.
  5. 1 разъем USB (обычно идет в комплекте с Arduino, см. изображение ниже)
  6. 1 макетная плата
  7. Программное обеспечение mBlock

Если вы еще не устанавливали программное обеспечение mBlock, посетите предыдущий проект, чтобы получить представление о том, как настроить и подключить Arduino к mBlock.

Краткое введение в макетную плату

Итак, прежде чем мы действительно углубимся в этот проект, макетная плата — это САМАЯ важная часть оборудования, которую мы хотим понять немного больше. Макетная плата поможет нам более организованно соединять различные типы оборудования, поэтому, когда наш проект станет немного больше, мы все равно сможем организовывать наши проекты безопасным и понятным способом.

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

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

Что означает "подключено"?
Ну, мы можем представить, что связь означает «чувствовать то же самое». Представьте, что вы и ваши друзья зимой держитесь за один и тот же холодный поручень. Вы все почувствуете один и тот же ледяной холод перил.

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

Расширение наших знаний на большую макетную плату. Посмотрите на изображение ниже, в частности, посмотрите на зеленую рамку.

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

Посмотрите на столбец 5, который я выделил в красной рамке. Здесь все отверстия соединены. Итак, 5А — 5Е все подключены. Однако на этом связь обрывается. Он не соединен с отверстиями ниже него. Отверстия 5F — 5J соединены между собой, но не соединены с указанными выше.

Если это все сбивает вас с толку, не волнуйтесь, у нас будет несколько практических подключений ниже!

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

Подключение первого светодиода

С нашей новой макетной платой давайте расширим наш предыдущий проект и перенесем его на макетную плату. Итак, мы знаем, что нам нужно соединить контакт 13 и GND где-то на макетной плате, и таким образом нам нужно будет замкнуть цепь.

Сначала давайте заставим контакт 13 держаться за одну из колонок на макетной плате. Далее, давайте сделаем то же самое с выводом GND.

Используя красный провод, я подключил контакт 13 к одному из отверстий на макетной плате, а черный провод подключил к другому отверстию на отдельной колонке на макетной плате. Кроме того, я подключил положительный контакт светодиода к КРАСНОМУ проводу.

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

Примечание. Здесь я использовал слово «схема». Цепь означает, связанную группу объектов, которые обеспечивают поток электричества. Опять же, я слишком упростил здесь. Просто обратите внимание, что я начну вводить здесь больше слов, и когда вы почувствуете себя запутанным, не стесняйтесь просматривать ссылки ниже, чтобы немного покопаться вместе! Со мной будет весело, обещаю.

Понимание макетной платы немного лучше

Используя ту же программу, которую мы загрузили ранее. Посмотрите на картинку ниже.

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

Давайте сделаем еще один шаг вперед, с текущими положениями светодиодов.

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

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

Давайте рассмотрим, как мы можем использовать силовые ряды. Обратите внимание на красный и желтый светодиоды на нижнем фото.

Как мы можем зажечь красный и желтый светодиоды, используя ряд питания?
Подсказка. Посмотрите, как соединены ряды питания на рисунке выше.

Во-первых, давайте сначала подключим ряды питания макета к контакту 13 и GND Arduino Uno.

Затем я подключу положительный контакт красного светодиода к столбцу 50 на макетной плате. Затем возьмите один провод и подключите (+) ряд к столбцу 50. Сделайте то же самое для отрицательного контакта красного светодиода к столбцу 53 на макетной плате и подключите (-) ряд к столбцу 53.

Наконец, я сделаю то же самое для желтого светодиода. Подключение столбцов к силовому ряду. Попробуйте сами.

Там! Здесь мы зажигаем оба светодиода.

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

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

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

После того, как ряды питания подключены, мы подключим зеленый светодиод так же, как мы сделали это для красного и желтого светодиодов.

Подключение 3 светодиодов

А теперь следующая задача. Готовый?

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

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

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

Во-первых, поскольку я буду использовать только контакт 13 и GND, я буду использовать ряд питания. Я подключаю контакт 13 к (+) ряду и GND к (-).

Затем я подключаю все положительные контакты к (+) ряду.

Наконец, я подключаю все отрицательные контакты к (-) ряду.

Прохладный! Я надеюсь, что у вас есть 3 светодиода, все включаются вместе.

3 независимых светодиода

Давайте будем честными, на светофоре никогда не должны гореть все 3 светофора одновременно. Попробуем исправить эту проблему.

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

Теперь, чтобы решить проблему, я решил использовать контакт 13 для красного светодиода, контакт 12 для желтого светодиода и контакт 11 для зеленого светодиода. Все они должны быть подключены к GND.

Что касается mBlock, то вот моя простая программа.

Если все работает так, как ожидалось, все 3 светодиода могут включаться и выключаться независимо, давайте установим 12 на низкий уровень и загрузим код, мы ожидаем, что желтый светодиод будет выключен.

Автоматизация светофора!!!

Это не весело, если нам нужно вручную включать и выключать светодиоды, давайте сделаем так, чтобы они включались и выключались автоматически.

Как мы можем изменить нашу программу, чтобы светодиоды автоматически меняли цвет?
Подсказка: помните задержку?

Начнем с того, что включим в программу некоторую задержку.

Давайте посмотрим, что делает эта программа. Сначала мы устанавливаем контакт 13 на «высокий» и ждем 2 секунды, и устанавливаем контакт 13 на «низкий», а контакт 12 устанавливаем на «высокий». Что мы делаем здесь, так это включаем красный светодиод на 2 секунды и включаем его, пока мы включаем желтый светодиод. Затем мы ждем еще 2 секунды, прежде чем установить контакт 12 на «низкий» и установить контакт 11 на «высокий». Это эффективно выключает желтый светодиод и включает красный светодиод.

Поздравляю! Теперь у вас есть светофор, который меняет цвет с красного на желтый и зеленый.

Финальный вызов

Готовы к последнему испытанию?

Что, если мы хотим, чтобы светофор делал это вечно?
Подсказка: навсегда…

Да, мы должны рассмотреть возможность использования наших трюков с петлями для этого. Посмотрим. Мы должны каким-то образом найти цикл, который будет поддерживать непрерывную работу приведенного выше кода.

Заглянув во вкладку «Управление», мы можем найти блок «навсегда». Давайте перетащим весь наш код в блок навсегда. Теперь ваш код должен выглядеть так.

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

Теперь у вас есть работающий светофор, который будет работать вечно.

Если у вас есть больше времени, подумайте, как сделать светофор более реалистичным. Может быть, мы можем подождать дольше, когда он будет зеленым? Мигать, когда он желтый? Или просто сойти с ума и заставить все мерцать в другом темпе! Сходите с ума, дайте волю своему воображению. Развлекайся!!!

Краткое резюме

Итак, что мы узнали за эти короткие выходные?

  1. Работа макетной платы
  2. Как работает схема подключения
  3. Использование макетной платы для подключения большего количества контактов от Arduino
  4. Вечная петля

Что дальше?

Теперь, когда есть хорошая идея о светодиодах и макетах. Следующий проект, давайте перейдем к движущимся частям!

Ресурсы

Другие проекты

  1. Проекты Arduino выходного дня для родителей и детей — Project Zero: «Arduino, встречайте светодиод»