Настройка LinuxCNC на PLC330
-
Saver
- Новичок
- Сообщения: 16
- Зарегистрирован: 05 мар 2017, 00:52
- Репутация: 0
- Настоящее имя: Андрей
- Контактная информация:
Настройка LinuxCNC на PLC330
Всем привет. Это мое первое знакомство с LinuxCNC и с Linux вообще. Контроллер Purelogic PLC330. Создал простую конфигурацию в Stepconf . В настройках порта нет концевиков, Estop, шпинделя и тд. Только включение на 1 пине, дальше step/dir. В режиме тестирования осей все оси крутятся. При запуске программы с данной конфигурацией, при ручном управлении, координаты меняются, а двигатели молчат. Подскажите куда копать.
- solo
- Мастер
- Сообщения: 1374
- Зарегистрирован: 20 окт 2011, 18:39
- Репутация: 272
- Настоящее имя: Юрий Соловьев
- Откуда: Украина Харьков
- Контактная информация:
Re: Настройка LinuxCNC на PLC330
может сигнал энаблле надо инвертировать , в степ конфиге сигнал энабле называется "включение усилителя" , который назначается на соответствующий пин лпт
-
Saver
- Новичок
- Сообщения: 16
- Зарегистрирован: 05 мар 2017, 00:52
- Репутация: 0
- Настоящее имя: Андрей
- Контактная информация:
Re: Настройка LinuxCNC на PLC330
Не помогает. При инвертировании тест тоже не работает. Замерил напряжение на 1-м пине: при включении теста - щелчок реле, напряжение 5В, движки крутятся. В самой проге - напряжение 0, нет включения реле.
- solo
- Мастер
- Сообщения: 1374
- Зарегистрирован: 20 окт 2011, 18:39
- Репутация: 272
- Настоящее имя: Юрий Соловьев
- Откуда: Украина Харьков
- Контактная информация:
Re: Настройка LinuxCNC на PLC330
да просто создай конфиг , настрой там все пины ЛПТ и попробуй запусти эту конфигурацию с ярлыка на рабочем столе , если двигатели не работают , то заходишь в редактирование степконфига и там просто инвертируем пин энабле , сохраняем новую конфигурацию и пробуешь по новой запускать с ярлычка на рабочем столе.
-
Saver
- Новичок
- Сообщения: 16
- Зарегистрирован: 05 мар 2017, 00:52
- Репутация: 0
- Настоящее имя: Андрей
- Контактная информация:
Re: Настройка LinuxCNC на PLC330
Так и делаю. Не работает - двигатели не крутятся. Двигатели крутятся только в тесте без инвертации.
-
Saver
- Новичок
- Сообщения: 16
- Зарегистрирован: 05 мар 2017, 00:52
- Репутация: 0
- Настоящее имя: Андрей
- Контактная информация:
Re: Настройка LinuxCNC на PLC330
Ничего не меняется. Подскажите, что не так. Вот конфигурация:
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Настройка LinuxCNC на PLC330
для ясности .hal и .ini файлы нужны
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Настройка LinuxCNC на PLC330
пробуй так:
Код: Выделить всё
# Generated by stepconf 1.1 at Sun Mar 5 20:57:56 2017
# Все изменения в этом файле будут перезаписаны
# при следующем запуске stepconf
loadrt trivkins
loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES
loadrt hal_parport cfg="0x0378"
#loadrt sim_parport names=parport.0
loadrt stepgen step_type=0,0,0,0
addf parport.0.read base-thread
#source sim_hardware.hal
addf stepgen.make-pulses base-thread
addf parport.0.write base-thread
addf stepgen.capture-position servo-thread
addf sim-hardware.update servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
addf stepgen.update-freq servo-thread
net spindle-cmd-rpm <= motion.spindle-speed-out
net spindle-cmd-rpm-abs <= motion.spindle-speed-out-abs
net spindle-cmd-rps <= motion.spindle-speed-out-rps
net spindle-cmd-rps-abs <= motion.spindle-speed-out-rps-abs
net spindle-at-speed => motion.spindle-at-speed
net xenable => parport.0.pin-01-out
net xstep => parport.0.pin-02-out
net astep => parport.0.pin-03-out
net ystep => parport.0.pin-04-out
net zstep => parport.0.pin-05-out
net xdir => parport.0.pin-06-out
net adir => parport.0.pin-07-out
net ydir => parport.0.pin-08-out
net zdir => parport.0.pin-09-out
setp stepgen.0.position-scale [AXIS_0]SCALE
setp stepgen.0.steplen 1
setp stepgen.0.stepspace 1
setp stepgen.0.dirhold 30000
setp stepgen.0.dirsetup 30000
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
setp stepgen.1.position-scale [AXIS_1]SCALE
setp stepgen.1.steplen 1
setp stepgen.1.stepspace 1
setp stepgen.1.dirhold 30000
setp stepgen.1.dirsetup 30000
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
setp stepgen.2.position-scale [AXIS_2]SCALE
setp stepgen.2.steplen 1
setp stepgen.2.stepspace 1
setp stepgen.2.dirhold 30000
setp stepgen.2.dirsetup 30000
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
setp stepgen.3.position-scale [AXIS_3]SCALE
setp stepgen.3.steplen 1
setp stepgen.3.stepspace 1
setp stepgen.3.dirhold 30000
setp stepgen.3.dirsetup 30000
setp stepgen.3.maxaccel [AXIS_3]STEPGEN_MAXACCEL
net apos-cmd axis.3.motor-pos-cmd => stepgen.3.position-cmd
net apos-fb stepgen.3.position-fb => axis.3.motor-pos-fb
net astep <= stepgen.3.step
net adir <= stepgen.3.dir
net aenable axis.3.amp-enable-out => stepgen.3.enable
net estop-out <= iocontrol.0.user-enable-out
net estop-out => 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-
Saver
- Новичок
- Сообщения: 16
- Зарегистрирован: 05 мар 2017, 00:52
- Репутация: 0
- Настоящее имя: Андрей
- Контактная информация:
Re: Настройка LinuxCNC на PLC330
Если просто заменить, то выдает ошибку(на фото).
Если зайди в Stepconfig и ничего не меняя пролистать, то запускается, но шд молчат (в тесте тоже кстати).
Если зайди в Stepconfig и ничего не меняя пролистать, то запускается, но шд молчат (в тесте тоже кстати).
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Настройка LinuxCNC на PLC330
Код: Выделить всё
# Generated by stepconf 1.1 at Sun Mar 5 20:57:56 2017
# Все изменения в этом файле будут перезаписаны
# при следующем запуске stepconf
loadrt trivkins
loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES
loadrt hal_parport cfg="0x0378"
#loadrt sim_parport names=parport.0
loadrt stepgen step_type=0,0,0,0
addf parport.0.read base-thread
#source sim_hardware.hal
addf stepgen.make-pulses base-thread
addf parport.0.write base-thread
addf stepgen.capture-position servo-thread
#addf sim-hardware.update servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
addf stepgen.update-freq servo-thread
net spindle-cmd-rpm <= motion.spindle-speed-out
net spindle-cmd-rpm-abs <= motion.spindle-speed-out-abs
net spindle-cmd-rps <= motion.spindle-speed-out-rps
net spindle-cmd-rps-abs <= motion.spindle-speed-out-rps-abs
net spindle-at-speed => motion.spindle-at-speed
net xenable => parport.0.pin-01-out
net xstep => parport.0.pin-02-out
net astep => parport.0.pin-03-out
net ystep => parport.0.pin-04-out
net zstep => parport.0.pin-05-out
net xdir => parport.0.pin-06-out
net adir => parport.0.pin-07-out
net ydir => parport.0.pin-08-out
net zdir => parport.0.pin-09-out
setp stepgen.0.position-scale [AXIS_0]SCALE
setp stepgen.0.steplen 1
setp stepgen.0.stepspace 1
setp stepgen.0.dirhold 30000
setp stepgen.0.dirsetup 30000
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
setp stepgen.1.position-scale [AXIS_1]SCALE
setp stepgen.1.steplen 1
setp stepgen.1.stepspace 1
setp stepgen.1.dirhold 30000
setp stepgen.1.dirsetup 30000
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
setp stepgen.2.position-scale [AXIS_2]SCALE
setp stepgen.2.steplen 1
setp stepgen.2.stepspace 1
setp stepgen.2.dirhold 30000
setp stepgen.2.dirsetup 30000
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
setp stepgen.3.position-scale [AXIS_3]SCALE
setp stepgen.3.steplen 1
setp stepgen.3.stepspace 1
setp stepgen.3.dirhold 30000
setp stepgen.3.dirsetup 30000
setp stepgen.3.maxaccel [AXIS_3]STEPGEN_MAXACCEL
net apos-cmd axis.3.motor-pos-cmd => stepgen.3.position-cmd
net apos-fb stepgen.3.position-fb => axis.3.motor-pos-fb
net astep <= stepgen.3.step
net adir <= stepgen.3.dir
net aenable axis.3.amp-enable-out => stepgen.3.enable
net estop-out <= iocontrol.0.user-enable-out
net estop-out => 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-
Saver
- Новичок
- Сообщения: 16
- Зарегистрирован: 05 мар 2017, 00:52
- Репутация: 0
- Настоящее имя: Андрей
- Контактная информация:
Re: Настройка LinuxCNC на PLC330
Не работает, в тесте тоже тишина.
- solo
- Мастер
- Сообщения: 1374
- Зарегистрирован: 20 окт 2011, 18:39
- Репутация: 272
- Настоящее имя: Юрий Соловьев
- Откуда: Украина Харьков
- Контактная информация:
Re: Настройка LinuxCNC на PLC330
если ты берешь готовый хел фай и проводишь тест в степ конфиге то содержимое хел меняется.Saver писал(а):Не работает, в тесте тоже тишина.
то есть если берешь хел с форума то этот хел файл надо скопировать в папку с твоей конфигурацией станка с заменой !!!!!! , или отредактировать свой хел фай в текстовом редакторе , тогда запускать с ярлыка на рабочем столе и проверять на работоспособность
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Настройка LinuxCNC на PLC330
давай больше информацииSaver писал(а):Не работает, в тесте тоже тишина.
тишина бывает разной))
===========
я так понял - емс с последним конфигом запускается ,не ругается... просто моторы не крутятся? так?
============
у тебя пока был enable только на ось X
--------
-
Saver
- Новичок
- Сообщения: 16
- Зарегистрирован: 05 мар 2017, 00:52
- Репутация: 0
- Настоящее имя: Андрей
- Контактная информация:
Re: Настройка LinuxCNC на PLC330
Все правильно, не ругается, сразу запустил с ярлыка на рабочем столе. Координаты меняются - моторы не крутятся. Проверял и по X и по остальным.
-
nkp
- Мастер
- Сообщения: 8340
- Зарегистрирован: 28 ноя 2011, 00:25
- Репутация: 1589
- Контактная информация:
Re: Настройка LinuxCNC на PLC330
вот здесь открывается Halshow
это просмотр всех твоих пинов открой вкладку "Pins" (как на скрине) и посмотри - есть там компонент(слово) parport
если есть (но не наботает ):
проверь как обзывается параллельный порт в твоей системе(сейчас прописан 0x378)
у тебя может быть другой
============
если с портом всё нормально - смотреть распиновку
это просмотр всех твоих пинов открой вкладку "Pins" (как на скрине) и посмотри - есть там компонент(слово) parport
если есть (но не наботает ):
проверь как обзывается параллельный порт в твоей системе(сейчас прописан 0x378)
у тебя может быть другой
============
если с портом всё нормально - смотреть распиновку
- solo
- Мастер
- Сообщения: 1374
- Зарегистрирован: 20 окт 2011, 18:39
- Репутация: 272
- Настоящее имя: Юрий Соловьев
- Откуда: Украина Харьков
- Контактная информация:
Re: Настройка LinuxCNC на PLC330
может собака здесь порылась , а степ конфиг просто не может инвертировать сигнал энаблеSaver писал(а): Замерил напряжение на 1-м пине: при включении теста - щелчок реле, напряжение 5В, движки крутятся. В самой проге - напряжение 0, нет включения реле
- N1X
- Мастер
- Сообщения: 3653
- Зарегистрирован: 16 фев 2015, 21:19
- Репутация: 1646
- Настоящее имя: Владимир
- Откуда: Беларусь, Гомель
- Контактная информация:
Re: Настройка LinuxCNC на PLC330
Чтобы с enable не было непоняток его вообще аппаранто нужно завесить в нужный уровень. А потом вернуться к нему, когда все остальрое будет нормально.
-
Saver
- Новичок
- Сообщения: 16
- Зарегистрирован: 05 мар 2017, 00:52
- Репутация: 0
- Настоящее имя: Андрей
- Контактная информация:
Re: Настройка LinuxCNC на PLC330
Адрес порта 0378-037a : parport0
- solo
- Мастер
- Сообщения: 1374
- Зарегистрирован: 20 окт 2011, 18:39
- Репутация: 272
- Настоящее имя: Юрий Соловьев
- Откуда: Украина Харьков
- Контактная информация:
Re: Настройка LinuxCNC на PLC330
может на первый пин завести сигнал включение шпинделя и проверить при включенном или выключенном шпинделе будут работать ШД