Все-таки SCARA

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Аватара пользователя
РЕКЛАМА
Почётный участник
Почётный участник
Сообщения: 736
Зарегистрирован: 11 дек 2012, 21:46
Репутация: 80
Откуда: Брянск
Контактная информация:

Все-таки SCARA

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

Хочу разобраться с этой кинематикой.
Сваял "стенд" из двух шаговиков, без редукторв, для экспериментов, если что получится-буду делать нормальный образец.
Пока все "управляется" стандартной кинематикой настроенной через стандартный степконф.
Оси "Z" нету, т.к. она идентична стандартной, и проблем с ней быть вроде как не должно.

Образец SCARA что есть по умолчанию в программе очевидно заточен под сервы и работать отказался, работает только та симуляция что в отдельном окошке, в самой программе ничего не движется.

И так дядьки, я очень надеюсь что вы поможете мне вставить формулы Скары в нужные файлы.
Я пока ничего не понял с чего надо начать, читаю все где есть слова "кинематика""Скара"Линукс снс" но никакого плана действий еще не прояснил. Чем больше читаю, тем больше каши в голове.

Что такое "прямая" и "обратная" кинематики?
Куда вставлять длину плеч "конечности"..
Где вообще всё это лежит и как всё это заставить работать..
Без вас никуда..
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Все-таки SCARA

Сообщение nkp »

РЕКЛАМА писал(а):Хочу разобраться с этой кинематикой.
эта?
в хал loadrt scarakins прописано?
если да - и загружается без ошибок - то кинематика уже работает...
Выделение_040.png (5165 просмотров) <a class='original' href='./download/file.php?id=38789&mode=view' target=_blank>Загрузить оригинал (105.69 КБ)</a>
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Все-таки SCARA

Сообщение nkp »

РЕКЛАМА писал(а):Образец SCARA что есть по умолчанию в программе очевидно заточен под сервы и работать отказался, работает только та симуляция что в отдельном окошке, в самой программе ничего не движется.
ага - не внимательно прочитал :thinking:
значит пример конфига запускается...
хал там "ни под что" - в смысле ,что там нет stepgen-ов вообще(если мы один и тот же конфиг
смотрим)
нужно добавить core_stepper.hal как минимум...
Аватара пользователя
РЕКЛАМА
Почётный участник
Почётный участник
Сообщения: 736
Зарегистрирован: 11 дек 2012, 21:46
Репутация: 80
Откуда: Брянск
Контактная информация:

Re: Все-таки SCARA

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

На мой взгляд основная беда людей которые знают как что-то сделать в том что они думают что общаются с равным по знаниям, а ведь бывает (к примеру в этом конкретном случае) что по ту сторону экрана сидит человек недалекий (как счас).
Потому на вопрос "в хал loadrt scarakins прописано?" отвечу что не записано.
Потомучто:
1. я не знал что это надо куда-то писать.
2.теперь я знаю что это надо писать, но не знаю куда конкретно и в какое место (строчку) и где это лежит.
3. Зачем лишняя 4 ось?
4. Загружается без ошибок, но в окне визуализации программы "инструмент" не перемещается при ручном управлении, крутится только моделька. при попытке запустить "программу" выходит ошибка что "не могу в ручном режиме исполнить" и иногда что "ось выходит за лимиты" или как-то так.
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Все-таки SCARA

Сообщение nkp »

РЕКЛАМА писал(а):На мой взгляд основная беда людей которые знают как что-то сделать в том что они думают что общаются с равным по знаниям,
согласен - но эта "беда" как ты сказал - обоюдоострая :hehehe:
сейчас поясню:
ты думаешь ,что я отписался - и я знаю ответ?
да ничего подобного :freak: - я просто хочу помочь тебе (нам) его найти!
я никогда не сталкивался с этой кинематикой...
ну ладно - это было лирическое отступление :)
==========
вот файлы ,которые я смотрю:
scara.rar
(3.99 КБ) 529 скачиваний
если у тебя речь об этом конфиге - его и будем редактировать...
если не те - выкладывай свои...
РЕКЛАМА писал(а):теперь я знаю что это надо писать, но не знаю куда конкретно и в какое место (строчку) и где это лежит.
это уже прописано в хал файле scara_sim_4.hal(опять же - если у нас одинаковый конфиг)
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Все-таки SCARA

