Страница 5 из 9
Re: Все-таки SCARA
Добавлено: 24 дек 2014, 18:20
Serg
РЕКЛАМА писал(а):Это тот что я мучааю.
Разница с дефолтным только в добавленных stepgen'ах.
РЕКЛАМА писал(а):Я не моу онять логику файла.
Считай это словесным описанием электрической схемы.

Посмотри мою тему про VisualHAL - там скриншоты могут помочь понять логику файла.
Re: Все-таки SCARA
Добавлено: 24 дек 2014, 18:36
РЕКЛАМА
я уже совсем запутался.
вот ини мой:
Код: Выделить всё
# 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 = /home/reklama/linuxcnc/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
BASE_PERIOD = 100000
#- 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
HALFILE = standard_pinout.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 = 50.0
DEFAULT_ACCELERATION = 100.0
MAX_ACCELERATION = 200
###############################################################################
# Axes sections
###############################################################################
#+ First axis
[AXIS_0]
TYPE = ANGULAR
HOME = 0.000
MAX_VELOCITY = 300.0
MAX_ACCELERATION = 200.0
STEPGEN_MAXACCEL = 300
BACKLASH = 0.000
SCALE = 4.4
INPUT_SCALE = 4000
OUTPUT_SCALE = 1.000
MIN_LIMIT = -200.0
MAX_LIMIT = 200.0
FERROR = 40.000
MIN_FERROR = 5
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 = 300.0
MAX_ACCELERATION = 200.0
STEPGEN_MAXACCEL = 300
BACKLASH = 0.000
SCALE = 4.4
INPUT_SCALE = 4000
OUTPUT_SCALE = 1.000
MIN_LIMIT = -200.0
MAX_LIMIT = 200.0
FERROR = 40.000
MIN_FERROR = 5
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 = 300.0
MAX_ACCELERATION = 200.0
STEPGEN_MAXACCEL = 300
BACKLASH = 0.000
SCALE = 800
INPUT_SCALE = 4000
OUTPUT_SCALE = 1.000
MIN_LIMIT = -200.0
MAX_LIMIT = 300.0
FERROR = 40.000
MIN_FERROR = 5
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 = 300.0
MAX_ACCELERATION = 200.0
STEPGEN_MAXACCEL = 300
BACKLASH = 0.000
SCALE = 4.4
INPUT_SCALE = 4000
OUTPUT_SCALE = 1.000
MIN_LIMIT = -360.0
MAX_LIMIT = 360.0
FERROR = 40.000
MIN_FERROR = 5
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
Вот дефолтный:
Код: Выделить всё
# 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 = /home/reklama/linuxcnc/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 = 1.0
ANGULAR_UNITS = 1.0
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 = 25.0
MAX_LIMIT = 300.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
Япробовал рисоваать все это. извел килограм макулатуры.
почему тогда дефолтный работает, а мой нет?
Я пробовал в дефолтный добавлять настройки для лпт. но не заработало. я что-то упускаю.
Re: Все-таки SCARA
Добавлено: 24 дек 2014, 19:37
РЕКЛАМА
Я тут вычитал что:
а системы на шаговых двигателях обычно имеют два таких файла, один задающий общую конфигурацию шаговых двигателей (core_stepper.hal) и один задающий вывод пинов для машины (xxx_pinout.hal).
У меня нет core_stepper.hal. или он вписан в основной?
Re: Все-таки SCARA
Добавлено: 24 дек 2014, 23:08
РЕКЛАМА
Признайтесь, вы специально не указали мне на ошибку в .хал чтоб я голову себе всю сломал и три ночи не спал?
Вроде заработало.
Но теперь ошибка вылезает когда "инструмент" не может "дотянуться" до координаты физически, т.е. не хватает длины сустава.
Понятно что есть софт лимиты, но они работают только в режиме сочленения. В режиме координат они почему-то превращаются в миллиметровые.
Т.е. лимит -180+180 град. превращается в -180+180 мм. а рука туда не дотягивается счас.
И с этой ошибки "не слезть" только перезагрузкой.
И еще может кто знает как поменять местами X и Y координаты в реале (и в визуализации) а то непривычно.
Re: Все-таки SCARA
Добавлено: 25 дек 2014, 11:31
solo
РЕКЛАМА писал(а):не указали мне на ошибку в .хал чтоб я голову себе всю сломал
так может поделишься , "замаскированной ошибкой " чтоб другим легче было.
Re: Все-таки SCARA
Добавлено: 25 дек 2014, 11:46
РЕКЛАМА
она не замаскированная. Она лежала на поверхности и смотрела на меня всё это время.
И выше еще пару строчек аксис 5 заменил на 3.
Если все доделаю выложу тут статейку по наладке Скары для чайников.
Еще вопросы:
как убрать кругляши индикаторов положения?
Как убрать отдельное окошко с симуляцией при запуске?
Re: Все-таки SCARA
Добавлено: 25 дек 2014, 11:52
nkp
РЕКЛАМА писал(а):она не замаскированная. Она лежала на поверхности и смотрела на меня всё это время
рад - что у тебя заработало - знаю ,как это бывает приятно
особенно - если далось не сразу
но ошибка все таки не в этих строках...
Код: Выделить всё
net xflt axis.0.amp-fault-in
net yflt axis.1.amp-fault-in
net zflt axis.2.amp-fault-in
net aflt axis.5.amp-fault-in
loadusr -W scaragui
net j0 axis.0.joint-pos-fb scaragui.joint0
net j1 axis.1.joint-pos-fb scaragui.joint1
net j2 axis.2.joint-pos-fb scaragui.joint2
net j3 axis.5.joint-pos-fb scaragui.joint3
их можно попробовать убрать совсем - пропадет лишь трехмерная визуализация
хотя кто его знает - может из-за нее глючить али нет

