Управление контроллером MK1 и MK2 (planet-cnc)

Mach, популярные и не очень CAD, CAM. Обсуждение и разработка программ для управления станками.
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

Re: Управление контроллером MK1 и MK2 (planet-cnc)

Сообщение selenur »

Skaarj писал(а): И еще сегфолтится от кнопки "твердое дерево". Ошибка сегментирования (core dumped). После переключения на английский язык не падает, а потом опять.
Орфографическая ошибка OpenGL disadbled. Кстати, почему теперь отключен? Как включить? Я крутой тестер? :)
Спасибо что решил воспользоваться нашим проектом, Эдуард скоро появиться и обязательно учтет пожелания :-)
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Karbofos
Опытный
Сообщения: 121
Зарегистрирован: 11 июн 2015, 10:40
Репутация: 85
Настоящее имя: Эдя Калиновский
Откуда: Ганновер
Контактная информация:

Re: Управление контроллером MK1 и MK2 (planet-cnc)

Сообщение Karbofos »

Skaarj писал(а):Здравствуйте. Я новичок. Есть станок без мозгов, есть китайский клон mk1, есть archlinux. Хочу собрать воедино.
Запустил cncqt под QT5, загрузил в нее DaVinci, увидел Gcode. Программа валится на вкладке 3Д визуализации.
Причем успевает рисунок показать.

[kostya@sistemac cnc-qt]$ ./cncqt
Device not connected

Device registering attach callback
Device registering detach callback
GL enabled true flags: QFlags(0x1|0x2|0x4|0x8|0x10|0x20|0x40|0x1000|0x2000|0x4000|0x8000|0x10000|0x20000|0x40000|0x80000)
"NVIDIA Corporation GeForce GTX 570/PCIe/SSE2 4.5.0 NVIDIA 358.16"
read gcode, loaded. Time elapsed: 288 ms
read gcode, parsed. Time elapsed: 115 ms
Ошибка сегментирования (core dumped)
если исходники актуальные, то хотелось бы посмотреть файл g-code. есть еще возможность запустить под отладчиком.

Код: Выделить всё

gdb -ex=r --args ./build/cncqt ./sample\ g-code/club-cnc\ logo.nc
здесь отладчик вызывает программу с аргументами запуска - файлом club-cnc logo.nc
после крэша вбить команду bt и нажать "ввод" эта команда делает backtrace распечатку вызовов.
огромное спасибо за помощь!
Skaarj писал(а): Еще вот. девайс моргает красным диодом. Это нормально вроде. И светит еще несколькими в ряд. Однако программа не хочет его распознать.
Device to attache 0x0
Error opening device

[kostya@sistemac ~]$ dmesg --follow
...
[ 144.950714] usb 8-2: new full-speed USB device number 2 using uhci_hcd
[ 221.452304] cncqt[1021]: segfault at 0 ip 00000000412ffdb1 sp 00007ffdde9d7b08 error 4 in .glcfgfPC (deleted)[412fe000+2000]
[ 254.783378] usb 8-2: USB disconnect, device number 2
программа не может распознать, т.к. нужны права для соединения. скопировать файл из директория udev/rules.d/z90_cncusb.rules в рут-директорий /etc/udev/rules.d/. для этого нужны права суперюзера
после этого перезапустить демон udev так же с правами суперюзера.
пардон, сегодня весь день возился с бумагами в налоговую, завтра надо отдать. не смог оперативно ответить.

С Новым Годом! Всем творческих успехов!
Skaarj
Новичок
Сообщения: 9
Зарегистрирован: 03 янв 2016, 07:00
Репутация: 4
Настоящее имя: Константин М.
Контактная информация:

Re: Управление контроллером MK1 и MK2 (planet-cnc)

Сообщение Skaarj »

Воспроизвёл на QT5.5.1

