[WIKI] Интерфейс Gmoccapy с нуля.

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Аватара пользователя
verser
Мастер
Сообщения: 1903
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy с нуля.

Сообщение verser »

dinkata писал(а):Думаю все сделал по инструкции
Неплохо бы глянуть , что показывает запуск gmoccapy из терминала.
Аватара пользователя
dinkata
Мастер
Сообщения: 1028
Зарегистрирован: 05 сен 2014, 09:07
Репутация: 391
Настоящее имя: Диньо
Откуда: Болгария
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy с нуля.

Сообщение dinkata »

Обновил система ,сейчас gmoccapy for linuxcnc 1.5.3.1 и кнопки есть :D ,начинаем изучат .
Еще ждем центроискатель http://www.cnc-club.ru/forum/viewtopic. ... 85#p189085
Простите ошибки, я иностранец.У моя клавиатура нету "э" и "ы"
Аватара пользователя
dinkata
Мастер
Сообщения: 1028
Зарегистрирован: 05 сен 2014, 09:07
Репутация: 391
Настоящее имя: Диньо
Откуда: Болгария
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy с нуля.

Сообщение dinkata »

Начал тестироват,у меня сигнал probe-in в hal show горит при нажатие ,
в конфиг лежит папка "macros",
мож неправильно делаю ,вот что :
Снимка на екрана - 14.05.2015 - 10,44,41.png (4311 просмотров) <a class='original' href='./download/file.php?id=50189&mode=view' target=_blank>Загрузить оригинал (162.21 КБ)</a>
Простите ошибки, я иностранец.У моя клавиатура нету "э" и "ы"
Аватара пользователя
verser
Мастер
Сообщения: 1903
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy с нуля.

Сообщение verser »

dinkata писал(а):мож неправильно делаю
Покажите свой.ini
Аватара пользователя
dinkata
Мастер
Сообщения: 1028
Зарегистрирован: 05 сен 2014, 09:07
Репутация: 391
Настоящее имя: Диньо
Откуда: Болгария
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy с нуля.

Сообщение dinkata »

verser писал(а):Покажите свой.ini

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

# Generated by stepconf 1.1 at Wed Dec 17 10:21:10 2014
# If you make changes to this file, they will be
# overwritten when you run stepconf again

[EMC]
MACHINE = StepZMM
DEBUG = 0

[DISPLAY]
DISPLAY = gmoccapy
PREFERENCE_FILE_PATCH = StepZMM.pref
EMBED_TAB_NAME = Диагностика
EMBED_TAB_LOCATION = ntb_user_tabs
EMBED_TAB_COMMAND = gladevcp -x {XID} -H v_buttonlist.hal v_buttonlist.glade
EMBED_TAB_NAME = tool sensor
EMBED_TAB_LOCATION = box_cooling
EMBED_TAB_COMMAND = gladevcp -x {XID} -H tool_sensor.hal tool_sensor.glade
EMBED_TAB_NAME=Probe Screen 
EMBED_TAB_LOCATION = ntb_user_tabs
EMBED_TAB_COMMAND = gladevcp  -x {XID} -u python/probe_screen.py probe_icons/probe_screen.glade 
EDITOR = gedit
POSITION_OFFSET = RELATIVE
POSITION_FEEDBACK = ACTUAL
ARCDIVISION = 64
GRIDS = 10mm 20mm 50mm 100mm 1in 2in 5in 10in
MAX_FEED_OVERRIDE = 1.2
MIN_SPINDLE_OVERRIDE = 0.5
MAX_SPINDLE_OVERRIDE = 1.2
DEFAULT_LINEAR_VELOCITY = 8.00
MIN_LINEAR_VELOCITY = 0
MAX_LINEAR_VELOCITY = 80.00
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5
PROGRAM_PREFIX = /home/zmm/linuxcnc/nc_files
INCREMENTS = 5mm 1mm .5mm .1mm .05mm .01mm .005mm

[FILTER]
PROGRAM_EXTENSION = .png,.gif,.jpg Greyscale Depth Image
PROGRAM_EXTENSION = .py Python Script
png = image-to-gcode
gif = image-to-gcode
jpg = image-to-gcode
py = python

[TASK]
TASK = milltask
CYCLE_TIME = 0.010

[RS274NGC]
PARAMETER_FILE = linuxcnc.var
SUBROUTINE_PATH = subprg:/home/zmm/linuxcnc/configs/StepZMM
USER_M_PATH = subprg:/home/zmm/linuxcnc/configs/StepZMM

[EMCMOT]
EMCMOT = motmod
COMM_TIMEOUT = 1.0
COMM_WAIT = 0.010
BASE_PERIOD = 100000
SERVO_PERIOD = 1000000

[HAL]
HALFILE = StepZMM.hal
HALFILE = custom.hal
POSTGUI_HALFILE = custom_postgui.hal
HALFILE = xhc-hb04.tcl
HALFILE = monitor_xhc-hb04.tcl

HALUI = halui

