Arduino Nano 3


Раз пошла ардуинская волна, вставлю и свой нано-обзор. В последних обзорах увидел странные советы новичкам по выбору своей первой ардуины. По-моему, лучше взять такой вариант + макетку и провода (которые новичку все равно понадобятся), и будет куда меньше возни и случайных разрывов (одна плата вместо двух), чем с мегапопулярной Uno, например, или прочими громоздкими платами.

Основные преимущества Nano — компактность и готовность работы из коробки. И цена. Есть, конечно, Pro Mini за три бакса, но у них менее подходящая для новичков кривая обучения, слишком крутой первый шаг — найти «программатор» и правильно его подключить.




Обычная плата Arduino Nano v3 на базе микроконтроллера ATmega328. Рассмотрим поближе.


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

Первые пробы


Включаем питание и видим мигающий раз в 2 секунды диод (секунду включен, секунду выключен). После подключения платы к компу винда (семерка x64) поставила на нее драйвер, создав виртуальный COM-порт, который нужен для связи с микроконтроллером. Предварительно была установлена Arduino IDE, вместе с которой устанавливаются все необходимые драйверы. Так у меня завелся виртуальный COM-порт под номером 87.

Попробовал загнать тот же скетч Blink с немного измененными параметрами (чтобы видеть разницу с уже прошитым Blink) через Arduino IDE. Предварительно в опциях выбрал плату и тип процессора и, кажется, пришлось еще явно указать COM-порт в том же меню, после чего всё сразу заработало. Вот этот момент и способствовал дикой популяризации Arduino — подключил, залил, работает. Ну еще и всякие готовые датчики и прочие платки, а также готовые библиотеки к ним, которые вписываются в эту же концепцию. Plug'n'Play мира микроконтроллеров.





Магия автономности


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

В случае мигания светодиодом можно обойтись литиевой батарейкой без всяких преобразователей. Микроконтроллер может работать от таких низких напряжений, но могут не работать или работать неправильно некоторые другие вещи на плате, которые для мигания светодиодом не нужны. А можно взять две последовательно соединенные литиевые батарейки и подать с них напряжение на VIN/GND, тогда сама плата преобразует их суммарное напряжение в необходимые 5 В.

В общем, отключаем «пуповину», подключаем к батарейке… и у нас есть переносная мигающая лампочка. Дороговато за 8 потраченных на плату баксов, но это самое малое, что она может, и потенциал есть как в ширину (периферия), так и в высоту (на мигание диодом нужно совсем мало ресурсов, остается еще очень много).

Проверял, насколько громко может орать компьютерный спикер:



Оказалось, что без риска сжечь МК (может выдать до 40мА) пищит он не так уж громко, из соседней комнаты не слышу, но это решается простейшим усилителем на транзисторе.

Цели покупки


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

Скорее всего, дальше я буду покупать трехбаксовые Pro Mini, они умеют то же самое, но не имеют на борту дорогого преобразователя USB-UART, который теперь мне не нужен, так как в его качестве может выступать этот Nano или купленный дополнительно за 2 бакса преобразователь. Либо найду что-то еще проще и дешевле, в зависимости от конкретной задачи. Еще надо будет выбрать способ передачи данных, провода — уже не интересно, а в мире радио есть варианты, каждый со своими особенностями.

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

Плюсы:
  • для запуска не нужно вообще ничего больше, чем есть в комплекте (кабель и плата)
  • компактность
  • штырьки по периметру — удобно вставить сразу в макетную плату, широкую DIP-панельку или просто впаять в другую плату

Минусы:
  • цена, но в основном из-за добавления комфорта (USB-UART)
  • чрезмерно яркий синий диод питания, с ним сразу придется что-то делать, иначе слепит
  • также излишне яркий «отладочный» белый диод



Покупал в фастеке из-за нежелания лишний раз идти на почту из-за экономии в бакс или около того (добавил к заказу). На ибэе или али можной найти дешевле.
Планирую купить +67 Добавить в избранное +35 +77
+
avatar
  • cofein
  • 27 января 2014, 01:55