(gdb) bt
#0 0x0000000000461bee in CuttingCalc::changeParameters() ()
#1 0x00000000004a42fc in CuttingCalc::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) ()
#2 0x00007ffff681631a in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQt5Core.so.5
#3 0x00007ffff7479800 in QDoubleSpinBox::valueChanged(double) () from /usr/lib/libQt5Widgets.so.5
#4 0x00007ffff7271c1e in ?? () from /usr/lib/libQt5Widgets.so.5
#5 0x00007ffff71df71a in ?? () from /usr/lib/libQt5Widgets.so.5
#6 0x00007ffff727358c in QDoubleSpinBox::setValue(double) () from /usr/lib/libQt5Widgets.so.5
#7 0x0000000000462571 in CuttingCalc::changeUnit(int) ()
#8 0x0000000000461805 in CuttingCalc::CuttingCalc(QWidget*) ()
#9 0x0000000000476091 in MainWindow::onCalcVelocity() ()
#10 0x00000000004a4675 in MainWindow::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) ()
#11 0x00007ffff681631a in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/libQt5Core.so.5
#12 0x00007ffff74755f2 in QAbstractButton::clicked(bool) () from /usr/lib/libQt5Widgets.so.5
#13 0x00007ffff71d7a94 in ?? () from /usr/lib/libQt5Widgets.so.5
#14 0x00007ffff71d90a9 in ?? () from /usr/lib/libQt5Widgets.so.5
#15 0x00007ffff71d9224 in QAbstractButton::mouseReleaseEvent(QMouseEvent*) () from /usr/lib/libQt5Widgets.so.5
#16 0x00007ffff729dfca in QToolButton::mouseReleaseEvent(QMouseEvent*) () from /usr/lib/libQt5Widgets.so.5
#17 0x00007ffff711d9c8 in QWidget::event(QEvent*) () from /usr/lib/libQt5Widgets.so.5
#18 0x00007ffff729e0a9 in QToolButton::event(QEvent*) () from /usr/lib/libQt5Widgets.so.5
#19 0x00007ffff70da9ac in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#20 0x00007ffff70e0589 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
---Type <return> to continue, or q <return> to quit---
#21 0x00007ffff67e7bab in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#22 0x00007ffff70df492 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) ()
from /usr/lib/libQt5Widgets.so.5
#23 0x00007ffff7137f3b in ?? () from /usr/lib/libQt5Widgets.so.5
#24 0x00007ffff713a4fb in ?? () from /usr/lib/libQt5Widgets.so.5
#25 0x00007ffff70da9ac in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#26 0x00007ffff70dfe86 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#27 0x00007ffff67e7bab in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#28 0x00007ffff6b285f1 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () from /usr/lib/libQt5Gui.so.5
#29 0x00007ffff6b2a2b5 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) ()
from /usr/lib/libQt5Gui.so.5
#30 0x00007ffff6b0f6d8 in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Gui.so.5
#31 0x00007fffedaaf8c0 in ?? () from /usr/lib/libQt5XcbQpa.so.5
#32 0x00007ffff2c36dc7 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#33 0x00007ffff2c37020 in ?? () from /usr/lib/libglib-2.0.so.0
#34 0x00007ffff2c370cc in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#35 0x00007ffff683e54f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#36 0x00007ffff67e557a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#37 0x00007ffff67ed53c in QCoreApplication::exec() () from /usr/lib/libQt5Core.so.5
#38 0x000000000049b26e in main ()
(gdb)

На QT4 тоже запустил. Там стабильно работает.
Почему у меня OpenGL не включается?
Karbofos
Опытный
Сообщения: 121
Зарегистрирован: 11 июн 2015, 10:40
Репутация: 85
Настоящее имя: Эдя Калиновский
Откуда: Ганновер
Контактная информация:

Re: Управление контроллером MK1 и MK2 (planet-cnc)

Сообщение Karbofos »

приветствую!
с Qt5 попробую у себя повторить вывал программы.
OpenGL не компилируется в случае, если libqt4-opengl-dev или libqt5opengl-dev не найдены
или если программа вызывается удаленно через ssh или подобное.
прикрутку библиотек можно проверить командой
ldd ./cncqt
Skaarj
Новичок
Сообщения: 9
Зарегистрирован: 03 янв 2016, 07:00
Репутация: 4
Настоящее имя: Константин М.
Контактная информация:

