Имею в наличии несколько станков фрезерных и токарных на Mach3 модернизированных мной в личных целях,и соответственно несколько компов.
Хотел разобраться с правильным подключением револьвера через Mach3.
Один из станков на сервах нарезает резьбу,но не подключен револьвер.Пишу это для того,чтоб сократить время поиска ошибки .
Был мною изготовленный револьвер токарного станка (с ладонь) для балконного мини станка и подключение револьвера хотел начать с него.
К нему был изготовлен доп-контроллер и прошит логикой.Количество миганий порта , равно данному резцу.
В данный момент на этой логике хотел остановиться,так как время нет.В дальнейшем возможна реализация по паузе..
Написан кое как макрос смены инструмента через Т. Работает. Револьвер крутится.Коррекцию учитывает в версии Mach3 042.020 .Говорят это самая стабильная для резьбы
Но столкнулся с тем ,что там не хочет работать офф лицензия.Да и хотелось версию 062.
Поставил 062.Работает лицензия но перестал работать сей макрос.Я выяснил,что возможна ошибка синтаксиса.Во время написания макроса,
находил инфу,но не могу вспомнить где.
Просьба помочь с данным макросом,потому как макросы головная боль и пока я не смог понять ,что там не так..
Всем откликнувшимся большое спасибо
'скрипт рабочий.работает и в авто M06T0100 И В РУЧНУЮ
'количество миганий равно такому же номеру инструмента
Код: Выделить всё
Sub Main()
NewTool = GetSelectedTool()'новый инструмент = получить вновь выбранный инструмент
OldTool = GetCurrentTool() 'старый инструмент=загрузить загруженный инструмент
MaxToolNum = 6 'Максимальное число инструментов в магазине
While NewTool > MaxToolNum
NewTool = Question("Введите правильный номер инструмента, в магазине может быть только " & MaxToolNum & " инструментов.")
Wend
If NewTool = OldTool Then 'Если в шпинделе стоит тот же инструмент то ничего менять не надо
Exit Sub
End If
If NewTool = 1 Then
ActivateSignal(Output2)
Sleep 250
DeActivateSignal(Output2)
End If
If NewTool = 2 Then
ActivateSignal(Output2)
Sleep 250
DeActivateSignal(Output2)
Sleep 250
ActivateSignal(Output2)
Sleep 250
DeActivateSignal(Output2)
End If
If NewTool = 3 Then
ActivateSignal(Output2)
Sleep 250
DeActivateSignal(Output2)
Sleep 250
ActivateSignal(Output2)
Sleep 250
DeActivateSignal(Output2)
Sleep 250
ActivateSignal(Output2)
Sleep 250
DeActivateSignal(Output2)
End If
If NewTool = 4 Then
ActivateSignal(Output2)
Sleep 250
DeActivateSignal(Output2)
Sleep 250
ActivateSignal(Output2)
Sleep 250
DeActivateSignal(Output2)
Sleep 250
ActivateSignal(Output2)
Sleep 250
DeActivateSignal(Output2)
ActivateSignal(Output2)
Sleep 250
DeActivateSignal(Output2)
Sleep 250
ActivateSignal(Output2)
Sleep 250
DeActivateSignal(Output2)
End If
If NewTool = 5 Then
ActivateSignal(Output2)
Sleep 250
DeActivateSignal(Output2)
Sleep 250
ActivateSignal(Output2)
Sleep 250
DeActivateSignal(Output2)
Sleep 250
ActivateSignal(Output2)
Sleep 250
DeActivateSignal(Output2)
Sleep 250
ActivateSignal(Output2)
Sleep 250
DeActivateSignal(Output2)
Sleep 250
ActivateSignal(Output2)
Sleep 250
DeActivateSignal(Output2)
End If
If NewTool = 6 Then
ActivateSignal(Output2)
Sleep 250
DeActivateSignal(Output2)
Sleep 250
ActivateSignal(Output2)
Sleep 250
DeActivateSignal(Output2)
Sleep 250
ActivateSignal(Output2)
Sleep 250
DeActivateSignal(Output2)
Sleep 250
ActivateSignal(Output2)
Sleep 250
DeActivateSignal(Output2)
Sleep 250
ActivateSignal(Output2)
Sleep 250
DeActivateSignal(Output2)
Sleep 250
ActivateSignal(Output2)
Sleep 250
DeActivateSignal(Output2)
End If
End
End Sub
Main
'конец скрипта