Сообщение nkp »

РЕКЛАМА писал(а):Зачем лишняя 4 ось?
ну в данном исполнении 4 оси:
1."плечо"
2. "локоть"
3 обычная ось Z (вверх - вниз)
4.ось С( вращается "вокруг" Z )
вот здесь видно :
Выделение_041.png (5151 просмотр) <a class='original' href='./download/file.php?id=38791&mode=view' target=_blank>Загрузить оригинал (64.98 КБ)</a>
===========зы
все конфиги лежат :
/домашняя_папка/linuxcnc/configs
Аватара пользователя
РЕКЛАМА
Почётный участник
Почётный участник
Сообщения: 736
Зарегистрирован: 11 дек 2012, 21:46
Репутация: 80
Откуда: Брянск
Контактная информация:

Re: Все-таки SCARA

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

А не проще в стандартной кинематике вставить формулы?
На сколько я понял там вместо (утрировано) перемещение по оси Х=перемещение оси, допустим "1" надо вставит формулу типа перемещение по оси Х= повернуть аксиальную ось "1" на формулу+ось "2" на формулу...
Или это я слишком упростил?
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Все-таки SCARA

Сообщение nkp »

РЕКЛАМА писал(а):Или это я слишком упростил?
в принципе - всё так...
только все формулы украдены вставлены до нас))
в смысле - что все уже прописано в файле кинематики , он уже "установлен" в твоей системе, и подключается
к твоей запускаемой конфигурацией одной строкой:
loadrt scarakins
в отличии от "стандартной кинематики ,которая прописывается так:
loadrt trivkins
===========
так вот , все уже работает ,осталось выяснить - почему нет визуализации в основном окне Axis и
прописать stepgen-ы с выходами на шаговики
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Все-таки SCARA

Сообщение nkp »

так - поправил ini файл (лимиты) и можно посмотреть симуляцию обработки:
Выделение_042.png (5144 просмотра) <a class='original' href='./download/file.php?id=38792&mode=view' target=_blank>Загрузить оригинал (89.84 КБ)</a>
вот поправленый файл - можешь подредактировать - попробовать:
(для просмотра содержимого нажмите на ссылку)

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

# EMC controller parameters for a simulated hexapod of the minitetra type.

# General note: Comments can either be preceded with a # or ; - either is
# acceptable, although # is in keeping with most linux config files.

# Settings with a + at the front of the comment are likely needed to get 
# changed by the user.
# Settings with a - at the front are highly unneeded to be changed
###############################################################################
# General section 
###############################################################################

# General section -------------------------------------------------------------
[EMC]

#- Version of this INI file
VERSION =               $Revision$

#+ Name of machine, for use with display, etc.
MACHINE =               LinuxCNC-HAL-SIM-SCARA

#+ Debug level, 0 means no messages. See src/emc/nml_int/emcglb.h for others
DEBUG = 0
# DEBUG =               0x00000007
#DEBUG =               0x7FFFFFFF

###############################################################################
# Sections for display options 
###############################################################################
[DISPLAY]

#+ Name of display program, e.g., xemc
 DISPLAY =              axis 
# DISPLAY =              usrmot
# DISPLAY =              mini
# DISPLAY = 		tkemc

#- Cycle time, in seconds, that display will sleep between polls
CYCLE_TIME =            0.200

#- Path to help file
HELP_FILE =             tklinucnc.txt

#- Initial display setting for position, RELATIVE or MACHINE
POSITION_OFFSET =       MACHINE

