Что я еще не знал о LinuxCNC, что нам еще предстоит сделать

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Аватара пользователя
PKM
Почётный участник
Почётный участник
Сообщения: 4263
Зарегистрирован: 31 мар 2011, 18:11
Репутация: 705
Настоящее имя: Андрей
Откуда: Украина
Контактная информация:

Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел

Сообщение PKM »

torvn77 писал(а):Надо бы из [AXIS_num] выселить в отдельные секции настройки для stepgen и PID, оставив эту секцию только для планировщика движений и общих настроек оси(размеры и поиск дома)
Что-то подобное сделано в ветке joints_axis http://linuxcnc.org/docs/ja/html/config ... gt_section
Аватара пользователя
torvn77
Мастер
Сообщения: 2442
Зарегистрирован: 02 июн 2012, 22:12
Репутация: 215
Откуда: Россия,Санкт-Петербург
Контактная информация:

Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел

Сообщение torvn77 »

PKM писал(а):Что-то подобное сделано в ветке joints_axis http://linuxcnc.org/docs/ja/html/config ... gt_section
Nам сделано не то что я предлагаю, в сущности так как была куча, так куча и осталась,
к тому же сложно понимать, что должно быть в секции [JOINT_], разве все настройки для этого не делаются в pid или stepgen?

Смысл предлагаемого мной в разнесении в том, что сейчас в [AXIS_num] смешаны в кучу опции трёх независимых модулей :
motion/axis ; pid и stepgen
И я предлагаю разогнать их по разным секциям.
Ну может stepgen и pid будут пересекаться через параметр сейчас называемый STEPGEN_MAXACCEL и STEPGEN_MAXVEL
которые на самом деле следовало бы назвать PID_MAXACCEL и PID_MAXVEL.
Последний раз редактировалось torvn77 18 май 2016, 02:34, всего редактировалось 2 раза.
Аватара пользователя
torvn77
Мастер
Сообщения: 2442
Зарегистрирован: 02 июн 2012, 22:12
Репутация: 215
Откуда: Россия,Санкт-Петербург
Контактная информация:

Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел

Сообщение torvn77 »

В общем в моём понимании секцию [AXIS_num] надо разбить как то так:

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

[AXIS_num]
# Данная секция влияет только на axis и motion и ни на что больше.
# Описание геометрических параметров оси num , влияет только на axis и motion и ни на что больше не влияет.
TYPE = LINEAR
MIN_LIMIT = -1000
MAX_LIMIT = 1000

MAX_VELOCITY = 1.2
MAX_ACCELERATION = 20.0
FERROR = 1.0
MIN_FERROR = 0.010

BACKLASH = 0.0000

HOME = 0.0
#Rename HOME_FINAL_VEL to SPEED_HOME_MOVEMENT 
SPEED_HOME_MOVEMENT = 0.0

#Rename HOME_OFFSET to HOME_SENSOR_OFFSET
HOME_SENSOR_OFFSET = 0.0
HOME_SEARCH_VEL = 0.0
HOME_LATCH_VEL = 0.0
HOME_USE_INDEX = NO
HOME_IGNORE_LIMITS = NO
HOME_IS_SHARED = <n>
HOME_SEQUENCE = <n>
VOLATILE_HOME = 0

[PID_num]
# Описание конфигурации hal компонента pid и ни на что больше не влияет.
DEADBAND = 0.000015
BIAS = 0.000
P = 50
I = 0
D = 0
FF0 = 0
FF1 = 0
FF2 = 0
OUTPUT_SCALE = 1.000
OUTPUT_OFFSET = 0.000
MAX_OUTPUT = 10
INPUT_SCALE = 20000

[ENCODER_num]
# Влияет только на hal компонет encoder и ни на что больше не влияет.
ENCODER_SCALE = 20000
# И ещё не помню какие опции энкодера.

[STEPGEN_num]
# Описание конфигурации hal компонента stepgen и ни на что больше не влияет.
SCALE = 444.444444444
MAXVEL = 1.01
MAXACCEL = 1500.0
# Stepgen
STEP_TYPE    = 0
CONTROL_TYPE = 0
# these are in nanoseconds
STEPLEN    = 2500
STEPSPACE  = 2500
DIRSETUP   = 5000
DIRHOLD    = 5000
В данный же момент секция для X у меня в конфиге выглядит так:

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

