Например TDA7294

Форум РадиоКот :: Просмотр темы - Простая утилита Excellon To G-Code
Форум РадиоКот
https://radiokot.ru/forum/

Простая утилита Excellon To G-Code
https://radiokot.ru/forum/viewtopic.php?f=8&t=196733
Страница 1 из 1

Автор:  Ljubitel [ Вс фев 09, 2025 23:32:23 ]
Заголовок сообщения:  Простая утилита Excellon To G-Code

Всем привет.
Платы делаю очень не часто. Штук 5-10 в год.
Развожу в Altium. Изготавливаю методом фоторезиста.
Засвечиваю на HLDI. Сверлю на ЧПУ. Металлизацию делаю серебряной краской + гальваника.
С герберами, которые выдает Altium вопросов нет. HLDI Host их принимает напрямую.
А вот со сверловкой - надо перевести Excellon от Altium в понятный формат для ЧПУ станка.
Из найденного в сети более менее приглянулась GGEasy. Но тоже не без недостатков.
Сперва надо сделать базу инструментов. Оптимизация пути инструмента так и не понял есть в
ней или нет. И самое главное - не может создать единый файл для всех инструментов.
Т.е. в моём случае это выглядит так: Загрузил первый файл, поставил первое сверло, просверлил.
Загрузил следующий... и т.д.
Собственно плюнул и написал себе небольшую программу, которая берёт Excellon и переводит его
в G-Code для моего станка. Оптимизирует расположение инструментов от наименьшего диаметра к
наибольшему. Мне это удобно. Начинаю с самого тонкого сверла (реперы для HLDI) и по порядку
в сторону увеличения. Также оптимизирует пути движения инструментов (алгоритм "ближайшего соседа").
Ну и собственно позволяет создать единый файл на всю сверловку. После каждого цикла сверления
(одним диаметром) возвращает шпиндель на "парковку" - точка (0;0) и заданную высоту, где
останавливает выполнение сверловки для смены инструмента. Меняю сверло, нажимаю "ввод" и станок
продолжает сверлить. Если надо, может создать и отдельные файлы для каждого инструмента
(создает G-Code только для тех отверстий, для которых включено отображение).
Ну и бонусом - визуально посмотреть карту сверловки, пути.
Может пригодится кому, а то вдруг кто также "мучается" как я :-)

https://github.com/PavelSirotkin/ExcellonToG-Code


Изображение

Автор:  nonpar [ Ср мар 12, 2025 07:33:11 ]
Заголовок сообщения:  Re: Простая утилита Excellon To G-Code

Добрый день.
Я пошел по другому пути - сделал прошивку для CNC, которая напрямую принимает .drl файлы (контроллер на STM32, платка BluePill). Тоже пришлось решать задачу максимально удобного управления параметрами сверления. Интересно будет сравнить подходы. Можно у вас попросить пример DRL-файла, сделанный Altium, желательно, посложнее? Я тестил на KiCad и SprintLayout.

Автор:  Ljubitel [ Ср мар 12, 2025 17:34:57 ]
Заголовок сообщения:  Re: Простая утилита Excellon To G-Code

Можно у вас попросить пример DRL-файла, сделанный Altium, желательно, посложнее?

Это чтобы дырок побольше ?
Приложил.

Изображение

Если ваш софт нормально работает с файлами от Sprint Layout, то считайте, что всё у Вас нормально.
Я, когда писал, думал что есть какие то общие соглашения.
Altium работает в положительном квадранте и все координаты инструментов положительные.
Уже всё написал. Всё прекрасно. И решил проверить на файлах от Sprint.
Каково ж моё удивление было, что точку (0;0) пользователи Sprint ставят "от балды".
Пришлось всю логику перелопатить, чтобы программа могла работать с отрицательными координатами.

Мой станок управляется LPT портом компьютера программой TurboCNC под DOS. Ему нужны только G-code.
Меня всё устраивает. Я ещё под DOS написал программку для финишной обрезки платы по контуру.
Смысл в том, что не надо ничего выравнивать. Просто крепишь заготовку к столу как придётся.
Затем в левый нижний угол фрезу ставишь - это (0;0). Ставишь в правый - запоминаешь эту координату.
В программе вводишь запомненную координату и ширину платы. Она сама строит прямоугольник расположенный
по этому вектору и выдаёт G-code для обрезки.