[XHC_HB04_CONFIG]
# specify layout = n for xhc-hb04-layout{n}.cfg files
layout = 2
# coords: specify 4 letters
# coords: switch labels are xyza but any unique 4 letters
#         from the set {xyxabcuvw) can be used (if the coord exists)
coords = x y z 
# lowpass settings:
# coef: slows rate of change of output,  range: 0 < coef < 1
coefs = 1 1 1 1
scales = 1 1 1 1
jogmode = normal
sequence = 1
require_pendant = no

[XHC_HB04_BUTTONS]
# use button names according to layout file xhc-hb04-layout{n}.cfg
# note: "start-pause" is connected for standard behavior
#        controlling halui.pause/halui.resume/halui.run
# these are examples, edit as required:

goto-zero   = ""
# syntheized per-axis buttons for goto-zero button:
goto-zero-x = halui.mdi-command-00
goto-zero-y = halui.mdi-command-01
goto-zero-z = halui.mdi-command-02
goto-zero-a = halui.mdi-command-03

start-pause = std_start_pause
rewind      = halui.program.step
half        = halui.spindle.stop
# synthesized per-axis buttons for half button:
half-x      = ""
half-y      = ""
half-z      = ""
half-a      = ""
zero        = ""
# synthesized per-axis buttons for zero button:
zero-x      = halui.mdi-command-04
zero-y      = halui.mdi-command-05
zero-z      = halui.mdi-command-06
zero-a      = halui.mdi-command-07
safe-z      = halui.mdi-command-08
probe-z     = halui.mdi-command-09
mode        = ""
# in this sim, home-all only works first time, hold down till finished:
home        = halui.home-all
spindle     = halui.spindle.start
step        = xhc-hb04.stepsize-up
stop        = halui.program.stop
reset       = halui.estop.activate
macro-1     = halui.machine.on
macro-2     = halui.machine.off
macro-3     = halui.estop.reset
macro-6     = halui.flood.on
macro-7     = halui.flood.off

[HALUI]
# these are examples, edit as required:
# a halui hal pin is created for each MDI_COMMAND below
# halui.mdi-command-00, halui.mdi-command-01,... etc
MDI_COMMAND= G0 X0 
MDI_COMMAND= G0 Y0 
MDI_COMMAND= G0 Z0
MDI_COMMAND=(debug, example: mdi-03)
MDI_COMMAND= G10 L20 P0 X0
MDI_COMMAND= G10 L20 P0 Y0
MDI_COMMAND= G10 L20 P0 Z0
MDI_COMMAND=(debug, example: mdi-07)
MDI_COMMAND= O<safe-z> CALL
MDI_COMMAND= O<zero-z> CALL 
MDI_COMMAND=(debug, example: mdi-10)
MDI_COMMAND=(debug, example: mdi-11)


[TRAJ]
AXES = 3
COORDINATES = X Y Z
LINEAR_UNITS = mm
ANGULAR_UNITS = degree
CYCLE_TIME = 0.010
DEFAULT_VELOCITY = 8.00
MAX_VELOCITY = 80.00

[EMCIO]
EMCIO = io
CYCLE_TIME = 0.100
TOOL_TABLE = tool.tbl

[AXIS_0]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 80.0
MAX_ACCELERATION = 500.0
STEPGEN_MAXACCEL = 625.0
SCALE = 80.0
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = -100.0
MAX_LIMIT = 1000.0
HOME_OFFSET = 0.0
HOME_SEQUENCE = 1

[AXIS_1]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 80.0
MAX_ACCELERATION = 500.0
STEPGEN_MAXACCEL = 625.0
SCALE = 80.0
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = -1.0
MAX_LIMIT = 1000.0
HOME_OFFSET = 0.0
HOME_SEQUENCE = 2

[AXIS_2]
TYPE = LINEAR
HOME = 0.0
MAX_VELOCITY = 80.0
MAX_ACCELERATION = 500.0
STEPGEN_MAXACCEL = 625.0
SCALE = 80.0
FERROR = 1
MIN_FERROR = .25
MIN_LIMIT = -1000.0
MAX_LIMIT = 500.0
HOME_OFFSET = 0.0
HOME_SEQUENCE = 0
Простите ошибки, я иностранец.У моя клавиатура нету "э" и "ы"
Аватара пользователя
verser
Мастер
Сообщения: 1903
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy с нуля.

Сообщение verser »

dinkata, для Вашей конфигурации нужно все файлы из архивной папки macros скопировать в SUBROUTINE_PATH

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

SUBROUTINE_PATH = subprg:/home/zmm/linuxcnc/configs/StepZMM
или сделать, как в инструкции

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

SUBROUTINE_PATH = macros
так же перекачайте исходники, я только что исправил один баг.
Аватара пользователя
verser
Мастер
Сообщения: 1903
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy с нуля.

Сообщение verser »

Без этого тоже будут проблемы

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

[RS274NGC]
# Возможность чтения INI и HAL переменных из gcode и др.
FEATURES=30
Аватара пользователя
dinkata
Мастер
Сообщения: 1028
Зарегистрирован: 05 сен 2014, 09:07
Репутация: 391
Настоящее имя: Диньо
Откуда: Болгария
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy с нуля.

Сообщение dinkata »

