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

Mach, популярные и не очень CAD, CAM. Обсуждение и разработка программ для управления станками.
Аватара пользователя
xvovanx
Мастер
Сообщения: 3772
Зарегистрирован: 25 фев 2016, 12:27
Репутация: 920
Настоящее имя: Владимир
Откуда: Latvia
Контактная информация:

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

Сообщение xvovanx »

НБО писал(а):А туман - это что?
Вверху программы есть три иконки "Шпиндель", "СОЖ", "Туман". Как вручную, как и програмно можно управлять вкл/вкл шпинделя, СОЖ-охлаждение жидкостью либо Туманом-сильное разбрызгивание ох.жидкости под давлением воздуха до стадии тумана. Есть режимы обработок материалов, где режим тумана предпочтительнее для охлаждения инструмента, чем струйкой жидкости.
Вложения
tuman.PNG (4908 просмотров) <a class='original' href='./download/file.php?id=154812&mode=view' target=_blank>Загрузить оригинал (240.82 КБ)</a>
НБО
Новичок
Сообщения: 16
Зарегистрирован: 09 янв 2019, 19:00
Репутация: 1
Настоящее имя: Олег
Контактная информация:

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

Сообщение НБО »

Появились еще вопросы:
приехал контроллер и драйвера, как лучше их собирать вместе?
1.может быть соединения с драйверами выполнить экранированными проводами? во избежание..
2.аналогично и подключение концевых датчиков (в идеале прямо до самого датчика)
Аватара пользователя
xvovanx
Мастер
Сообщения: 3772
Зарегистрирован: 25 фев 2016, 12:27
Репутация: 920
Настоящее имя: Владимир
Откуда: Latvia
Контактная информация:

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

Сообщение xvovanx »

НБО писал(а):1.может быть соединения с драйверами выполнить экранированными проводами? во избежание..
2.аналогично и подключение концевых датчиков (в идеале прямо до самого датчика)
я к драйверам не экранировал, от концевиков ставил в экранах (заземление экрана с одной стороны- на станке), еще на контакты концевиков параллельно повесил кондики 0.01uF
НБО
Новичок
Сообщения: 16
Зарегистрирован: 09 янв 2019, 19:00
Репутация: 1
Настоящее имя: Олег
Контактная информация:

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

Сообщение НБО »

xvovanx
Возник еще вопрос, маленькая плата рядом с USB разъемом это DC-DC, преобразует питание пришедшее от USB, либо от разъема внешнего питания (в зависимости от положения переключателя). Так вот: при использовании хорошего 5В внешнего БП, похоже можно, вместо платы поставить перемычку (от + к + (кажется так они подписаны))?
НБО
Новичок
Сообщения: 16
Зарегистрирован: 09 янв 2019, 19:00
Репутация: 1
Настоящее имя: Олег
Контактная информация:

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

Сообщение НБО »

НБО писал(а):Возник еще вопрос
Сам проверил - можно! вопрос закрыт.
Olaf72
Новичок
Сообщения: 14
Зарегистрирован: 30 дек 2018, 01:51
Репутация: 3
Настоящее имя: Олег
Контактная информация:

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

Сообщение Olaf72 »

Привет всем!
собрал станок на такой плате:
HTB1sAleGhSYBuNjSsphq6zGvVXaN.jpg (4529 просмотров) <a class='original' href='./download/file.php?id=158995&mode=view' target=_blank>Загрузить оригинал (183.4 КБ)</a>
Зовут ее USBCNCv4
но, это MK1 DIY

USB CNC Controller работает, даже последний, с оффсайта.
Работает на Win10. Чтобы поставить старый софт на Вин10, надо после установки установить свежий драйвер c Оффсайта.
прошивку обновляет в обе стороны и вперед, и назад.

НО, необходимо ставить софт сначала с диска из комплекта, регистрировать и только после обновлять софт.
После обновления номер контроллера скорее всего поменяется, и надо где то на форуме, (в личке наверное) искать как решить проблему.

