Быстрый вариант генерации G-кода для простой траектории

Остальные вопросы по работе с операционной системой Windows

Быстрый вариант генерации G-кода для простой траектории

Сообщение selenur » 08 фев 2017, 07:29

Иногда бывает нужно получить очень простую траекторию движения, по быстрому, и тут нашел вот такой способ, установим программу если не стоит "Windows PowerShell ISE".
После запуска программы можно легко писать скрипты:
Быстрый вариант генерации G-кода для простой траектории 2017-02-08_091549.jpg

Код: Выделить всёРазвернуть
$p1 = ""

$s = 10;

for ($y = 0; $y -lt 10; $y++)
{

    $p1 += "G0 X0 Y"+$y + [char]13 + [char]10

    $p1 += "G1 X20 Y"+$y + " S" + $s + [char]13 + [char]10

    $s += 10

}

$p1

# Сохранение в файл
$p1 > d:\out.txt


Данный пример генерирует полоски для выжигания лазером, длиной 20 мм по оси Х, с шагом по оси Y с шагом 1 мм. И каждая линия содержит параметр S, который увеличивается на 10, с каждой новой линией.
Быстрый вариант генерации G-кода для простой траектории 2017-02-08_091603.jpg


Или периодически на форуме появляется вопрос как по быстрому сгенерировать выборку прямоугольную, в данном случае легко:
Скорректировав всего пару значений, получаем:
Быстрый вариант генерации G-кода для простой траектории 2017-02-08_092530.jpg

А вот сам код:
Код: Выделить всёРазвернуть
$strOut = ""

[bool]$directRight = $true

for ($y = 0; $y -lt 10; $y+=2)
{
    if ($directRight -eq $true)
    {

        $strOut += "G0 X0 Y"+$y + [char]13 + [char]10

        $strOut += "G1 X20 Y"+$y + [char]13 + [char]10

        $directRight = $false
    }
    else
    {
       $strOut += "G0 X20 Y"+$y + [char]13 + [char]10

       $strOut += "G1 X0 Y"+$y + [char]13 + [char]10

       $directRight = $true
    }

}

$strOut

# Сохранение в файл
$strOut > d:\out.txt
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Аватара пользователя
selenur
Почётный участник
Почётный участник
 
Сообщения: 4296
Зарегистрирован: 21 авг 2013, 19:44
Откуда: Новый Уренгой
Репутация: 1510
Медальки:
Настоящее имя: Сергей

Re: Быстрый вариант генерации G-кода для простой траектории

Сообщение AndyBig » 08 фев 2017, 09:13

Думаю, что тому, кто умеет скрипты, не составит труда и несложный G-код накидать :)
Аватара пользователя
AndyBig
Мастер
 
Сообщения: 3971
Зарегистрирован: 07 мар 2014, 04:01
Откуда: юг России
Репутация: 1117
Медальки:

Re: Быстрый вариант генерации G-кода для простой траектории

Сообщение aftaev » 08 фев 2017, 09:31

selenur, для таких дел есть O-Code http://www.cnc-club.ru/wiki/index.php/% ... 0%BE%D0%B4
Дилетанту сложные вещи кажутся очень простыми, и только профессионал понимает насколько сложна самая простая вещь
Кто хочет - ищет возможности, кто не хочет - ищет оправдание.
Найди работу по душе и тебе не придется работать.
aftaev
Зачётный участник
Зачётный участник
 
Сообщения: 31976
Зарегистрирован: 04 апр 2010, 19:22
Откуда: Казахстан. Шымкент
Репутация: 5713
Медальки:

Re: Быстрый вариант генерации G-кода для простой траектории

Сообщение selenur » 08 фев 2017, 09:47

aftaev писал(а):selenur, для таких дел есть O-Code http://www.cnc-club.ru/wiki/index.php/% ... 0%BE%D0%B4

Об этом я знаю, я когда немного изучал LinuxCNC смотрел это: http://linuxcnc.org/docs/html/gcode/o-code.html

Но я пока использую ардуино контроллер, у которого нет поддержки О кодов :-)
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Аватара пользователя
selenur
Почётный участник
Почётный участник
 
Сообщения: 4296
Зарегистрирован: 21 авг 2013, 19:44
Откуда: Новый Уренгой
Репутация: 1510
Медальки:
Настоящее имя: Сергей

Re: Быстрый вариант генерации G-кода для простой траектории

Сообщение Immortal88 » 15 дек 2017, 20:59

Есть готовый файл г-кода детали, нужно размножить его на лист материала, допустим, 3х2. Проблема в том что материалы у меня разных размеров, тоесть переменные "3" и "2" будут меняться часто и нужно это дело автоматизировать.
Какие могут быть способы решения такой проблеммы?

1. Есть ли готовые скрипты, которые делают то что мне нужно?
2. Подскажите примерный алгоритм действий как написать самописный скрипт. Я хорошо умею программировать на Python, но в г-кодах новичек поэтому мне не совсем понятно как правильно приплюсовать смещения траекторий по X и Y. В идеале нужен парсер/библиотека для перевода в абсолютные координаты
Immortal88
Опытный
 
Сообщения: 126
Зарегистрирован: 04 окт 2016, 13:38
Репутация: 1


Вернуться в Прочие вопросы Windows

Кто сейчас на конференции

Зарегистрированные пользователи: AlexanderF77, Andreychpu, Bender, Bing [Bot], Сергей Саныч, DarkRavin, Enot_1, evgenymcp, Google [Bot], leon72, Majestic-12 [Bot], NickSon, s29, Sakhalin_Cat, sima8520, verser, virij, Yandex [bot], Владимир СПЗ

Reputation System ©'