verser писал(а):так же перекачайте исходники,
ok,спасибо
dinkata писал(а):Еще ждем центроискатель http://www.cnc-club.ru/forum/viewtopic. ... 85#p189085
Простите ошибки, я иностранец.У моя клавиатура нету "э" и "ы"
sancta
Кандидат
Сообщения: 53
Зарегистрирован: 31 окт 2013, 11:20
Репутация: 8
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy с нуля.

Сообщение sancta »

доброе всем!
Пытаюсь поставить gmoccapy по первому посту.
Сейчас не работают входы allhome, лимиты, estop, probe
Второй hal взял с рабочего конфига.
Там всё работает. HAL метр не показывает изменение сигнала на parport.0, хотя оси ездят



INI

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

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

# General section -------------------------------------------------------------
[EMC]
VERSION =               $Revision$
MACHINE =               gmoccapy 4 axis
DEBUG = 0

# for details see nc_files/subroutines/maco_instructions.txt
[MACROS]
MACRO = i_am_lost
MACRO = halo_world
MACRO = jog_around
MACRO = increment xinc yinc
MACRO = go_to_position X-pos Y-pos Z-pos

# Sections for display options ------------------------------------------------
[DISPLAY]
DISPLAY = gmoccapy

# Cycle time, in milliseconds, that display will sleep between polls
CYCLE_TIME =            100

# Highest value that will be allowed for feed override, 1.0 = 100%
MAX_FEED_OVERRIDE =     1.5
MAX_SPINDLE_OVERRIDE =  1.2
MIN_SPINDLE_OVERRIDE = .5

# Max and default jog speeds in units per second
MAX_LINEAR_VELOCITY =   166
DEFAULT_LINEAR_VELOCITY = 5
MAX_ANGULAR_VELOCITY = 234

# Prefix to be used
PROGRAM_PREFIX = /home/sancta/linuxcnc/nc_files

# Introductory graphic
INTRO_GRAPHIC = linuxcnc.gif
INTRO_TIME = 5

# list of selectable jog increments
INCREMENTS = 1mm, 0.1mm, 0.01mm, 0.001mm, 1.2345in

[FILTER]
PROGRAM_EXTENSION = .png,.gif,.jpg Grayscale Depth Image
PROGRAM_EXTENSION = .py Python Script
png = image-to-gcode
gif = image-to-gcode
jpg = image-to-gcode
py = python

# Task controller section -----------------------------------------------------
[TASK]
TASK =                  milltask
CYCLE_TIME =            0.001

# Part program interpreter section --------------------------------------------
[RS274NGC]
RS274NGC_STARTUP_CODE = G17 G21 G40 G43H0 G54 G64P0.005 G80 G90 G94 G97 M5 M9
PARAMETER_FILE = sim.var
SUBROUTINE_PATH = macros

# Motion control section ------------------------------------------------------
[EMCMOT]
EMCMOT =              motmod
COMM_TIMEOUT =          1.0
COMM_WAIT =             0.010
BASE_PERIOD  =          100000
SERVO_PERIOD =          1000000

# Hardware Abstraction Layer section --------------------------------------------------
[HAL]
HALFILE = мой-станок.hal
HALFILE = core_sim4.hal
#HALFILE = spindle_sim.hal
#HALFILE = simulated_home.hal

# Single file that is executed after the GUI has started.
#POSTGUI_HALFILE = gmoccapy_postgui.hal

HALUI = halui

# Trajectory planner section --------------------------------------------------
[TRAJ]
AXES =             6
COORDINATES =      X Y Z C
HOME =             0 0 0 0
LINEAR_UNITS =     mm
ANGULAR_UNITS =    degree
CYCLE_TIME =       0.010
DEFAULT_VELOCITY = 9.0
MAX_VELOCITY =     234
POSITION_FILE =    position.txt

# First axis = X
[AXIS_0]
TYPE =                          LINEAR
HOME =                          0.000
MAX_VELOCITY =                  70
MAX_ACCELERATION =              1400.0
STEPGEN_MAXACCEL = 1875.0
BACKLASH = 0.000
INPUT_SCALE =                   160
OUTPUT_SCALE = 1.000
MIN_LIMIT =                     0
MAX_LIMIT =                     430.0
FERROR = 0.025
MIN_FERROR = 0.25
HOME_OFFSET =                    -1.0
HOME =                           10
HOME_SEARCH_VEL =                10.0
HOME_LATCH_VEL =                 3.125
HOME_USE_INDEX =                 NO
HOME_IGNORE_LIMITS =             NO
HOME_SEQUENCE = 1
HOME_IS_SHARED = 1

# Second axis = Y
[AXIS_1]
TYPE =                          LINEAR
HOME =                          0.000
MAX_VELOCITY =                  60
MAX_ACCELERATION =              1000.0
STEPGEN_MAXACCEL = 1250.0
BACKLASH = 0.000
INPUT_SCALE =                   160
OUTPUT_SCALE = 1.000
MIN_LIMIT =                     0
MAX_LIMIT =                     415.0
FERROR = 1
MIN_FERROR = 0.25
HOME_OFFSET =                    415.0
HOME =                           10
HOME_SEARCH_VEL =                -10.0
HOME_LATCH_VEL =                 3.1250
HOME_USE_INDEX =                 NO
HOME_IGNORE_LIMITS =             NO
HOME_SEQUENCE = 2
HOME_IS_SHARED = 1

