Серия «PCBComparer2 - реверс-инжиниринг печатных плат»

26

Продолжение поста «Реверс-инжиниринг печатной платы»7

В последней версии программы PCBComparer2 появилась возможность загружать реально большие фотки, но только если комп под Windows теперь будет обязательно с памятью от 4 ГБ RAM.

На удивление, много народу в голосовании отметили, что версия под Linux - интересна, и я сделал было попытку запускать эту мою программу, написанную в среде Java + JavaFX под Linux Mint 21 на ноуте что есть под рукой.
И даже поправив мелочи очевидные, обязательные для работы - я разочаровался: приложение JavaFX с графическим интерфейсом работает под Win10 - отлично, как планировалось, и в плане графики, и в плане поведения окошек и сообщений, но при этом ведет себя совсем не так же под Linux (в плане zoom-а фоток).

Но я и невеликий специалист в Линухе, просьба заинтересованным - попробовать и подсказать как лучше установить компоненты, и как запускать правильнее.

Это demo-версия, вероятно, она глючная, и невозможно использовать, в плане zoom графики, хотя у меня при каких-то сочетаниях версий java и javafx (пробовал 14, 19 как Java, так и JavaFX, хотя по умолчанию последняя публичная OpenJFX устанавливается 11я) - работало нормально, как и под Windows10, но я так и не запомнил при каком сочетании - попробуйте, кому интересно, ссылка с авторской страницы.

Пока инструкции для Линукс такие:

  1. установить Java (тестировал с OpenJDK 14 и 19)

  2. установить JavaFX: sudo apt-get install openjfx
    (установка должна получиться в /usr/share/openjfx)

  3. запускать как-то так, если поместить .jar-файл программы в подкаталог pcbc2 в домашнем каталоге:


    java -jar --module-path /usr/share/openjfx/lib --add-modules ALL-MODULE-PATH ~/pcbc2/pcbcomparer2.jar

Что-то мне подсказывает, что Linux-версия не получится полноценной...
Для практической работы - вот пример того, как в программе создается одна цепь:

Показать полностью 1
12

Как браузер запустить в этих ваших Linux ?

Всем привет.
Я тут пилю одну программку на JavaFX Продолжение поста «Реверс-инжиниринг печатной платы», и смотрю есть интерес к версии под Линукс.

И столкнулся с невообразимой штукой - не смог из UI-приложения просто тупо ... запустить браузер дефолтный с URL, ну страничку открыть с описанием программы.

Пробовал:

  • getHostServices().showDocument - штатная классика для JavaFX

  • java.awt.Desktop.browse

  • getRuntime.exec или из шелла пробуя утилиты xdg-open, x-www-browser

Это какой-то трэш и угар - все варианты под Виндой (ясно дело кроме запуска линуховых утилит) работают, а в Mint 21, который есть под рукой - всяческий набор ошибок недостатка прав, gtk, ограничений (--no-sandbox), зависания приложения при попытке это сделать.

java.awt.Desktop.browse сработал ОДНОКРАТНО, а при повторном вызове - зависание приложения, с системным диалогом "прибить или подождать"...

Как же из графических приложений это в Линуксе делают, жмакая по кнопочке ?
Да и конечно, хотелось бы чтобы на максимуме дистрибутивов работало б...

157

Продолжение поста «Реверс-инжиниринг печатной платы»7

Спасибо всем за отклики к первому посту !
Новости: в программе реверс-инжиниринга печатных плат появился:

  • во-первых - русский интерфейс (сейчас английский, наверное, смысла уже не имеет большого при разработках у нас в стране, как мне кажется)

  • и во вторых - редактор фоток слоёв печатной платы

Продолжение поста «Реверс-инжиниринг печатной платы» Опрос, Электроника, САПР, Печатная плата, Разработка, Инженер, Программа, Видео, RUTUBE, Ответ на пост, Длиннопост, Волна постов

Закончил правку интерфейса на английском, теперь только на русском

Редактор фотографий сторон печатной платы поможет синхронизировать обе фотки друг с другом: чтобы точка на одной стороне платы - более-менее точно совпадала с положением на другой стороне. Это вы сами визуально должны определить.

Продолжение поста «Реверс-инжиниринг печатной платы» Опрос, Электроника, САПР, Печатная плата, Разработка, Инженер, Программа, Видео, RUTUBE, Ответ на пост, Длиннопост, Волна постов