+2
спасиббо спасбо спасбо ))) теперь я знаю где куплю )) буду реализовать вот этот проект ) habrahabr.ru/post/168657/ жаль что китайцы не хотят мне продвать ленту по доступной цене ((
+
avatar
  • Pavle
  • 27 января 2014, 02:50
0
Я покупал на тао, половина ленты (2.3 метра) ушла на 30" монитор. Если обклеивать 24, то хватит на 3 штуки.
item.taobao.com/item.htm?id=16038882466
10 баксов за метр, в катушке 5 метров. Дешевле нигде не нашел. Брал через мистертао, вышло где-то 60 полная стоимость, думаю. Через йойобай может дешевле выйти.
+
avatar
  • Ust59
  • 27 января 2014, 06:47
0
Я уже почти реализовал, осталось только настроить, все никак руки не доходят. Метр ленты покупал примерно за 500р на Али.
+
avatar
0
Вот за 11 баксов — метр
+
avatar
+2
Pro Mini за три бакса, но у них менее подходящая для новичков кривая обучения, слишком крутой первый шаг — найти «программатор»
Шо, и это нынче считается крутым шагом?
Тогда скажу по секрету, боооольшому секрету
либо такой
«Программатор» найден, осталось только проводки напялить на нужные контакты, и жмакнуть «залить скетч»
Есть правда нюанс с reset, но для новичков, пойдет и ручной сброс при прошивке
Дополнительная информация
Если просто соединить reset на ардуине, и на «программаторе», то во время прошивки, у вас через некоторое время вывалится ошибка
Чтобы этого не произошло
«Когда вы нажимаете «Upload» в Arduino IDE, внимательно смотрите на статусную строку. Когда «Compiling» меняется на «Uploading», быстро нажимайте кнопку «Reset» на плате. В течение секунды максимум написанный и скомпилированный скетч попадёт в плату и она готова к работе.»

Операция эта совсем не страшная, и безболезненная
+
avatar
  • sku
  • 27 января 2014, 03:12
+2
Возможно, я немного преувеличил.
Но не думаю, что для первой и, возможно, единственной ардуинки новичку имеет смысл экономить пару баксов, как вы предлагаете.
+
avatar
  • gogabig
  • 27 января 2014, 04:30
+1
Есть правда нюанс с reset, но для новичков, пойдет и ручной сброс при прошивке
Я уже не раз писал что такой проблемы НЕТ с вот такой платой:

Вывод DTR это и есть сформированный сигнал «Reset», вот ещё раз даю ссылку, сами запомните и друзьям расскажите: ebay.com/itm/251155233587

Если у вас преобразователь только с 5-ю выводами, то есть тоже очень простой выход: фридуин.ство.рф/?p=920

И давайте закроем эту тему, я правда уже устал писать про эту проблему сигнала «Reset»! :-)))
+
avatar
  • sku
  • 27 января 2014, 04:40
0
Проблема в том, что такие платы на FTDI существенно дороже тех, что на PL2303HX, например. Видел еще какое-то решение с конденсатором, но не уверен, что в тему. Либо я не увидел, либо вы коммент дополнили, там как раз это описано.
+
avatar
  • gogabig
  • 27 января 2014, 04:49
0
Я вам дал ссылку с конденсатором, вот ещё раз: фридуин.ство.рф/?p=920
Проблема в том, что такие платы на FTDI существенно дороже тех, что на PL2303HX
Да нет такой проблемы, цена платы $5.93 это сейчас 205руб, ну и сильно дорого?
+
avatar
  • sku
  • 27 января 2014, 05:30
0
Зависит от контекста. Если в первый раз и, возможно, один раз, то смысла вместо Nano брать раздельный комплект немного, особенно за те же деньги.
+
avatar
  • gogabig
  • 27 января 2014, 05:41
0
Да я против Nano ничего и не говорил, но эта плата если встраивать, то USB на борту лишний, а если макетировать, то и Мини хороша:
+
avatar
  • gogabig
  • 27 января 2014, 04:58
0
либо вы коммент дополнили
Это да, я за пару раз писал, видимо вы и попали в «зазор» :-)))
Вот кстати и оригинал: forum.arduino.cc/index.php?topic=114344.0, там полезная схемка есть.
+
avatar
  • paper
  • 02 февраля 2014, 04:54
0
А скажите пожалуйста вот это то же самое?
+
avatar
  • gogabig
  • 02 февраля 2014, 18:20
