Страница 1 из 29

PathMaster — разработка ЧПУ системы

Добавлено: 27 дек 2018, 12:40
michael-yurov
Я сообщал раньше о том, что хочу сделать свою систему управления ЧПУ станками (программа + контроллер). Но реальность такова, что на разработку совершенно нет времени.

Скорее всего, это будет простенькая система управления для 3—4 осевых фрезерных станков. По функционалу — на уровне старой трехосевой NCStudio.
Если справлюсь с такой задачей — буду думать о расширении функционала.

Первоначально надеялся сделать возможность запуска не только в Windows но и в Linux. Для этого пришлось сделать отрисовку интерфейса программными методами: http://www.cnc-club.ru/forum/viewtopic. ... 85#p428162
Но этого оказалось недостаточно. Слишком много проблем и сложностей с Linux-ом (проблемы не в том, что я не наю, как сделать, а в том, что Linux многого не умеет), поэтому решил от него отказаться, и переделал интерфейс под отрисовку силами WPF (это DirectX, а, соответственно, только Windows).
Пока еще это пустой и сильно сырой интерфейс, но уже можно приблизительно понять, что я собираюсь сделать:

Re: PathMaster — Разработка ЧПУ системы

Добавлено: 27 дек 2018, 12:49
michael-yurov
Многое еще будет изменено.
Например, я не умею пользоваться таблицей инструмента, и никогда не использовал ни ручную, ни автосмену. Из за этого плохо понимаю, что нужно для этого в интерфейсе.
Кнопки Pause и Stop, вероятно, объединю в одну, т.к. не вижу смысла в двух разных кнопках.
Активные G-коды нужно будет сгруппировать в блоки по смыслу и назначению.
Много еще всего будет не так, как на картинке. Но общая идея, полагаю, понятна.

Re: PathMaster — Разработка ЧПУ системы

