Добрый день, хочу поделиться с читателями своим практическим опытом обратной разработке электронных плат. Эта статья будет ещё интересна предметом своего исследования. На примере я покажу как разобраться в работе устройства. При необходимости можно составить принципиальную электрическую схему и повторить печатную плату. Для примера я взял плату оси YAW гиростабилизированного подвеса камеры квадрокоптера dji mavic mini.

Итак приступим! Всю работу можно разделить на несколько этапов:

  • предварительное фотографирование платы

  • демонтаж компонентов с платы (с идентификацией при необходимости)

  • снятие паяльной маски и шелкографии

  • сканирование печатной платы и последующее редактирование

  • перенос платы в редактор плат и ее отрисовка

  • составление принципиальной электрической схемы

Остановимся на каждом этапе поподробнее.

Фотографирование платы

Фотография платы вам пригодится на этапе опознания компонентов. Фотография должна быть хорошего качества с хорошим освещением, на ней должны быть различимы все элементы, желательно чтобы было видно маркировку, если она присутствует на компоненте. Плату фотографируем с двух сторон. Не стесняйтесь делать больше фотографий, возможно под разными углами (иногда не все элементы видны при фотографировании под прямым углом).

Далее, в графическом редакторе, я подписываю компоненты. Это поможет составить список компонентов с их номиналами и типоразмерами.

Демонтаж компонентов

На этом этапе необходимо демонтировать все компоненты с платы, при необходимости произвести измерения номиналов компонентов (та еще задачка), максимально удалить припой с платы и произвести контрольное фотографирование. Фотографирование можно и пропустить, но, иногда, элементы шелкографии попадают под крупные элементы на плате и увидеть их можно только после демонтажа элементов. Должно получиться вот так:

Снятие паяльной маски

На этом этапе необходимо очистить плату от защищающей электрические проводники маски и обозначений слоя шелкографии. Это можно сделать несколькими способами. Первый это механически - наждачной бумагой, счистить эти два слоя. Но есть еще один способ дающий более качественный результат, именно его я и использую. Маску можно снять при помощи раствора щелочи. Я кидаю плату в раствор и кипячу на плите, пока маска лохмотьями не слезет с платы. Потом я ее промываю и высушиваю. Получается нечто такое:

Сканирование

На этом этапе необходимо плату отсканировать с двух сторон в максимальном разрешении (в моем случае). Почему скан а не фото? На это есть несколько причин. Первая это линейные искажения при фотографировании, а вторая это масштаб. Еще можно сделать контрольное измерение платы, это нам пригодится при ее масштабировании. Отсканированные платы я сохраняю с именами A и B. A - это так называемый top layer (верхний слой),а B - bottom layer (нижний слой). Далее необходимо эти изображения подготовить к переносу в редактор плат. Графический редактор выбирайте по своему вкусу, я использую старенький Photoshop 7. В редакторе нам необходимо сделать следующее:

  1. Повернуть оба изображения (так как вам удобно его будет отрисовывать)

  2. Выровнять изображения по горизонтали и вертикали

  3. Совместить изображения слоев, отзеркалив слой B

  4. Отрезать лишнее от изображения (части по сторонам где ничего нет)

  5. Сохранить изображения слоев в формате BMP

Перенос платы в редактор и отрисовка

Я пользуюсь замечательной программой SprintLayout 5. В ней необходимо создать новый файл и подгрузить наши изображения в качестве фонового рисунка. Сделать это можно использовав инструмент шаблон:

В диалоговом окне выбираем вкладку "Сторона 1", далее нажимаем кнопку "Загрузить" и загружаем наш файл A.bmp. Ту же операцию повторяем для второй стороны, выбрав соответственной файл B.bmp. Теперь необходимо подобрать масштаб, сделать это нужно очень точно! Делается это так: Выбираем сторону 1 и выставляем разрешение с которым мы производили сканирование (в моем случае это 600dpi). При необходимости сдвинуть изображение используя сдвиг по осям. Теперь закрываем окошко кнопкой "ОК" и переходим на слой M1

Теперь нам пригодится измеренный нами размер платы. Рисуем поверх шаблона линию от карая и до края платы, сравниваем с полученными результатами измерений которые мы произвели ранее. Плата точно должна соответствовать своим физическим размерам! При необходимости меняем масштаб в диалоговом окне "Шаблон".

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

Далее следует сложный но интересный процесс отрисовки платы, нанесение надписей на слоях шелкографии, расстановка компонентов (при необходимости отрисовка новых, отсутствующих в библиотеке). У меня получилось следующее:

Что делать дальше? Дальше можно, воспользовавшись инструментом "test", просмотреть электрические соединения между элементами платы. Работает этот инструмент как обычная "прозвонка" на мультиметре.

Также я наношу на плату обозначения выводов разъема, мне это поможет в дальнейшем.

Составление схемы

Этот этап я выполняю не всегда, иногда мне достаточно информации полученной на предыдущих этапах. Я обобщаю полученную в ходе исследования информацию и ищу документацию на комплектующие. Обычно этого достаточно чтобы найти типовую схему работы этого узла. Например вот эту, взятую с просторов интернета:

