Программная коррекция кривизны портала

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Аватара пользователя
alejandro52
Новичок
Сообщения: 4
Зарегистрирован: 28 ноя 2020, 06:22
Репутация: 0
Настоящее имя: Alexander
Контактная информация:

Re: Программная коррекция кривизны портала

Сообщение alejandro52 »

Serg писал(а): 18 май 2021, 23:00
a321 писал(а): Помогите плз, изучил весь топик, но так и не понял, в какой файл и каким образом можно скорректировать одну ось Х,
например для Х=1000 дельта =-2мм, Х=2000 дельта=+1мм и тп...
В первую очередь надо не топики читать, а документацию: http://linuxcnc.org/docs/devel/html/con ... gt_section
Документацию читать пытался, по результатам прочтения этого топика, конкретные разделы. Если бы все было понятно, то не обращался бы на форум...
a321
Мастер
Сообщения: 563
Зарегистрирован: 03 дек 2016, 00:30
Репутация: 65
Контактная информация:

Re: Программная коррекция кривизны портала

Сообщение a321 »

Для случая "дельта тоже по Х" даже не представляю. Я терминал кормлю командой с парой У и соответствующее ему смещение Х.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5181
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Программная коррекция кривизны портала

Сообщение Serg »

Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
alejandro52
Новичок
Сообщения: 4
Зарегистрирован: 28 ноя 2020, 06:22
Репутация: 0
Настоящее имя: Alexander
Контактная информация:

Re: Программная коррекция кривизны портала

Сообщение alejandro52 »

Всем спасибо, проблема решена
Аватара пользователя
kaa
Новичок
Сообщения: 9
Зарегистрирован: 10 ноя 2020, 09:17
Репутация: 1
Настоящее имя: Александр
Откуда: Красноярск
Контактная информация:

Re: Программная коррекция кривизны портала

Сообщение kaa »

MX_Master писал(а): 22 янв 2020, 09:52
a321 писал(а):По этой ссылке, как и по аналогичным в этой теме, ничего не скачивается, ошибка 404.
https://github.cnc32.ru/MX_Master/linux ... krivkins.c
Добрый день!
Можно Вас попросить перезалить кинематику? Данная ссылка не доступна.
Аватара пользователя
MX_Master
Мастер
Сообщения: 7465
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 3088
Настоящее имя: Михаил
Откуда: Алматы
Контактная информация:

Re: Программная коррекция кривизны портала

Сообщение MX_Master »

Аватара пользователя
kaa
Новичок
Сообщения: 9
Зарегистрирован: 10 ноя 2020, 09:17
Репутация: 1
Настоящее имя: Александр
Откуда: Красноярск
Контактная информация:

Re: Программная коррекция кривизны портала

Сообщение kaa »

Пытаюсь установить, выскакивают предупреждения о не явном объявлении фукции:

root@debiancnc:/home/kaa# halcompile --install krivkins.c
Compiling realtime krivkins.c
krivkins.c: In function ‘rtapi_app_main’:
krivkins.c:414:18: warning: implicit declaration of function ‘kstrtou32’; did you mean ‘strtok_r’? [-Wimplicit-function-declaration]
retval = kstrtou32(token, 10, (uint32_t*) &_axis[axis].adj_steps);
^~~~~~~~~
strtok_r
krivkins.c:455:18: warning: implicit declaration of function ‘kstrtos32’; did you mean ‘strtok_r’? [-Wimplicit-function-declaration]
retval = kstrtos32(token, 10, (int32_t*) &_axis[axis].adj_offset);
^~~~~~~~~
strtok_r
Linking krivkins.so
cp krivkins.so /usr/lib/linuxcnc/modules/
root@debiancnc:/home/kaa#


При попутке запустить ЛинуксСНС с этой машиной выдает ошибки

Debug file information:
./123.hal:1: Warning: File contains DOS-style line endings.
Note: Using POSIX realtime
krivkins: dlopen: /usr/lib/linuxcnc/modules/krivkins.so: undefined symbol: kstrtou32
./123.hal:1: waitpid failed /usr/bin/rtapi_app krivkins
./123.hal:1: /usr/bin/rtapi_app exited without becoming ready
./123.hal:1: insmod for krivkins failed, returned -1
918
Stopping realtime threads
Unloading hal components
Note: Using POSIX realtime

Подскажите, пожалуйста, в какую сторону копать? Версия LunuxCNC 2.8.2
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Программная коррекция кривизны портала

Сообщение nkp »

а что за дистр ? (ядро)
Аватара пользователя
kaa
Новичок
Сообщения: 9
Зарегистрирован: 10 ноя 2020, 09:17
Репутация: 1
Настоящее имя: Александр
Откуда: Красноярск
Контактная информация:

Re: Программная коррекция кривизны портала

Сообщение kaa »

LinuxCNC 2.8.2 Debian 10 Buster PREEMPT-RT ISO
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Программная коррекция кривизны портала

Сообщение nkp »

