Страница 48 из 57

Re: Токарный 1К62 переделанный под ЧПУ!

Добавлено: 30 авг 2021, 18:26
ex71
Рамиль Сафиуллин писал(а): это связано как то с тем что у них общий плюс
что-то вы там не так делаете с этим электроником, поэтому пол года не можете станок запустить. Общие плюсы у ВСЕХ датчиков. И это не мешает ЧПУ работать без всяких доп. диодов.
Какие диоды светятся на какой плате? На месе нет светодиодов, на плате револьверки их тоже нет. шоващепроисходит?

Re: Токарный 1К62 переделанный под ЧПУ!

Добавлено: 30 авг 2021, 19:05
xenon-alien
Screenshot_2021-08-30-19-07-38.png (1090 просмотров) <a class='original' href='./download/file.php?id=197725&mode=view' target=_blank>Загрузить оригинал (2.2 МБ)</a>
ex71 писал(а): На месе нет светодиодов
На 7i96 есть на каждом входе по 2 и 1 на выходе. Индикация работы, как в ХАЛ сигналах, только в живую.
Вот на работе запускал недавно.
Аварийку отжал и контактор на выходе замкнуло.
+ 3 PNP NC датчика подключены.
В итоге 5 диодов светится.
В LCNC нажму поувер (F2), то реле подаст Enable на драйвера. и это уже 6.

Re: Токарный 1К62 переделанный под ЧПУ!

Добавлено: 30 авг 2021, 19:13
D.L.
Рамиль Сафиуллин писал(а): а остальные слабо-слабо.
Рамиль Сафиуллин писал(а): Тестер за 10К глючил
Вот и выяснилось что тестер за 10к не глючил, а показывал наводки.

Re: Токарный 1К62 переделанный под ЧПУ!

Добавлено: 30 авг 2021, 20:29
ex71
pull-down попробовал бы я
и ваще
It is a good Idea always using Normally closed and change the logic as required, this can help to deal with noise environments.

Re: Токарный 1К62 переделанный под ЧПУ!

Добавлено: 31 авг 2021, 18:17
Рамиль Сафиуллин
ex71 писал(а): что-то вы там не так делаете с этим электроником, поэтому пол года не можете станок запустить
Согласен… эх… знали бы что делать
Но главное это не стоять на месте,,, он не каждый день приходит, когда приходит, мы продвигаемся на пол шага, даже голову пытались разобрать, чтобы понять что там внутри..

Re: Токарный 1К62 переделанный под ЧПУ!

Добавлено: 31 авг 2021, 21:05
tokarka63
Рамиль Сафиуллин писал(а): даже голову пытались разобрать, чтобы понять что там внутри..
И что там внутри (тоже интересно) фото не делали?

Re: Токарный 1К62 переделанный под ЧПУ!

Добавлено: 31 авг 2021, 22:48
Рамиль Сафиуллин
Вот что.. сегодня выяснили что лишние сигналы это наводки, сигнальные кабеля идут вместе с силовыми в одной гофре, пробовали делить общий плюс а также все кабеля по отдельности пустили (силовые и сигнальные)
Все равно есть какие то помехи

Re: Токарный 1К62 переделанный под ЧПУ!

Добавлено: 31 авг 2021, 22:51
Рамиль Сафиуллин
К вечеру уже голова толком не соображала, дальше не смогли ничего сделать.
Фотки получились не очень.. но сигнал где больше зелёного, он более “грязный”

Re: Токарный 1К62 переделанный под ЧПУ!

Добавлено: 31 авг 2021, 23:35
kfmut
"Наводками" можно наковырять 1-2мА тока, чтобы отработали оптопары на входах месы?

Re: Токарный 1К62 переделанный под ЧПУ!

Добавлено: 01 сен 2021, 13:08
tokarka63
Так и не понял, что за датчики там стоят.....на фото виден (наверное магнит), т.е. получаются датчики холла, но у них питание 5в.....если индуктивные, то вообще не понятно как они работают в металлическом корпусе или он пластиковый?

По картинкам с HAL-скоп, вообще не понятно откуда там помехи или это не он?)

Re: Токарный 1К62 переделанный под ЧПУ!

