Перейти к содержанию

Передача строки или сообщения из G-code в макрос VB

Программирование ЧПУ | CNC
1 1 138
  • Недавно столкнулся с вопросом: как передать строку или сообщение из 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— ваш выбор.

  • G97 постоянные обороты шпинделя

    Fanuc gcode g97 fanuc
    1
    2 Голоса
    1 Сообщения
    18 Просмотры
    Нет ответов
  • Постпроцессор FANUC 0i-mf Plus — скачать

    Fanuc fanuc cnc чпу постпроцессор
    1
    0 Голоса
    1 Сообщения
    793 Просмотры
    Нет ответов
  • Universal g code sender — где скачать

    Программирование ЧПУ | CNC gcode чпу
    1
    3 Голоса
    1 Сообщения
    129 Просмотры
    Нет ответов
  • Как преобразовать G-code в STL: пошаговое руководство с примерами

    Программирование ЧПУ | CNC
    1
    1 Голоса
    1 Сообщения
    373 Просмотры
    Нет ответов
  • Программа ЧПУ для прямоугольника: готовые G-коды и инструкция

    Программирование ЧПУ | CNC
    1
    0 Голоса
    1 Сообщения
    257 Просмотры
    Нет ответов
  • Программы для станков Fanuc / G-code

    Программирование ЧПУ | CNC
    1
    0 Голоса
    1 Сообщения
    118 Просмотры
    Нет ответов
  • Примеры программ на Fanuc для станков с ЧПУ

    Прикреплена Перенесена Fanuc чпу cnc fanuc
    2
    1
    0 Голоса
    2 Сообщения
    8k Просмотры
    kirilljsxK
    Вы можете найти больше полезных постов о системе Fanuc в разделе -> https://forum.investsteel.ru/category/107/fanuc
  • Основы макропрограммирования

    Перенесена Программирование ЧПУ | CNC чпу cnc
    3
    1
    0 Голоса
    3 Сообщения
    391 Просмотры
    kirilljsxK
    Определение входных данных После того как мы определили нашу функциональность и стандартизировали использование таблицы переменных, нам нужно определить входные данные для нашей программы, необходимые для получения желаемых результатов функциональности. Мой метод заключается в том, чтобы поместить входные данные в отдельную подпрограмму от основной рабочей программы. Это помогает предотвратить ошибки при редактировании из-за любопытства или случайных изменений в основном макросе. Входные данные, которые нам нужны для выполнения сверления, следующие: #500: Количество отверстий для сверления #501: Диаметр окружности болтов #502: Угол первого отверстия вдоль оси X при угле координат машины 0. Обычно это направление X+. #503: Абсолютная позиция по оси X для центра окружности болтов #504: Абсолютная позиция по оси Y для центра окружности болтов #505: Глубина отверстия #506: Глубина захода (Pecking Depth) #507: Высота плоскости R (R plane clearance) #508: Скорость подачи (Feedrate) для сверления #509: Высота зазора (над частью Z0) для быстрых перемещений между отверстиями #510: Скорость шпинделя для сверления #511: Функция W в цикле сверления G82 #512: Функция E в цикле сверления G82 #513: Функция V в цикле сверления G82 #514: Функция L в цикле сверления G82 Это все, что я могу придумать на данный момент, что нам нужно для достижения нашей заявленной функциональности. Если кто-то заметит что-то пропущенное, дайте мне знать, так как я пишу это и обдумываю по ходу. Кстати, я пишу это, основываясь на реализации Fanuc на Brother B00.