Re: Управление контроллером MK1 и MK2 (planet-cnc)

Сообщение Skaarj »

$ ldd ./cncqt
linux-vdso.so.1 (0x00007ffefa9f5000)
libusb-1.0.so.0 => /usr/lib/libusb-1.0.so.0 (0x00007f2391025000)
libQt5OpenGL.so.5 => /usr/lib/libQt5OpenGL.so.5 (0x00007f23913b3000)
libGLU.so.1 => /usr/lib/libGLU.so.1 (0x00007f2390da5000)
libGL.so.1 => /usr/lib/libGL.so.1 (0x00007f2390a71000)
libQt5Widgets.so.5 => /usr/lib/libQt5Widgets.so.5 (0x00007f23903e2000)
libQt5Gui.so.5 => /usr/lib/libQt5Gui.so.5 (0x00007f238fe99000)
libQt5Core.so.5 => /usr/lib/libQt5Core.so.5 (0x00007f238f9c4000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f238f642000)
libm.so.6 => /usr/lib/libm.so.6 (0x00007f238f344000)
libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007f238f12e000)
libc.so.6 => /usr/lib/libc.so.6 (0x00007f238ed8a000)
libudev.so.1 => /usr/lib/libudev.so.1 (0x00007f2391390000)
libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007f238eb6d000)
libnvidia-tls.so.358.16 => /usr/lib/libnvidia-tls.so.358.16 (0x00007f238e969000)
libnvidia-glcore.so.358.16 => /usr/lib/libnvidia-glcore.so.358.16 (0x00007f238cd08000)
libX11.so.6 => /usr/lib/libX11.so.6 (0x00007f238c9c6000)
libXext.so.6 => /usr/lib/libXext.so.6 (0x00007f238c7b4000)
libdl.so.2 => /usr/lib/libdl.so.2 (0x00007f238c5b0000)
libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x00007f238c35e000)
libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x00007f238c050000)
libpng16.so.16 => /usr/lib/libpng16.so.16 (0x00007f238be1b000)
libharfbuzz.so.0 => /usr/lib/libharfbuzz.so.0 (0x00007f238bbb7000)
libz.so.1 => /usr/lib/libz.so.1 (0x00007f238b9a1000)
libicui18n.so.56 => /usr/lib/libicui18n.so.56 (0x00007f238b525000)
libicuuc.so.56 => /usr/lib/libicuuc.so.56 (0x00007f238b18e000)
libpcre16.so.0 => /usr/lib/libpcre16.so.0 (0x00007f238af28000)
librt.so.1 => /usr/lib/librt.so.1 (0x00007f238ad20000)
libsystemd.so.0 => /usr/lib/libsystemd.so.0 (0x00007f2391306000)
/lib64/ld-linux-x86-64.so.2 (0x00007f239123e000)
libcap.so.2 => /usr/lib/libcap.so.2 (0x00007f238ab1c000)
libresolv.so.2 => /usr/lib/libresolv.so.2 (0x00007f238a905000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0x00007f238a6e2000)
libffi.so.6 => /usr/lib/libffi.so.6 (0x00007f238a4d9000)
libpcre.so.1 => /usr/lib/libpcre.so.1 (0x00007f238a269000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x00007f2389fab000)
libgraphite2.so.3 => /usr/lib/libgraphite2.so.3 (0x00007f2389d80000)
libicudata.so.56 => /usr/lib/libicudata.so.56 (0x00007f238839d000)
liblzma.so.5 => /usr/lib/liblzma.so.5 (0x00007f2388177000)
liblz4.so.1 => /usr/lib/liblz4.so.1 (0x00007f2387f65000)
libgcrypt.so.20 => /usr/lib/libgcrypt.so.20 (0x00007f2387c83000)
libgpg-error.so.0 => /usr/lib/libgpg-error.so.0 (0x00007f2387a6f000)
libattr.so.1 => /usr/lib/libattr.so.1 (0x00007f238786a000)
libXau.so.6 => /usr/lib/libXau.so.6 (0x00007f2387666000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x00007f2387460000)
libbz2.so.1.0 => /usr/lib/libbz2.so.1.0 (0x00007f2387250000)
Karbofos
Опытный
Сообщения: 121
Зарегистрирован: 11 июн 2015, 10:40
Репутация: 85
Настоящее имя: Эдя Калиновский
Откуда: Ганновер
Контактная информация:

Re: Управление контроллером MK1 и MK2 (planet-cnc)

Сообщение Karbofos »

хм. вроде прикручен без проблем. значит некорректно работает определение запуска из удалённого соединения:

Код: Выделить всё

    QString d = getenv( "DISPLAY" ); // linux machines only!

    // to disable the OpenGL features, if over ssh
    enableOpenGL = (d.indexOf(":0") == 0);
можно мне посмотреть результат команды echo $DISPLAY?
при локальном запуске выдаётся значение :0.0 и переменная enableOpenGL устанавливается в истину.
это делается для отключения поддержки OpenGL при запуске на удалённом компьютере, иначе начинает жестко тормозить. по крайней мере, более адекватного решения я еще не нашел. :thinking:
как оно ведёт себя в chroot тоже не проверял.
Skaarj
Новичок
Сообщения: 9
Зарегистрирован: 03 янв 2016, 07:00
Репутация: 4
Настоящее имя: Константин М.
Контактная информация:

Re: Управление контроллером MK1 и MK2 (planet-cnc)

Сообщение Skaarj »

Ну вот, а у меня два видеовывода.
$ echo $DISPLAY
:1.0
Karbofos
Опытный
Сообщения: 121
Зарегистрирован: 11 июн 2015, 10:40
Репутация: 85
Настоящее имя: Эдя Калиновский
Откуда: Ганновер
Контактная информация:

Re: Управление контроллером MK1 и MK2 (planet-cnc)

Сообщение Karbofos »

Skaarj писал(а):Ну вот, а у меня два видеовывода.
$ echo $DISPLAY
:1.0
уже исправил. через несколько часов будет апдейт. дам знать. также будут встроены установки. с крэшем на Qt5 пока не разбирался.

строку можно заменить на:

Код: Выделить всё

enableOpenGL = (d.indexOf(QRegExp(":[0-9]")) == 0);
нумерация выводов от 0 до 9
Karbofos
Опытный
Сообщения: 121
Зарегистрирован: 11 июн 2015, 10:40
Репутация: 85
Настоящее имя: Эдя Калиновский
Откуда: Ганновер
Контактная информация:

Re: Управление контроллером MK1 и MK2 (planet-cnc)

Сообщение Karbofos »

в Qt исходниках актуализация: прикрутил установки выключения осей, реверса импульса, реверса направлений, установка координат рабочего поля. с сохранением настроек.
плюс исправление перечисленных ранее мелких ошибок. в Qt 5.5.1 (Kubuntu 16.04) не смог воспроизвести крэш. но ищу дальше. там некоторые вещи всё равно надо доделать.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Управление контроллером MK1 и MK2 (planet-cnc)

Сообщение Serg »

Karbofos писал(а):не смог воспроизвести крэш. но ищу дальше.
Откомпилите с опцией -g - тогда gdb покажет номер конкретной строчки, при выполнении которой всё упало.
Обычно это обращение за границу массива или попутка чтения/записи по указателю NULL...
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

Re: Управление контроллером MK1 и MK2 (planet-cnc)

Сообщение selenur »

Уже более менее стабильная версия,
CNC.zip
(1.73 МБ) 414 скачиваний
Добавлена поддержка веб-камеры, правда пока не придумал что накладывать на видео, например траекторию гравировки/фрезеровки, и координаты.
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Karbofos
Опытный
Сообщения: 121
Зарегистрирован: 11 июн 2015, 10:40
Репутация: 85
Настоящее имя: Эдя Калиновский
Откуда: Ганновер
Контактная информация:

Re: Управление контроллером MK1 и MK2 (planet-cnc)

Сообщение Karbofos »

UAVpilot писал(а):
Karbofos писал(а):не смог воспроизвести крэш. но ищу дальше.
Откомпилите с опцией -g - тогда gdb покажет номер конкретной строчки, при выполнении которой всё упало.
Обычно это обращение за границу массива или попутка чтения/записи по указателю NULL...
да, эти источники проблем мне известны, поэтому стараюсь делать всё через списки и векторы. хотя, везде можно напортачить. :hehehe:
только в том окошке источник - деление на ноль, т.к. не все данные заполнены в свойствах материалов.
-g использую в основном для профилировки (-pg), для остального backtrace дает более объёмную информацию, всю ветку вызовов. хотя, конечно, дело вкуса. :good:
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5183
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Управление контроллером MK1 и MK2 (planet-cnc)

Сообщение Serg »

Процесс, пытающийся поделить на ноль система отстреливает сигналом SIGABRT или SIGFPE, но никак не SIGSEGV (Ошибка сегментирования).
SIGSEGV - это однозначно обращение к области памяти, к которой нет доступа.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Karbofos
Опытный
Сообщения: 121
Зарегистрирован: 11 июн 2015, 10:40
Репутация: 85
Настоящее имя: Эдя Калиновский
Откуда: Ганновер
Контактная информация:

Re: Управление контроллером MK1 и MK2 (planet-cnc)

Сообщение Karbofos »

UAVpilot писал(а):Процесс, пытающийся поделить на ноль система отстреливает сигналом SIGABRT или SIGFPE, но никак не SIGSEGV (Ошибка сегментирования).
SIGSEGV - это однозначно обращение к области памяти, к которой нет доступа.
там класс недоработан, я об этом писал. сегфолтится может и из-за неотключеных сигнал-слот соединений при изменении виджетов.
Karbofos
Опытный
Сообщения: 121
Зарегистрирован: 11 июн 2015, 10:40
Репутация: 85
Настоящее имя: Эдя Калиновский
Откуда: Ганновер
Контактная информация:

Re: Управление контроллером MK1 и MK2 (planet-cnc)

Сообщение Karbofos »

патч от сегфолта CuttingCalc готов, ошибка инициализации переменной индекса в случае, если файл Gcode не был загружен.
но я проверяю дальше этот класс, надо перепроверить, все ли формулы я правильно встроил.
Vadim777
Новичок
Сообщения: 3
Зарегистрирован: 06 янв 2016, 11:02
Репутация: 0
Настоящее имя: Вадим
Контактная информация:

Re: Управление контроллером MK1 и MK2 (planet-cnc)

Сообщение Vadim777 »

Доделываю свой станочек, нужен он мне в основном для изготовления печатных плат. Есть множество программ для фрезеровки, но ни в одной (кроме Planet cnc) я не нашёл предсканирования поверхности, но там цена для многих заоблачная. Сообщите пожалуйста - устранили ли Вы ошибки этой функции, сделан ли расчёт коррекции между точками, и хотелось бы хотя-бы небольшой Help по программе и особенно по предскану поверхности - как пользоваться Вашей программой, к чему в МК1 подключать два провода, можно ли конвертировать файлы фрезеровки и сверловки из Sprint-Layout?
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

Re: Управление контроллером MK1 и MK2 (planet-cnc)

Сообщение selenur »