# Third axis = Z
[AXIS_2]
TYPE =                          LINEAR
HOME =                          0.0
MAX_VELOCITY =                  29
MAX_ACCELERATION =              1250.0
STEPGEN_MAXACCEL = 1250.0
BACKLASH = 0.000
INPUT_SCALE =                   400
OUTPUT_SCALE = 1.000
MIN_LIMIT =                     -130.0
MAX_LIMIT =                     0.001
FERROR = 1
MIN_FERROR = 0.25
HOME_OFFSET =                    10.0
HOME =                           -10
HOME_SEARCH_VEL =                -1.0
HOME_LATCH_VEL =                 1.0
HOME_USE_INDEX =                 NO
HOME_IGNORE_LIMITS =             NO
HOME_SEQUENCE = 0
HOME_IS_SHARED = 1

# Fourth axis = A
# Fifth axis = B

# Sixt axis = C
[AXIS_5]
TYPE =                          ANGULAR
HOME =                          0.0
MAX_VELOCITY =                  90.0
MAX_ACCELERATION =              1200.0
STEPGEN_MAXACCEL = 1250.0
BACKLASH = 0.000
INPUT_SCALE =                   40
OUTPUT_SCALE = 1.000
FERROR = 5.0
MIN_FERROR = 1.0
HOME_OFFSET =                    0.0
HOME_SEARCH_VEL =                0.0
HOME_LATCH_VEL =                 0.0
HOME_USE_INDEX =                 NO
HOME_IGNORE_LIMITS =             NO
HOME_SEQUENCE = 1

# section for main IO controller parameters -----------------------------------
[EMCIO]
EMCIO = 		io
CYCLE_TIME =    0.100

# tool table file
TOOL_TABLE = tool.tbl
TOOL_CHANGE_POSITION = 100 100 -10
TOOL_CHANGE_QUILL_UP = 1

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

# core HAL config file for simulation

# first load all the RT modules that will be needed
# kinematics
#loadrt trivkins
# motion controller, get name and thread periods from ini file
#loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES
# load 6 differentiators (for velocity and accel signals
loadrt ddt names=ddt_x,ddt_xv,ddt_y,ddt_yv,ddt_z,ddt_zv
# load additional blocks
loadrt hypot names=vel_xy,vel_xyz
#loadrt hal_parport cfg="0x378"

# add motion controller functions to servo thread
#addf motion-command-handler servo-thread
#addf motion-controller servo-thread
# link the differentiator functions into the code
addf ddt_x servo-thread
addf ddt_xv servo-thread
addf ddt_y servo-thread
addf ddt_yv servo-thread
addf ddt_z servo-thread
addf ddt_zv servo-thread
addf vel_xy servo-thread
addf vel_xyz servo-thread

# create HAL signals for position commands from motion module
# loop position commands back to motion module feedback
#net Xpos axis.0.motor-pos-cmd => axis.0.motor-pos-fb ddt_x.in
#net Ypos axis.1.motor-pos-cmd => axis.1.motor-pos-fb ddt_y.in
#net Zpos axis.2.motor-pos-cmd => axis.2.motor-pos-fb ddt_z.in
#net Apos axis.3.motor-pos-cmd => axis.3.motor-pos-fb
#net Bpos axis.4.motor-pos-cmd => axis.4.motor-pos-fb
net Cpos axis.5.motor-pos-cmd => axis.5.motor-pos-fb
#net Upos axis.6.motor-pos-cmd => axis.6.motor-pos-fb
#net Vpos axis.7.motor-pos-cmd => axis.7.motor-pos-fb
#net Wpos axis.8.motor-pos-cmd => axis.8.motor-pos-fb

# send the position commands thru differentiators to
# generate velocity and accel signals
net Xvel ddt_x.out => ddt_xv.in vel_xy.in0
net Xacc <= ddt_xv.out
net Yvel ddt_y.out => ddt_yv.in vel_xy.in1
net Yacc <= ddt_yv.out
net Zvel ddt_z.out => ddt_zv.in vel_xyz.in0
net Zacc <= ddt_zv.out

# Cartesian 2- and 3-axis velocities
net XYvel vel_xy.out => vel_xyz.in1
net XYZvel <= vel_xyz.out

#estop loopback
net estop-loop iocontrol.0.user-enable-out iocontrol.0.emc-enable-in

# create signals for tool loading loopback
#net tool-prep-loop iocontrol.0.tool-prepare iocontrol.0.tool-prepared
#net tool-change-loop iocontrol.0.tool-change iocontrol.0.tool-changed

#net spindle-fwd motion.spindle-forward
#net spindle-rev motion.spindle-reverse
#net spindle-speed motion.spindle-speed-out

#net lube iocontrol.0.lube
#net flood iocontrol.0.coolant-flood
#net mist iocontrol.0.coolant-mist

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