Добавлено: 01 сен 2021, 13:19
kfmut
tokarka63 писал(а): т.е. получаются датчики холла, но у них питание 5в
Да там разные есть датчики, tle4905, дешёво, напруга до 32В, открытый коллектор https://www.chipdip.ru/product/tle4905l

Re: Токарный 1К62 переделанный под ЧПУ!

Добавлено: 01 сен 2021, 13:20
Рамиль Сафиуллин
на хал сколе, мы включаем питание 380 и появляются эту шумы,
датчик в пластмассовом корпусе, магнит вроде да.
tokarka63 писал(а): т.е. получаются датчики холла, но у них питание 5в.....если индуктивные
не знаю,разбираемся еще.
по 3 часа в день 2 раза в неделю получается заниматься этим, не больше.
поэтому так долго все идет..

Re: Токарный 1К62 переделанный под ЧПУ!

Добавлено: 01 сен 2021, 13:46
Kost_irk
Рамиль Сафиуллин писал(а): К вечеру уже голова толком не соображала, дальше не смогли ничего сделать.
Фотки получились не очень.. но сигнал где больше зелёного, он более “грязный”
Какая-то хрень у вас там происходит, что-то неправильно подключено. На общий контакт входов месы что подключено? Это вход COM нижнего ряда, если что. Для вашего случая там питание должно быть.
Для тех, кто понимает
20210901_184202.jpg (942 просмотра) <a class='original' href='./download/file.php?id=197769&mode=view' target=_blank>Загрузить оригинал (2.49 МБ)</a>
так устроены входы, они допускают подключение любой полярности, оптопара шунтирована 10К и светодиод последовательно. От не сильно страшных наводок должно спасать.

Re: Токарный 1К62 переделанный под ЧПУ!

Добавлено: 01 сен 2021, 13:59
tokarka63
Kost_irk писал(а): Какая-то хрень у вас там происходит
Поддерживаю!!!
HAL-скоп, показывает после оптики, после проца месы....короче, от входов до HAL-скоп_а куча всего и подключение 380в, ну никак влиять не должно!!!

kfmut писал(а): Да там разные есть датчики, tle4905, дешёво, напруга до 32В, открытый коллектор https://www.chipdip.ru/product/tle4905l
Спасибо, как то не попадались такие!)

Re: Токарный 1К62 переделанный под ЧПУ!

Добавлено: 01 сен 2021, 14:41
tokarka63
Интереса ради, посмотрел у себя на показания халскопа, сигнал с самодельного энкодера и индукционного датчика, все кристально чисто, никаких помех, даже с включенным частотником на малых оборотах

Re: Токарный 1К62 переделанный под ЧПУ!

Добавлено: 01 сен 2021, 18:20
Рамиль Сафиуллин
Kost_irk писал(а): Какая-то хрень у вас там происходит, что-то неправильно подключено
возможно ... разбираемся ...
Kost_irk писал(а): На общий контакт входов месы что подключено?
это какой именно контакт? in common?

Re: Токарный 1К62 переделанный под ЧПУ!

Добавлено: 01 сен 2021, 20:27
D.L.
Рамиль Сафиуллин писал(а): мы включаем питание 380 и появляются эту шумы,
Попробуйте подключить датчики так:
circuit.gif
circuit.gif (3.27 КБ) 887 просмотров

Re: Токарный 1К62 переделанный под ЧПУ!

Добавлено: 01 сен 2021, 20:42
Рамиль Сафиуллин
tokarka63 писал(а): Интереса ради, посмотрел у себя на показания халскопа, сигнал с самодельного энкодера
У вас револьверная голова другая наверно ) плюс у вас 2 лпт, а у нас меса, плюс китайская резцедержка,

И
каждый сталкивается со своими исключительными проблемами )
D.L. писал(а): Попробуйте подключить датчики так:
Хорошо попробуем

Re: Токарный 1К62 переделанный под ЧПУ!

Добавлено: 02 сен 2021, 18:32
Рамиль Сафиуллин
Все разобрались. В итоге : земли не было нигде,землю везде подключили и все помехи пропали
steals_y2k писал(а): так вроде давали исходники уже?
компонент (для просмотра содержимого нажмите на ссылку)и
кусочек хал (для просмотра содержимого нажмите на ссылку)
вот этот компонент его в отдельный файл нужно прописывать?