Вложения:
SPECCY2010.TXT [8.83 KiB]
Скачиваний: 117

Автор:  nonpar [ Ср мар 12, 2025 20:00:00 ]
Заголовок сообщения:  Re: Простая утилита Excellon To G-Code

Если ваш софт нормально работает с файлами от Sprint Layout, то считайте, что всё у Вас нормально.

Большое спасибо за файл. Нашел в нём минимум два отличия от вариантов, что встречались мне прежде:
-в заголовочной таблице инструментов, помимо диаметра сверла, присутствуют другие параметры с нулевыми значениями;
-в случае неизменности одной из координат X или Y, её значение опускается.
И вот на втором моменте мой парсинг на тесте в боевых условиях словил глюк.
Хотя такой вариант задания координат у меня реализован, и я тестил предварительно парсинг на PC-эмуляции)

Автор:  Ljubitel [ Ср мар 12, 2025 20:19:26 ]
Заголовок сообщения:  Re: Простая утилита Excellon To G-Code

-в случае повторения значения одной из координат X или Y, её значение опускается.
И вот на втором моменте мой парсинг на тесте в боевых условиях словил глюк.
Хотя такой вариант задания координат у меня реализован, и я тестил предварительно парсинг на PC-эмуляции)

Так это вроде ж стандарт для Excellon.
Так же как и отсутствие десятичной точки.
Его давно разрабатывали. Так для экономии места на внешнем носителе и ввели эти вещи.
Типа зачем писать десятичные точки? 1000 координат - это 1000 точек. Лишние 1000 байт.
Тоже самое и с повторяющейся координатой - если одна из координат не меняется, то пишем только одну, ту что изменилась.

Автор:  nonpar [ Пт мар 14, 2025 07:30:46 ]
Заголовок сообщения:  Re: Простая утилита Excellon To G-Code

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

Автор:  Ljubitel [ Пт мар 14, 2025 12:16:05 ]
Заголовок сообщения:  Re: Простая утилита Excellon To G-Code

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

Конечно не буду.
Исходники для того и выкладываются, чтобы люди ими пользовались.

Автор:  WadimRu [ Чт окт 16, 2025 12:31:59 ]
Заголовок сообщения:  Re: Простая утилита Excellon To G-Code

Павел, огроиное спасибо. Программа просто шикарная для домашнего творчества.
и шикарна она именно своей простотой.
Однако для меня возникла пара неудобств.
1. платы сейчас делаю как в спринте, так и на EASYEDA. соответственно получается очень много разных отверстий. Мне удобно два вида- большое (0,8) и маленькое(0,4), остальное допиливаю вручную.
2. Почему то мой станок некорректно отрабатывает остановку для смены инструмента.
Попросил человека под ником Hingo дописать программу под меня. выкладываю тут, пусть люди пользуются... Еще раз огромное спасибо. Если не трудно, выложите на Ваш гитхаб.

Вложения:
ExcellonToG-Code-main3.zip [105.18 KiB]
Скачиваний: 27

Автор:  Ljubitel [ Чт окт 16, 2025 23:26:04 ]
Заголовок сообщения:  Re: Простая утилита Excellon To G-Code

Если не трудно, выложите на Ваш гитхаб.

Так сделайте форк и пишите в него, что хотите.

Рад, что Вам понравилось. Пожалуй выложу ещё и обрезку по контуру.
Альтиум при генерации Excellon может ещё и траекторию финишной обрезки
в этом формате выводить.

Изображение


https://github.com/PavelSirotkin/Excell ... teToG-Code

Автор:  zero_cool2001 [ Пт дек 05, 2025 10:15:19 ]
Заголовок сообщения:  Re: Простая утилита Excellon To G-Code

здравствуйте! хотел попробовать программку, но так и не смог... на win7-64 не запускается, говорит нет в системе файла dll, что только не устанавливал, наверное все версии visual,и отдельно этот dll качал и регестрировал... всё бестолку... скажите! а можно как-то перекомпилировать под win7-32???... заранее спасибо за ответ...

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/