Mach4 + Lua

Mach, популярные и не очень CAD, CAM. Обсуждение и разработка программ для управления станками.
Аватара пользователя
FLUKE
Мастер
Сообщения: 843
Зарегистрирован: 11 мар 2013, 21:18
Репутация: 187
Настоящее имя: Сергей
Откуда: Смоленск
Контактная информация:

Mach4 + Lua

Сообщение FLUKE »

Ковыряю мач4, пробую изучать Lua.
Опрашиваю из мача устройство по Ethernet TCP\IP, устройство отвечает строкой:
{"ver":"1","RIMON":"0.2","RMT":"CW","ROP":"Off","RPP":"Off","RCT":"32.0","RBT":"33.0","RET":"31","STA":"67108864","RFV":"32.7.101;2.95;3.7.1","RSN":"R18020185","RCS":"0.0","RPW":"10.000","RDC":"10.0","RDCmax":"99.0","RPRR":"10.0","REC":"1","RMEC":"0","RLHN":"IPG-A15-0044","RDHCP":"OFF","RIP":"10.9.9.10","RMASK":"255.255.255.0","RDGW":"10.9.9.5","RMAC":"D8-80-39-59-D8-95","FST":"10","RPRRL":"1.0","RPRRH":"50000.0","RBAUD":"8","RCFG":"141","WFCFG":"0","WFID":"0"}
Кол-во параметров не меняется, длина строки может быть разной (в зависимости от значений параметров).
Как бы эту строку разбить на куски и засунуть в таблицу? Пол дня пытаюсь вкурить паттерны ...
На Lua вообще можно из того что выше получить то что ниже?
t = {}
t[1] = "1"
t[2] = "0.2"
t[3] = "CW"
......
Аватара пользователя
MX_Master
Мастер
Сообщения: 7478
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 3101
Настоящее имя: Михаил
Откуда: Алматы
Контактная информация:

Re: Mach4 + Lua

Сообщение MX_Master »

похоже на JSON строку

попробуй https://github.com/rxi/json.lua
Аватара пользователя
FLUKE
Мастер
Сообщения: 843
Зарегистрирован: 11 мар 2013, 21:18
Репутация: 187
Настоящее имя: Сергей
Откуда: Смоленск
Контактная информация:

Re: Mach4 + Lua

Сообщение FLUKE »

Спасибо, почитаю.
Успел наговнокодить следующее:

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

local str = [[{"ver":"1","RIMON":"0.2","RMT":"CW","ROP":"Off","RPP":"Off","RCT":"32.0","RBT":"33.0","RET":"31","STA":"67108864","RFV":"32.7.101;2.95;3.7.1","RSN":"R18020185","RCS":"0.0","RPW":"10.000","RDC":"10.0","RDCmax":"99.0","RPRR":"10.0","REC":"1","RMEC":"0","RLHN":"IPG-A15-0044","RDHCP":"OFF","RIP":"10.9.9.10","RMASK":"255.255.255.0","RDGW":"10.9.9.5","RMAC":"D8-80-39-59-D8-95","FST":"10","RPRRL":"1.0","RPRRH":"50000.0","RBAUD":"8","RCFG":"141","WFCFG":"0","WFID":"0"}]]
local t = {}
local a
a = string.gsub(str, '":"', '=')
--print(tostring(1 .. a))
a = string.gsub(a, '"', ' ')
--print(tostring(2 .. a))
for k, v in string.gmatch(a, "(%w+)=(%S+)") do
	t[k] = v
	--print(tostring("3-" .. k))
	--print(tostring("4-" .. v))
end
print(tostring(t["RMAC"]))
Вроде работает ...
Аватара пользователя
FLUKE
Мастер
Сообщения: 843
Зарегистрирован: 11 мар 2013, 21:18
Репутация: 187
Настоящее имя: Сергей
Откуда: Смоленск
Контактная информация:

Re: Mach4 + Lua

Сообщение FLUKE »

Почитал про Json. Код получился короче...
local JSON = require ("json")
local a = '{строка Json}'
local b = JSON:decode(a)
print(tostring(b["..."]))
volod
Новичок
Сообщения: 26
Зарегистрирован: 11 ноя 2015, 18:29
Репутация: 0
Настоящее имя: Владимир
Контактная информация:

Re: Mach4 + Lua

Сообщение volod »

Здравствуйте,а случаем не в курсе как прикрутить пульт к Mach4. Купил когда то,с Mach3 работает,а с четвертым не хочет.
Вложения
lHICx.jpg (3213 просмотров) <a class='original' href='./download/file.php?id=136656&sid=6f9a0a258f5410a522bb2231c1ec3660&mode=view' target=_blank>Загрузить оригинал (41.25 КБ)</a>
Аватара пользователя
FLUKE
Мастер
Сообщения: 843
Зарегистрирован: 11 мар 2013, 21:18
Репутация: 187
Настоящее имя: Сергей
Откуда: Смоленск
Контактная информация:

Re: Mach4 + Lua

Сообщение FLUKE »

Можно попробовать поставить плагин для мач4:
https://www.machsupport.com/forum/index ... #msg238915
https://www.machsupport.com/forum/index ... tach=47558
volod
Новичок
Сообщения: 26
Зарегистрирован: 11 ноя 2015, 18:29
Репутация: 0
Настоящее имя: Владимир
Контактная информация:

Re: Mach4 + Lua

Сообщение volod »

Спасибо буду пробывать,отпишусь ,что получилось.
volod
Новичок
Сообщения: 26
Зарегистрирован: 11 ноя 2015, 18:29
Репутация: 0
Настоящее имя: Владимир
Контактная информация:

Re: Mach4 + Lua

Сообщение volod »

Ничего не получается,прикрутить.Вот не пойму-к Mach 4 пультов нет,безпроводных или как то по другому народ решает енту проблему.
Аватара пользователя
FLUKE
Мастер
Сообщения: 843
Зарегистрирован: 11 мар 2013, 21:18
Репутация: 187
Настоящее имя: Сергей
Откуда: Смоленск
Контактная информация:

Re: Mach4 + Lua

Сообщение FLUKE »

http://www.vistacnc.com/a03_download/download.htm#mach4
https://www.youtube.com/watch?v=CKjd9qH ... e=youtu.be
volod писал(а):Вот не пойму-к Mach 4 пультов нет
Лицензия от Ивана Тождевича к мач4 не подходит, по этому 99% используют мач3, 99% покупают пульт к мач3, плагины для мач4 надо подписывать цифровой подписью в www.machsupport.com ...
volod
Новичок
Сообщения: 26
Зарегистрирован: 11 ноя 2015, 18:29
Репутация: 0
Настоящее имя: Владимир
Контактная информация:

Re: Mach4 + Lua

Сообщение volod »

Наверное продам старый и куплю этот с видео,ну не менять же Mach.
Ответить

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