Намудохался по самое самое.
Братья спутали все что можно спутать, все подключал строго по схемам с самопроверками, но, двигатели едут не туда, концевики осей поменяны местами.
Пока привел все в норму, чтобы в софте все ездило в правильные стороны, без инверсий, чтобы когда доезжая до концевиков останавливался, и после остановки ехал не дальше на концевик а другую блокировался, а на оборот.
Наконец, все в норме.
Робот едет по всем осям как надо. Откалиброван.
Тут появилось одно затруднение.

Частотник у меня Powtran PI9000 серии.
Хочется мне его по PWM подключить.
PWM на плате есть.
Как постигал как его заставить работать это отдельная повесть.
Тем не менее, ШИМ на ноге PWM Теперь Есть!!!.
И он меняется, если передвигать ползунок в менюшке Станок/Шпиндель (смотрел осциллографом) частота, кстати, 2,5 кГц.
Настроил и частотник, по мануалу, DI1 - Fwd, DI5 PWM
Релюха контроллера (вых 1.) включается и замыкает Com и DI1 на частотнике, он послушно включает шпиндель, шпиндель разгоняется до 120 Гц (он у меня воздушный, минимальные обороты 7200) и всё...
Дальше ничего. На колодке частотника, на DI5 ШИМ есть, но скорость не меняется.
Может кто есть с опытом настройки Powtran по PWM? Ну да, это немного оффтоп.

Теперь как настроить этот выход шпинделя на этом контроллере.
Файл/Настройки/Выходы(OUTPUT)/Шпиндель и охлаждение.
Далее философия:
По документации на MK1 у него действительно только три выхода (1,2,6) причем все они с ШИМ!!!
Мы же на вкладке видим что возможно выбрать только (1,2,3)
И расположены они на:
Шпиндель/выход - вкл/выкл: - 1
Охлаждение/Выход Туман: - 2
Охлаждение/Выход СОЖ: - 3
И они честно включают три релюхи на плате, так же подписанные.
НО, что делать если необходимы:
Шпиндель/выход - вкл/выкл:
Шпиндель/выход - направление:
Шпиндель/выход - скорость:
Ведь выбрать нечего, всё занято.
Надо:
1. отключить
Охлаждение/Выход Туман: ---
Охлаждение/Выход СОЖ: ---
2. включить
Шпиндель/выход - вкл/выкл: - 1
Шпиндель/выход - направление: 2
Шпиндель/выход - скорость: 3
3. взять в руки тестер и проверить
при включении шпинделя из программы
на колодке шпинделя на контроллере GND, DIR, PWM2, 12V
GND, DIR появляется сигнал +4v.
GND,12V появляется 10v и если передвигать ползунок скорости то напряжение меняется.
Оссцил так же, показывает на паре GND, PWM2, классическую ШИМ, и при изменении ползунка меняет скважность.

для подключения частотника с управлением по напряжению (0-10v) придется задействовать все три выхода,
и включать/выключать сож и туман например со шпинделем, первым выходом

Без возможности использовать M7/M8/M9 команды G-кода.
Ведь M7/M8/M9 могут отключить/включить шпиндель не вовремя, если использовать 1 выход на все релюхи.

Я же, преследуя цель управлять частотником по PWM использовал 1 и 3 на управление шпинделем и скоростью:
Шпиндель/выход - вкл/выкл: - 1
Шпиндель/выход - скорость: 3
а 2 выход на:
Охлаждение/Выход Туман: 2
Охлаждение/Выход СОЖ: 2
И M7 и M8 включают 2 и 3 релюшку.
M9 - выключает. Ок.
Я хочу их использовать для пылесоса и пневмоклапана.

Да, кстати, ползунковый переключатель прямо по середине платы, тоже участвует в этом маскараде, его, по документации называют SPINDLE SPEED SIGNAL SWITCH. И по той же китайской философии он должен переключать 0-10v и PWM. но на деле, по моему, только отключает от управления 3 релюху MIST.