# Создан stepconf в Mon Jan  7 05:57:14 2002
# Все изменения в этом файле будут перезаписаны
# при следующем запуске stepconf
loadrt trivkins
loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES
loadrt probe_parport
loadrt hal_parport cfg="0x378 out"
setp parport.0.reset-time 5000
loadrt stepgen step_type=0,0,0
loadrt abs count=1

# add debounce component after all loadrt
loadrt debounce cfg=1
# set delay (number of iterations of base thread )
setp debounce.0.delay 100
# add debounce to thread
addf debounce.0 base-thread


#addf parport.0.read base-thread
addf stepgen.make-pulses base-thread
addf parport.0.write base-thread
addf parport.0.reset base-thread

addf stepgen.capture-position servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
addf stepgen.update-freq servo-thread
addf abs.0 servo-thread
net spindle-cmd <= motion.spindle-speed-out
net spindle-on <= motion.spindle-on

net probe-in => motion.probe-input
net dout-00 <= motion.digital-out-00
net dout-01 <= motion.digital-out-01

net xenable => parport.0.pin-01-out
net xstep => parport.0.pin-02-out
setp parport.0.pin-02-out-reset 1
net ydir => parport.0.pin-03-out
net dout-00 => parport.0.pin-04-out
setp parport.0.pin-05-out-invert 1
net adir => parport.0.pin-05-out
net astep => parport.0.pin-06-out
setp parport.0.pin-06-out-reset 1
net zstep => parport.0.pin-07-out
setp parport.0.pin-07-out-reset 1
setp parport.0.pin-08-out-invert 1
net zdir => parport.0.pin-08-out
net spindle-on => parport.0.pin-09-out
net xdir => parport.0.pin-14-out
net ystep => parport.0.pin-16-out
setp parport.0.pin-16-out-reset 1
net dout-01 => parport.0.pin-17-out


net all-limit <= parport.0.pin-10-in-not
net probe-in <= parport.0.pin-11-in
net all-home <= parport.0.pin-12-in-not
net estop-ext <= parport.0.pin-15-in-not


setp stepgen.0.position-scale [AXIS_0]INPUT_SCALE
setp stepgen.0.steplen 1
setp stepgen.0.stepspace 0
setp stepgen.0.dirhold 45000
setp stepgen.0.dirsetup 45000
setp stepgen.0.maxaccel [AXIS_0]STEPGEN_MAXACCEL
net xpos-cmd axis.0.motor-pos-cmd => stepgen.0.position-cmd
net xpos-fb stepgen.0.position-fb => axis.0.motor-pos-fb
net xstep <= stepgen.0.step
net xdir <= stepgen.0.dir
net xenable axis.0.amp-enable-out => stepgen.0.enable
net all-home => axis.0.home-sw-in
net all-limit => axis.0.neg-lim-sw-in
net all-limit => axis.0.pos-lim-sw-in

setp stepgen.1.position-scale [AXIS_1]INPUT_SCALE
setp stepgen.1.steplen 1
setp stepgen.1.stepspace 0
setp stepgen.1.dirhold 45000
setp stepgen.1.dirsetup 45000
setp stepgen.1.maxaccel [AXIS_1]STEPGEN_MAXACCEL
net ypos-cmd axis.1.motor-pos-cmd => stepgen.1.position-cmd
net ypos-fb stepgen.1.position-fb => axis.1.motor-pos-fb
net ystep <= stepgen.1.step
net ydir <= stepgen.1.dir
net yenable axis.1.amp-enable-out => stepgen.1.enable
net all-home => axis.1.home-sw-in
net all-limit => axis.1.neg-lim-sw-in
net all-limit => axis.1.pos-lim-sw-in

setp stepgen.2.position-scale [AXIS_2]INPUT_SCALE
setp stepgen.2.steplen 1
setp stepgen.2.stepspace 0
setp stepgen.2.dirhold 45000
setp stepgen.2.dirsetup 45000
setp stepgen.2.maxaccel [AXIS_2]STEPGEN_MAXACCEL
net zpos-cmd axis.2.motor-pos-cmd => stepgen.2.position-cmd
net zpos-fb stepgen.2.position-fb => axis.2.motor-pos-fb
net zstep <= stepgen.2.step
net zdir <= stepgen.2.dir
net zenable axis.2.amp-enable-out => stepgen.2.enable
net all-home => axis.2.home-sw-in
net all-limit => axis.2.neg-lim-sw-in
net all-limit => axis.2.pos-lim-sw-in

#net estop-out <= iocontrol.0.user-enable-out
#net estop-ext => iocontrol.0.emc-enable-in

loadusr -W hal_manualtoolchange
net tool-change iocontrol.0.tool-change => hal_manualtoolchange.change
net tool-changed iocontrol.0.tool-changed <= hal_manualtoolchange.changed
net tool-number iocontrol.0.tool-prep-number => hal_manualtoolchange.number
net tool-prepare-loopback iocontrol.0.tool-prepare => iocontrol.0.tool-prepared

Аватара пользователя
verser
Мастер
Сообщения: 1903
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy с нуля.