0
Да, практически то же самое, только дешевле. Нет переключателя напряжений, нужно перемычкой задавать, и нет разъема ISP, но это всё и не важно.
+
avatar
  • paper
  • 12 февраля 2014, 20:55
0
Получил такой. Подскажите, перемычку паять нужно? Без нее работать не будет?
+
avatar
  • gogabig
  • 12 февраля 2014, 22:33
0
По идее нужно запаять перемычку, у моего переключатель только на два положения, так что одна из «перемычек» в нём всегда замкнута.
+
avatar
  • gogabig
  • 27 января 2014, 04:15
0
чрезмерно яркий синий диод питания
излишне яркий «отладочный» белый диод
Проблемы? Неее :-)
+
avatar
  • sku
  • 27 января 2014, 04:37
0
Маркера оказалось недостаточно, с боков еще светил, закрасить не получилось. Я залепил некоторой белой фигней, получилось нормально по яркости, хоть и некрасиво.



Надо бы просто резистор заменить, но на плате стоят резисторные сборки, и у меня нет нужной на замену.
+
avatar
  • gogabig
  • 27 января 2014, 04:41
+9
с боков еще светил
Дык и пусть светит, он же не слепит и не мешает, я с боков специально не закрашиваю. :-)))
Чтобы совсем не светил — дорожку скальпелем чик и полный мрак! :-)))
А то у вас как… как… как… воробей насрал!!! :-)))
+
avatar
  • sku
  • 27 января 2014, 04:47
0
Дык слепит. Какой-то мегаяркий диод туда впаяли.
Плата лежит на краю стола, например, и диодом в бок светит. Вроде и не сильно, но через полчаса уже надоедает.
+
avatar
  • gogabig
  • 27 января 2014, 04:53
+2
:-))) Ладно, ваша плата, вам решать! Вас, перфекционистов, фиг поймёшь, но когда на плате НАСРАТО — это не кошерно! :-)))
+
avatar
  • sku
  • 27 января 2014, 05:17
+2
можно маркером закрасить )))
+
avatar
+2
Спросите любого орнитолога — то был не воробей, а чайка.
+
avatar
  • gogabig
  • 27 января 2014, 14:31
+1
:-))) У меня кормушка для «мелких летунов» на балконе, я знаю как… как… как… выглядит воробъиное говно, блин каждую весну тоннами отмываю, хорошо что коровы не летают!
Это только начало:-)
+
avatar
  • MS51
  • 03 мая 2017, 12:34
0
Хорошо, что не корова…
+
avatar
  • sas007
  • 27 января 2014, 10:49
0
Такой Arduino для создания термометра подойдет?
+
avatar
  • sav13
  • 27 января 2014, 11:32
0
Любой подойдет.
+
avatar
  • Rost
  • 27 января 2014, 11:12
0
Кто разбирается в ардуинах, подскажите как решить следующий вопрос.
Имеется китайский инверторный генератор, у него сдох инверторный блок (проблема распространенная), новый блок стоит почти как новый генератор, и нет никакой гарантии, что он не умрет снова. Кратко, схемотехника у них такова, что не защиты выходного igbt-моста, если контроллер глюканет и включит транзисторы из противоположных плеч, на выходе возникнет КЗ и блоку конец. Сам блок сделан максимально неремонтопригодным, все залито компаундом.
Короче, есть идея вместо этого блока поставить ардуину крутить шаговик заслонки карбюратора, на выход повесить трехфазный мост и без преобразования отправить на импульсный зарядник для аккумов. Шаговик там с 4 проводами.
Подскажите, что купить, с чего начать. С ардуинами пока дел не имел.
Преобразователь usb-ttl имеется. Я так понимаю, достаточно мини-ардуинки за 100р, но непонятно как работать с шаговиком, нужна дополнительна плата? Ткните, какую надо, плз.
+
avatar
  • bazis13
  • 27 января 2014, 11:49
0
Да, нужна дополнительная плата. aliexpress.com/snapshot/279233264.html
+
avatar
  • Sanja
  • 27 января 2014, 11:57
+1
В Arduino есть такая штука, как «перывания» (interrupts) — которая позволяет в реальном времен реагировать на сигналы от датчиков.

Шаговым двигателем вы сможете крутить с помощью драйвера на чипе L298N, типа такого: ebay.com/itm/170926726867