Вроде всё.
А... не всё, тут мысль у меня, может коллеги, есть смысл проверить на ваших платах, вдруг это тоже работает.
Аватара пользователя
xvovanx
Мастер
Сообщения: 3772
Зарегистрирован: 25 фев 2016, 12:27
Репутация: 920
Настоящее имя: Владимир
Откуда: Latvia
Контактная информация:

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

Сообщение xvovanx »

У вас очередной клон МК1. В вашем сообщении много написано и очень путано. Суть - нормальный МК1, МК2 имеет три релейных выхода: шпинлель, охл. и туман без всяких PWM. На МК есть PWM выход регулировки оборотов, но для частотника нужно 0-10V, если и вам так сильно нужна именно програмная регулировка оборотов - ищите отдельную плату конвертер PWM - 0-10V.

P.S. управление оборотами програмно для простенького хобби станка считаю излишним, он актуален при автосменах инструмента. А так вручную на частотнике подкрутить обороты в процессе фрезеровки на ходу, чтоб, скажем, пластик не плавился или фреза не "захлебывалась" и не визжала гораздо удобнее и проще, ИМХО.
Olaf72 писал(а):После обновления номер контроллера скорее всего поменяется, и надо где то на форуме, (в личке наверное) искать как решить проблему
Это вам сюда ;)
http://www.cnc-club.ru/forum/viewtopic. ... 80#p489970
Olaf72
Новичок
Сообщения: 14
Зарегистрирован: 30 дек 2018, 01:51
Репутация: 3
Настоящее имя: Олег
Контактная информация:

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

Сообщение Olaf72 »

Не, мне не надо.
У меня есть. Я нашёл API на Baidu.
Там все что надо было. И гербер, и прошивка, и генератор. И примеры кода. Генератор работает нормально.
Прикол в том что эта плата обновляет прошивку с официального софта.
Olaf72
Новичок
Сообщения: 14
Зарегистрирован: 30 дек 2018, 01:51
Репутация: 3
Настоящее имя: Олег
Контактная информация:

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

Сообщение Olaf72 »

xvovanx писал(а):Суть - нормальный МК1, МК2 имеет три релейных выхода: шпинлель, охл. и туман без всяких PWM. На МК есть PWM выход регулировки оборотов, но для частотника нужно 0-10V, если и вам так сильно нужна именно програмная регулировка оборотов - ищите отдельную плату конвертер PWM - 0-10V.
Суть в том что на MK1 есть всего три линии выхода.
И вопрос предпочтения на что их "потратить". И если релюхи туман и сож не нужны, то их можно скофигурировать для управления частотником по (0-10v) или PWM без всяких дополнительных плат.
Частотники они ведь могут управляться по разному, и 0-10v, и 0-10mA, и PWM, и просто сухими контактами, или их комбинациями, и прочими модбасами 485-ми и т.д. и т.п. Вопрос выбора фломастеров.
Аватара пользователя
xvovanx
Мастер
Сообщения: 3772
Зарегистрирован: 25 фев 2016, 12:27
Репутация: 920
Настоящее имя: Владимир
Откуда: Latvia
Контактная информация:

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

Сообщение xvovanx »

Olaf72 писал(а):И вопрос предпочтения на что их "потратить"....Вопрос выбора фломастеров.
Это конечно, хозяин-барин. Тут было в другой ветке, народ придумал к двум выходам регистор сдвиговый прилепить и управлять Г кодом. По одному выходу-стробы пускать, по второму-записывать в регистр. Таким образом можно и ЦАП сотворить 0-10V для частотника и умным домом даже управлять. Главное в Г коде не ошибиться, чтоб станок умный дом не запилил ;)
Jogijogi
Новичок
Сообщения: 17
Зарегистрирован: 10 мар 2019, 13:11
Репутация: 0
Настоящее имя: Kainz Johann
Контактная информация:

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