Я обобщаю полученную информацию на одном листе, делаю свои пометки. Теперь я знаю, что мотором оси YAW управляет драйвер MP6536, положение оси плата управления получает считывая сигнал с двух датчиков на эффекте холла DRV5053 расположенных под углом 120 градусов друг относительно друга. Я теперь знаю распиновку разъема на плате. Кстати, забегая вперед, оси roll и pitch устроены аналогичным образом, но размещены на одной плате.

В заключение

Думаю, статья получилась достаточно насыщенной и интересной. Пусть инженеры компании dji не обижаются на меня, я восхищаюсь их работой. Всем спасибо!

Комментарии (23)


  1. Javian
    08.01.2023 09:51
    +9

    Осталось только собрать как было и чтобы работало /s
    Спасибо, было интересно узнать как лак снять.


    1. MaxToMax Автор
      08.01.2023 14:37
      +3

      Я использовал раствор едкого натра.


  1. mastergril
    08.01.2023 10:06

    Не пробовали использовать Pulsonix, в этой программе есть режим реверс инж.?


    1. MaxToMax Автор
      08.01.2023 18:47

      Не пробовал, мне проще в спринте, к нему я уже привык.


  1. Z55
    08.01.2023 10:10
    +22

    А где инжиниринг? В статье только тупое копирование и ничего больше.


  1. REPISOT
    08.01.2023 10:31
    +5

    Я обобщаю полученную в ходе исследования информацию и ищу документацию на комплектующие. Обычно этого достаточно чтобы найти типовую схему работы этого узла. Например вот эту, взятую с просторов интернета

    Чтобы найти типовую схему, достаточно открыть даташит от производителя. А вот что вы сможете найти на просторах интернета — отдельная история.


    1. hw_store
      08.01.2023 22:35
      +1

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


  1. peacemakerv
    08.01.2023 11:07
    +1

  1. cujos
    08.01.2023 11:22
    +3

    А зачем такое реверсить? Ну запчастей нет или что? Вроде такое все доступно и дёшево и дешевле просто купить, чем искать драйвер и заказывать платы.


    1. Akr0n
      08.01.2023 15:02
      +11

      Кажется, тут попахивает ипортозамещением.


  1. radiolok
    08.01.2023 13:23
    +10

    Закопайте уже этот Sprint Layout (и Splan за компанию). Ими имело смысл пользоваться для дома 15 лет назад, но сейчас САПР без синхронизации схемы и платы - это издевательство над самим собой.


    1. armid
      08.01.2023 14:59
      +4

      А какие сейчас варианты? Желательно под линукс. Я только изучаю эту отрасль


      1. AquariusStar
        08.01.2023 17:32
        +9

        KiCAD не годится что ли? Она работает в любой операционной системе.


      1. cujos
        08.01.2023 18:25
        +6

        Имхо EasyEDA хватит с головой.

        Быстро, удобно, бесплатно. Платы заказываешь в два клика. Все современные компоненты там есть. Плюс можно шарить/делать портфолио.

        Я много работал в альтиуме и кикаде лет 10 и пару. Первый она не заменит, но в целом для 90% задач его хватит. Кикад не такой удобный.

        Причем разводить можно хоть с телефона/планшета/малинки.


      1. DaddyReal
        09.01.2023 16:39
        +1

        Для большинства задач достаточно онлайнового EasyEDA.


  1. iliasam
    08.01.2023 13:44
    +6

    Чтобы разобраться, как устройство работает, и ожить железку с проприетарной прошивкой, не обязательно спаивать детали и сдирать маску. Можно и просто прозвонкой обойтись. Особенно если плата многослойная.
    Я так делал: https://habr.com/ru/post/396357/


  1. SergeyMax
    08.01.2023 14:54
    +3

    В данном конкретном случае можно было просто скачать даташит на микросхему, и взять все номиналы оттуда)


  1. brammator
    08.01.2023 19:33
    +2

    Я бы рекомендовал фотографировать с линейкой в кадре. Куда проще масштаб подбирать будет.


    1. ciuafm
      08.01.2023 20:15
      +5

      В статье написано про сканирование. Это чтобы не фотографировать с линейкой. Сканер сразу выдает картинку привязанную к DPI.


  1. hw_store
    08.01.2023 22:29
    +2

    Реверсили плату от светодиодного экрана, технология примерно такая же. Разве что сканера формата А2 у нас нету (а плата имела размер 50*600мм), поэтому пришлось частями отснять её кэнноном на скамейке около дома, после чего выправить и склеить куски в фотошопе. Маску китайцы опрометчиво сделали зелёную, поэтому смывать её не пришлось, а вот один из чипов всё же пришлось отпаять. Полученная на выходе копия благополучно работает.


  1. VT100
    09.01.2023 09:02
    +1

    Если "содрать один-в-один", то не освещён экспорт списка цепей из платы.
    Если "как оно работает" или "улучшить", то плата вообще не нужна.


  1. alexeishch
    09.01.2023 17:28
    +1

    А как вы опознаёте разъёмы? Вот интересно бы было это почитать


    1. Dron_Gus
      10.01.2023 10:09

      Можно использовать каталог digikey. Вбить в фильтры все известные характеристики, а дальше просматривать фото/документацию.