Сообщение verser »

Попробуйте раскомментировать эту строчку в .hal

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

#addf parport.0.read base-thread
sancta
Кандидат
Сообщения: 53
Зарегистрирован: 31 окт 2013, 11:20
Репутация: 8
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy с нуля.

Сообщение sancta »

спасибо,помогло!
но estop не работает

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

net estop-out <= iocontrol.0.user-enable-out
net estop-ext => iocontrol.0.emc-enable-in

#estop loopback
net estop-loop iocontrol.0.user-enable-out iocontrol.0.emc-enable-in
на последнюю жалуется - говорит что "pin iocontrol.0.user-enable-out" was already linked to signal "estop-out"
в примере всё также, но работает :thinking:
Аватара пользователя
verser
Мастер
Сообщения: 1903
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy с нуля.

Сообщение verser »

Попробуйте вместо всего, что Вы показали, так написать

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

net estop-ext <= parport.0.pin-15-in-not
net estop-ext => iocontrol.0.emc-enable-in
(здесь соединение с кнопкой нормально-замкнутое)
вместо parport.0.pin-15 поставьте свой пин.
sancta
Кандидат
Сообщения: 53
Зарегистрирован: 31 окт 2013, 11:20
Репутация: 8
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy с нуля.

Сообщение sancta »

да - estop-loop убрал и вроде заработало всё. Спасибо!
Кроме дополнений.

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

sudo apt-get install glade
поставило мне версию 3.12.1
а в меню приложений -разработка у меня уже висела версия 3.8.0
и python поставился 2.7
дальше всё делал строго по инструкциям. Панели не появились. На старте не ругается. Куда смотреть?

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

[DISPLAY]
DISPLAY = gmoccapy
EMBED_TAB_NAME = features
EMBED_TAB_LOCATION = box_right
EMBED_TAB_COMMAND = gladevcp -x {XID} features_gmoccapy.glade
EMBED_TAB_NAME = my_new_panel
EMBED_TAB_LOCATION = box_custom_2
EMBED_TAB_COMMAND = gladevcp -x {XID} -u compensation_z.py -H compensation_z.hal compensation_z.glade
EMBED_TAB_NAME = progress_g_code_panel
EMBED_TAB_LOCATION = box_custom_4
EMBED_TAB_COMMAND = gladevcp -x {XID} -u progress.py progress.glade
с утра запустил с терминала

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

Starting LinuxCNC...
.
/usr/bin/gmoccapy:147: GtkWarning: IA__gtk_entry_set_text: assertion `text != NULL' failed
  self.builder.add_from_file(XMLNAME)
**** GMOCCAPY GETINIINFO **** 
 Preference file path: /home/sancta/linuxcnc/configs/sim.gmoccapy/gmoccapy_4_axis.pref
[]
/usr/bin/gmoccapy:227: GtkWarning: Invalid icon size 48

  self.widgets.window1.show()
**** GMOCCAPY INFO ****
**** gmoccapy screen 2 found ****
**** GMOCCAPY INFO ****
**** audio available! ****
**** GMOCCAPY ERROR ****
**** No virtual keyboard installed, we checked for <onboard> and <matchbox-keyboard>.

(gladevcp:4673): libglade-WARNING **: could not find glade file 'features_gmoccapy.glade'
**** GLADE VCP ERROR:    With xml file: features_gmoccapy.glade : could not create GladeXML object

(gladevcp:4674): libglade-WARNING **: could not find glade file 'compensation_z.glade'
**** GLADE VCP ERROR:    With xml file: compensation_z.glade : could not create GladeXML object

(gladevcp:4675): libglade-WARNING **: could not find glade file 'progress.glade'
**** GLADE VCP ERROR:    With xml file: progress.glade : could not create GladeXML object
**** GMOCCAPY INFO ****
**** no valid probe config in INI File ****
**** disabled tool measurement ****
******************************* Gcode.lang found

(gmoccapy:4666): GtkSourceView-CRITICAL **: gtk_source_language_manager_set_search_path: assertion `lm->priv->ids == NULL' failed
**** GMOCCAPY INFO : inifile = /home/sancta/linuxcnc/configs/sim.gmoccapy/gmoccapy_4_axis.ini ****:
**** GMOCCAPY INFO : postgui halfile = None ****:

Еще вот эта команда не отработала

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

. ./scripts/rip-environment
писала что файла нет. Я нашел этот файл в /home/sancta/linuxcnc-dev/scripts, но он там тоже запускаться отказывается. Может в этом проблема?
Аватара пользователя
verser
Мастер
Сообщения: 1903
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy с нуля.

Сообщение verser »

sancta писал(а):с утра запустил с терминала
А как выглядит строка запуска с терминала можно глянуть?
sancta
Кандидат
Сообщения: 53
Зарегистрирован: 31 окт 2013, 11:20
Репутация: 8
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy с нуля.

Сообщение sancta »

на рабочем столе ярлык - в нем

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

