Страница 1 из 1

Посылать координаты в LinuxCNC

Добавлено: 09 май 2018, 08:34
sinys
Требуется направить в какую сторону копать по теме:
требуется из своей (которую мне предстоит написать) программы перемещать каретку в заданные координаты и в этих координатах шевелить другими другими двигателями и подавать сигналы на релюшки.
Сейчас на компе стоит LinuxCNC (Debian).
Я так понимаю нужно как-то взаимодействовать с LinuxCNC из своей программы.
Какие в LinuxCNC существуют для этого возможности / интерфейсы?
За одно может подскажете на чем лучше писать под Debian (до этого писал под Windows на Delphi).

Re: Посылать координаты в LinuxCNC

Добавлено: 09 май 2018, 08:52
verser
sinys писал(а):требуется из своей (которую мне предстоит написать) программы перемещать каретку в заданные координаты и в этих координатах шевелить другими другими двигателями и подавать сигналы на релюшки.
LinuxCNC создана от рождения для этих возможностей :). Перечисленные действия можно выполнять прямо из g-code, настроив нужным образом .ini и .hal файлы настроек. Если этого окажется недостаточно, то есть шикарная возможность дополнять функциональность на python.

Re: Посылать координаты в LinuxCNC

Добавлено: 09 май 2018, 08:58
sinys
verser писал(а):
sinys писал(а):требуется из своей (которую мне предстоит написать) программы перемещать каретку в заданные координаты и в этих координатах шевелить другими другими двигателями и подавать сигналы на релюшки.
LinuxCNC создана от рождения для этих возможностей :). Перечисленные действия можно выполнять прямо из g-code, настроив нужным образом .ini и .hal файлы настроек.
Посредством чего мне можно передать G-code в LinuxCNC?
Может есть какие-то демки?

Re: Посылать координаты в LinuxCNC

Добавлено: 09 май 2018, 09:19
MX_Master
Можно использовать компоненты linuxcncrsh и halrmt. С ними можно общаться через обычный stdin/stdout.

http://linuxcnc.org/docs/html/man/man1/ ... rsh.1.html
http://wiki.linuxcnc.org/cgi-bin/wiki.pl?Halrmt

Я с помощью них делал веб-интерфейс
http://www.cnc-club.ru/forum/viewtopic. ... 5&p=352004

Писать лучше на С. Ну и собирать c помощью gcc, который есть из коробки. Можно и на питоне, но будет работать чуть медленней.

Re: Посылать координаты в LinuxCNC

Добавлено: 09 май 2018, 09:30
nkp
sinys писал(а):Посредством чего мне можно передать G-code в LinuxCNC?Может есть какие-то демки?
запусти емс
F1,
F2,
Home
запусти отдельный терминал
в нем: затем

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

import linuxcnc
c = linuxcnc.command() 
c.mode(linuxcnc.MODE_MDI)
затем

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

c.mdi("G0 X10 Z30")
как видно из команды - уедем в X10 Z30
---------------
этот код (подобный конечно) вставляешь в свой скрипт
вот API
http://linuxcnc.org/docs/2.7/html/confi ... rface.html
там всё что нужно

Re: Посылать координаты в LinuxCNC

Добавлено: 24 июн 2018, 21:56
sinys
nkp писал(а):
sinys писал(а):Посредством чего мне можно передать G-code в LinuxCNC?Может есть какие-то демки?
запусти емс
А это обязательно?
То есть если я подключаю
import linuxcnc
то можно туда как-то передать ini (hal или что-то еще) чтобы инициализировать конфигурацию и начать передавать команды или так нельзя?

Если я хочу чтобы на компьютер моего робота человек вообще никак не заходил, а только посылал удаленные вызовы типа "делай раз", "делай два" итд., то
1) правильно ли я понимаю что мне в автозагрузку компьютера моего робота нужно не только мою программу добавить, но и emc? или есть способ его не запускать, а достаточно импортировать в питоне и там как-то передать настройки?

и еще когда я шлю команду у меня выдает ошибку что нельзя слать команды пока не настроены хомы для всех осей.
Собственно вопросы:
2) Как командой задать поиск хома?
3) при каждом включении станка нужно искать хомы?

Re: Посылать координаты в LinuxCNC

Добавлено: 25 июн 2018, 09:32
odekolon
на самом деле, можно ВСЕ!
начните с подключения станочка (робота), научитесь им хоть как-то управлять, почитаете документацию, чего-то начнет проясняться, потом будете задавать КОНКРЕТНЫЕ вопросы.
вопрос по home на линуксцнц на форуме, сто раз обсуждался смотрите FAQ

Re: Посылать координаты в LinuxCNC

Добавлено: 25 июн 2018, 09:42
sinys
odekolon писал(а):на самом деле, можно ВСЕ!
начните с подключения станочка (робота), научитесь им хоть как-то управлять, почитаете документацию, чего-то начнет проясняться, потом будете задавать КОНКРЕТНЫЕ вопросы.
вопрос по home на линуксцнц на форуме, сто раз обсуждался смотрите FAQ
Так уже. Я пошел по инструкции, которую постом выше написал nkp и у меня возникли вопросы которые я описал чтобы двигаться дальше.

Re: Посылать координаты в LinuxCNC

Добавлено: 25 июн 2018, 10:01
odekolon
вы пока ничего не понимаете в linuxCNC.
почитайте про hal компоненты, попробуйте понять что к чему.
любую задачу можно решить несколькими способами, например ту же команду, можно прописать в ini-файле, а питоном только пин дергать, а можно пин (выполнения команды) подключить к физическому разъему (кнопке) и выполнять команду без всякого питона, а можно подключить микроконтроллер (ардуину) по модбас, и дергать пины по модбасу. Короче вариантов море.
Никто точно не знает что вам нужно, а вы не знаете, что хотите. Учите hal а там видно будет... А тем временем пишите (для себя) четкое ТЗ.