Vadim777 писал(а):Доделываю свой станочек, нужен он мне в основном для изготовления печатных плат. Есть множество программ для фрезеровки, но ни в одной (кроме Planet cnc) я не нашёл предсканирования поверхности, но там цена для многих заоблачная. Сообщите пожалуйста - устранили ли Вы ошибки этой функции, сделан ли расчёт коррекции между точками, и хотелось бы хотя-бы небольшой Help по программе и особенно по предскану поверхности - как пользоваться Вашей программой, к чему в МК1 подключать два провода, можно ли конвертировать файлы фрезеровки и сверловки из Sprint-Layout?
Привет!
В ближайшее время займусь, как раз опцией сканирования поверхности, для гравировки плат (сейчас пока не работает). И тогда наверное уже сделаю инструкцию по работе с программой.
Что касается подключения к контроллеру, то необходимо использовать Вывод limit №5 (Z-) и GND их замыкание означает что "есть соприкосновение".
Что касается сверловки, у меня есть ещё одна программка, которая файл drl превращает в Gkod, а вот по поводу траектории фрезеровки, можно попробовать использовать оригинальную программу planet-CNC, в ней есть и импорт и экспорт в разные форматы.
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

Re: Управление контроллером MK1 и MK2 (planet-cnc)

Сообщение selenur »

Добавил в программу загрузку из буфера обмена, и поправил пару косяков:
2016-01-06_152955.png (2826 просмотров) <a class='original' href='./download/file.php?id=68097&mode=view' target=_blank>Загрузить оригинал (226.41 КБ)</a>
Позже доделаю в виде отдельной программы конструктор G-кода, с копированием через буфер обмена/файл, а так-же остальные свои утилиты.
А вот программа для тестирования:
cnc.zip
(1.73 МБ) 404 скачивания
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Vadim777
Новичок
Сообщения: 3
Зарегистрирован: 06 янв 2016, 11:02
Репутация: 0
Настоящее имя: Вадим
Контактная информация:

Re: Управление контроллером MK1 и MK2 (planet-cnc)

Сообщение Vadim777 »

selenur писал(а):Привет!
В ближайшее время займусь, как раз опцией сканирования поверхности, для гравировки плат (сейчас пока не работает). И тогда наверное уже сделаю инструкцию по работе с программой.
Супер, буду ждать, а пока поищу микросхему и спаяю МК1.
selenur писал(а):можно попробовать использовать оригинальную программу planet-CNC, в ней есть и импорт и экспорт в разные форматы.
Попробовал - импорт работает, а вот строки экспорта в меню не активны, наверно потому, что нет лицензии,
но поиском сразу же нашёл конвертор plt в G-код. Может надо кому - программа StepCam 1.79 -http://cncrouter.ru/forum/index.php?showtopic=367
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

Re: Управление контроллером MK1 и MK2 (planet-cnc)

Сообщение selenur »

Vadim777 писал(а):можно ли конвертировать файлы фрезеровки и сверловки из Sprint-Layout?
Как оказалось у меня это практически работает, для одного из хобби проектов я делал загрузку из plt файла, так вот в Sprint-Layout оказывается есть экспорт в этот формат, в итоге вот что получается:
Экспортирую в файл
2016-01-08_002528.jpg (2772 просмотра) <a class='original' href='./download/file.php?id=68198&mode=view' target=_blank>Загрузить оригинал (312.4 КБ)</a>
В своей программке загружаю файл:
2016-01-08_002112.jpg (2772 просмотра) <a class='original' href='./download/file.php?id=68201&mode=view' target=_blank>Загрузить оригинал (103.3 КБ)</a>
Получаю G-код, правда пока с косяками, из-за парсинга файла.
2016-01-08_002741.jpg (2772 просмотра) <a class='original' href='./download/file.php?id=68199&mode=view' target=_blank>Загрузить оригинал (312.32 КБ)</a>
Ну и в итоге получаю вот такую штуку:
2016-01-08_002137.jpg (2772 просмотра) <a class='original' href='./download/file.php?id=68200&mode=view' target=_blank>Загрузить оригинал (483.87 КБ)</a>
Жаль что в DipTrace нет такого, т.к. сейчас моя одна из программ пока умеет только из gerber получать массив векторов, потом по ним формировать черно-белый рисунок, а вот дальше из этого получать траекторию задачка не простая.....
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Ответить

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