#- Initial display setting for position, COMMANDED or ACTUAL
POSITION_FEEDBACK =     ACTUAL

#+ Highest value that will be allowed for feed override, 1.0 = 100%
MAX_FEED_OVERRIDE =     2.0

#+ Prefix to be used
PROGRAM_PREFIX = ../../nc_files/

#- Introductory graphic
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
PYVCP = scara.xml

# Editor to be used with Axis
EDITOR = gedit

###############################################################################
# Task controller section 
###############################################################################
[TASK]

# Name of task controller program, e.g., milltask
TASK =                  milltask

#- Cycle time, in seconds, that task controller will sleep between polls
CYCLE_TIME =            0.010

###############################################################################
# Part program interpreter section 
###############################################################################
[RS274NGC]

#- File containing interpreter variables
PARAMETER_FILE =        scara.var

###############################################################################
# Motion control section 
###############################################################################
[EMCMOT]

EMCMOT =              motmod

#- Timeout for comm to emcmot, in seconds
COMM_TIMEOUT =          1.0

#- Interval between tries to emcmot, in seconds
COMM_WAIT =             0.010

#- Servo task period, in nanoseconds
SERVO_PERIOD =               1000000
#- Trajectory Planner task period, in nanoseconds - will be rounded to an
#   integer multiple of SERVO_PERIOD
TRAJ_PERIOD =                10000000

###############################################################################
# Hardware Abstraction Layer section
###############################################################################
[HAL]

# The run script first uses halcmd to execute any HALFILE
# files, and then to execute any individual HALCMD commands.
#

# list of hal config files to run through halcmd
# files are executed in the order in which they appear
HALFILE =                    scara_sim_4.hal
POSTGUI_HALFILE =            scara_postgui.hal

#- list of halcmd commands to execute
# commands are executed in the order in which they appear
#HALCMD =                    save neta

#load halui to enable 
HALUI =                      halui

###############################################################################
# Trajectory planner section
###############################################################################
[TRAJ]
#+ machine specific settings
AXES =                  6
COORDINATES =           X Y Z C 
HOME = 			0 0 0 0 
LINEAR_UNITS =          mm
ANGULAR_UNITS =         degree
CYCLE_TIME =            0.010
DEFAULT_VELOCITY =      1.0
MAX_VELOCITY =          600.0
DEFAULT_ACCELERATION =  100.0
MAX_ACCELERATION =      200.0

###############################################################################
# Axes sections
###############################################################################

#+ First axis
[AXIS_0]
TYPE =                          ANGULAR
HOME =                          0.000
MAX_VELOCITY =                  30.0
MAX_ACCELERATION =              200.0
BACKLASH =                      0.000
INPUT_SCALE =                   4000  
OUTPUT_SCALE =                  1.000
MIN_LIMIT =                     -360.0
MAX_LIMIT =                     360.0
FERROR =                        2.000
MIN_FERROR =                    0.200
HOME_OFFSET =                   0.0
HOME_SEARCH_VEL =               0.0
HOME_LATCH_VEL =                0.0
HOME_USE_INDEX =                NO
HOME_IGNORE_LIMITS =            NO
HOME_SEQUENCE =                 0

#+ Second axis
[AXIS_1]
TYPE =                          ANGULAR
HOME =                          0.000
MAX_VELOCITY =                  30.0
MAX_ACCELERATION =              200.0
BACKLASH =                      0.000
INPUT_SCALE =                   4000 
OUTPUT_SCALE =                  1.000 
MIN_LIMIT =                     -360.0
MAX_LIMIT =                     360.0
FERROR =                        2.000
MIN_FERROR =                    0.200
HOME_OFFSET =                   0.0
HOME_SEARCH_VEL =               0.0
HOME_LATCH_VEL =                0.0
HOME_USE_INDEX =                NO
HOME_IGNORE_LIMITS =            NO
HOME_SEQUENCE =                 0

