Самопальный интерпретатор

Mach, популярные и не очень CAD, CAM. Обсуждение и разработка программ для управления станками.

Самопальный интерпретатор

Сообщение Крафтер » 27 мар 2015, 23:00

В станках я нуб, но решил написать свой интерпретатор :D . Сейчас реализовано следующее: на компьютере программа читает код, формирует пакеты и шлёт их через com port (у меня он виртуальный на usb), с другой стороны их читает микроконтроллер stm32f100, и поочерёдно выполняет команды. То есть с одной стороны система реалтаймовая, а с другой можно и на винде запускать. Есть контроль прихода пакетов, так что при плохой связи разве что медленнее работать будет.
Пока поддерживает G0, G1, G2, G3, G4 (пауза), G17, G18, G19, расчёт ускорения, уменьшение напряжения в состояни покоя. Гонял на тестовых программах, вроде рисует нормально, выводит в 3d траекторию фрезы. Что ещё добавить, чтобы получилась годная программа? Когда допишу, выложу исходники.
Думаю добавить обработку G54 и прочих систем координат, но не знаю как оно с точки зрения пользователей выглядит. И как ручное управление сделать, мышкой по кнопкам тыкать или ловить нажатия клавиатуры?
Аватара пользователя
Крафтер
Мастер
 
Сообщения: 200
Зарегистрирован: 27 мар 2015, 22:25
Откуда: Ростов-на-Дону
Репутация: 59
Настоящее имя: Андрей

Re: Самопальный интерпретатор

Сообщение aftaev » 27 мар 2015, 23:08

Крафтер писал(а):Что ещё добавить, чтобы получилась годная программа?

Чтоб был открытый проект, закрытых за деньги полно ;)

адаптивное управление скоростью
возможность ездить назад
поиск нуля по датчику G31
ТНС(управление высотой резака) для плазморезов
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
aftaev
Зачётный участник
Зачётный участник
 
Сообщения: 30350
Зарегистрирован: 04 апр 2010, 19:22
Откуда: Казахстан. Шымкент
Репутация: 5387
Медальки:

Re: Самопальный интерпретатор

Сообщение Baha » 27 мар 2015, 23:18

сделай поддержку USB HID клавиатуры, с переназначением любой клавиши под любую функцию.
Сферический ватник в вакууме.
Baha
Мастер
 
Сообщения: 605
Зарегистрирован: 29 сен 2008, 17:37
Откуда: Тараз-Москва
Репутация: 26

Re: Самопальный интерпретатор

Сообщение WhiteMask » 27 мар 2015, 23:26

Ручное управление думаю лучше с клавиатуры, а еще лучше чтоб каждый сам забивал гоячие клавиши под себя.
WMMARKET.COM.UA 3D принтеры и аксессуары. Услуги 3Dпечати до 20мкм
Аватара пользователя
WhiteMask
Опытный
 
Сообщения: 196
Зарегистрирован: 28 дек 2013, 20:01
Откуда: Днепр, Украина
Репутация: 73
Медальки:

Re: Самопальный интерпретатор

Сообщение NightV » 27 мар 2015, 23:33

...нажешь.. божешь.. ехарный бабай.. кто вышел из тени.. Baha!! компанейский чувак! :good: когда в ностроении :?

Baha писал(а):сделай поддержку USB HID клавиатуры, с переназначением любой клавиши под любую функцию.

дельное предложение :good:
Всё просто! если знаешь КАК!
Аватара пользователя
NightV
Почётный участник
Почётный участник
 
Сообщения: 6375
Зарегистрирован: 30 дек 2011, 09:14
Откуда: Israel
Репутация: 2311
Медальки:
Настоящее имя: Владимир Айрапетян

Re: Самопальный интерпретатор

Сообщение Крафтер » 27 мар 2015, 23:45

aftaev писал(а):Чтоб был открытый проект, закрытых за деньги полно ;)

адаптивное управление скоростью
возможность ездить назад
поиск нуля по датчику G31
ТНС(управление высотой резака) для плазморезов


Открытый конечно.

Что значит адаптивное управление? Не нагуглил ничего.

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

На микроконтроллере есть ещё свободные выводы, поиск нуля тоже можно сделать. Но про G31 яндекс тоже особо не знает.
Можно например так сделать, вызываем G31 Z-42 и станок двигает сверло пока не будет касания, но не дальше 42, а при касании обнуляет Z координату. Если так то вроде не сложно.

Про ТСН не слышал, но примерно представить могу. Есть отдельный датчик, который реагирует на касание, с компа координаты приходят только XY, а Z должен быть такой, чтобы было слабое касание поверхности. Ну тоже не слишком сложно, но у меня пока нет плазмореза, мне бы гравировку нормально сделать :rasp:
Аватара пользователя
Крафтер
Мастер
 