Добавлено: 27 дек 2018, 12:53
MX_Master
Михаил, какой чип станет сердцем контроллера? (:

Re: PathMaster — Разработка ЧПУ системы

Добавлено: 27 дек 2018, 13:04
michael-yurov
MX_Master писал(а):Михаил, какой чип станет сердцем контроллера? (:
Не знаю точно. STM32F407, скорее всего.

Re: PathMaster — разработка ЧПУ системы

Добавлено: 27 дек 2018, 13:24
Mamont
Помимо Reset X / Y / Z... надо добавить кнопки x/2 y/2 z/2 .....

Ну и подключение внешнего пульта. Не все же с клавиатуры работать

Re: PathMaster — разработка ЧПУ системы

Добавлено: 27 дек 2018, 13:29
mikehv
По мне так интерфейс надо брать полностью с какой нибудь пром стойки. Чтобы можно было работать без мышки и тача. Вот тогда будет интересно для многих.

Re: PathMaster — Разработка ЧПУ системы

Добавлено: 27 дек 2018, 13:36
MX_Master
michael-yurov писал(а):Не знаю точно. STM32F407, скорее всего.
А вспомогательные STM'ки (или fpga) в роли генераторов будут?

Re: PathMaster — разработка ЧПУ системы

Добавлено: 27 дек 2018, 14:23
wldev
Mamont писал(а):Помимо Reset X / Y / Z... надо добавить кнопки x/2 y/2 z/2 .....
поясни пжл)

Re: PathMaster — разработка ЧПУ системы

Добавлено: 27 дек 2018, 14:25
michael-yurov
Mamont писал(а):Помимо Reset X / Y / Z... надо добавить кнопки x/2 y/2 z/2 .....
Или вместо кнопок Home, или на пользовательские кнопки назначать.
Можно, конечно, запихнуть второй столбец правее кнопок Reset... но получится бяка.
Mamont писал(а):Ну и подключение внешнего пульта. Не все же с клавиатуры работать
Понимаю, что нужно, но не уверен, что смогу разобраться с пультами, имеющими экран.
mikehv писал(а):По мне так интерфейс надо брать полностью с какой нибудь пром стойки. Чтобы можно было работать без мышки и тача. Вот тогда будет интересно для многих.
Тогда отсеивается 95% пользователей, у кого нет механических элементов управления вокруг экрана.
К тому же, в этом случае стоит привязываться к фиксированному размеру экрана и конкретному набору внешних элементов управления. С одной стороны за счет этого разработка ПО становится намного проще, а с другой стороны — получаем недоделанную промышленную стойку с высокой ценой (из за сложности изготовления качественной и грамотной панели управления).

Re: PathMaster — разработка ЧПУ системы

Добавлено: 27 дек 2018, 14:32
mikehv
michael-yurov писал(а):Тогда отсеивается 95% пользователей, у кого нет механических элементов управления вокруг экрана.
К тому же, в этом случае стоит привязываться к фиксированному размеру экрана и конкретному набору внешних элементов управления. С одной стороны за счет этого разработка ПО становится намного проще, а с другой стороны — получаем недоделанную промышленную стойку с высокой ценой (из за сложности изготовления качественной и грамотной панели управления).
Панель многие сами могут сделать.
В том виде, который сейчас представлен аналогов много, а то о чем я говорю, в бюджетном сегменте не представлено никак.

Re: PathMaster — разработка ЧПУ системы

Добавлено: 27 дек 2018, 14:36
viael
На компе будет только интерфейс, а обработка G кода на уровне контроллера? Уже программная архитектура продумана? Имхо с этого начинать надо а не с интерфейса.

Re: PathMaster — разработка ЧПУ системы

Добавлено: 27 дек 2018, 14:42
Darxton
А 2 варианта интерфейса или возможность навешивать морду сложно? Мне кажется, коллективно получится лучше, чем самому.

Re: PathMaster — разработка ЧПУ системы

Добавлено: 27 дек 2018, 14:51
Nonstopich
mikehv писал(а):Панель многие сами могут сделать.
В том виде, который сейчас представлен аналогов много, а то о чем я говорю, в бюджетном сегменте не представлено никак.
Плюсану предыдущему оратору.
michael-yurov писал(а):получаем недоделанную промышленную стойку с высокой ценой (из за сложности изготовления качественной и грамотной панели управления).
Михаил, не ради подлиза, а ради продукта: мы все тут видели ваш Степ, смд-раскладчик и знаем на что вы способны.
Я вот ну ни капельки не сомневаюсь, что если вложиться Вам и кому-нибудь ещё с форума на тему "доделки" и "грамотности" пульта, то получится инструмент схожий по качеству со степом. Лично бы приложил руку. Что кнопочки отфрезеровать, что оттестировать какой-то функционал.

На правах сталкивавшегося с WPF и ресайзом окон под разные разрешения:
(для просмотра содержимого нажмите на ссылку)
У меня есть эдакий опыт в программировани в т.ч. WPF. Под его началом есть scaleX компоненты, которые привязывают Loyout к размеру экрана.
Если вы избавите пользователя от возможности ресайзить окно, то можно с помощью этого Scal'a прикрутить масштабирование к любому экрану.
Проблем с align и climb будет вагон, спорить не буду, но всё же в каком-то конечном промежутке времени в процессе тестирования все эти "липучки" и "ограничители" размеров можно усмирить.
И первый же "Бажок".
Михаил,
WindowStartupLocation установите в "CenterScreen" или "CenterOwner", а то окошко на моём монике появилось много выше верхней границы.

Re: PathMaster — разработка ЧПУ системы

Добавлено: 27 дек 2018, 15:30
Mamont
Bender писал(а):
Mamont писал(а):Помимо Reset X / Y / Z... надо добавить кнопки x/2 y/2 z/2 .....
поясни пжл)
Это чтоб вручную находить центр заготовки, без щупа.
Подвел фрезу слева до касания, обнулил координату (Reset_X)
Подвел фрезу справа до касания, допустим Х показал 31.53 мм нажал /2 (деление на 2), получил 15.765мм. Теперь "0" по оси Х лежит на центре заготовки .


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

Re: PathMaster — разработка ЧПУ системы

Добавлено: 27 дек 2018, 15:46
michael-yurov
MX_Master писал(а):А вспомогательные STM'ки (или fpga) в роли генераторов будут?
Постараюсь без них обойтись. Т.к. это удорожает плату и усложняет сборку и тестирование.
mikehv писал(а):Панель многие сами могут сделать.
Могут,.. но делают единицы. Я понимаю, что недорогой конструктор "сделай сам промышленную стойку" было бы прикольно получить. Но у меня несколько другие приоритеты...
mikehv писал(а):В том виде, который сейчас представлен аналогов много, а то о чем я говорю, в бюджетном сегменте не представлено никак.
Аналогов много. Но все, что я знаю имеют существенные недостатки.
viael писал(а):На компе будет только интерфейс, а обработка G кода на уровне контроллера?
Нет, на компе будет и расчет движения. Для качественного и правильного / грамотного расчета требуются значительные ресурсы. Тут либо существенно упрощать расчет, либо делать его силами ПК.
Да, хотя бы орудовать файлом размером, например, гигабайт, не получится на стороне контроллера.
viael писал(а):Уже программная архитектура продумана?
Да.
viael писал(а):Имхо с этого начинать надо а не с интерфейса.
Для меня самое сложное — интерфейс. Писать код без интерфейса невозможно. А сделать для начала как-нибудь, и потом исправлять, дорабатывать, переделывать считаю бессмысленной тратой сил и времени.
К тому-же, скорее всего, ничего хорошего уже из этого не получится. Mach3 очередной выйдет.
Программную часть можно изменять и дорабатывать сколько угодно. Она никак не пострадает от изменений и доработок. Программная часть должна всего-лишь корректно выполнять свою функцию. Не существенно, каким именно способом.
А с интерфейсом такой номер не пройдет, там все взаимосвязано и зависимо.
Darxton писал(а):А 2 варианта интерфейса
Это реально.
Darxton писал(а):или возможность навешивать морду сложно?
Навешивать морду практически нереально в текущем варианте.
Сначала так и хотел сделать, но кака получается. У кого-то прямоугольные мониторы, у кого-то квадратные. Разрешение и DPI у всех разные. Вот и приходится мучиться, делать резиновый интерфейс.
Сделать при этом возможность редактирования экрана пользователем чрезвычайно сложно.
Darxton писал(а):Мне кажется, коллективно получится лучше, чем самому.
Помощь и советы мне, конечно, очень нужны. Но если всех слушать, будет как в басне у И. Крылова.
Nonstopich писал(а):У меня есть эдакий опыт в программировани в т.ч. WPF. Под его началом есть scaleX компоненты, которые привязывают Loyout к размеру экрана.
Если вы избавите пользователя от возможности ресайзить окно, то можно с помощью этого Scal'a прикрутить масштабирование к любому экрану.
Проблем с align и climb будет вагон, спорить не буду, но всё же в каком-то конечном промежутке времени в процессе тестирования все эти "липучки" и "ограничители" размеров можно усмирить.
А сейчас плохо что ли растягивается?
Панели, кстати, тоже тянутся за разделители.