Re: Токарный 1К62 переделанный под ЧПУ!

Добавлено: 02 сен 2021, 20:35
Рамиль Сафиуллин
все с компонентом разобрались, создали отдельный файл revolverka.comp
cкомпилировали его в revolverka.so
компонент не меняли
датчики стоят на in1-in4, реле вращения вперед стоит на out 01,
а реле затяжки стоит на out 02.
вопрос: где прописать в хал файле затяжку? в компоненте не нашли где этот out 2 нужно прописать и как правильно его прописать.

вот хал
# Generated by PNCconf at Thu Sep 2 20:01:10 2021
# Using LinuxCNC version: UNAVAILABLE
# Все изменения в этом файле будут перезаписаны
# overwritten when you run PNCconf again

loadrt [KINS]KINEMATICS
loadrt [EMCMOT]EMCMOT servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[KINS]JOINTS
loadrt hostmot2
loadrt revolverka
loadrt hm2_eth board_ip="10.10.10.10" config=" num_encoders=1 num_pwmgens=0 num_stepgens=4 sserial_port_0=00xxxx"
setp [HMOT](CARD0).watchdog.timeout_ns 5000000
loadrt pid names=pid.x,pid.z,pid.s

addf [HMOT](CARD0).read servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
addf pid.x.do-pid-calcs servo-thread
addf pid.z.do-pid-calcs servo-thread
addf pid.s.do-pid-calcs servo-thread
addf [HMOT](CARD0).write servo-thread
addf revolverka servo-thread

# external output signals

#-------------------------------
#revolverka start

loadrt timedelay count=4
addf timedelay.0 servo-thread
setp timedelay.0.on-delay 0.15

net delaystart timedelay.0.in <= revolverka.delaystart
net delaydone timedelay.0.out => revolverka.delaydone


addf timedelay.2 servo-thread
setp timedelay.2.on-delay 1

net delaystart2 timedelay.2.in <= revolverka.delaystart2
net delaydone2 timedelay.2.out => revolverka.delaydone2

addf timedelay.3 servo-thread
setp timedelay.3.on-delay 2

net delaystart3 timedelay.3.in <= revolverka.delaystart3
net delaydone3 timedelay.3.out => revolverka.delaydone3

net tool-change iocontrol.0.tool-change => revolverka.toolchange
net tool-changed iocontrol.0.tool-changed <= revolverka.toolchanged
net tool-number iocontrol.0.tool-prep-number => revolverka.toolnumber
net tool-oldnumber iocontrol.0.tool-number => revolverka.old
net tool-prepare-loopback iocontrol.0.tool-prepare => iocontrol.0.tool-prepared

net moto revolverka.moto => [HMOT](CARD0).ssr.00.out-01

net opto1 revolverka.opto1 <= [HMOT](CARD0).gpio.001.in
net opto2 revolverka.opto2 <= [HMOT](CARD0).gpio.002.in
net opto3 revolverka.opto3 <= [HMOT](CARD0).gpio.003.in
net metka revolverka.metka <= [HMOT](CARD0).gpio.004.in

#revolverka finish
#-------------------------------





# --- SPINDLE-CW ---
net spindle-cw => [HMOT](CARD0).ssr.00.out-00


# external input signals





#net spindle-manual-cw <= [HMOT](CARD0).gpio.002.in


#*******************
# AXIS X JOINT 0
#*******************

setp pid.x.Pgain [JOINT_0]P
setp pid.x.Igain [JOINT_0]I
setp pid.x.Dgain [JOINT_0]D
setp pid.x.bias [JOINT_0]BIAS
setp pid.x.FF0 [JOINT_0]FF0
setp pid.x.FF1 [JOINT_0]FF1
setp pid.x.FF2 [JOINT_0]FF2
setp pid.x.deadband [JOINT_0]DEADBAND
setp pid.x.maxoutput [JOINT_0]MAX_OUTPUT
setp pid.x.error-previous-target true
setp pid.x.maxerror .0005

