Периодически буду Вам напоминать, для того чтобы на хорошем уровне создавать действующие модели из ардуино, стоит подтянуть знания по следующим дисциплинам:
- программирование — будем писать программы и без него никак.
- электроника — для управления через электро-сигналы — нужно понимать специфику схем и принципы работы электронных компонентов.
- математика — как ни странно но создание интересных решений, требует создания математических моделей.
- метрология — глубоко затрагивать её не будем, но базовые знания желательны, всё что касается датчиков и принципов измерения.
- связь и сети — этот элемент важен на всех этапах и распространяется на всю систему, начиная со связи между датчиками и контроллерами и заканчивая выходом в интернет и безопасный доступ из любой точки мира.
- есть и другие дисциплины, но со всеми ними мы будем знакомится по мере необходимости.
Итак после того как Вы уже решили освоить ардуино, необходимо с чего-то начать. Предлагаю небольшой алгоритм, чтобы у вас в голове собиралась полная картина.
Программирование Ардуино с нуля. Arduino для начинающих.
1. Выбрать сам контроллер на котором вы будете учиться, всего их несколько видов. Заказать можно на Aliexpress аналоги, которые значительно дешевле, но ни чем особо не отличаются.
Arduino Nano , Arduino Uno , Arduino Mega2560 , Предложил Вам три варианта моделей, которых достаточно на первоначальном этапе. Начать можно с Нано, у меня есть Нано и Мега.
Обязательно к ним закажите перемычки разных типов штук по 20, также датчики температуры, дисплеи, светодиоды, но это уже будет постепенно.
2. Установить программу Arduino IDE .
Для начала скачиваем на официальном сайте.по ссылке Arduino IDE . .
Выбираем операционную систему и скачиваем. Дистрибутив бесплатный. для этого подтверждаем скачивание:
После того как файл появился в загрузках запускаем его и устанавливаем. Процесс в целом стандартный. После установки программы переходим к запуску приложения.
Итак ступень с установкой закончена. Приложение запускается и появилось такое окно:
Следующий этап — это подключение контроллера Arduino. Сложного тут нечего нет, если делать все по порядку и понимать, что делаешь.
3. Подключаем контроллер. Когда вы подошли к этому шагу, то понимаете, что необходим кабель по которому, Ардуино будет связан с компьютером. Для Mega 2560 и Uno нужен стандартный USB кабель( как у принтера). Для Nano используется microUSB или Type-C кабель. Я опишу сейчас процесс для подключения по Windows, так как под линукс сидят те люди, кого учить этому не надо(хотя если не знаете вдруг напишите, отвечу.)
После подключения кабелем к компьютеру на плате загорается светодиод наличия питания и скорее всего Windows сообщит об установке нового оборудования. Теперь нам необходимо узнать по какому порту новое устройство установлено. Для этого запускаем Диспетчер устройств. В строке поиска находим Панель управления -> Диспетчер устройств .
Открываем диспетчер устройств и видим строку Порты (COM и LPT), раскрываем её и запоминаем, что за нашим контроллером закреплен COM6.
После этого переходим к приложению Arduino IDE выбираем нужные настройки. Меню ->инструменты->Порт «Сом»->выбираем нужный .
Следующее, что необходимо сделать — это указать программе, какая модель контроллера подключена. В моем случае это будет Mega 2560.
Меню ->инструменты-> Плата
Далее для некоторых плат, могут быть использованы разные процессоры, поэтому выбираем аналогично процессор:
Получается, что этап подключения закончен, теперь переходим к программированию.
4. Самая простая программа для проверки правильности всех предыдущих действий. У ардуино на 13 выводе подключен светодиод, который расположен на плате, поэтому если у вас нет внешних светодиодов, то вы можете сразу подавать на 13 вывод сигнал и увидеть результат.
Теперь переходим к программе.
Саму программу я подготовил, можете скопировать отсюда и вставить:
int led1=13; //закрепили за переменной значение 13
void setup() < // начало модуля первичной установки
// put your setup code here, to run once:
pinMode(led1, OUTPUT); // вбрали режим порта 13
// put your main code here, to run repeatedly:
digitalWrite(led1, HIGH); // включаем светодиод
delay(100); // пауза в 0.1 секунды
digitalWrite(led1, LOW); // выключаем светодиод
delay(100); // пауза в 0.1 секунды
> // конец программы цикла
Перед проверкой и запуском, программа предложит сделать сохранения.
Источник: dzen.ru
Инструкция по Arduino для новичков. Первые шаги.
Привет друзья, меня зовут Алексей, и от имени и по поручению команды профессионалов Giant4 я решил написать небольшой курс статей — инструкций по использованию платы Arduino Nano и так называемой адресной лентой, на основе светодиодов ws 2812 b .
Давайте сначала поговорим о том, что Arduino из себя представляет в общем. Данное понимание просто необходимо, особенно если Вы в данном деле новичок. В этой серии статей мы преследуем цель обеспечить простой и безболезненный старт новичку, поэтому я намерен давать простые и понятные для восприятия термины и определения. Итак, поехали!
Для начала нам необходимо разобраться, что же такое Arduino . Если вы почитаете в интернете, то найдете множество разных определений, но я дам Вам свое, в корне отличающееся от остальных. Arduino – это платформа, предназначенная для простой и понятной разработки.
Arduino позволит легко разрабатывать свои собственные устройства, не имея ни малейшего понятия об архитектуре микроконтроллера (МК), не имея каких-то серьезных навыков программирования и даже не зная основ электротехники. Arduino – это не программа для написания кода, не интерпретатор, не компилятор, не программатор и даже не сама плата, на которой находится микроконтроллер.
Arduino – это все перечисленное выше, но и одновременно нечто гораздо большее. Это целая система, это философия, это то, что объединяет крутейшие идеи ведущих инженеров мира. Это комплекс программных и аппаратных решений. Но при всем при этом, Arduino считается детской игрушкой, с которой справится даже первоклассница.
Arduino – это то, что может показаться неоправданно дорогим и то, что составляет конкуренцию мировым лидерам по разработке и производству электроники, как в вопросе себестоимости, так и в функционале. И то, чем будет Arduino в Ваших руках, зависит только от Вас.
Возможно, я написал немало громких слов и немного запутал Вас. Тем не менее, все написанное выше чрезвычайно важно, и если Вы продолжите заниматься разработкой электроники с Arduino , то обязательно поймете это. А пока давайте вернемся к началу и сформулируем внятное определение. Arduino – это платформа, платформа для разработки электроники, позволяющая с минимальными затратами и усилиями программировать МК.
Arduino Nano
На фото изображена та самая плата к которой мы пишем инструкцию, она и называется Arduino Nano . Это уже готовая плата, в основе которой лежит МК ATmega 328, а также вся необходимая обвязка, превращающая популярный микроконтроллер в полноценное, самостоятельное устройство. Тут у нас и кварцевый резонатор, позволяющий МК работать на стабильной частоте, и стабилизатор напряжения, и микросхема, связывающая компьютер и устройство (для ее программирования).
Также имеется кнопочка сброса программы, индикация в виде светодиодов. Ну и несколько простейших радиокомпонентов, без которых устройство не заработает. В общем, все организовано таким образом, чтобы можно было просто подключить плату к компьютеру (по USB проводу) и начать работать. Как по мне, это очень здорово, при том что Nano имеет небольшой размер и выводы, предназначенные для впаивания в них гребенки с контактами. Имея данные контакты и провода под них, можно даже не пользоваться паяльником.
Подделка или оригинал
Дальше следует упомянуть о том, что плата, которая лежит у меня на столе, — это не совсем оригинал, это китайская реплика или даже можно сказать подделка. Она значительно дешевле оригинала. Но стоит отнестись к данной информации объективно. Во-первых, весь функционал такой же, как и в оригинале. Во-вторых, не потеряно удобство работы с данной платой.
В-третьих, итальянцы действительно слишком дорого просят за оригинал и невольно задумываешься об их чрезмерных аппетитах. Если интересно, сравните стоимость Arduino Nano из Китая со стоимостью такой же платы из официального магазина Arduino , и сами все поймете.
В общем, смысл простой: если есть возможность и желание переплатить, то можно поддержать разработчиков платформы, все-таки они подарили миру по-настоящему крутое решение. Но при желании сэкономить Вы ничего не теряете.
Также если Вы будете читать статьи других авторов, то в них часто можно увидеть упоминания подобного рода: «У Китая, конечно, дешево, но они постоянно глючат, ломаются и требуют «танцев с бубном». Вам это нужно? Вот если взять оригинал, то проблем не будет…» И Вы в растерянности будете думать: «Почему мнения расходятся? Почему объясняют по-разному?» Ответ, как правило, очень простой: в этих же статьях Вы наткнетесь на ссылки, ведущие в официальный магазин Arduino , то есть эти статьи писали не авторы, а продавцы, участвующие в реферальной программе. Как правило, данные статьи частично или полностью скопированы у настоящих авторов и доверять им не стоит, так как велик шанс того, что они только запутают Вас.
Подключение Arduino Nano
Давайте разберемся, как подключать нашу плату, чтобы ее использовать. Прежде всего следует обратить внимание на то, что все выводы на плате подписаны. Давайте начнем с электропитания. Самый простой способ подключить Arduino Nano – это подключить ее по USB проводу к компьютеру. В этом случае плата сразу же будет запитана и появится связь с компьютером для ее программирования.
Но этот способ используется, как правило, только для программирования и отладки работы. Согласитесь, будет не удобно таскать компьютер вслед за МК.
Зато на нашей плате имеются специальные выводы питания МК от внешнего источника. Подписаны они как: «+5», « VIN », « GND ». Если источник питания от 4,5В до 5,5В, то смело используем «+5» и « GND », если источник питания от 7-12В, то используем « VIN » и « GND ». Сразу хочу оговориться: во многих статьях указанно, что напряжение питания на « VIN » возможно подавать 6-20В, но я бы не советовал подключать больше 12в, так как понижающий стабилизатор может не справиться. Так как мы будем рассматривать Ардуино в связке с адресной лентой, нам больше и не потребуется.
Теперь давайте поговорим о других выводах платы. И сразу же ремарка: мы не будем говорить обо всех возможностях, а поговорим только конкретно о тех, что нам необходимы. На Arduino Nano имеются 14 контактов, начинающихся на букву « D ». Это цифровые входы и выходы. В зависимости от нашей программы, каждый из этих контактов может быть либо входом, либо выходом.
Объясняю, что это значит. Если, к примеру, вывод « D 4» объявлен как выход, тогда своей программой мы можем подать на него напряжение (+5В) или же снять напряжение, и на нем будет общий ( GND ). Полностью физически отключить вывод (на сленге — «ногу») не получится, так как у нас внутри не выключатель, но это нам и не нужно.
А если вывод « D 4» объявлен как вход, то программа может определить, подано напряжение извне или нет. Это можно использовать для внешних элементов управления платой, к примеру, кнопок.
Также хочу сказать, что для простоты понимания мы с Вами, в рамках данного курса, не будем оперировать выводами « D 0» и « D 1», там есть нюансы, которые только запутают нас на данном этапе.
WS 2812 B
И, наконец-то, пришло время поговорить об адресной светодиодной ленте на основе светодиодов ws 2812 b . Суть в том, что можно зажечь на данной ленте любой отдельный светодиод, любым цветом. Управление светодиодами происходит достаточно быстро и при должной сноровке можно организовывать целые световые шоу.
Каждый светодиод в ленте мы будем называть пикселем. Потому что один пиксель имеет внутри себя 3 светодиода разных цветов: красный, зеленый, синий. И, конечно же, пиксель «пляшет» от системы кодирования цветов RGB ( red , green , blue ). Также в каждом пикселе имеется микросхема, которая управляет степенью яркости того или иного цвета по средству ШИМ.
То есть, три ШИМ сигнала с микросхемы, расположенной внутри пикселя, управляют яркостью каждого светодиода по отдельности. Каждый из трех ШИМ сигналов может принимать 0 до 255 значений, то есть 8 бит. Из этого можно сделать вывод, что каждый пиксель на ленте кодируется 24 битами, а это, в свою очередь, 16 777 216 различных цветов, которые можно получить с одного пикселя. С нашей точки зрения, это очень круто?
А теперь небольшое разоблачение: на самом деле пиксели в адресной светодиодной ленте не имеют адресов. Данное название пошло скорее от народа. Работает это примерно так: пиксель, начиная с первого, получает пакет из 24 бит, начинает работать согласно инструкции, а получив за первым пакетом второй, передает его следующему пикселю, — и так до конца. Чтобы прервать этот цикл и начать заполнение с начала, необходимо выдержать временную паузу, причем эта пауза очень мала, а сами биты отправляются на достаточно большой частоте. Но если говорить честно, то мы не будем работать с битами напрямую, всю работу на себя возьмёт программная библиотека (которых, кстати, для Arduino огромное множество).
У нашей светодиодной ленты имеются три контакта: «+5 V », « GND » и « D ». Причем с одной стороны от светодиода у нас промаркировано « DO », а с другой « DIN ». « D » — это как раз линия, по которой идут команды. Команды могут идти только в одном направлении. « DIN » — дискретный вход, « DO » — дискретный выход. И, как правило, направление команд отмечено стрелочками.
Заключение
В этой вводной статье мы познакомились, в общих чертах, с чем собираемся работать в дальнейшем. Как я и говорил, теперь мы имеем общее представление и в следующей статье приступим к практике с большей уверенностью и пониманием дела.
Источник: giant4.ru
Что такое Arduino и зачем оно нужно?
Arduino — это компактное электронная плата, способная управлять различными датчиками, электродвигателями, индикацией,освещением, передавать и принимать данные. Arduino — это большое семейство устройств разных размеров и возможностей.
«Голова» Arduino
«Голова» Arduino — это микроконтроллер серии Atmega. Микроконтроллер представляет собой микропроцессор с памятью и различными периферийными устройствами, выполненой на одной микросхеме. По факту это однокристальный микрокомпьютер, который способен выполнять различные задачи. Разные модели из семейства Arduino оснащены разными микроконтроллерами, более и менее мощными и функицональными.
Как взаимодействует Arduino с внешним миром
Чтобы Ардуино взаимодействовать с внешним миром у него есть входные/выходные пины (контакты, выводы, палочки, дырочки), размещённые по периметру платы. Существуют платы Ардуино с большим количеством выводов, есть с меньшим. Например, самая большая плата в линейке Ардуино — Arduino Mega 2560 — имеет 70 независимых выводов, а самая маленькая — Arduino Pro Mini — всего 23 вывода.
На фотографии показаны Arduino Mega 2560 и Arduino Pro Mini, в них используются микроконтроллеры в другом (SMD) корпусе.
У каждого вывода Ардуино свое назначение. Есть выводы цифровые, а есть аналоговые. Основное отличие между ними в том, что на цифровых выводах возможно только 2 значения: либо логическая «1» (от 3 до 5 вольт), либо логический «0» (от 0 до 1,5 вольт), на аналоговых же выводах — существует диапазон от 0 до 5 В, который Ардуино измеряет с определенной точностью.
Зачем это необходимо? Давайте рассмотрим некий пример. Если подключить к цифровому выводу Arduino светодиод и подать на вывод логическую «1», то светодиод загорится; если подать «0» — светодиод погаснет. Никаких промежуточных вариантов не надо. Если светодиод подключить к аналоговому выводу, то яркость светодиода можно будет регулировать.
На практике к аналоговым выводам чаще всего подключаются какие-либо аналоговые датчики.
Чем может управлять Ардуино
Ответить на этот вопрос однозначно не возможно. Тут на что хватит фантазии. Но вот перечеь самых популярных вариантов:
- датчики температуры, влажности, осещенности, движения и др.
- ЖК дисплеи, индикаторы, светодиоды
- реле, кнопки, элементы коммутации
- Bluetooth,WiFi и Ethernet устройства
- Дальномеры
- Считыватели SD-карт
- GPS и GSM модули
- и многое другое
Как программировать Ардуино
Для программирования Arduino существует специальное программное обеспечение Arduino IDE. В этой простой программке с помощью несложных команд вы сможете «говорить» Ардуино, что нужно делать. Разобраться может даже человек без опыта программирования. Благо в интернете информации сейчас достаточно.
Начать можно с простых программ по миганию светодиодами, создания условий, циклов и пр. Можно использовать реле и упралять бытовыми приборами у себя дома или на расстоянии. Ардуино позволяет реализовать многие технические задумки без профессиональных навыков в этой области.
Где купить Arduino
В интернете большое количество магазинов по продаже Ардуино, но если Вы ищете самые низкие цены и проверенное качество, переходите в раздел Arduino магазина Амперо и выбирайте все что необходимо. Советуем начать ознакомление с покупки модуля Arduino Uno.
Источник: ampero.ru