/usr/bin/linuxcnc '/home/sancta/linuxcnc/configs/sim.gmoccapy/gmoccapy_4_axis.ini'
и галочка "Выполнить в терминале"
судя по всему не находит файлы glade - раз rip-environment не сработал, в этом и может быть проблема?
Аватара пользователя
verser
Мастер
Сообщения: 1903
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy с нуля.

Сообщение verser »

sancta писал(а):на рабочем столе ярлык - в нем...
Получается, что не совсем по инструкции ставили, там еще установка linuxcnc из исходников расписана, или выбрали конфигурацию не из sim. Может, можно в новых версиях и для вашего случая всё подключить, только я еще так не делал, и такой инструкции пока нет.
Вот это должно быть в ярлыке на рабочем столе

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

~/linuxcnc-dev/scripts/linuxcnc '/home/sancta/linuxcnc-dev/configs/sim/gmoccapy/gmoccapy_4_axis.ini'
sancta
Кандидат
Сообщения: 53
Зарегистрирован: 31 окт 2013, 11:20
Репутация: 8
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy с нуля.

Сообщение sancta »

доброе всем!
крокодил не ловится. Всё вроде по инструкции, но результата нет.
Из видимых изменений - прогресс бар появился,но похоже не работает

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

LINUXCNC - 2.6.4
Machine configuration directory is '/home/sancta/linuxcnc-dev/configs/sim/gmoccapy'
Machine configuration file is 'gmoccapy_4_axis.ini'
Starting LinuxCNC...
.
/usr/bin/gmoccapy:147: GtkWarning: IA__gtk_entry_set_text: assertion `text != NULL' failed
  self.builder.add_from_file(XMLNAME)
**** GMOCCAPY GETINIINFO **** 
 Preference file path: /home/sancta/linuxcnc-dev/configs/sim/gmoccapy/gmoccapy_4_axis.pref
[]
/usr/bin/gmoccapy:227: GtkWarning: Invalid icon size 48

  self.widgets.window1.show()
**** GMOCCAPY INFO ****
**** gmoccapy screen 2 found ****
**** GMOCCAPY INFO ****
**** audio available! ****
**** GMOCCAPY ERROR ****
**** No virtual keyboard installed, we checked for <onboard> and <matchbox-keyboard>.

(gladevcp:5893): libglade-WARNING **: Expected <glade-interface>.  Got <interface>.

(gladevcp:5893): libglade-WARNING **: did not finish in PARSER_FINISH state
**** GLADE VCP ERROR:    With xml file: features_gmoccapy.glade : could not create GladeXML object
module 'compensation_z' skipped - import error: No module named compensation_z
/usr/bin/gladevcp:212: RuntimeWarning: missing handler 'comp_reset_click'
  builder.connect_signals(handlers)
**** GMOCCAPY GETINIINFO **** 
 Preference file path: /home/sancta/linuxcnc-dev/configs/sim/gmoccapy/gmoccapy_4_axis.pref
gladevcp: trouble looking for handlers in 'progress': iteration over non-sequence
Traceback (most recent call last):
  File "/usr/bin/gladevcp", line 129, in load_handlers
    for object in objlist:
TypeError: iteration over non-sequence
**** GMOCCAPY INFO ****
**** no valid probe config in INI File ****
**** disabled tool measurement ****
******************************* Gcode.lang found

(gmoccapy:5886): GtkSourceView-CRITICAL **: gtk_source_language_manager_set_search_path: assertion `lm->priv->ids == NULL' failed
**** GMOCCAPY INFO : inifile = /home/sancta/linuxcnc-dev/configs/sim/gmoccapy/gmoccapy_4_axis.ini ****:
**** GMOCCAPY INFO : postgui halfile = None ****:
Xlib.protocol.request.QueryExtension
Xlib.protocol.request.QueryExtension
compensation_z.hal:38: Pin 'compensation_z_math.x_map' does not exist
'halcmd -f compensation_z.hal' exited with 1

Аватара пользователя
verser
Мастер
Сообщения: 1903
Зарегистрирован: 21 июл 2013, 22:28
Репутация: 1282
Настоящее имя: Сергей
Откуда: Тбилиси
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy с нуля.

Сообщение verser »

Подключать дополнения лучше по-одному, начиная с простых(Progress, Compensation_Z) и добиться, чтобы заработали.
Далее, при подключении Features, Вам, возможно, в этом месте

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

sudo apt-get install python-lxml 
cd /usr/lib/pymodules/python2.6/gladevcp
ln ~/linuxcnc-dev/lib/python/gladevcp/features.py -s
ln ~/linuxcnc-dev/lib/python/gladevcp/features.glade -s
ln ~/linuxcnc-dev/lib/python/gladevcp/subroutines -s
надо было сделать так

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

sudo apt-get install python-lxml 
cd /usr/lib/pymodules/python2.7/gladevcp
ln ~/linuxcnc-dev/lib/python/gladevcp/features.py -s
ln ~/linuxcnc-dev/lib/python/gladevcp/features.glade -s
ln ~/linuxcnc-dev/lib/python/gladevcp/subroutines -s
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy с нуля.

Сообщение Lexxa »

