Скрещиваем Mach3 и MajorDoMo

Как обычно, лень двигатель прогресса. Станок расположен у меня в подвале и надоедает бегать что бы посмотреть закончилась ли обработка, пора ли менять заготовку и т.д.

Так как станок управляется при помощи Mach3, а дома есть сервер с MajorDoMo то логично было узязать их вместе.

В Mach3 существует система макросов, которые выполняются при различных условиях, в том числе настраивается реакция на появление в управляющей программе нужных команд.

В программе есть встроенный редактор макросов

Макросы пишутся на Visual Basic, а так как я совсем не программист пришлось найти документацию (раз и два) и ознакомится с богатым внутренним миром. В документации к сожалению вообще никак не отражено общение с внешним миром, пришлось искать всевозможные скрипты на VB с примерами работы с url. В результате все получилось, чувствую что криво и коряво, но работает.

Принцип простой, находим файл скрипта нужной команды, в данном случае М3

Открываем в редакторе и пишем вот такой код

Dim o
Set o = CreateObject(«MSXML2.XMLHTTP»)
o.open «GET», «http://192.168.2.200/objects/?op=set&object=Bobr&p=status&value=1», True
o.send
Set o = CreateObject(«MSXML2.XMLHTTP»)
o.open «GET», «http://192.168.2.200/objects/?op=set&Object=Bobr&p=spindleSpeed&value=»& GetRPM
o.send  

В результате работы этого скрипта  MajorDoMo  узнает что началось выполнение программы и частоту вращения шпинделя.

По такому же принципу настраиваем реакцию на остальные команды.

Далее уже средствами MajorDoMo обрабатываем эти данные, говорим голосом, шлем в телеграмм и оформляем вывод

Комментарии

Добавить комментарий