Можно скомпенсировать поворот фотки с точностью до десятых долей градуса

Если фотографии сделаны не строго горизонтально (думаю, в этом можно вообще не сомневаться) - то поворот поможет выровнять нужную фотку, но не забывайте:

  1. предварительно выбрать редактируемую сторону

  2. и после удачной правки - обязательно сохранить текущие картинки в файл проекта, перед дальнейшими правками

Продолжение поста «Реверс-инжиниринг печатной платы» Опрос, Электроника, САПР, Печатная плата, Разработка, Инженер, Программа, Видео, RUTUBE, Ответ на пост, Длиннопост, Волна постов

Ширину и высоту можно отмасштабировать, подгоняя размер и отключив галочку "Сохранить пропорции"

Кроме масштабирования, фотки можно подвинуть, изменив числа "Слева" и "Сверху". Все числа в полях - в процентах от соответствующего размера фотки (горизонтального или вертикального).

Продолжение поста «Реверс-инжиниринг печатной платы» Опрос, Электроника, САПР, Печатная плата, Разработка, Инженер, Программа, Видео, RUTUBE, Ответ на пост, Длиннопост, Волна постов

Мышкой с Shift можно выделить области и обрезать

Вот есть видео как примерно можно редактировать картинки, синхронизируя их между собой:

Последние новости и правки в программе доступны со странички автора. Спасибо за пробу и отзывы !

А нужна ли кому-то версия под linux...?
Всего голосов:
Показать полностью 4 1 1
228

Реверс-инжиниринг печатной платы7

Хочу поделится своей наработкой с разработчиками электроники.
Врядли такие программы нужны всем разработчикам печатных плат, но кому-то наверняка будет полезно.
Это программа PCBComparer2 для просмотра двух сторон одной печатной платы одновременно, с зумом, созданием контактов, цепей, изучением трассировки изучаемого образца, и, финально, даже экспорт созданных контактов и цепей в файл схемы формата какой-нибудь CAD-программы (САПР по русски), для дальнейшей переработки и создания своей печатной платы в исходнике.

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

Пока экспорт схемы сделан в формат Altium и KiCad, хотя и форма деталей в виде абстрактных прямоугольников, после открытия схемы при дальнейшей разработке требует обновления на библиотечные элементы, но схема соединений в виде имен цепей - вточности повторяет схему с печатной платы.

Реверс-инжиниринг печатной платы Электроника, САПР, Печатная плата, Длиннопост, Разработка, Волна постов

Можно создать контакты деталей, переходные отверстия (via) и просто точки вдоль дорожек

После экспорта в схему дальнейшие шаги уже внутри САПРа по реверс-инжинирингу предполагаются такие:
1. подготовить библиотеки схемных компонент и футпринтов (посадочных мест) печатной платы для дальнейших правок
2. обновить посадочные места платы компонент на схеме: ввести вручную вместо футпринтов COMxxx (которые экспортируются)
3. создать файл новой печатной платы и экспортировать на нее компоненты со схемы, при помощи подготовленной библиотеки и сохранить плату: тут мы сохраняем исходный список цепей
4. обновить схемные элементы на схеме, с помощью подготовленной библиотеки символов
5. импортировать в схему данные с платы - т.е. передать заново список цепей с платы.

Реверс-инжиниринг печатной платы Электроника, САПР, Печатная плата, Длиннопост, Разработка, Волна постов

Соединения контактов можно легко изучить, выделяя контакты с Shift или Control

Навскидку для начала можно поглядеть несколько видео о том, как выглядит интерфейс, вот ссылка на плей-лист: https://rutube.ru/plst/781340/

Реверс-инжиниринг печатной платы Электроника, САПР, Печатная плата, Длиннопост, Разработка, Волна постов

Результат экспорта схемы в KiCAD

Загрузить и попробовать beta-версию программы (пока только для 64-битных операционок Windows) можно отсюда.
Еще раз - это первая версия программы, и можно по вашим запросам доработать что угодно.

UPD:

Ссылка на загрузку инсталлятора Windows: https://pmaker.ru/script/payments/setup_pcbcomparer2.exe

Показать полностью 3
Отличная работа, все прочитано!