Отладочная плата для Arduino Nano

    На данный момент плата используется как учебная, тестер модулей с интернет- магазинов для различных микроконтроллеров (МК) и для создания законченных конструкций с минимальным изменением топологии печатной платы. В общем достаточно универсальная. Как всегда универсальность- это компромисс, который считаю был достигнут.

    Блок- схема




    Что имеется на плате: одно место используется для E01-ML01DP5 2,4ГГц или LoRa-01 433MГц. Одновременно их можно подключить используя вариант «на проводках». Еще SIM800L+ конвертер уровней 5<-> 2.7 В для него, LCD ST7735S 128x128 или 128x160, 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 мм. Они не мешают проходить проволочным перемычкам между ними со стороны деталей, легче провести дорожку между их площадками для пайки и сразу же дают возможность снять и запаять проверенный- настроенный модуль в рабочую плату.



    Принципиальная схема
    image alt

    Описание схемы
    Перемычка 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, Куб, так что без холиваров пожалуйста.
    Продолжение.

    Комментарии 27

      +7
      и для создания законченных конструкций с минимальным изменением топологии печатной платы.
      Законченных конструкций — на этом?
      Громоздкая и ненадежная конструкция, все соединения на штырьках, не похоже чтобы хотя бы стойки под модулями были.
      Что имеется на плате:
      Оно точно нужно все одновременно?
      Еще интересно что всякую экзотику вы на плату установили, а вот базовый функционал — нет. Где гребенки для подключения скажем к беспаечной макетке, где разъем UART, где светодиоды и кнопки? Еще при беглом просмотре не увидел откуда подается питание. Вряд ли же через usb разъем ардуины, там мощности не хватит.
      зажимы для напряжения 7- 9В, зажимы для питания дополнительных модулей на 5 и 3.3В
      То есть разъемы все-таки есть? Но почему не нормальное круглое гнездо вольт на 12 — 20 со стабилизаторами на все случаи жизни?
      Или эта плата позиционируется не как макетная, а как тестовая для конкретного набора модулей?
      На модули запаиваются не квадратные шпильки 0,8 мм в «родном» исполнении, а занимающие меньшую площадь круглые, диаметром 0,5 мм. Они не мешают проходить проволочным перемычкам между ними со стороны деталей, легче провести дорожку между их площадками для пайки
      Странное решение. Не припомню чтобы у меня были проблемы с разводкой между обычными квадратными штырьками. Это если руками рисовать (перманентным маркером) или царапать — там да, 2.5 мм маловато. Но у вас-то явно что-то более серьезное. Ага, увидел, ЛУТ. Так им 0.25/0.25 сделать можно, не то что дорожку в 2.5 мм зазор продеть.
      для портов от самой Аrduino Nano
      А собственно зачем там Ардуина? Вроде с разводкой платы у вас проблем нет, могли бы контроллер со всей обвязкой прямо на плате и расположить. Или опять речь не об отладочной плате, а о проверке конкретных модулей, включая модуль ардуины?
      Замечания, предложения, конструктивная критика приветствуются и да, уже осваиваю STM32, SW4STM32, Куб
      А тут хорошо бы определиться с нишей вашей платы. Если она предназначена для тестирования модулей, то проще какую-нибудь AVR-ку многоногую запаять и прошить чем-то универсальным чтобы сама все тестировала.
      Если предполагается тестировать в том числе контроллерные модули, предвижу проблемы с разъемами: у Ардуины и bluepill они отличаются как по цоколевке, так и по напряжению.
      Ну а если плата отладочная, то уж больно узкоспециализированная, непонятно что на ней вообще можно отладить.
      гнездо под микро- SD с конвертером уровней 5<->3,3В на LVC125A «Catalex v1.0»
      это та синяя штука, которая торчит за пределы платы даже без подпорок? Опять же было бы логично распаять ее на самой плате. Или хотя бы закрепить понадежнее.
      Еще крепежные отверстия выглядят странно. Они под какой-то конкретный корпус или где поместились? Корпус вообще предполагается? Если нет, все равно стоит снизу прикрутить хотя бы пластинку изолирующего материала. Да хоть картона — мало ли какой электропроводный мусор на столе окажется.
        +1
        Сначала полюс за объём не глядя, объёмный пост того стоит непременно. Теперь по порядку заданных вопросов.
        1.Законченная конструкция макетной платы- да, в неё вошел набор модулей по кругу задач по разработкам так скажем. Что на ней уже сделано и работает и планируется сделать- я написал в конце. Конструкция громоздкая и ненадёжная если бы не была для работ вне стола. Показан именно такой вариант, «столовый». Под модулями стойки на липучках, пластиковые кубики с двухстороннем скотчем. Учту и не буду использовать устаревшие/ неполные фото.
        2. Конечно нет задач и не планируется задействовать всё одновременно. Конкретно на вопрос где гребенки к беспаечной плате нет и не будет, как раз уход от неё одна из причин создания. UART доступен: на плате есть отверстия под шпильки у выводов D0 и D1; A0, A1-soft UART модуля GSM на зажимах XS25, 26, на гребенке GSM с логическим уровнем 1- 2,7 В; свободная софт- пара на XS23, 24. Про остальное я буду смотреть. Светодиодов и кнопок не требовалось в принципе (круг задач...). С питанием разобрались сами.
        3. С нормальными круглыми гнёздами беда, их навалом разных конструкций. А вот 2 зачищенных провода- одна. Я в конце ещё раз поясню в чём дело.
        4. Эта плата позиционируется как макетная и тестовая для конкретного набора (круг задач)+ возможности проводов и зажимов.
        5. Согласен, без пояснения странная замена штырьков. У круглых площадь отверстия меньше, больше механическая прочность площадок по отслаиванию от стеклотекстолита. Не важно насколько, а максимально больше не в ущерб другим требованиям.
        6. Спалил Ардуину, вынул и в коробочку, перепаять когда время есть. Да все компоненты и проверить можно и отладить с ними.
        7. А ниша у платы одна- на все руки мастер в указанных пределах. Т.е. Ардуино Нано и модули что есть+ всё остальное неизвестное на проводах с хорошими зажимами. Плата хорошо подготовлена к неожиданностям.
        8. Да, синяя штука для карточки SD, больное место для макета но уже решено, есть место крепления для готового изделия. Конечно всё потом вынимается и припаивается в другую плату. Отверстия для крепления ближе к месту приложения усилий, около зажимов. Остальные исходя из механической прочности. Корпус- 2 листа оргстекла сверху и снизу на стойках из нейлона. Или на стойках на столе без. Окончательный корпус- любой, состыковка промежуточным листом из 0,5 мм дюраля с отверстиями платы, корпуса и уголками жёсткости.
        Обещанные пояснения.
        Дело в том, что не получается принять что- либо как внутренний стандарт. Закупить например 100шт. пар мама- папа и сидеть клепать. Неизвестно что потребуется завтра. Если есть несколько блоков питания с разными разъёмами- то можно за 1- 5 мин. переразвести плату под нужное гнездо. Покупать БП да и чего другого по ХХшт. да ещё с запасом мощности «на вырост» или несколько ступеней нет финансовой возможности. Перепаивать разъёмы- зачем? Максимальная гибкость.
        Большое спасибо, не ожидал что надо так подробно описывать конструкцию.
          +2
          Конкретно на вопрос где гребенки к беспаечной плате нет и не будет, как раз уход от неё одна из причин создания.
          Вот это зря. Если макетка уже есть и появилась надобность проверить какую-нибудь экзотическую периферию. Более того, места-то у вас там хватает, кусок беспаечной макетки можно прямо туда прикрутить. Да, сопли еще хуже, чем у ваших штырьков, зато резко повышается универсальность.
          Под модулями стойки на липучках, пластиковые кубики с двухстороннем скотчем.
          Лучше все же стойки, по крайней мере для тех модулей, у которых есть соответствующие отверстия, вроде того же LCD. Да и для остальных можно что-нибудь приличное изобрести. Да хоть защелку кустарную из впаянного перпендикулярно куска текстолита.
          Конструкция громоздкая и ненадёжная если бы не была для работ вне стола.
          Наверное, имелось в виду «работ на столе».
          UART доступен: на плате есть отверстия под шпильки у выводов D0 и D1; A0, A1-soft UART [...]; свободная софт- пара
          Имеет смысл поискать контроллер с несколькими аппаратными UART. Вы там изучаете ARM, у них с этим все вроде в порядке, но и AVR такие есть. Может быть, даже в DIP-корпусе (это к вопросы «сгорела — поменял»). UPD: Первым же запросом нашлась ATmega162 в корпусе DIP-40.
          3. С нормальными круглыми гнёздами беда, их навалом разных конструкций. А вот 2 зачищенных провода- одна. Я в конце ещё раз поясню в чём дело.
          Была у меня в детстве паечная макетка с AT90S8515 с круглым разъемом, туда прекрасно подходили все зарядки от ноутбуков, которые я пробовал. Вам же придется (пришлось?) ставить защиту от переполюсовки, как-то предохранять оголенные провода от КЗ.
          5. Согласен, без пояснения странная замена штырьков. У круглых площадь отверстия меньше, больше механическая прочность площадок по отслаиванию от стеклотекстолита.
          Если боитесь такого, лучше возьмите двусторонний текстолит и запаивайте с обеих сторон — это будет гораздо надежнее, чем просто увеличение площади. Заодно разводку можно будет по обеим сторонам пустить. Сколько помню, разница в цене у одностороннего и двустороннего текстолита небольшая.
          6. Спалил Ардуину, вынул и в коробочку, перепаять когда время есть
          И часто у вас такое бывает? Я могу понять порчу фьюзов, но чтобы пожечь AVR по моему опыту надо здорово постараться. Ну и см.выше про контроллеры в DIP-корпусе.
          Если есть несколько блоков питания с разными разъёмами- то можно за 1- 5 мин. переразвести плату под нужное гнездо.
          Или просто найти / сделать переходники. Так-то можно вообще упороться и вывести стандартные «компьютерные» разъемы вроде SATA а уже к ним — переходники.
          Большое спасибо, не ожидал что надо так подробно описывать конструкцию.
          Подробно надо описывать решаемую задачу. Пока что я вижу кучу модулей (кто будет ставить в серьезную разработку ардуинские модули?!), похоже, рассчитанные под автономно-беспроводное использование. Элементов управления на самой плате нет вообще.
          Если у меня возникает задача освоить какую-то новую микросхему или модуль (переразводить на плате тот же SIM800 я бы все же не стал), то его логично тестировать независимо. А те проблемы, которые возникнут при переносе в финальное устройство вроде просадок или помех по питанию, на вашей макетке точно так же не увидеть.
          Кстати, вспомнил: если уж у вас используются беспроводные модули и прочая автономия, где гнездо под аккумулятор и измеритель потребляемого тока?
            0
            Спасибо за продолжение.
            1.Не надо мне ничего экзотического проверять и запускать. У меня мой круг задач. Все возможности вне его ограничены тем что есть. А есть не мало. Соплями монтажные провода назвать не могу, а KF141R держат вес на проводе грамм 500.
            2. Порядок оценки другой. Если достаточно кубиков на липучках- хватит, сделать лучше на стойках? Мешает разводке. Увеличить плату? Цена текстолита выше, корпус дороже, добавить стоек надо будет еще для самой платы- дорого. Оставим такое решение. То- же и защелки.
            3. Да, конечно «на столе», записался немного.
            4. Не надо мне больше аппаратных UART для моего круга.
            5. Защита на схеме есть, мне так проще. Провода питания изолированы, не надо зачищать больше чем надо или откусывать лишнее.
            6. За механическую в таком исполнении прочность не боюсь, испытывал варианты. Теперь тем более, навели на хорошее решение дополнительно укрепить гребенки. Этого достаточно и теперь будет лучше. 2-х стороняя плата, разводка- это другой уровень ЛУТ. Не все кто сделает 1 сторонюю сможет сделать 2- х. Да и кому она нужна без металлизации раз уж на то пошло. Заказывать изготовление не вариант 100%, дорого.
            7.Палить контроллеры умею не часто, а не вовремя.
            8. Использовать компьютерные разьёмы- идея, материнок можно навалом бесплатно найти.
            9. Решаемая задача требует именно такого набора модулей, больше добавить нечего. Ввиду подозрений о более широком применении чем у меня, представил на суд общества. Применение не автономное, аккумулятор резервного питания подключается к разъёму XS19. Измерителя тока аккумулятора нет, можно измерять напряжение запаяв перемычку J5 на вывод А6 ADC. Аккумулятор через повышающий преобразователь питает остальное. Преобразователи пока испытываются и к окончательному варианту я не пришёл, каждый сделает на свой вкус. В интернете их различных видимо- невидимо. У меня используется зарядно- повышающая схема отдельным блоком и контроллером аккумулятора. На столе заряженный аккумулятор и блок питания, а если не нужен SIM800, то только БП.
            Какие элементы управления имеются ввиду? Если кнопки, матрицы 8х8 хватит? Берите оба порта MCP23х17. Нужны линии ввода- вывода, берите порт А, для кнопок порт В. Надо все 16 линий? Есть радиомодули, всё равно для отладки вторая плата нужна, пусть будет радиоклавиатура. Да хоть SMS- ками управляйте с телефона, заодно и экран есть но дорого. С компьютера по UART тоже можно.
            Кнопка сброс есть на самой Ардуино, там же на ICSP есть SPI, сигналы выбора чипа можно взять с XS23- 26, аж 4 штуки, но отвалится SIM800. Если он нужен, то только 2 вывода CS. Комбинаций море. Если изначально отлаживать в условиях одной и той- же платы то от чего получить проблемы в финальном устройстве? Тестировать независимо каждый модуль можно вынув остальные.
              0
              1-5. Ладно, это ваша плата под ваши задачи.
              6. Верхнюю сторону можно делать не ЛУТом, а маркером под готовые отверстия. Совмещать именно ЛУТ на такой площади как у вас действительно непросто. Для прочности разъемов важна не столько металлизация, сколько направление силы: одно дело когда она отрывает медь от текстолита, другое — прижимает. В случае двусторонней металлизации получите оба усилия одновременно при любом направлении силы. Для переходных «отверстий» можно расклепать кусочек провода от витой пары и пропаять потом.
              Какие элементы управления имеются ввиду?
              Хотя бы по 2-3 кнопки и светодиода. Именно для того чтобы видеть что происходит во время отладки. Ну и для переключения режимов.
              Тестировать независимо каждый модуль можно вынув остальные.
              либо сразу сделать плату модульной, подключая нужное по мере необходимости. Та же Ардуина как вариант.
                0
                Что происходит- смотрю Serial.println( «кто тут?»). Управление Serial.read(). Хватает на всё что нужно.
                Забыл про замечание во 2-й пачке комментариев. «кто будет ставить в серьезную разработку ардуинские модули?!». А чего нет? Модуль собран в Китае на китайской плате с комплектующими китайского ( Тайвань, Малайзия и т.д.) производства. Или развести на плате все комплектующие из модулей с соединениями между ними. Разница в более коротких соединениях, меньших взаимных помехах, лучших контактах если на одной плате. Минусы тоже понятны и неприятны. Но производство- то не поменялось. Отдавать в серию, если дойдёт, уж лучше рабочий, обкатанный в реальных условиях вариант. Так думаю.
                  0
                  «кто будет ставить в серьезную разработку ардуинские модули?!». А чего нет?
                  Большую часть проблем вы сами описали: наличие механических контактов (окисление, вибрации), больше размер, больше наводок, избыточность (часто стабилизатор ставят на каждую плату), потребление.
                  Плюс генетическая кривизна ардуиновских библиотек. Хотя как раз это можно исправить без пайки. Самый простой пример, который я видел — digitalWrite. Сравните его реализацию в Ардуине и то, как решал бы аналогичную задачу разумный человек.
                    0
                    А разве использование ардуиновского железа как то обязывает к использованию ардуиновского софта?
                      0
                      Так я же и написал «плюс». Есть ненадежность механических контактов, а отдельно — кривизна библиотек.
          +1
          Или эта плата позиционируется не как макетная, а как тестовая для конкретного набора модулей?

          Если я правильно понял задумку автора — отладочная (как в заголовке и написано), что-то в духе stm32 discovery, но для ардуины.
            0
            Отладочная, проверить модули что применяются само- собой, есть возможность проверки и других модулей не входящих в состав платы. Если возможно.
          +1
          мне идея понравилась.
          но кнопки, хотя бы одну для перезагрузки :)
            0
            Как- то получилось «Чего не требовалось, того и не существует». Везде применялся вачдог или кусачками по питанию. Ввести легко, учту.
            +1
            SW4STM32. Чем же родня CubeIDE то не устроила? Тот же эклипс, но последняя хоть самим ST поддерживается
              0
              Так получилось что сначала на ней стало получаться и ввиду сложности освоения стал суеверным. Раз пошло новое дело не стал дёргаться. Был отрицательный опыт с другими ИДЕ, штук 5, не зашли. Кейл, ИАР, Сеггер, Кокос и что- то там ещё.
              +1
              а ссылочки на печатную плату нет?
                0
                Есть. Подожду, может ещё какие замечания будут. Дополнительно описание нужно для облегчения повторения.
                +1

                Отладочная плата для отвлеченной платы.

                  +1
                  Зачем так рубить не прочитав? Я в конце прямо написал что сделано и что планируется сделать.
                  0

                  Шёл к завершению 2020 год, а ЛУТ в России все никак не исчезнет. Может пора уже от него потихоньку избавляться?

                    0

                    Чем предлагаете заменить?

                      +1
                      Заказом плат в Китае или Резоните и т.п. Двуслойки в Китае уже чуть ли не бесплатно делают. Да, доставка кое что стоит и времени больше займет пока приедет, но блин это же совсем другой уровень. Может есть смысл и подождать.
                      У автора куча джамперов и конекторов на плате и ниодной надписи. Это же боль с этим работать.
                        +2

                        Не всякая плата стоит того, чтобы ждать её из Китая, вместо того чтобы развести за вечер.

                          0
                          И увидеть ошибки на партии 10 штук.
                            0
                            Да, ни к чему искать рисунок и смотреть что сам куда на что ДИП- переключатели использовал и где какой вход. Наклеил распечатанные надписи на лазерном принтере на KF141R и DS1040. Маркер стирается и пачкается.
                          +1
                          А зачем? Дешево, просто, быстро, большую часть потребностей покрывает без проблем.
                            +1

                            Ну пока что ЛУТ — это все еще довольно распространенный способ быстро изготовить печатную плату. Если нужно еще качественнее, то фоторезист. А вообще, если нет нужды здесь и сейчас получить печатку, то китайцы (JLC PCB и иже с ним) практически идеальный вариант.

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

                          Самое читаемое