#********************
# Axis X
#********************
[AXIS_0]
TYPE = LINEAR
MIN_LIMIT = -0.3
MAX_LIMIT = 700.3

HOME_OFFSET = -1.0
HOME_SEQUENCE = 1
HOME_IGNORE_LIMITS = YES

FERROR = 1
MIN_FERROR = 0.25

MAX_VELOCITY = 70.0
#MAX_ACCELERATION = 400.0
MAX_ACCELERATION = 750.0

HOME = 1.0
#HOME_FINAL_VEL = 360.0
# HOME_SEARCH_VEL = -28.0
HOME_SEARCH_VEL = -24.0
HOME_LATCH_VEL = 0.5

[HOSTMOT2]
# **** This is for info only ****
DRIVER=hm2_pci
CONFIG="num_encoders=1 num_pwmgens=0 num_3pwmgens=0 num_stepgens=5 sserial_port_0=00xxxxxx"
# 

[AMPLIFIER_01]
SCALE = 1280.0
MAXVEL = 133.0
MAXACCEL = 937.5
# Stepgen
STEP_TYPE    = 0
CONTROL_TYPE = 0
# these are in nanoseconds
STEPLEN    = 2500
STEPSPACE  = 2500
DIRSETUP   = 5000
DIRHOLD    = 5000
И ещё хорошо бы изменить название двух переменных, а то из текущие искажают их содержание и смысл.
Переименовать HOME_FINAL_VEL в SPEED_HOMED_MOVEMENT
Переименовать HOME_OFFSET в HOME_SENSOR_OFFSET
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел

Сообщение Serg »

torvn77 писал(а):В общем в моём понимании секцию [AXIS_num] надо разбить как то так:
Ну и пиши так у себя в ini, кто мешает-то?
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
torvn77
Мастер
Сообщения: 2442
Зарегистрирован: 02 июн 2012, 22:12
Репутация: 215
Откуда: Россия,Санкт-Петербург
Контактная информация:

Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел

Сообщение torvn77 »

UAVpilot писал(а):Ну и пиши так у себя в ini, кто мешает-то?
Ну что, по второму кругу поедем?
#494
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел

Сообщение Serg »

Ну как можно так жостко тупить!?

.ini

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

[PID_X1]
P = 3.0
I = 0.0
D = 0.005
FF0 = 0.0
FF1 = 0.008
FF2 = 0.0
BIAS = 0.0
DEADBAND = 0.0
MAX_OUTPUT = 10.0
.hal

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

setp   pid.x1.Pgain     [PID_X1]P
setp   pid.x1.Igain     [PID_X1]I
setp   pid.x1.Dgain     [PID_X1]D
setp   pid.x1.bias      [PID_X1]BIAS
setp   pid.x1.FF0       [PID_X1]FF0
setp   pid.x1.FF1       [PID_X1]FF1
setp   pid.x1.FF2       [PID_X1]FF2
setp   pid.x1.deadband  [PID_X1]DEADBAND
setp   pid.x1.maxoutput [PID_X1]MAX_OUTPUT
P.S. Для особо одарённых намекаю: это из реального конфига станка, уже год находящегося в эксплуатации.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
torvn77
Мастер
Сообщения: 2442
Зарегистрирован: 02 июн 2012, 22:12
Репутация: 215
Откуда: Россия,Санкт-Петербург
Контактная информация:

Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел

Сообщение torvn77 »

UAVpilot писал(а):Ну как можно так жостко тупить!?
Это ещё ладно, если у человека аналоговая серва и он смог завершить работу мастера и вот сейчас имея уже готовый конфиг сидит и читает мануальник.
И где гарантия, что параметр из ini используется только таким, единственным образом и от самовольного перемещения его в другую секцию чего ни будь не обрушиться?
Если у человека нет опыта, то эти параметру для него куча, он берёт и думает, надо ему там интегративный коэффициэнт или нет, ну вроде пишут что это хорошо и полезно,
ай утащу к себе в конфиг.
И неделя пройдёт, прежде чем он поймёт, что параметр просто не работает.