Сообщения: 200
Зарегистрирован: 27 мар 2015, 22:25
Откуда: Ростов-на-Дону
Репутация: 59
Настоящее имя: Андрей

Re: Самопальный интерпретатор

Сообщение Крафтер » 27 мар 2015, 23:50

WhiteMask писал(а):Ручное управление думаю лучше с клавиатуры, а еще лучше чтоб каждый сам забивал гоячие клавиши под себя.

Ну это наверное легче всего будет сделать, парсер конфигов у меня уже есть. Cоздаём какой-нибудь hotkeys.cfg и прописываем туда "действие" "кнопка"
Z_UP KEY_ARROW_UP
Z_DOW KEY_ARROW_DOWN
и т.д.
Аватара пользователя
Крафтер
Мастер
 
Сообщения: 200
Зарегистрирован: 27 мар 2015, 22:25
Откуда: Ростов-на-Дону
Репутация: 59
Настоящее имя: Андрей

Re: Самопальный интерпретатор

Сообщение Baha » 27 мар 2015, 23:52

Крафтер писал(а):Ну это наверное легче всего будет сделать, парсер конфигов у меня уже есть. Cоздаём какой-нибудь hotkeys.cfg и прописываем туда "действие" "кнопка"

да, обычный ASCII файл
Крафтер писал(а):Что значит адаптивное управление? Не нагуглил ничего.

в простонародье лукахед или постоянная скорость.
Крафтер писал(а):а при касании обнуляет Z координату. Если так то вроде не сложно.

не только Z, но и по линейным осям, и не обнулять, а что бы можно было любую координату набить.
Крафтер писал(а): но у меня пока нет плазмореза, мне бы гравировку нормально сделать

в начале надо фрезеровку сделать, а потом можно на его базе, делать отдельные прошивки под другие виды станков.
Сферический ватник в вакууме.
Baha
Мастер
 
Сообщения: 605
Зарегистрирован: 29 сен 2008, 17:37
Откуда: Тараз-Москва
Репутация: 26

Re: Самопальный интерпретатор

Сообщение NightV » 27 мар 2015, 23:52

Крафтер писал(а):Что значит адаптивное управление? Не нагуглил ничего.

как я понял, которое можно "перестроить под себя", короче за это софт отвечает :)
Всё просто! если знаешь КАК!
Аватара пользователя
NightV
Почётный участник
Почётный участник
 
Сообщения: 6375
Зарегистрирован: 30 дек 2011, 09:14
Откуда: Israel
Репутация: 2311
Медальки:
Настоящее имя: Владимир Айрапетян

Re: Самопальный интерпретатор

Сообщение Baha » 27 мар 2015, 23:56

Крафтер писал(а):Но про G31 яндекс тоже особо не знает

не стандартная команда, под это дело не обязательна команда.
Сферический ватник в вакууме.
Baha
Мастер
 
Сообщения: 605
Зарегистрирован: 29 сен 2008, 17:37
Откуда: Тараз-Москва
Репутация: 26

Re: Самопальный интерпретатор

Сообщение NightV » 27 мар 2015, 23:56

Baha писал(а):
Крафтер писал(а):Что значит адаптивное управление? Не нагуглил ничего.

в простонародье лукахед или постоянная скорость.

:thinking:
или я :idiot: или лыжи не едут..
полез в пакет за водкой...
Всё просто! если знаешь КАК!
Аватара пользователя
NightV
Почётный участник
Почётный участник
 
Сообщения: 6375
Зарегистрирован: 30 дек 2011, 09:14
Откуда: Israel
Репутация: 2311
Медальки:
Настоящее имя: Владимир Айрапетян

Re: Самопальный интерпретатор

Сообщение aftaev » 27 мар 2015, 23:58

Крафтер писал(а):Что значит адаптивное управление? Не нагуглил ничего.

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

Крафтер писал(а):Можно например так сделать, вызываем G31 Z-42 и станок двигает сверло пока не будет касания, но не дальше 42, а при касании обнуляет Z координату. Если так то вроде не сложно.

G31 Y-1000 F100 (двигаем ось Y в отрицательную сторону до позиции 1000 или пока не сработает датчик касания со скоростью F100)

Крафтер писал(а):Про ТСН не слышал, но примерно представить могу

Dj время резки на плазме/лазере лист коробится и меняется его высота. На станок ставится прибор который измеряет высоту или по току или по емкости и выдает на ЧПУ 3 сигнала:
1. On Arch - дуга горит
2. Up - подымать ось Z
3. Down - отпускать ось Z
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
aftaev
Зачётный участник
Зачётный участник
 