Re: PathMaster — разработка ЧПУ системы

Добавлено: 27 дек 2018, 15:47
Serg
Nonstopich писал(а): У меня есть эдакий опыт в программировани в т.ч. WPF. Под его началом есть scaleX компоненты, которые привязывают Loyout к размеру экрана.
Не знаю как в винде, а в X Window можно задавать размеры элементов в "процентах" от размера экрана...
Nonstopich писал(а):Я вот ну ни капельки не сомневаюсь, что если вложиться Вам и кому-нибудь ещё с форума на тему "доделки" и "грамотности" пульта, то получится инструмент схожий по качеству со степом. Лично бы приложил руку. Что кнопочки отфрезеровать, что оттестировать какой-то функционал.
Готов сделать пробную партию например из 10 штук плёночных кнопочных пультов вот на таком принципе:
thumb_071798edc87c49b47591c18c87e6ca67_0.jpg (8586 просмотров) <a class='original' href='./download/file.php?id=153396&sid=916d39e49f5cebac2e0b219ba0cc02da&mode=view' target=_blank>Загрузить оригинал (208.13 КБ)</a>
У меня есть идея бюджетного решения для малых партий, хочется проверить "в железе". В качестве оплаты приму результат коллективного дизайна такого пульта (расположение и назначение кнопок), главное чтобы он был совместим с функциями LinuxCNC. :)

Re: PathMaster — разработка ЧПУ системы

Добавлено: 27 дек 2018, 15:52
michael-yurov
Nonstopich писал(а):И первый же "Бажок".
Михаил,
WindowStartupLocation установите в "CenterScreen" или "CenterOwner", а то окошко на моём монике появилось много выше верхней границы.
Так и есть WindowStartupLocation="CenterScreen"
А сколько мониторов, какое разрешение, и какая настройка DPI?
Можно скриншот?

Re: PathMaster — разработка ЧПУ системы

Добавлено: 27 дек 2018, 16:09
Nonstopich
michael-yurov писал(а):Можно скриншот?
Scrt.png (8574 просмотра) <a class='original' href='./download/file.php?id=153402&sid=916d39e49f5cebac2e0b219ba0cc02da&mode=view' target=_blank>Загрузить оригинал (476.3 КБ)</a>
Монитор 1, ноутбук.
17" экран

Re: PathMaster — разработка ЧПУ системы

Добавлено: 27 дек 2018, 16:24
michael-yurov
Nonstopich писал(а):
michael-yurov писал(а):Можно скриншот?
Монитор 1, ноутбук.
17" экран
Окно программы больше размера экрана. Оно не влезло. Виндоус почему-то решил его таким образом запихнуть...
Потом сделаю уменьшение окна при первом запуске, если размер экрана недостаточный.
Откровенно говоря я ожидал, что виндоус сам догадается уменьшить окно...

Удалось его вытащить то, или развернуть? Или мне сейчас поправить код, чтобы была возможность запустить?
(можешь создать ярлык к файлу с галочкой запуска развернутым на весь экран)

Re: PathMaster — разработка ЧПУ системы

Добавлено: 27 дек 2018, 16:29
al_us
интерфейс видно что не сырой, очень эргономичный у меня сразу появилось желание подвигать этой системой! жаль что пути расходятся с Linux. 3d движок в области превью - собственный?