Сообщение Jogijogi »

Доброго времени всем.
Есть вопрос.
В программе CNC USB можно использовать переменные ( variable)
Если да то как они называются.
Спасибо.
Olaf72
Новичок
Сообщения: 14
Зарегистрирован: 30 дек 2018, 01:51
Репутация: 3
Настоящее имя: Олег
Контактная информация:

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

Сообщение Olaf72 »

По поводу прямого управления частотником на контроллере USBCNCv4, вот картиночка от братьев, которая разъясняет мои путанные объяснения.
Эта плата может PWM без дополнительных конверторов.
M9nSg.jpg (4439 просмотров) <a class='original' href='./download/file.php?id=159040&mode=view' target=_blank>Загрузить оригинал (273.8 КБ)</a>
ну а парой,тройкой постов выше я попытался объяснить как это настроить в USB CNC Controller.
Olaf72
Новичок
Сообщения: 14
Зарегистрирован: 30 дек 2018, 01:51
Репутация: 3
Настоящее имя: Олег
Контактная информация:

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

Сообщение Olaf72 »

Jogijogi писал(а):Доброго времени всем.
Есть вопрос.
В программе CNC USB можно использовать переменные ( variable)
Если да то как они называются.
Спасибо.
Если речь идет о G-Коде
То да, можно. Вот пример кода с переменными
Аннотация 2019-03-16 004709.jpg (4433 просмотра) <a class='original' href='./download/file.php?id=159042&mode=view' target=_blank>Загрузить оригинал (161.51 КБ)</a>

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

