Запуск макроса посредством OEMTRIG-gera

Mach, популярные и не очень CAD, CAM. Обсуждение и разработка программ для управления станками.
cnc-00
Новичок
Сообщения: 22
Зарегистрирован: 13 авг 2012, 23:56
Репутация: 0
Контактная информация:

Запуск макроса посредством OEMTRIG-gera

Сообщение cnc-00 »

На один из входов OEMTRIG заведена кнопка. В настройка System Hotkey можно присвоить каждому OEMTRIG какую нибудь функцию. Мне необходима функция № 301, которая (гипотетически) запускает макрос. Но какой и от куда, и как сконфигурить ???. Инет подсказывает, что №301 запускает функцию SetTriggerMacro(num), которая выполнит макрос num, но опять таки какой OEMtrig и какой num???

Одним словом - проясните о чем речь с этими OEMTrig.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1735
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Запуск макроса посредством OEMTRIG-gera

Сообщение Nick »



Re: Attaching a macro to OEM input trigger OEM code 301?
« Reply #7 on: January 28, 2009, 10:20:10 AM »


Thank all of you for your help. I’ve found a way that will work for the time being. With the help from “Mach specific Subroutines / Functions grouped by purpose” from MachCustomizeWiki I used the following:

“Sub SetTriggerMacro (MacroNo as Integer)
Defines the number of a macro to be executed when an OEMTrigger is set (slightly unexpectedly on the Config>Set System Hotkeys dialog) to generate OEM code 301. This provides script execution without the requirement for a screen button as intermediary.
For example if SetTriggerMacro 456 has been executed then a signal on any OEMTrigger configured to 301 will run the code in the file M456.M1S when activated.”
I wrote a script with VB Script Editor and saved it as Msetup.m1s. When I first start Mach3 I run the script from VB Script Editor. The script reads “ SetTriggerMacro 35”. M35 is my test routine. As mentioned before I’ve set up an OMETrigger #1 with code 301. When I hit the switch associated with OEM Triggger # 1 the M35 code executes. It all needs some tweaking but I’m on the right tract.

One problem I see with this is that I can only run one script with code 301. If I wanted to run another from a different Trigger I’d have to run a different “SetTriggerMacro” before hitting the new switch because they are all called from code 301. I wonder if there is such a thing as 301-2, 301-3 etc. Or maybe there is “SetTriggerMacro#1,M---”, “SetTriggerMacro#2,M---”, Something to think about.

Tony
Т.е. насколько я понял пишешь SetTriggerMacro(<номер>)
И тогда при замыкании триггера OEMTrigger (с настройкой OEM code 301), выполнится макрос M<номер>.M1S
cnc-00
Новичок
Сообщения: 22
Зарегистрирован: 13 авг 2012, 23:56
Репутация: 0
Контактная информация:

Re: Запуск макроса посредством OEMTRIG-gera

Сообщение cnc-00 »

"пишешь SetTriggerMacro(<номер>)"

Пишешь куда, - в макрос, который я не знаю как вызвать ? :shock:
Я бы понял, если-бы SetTriggerMacro прописывался для каждого триггера индивидуально, т.е. первый триггер запускал бы к примеру макрос М100, второй - М105, и т.д.
Но так, как любой из триггеров запустит (не знаю откуда) функцию, которая запустит конкретно один макрос, то вообще не понятно, зачем такой функционал в принципе?
Ответить

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