Сайт про изобретения своими руками
МозгоЧины
Сайт про изобретения своими руками
Изготавливаем самодельную плату Arduino своими руками
Изготавливаем самодельную плату Arduino своими руками
В сегодняшней статье, поговорим о том, как изготовить самодельную плату Arduino своими руками. На МозгоЧинах уже выкладывалась похожая статья, кто заинтересовался прошу сюда. С практической точки зрения – проще купить готовую плату и не заморачиваться, но навыки, полученные при изготовлении данной поделки, в дальнейшем могут пригодиться.
Шаг 1: Необходимые радиодетали и инструменты
Процесс изготовления любой самоделки начинается с подготовки материально-технической базы.
Радиодетали:
- ATmega328;
- 2 электролитических конденсатора ёмкостью 10 uf (микрофарад);
- 2 конденсатора в круглом керамическом корпусе ёмкостью 22 pf (пикофарада);
- регулятор напряжения L7805;
- кварцевый резонатор 16 MГц;
- тактовая кнопка;
- светодиоды;
- панелька для микросхемы;
- регулятор напряжения LM1117T-3.3 (по желанию);
- 2 танталовых конденсатора ёмкостью 10 uf (микрофарад) (по желанию).
Инструменты:
Шаг 2: Описание
После того, как приобрели все радиодетали, пришло время произвести монтаж, но перед этим нужно сказать пару слов насчёт atmega328. Существуют два типа микросхем: с boot-loader (бутлоударом, он же загрузчик) и без него. Разница в цене микросхем не значительная, но если приобретёте «микруху» с бутлоударом, то сможете проскочить несколько шагов из данной статьи. Если же купите без загрузчика, то необходимо в точности выполнить всё, что описано в последующих шагах.
Загрузчик необходим для загрузки кода с Arduino IDE в микросхему.
Шаг 3: Загружаем «загрузчик»
Для этого шага будет нужна плата Arduino UNO. Следуя схеме, припаяем радиодетали на монтажную плату. На данной этапе, нет необходимости включать в схему регуляторы напряжения, так как Arduino обеспечит необходимое напряжение.
Настроим плату Аrduino UNO, как ISP. Это нужно сделать для того, чтобы плата прошила микроконтроллер ATmega, а не саму себя. Не подключайте ATmega, пока идёт загрузка кода.
- Подключим Arduino к ПК;
- Откроем Arduino IDE;
- Откроем > Примеры > Arduino ISP;
- Загрузим прошивку.
Шаг 4:
После того, как все элементы схемы соединены воедино, открываем IDE.
- Выбираем Arduino328 из Tools > Board
- Выбираем Arduino, как ISP из Tools > Programmer
- Выбираем Burn Bootloader
После успешной записи, вы получите «Done burning bootloader».
Шаг 5: Добавляем 5В регулятор
После прошивки загрузчика, завершим изготовлении платы. Регулятор напряжения L7805 – это важная деталь схемы. Распиновка следующая (смотрим на лицевую сторону): крайняя левая нога – вход, центральная нога – земля, а крайняя правая нога – выход.
Следуя схеме присоединим регулятор напряжения к arduino.
Шаг 6: 3.3 В регулятор напряжения
Данный шаг выполняется по желанию. Регулятор используется только для питания внешних шилдов/модулей, которым нужно 3.3В.
Шаг 7: Первая прошивка
Как только завершим сбоку, пришло время загрузить первый код. Для прошивки удалим родной микроконтроллер ATmega 328 с платы UNO и заменим его новой микрухой. Как только загрузим код, поменяем микросхемы местами.
Отладочная плата для Arduino Nano
На данный момент плата используется как учебная, тестер модулей с интернет- магазинов для различных микроконтроллеров (МК) и для создания законченных конструкций с минимальным изменением топологии печатной платы. В общем достаточно универсальная. Как всегда универсальность- это компромисс, который считаю был достигнут.
Блок- схема
Что имеется на плате: одно место используется для E01-ML01DP5 2,4ГГц или LoRa-01 433MГц. Одновременно их можно подключить используя вариант «на проводках». Еще SIM800L+ конвертер уровней 5 2.7 В для него, LCD ST7735S 128×128 или 128×160, MCP23017/ MCP23S17- расширитель на 16 портов с широкими возможностями конфигурирования направления, прерываний и с вариантами шин IIC (TWI) и SPI, часы на DS3231+ 24С32 (можно заменить на FM24C32 или FM24C64), гнездо под микро- SD с конвертером уровней 5 3,3В на LVC125A «Catalex v1.0», стабилизатор AMS1117 на 3.3В для плат Аrduino Nano без оного, зажимы KF141R-2.54 питания 4В для SIM800, 5В- питание от стабилизированного напряжения и зажимы для напряжения 7- 9В, зажимы для питания дополнительных модулей на 5 и 3.3В и 16 зажимов расширителя портов, 2- для ADC и 4- для портов от самой Аrduino Nano. Каждый порт имеет свой «общий» зажим соединённый с минусом. DIP- переключатели DS1040-XXX (ВДМ-1-ХХ) выбора адреса MCP23х17 и выводов прерываний МК от различных источников.
Вот такой вид со всеми модулями расширения
Зажимы XS3V3 и XS5V на фотографии не видны, но они есть в последней версии.
Печатная плата
Рисовалась в Sprint Layout для изготовления методом ЛУТ, со стороны деталей используется 37 перемычек, несколько из них устанавливаются по мере надобности. Сначала сверловка плат выполнялась вручную. С помощью Anet A6 с минимальной доработкой получилось добиться приемлемого качества автоматического сверления. Процесс изготовления печатной платы до запаянной занял примерно сутки. Ширина зазора между дорожками в некоторых местах 0,2 мм и 0,3 мм и более в остальных. Ширина дорожек 0,5 мм минимум, в основном 0,7 и 0,8 мм.
Компоновка элементов исходя из размеров фольгированного стеклотекстолита FR-4 продаваемого в интернет- магазинах 100х150 мм. На модули запаиваются не квадратные шпильки 0,8 мм в «родном» исполнении, а занимающие меньшую площадь круглые, диаметром 0,5 мм. Они не мешают проходить проволочным перемычкам между ними со стороны деталей, легче провести дорожку между их площадками для пайки и сразу же дают возможность снять и запаять проверенный- настроенный модуль в рабочую плату.
Перемычка J1 используется для подключения стабилизатора 3.3 В установленного на плате Arduino Nano к другим потребителям, в случае использования внешнего U1 она не требуется. J2 и J3 дают 2 варианта подключения цепи сброса GSM модуля, через конвертер уровня и напрямую соответственно. J4 обходит ключ ШИМ- управления яркостью ST7735 на транзисторе VT1. J5- подключает вход ADC6 для контроля напряжения питания GSM модуля SIM800L. J6 подключает вывод опорного напряжения к 3.3 В. С1 и R3- внешняя цепь сброса. D1- защита от ошибочной смены полярности при использовании БП с напряжением выше требуемых 5 В. Входные цепи 16- ти портов расширителя и 4 от платы С0- С4 служат для подавления помех для защиты от повреждений и ложных сигналов. Туда входят, на примере 1- го входа расширителя XS1, R4, 5, 6, 68, C36, стабилитрон D7. Для защиты аналоговых входов служит сборка PRTR5V0U2X.
Далее DIP- переключатели:
SW1- подключает сигнал прерывания от порта А расширителя (вывод ITA) на вектор прерываний 0 (D2 Nano)
SW2- подключает сигнал прерывания от порта B расширителя (вывод ITB) на вектор прерываний 1 (D3 Nano)
SW3, 4, 5- выбор адреса расширителя если он с шиной IIC, А2, А1, А0 соответственно
SW6, 7, 8, 9- подключают шину расширителя если он с шиной SPI, MISO, SS, MOSI, SCK
SW10, 11- подключают шину IIC, SCL, SDA соответственно
SW12, 13- подключают сигнал прерывания от E01-ML01DP на 1 (D3) и 0 (D2) соответственно
SW14, 15- подключают сигнал прерывания от DS3231 на 1 (D3) и 0 (D2) соответственно
Модуль LoRa-01 с шагом выводов 2 мм, предназначен для поверхностного монтажа, был распаян на переходной плате с конвертером уровней TXS0108 в корпусе TSSOP- 20 и антенным разъёмом IPX (U.FL).
Kонвертер «Catalex v1.0» c LVC125A для использования «из коробки» не пригоден, была произведена доработка. Оторван вывод 13 и припаян к выводу 8 или можно к SMD- резистору R1 что подключен к выводу 9, разницы в работе не замечено.
На фото со всеми модулями платы вверху виден разъём SМА с гайкой, накрученный на антенный выход. Так вот, между центральным выводом и корпусом разъёма припаяны параллельно 2 сопротивления SMD типоразмера 1206 по 100 Ом каждый, что даст в сумме 50 Ом и 0,5 Вт рассеиваемой мощности. Это служит эквивалентом антенны и позволит не сжечь транзистор выходного усилителя. При работе на передачу в постоянном режиме с мощностью даже 100 мВт без нагрузки грозит выходом из строя модуля, а ведь ещё бывают и 500 мВт. При экспериментах приём- передача стабильно работает в пределах стола при минимальном уровне мощности.
Концепция повторного использования предыдущих наработок подтвердила свою эффективность. Сокращение времени до получения рабочего устройства, стало возможно быстро и малозатратно удовлетворять дополнительные требования. Удобно настраивать несколько модулей за раз используя разъёмное соединение. Свойства важные в условиях дефицита ресурсов.
Были разработаны и изготовлены GSM/ радиосигнализация, система сбора и логирования информации, учёт времени работы технологического оборудования. В работе многоканальная гирлянда (скоро Новый год), электрические защиты электродвигателей, технический учёт расхода электроэнергии, управление отоплением и освещением промышленных объектов, технологическим оборудованием.
Замечания, предложения, конструктивная критика приветствуются и да, уже осваиваю STM32, SW4STM32, Куб, так что без холиваров пожалуйста.
Продолжение.
Arduino nano печатная плата lay
Официальную версию Arduino можно купить примерно за 27 евро. Есть отечественные аналоги (например Freeduino) и китайские копии которые стоят немного дешевле. Но зачем покупать? Ведь можно сделать Arduino своими руками.
Плата подключается к компьютеру и прошивается через USB благодаря микросхеме FT232RL на борту. С помощью джампера можно выбрать от какого источника будет питаться Arduino: USB порт компьютера (позиция «int») или от разъема блока питания (позиция «ext»). Так же присутствует джампер разрешения автоматической перезагрузки (auto reset enable).
Достоинством данной платы является то что она односторонняя и легко изготавливается в домашних условиях.
Данный проект разработан в P-CAD. Вот скриншот электрической схемы:
А вот вид печатной платы самодельной Arduino:
Ну и расположение компонентов на схеме:
Советую электролитические конденсаторы уложить на бок (имеются ввиду C7 и C8).
После того как сделаете данную плату, не забудьте прошить контроллер Atmega8 (прошивка как и файлы печатной платы можно скачать по ссылке в конце статьи). ВНИМАНИЕ: обязательно выставьте корректные фьюзы!
Младший байт:
BODLEVEL 1
BODEN 1
SUT1 0
SUT0 1
CKSEL3 1
CKSEL2 1
CKSEL1 1
CKSEL0 1
Старший байт:
RSTDISBL 1
WDTON 1
SPIEN 0
CKOPT 0
EESAVE 1
BOOTSZ1 0
BOOTSZ0 1
BOOTRST 0
После того как вы прошили свою самодельную плату Arduino нужно установить драйвер FTDI (скачать можно на официальном сайте)
Теперь запускаем Arduino IDE и начинаем творить. Только не забудьте предварительно выбрать используемую плату: Сервис -> Платы -> Arduino NG or older w/ATmega8.
Вот и все. Итак, для того чтобы сделать Arduino своими руками вам нужно скачать этот архив. Там вы найдете файлы P-CAD с печатной платой и схемой, прошивку для ATMega8, список деталей для покупки с примерной стоимостью, а также даташит на AVR контроллер ATMega8. Ну и напоследок хочу сказать что плата совместима абсолютно со всеми Arduino шилдами.
Печатная плата Arduino, разведенная в Sprint-Layout 5.0
Вы можете скачать печатную плату USB Arduino разработанную в Sprint-Layout 5. Данная программа более популярна среди радиолюбителей, нежели P-CAD. За разведенную плату огромное спасибо Дмитрию Ефремову. Печатная плата проверена, ошибок нет.
Фото готового устройства
Вид сверху
Вид снизу
Руководство пользователя
Так же Николай Вахрушев составил небольшое руководство пользователя — семи страничная шпаргалка по самодельной USB Arduino. В руководстве вы увидите фотографии Ардуино с подписанными разъемами, джамперами, кнопками, индикаторами и выводами. Также дано детальное описание и назначение каждого элемента на плате. Последние три страницы: перечень необходимых компонентов, печатная плата (можно сразу печатать для ЛУТ) и электрическая схема.