Re: Все-таки SCARA
Добавлено: 25 дек 2014, 12:38
РЕКЛАМА
nkp писал(а):но ошибка все таки не в этих строках...
И не в этих тоже?
Код: Выделить всё
# create HAL signals for position commands from motion module
net J0cmd <= axis.0.motor-pos-cmd => stepgen.0.position-cmd
net J1cmd <= axis.1.motor-pos-cmd => stepgen.1.position-cmd
net J2cmd <= axis.2.motor-pos-cmd => stepgen.2.position-cmd
net J3cmd <= axis.5.motor-pos-cmd => stepgen.3.position-cmd
# loop position commands back to motion module feedback
net J0fb => stepgen.0.position-fb => axis.0.motor-pos-fb
net J1fb => stepgen.1.position-fb => axis.1.motor-pos-fb
net J2fb => stepgen.2.position-fb => axis.2.motor-pos-fb
net J3fb => stepgen.3.position-fb => axis.5.motor-pos-fb
Но сразу после правки всё заработало..
nkp писал(а):их можно попробовать убрать совсем - пропадет лишь трехмерная визуализация
Та что стартует отдельным окошком? как сделать что-бы она не стартовала совсем?
Re: Все-таки SCARA
Добавлено: 25 дек 2014, 12:46
Nick
скорее всего вот это убрать:
loadusr -W scaragui
Re: Все-таки SCARA
Добавлено: 25 дек 2014, 12:49
nkp
Nick писал(а):скорее всего вот это убрать:loadusr -W scaragui
и пины его тоже убрать:
Код: Выделить всё
net j0 axis.0.joint-pos-fb scaragui.joint0
net j1 axis.1.joint-pos-fb scaragui.joint1
net j2 axis.2.joint-pos-fb scaragui.joint2
net j3 axis.5.joint-pos-fb scaragui.joint3
ну вобщем как выше и писал...
Re: Все-таки SCARA
Добавлено: 16 янв 2015, 10:55
windnord1
А как сделать чтобы все звенья крутились вокруг своей оси бесконечно?
Re: Все-таки SCARA
Добавлено: 16 янв 2015, 11:07
Nick
А в scara так можно вообще?
Или у тебя немного другая кинематика?
Re: Все-таки SCARA
Добавлено: 16 янв 2015, 11:11
NightV
Nick писал(а):А в scara так можно вообще?
можно
https://www.youtube.com/watch?v=L2fayyRO3wE
Re: Все-таки SCARA
Добавлено: 17 янв 2015, 05:30
windnord1
windnord1 писал(а):А как сделать чтобы все звенья крутились вокруг своей оси бесконечно?
нужно убрать
min limit и max limit
Re: Все-таки SCARA
Добавлено: 04 фев 2015, 15:54
windnord1
как scara сделать из сервоприводов в шаговый?
Re: Все-таки SCARA
Добавлено: 04 фев 2015, 16:47
Nick
В linuxcnc нет разницы...
Есть реальный станок?
Re: Все-таки SCARA
Добавлено: 06 фев 2015, 10:52
windnord1
есть шаговые двигатели и контроллеры
Re: Все-таки SCARA
Добавлено: 06 фев 2015, 10:53
windnord1
нужно написать HAL и INI файлы
Re: Все-таки SCARA
Добавлено: 06 фев 2015, 12:46
Nick
windnord1 писал(а):есть шаговые двигатели и контроллеры
собирай железо, и потихоньку будем делать hal и ini.
Для начала можешь сделать простую конфигурацию для трех осевого фрезера и просто покрутить движками, потом будем ее изменять.
Re: Все-таки SCARA
Добавлено: 06 фев 2015, 13:47
windnord1
собрал. сделал конфигурацию. покрутил движками. теперь надо изменить конфигурацию