#+ Third axis
[AXIS_2]
TYPE =                          LINEAR
HOME =                          25.000
MAX_VELOCITY =                  30.0
MAX_ACCELERATION =              200.0
BACKLASH =                      0.000
INPUT_SCALE =                   4000
OUTPUT_SCALE =                  1.000
MIN_LIMIT =                     -2500.0
MAX_LIMIT =                     3000.0
FERROR =                        2.000
MIN_FERROR =                    0.200
HOME_OFFSET =                   25.0
HOME_SEARCH_VEL =               0.0
HOME_LATCH_VEL =                0.0
HOME_USE_INDEX =                NO
HOME_IGNORE_LIMITS =            NO
HOME_SEQUENCE =                 0

#+ Fourth axis
[AXIS_5]
TYPE =                          ANGULAR
HOME =                          0.000
MAX_VELOCITY =                  30.0
MAX_ACCELERATION =              200.0
BACKLASH =                      0.000
INPUT_SCALE =                   4000
OUTPUT_SCALE =                  1.000
MIN_LIMIT =                     -180.0
MAX_LIMIT =                     180.0
FERROR =                        2.000
MIN_FERROR =                    0.200
HOME_OFFSET =                   0.0
HOME_SEARCH_VEL =               0.0
HOME_LATCH_VEL =                0.0
HOME_USE_INDEX =                NO
HOME_IGNORE_LIMITS =            NO
HOME_SEQUENCE =                 0

###############################################################################
# section for main IO controller parameters 
###############################################################################
[EMCIO]

#- Name of IO controller program, e.g., io
EMCIO = 	                io

#- cycle time, in seconds
CYCLE_TIME =                    0.100

#- tool table file
TOOL_TABLE =                    scara.tbl
Аватара пользователя
РЕКЛАМА
Почётный участник
Почётный участник
Сообщения: 736
Зарегистрирован: 11 дек 2012, 21:46
Репутация: 80
Откуда: Брянск
Контактная информация:

Re: Все-таки SCARA

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

У меня все-равно не работают перемещения в пограме.
При попытке выполнить задание пишет:
Вложения
Снимок.png (5133 просмотра) <a class='original' href='./download/file.php?id=38793&mode=view' target=_blank>Загрузить оригинал (165.48 КБ)</a>
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Все-таки SCARA

Сообщение nkp »

скорей всего все пользовательские настройки делаем в хал...
вот наши пины - ними задаем саму конфигурацию конкретного робота(самой железки):
Выделение_043.png (5131 просмотр) <a class='original' href='./download/file.php?id=38794&mode=view' target=_blank>Загрузить оригинал (48.03 КБ)</a>
РЕКЛАМА писал(а):У меня все-равно не работают перемещения в пограме.
сейчас разберёмся...
Аватара пользователя
РЕКЛАМА
Почётный участник
Почётный участник
Сообщения: 736
Зарегистрирован: 11 дек 2012, 21:46
Репутация: 80
Откуда: Брянск
Контактная информация:

Re: Все-таки SCARA

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

соврал. работает.
очему-то не перепеался ини с первого раза.
Аватара пользователя
РЕКЛАМА
Почётный участник
Почётный участник
Сообщения: 736
Зарегистрирован: 11 дек 2012, 21:46
Репутация: 80
Откуда: Брянск
Контактная информация:

Re: Все-таки SCARA

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

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

Re: Все-таки SCARA

Сообщение nkp »

попробуй не делать "ручных перемещений":
перегрузи емс ,хоумы , и сразу включай программу на выполнение...
РЕКЛАМА писал(а):соврал. работает.очему-то не перепеался ини с первого раза.
прочитал)))
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Все-таки SCARA

Сообщение nkp »

РЕКЛАМА писал(а):Кким образом?
если коротко - то вот:

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