Сообщения: 30350
Зарегистрирован: 04 апр 2010, 19:22
Откуда: Казахстан. Шымкент
Репутация: 5387
Медальки:

Re: Самопальный интерпретатор

Сообщение Baha » 27 мар 2015, 23:58

Крафтер писал(а): уменьшение напряжения в состояни покоя. Гонял на тестовых программах, вроде рисует нормально, выводит в 3d траекторию фрезы. Что ещё добавить, чтобы получилась годная программа? Когда допишу, выложу исходники.

состояние покоя, не надо, драйвера умеют. А по G кодам лучше сюда ориентироваться, http://linuxcnc.org/docs/html/gcode/gcode.html , там же M кода, http://linuxcnc.org/docs/html/gcode/m-code.html , там же и О кода, http://linuxcnc.org/docs/html/gcode/o-code.html
Сферический ватник в вакууме.
Baha
Мастер
 
Сообщения: 605
Зарегистрирован: 29 сен 2008, 17:37
Откуда: Тараз-Москва
Репутация: 26

Re: Самопальный интерпретатор

Сообщение Крафтер » 28 мар 2015, 00:02

ага, уже просветляется. Я сначала думал что F задаётся в мм/сек и сильно удивился, когда увидел в файле на гравировку значение 1000. ;)
Аватара пользователя
Крафтер
Мастер
 
Сообщения: 200
Зарегистрирован: 27 мар 2015, 22:25
Откуда: Ростов-на-Дону
Репутация: 59
Настоящее имя: Андрей

Re: Самопальный интерпретатор

Сообщение aftaev » 28 мар 2015, 00:04

Крафтер писал(а):Я сначала думал что F задаётся в мм/сек и сильно удивился, когда увидел в файле на гравировку значение 1000.

у нас в мм/мин задается и об/мин ;)
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
aftaev
Зачётный участник
Зачётный участник
 
Сообщения: 30350
Зарегистрирован: 04 апр 2010, 19:22
Откуда: Казахстан. Шымкент
Репутация: 5387
Медальки:

Re: Самопальный интерпретатор

Сообщение aftaev » 28 мар 2015, 00:07

Крафтер, как на счет токарной обработки - например нарезание резьбы с разным шагом, ровная и конусная :)
Для фрезерных станок было неплохо иметь поворот системы координат ;)
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
aftaev
Зачётный участник
Зачётный участник
 
Сообщения: 30350
Зарегистрирован: 04 апр 2010, 19:22
Откуда: Казахстан. Шымкент
Репутация: 5387
Медальки:

Re: Самопальный интерпретатор

Сообщение Крафтер » 28 мар 2015, 00:08

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

А это часто используется? Чтобы такое сделать, придётся ощутимо поломать расчёт ускорений.
Аватара пользователя
Крафтер
Мастер
 
Сообщения: 200
Зарегистрирован: 27 мар 2015, 22:25
Откуда: Ростов-на-Дону
Репутация: 59
Настоящее имя: Андрей

Re: Самопальный интерпретатор

Сообщение aftaev » 28 мар 2015, 00:09

Крафтер писал(а):А это часто используется?

для эрозионных станков обязательно ;)
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
aftaev
Зачётный участник
Зачётный участник
 
Сообщения: 30350
Зарегистрирован: 04 апр 2010, 19:22
Откуда: Казахстан. Шымкент
Репутация: 5387
Медальки:

Re: Самопальный интерпретатор

Сообщение aftaev » 28 мар 2015, 00:11

Крафтер писал(а):Чтобы такое сделать, придётся ощутимо поломать расчёт ускорений.

в ЧПУ будет регулятор подачи 0-200%? Вот его и выводят "на ружу" чтоб можно было управлять внешним сигналом, а если он отрицательный вообще едит обратно :)
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
aftaev
Зачётный участник
Зачётный участник
 
Сообщения: 30350
Зарегистрирован: 04 апр 2010, 19:22
Откуда: Казахстан. Шымкент
Репутация: 5387
Медальки:

Re: Самопальный интерпретатор

Сообщение Baha » 28 мар 2015, 00:11

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

Думаю что бы все это реализовать лучше делать отдельные прошивки, так как STM32 легко прошивается переходником USB-UART.
Сферический ватник в вакууме.
Baha
Мастер
 
Сообщения: 605
Зарегистрирован: 29 сен 2008, 17:37
Откуда: Тараз-Москва
Репутация: 26

След.

Вернуться в Windows / Mach

Кто сейчас на конференции

Зарегистрированные пользователи: Bing [Bot], Chili, eastwind, exe, Google [Bot], Maxekb77, Рома33, vestkot, Yandex [bot]

Reputation System ©'