net x-index-enable <=> pid.x.index-enable
net x-enable => pid.x.enable
net x-pos-cmd => pid.x.command
net x-pos-fb => pid.x.feedback
net x-output <= pid.x.output

# Step Gen signals/setup

setp [HMOT](CARD0).stepgen.00.dirsetup [JOINT_0]DIRSETUP
setp [HMOT](CARD0).stepgen.00.dirhold [JOINT_0]DIRHOLD
setp [HMOT](CARD0).stepgen.00.steplen [JOINT_0]STEPLEN
setp [HMOT](CARD0).stepgen.00.stepspace [JOINT_0]STEPSPACE
setp [HMOT](CARD0).stepgen.00.position-scale [JOINT_0]STEP_SCALE
setp [HMOT](CARD0).stepgen.00.step_type 0
setp [HMOT](CARD0).stepgen.00.control-type 1
setp [HMOT](CARD0).stepgen.00.maxaccel [JOINT_0]STEPGEN_MAXACCEL
setp [HMOT](CARD0).stepgen.00.maxvel [JOINT_0]STEPGEN_MAXVEL

# ---closedloop stepper signals---

net x-pos-cmd <= joint.0.motor-pos-cmd
net x-vel-cmd <= joint.0.vel-cmd
net x-output <= [HMOT](CARD0).stepgen.00.velocity-cmd
net x-pos-fb <= [HMOT](CARD0).stepgen.00.position-fb
net x-pos-fb => joint.0.motor-pos-fb
net x-enable <= joint.0.amp-enable-out
net x-enable => [HMOT](CARD0).stepgen.00.enable

# ---setup home / limit switch signals---

net x-home-sw => joint.0.home-sw-in
net x-neg-limit => joint.0.neg-lim-sw-in
net x-pos-limit => joint.0.pos-lim-sw-in

#*******************
# AXIS Z JOINT 1
#*******************

setp pid.z.Pgain [JOINT_1]P
setp pid.z.Igain [JOINT_1]I
setp pid.z.Dgain [JOINT_1]D
setp pid.z.bias [JOINT_1]BIAS
setp pid.z.FF0 [JOINT_1]FF0
setp pid.z.FF1 [JOINT_1]FF1
setp pid.z.FF2 [JOINT_1]FF2
setp pid.z.deadband [JOINT_1]DEADBAND
setp pid.z.maxoutput [JOINT_1]MAX_OUTPUT
setp pid.z.error-previous-target true
setp pid.z.maxerror .0005

net z-index-enable <=> pid.z.index-enable
net z-enable => pid.z.enable
net z-pos-cmd => pid.z.command
net z-pos-fb => pid.z.feedback
net z-output <= pid.z.output

# Step Gen signals/setup

setp [HMOT](CARD0).stepgen.01.dirsetup [JOINT_1]DIRSETUP
setp [HMOT](CARD0).stepgen.01.dirhold [JOINT_1]DIRHOLD
setp [HMOT](CARD0).stepgen.01.steplen [JOINT_1]STEPLEN
setp [HMOT](CARD0).stepgen.01.stepspace [JOINT_1]STEPSPACE
setp [HMOT](CARD0).stepgen.01.position-scale [JOINT_1]STEP_SCALE
setp [HMOT](CARD0).stepgen.01.step_type 0
setp [HMOT](CARD0).stepgen.01.control-type 1
setp [HMOT](CARD0).stepgen.01.maxaccel [JOINT_1]STEPGEN_MAXACCEL
setp [HMOT](CARD0).stepgen.01.maxvel [JOINT_1]STEPGEN_MAXVEL

# ---closedloop stepper signals---

net z-pos-cmd <= joint.1.motor-pos-cmd
net z-vel-cmd <= joint.1.vel-cmd
net z-output <= [HMOT](CARD0).stepgen.01.velocity-cmd
net z-pos-fb <= [HMOT](CARD0).stepgen.01.position-fb
net z-pos-fb => joint.1.motor-pos-fb
net z-enable <= joint.1.amp-enable-out
net z-enable => [HMOT](CARD0).stepgen.01.enable

# ---setup home / limit switch signals---