Я к тому моменту, когда стал осваиваить LinuxCNC раза два успел делать простенькие конфиги для самбы,
поднимал tftp b proftp сервера, знакомился и делал чего то с apache, и много раз делал свои ручные initrd.
И в целом расшифровка(английский то я не знаю) мануальника давалась мне нормально, кроме вот этой секции,
и не потому что там непонятный PID, а потому что каша из трёх разных hal модулей.

И ладно что я начал не с Месы, а с LPT, для которого был рабочий мастер настройки и где-то неделю учился забивать в него параметры.

UPDATE: А ещё к моменту освоения LinuxCNC я делал 6 рейд из 8 дисков на ZFS и около года его эксплуатировал, раздав deluge 1 ТБ японских мультиков.
Причём ZFS тогда был в новинку и мне пришлось для его подъёма самому init скрипт писать, ну ободрал какой то сервис и напихал туда чего захотелось.
В общем был я человек с опытом и всё равно разгребать эту env-помойку было трудно.
Последний раз редактировалось torvn77 18 май 2016, 23:21, всего редактировалось 2 раза.
Аватара пользователя
NKS
Мастер
Сообщения: 2516
Зарегистрирован: 30 окт 2014, 21:36
Репутация: 1233
Настоящее имя: Сергей
Откуда: Волгоград
Контактная информация:

Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел

Сообщение NKS »

:eat:
Аватара пользователя
torvn77
Мастер
Сообщения: 2442
Зарегистрирован: 02 июн 2012, 22:12
Репутация: 215
Откуда: Россия,Санкт-Петербург
Контактная информация:

Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел

Сообщение torvn77 »

К стати, а почему описание отражений #<_ini и #<_hal и их включение через [RS274NGC]FEATURES помещены не в описание О кодов,
на работу которых непосредственно и самым серьёзным образом влияют, а в пусть и нужную, но очень далёкую и малоприметную часть мануальника?
http://linuxcnc.org/docs/2.7/html/remap ... figuration
http://linuxcnc.org/docs/2.7/html/remap ... -variables
http://linuxcnc.org/docs/2.7/html/remap ... -hal-items
(У меня сейчас в vk спрашивают, почему мой постпроцессор не работает)
Аватара пользователя
torvn77
Мастер
Сообщения: 2442
Зарегистрирован: 02 июн 2012, 22:12
Репутация: 215
Откуда: Россия,Санкт-Петербург
Контактная информация:

Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел

Сообщение torvn77 »

Оказывается в месте с LinuxCNC поставляется замечательная утилита latency-plot, позволяющая просмотреть задержки ввиде графика по времени.
latency-plot (servo. 1000 uS, base. 25 uS).png (5750 просмотров) <a class='original' href='./download/file.php?id=80645&sid=86e3d5da48db9adcc1a75d4f9a0f35dc&mode=view' target=_blank>Загрузить оригинал (22.01 КБ)</a>
latency-plot (servo. 1000 uS, base. 25 uS)2.png (5750 просмотров) <a class='original' href='./download/file.php?id=80646&sid=86e3d5da48db9adcc1a75d4f9a0f35dc&mode=view' target=_blank>Загрузить оригинал (27.89 КБ)</a>
Предлагаю показ периодов и сделать её рекомендуемой вместо latency-test, который больше запутывает, чем что либо объясняет и
добавить соответствующие ярлыки в системное меню linuxcnc, а так же интегрировать его вместо latency-test в мастера настройки pncconf и stepconf.
Жаль только, что не хочет он параллельно с linuxcnc запускаться.
Аватара пользователя
torvn77
Мастер
Сообщения: 2442
Зарегистрирован: 02 июн 2012, 22:12
Репутация: 215
Откуда: Россия,Санкт-Петербург
Контактная информация:

Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел

Сообщение torvn77 »

Погоняемый через личку одним человеком стал я смотреть в мануальнике раздел по hastmot2 и оказалось то,
что предназначенные для управлением инвертором пины spinout и и параметры этого компонента не упомянуты ни как.
вообще буквосочетание spin там встречается только один раз на всю страницу.
Как после этого новички шпиндель по мануальнику подключать будут?!