Вам нужно будет хорошенько подумать над decoupling питания ардуины — поскольку броски питания у вас будут будь здоров, и наводки тоже. Вам же не хочется, чтобы в разгар процесса микроконтроллер решил перезагрузиться? Как минимум, поставьте LM2940CT и жирный конденсатор на входе: arduino.bougakov.com/post/44802340184/ok-enough-with-preparations-lets-make-some-real
+
avatar
  • Rost
  • 27 января 2014, 12:19
0
Вот родной контроллер походу иногда глючит из-за наводок от системы зажигания.
А перезагрузка долго длится? Если меньше секунды и не на постоянной основе, то это можно пережить. Управление заслонкой — процесс относительно небыстрый.
+
avatar
  • Sanja
  • 27 января 2014, 17:18
0
Pro mini — секунду, Leonardo и его братья — секунды три.

Если вынести bootloader из памяти ардуины и шить вашу программу программатором — то перезагрузка мгновенна (ну, держим в уме время на переопрос всех датчиков и прочтение из энергонезависимой памяти EEPROM байтиков, если мы там что-то хранили)
+
avatar
  • Aahz
  • 27 января 2014, 14:17
+1
Зачем вам L298N для шагового двигателя? Гораздо вкуснее A4988
buyincoins.com/item/35782.html
Цена почти такая же, микрошаг до 1/16, есть регулятор тока, до 2А(с радиатором, без радиатора до 1А).

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

P.S. Если хотите шаговый мотор на поиграться, берите этот. Драйвер в комплекте.
buyincoins.com/item/11544.html
+
avatar
  • Rost
  • 27 января 2014, 16:31
0
У меня шаговый мотор уже есть. Он на управлении заслонкой карба стоит, у него 4 провода, это какой тип? 4-фазный?
Еще я не понял, как китайцы определяют положение заслонки, ведь она когда до конца дойдет то упрется и двигатель остановится или привод сломает.
+
avatar
  • Sanja
  • 27 января 2014, 17:16
0
Так вы же калибровать сервопривод будете. Что не мешает вам поставить датчик положения заслонки — оптический, по насечке на оси или магнитный, с геркончиком — и по его показаниям, в случае необходимости, останавливать агрегат и звать хозяина.
+
avatar
  • Aahz
  • 27 января 2014, 18:31
0
Навскидку, у вас биполярный 2-фазный мотор. Выводы должны соединяться двумя парами. Проверьте, или корпус не соединен с катушками (общий пятый провод).

Если боитесь, что грязь может попасть на датчик положения, можно использовать наподобие такого
buyincoins.com/item/12325.html
срабатывает на приближение железяки к пластиковой пимпочке. Есть много подобных, с разным расстоянием срабатывания, мет. корпусом и т.д.
+
avatar
  • Sanja
  • 27 января 2014, 17:25
0
Спасибо за уточнение, мой опыт как раз «двумя гусеницами» ограничивается
+
avatar
  • alamer
  • 28 января 2014, 03:34
0
STM32
+
avatar
0
Купил такую же платку. Вопрос знающим: можно ли на её основе или на mini pro сделать дополнительные клавиши для компа?
+
avatar
  • Sanja
  • 27 января 2014, 17:22
+1
Вам лучше посмотреть в сторону Leonardo или Pro Micro — там эмуляция USB-мыши и USB-клавы — «из коробки».

Видел пример, где старый джойстик прикрутили к Leonardo, замаскировав его перед Windows как «мышь» — и с его помощью «летали» над глобусом Google Earth
+
avatar
  • alamer
  • 28 января 2014, 03:36
+1
STM32F4 Discovery тоже есть всякие гироскопы с акселерометрами.
+
avatar
  • Aahz
  • 27 января 2014, 18:15
+2
Если вы собираетесь обрабатывать нажатия клавиш своей программой, то подойдет. Данные по нажатиям клавиш отправляете в СОМ порт, программа данные принимает и реагирует на них.

Для эмуляции HID устройства (клавиатура, мышь) нужна плата с чипом 32U4, а тут стоит FTDI.
Можно глянуть что-то наподобие:
ebay.com/itm/161180119731
(Себе заказал подобную, второй месяц жду)
+
avatar
0
Можно ведь и не оригинальный arduino leonardo поставить, дешевле будет, типа sainsmart.