net z-home-sw => joint.1.home-sw-in
net z-neg-limit => joint.1.neg-lim-sw-in
net z-pos-limit => joint.1.pos-lim-sw-in

#*******************
# SPINDLE
#*******************

setp pid.s.Pgain [SPINDLE_0]P
setp pid.s.Igain [SPINDLE_0]I
setp pid.s.Dgain [SPINDLE_0]D
setp pid.s.bias [SPINDLE_0]BIAS
setp pid.s.FF0 [SPINDLE_0]FF0
setp pid.s.FF1 [SPINDLE_0]FF1
setp pid.s.FF2 [SPINDLE_0]FF2
setp pid.s.deadband [SPINDLE_0]DEADBAND
setp pid.s.maxoutput [SPINDLE_0]MAX_OUTPUT
setp pid.s.error-previous-target true

net spindle-index-enable <=> pid.s.index-enable
net spindle-enable => pid.s.enable
net spindle-vel-cmd-rpm => pid.s.command
net spindle-vel-fb-rpm => pid.s.feedback
net spindle-output <= pid.s.output

# ---Encoder feedback signals/setup---

setp [HMOT](CARD0).encoder.00.counter-mode 0
setp [HMOT](CARD0).encoder.00.filter 1
setp [HMOT](CARD0).encoder.00.index-invert 0
setp [HMOT](CARD0).encoder.00.index-mask 0
setp [HMOT](CARD0).encoder.00.index-mask-invert 0
setp [HMOT](CARD0).encoder.00.scale [SPINDLE_0]ENCODER_SCALE

net spindle-revs <= [HMOT](CARD0).encoder.00.position
net spindle-vel-fb-rps <= [HMOT](CARD0).encoder.00.velocity
net spindle-index-enable <=> [HMOT](CARD0).encoder.00.index-enable

# ---setup spindle control signals---

net spindle-vel-cmd-rps <= spindle.0.speed-out-rps
net spindle-vel-cmd-rps-abs <= spindle.0.speed-out-rps-abs
net spindle-vel-cmd-rpm <= spindle.0.speed-out
net spindle-vel-cmd-rpm-abs <= spindle.0.speed-out-abs
net spindle-enable <= spindle.0.on
net spindle-cw <= spindle.0.forward
net spindle-ccw <= spindle.0.reverse
net spindle-brake <= spindle.0.brake
net spindle-revs => spindle.0.revs
net spindle-at-speed => spindle.0.at-speed
net spindle-vel-fb-rps => spindle.0.speed-in
net spindle-index-enable <=> spindle.0.index-enable

# ---Setup spindle at speed signals---

sets spindle-at-speed true


#******************************
# connect miscellaneous signals
#******************************

# ---HALUI signals---

net axis-select-x halui.axis.x.select
net jog-x-pos halui.axis.x.plus
net jog-x-neg halui.axis.x.minus
net jog-x-analog halui.axis.x.analog
net x-is-homed halui.joint.0.is-homed
net axis-select-z halui.axis.z.select
net jog-z-pos halui.axis.z.plus
net jog-z-neg halui.axis.z.minus
net jog-z-analog halui.axis.z.analog
net z-is-homed halui.joint.1.is-homed
net jog-selected-pos halui.axis.selected.plus
net jog-selected-neg halui.axis.selected.minus
net spindle-manual-cw halui.spindle.0.forward
net spindle-manual-ccw halui.spindle.0.reverse
net spindle-manual-stop halui.spindle.0.stop
net machine-is-on halui.machine.is-on
net jog-speed halui.axis.jog-speed
net MDI-mode halui.mode.is-mdi

# ---coolant signals---

net coolant-mist <= iocontrol.0.coolant-mist
net coolant-flood <= iocontrol.0.coolant-flood

# ---probe signal---

net probe-in => motion.probe-input

# ---motion control signals---

net in-position <= motion.in-position
net machine-is-enabled <= motion.motion-enabled

# ---digital in / out signals---

# ---estop signals---

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

# ---manual tool change signals---

#loadusr -W hal_manualtoolchange
#net tool-change-request iocontrol.0.tool-change => hal_manualtoolchange.change
#net tool-change-confirmed 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