Посылать координаты в LinuxCNC
-
- Кандидат
- Сообщения: 92
- Зарегистрирован: 05 сен 2016, 15:43
- Репутация: 0
- Настоящее имя: Иван Петров
- Контактная информация:
Посылать координаты в LinuxCNC
Требуется направить в какую сторону копать по теме:
требуется из своей (которую мне предстоит написать) программы перемещать каретку в заданные координаты и в этих координатах шевелить другими другими двигателями и подавать сигналы на релюшки.
Сейчас на компе стоит LinuxCNC (Debian).
Я так понимаю нужно как-то взаимодействовать с LinuxCNC из своей программы.
Какие в LinuxCNC существуют для этого возможности / интерфейсы?
За одно может подскажете на чем лучше писать под Debian (до этого писал под Windows на Delphi).
требуется из своей (которую мне предстоит написать) программы перемещать каретку в заданные координаты и в этих координатах шевелить другими другими двигателями и подавать сигналы на релюшки.
Сейчас на компе стоит LinuxCNC (Debian).
Я так понимаю нужно как-то взаимодействовать с LinuxCNC из своей программы.
Какие в LinuxCNC существуют для этого возможности / интерфейсы?
За одно может подскажете на чем лучше писать под Debian (до этого писал под Windows на Delphi).
- verser
- Мастер
- Сообщения: 1895
- Зарегистрирован: 21 июл 2013, 22:28
- Репутация: 1282
- Настоящее имя: Сергей
- Откуда: Тбилиси
- Контактная информация:
Re: Посылать координаты в LinuxCNC
LinuxCNC создана от рождения для этих возможностей . Перечисленные действия можно выполнять прямо из g-code, настроив нужным образом .ini и .hal файлы настроек. Если этого окажется недостаточно, то есть шикарная возможность дополнять функциональность на python.sinys писал(а):требуется из своей (которую мне предстоит написать) программы перемещать каретку в заданные координаты и в этих координатах шевелить другими другими двигателями и подавать сигналы на релюшки.
-
- Кандидат
- Сообщения: 92
- Зарегистрирован: 05 сен 2016, 15:43
- Репутация: 0
- Настоящее имя: Иван Петров
- Контактная информация:
Re: Посылать координаты в LinuxCNC
Посредством чего мне можно передать G-code в LinuxCNC?verser писал(а):LinuxCNC создана от рождения для этих возможностей . Перечисленные действия можно выполнять прямо из g-code, настроив нужным образом .ini и .hal файлы настроек.sinys писал(а):требуется из своей (которую мне предстоит написать) программы перемещать каретку в заданные координаты и в этих координатах шевелить другими другими двигателями и подавать сигналы на релюшки.
Может есть какие-то демки?
- MX_Master
- Мастер
- Сообщения: 7480
- Зарегистрирован: 27 июн 2015, 19:45
- Репутация: 3101
- Настоящее имя: Михаил
- Откуда: Алматы
- Контактная информация:
Re: Посылать координаты в LinuxCNC
Можно использовать компоненты 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, который есть из коробки. Можно и на питоне, но будет работать чуть медленней.
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, который есть из коробки. Можно и на питоне, но будет работать чуть медленней.
-
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Посылать координаты в LinuxCNC
запусти емсsinys писал(а):Посредством чего мне можно передать G-code в LinuxCNC?Может есть какие-то демки?
F1,
F2,
Home
запусти отдельный терминал
в нем:
Код: Выделить всё
python
Код: Выделить всё
import linuxcnc
c = linuxcnc.command()
c.mode(linuxcnc.MODE_MDI)
Код: Выделить всё
c.mdi("G0 X10 Z30")
---------------
этот код (подобный конечно) вставляешь в свой скрипт
вот API
http://linuxcnc.org/docs/2.7/html/confi ... rface.html
там всё что нужно
-
- Кандидат
- Сообщения: 92
- Зарегистрирован: 05 сен 2016, 15:43
- Репутация: 0
- Настоящее имя: Иван Петров
- Контактная информация:
Re: Посылать координаты в LinuxCNC
А это обязательно?nkp писал(а):запусти емсsinys писал(а):Посредством чего мне можно передать G-code в LinuxCNC?Может есть какие-то демки?
То есть если я подключаю
import linuxcnc
то можно туда как-то передать ini (hal или что-то еще) чтобы инициализировать конфигурацию и начать передавать команды или так нельзя?
Если я хочу чтобы на компьютер моего робота человек вообще никак не заходил, а только посылал удаленные вызовы типа "делай раз", "делай два" итд., то
1) правильно ли я понимаю что мне в автозагрузку компьютера моего робота нужно не только мою программу добавить, но и emc? или есть способ его не запускать, а достаточно импортировать в питоне и там как-то передать настройки?
и еще когда я шлю команду у меня выдает ошибку что нельзя слать команды пока не настроены хомы для всех осей.
Собственно вопросы:
2) Как командой задать поиск хома?
3) при каждом включении станка нужно искать хомы?
- odekolon
- Мастер
- Сообщения: 1118
- Зарегистрирован: 05 ноя 2014, 14:53
- Репутация: 360
- Настоящее имя: Борис
- Контактная информация:
Re: Посылать координаты в LinuxCNC
на самом деле, можно ВСЕ!
начните с подключения станочка (робота), научитесь им хоть как-то управлять, почитаете документацию, чего-то начнет проясняться, потом будете задавать КОНКРЕТНЫЕ вопросы.
вопрос по home на линуксцнц на форуме, сто раз обсуждался смотрите FAQ
начните с подключения станочка (робота), научитесь им хоть как-то управлять, почитаете документацию, чего-то начнет проясняться, потом будете задавать КОНКРЕТНЫЕ вопросы.
вопрос по home на линуксцнц на форуме, сто раз обсуждался смотрите FAQ
"Капиталистом стать можно лишь тогда, когда обогатишь свою память знанием всех тех богатств, которые выработало человечество"
-
- Кандидат
- Сообщения: 92
- Зарегистрирован: 05 сен 2016, 15:43
- Репутация: 0
- Настоящее имя: Иван Петров
- Контактная информация:
Re: Посылать координаты в LinuxCNC
Так уже. Я пошел по инструкции, которую постом выше написал nkp и у меня возникли вопросы которые я описал чтобы двигаться дальше.odekolon писал(а):на самом деле, можно ВСЕ!
начните с подключения станочка (робота), научитесь им хоть как-то управлять, почитаете документацию, чего-то начнет проясняться, потом будете задавать КОНКРЕТНЫЕ вопросы.
вопрос по home на линуксцнц на форуме, сто раз обсуждался смотрите FAQ
- odekolon
- Мастер
- Сообщения: 1118
- Зарегистрирован: 05 ноя 2014, 14:53
- Репутация: 360
- Настоящее имя: Борис
- Контактная информация:
Re: Посылать координаты в LinuxCNC
вы пока ничего не понимаете в linuxCNC.
почитайте про hal компоненты, попробуйте понять что к чему.
любую задачу можно решить несколькими способами, например ту же команду, можно прописать в ini-файле, а питоном только пин дергать, а можно пин (выполнения команды) подключить к физическому разъему (кнопке) и выполнять команду без всякого питона, а можно подключить микроконтроллер (ардуину) по модбас, и дергать пины по модбасу. Короче вариантов море.
Никто точно не знает что вам нужно, а вы не знаете, что хотите. Учите hal а там видно будет... А тем временем пишите (для себя) четкое ТЗ.
почитайте про hal компоненты, попробуйте понять что к чему.
любую задачу можно решить несколькими способами, например ту же команду, можно прописать в ini-файле, а питоном только пин дергать, а можно пин (выполнения команды) подключить к физическому разъему (кнопке) и выполнять команду без всякого питона, а можно подключить микроконтроллер (ардуину) по модбас, и дергать пины по модбасу. Короче вариантов море.
Никто точно не знает что вам нужно, а вы не знаете, что хотите. Учите hal а там видно будет... А тем временем пишите (для себя) четкое ТЗ.
"Капиталистом стать можно лишь тогда, когда обогатишь свою память знанием всех тех богатств, которые выработало человечество"