Ссылка на страницу, о которой идёт речь http://linuxcnc.org/docs/devel/html/dri ... tmot2.html
Аватара пользователя
torvn77
Мастер
Сообщения: 2442
Зарегистрирован: 02 июн 2012, 22:12
Репутация: 215
Откуда: Россия,Санкт-Петербург
Контактная информация:

Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел

Сообщение torvn77 »

Надо сделать в hal команду которая буде просто делать паузу в несколько секунд,
а то у меня hal пытается подключить пины до того, как pyvcp панель успеет их создать.
Сейчас для приостановки выполнения hal приходится грузить halshow только ждля того, чтобы тут же закрыть его обратно.
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2858
Откуда: Тюмень
Контактная информация:

Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел

Сообщение Сергей Саныч »

Задание hal-файла с критичными подключениями, как POSTGUI_HALFILE, обычно выручает в таких случаях.
Аватара пользователя
torvn77
Мастер
Сообщения: 2442
Зарегистрирован: 02 июн 2012, 22:12
Репутация: 215
Откуда: Россия,Санкт-Петербург
Контактная информация:

Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел

Сообщение torvn77 »

Сергей Саныч писал(а):Задание hal-файла с критичными подключениями, как POSTGUI_HALFILE, обычно выручает в таких случаях.
Это я знаю.
Но только ini файла у меня нет вообще, так себе небольшая дрыгалка осью из pyvcp и stepgen для проверки её работоспособности.
Ну чтобы было понятнее вот архив:
test-axis.5i25-7i76.zip
(3.64 КБ) 338 скачиваний
Аватара пользователя
РЕКЛАМА
Почётный участник
Почётный участник
Сообщения: 726
Зарегистрирован: 11 дек 2012, 21:46
Репутация: 80
Откуда: Брянск
Контактная информация:

Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел

Сообщение РЕКЛАМА »

А вы знаете, что если ткнуть курсором в участок траектории в окошке визуализации, то этот участок подсветится и в окошке УП перелистнется и подсветится та строчка которая этот участок описывает.

Случайно сегодня обнаружил такое.
Но вы наверно все об этом и так знали..
Аватара пользователя
Сергей Саныч
Мастер
Сообщения: 9116
Зарегистрирован: 30 май 2012, 14:20
Репутация: 2858
Откуда: Тюмень
Контактная информация:

Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел

Сообщение Сергей Саныч »

РЕКЛАМА писал(а):этот участок подсветится и в окошке УП перелистнется и подсветится та строчка которая этот участок описывает.
И наоборот.
Чудес не бывает. Бывают фокусы.
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел

Сообщение nkp »

преедлагается один из вариантов решения "смещение_во_время _исполнения_Gкода"
похоже - то же самое ,что и коррекция, но без привязки к инструменту , смене инструм. и тд...
http://buildbot.linuxcnc.org/doc/scratc ... fsets.html
https://www.youtube.com/watch?v=L1TNfjdqBdQ&t=31s
Аватара пользователя
PKM
Почётный участник
Почётный участник
Сообщения: 4263
Зарегистрирован: 31 мар 2011, 18:11
Репутация: 705
Настоящее имя: Андрей
Откуда: Украина
Контактная информация:

Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел

Сообщение PKM »

Смотрю на это с самого начала и не совсем понимаю как его можно использовать :)
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел

Сообщение nkp »

PKM писал(а):не совсем понимаю как его можно использовать
станков большое разнообразие, сегодня это кажется не нужной функцией,завтра - "как я без этого работал?" :)
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Что я еще не знал о LinuxCNC, что нам еще предстоит сдел

Сообщение nkp »

кстати,так как тема не очень жива(по понятным причинам)) ,то можно здесь размещать некоторые (интересные )
моменты из emc-commit
зачем?
не всё из разрабатываемего войдет в емс (и правильно ;) ) ,но некоторые идеи могут быть интересны,именно как идеи,или даже уже
как решения...
Ответить

Вернуться в «LinuxCNC»