Передача строки или сообщения из G-code в макрос VB
-
Недавно столкнулся с вопросом: как передать строку или сообщение из G-code в макрос VB для дальнейшей обработки? Поделюсь своим опытом — возможно, кому-то пригодится.
Суть задачи: нужно, чтобы текст, заданный в G-code, «доходил» до макроса и обрабатывался там. Например, вывод сообщения на экран или работа с данными.
Первый способ — через параметры P, Q, R.
Здесь используется передача ASCII-кодов символов. Допустим, в G-code пишем:M1234 P72 Q101 R108
В макросе VB эти значения преобразуются в символы:
Dim Char1 As String Char1 = Chr(Param1()) ' Получим "H" (ASCII 72)
Метод рабочий, но подходит для коротких сообщений — параметров всего три.
Второй вариант — через файлы.
Если система позволяет, можно сохранить текст в файл из G-code, а затем считать его в макросе. Например:M1000 (Запись в файл)
В макросе M1000:
Open "C:\message.txt" For Output As #1 Print #1, "Ваш текст" Close #1
Позже этот файл читается другим макросом. Удобно для длинных сообщений, но требует доступа к файловой системе.
Третий путь — диалоговые окна.
Просто и интерактивно:Dim Input As String Input = AskTextQuestion("Введите данные:") Message "Вы ввели: " & Input
Правда, это уже не автоматизация, а ручной ввод.
Важно: Не забывайте о системных переменных (если ваша ЧПУ их поддерживает). Например, через
#500
можно передавать значения напрямую.Каждый метод имеет свои нюансы. Для автоматизации коротких команд подойдут параметры P/Q/R, для сложных задач — файлы. А если нужен диалог с оператором, то
AskTextQuestion
— ваш выбор.
Металлический
калькулятор
веса онлайн