Почему то задержка возникает при запуске linuxcnc.
Если запускается без этой ошибки, то потом она не появляется, т.е. появиться она может только при старте. В процессе работы все норм
mmv писал(а): ↑
Почему то задержка возникает при запуске linuxcnc.
Если запускается без этой ошибки, то потом она не появляется, т.е. появиться она может только при старте. В процессе работы все норм
Я правильно понимаю что BASE_THREAD нужен для того что бы генерировать импульсы на параллельном порту ?
Так как при использовании плат эту функцию берет на себя ПЛИС на main-платe зачем мы его вообще запускаем ?
EMCMOT возможно запустить только с servo-thread ?
BASE_THREAD - достаточно ресурсоемкий процесс плюс еще и не нужный.
Я правильно понимаю как это работает ?
net cnc-ok => pid.x.enable #разрешение вычисления X
net x-output <= pid.x.output
net x-pos-cmd <= pid.x.command
net x-pos-fb => pid.x.feedback
net x-pos-cmd axis.0.motor-pos-cmd
#============== FEED BACK X ================
setp to_pci.1.feedback.enc_scale1 [AXIS_0]ENCODER_SCALE
net x-pos-fb <= to_pci.1.feedback.encoder1
net x-pos-fb => axis.0.motor-pos-fb
#============== command X ================
setp to_pci.1.PWM.out_scale1 [AXIS_0]OUTPUT_SCALE
net x-output => to_pci.1.PWM.dcontrol1 #управление X
net home-x => axis.0.home-sw-in
net min-x => axis.0.neg-lim-sw-in
net max-x => axis.0.pos-lim-sw-in
# ################
# Z [2] Axis
# ################
net cnc-ok => pid.z.enable
net z-output => pid.z.output
net z-pos-cmd => pid.z.command
net z-pos-fb => pid.z.feedback
net z-pos-cmd axis.2.motor-pos-cmd
#============== FEED BACK Z================
setp to_pci.1.feedback.enc_scale0 [AXIS_2]ENCODER_SCALE
net z-pos-fb <= to_pci.1.feedback.encoder0
net z-pos-fb => axis.2.motor-pos-fb
#============== command Z================
setp to_pci.1.PWM.out_scale0 [AXIS_2]OUTPUT_SCALE
net z-output => to_pci.1.PWM.dcontrol0 #управление Z
net home-z => axis.2.home-sw-in
net min-z => axis.2.neg-lim-sw-in
net max-z => axis.2.pos-lim-sw-in
# ################
# SPINDLE
# ################
net spindle-vel-cmd-rps <= motion.spindle-speed-out-rps
net spindle-vel-cmd <= motion.spindle-speed-out
net spindle-enable <= motion.spindle-on
net spindle-cw <= motion.spindle-forward
net spindle-ccw <= motion.spindle-reverse
net spindle-brake <= motion.spindle-brake
net spindle-revs => motion.spindle-revs
#net spindle-at-speed => motion.spindle-at-speed
net spindle-enable => motion.spindle-at-speed
net spindle-index-enable <=> motion.spindle-index-enable
#============== FEED BACK S================
setp to_pci.1.feedback.enc_scale2 [SPINDLE]ENCODER_SCALE
net spindle-revs <= to_pci.1.feedback.encoder3
net spindle-index-enable <=> to_pci.1.feedback.index_en3
#============== command S================
net spindle-vel-cmd => scale.gear.in
net Spindle-motor-command scale.gear.out => to_pci.1.PWM.dcontrol2
Это сигнал блокировки от внутреннего сторожевого таймера(буква n в конце означает инверсный). Значение true нормальное. При значении false контроллер встаёт в блокировку выходов. Все выходы отключаются или становятся нулевыми.
иными словами, его можно завязать на общее реле, чтоб обесточивало все пускатели при закрытии программы? Просто при отключении компа происходит кратковременное самопроизвольное срабатывание релюшек на выходах out, хочу завести их через реле с аппаратной задержкой в секунду, а реле запитать сигналом вачдога
Приветствую. Прошу помощи в настройке платы Pcicd. Как я понял сигналы STEP и DIR генерируются на физвыходы по умолчанию и в HALe не прописываются. Активация генерации происходит при подаче на пин outstepN сигнала от 0 до 10 (-10) В и enable_drive = true. Сигналы +-10 В подаются с PID (x-output). Обратная связь идет с внутреннего счетчика перемещения countN (step_dir.count ==> x-pos-fb). Длительность импульса STEP ставлю 2, invert_dirN=0, escaleN = 100 ..... и ничего не происходит (движения нет step_dir.count = 0). Драйвер шагового подключен по схеме со свободным коллектором, +5 В беру с платы step_dir. пускаю на драйвер и возвращаю на входы step/dir. Драйвера ставил разных версий, ничего не помогает, короче ХЗ как это работает, помогите разобраться.
Как я понял, потенциально плата похожа на месу. То есть можно попробовать сделать с помощью pncconf конфиг для месы, а потом ручками поменять физические пины на те, что у вас используются, и потом уже дорабатывать вручную. Какую плату месы тогда можно выбрать для генерации образца, какая больше похожа на вашу (pci sd)?
Просто с нуля писать - это на порядок сложнее, если никогда таким не занимался, а имея некий образец, будет в разы легче.
ebragim писал(а): ↑17 ноя 2021, 17:20
Просто с нуля писать - это на порядок сложнее, если никогда таким не занимался, а имея некий образец, будет в разы легче.
так есть же пример конфига, зачем заниматься самописным конфигом после генератора вообще для другой системы. На месе не так делается.
SDRF писал(а): ↑17 ноя 2021, 16:09
Приветствую. Прошу помощи в настройке платы Pcicd.
конфиг приложите, скорее всего что-то не так указали.
SDRF писал(а): ↑
Приветствую. Прошу помощи в настройке платы Pcicd. Как я понял сигналы STEP и DIR генерируются на физвыходы по умолчанию и в HALe не прописываются. Активация генерации происходит при подаче на пин outstepN сигнала от 0 до 10 (-10) В и enable_drive = true. Сигналы +-10 В подаются с PID (x-output). Обратная связь идет с внутреннего счетчика перемещения countN (step_dir.count ==> x-pos-fb). Длительность импульса STEP ставлю 2, invert_dirN=0, escaleN = 100 ..... и ничего не происходит (движения нет step_dir.count = 0). Драйвер шагового подключен по схеме со свободным коллектором, +5 В беру с платы step_dir. пускаю на драйвер и возвращаю на входы step/dir. Драйвера ставил разных версий, ничего не помогает, короче ХЗ как это работает, помогите разобраться.
Доброго дня, опишите на каком ядре всё это работает(RTAI,RT), какой драйвер.
SDRF писал(а): ↑
Приветствую. Прошу помощи в настройке платы Pcicd. Как я понял сигналы STEP и DIR генерируются на физвыходы по умолчанию и в HALe не прописываются. Активация генерации происходит при подаче на пин outstepN сигнала от 0 до 10 (-10) В и enable_drive = true. Сигналы +-10 В подаются с PID (x-output). Обратная связь идет с внутреннего счетчика перемещения countN (step_dir.count ==> x-pos-fb). Длительность импульса STEP ставлю 2, invert_dirN=0, escaleN = 100 ..... и ничего не происходит (движения нет step_dir.count = 0). Драйвер шагового подключен по схеме со свободным коллектором, +5 В беру с платы step_dir. пускаю на драйвер и возвращаю на входы step/dir. Драйвера ставил разных версий, ничего не помогает, короче ХЗ как это работает, помогите разобраться.
Доброго дня, опишите на каком ядре всё это работает(RTAI,RT), какой драйвер.
Не особо шарю, но вроде RT,
Драйвера разные пробовал в данное время Version 3.42