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

Mach, популярные и не очень CAD, CAM. Обсуждение и разработка программ для управления станками.
popcorn
Мастер
Сообщения: 252
Зарегистрирован: 21 янв 2015, 00:20
Репутация: 18
Откуда: Янтарный край
Контактная информация:

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

Сообщение popcorn »

selenur писал(а):
popcorn писал(а): Если в линукс софт делать, то нужно драйвер будет скорее всего писать.
Ничего не прийдется, есть похожая библиотека http://packages.ubuntu.com/ru/lucid/libusb-dev с помощью которой сделать тоже самое что делаю сейчас несложно.
хм, я не особо шарю. Разве библиотека не через драйвер от planetcnc общается с контроллером? То есть цепочка программа-библиотека-драйвер-контроллер.
Изображение
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

Я выше писал что работаю напрямую с драйвером, поэтому все проще ;-)
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Moonglow
Опытный
Сообщения: 117
Зарегистрирован: 16 окт 2013, 09:24
Репутация: 108
Откуда: Москва
Контактная информация:

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

Сообщение Moonglow »

popcorn писал(а): Разве библиотека не через драйвер от planetcnc общается с контроллером?
libusb - это кроссплатформенное решение для работы с USB устройствами в пользовательском пространстве. В windows libusb устанавливает свой драйвер для доступа к необходимому USB устройству. В Linux он работает через /dev/bus/usb/* устройства. Так-как интерфейс библиотеки для win и lin один и тот же, то позволяет использовать одинаковый код взаимодействия с устройствами. PlanetCNC использует драйвер как раз на базе libusb ,поэтому как таковой драйвер от PlanetCNC не нужен и можно "сделать" свой в любой момент. Конечно кроссплатформенное изначально решение будет более полезно для большинства.
popcorn
Мастер
Сообщения: 252
Зарегистрирован: 21 янв 2015, 00:20
Репутация: 18
Откуда: Янтарный край
Контактная информация:

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

Сообщение popcorn »

Moonglow писал(а):
popcorn писал(а): Разве библиотека не через драйвер от planetcnc общается с контроллером?
libusb - это кроссплатформенное решение для работы с USB устройствами в пользовательском пространстве. В windows libusb устанавливает свой драйвер для доступа к необходимому USB устройству. В Linux он работает через /dev/bus/usb/* устройства. Так-как интерфейс библиотеки для win и lin один и тот же, то позволяет использовать одинаковый код взаимодействия с устройствами. PlanetCNC использует драйвер как раз на базе libusb ,поэтому как таковой драйвер от PlanetCNC не нужен и можно "сделать" свой в любой момент. Конечно кроссплатформенное изначально решение будет более полезно для большинства.
хм, меня смутило, что lsusb выдал такое на мою плату:
(для просмотра содержимого нажмите на ссылку)

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

[code=off]Bus 002 Device 002: ID 2121:2130  
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x2121 
  idProduct          0x2130 
  bcdDevice            1.00
  iManufacturer           1 
  iProduct                2 
  iSerial                 3 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           32
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          4 
    bmAttributes         0xc0
      Self Powered
    MaxPower              200mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
[/code]
Я вроде немного разобрался уже, позже углублюсь в тему.
Изображение
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

А вот что видно про мой контроллер:

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

Connection Information
 Port: 4
 Speed: Full Speed
 Device address: 6
 Open pipes: 2
 Connection status: Device connected

Device Descriptor
 USB version: 2.0
 Device class: 0x0 - (Defined at Interface level)
 Device subclass: 0x0 - Unknown
 Device protocol: 0x0 - Unknown
 Control pipe max size: 8 bytes
 Vendor ID: 0x2121 (Unknown)
 Product ID: 0x2130 (Unknown)
 Product version: 1.0
 Manufacturer: www.planet-cnc.com
 Product: CNC USB Controller
 Serial Number: хххххххххх
 Configurations: 1
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
popcorn
Мастер
Сообщения: 252
Зарегистрирован: 21 янв 2015, 00:20
Репутация: 18
Откуда: Янтарный край
Контактная информация:

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

Сообщение popcorn »

selenur писал(а):А вот что видно про мой контроллер:
(для просмотра содержимого нажмите на ссылку)

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

Connection Information
 Port: 4
 Speed: Full Speed
 Device address: 6
 Open pipes: 2
 Connection status: Device connected

Device Descriptor
 USB version: 2.0
 Device class: 0x0 - (Defined at Interface level)
 Device subclass: 0x0 - Unknown
 Device protocol: 0x0 - Unknown
 Control pipe max size: 8 bytes
 Vendor ID: 0x2121 (Unknown)
 Product ID: 0x2130 (Unknown)
 Product version: 1.0
 Manufacturer: www.planet-cnc.com
 Product: CNC USB Controller
 Serial Number: хххххххххх
 Configurations: 1
это чего вывод?
Изображение
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

С USB сниффера
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

Добавил 3d, что-бы теперь удобнее было сделать щупалку поверхности перед обработкой :-) ну и так видеть где фреза.
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
ukr-sasha
Мастер
Сообщения: 3401
Зарегистрирован: 21 мар 2011, 07:47
Репутация: 2180
Настоящее имя: Украинец Александр Григорьевич
Откуда: Киев, Украина
Контактная информация:

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

Сообщение ukr-sasha »

selenur писал(а):Добавил 3d
Талантище!
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

Если кто желает, и имеет возможность потестить, буду рад! :-)
Собственно сама программа:
cnc.rar
(420.38 КБ) 1232 скачивания
Для примера g-код, если нет под рукой другого:
club-cnc logo.rar
(11.16 КБ) 713 скачиваний
Как открыть файл:

Основные органы управления: Управление мышкой:
У каждой оси есть 3 кнопки:
1) вертеть в одну сторону
2) установить 0 градусов
3) вертеть в другую сторону
Если при нажатой левой клавише мыши, двигать мышкой, то и изображение двигается по осям XY
С правой зажатой клавишей верчение по осям.

Управление с клавиатуры:
F1,F2,F3,F4,F5,F6 - верчение по осям
ESC - сброс верчений по осям, что-бы вид был сверху.
клавиши + и - соответственно приближают и отдаляют

Программа пока не понимает коды G2,G3.....

Зелеными линиями я отображаю движение G1 и красным G0.
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
popcorn
Мастер
Сообщения: 252
Зарегистрирован: 21 янв 2015, 00:20
Репутация: 18
Откуда: Янтарный край
Контактная информация:

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

Сообщение popcorn »

Не удержался и попробовал программу со своей платой, вроде подключается к контроллеру. Пока могу проверить только это, остальные части станка ещё не получил.
На экране нетбука (1024x600), если развернуть окно, появляется проблема с пропорциями 3d модели. Пробовал разные ситуации - всё равно проявляется.
Скриншоты окна Teamviewer, сорри за качество.
Вложения
snapshot12.png (6728 просмотров) <a class='original' href='./download/file.php?id=44515&sid=30ba7193ef62cc3a73fa38f1018dc8ad&mode=view' target=_blank>Загрузить оригинал (32.92 КБ)</a>
snapshot11.png (6728 просмотров) <a class='original' href='./download/file.php?id=44516&sid=30ba7193ef62cc3a73fa38f1018dc8ad&mode=view' target=_blank>Загрузить оригинал (24.86 КБ)</a>
Изображение
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

С пропорциями, пока косяк, ещё не разобрался :-)
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

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

Сообщение Nick »

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

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

Сообщение selenur »

Вот думаю как визуально отобразить данные, которые натыкал, можно например отображать вертикальные линии с изменяющимся цветом в зависимости от глубины касания сенсора.
Или нарисовать сетку, места пересечения линий будут являться точки, где сенсор опускается, и вместе с сенсором опускается эта точка, а линии которые идут к ней от других точек, прогибаются за точкой.
Может есть еще идеи? :-)
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
popcorn
Мастер
Сообщения: 252
Зарегистрирован: 21 янв 2015, 00:20
Репутация: 18
Откуда: Янтарный край
Контактная информация:

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

Сообщение popcorn »

Это вы про визуализацию?
Изображение
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

Ну да, вот думаю нужно ли отображать то что насканировал, и как :-)
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
michael-yurov
Почётный участник
Почётный участник
Сообщения: 11626
Зарегистрирован: 26 июл 2012, 00:10
Репутация: 4634
Настоящее имя: Михаил Львович
Откуда: Новоуральск
Контактная информация:

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

Сообщение michael-yurov »

selenur писал(а):Ну да, вот думаю нужно ли отображать то что насканировал, и как :-)
Стоит показать в каких точках это произошло, и хорошо бы одновременно с загруженной траекторией,
а показывать перепады высот, скорее всего, нет смысла
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4604
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1621
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

Появилось немного свободного времени, и добавил сканирование поверхности, подложил под стеклолит маркер, и просканировал поверхность размером 40х40мм. с шагом 10мм.
Вот чего получилось: И вот тут понял, что если поверхность на которой нужно фрезеровать совсем уж неровная, нужно будет использовать не только смещение по оси Z, но и по X,Y, для соблюдения пропорций фрезеруемого рисунка.
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Аватара пользователя
michael-yurov
Почётный участник
Почётный участник
Сообщения: 11626
Зарегистрирован: 26 июл 2012, 00:10
Репутация: 4634
Настоящее имя: Михаил Львович
Откуда: Новоуральск
Контактная информация:

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

Сообщение michael-yurov »

selenur писал(а):И вот тут понял, что если поверхность на которой нужно фрезеровать совсем уж неровная, нужно будет использовать не только смещение по оси Z, но и по X,Y, для соблюдения пропорций фрезеруемого рисунка.
Это уже выходит далеко за пределы реальной задачи.
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2857
Откуда: Тюмень
Контактная информация:

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

Сообщение Сергей Саныч »

selenur писал(а):И вот тут понял, что если поверхность на которой нужно фрезеровать совсем уж неровная, нужно будет использовать не только смещение по оси Z, но и по X,Y, для соблюдения пропорций фрезеруемого рисунка.
Ага. И пятиосевой станок :)
Чудес не бывает. Бывают фокусы.
Ответить

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