%
G90
G21
#1=50 (width of box)
#2=2 (tool radius)
#3=4 (height of box)
#4=5 (resolution in degrees)
#5=#4 (counter)
#6=[[#1/2]+#2] (actual radius of circle - cutter radius + radius)
G01 X0 Y0
o140 do
#8 = [[SIN[#5]*#6]*SIN[45]] ( X and Y position)
#9 = [0-[[1-COS[#5]]*#6]] (Z position)
G1 X[#8] Y[#8]
Z[#9]
G18 G02 X[0-#8] Z[#9] I[0-#8] K[0-[#9+[#6]]]
G19 G03 Y[0-#8] Z[#9] J[0-#8] K[0-[#9+[#6]]]
G18 G03 X[#8] Z[#9] I[#8] K[0-[#9+[#6]]]
G19 G02 Y[#8] Z[#9] J[#8] K[0-[#9+[#6]]]
#5 = [#5+#4]
o140 while [#8 LT [#1/2-#2-#3]]
G1 Z1
X0 Y0
%
А если речь идет о скриптах, то по пути C:\Program Files (x86)\CNC USB Controller\Scripts
лежит файл скриптов, там посмотри.
Аватара пользователя
xvovanx
Мастер
Сообщения: 3772
Зарегистрирован: 25 фев 2016, 12:27
Репутация: 920
Настоящее имя: Владимир
Откуда: Latvia
Контактная информация:

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

Сообщение xvovanx »

Olaf72 писал(а):А если речь идет о скриптах
У меня нет вообще папки скриптов...
Olaf72
Новичок
Сообщения: 14
Зарегистрирован: 30 дек 2018, 01:51
Репутация: 3
Настоящее имя: Олег
Контактная информация:

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

Сообщение Olaf72 »

Создай папку.
Там создай текстовый файл script.txt
вставь туда этот код:

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

'General
Sub OnAppStart()
  'MsgBox "OnAppStart"
  'set command = Cmd.create()
  'command.flood = true
  'command.mist = true
  'CmdBuffer.add(command)
End Sub

Sub OnOpen()
  'MsgBox "OnOpen: Units=" & State.Units & " X=" & State.X & " Y=" & State.Y & " Z=" & State.Z
End Sub

'Machine
Sub OnMachineStart()
  'MsgBox "OnMachineStart"

  'turn spindle on
  'Set command = Cmd.Create()
  'command.SpindleCW = true
  'CmdBuffer.Add(command)
  
  'wait 1 second
  'Set command = command.Create()
  'command.Dwell = 1
  'CmdBuffer.Add(command)

  'turn flood and mist on 
  'Set command = command.Create()
  'command.Flood = true
  'command.Mist = true
  'CmdBuffer.Add(command)
End Sub

Sub OnMachineStartLoop(LoopCount)
  'MsgBox "OnMachineStartLoop: " & LoopCount
  'move to X0 Y0 Z20 at start of every loop
  'Set command = Cmd.Create()
  'command.UseFeedRate()
  'command.X = 0
  'command.Y = 0
  'command.Z = 20
  'CmdBuffer.Add(command)
End Sub

Sub OnMachineEnd()
  'MsgBox "OnMachineEnd"
  'move Z to 100 at end
  'Set command = Cmd.Create()
  'command.UseTraverseRate()
  'command.Z = 100
  'CmdBuffer.Add(command)
End Sub

Sub OnMachineStop(EStop, UserStop) 'CmdBuffer is not valid in this event
  'MsgBox "OnMachineStop: EStop=" & EStop & " UserStop=" & UserStop
  If (not EStop And not UserStop) Then
    'If program stoped without user intervention start it again. 
    'This makes endless loop until user stops program manualy
    'Cmd.Start
  End If
End Sub

'G-Code
Function OnCommand(LineNo, Line, CommandType, AxisDir)
  'MsgBox "OnCommand LineNo: " & LineNo & " Line: '" & Line & "' CmdType: " & CommandType & " AxisDir: " & AxisDir

  If (CommandType = 1) Then 'Mist - also turn flood on/off
    'Set commandBefore = Cmd.Create()
    'commandBefore.Flood = CmdNext.Mist
    'CmdBufferBefore.Add(commandBefore) 
    'OnCommand = False 'leave original mist command to execute  
  End If 
  
  If (CommandType = 2) Then 'Flood - replace with mist
    'Set commandBefore = Cmd.Create()
    'commandBefore.Mist = CmdNext.Flood
    'CmdBufferBefore.Add(commandBefore) 
    'OnCommand = True 'remove original flood command from execute  
  End If 
   
  If (CommandType = 3) Then 'Spindle - turn mist and flood on/off
    'Set commandBefore = Cmd.Create()
    'commandBefore.Flood = CmdNext.SpindleCW Or CmdNext.SpindleCCW
    'commandBefore.Mist = CmdNext.SpindleCW Or CmdNext.SpindleCCW
    'CmdBufferBefore.Add(commandBefore) 
    'OnCommand = False 'leave original Spindle command to execute  
  End If 
  
  If ((CommandType = 4) Or (CommandType = 5)) Then 'MoveFeed or MoveTraverse
	Dim dx, dy, dz
	dx = CmdNext.X - Cmd.X 
	dy = CmdNext.Y - Cmd.Y 
	dz = CmdNext.Z - Cmd.Z 
	'MsgBox "dx: " & dx & " dy: " & dy & " dz: "& dz & " AxisDir: " & AxisDir
	
	'if Z axis is moved we will replace move with spindle  
	If (AxisDir = 32) Then
	  'move up will turn spindle off
	  'Set commandBefore = Cmd.Create()
	  'commandBefore.SpindleCW = False
	  'CmdBufferBefore.Add(commandBefore) 
	  'OnCommand = True 'remove original Z move command from execution 
	ElseIf (AxisDir = 16) Then
	  'move down will turn spindle on
	  'Set commandBefore = Cmd.Create()
	  'commandBefore.SpindleCW = True
	  'CmdBufferBefore.Add(commandBefore) 
	  'OnCommand = True 'remove original Z move command from execution
	Else
	  'OnCommand = False 'leave original move command    
	End If

  End If 
  
  If (CommandType = 8) Then 'ToolChange
    'Set commandBefore = Cmd.Create()
    'CmdBufferBefore.Add(commandBefore) 
    'OnCommand = True 'remove original toolchange command from execution   
  End If

End Function

Aleksei11
Новичок
Сообщения: 3
Зарегистрирован: 03 апр 2019, 08:34
Репутация: 0
Настоящее имя: Алексей
Откуда: г. Новосибирск
Контактная информация:

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

Сообщение Aleksei11 »

Здравствуйте! Правильно ли я понимаю, что использование скриптов дает возможность управлять станком изменяя в реальном времени координаты по каким либо заранее прописанным формулам? Это примерно тоже самое, что в Mach3 формулы осей? Просто работаю над созданием Scara робота, и ищу средства как с минимальными затратами преобразовывать обычное движение по осям XYZ в сложно зависимое, связанное с другой кинематикой ( полярной)...
Аватара пользователя
xvovanx
Мастер
Сообщения: 3772
Зарегистрирован: 25 фев 2016, 12:27
Репутация: 920
Настоящее имя: Владимир
Откуда: Latvia
Контактная информация:

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

Сообщение xvovanx »

Aleksei11 писал(а):Правильно ли я понимаю, что использование скриптов дает возможность управлять станком изменяя в реальном времени координаты по каким либо заранее прописанным формулам?
Надо пробовать. Возможно что это работает только с 32 битными контроллерами (МК3/4 и выше). С МК1 и МК2 в программе изначально даже нет папки для скриптов, возможно, что и их поддержки не будет.

П.С. на досуге попробую с МК2 создать папку C:\Program Files\CNC USB Controller\Scripts
и закинуть туда файл script.txt с формулами
kochevnik
Мастер
Сообщения: 227
Зарегистрирован: 13 окт 2013, 16:24
Репутация: 9
Контактная информация:

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

Сообщение kochevnik »

Всем привет!
Едет ко мне такая штука
https://s.click.aliexpress.com/e/J08ZDWi
Начал читать, искать - получается она с МК1 и со старым planetcnc.
Задался вопросом - есть ли смысл стразу взять ардуинку, к ее ногам lpt разьем, и запилить управление через grbl?
Аватара пользователя
xvovanx
Мастер
Сообщения: 3772
Зарегистрирован: 25 фев 2016, 12:27
Репутация: 920
Настоящее имя: Владимир
Откуда: Latvia
Контактная информация:

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

Сообщение xvovanx »

kochevnik писал(а):есть ли смысл стразу взять ардуинку, к ее ногам lpt разьем, и запилить управление через grbl?
Я б с ардуиной не связывался бы, программа planetcnc на порядок серьезней.
Аватара пользователя
selenur
Почётный участник
Почётный участник
Сообщения: 4605
Зарегистрирован: 21 авг 2013, 19:44
Репутация: 1622
Настоящее имя: Сергей
Откуда: Новый Уренгой
Контактная информация:

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

Сообщение selenur »

xvovanx писал(а):
kochevnik писал(а):есть ли смысл стразу взять ардуинку, к ее ногам lpt разьем, и запилить управление через grbl?
Я б с ардуиной не связывался бы, программа planetcnc на порядок серьезней.
Как по мне тут выбор ещё зависит от специфики выполняемых работ, например гравировка рисунка полутонами удобнее с программы candle для GRBL, т.к. там и сам рисунок с полутонами видно, так и регулировка мощности лазера, у контроллера доступна сразу, а в контролерах от планеты часто нет дополнительного модуля преобразования.

Но в плане гравировки сразу из разных форматов, тут программа от планеты конечно вне конкуренции.

Ну и конечно для контроллера планеты всего 1 программа, а для GRBL множество с которыми ещё нужно разобраться....
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Instagram https://www.instagram.com/zheigurov/
Ответить

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