/* key dimensions

   joint[0] = Entire arm rotates around a vertical axis at its inner end
		which is attached to the earth.  A value of zero means the
		inner arm is pointing along the X axis.
   D1 = Vertical distance from the ground plane to the center of the inner
		arm.
   D2 = Horizontal distance between joint[0] axis and joint[1] axis, ie.
		the length of the inner arm.
   joint[1] = Outer arm rotates around a vertical axis at its inner end
		which is attached to the outer end of the inner arm.  A
		value of zero means the outer arm is parallel to the
		inner arm (and extending outward).
   D3 = Vertical distance from the center of the inner arm to the center
		of the outer arm.  May be positive or negative depending
		on the structure of the robot.
   joint[2] = End effector slides along a vertical axis at the outer end
		of the outer arm.  A value of zero means the end effector
		is at the same height as the center of the outer arm, and
		positive values mean downward movement.
   D4 = Horizontal distance between joint[1] axis and joint[2] axis, ie.
		the length of the outer arm
   joint[3] = End effector rotates around the same vertical axis that it
		slides along.  A value of zero means that the tooltip (if
		offset from the axis) is pointing in the same direction
		as the centerline of the outer arm.
   D5 = Vertical distance from the end effector to the tooltip.  Positive
		means the tooltip is lower than the end effector, and is
		the normal case.
   D6 = Horizontal distance from the centerline of the end effector (and
		the joints 2 and 3 axis) and the tooltip.  Zero means the
		tooltip is on the centerline.  Non-zero values should be
		positive, if negative they introduce a 180 degree offset
		on the value of joint[3].
а так - сейчас помучаемся - разберем :thinking:
я с туземным язЫком не сильно дружу((
Аватара пользователя
РЕКЛАМА
Почётный участник
Почётный участник
Сообщения: 736
Зарегистрирован: 11 дек 2012, 21:46
Репутация: 80
Откуда: Брянск
Контактная информация:

Re: Все-таки SCARA

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

Что означают D1,D2 итд и как их менять? Я подозреваю что это физичеиепараметры "станка" длина плеч. итд.

Вот то что вы счас выложили я и потерял и больше не смог найти.

Еще вопрос:
Можно удалить лишнюю ось? может проще будет? Тем более у меня ее не будет.
Аватара пользователя
РЕКЛАМА
Почётный участник
Почётный участник
Сообщения: 736
Зарегистрирован: 11 дек 2012, 21:46
Репутация: 80
Откуда: Брянск
Контактная информация:

Re: Все-таки SCARA

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

Нам нужно сменить Д2 (1плечо) Д4 (2 плечо) и всё? остальное вроде не влияет. Хотя Д6 то такое непонятно.
Аватара пользователя
РЕКЛАМА
Почётный участник
Почётный участник
Сообщения: 736
Зарегистрирован: 11 дек 2012, 21:46
Репутация: 80
Откуда: Брянск
Контактная информация:

Re: Все-таки SCARA

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

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

Re: Все-таки SCARA

Сообщение nkp »

РЕКЛАМА писал(а):Их менять надо идти в файл?
а хал файле в конце прописать по принципу:

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

setp scarakins.D1 0
setp scarakins.D2 0
setp scarakins.D3 0
setp scarakins.D4 0
setp scarakins.D5 0
setp scarakins.D6 0
только вместо нулей нужные значения прописать(пока не знаю - какие)
nkp
Мастер
Сообщения: 8340
Зарегистрирован: 28 ноя 2011, 00:25
Репутация: 1589
Контактная информация:

Re: Все-таки SCARA

Сообщение nkp »

ну или лучше прописать сразу с дефолтными :
#define DEFAULT_D1 490
#define DEFAULT_D2 340
#define DEFAULT_D3 50
#define DEFAULT_D4 250
#define DEFAULT_D5 50
#define DEFAULT_D6 50
то есть так:

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

setp scarakins.D1 490
setp scarakins.D2 340
setp scarakins.D3 50
setp scarakins.D4 250
setp scarakins.D5 50
setp scarakins.D6 50
а потом менять по мере надобности...
Ответить

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