воскресенье, 19 января 2014 г.

Arduino Nano v3


Обычная плата 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)
  • чрезмерно яркий синий диод питания, с ним сразу придется что-то делать, иначе слепит
  • также излишне яркий "отладочный" белый диод

См. также

Комментариев нет:

Отправить комментарий