такой сборки у меня нет,поэтому проверить не могу...
но думаю,что проблема в #include <linux/kernel.h>
компилятор не видит файл ядра,где объявлена kstrtos32
зы
на mint19 компилируется без проблем
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Программная коррекция кривизны портала

Сообщение nkp »

если таки проблема в этом - можно пробовать полный путь указать:
#include </usr/src/linux-headers-4.14.148-rtai-amd64/include/linux/kernel.h>

только ядро свое указать
глянуть заголовочный файл (путь к нему) можно:
grep -rl 'kstrtos32' /
perelep
Новичок
Сообщения: 39
Зарегистрирован: 29 янв 2022, 10:49
Репутация: 0
Контактная информация:

Re: Программная коррекция кривизны портала

Сообщение perelep »

По ссылке на krivkins.c ни чего нет что-то. Можете перезалить?
a321
Мастер
Сообщения: 563
Зарегистрирован: 03 дек 2016, 00:30
Репутация: 65
Контактная информация:

Re: Программная коррекция кривизны портала

Сообщение a321 »

perelep писал(а): По ссылке на krivkins.c ни чего нет что-то. Можете перезалить?
Может лучше апгрейд до LinuxCNC 2.8? - там это "в коробке".
a321
Мастер
Сообщения: 563
Зарегистрирован: 03 дек 2016, 00:30
Репутация: 65
Контактная информация:

Re: Программная коррекция кривизны портала

Сообщение a321 »

MX_Master писал(а): Последние новости:

Переименовал модуль кинематики из relkins в krivkins :)
Добавил в модуль коррекцию плоскостей/поверхностей.
Автор MX_Master выложил viewtopic.php?p=637893#p637893 последний актуальный вариант - см. аттач. Однако имеется фано какая-то путанница - ранее объявлялось, что в связи с развитием модуль переименован в relkins и на Тадам-2 я использовал его. Равно как и примеры использования обращаются к relkins.

Последний актуальный пример использования выше приведен как viewtopic.php?p=463839#p463839 -
loadrt krivkins coordinates=XYZ adjust=Z from=XY steps=3 step_size=100 offset=0

setp krivkins.adjZ.X100_Y100 0.1

Сейчас все (многие) используют по несколько моторов на ось. Где-то выше (viewtopic.php?p=462253#p462253) были примеры запуска предыдущих версий вида -
loadrt relkins coordinates=XYZX adjust=X,Y from=Y,X steps=11,5 step_size=50,100 offset=-250,100
# настройка точек коррекции для оси X от позиции оси Y
setp relkins.adjX.Y-250 0.0

# настройка точек коррекции для оси Y от позиции оси X
setp relkins.adjY.X100 0.0

В этой связи внесите пожалуйста ясность - коррекция идет по каждому мотору (пример был viewtopic.php?p=459839&sid=aabb72ed0936 ... 30#p459839) отдельно или по осям?
Вложения
krivkins.c
(14.51 КБ) 92 скачивания
a321
Мастер
Сообщения: 563
Зарегистрирован: 03 дек 2016, 00:30
Репутация: 65
Контактная информация:

Re: Программная коррекция кривизны портала

Сообщение a321 »

Отвечаю сам себе -
1. двигает оси. С моторами разбирается сам.
2. актуальная версия - это не krivkins, а relkins
актуализировал для LinuxCNC2.8.2 на август 2022г. для пяти моторов совокупно здесь viewtopic.php?p=634350#p634350

Для меня осталось не ясным, как сделать коррекцию не на одной линии, а на всем поле.
На одной линии - в минимальном У и максимальном У указываем смещение Х -
setp relkins.adjX.Y-25 0.0
setp relkins.adjX.Y1004 3.0

Это работае на всем поле.
Хотелось бы сделать несколько таких "столбиков", а-ля
setp relkins.adjX100.Y-25 0.0
setp relkins.adjX100.Y1004 3.0
setp relkins.adjX500.Y-25 0.0
setp relkins.adjX500.Y1004 3.0

но такое не прокатывает, ругается -
halcmd show pin relkins
Component Pins:
Owner Type Dir Value Name
6 float IN 0 relkins.adjX.Y-25
6 float IN -100 relkins.adjX.Y1200

halcmd setp relkins.adjX100.Y1200 -300
<commandline>:0: parameter or pin 'relkins.adjX100.Y1200' not found

Логику же автора
## настройка точек коррекции для оси X от позиции оси Y
# setp relkins.adjX.Y-25 0.0
# setp relkins.adjX.Y1004 3.0
#
## настройка точек коррекции для оси Y от позиции оси X
# setp relkins.adjY.X100 0.0
# setp relkins.adjY.X200 0.1
# setp relkins.adjY.X300 0.2
# setp relkins.adjY.X400 0.1
# setp relkins.adjY.X500 0.0

пока не понял. Как я понимаю, это двигает ось У при перемещении вида G1 Хкуда-то
Ответить

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