Кстати недавно обновлял linuxcnc с версии 2.6.3 до версии 2.6.8, решил запустить gmoccapy.
linuxcnc ставил на чистый дебиан вот ссылочка с описнием процесса http://www.cnc-club.ru/forum/viewtopic. ... 120#p39874
Так вот, gmoccapy не запускался и ругался на модуль audiobin или как то там с похожим именем.
Вылечил установкой дополнительных кодеков ubuntu-restricted-extras

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

sudo apt-get install ubuntu-restricted-extras
:bender:
Аватара пользователя
Lexxa
Мастер
Сообщения: 2703
Зарегистрирован: 16 дек 2011, 16:48
Репутация: 319
Настоящее имя: Алексей
Откуда: ryazan
Контактная информация:

Re: [WIKI] Интерфейс Gmoccapy с нуля.

Сообщение Lexxa »

verser писал(а):7.4. Подключение в gmoccapy_4_axis.ini
7.4.1. EMBED_TAB_NAME = сюда любое свое название , обязательно должно присутствовать(на латинице без пробелов без значков, можно подчеркивание).
7.4.2. EMBED_TAB_LOCATION = укзывает положение своей панели.
Варианты:
1 * box_custom_1 (слева от Max Velocity)
2 * box_vel_info (вместо Max Velocity)
3 * box_custom_2 (слева от Cooling)
4 * box_cooling (вместо Cooling)
5 * box_custom_3 (слева от Spindle)
6 * box_spindle (вместо Spindle)
7 * box_custom_4 (справа от Spindle)
8 * ntb_user_tabs ( в закладках)
9 * ntb_preview (вместо Preview экрана)
10 * box_left
11 * box_right
Откуда взялась эта информация?

upd:
Сам спросил, сам ответил

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

 439         # if the INI Config is valid, lets check further on, what to do
 440         if self.get_ini_info.get_embedded_tabs()[1]:
 441             if "ntb_preview" in self.get_ini_info.get_embedded_tabs()[1]:
 442                 self.widgets.ntb_preview.set_property( "show-tabs", True )
 443 
 444             # This is normaly only used for the plasma screen layout
 445             if "box_coolant_and_spindle" in self.get_ini_info.get_embedded_tabs()[1]:
 446                 widgetlist = ["box_spindle", "box_cooling"]
 447                 for widget in widgetlist:
 448                     self.widgets[widget].hide()
 449                 self.widgets.tbtn_user_tabs.set_sensitive( False )
 450 
 451             if "box_cooling" in self.get_ini_info.get_embedded_tabs()[1]:
 452                 widgetlist = ["frm_cooling"]
 453                 for widget in widgetlist:
 454                     self.widgets[widget].hide()
 455 
 456             if "box_spindle" in self.get_ini_info.get_embedded_tabs()[1]:
 457                 widgetlist = ["frm_spindle"]
 458                 for widget in widgetlist:
 459                     self.widgets[widget].hide()
 460 
 461             if "box_vel_info" in self.get_ini_info.get_embedded_tabs()[1]:
 462                 widgetlist = ["frm_max_vel", "frm_feed_override"]
 463                 for widget in widgetlist:
 464                     self.widgets[widget].hide()
 465 
 466             if "box_custom_1" in self.get_ini_info.get_embedded_tabs()[1]:
 467                 self.widgets.box_custom_1.show()
 468 
 469             if "box_custom_2" in self.get_ini_info.get_embedded_tabs()[1]:
 470                 self.widgets.box_custom_2.show()
 471 
 472             if "box_custom_3" in self.get_ini_info.get_embedded_tabs()[1]:
 473                 self.widgets.box_custom_3.show()
 474 
 475             if "box_custom_4" in self.get_ini_info.get_embedded_tabs()[1]:
 476                 self.widgets.box_custom_4.show()
 477 
 478             if "box_tool_and_code_info" in self.get_ini_info.get_embedded_tabs()[1]:
 479                 widgetlist = ["frm_tool_info", "active_speed_label", "lbl_speed", "box_vel_info"]
 480                 for widget in widgetlist:
 481                     self.widgets[widget].hide()
 482                 self.widgets.btn_tool.set_sensitive( False )
 483                 self.widgets.tbtn_user_tabs.set_sensitive( False )
Тогда вынужден поправить)
ntb_preview
box_coolant_and_spindle - вместо всей ячейки "coolant + custom 3 + шпиндель", причем если внутри пользовательской сделать box_custom_3, то скорее всего и она будет работать
box_cooling - вместо cooling
box_spindle - вместо шпинделя
box_vel_info - вместо Feed oveeride и Max Vel
box_custom_1 - между "T + M + P info" и "V + F"
box_custom_2 - между "V + F" и box_cooling
box_custom_3 - между box_cooling и box_spindle
box_custom_4 - справа от box_spindle
box_tool_and_code_info - вместо информации об инструменте, прграмме и активных G кодах
box_right - по всей высоте слева от предпросмотра
box_left - по всей высоте слева от вертикальных кнопок
ntb_user_tabs - в закладках
ntb_preview - вместо предпросотра
Последний раз редактировалось Lexxa 19 июн 2015, 21:54, всего редактировалось 1 раз.
:bender:
Ответить

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