Tokarka TRAUB 360 i Linuxcnc

Dyskusje dotyczące działania obsługi programu LinuxCNC

Autor tematu
szary11
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 22
Posty: 377
Rejestracja: 16 lut 2011, 22:44
Lokalizacja: Tarnogród

Tokarka TRAUB 360 i Linuxcnc

#1

Post napisał: szary11 » 10 sie 2020, 20:07

Zakupiłem staruszkę do warsztatu , oczywiście z myślą o Linuxcnc.

Piszą że przerabiają takie, ale nikt nic nie pokaże.

Prawdopodobnie pojawi się problem z revolverem bo to pierwsza moja maszyna z jakimś tam magazynkiem.

Obrazek
próbowałem uruchomić na oryginale, ale to bateria padła, to coś tam jeszcze: :)
Miałem wyrzucić wszystko z szafy i dać nowe napędy i silnik wrzeciona, ale elektronik chciał spróbować.

i już nagmerane
Obrazek

Udało się uruchomić napędy i wrzeciono,
Na serwach są resolvery, zamienię na enkodery bo dla liniałów brakuje trochę miejsca i obawiam się, że przy chłodziwie długo by nie podziałały.
Szukam schematu elektrycznego maszyny, było by trochę łatwiej, może ma któryś z kolegów.

Wacham się z zakupem kart mesa 5i25/7i77 czy coś z rodziny 5i20




kamar
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 12
Posty: 16242
Rejestracja: 18 wrz 2010, 06:17
Lokalizacja: Kozienice
Kontakt:

Re: Tokarka TRAUB 360 i Linuxcnc

#2

Post napisał: kamar » 10 sie 2020, 20:28

No, zapowiada się ciekawie :)


Autor tematu
szary11
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 22
Posty: 377
Rejestracja: 16 lut 2011, 22:44
Lokalizacja: Tarnogród

Re: Tokarka TRAUB 360 i Linuxcnc

#3

Post napisał: szary11 » 13 sie 2020, 07:29

Mały kroczek dalej :) https://youtu.be/ibq9M3iMg6A

Odblokowanie i obrót realizuje jeden silnik 3f z hamulcem za pozycję odpowiada coś w rodzaju enkodera absolutnego, ma 5 przewodów sygnałowych i na każdej z ośmiu pozycji ma inną kombinację stanów wyjściowych.
Szczerze mówiąc nie wiem jeszcze jak to będzie z adaptacją w programie.

Kamar, Ty masz rewolwerówkę z magazynkiem, jak to działa u Ciebie w logice użytkowania i jak byś mógł to wystaw ini z hal-em.


kamar
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 12
Posty: 16242
Rejestracja: 18 wrz 2010, 06:17
Lokalizacja: Kozienice
Kontakt:

Re: Tokarka TRAUB 360 i Linuxcnc

#4

Post napisał: kamar » 13 sie 2020, 07:53

Ja mam głowicę jako oś C i pozycje co 45 stopni.
.ini i hala wystawiam ale jak to działa i dlaczego to nie pomogę :) U mnie działa ale Bartek z klientem się długo woził i nie wiem na czym stanęło.

Kod: Zaznacz cały

[EMC]
VERSION =  Ngcgui-lathe
MACHINE =  Rewolwerowka

[RS274NGC]
PARAMETER_FILE       = sim-lathe.var
SUBROUTINE_PATH   = /home/cnc/linuxcnc/kody/suby:/home/cnc/linuxcnc/ngcgui_lib:/home/cnc/linuxcnc/ngcgui_lib/utilitysubs:/home/cnc/linuxcnc/ngcgui_lib/lathe
USER_M_PATH       = /home/cnc/linuxcnc/ngcgui_lib/mfiles
RS274NGC_STARTUP_CODE = G18 G7 G61 

[DISPLAY]
GEOMETRY = XZ
PROGRAM_PREFIX    = /home/cnc/linuxcnc/kody/suby
OPEN_FILE         = /home/cnc/linuxcnc/cos
# Note: TKPKG (one or more) specifies tcl/tk apps to embed in axis tab pages
TKPKG                = Ngcgui 1.0
TOOL_EDITOR = tooledit z x FRONT BACK ORIEN
NGCGUI_FONT          = Helvetica -16 normal

# for startup NGCGUI_PREAMBLE, NGCGUI_SUBFILE, NGCGUI_POSTAMBLE, TTT_PREAMBLE
# items, specifly:
#   a) absolute filename (start with /)
#   b) relative filename: search directories specified by
#      [DISPLAY]PROGRAM_PREFIX and [RS274NGC]SUBROUTINE_PATH

NGCGUI_PREAMBLE      = lathe_std.ngc
#NGCGUI_SUBFILE       = tool.ngc
NGCGUI_SUBFILE       = zew.ngc
NGCGUI_SUBFILE       = wew.ngc
NGCGUI_SUBFILE       = wiercenie_g1.ngc
NGCGUI_SUBFILE       = czolo.ngc
NGCGUI_SUBFILE       = ""
NGCGUI_SUBFILE       = gwint.ngc
NGCGUI_SUBFILE       = stozek.ngc
NGCGUI_SUBFILE       = faza_wew.ngc
NGCGUI_SUBFILE       = kula.ngc
# specify "" for a custom tab page

#NGCGUI_OPTIONS       = noiframe

DISPLAY              = axis
LATHE                = 1
EDITOR               = pluma
INCREMENTS = 1mm 0.1mm 0.01mm
#PYVCP                       = rewolwerowka.xml
CYCLE_TIME           = 0.100
POSITION_OFFSET      = RELATIVE
POSITION_FEEDBACK    = ACTUAL
MAX_FEED_OVERRIDE    = 100.0
MAX_SPINDLE_OVERRIDE = 2
#1
INTRO_GRAPHIC        = linuxcnc.gif
INTRO_TIME           = 1

[FILTER]
PROGRAM_EXTENSION = .NC,.NGC NC Post Processor
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]
TASK       = milltask
CYCLE_TIME = 0.001

[EMCMOT]
EMCMOT       = motmod
COMM_TIMEOUT = 1.0
COMM_WAIT    = 0.010
BASE_PERIOD  = 26000
#26000 74500
SERVO_PERIOD = 1000000

[HAL]
HALFILE = rewolwerowka.hal
#HALFILE = manual_toolchange.hal
#HALFILE = simulated_home.hal
#HALFILE = lathe.hal
#POSTGUI_HALFILE =      postgui.hal
HALUI           = halui

[TRAJ]
AXES                 = 6
COORDINATES          = X Z C
LINEAR_UNITS         = mm
ANGULAR_UNITS        = degree
CYCLE_TIME           = 0.010
DEFAULT_VELOCITY     = 200
MAX_VELOCITY         = 200
DEFAULT_ACCELERATION = 200
MAX_ACCELERATION     = 1000

[AXIS_0]
TYPE                 = LINEAR
HOME                 = 0
MAX_VELOCITY         = 60
MAX_ACCELERATION     = 200
STEPGEN_MAXACCEL     = 300
SCALE                = 400
BACKLASH             = 0.05
MIN_LIMIT            = -150
MAX_LIMIT            = 1
HOME_OFFSET          = 5.0
HOME_IS_SHARED       = 1
HOME_SEQUENCE       = 0
HOME_SEARCH_VEL     = 30
HOME_LATCH_VEL      = 10

[AXIS_2]
TYPE                 = LINEAR
HOME                 = 0.0
MAX_VELOCITY         = 60
MAX_ACCELERATION     = 200
STEPGEN_MAXACCEL     = 300
SCALE                = 400
BACKLASH             = 0.04
MIN_LIMIT            = -385
MAX_LIMIT            = 1
HOME_OFFSET          = 5.0
HOME_IS_SHARED       = 1
HOME_SEQUENCE       = 1
HOME_SEARCH_VEL     = 30
HOME_LATCH_VEL      = 10

[AXIS_5]
TYPE                 = ANGULAR
HOME                 = 0.0
MAX_VELOCITY         = 150
MAX_ACCELERATION     = 900
STEPGEN_MAXACCEL     = 1000
SCALE                = 16.
BACKLASH             = 0.2

MIN_LIMIT            = -4000
MAX_LIMIT            = 4000
HOME_SEQUENCE        = 2
HOME_OFFSET          = 0.0

[EMCIO]
EMCIO                       = io
CYCLE_TIME                  = 0.100
TOOL_TABLE                  = lathe.tbl
#TOOL_CHANGE_POSITION        = 1 0 1
TOOL_CHANGE_WITH_SPINDLE_ON = 1

Kod: Zaznacz cały

# Wygenerowane przez Stepconf o Tue Dec 20 10:40:39 2011
# Jeśli zmodyfikujesz ten plik zmainy zostaną
# nadpisane gdy uruchomisz ponownie 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
setp parport.0.reset-time 5000
loadrt stepgen step_type=0,0,0
loadrt encoder num_chan=1
loadrt abs count=1
loadrt scale count=1
loadrt lowpass count=1
loadrt charge_pump
net estop-out charge-pump.enable iocontrol.0.user-enable-out
net charge-pump <= charge-pump.out
loadrt pwmgen output_type=0

addf parport.0.read base-thread
addf stepgen.make-pulses base-thread
addf encoder.update-counters base-thread
addf charge-pump base-thread
addf pwmgen.make-pulses base-thread
addf parport.0.write base-thread
addf parport.0.reset base-thread

addf stepgen.capture-position servo-thread
addf encoder.capture-position servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
addf stepgen.update-freq servo-thread
addf pwmgen.update servo-thread
addf abs.0 servo-thread
addf scale.0 servo-thread
addf lowpass.0 servo-thread

#net spindle-cmd <= motion.spindle-speed-out => pwmgen.0.value
#net spindle-enable <= motion.spindle-on => pwmgen.0.enable
#net spindle-pwm <= parport.0.pin-01-out #pwmgen.0.pwm
#setp pwmgen.0.pwm-freq 100.0
#setp pwmgen.0.scale 1166.66666667
#setp pwmgen.0.offset 0.114285714286
#setp pwmgen.0.dither-pwm true
#setp scale.0.gain 0.01
#net spindle-speed-scale motion.spidle-speed-out => scale.0.in
#net spindle-speed-DAC scale.0.out => parport.0.pin-01-out

#loadrt pwmgen output_type=0
#addf pwmgen.update servo-thread
#addf pwmgen.make-pulses base-thread
net spindle-speed-cmd motion.spindle-speed-out => pwmgen.0.value
net spindle-on motion.spindle-on => pwmgen.0.enable
net spindle-pwm pwmgen.0.pwm => parport.0.pin-01-out
# Set the spindle's top speed in RPM 
setp pwmgen.0.scale 1000

net spindle-cw <= motion.spindle-forward
net coolant-flood <= iocontrol.0.coolant-flood

setp encoder.0.position-scale 100.000000
net spindle-position encoder.0.position => motion.spindle-revs
net spindle-velocity encoder.0.velocity => motion.spindle-speed-in
net spindle-index-enable encoder.0.index-enable <=> motion.spindle-index-enable
net spindle-phase-a encoder.0.phase-A
net spindle-phase-b encoder.0.phase-B
net spindle-index encoder.0.phase-Z
net dout-02 <= motion.digital-out-02

net xstep => parport.0.pin-02-out
setp parport.0.pin-02-out-reset 1
setp parport.0.pin-03-out-invert 1
net xdir => parport.0.pin-03-out
net zstep => parport.0.pin-04-out
setp parport.0.pin-04-out-reset 1
net zdir => parport.0.pin-05-out
#setp parport.0.pin-05-out-reset 1
setp parport.0.pin-05-out-invert 1
net cstep => parport.0.pin-06-out
net cdir => parport.0.pin-07-out

#net spindle-pwm => parport.0.pin-09-out
#net dout-02 => parport.0.pin-14-out
net coolant-flood => parport.0.pin-16-out #16
net spindle-cw => parport.0.pin-17-out #17

net spindle-index <= parport.0.pin-12-in
net spindle-phase-a <= parport.0.pin-11-in
net spindle-phase-b <= parport.0.pin-13-in
net silownik => parport.0.pin-14-out motion.digital-out-00
net czujka <= parport.0.pin-10-in motion.digital-in-00 


setp stepgen.0.position-scale [AXIS_0]SCALE
setp stepgen.0.steplen 12
setp stepgen.0.stepspace 0
setp stepgen.0.dirhold 35000
setp stepgen.0.dirsetup 35000
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_2]SCALE
setp stepgen.1.steplen 1
setp stepgen.1.stepspace 0
setp stepgen.1.dirhold 35000
setp stepgen.1.dirsetup 35000
setp stepgen.1.maxaccel [AXIS_2]STEPGEN_MAXACCEL
net zpos-cmd axis.2.motor-pos-cmd => stepgen.1.position-cmd
net zpos-fb stepgen.1.position-fb => axis.2.motor-pos-fb
net zstep <= stepgen.1.step
net zdir <= stepgen.1.dir
net zenable axis.2.amp-enable-out => stepgen.1.enable

setp stepgen.2.position-scale [AXIS_5]SCALE
setp stepgen.2.steplen 1
setp stepgen.2.stepspace 0
setp stepgen.2.dirhold 35000
setp stepgen.2.dirsetup 35000
setp stepgen.2.maxaccel [AXIS_5]STEPGEN_MAXACCEL
net cpos-cmd axis.5.motor-pos-cmd => stepgen.2.position-cmd
net cpos-fb stepgen.2.position-fb => axis.5.motor-pos-fb
net cstep <= stepgen.2.step
net cdir <= stepgen.2.dir
net cenable axis.5.amp-enable-out => stepgen.2.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


unlinkp iocontrol.0.tool-change 
unlinkp iocontrol.0.tool-changed 
net tool-change-loop  iocontrol.0.tool-change  iocontrol.0.tool-changed


DOHC
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 2
Posty: 893
Rejestracja: 06 kwie 2007, 19:12
Lokalizacja: Pionki

Re: Tokarka TRAUB 360 i Linuxcnc

#5

Post napisał: DOHC » 13 sie 2020, 08:09

szary11 pisze:
13 sie 2020, 07:29
Mały kroczek dalej :) https://youtu.be/ibq9M3iMg6A

Odblokowanie i obrót realizuje jeden silnik 3f z hamulcem za pozycję odpowiada coś w rodzaju enkodera absolutnego, ma 5 przewodów sygnałowych i na każdej z ośmiu pozycji ma inną kombinację stanów wyjściowych.
Szczerze mówiąc nie wiem jeszcze jak to będzie z adaptacją w programie.

Kamar, Ty masz rewolwerówkę z magazynkiem, jak to działa u Ciebie w logice użytkowania i jak byś mógł to wystaw ini z hal-em.
Coś mi się kojarzy że widziałem że sam pisałeś komponenty. Ja bym w tą stronę poszedł, napisz sobie komponent interpretujący te sygnały z rewolweru i dający na wyjściu numer narzędzia. Nie powinieneś mieć z tym żadnych problemów.

Pozdrawiam


kamar
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 12
Posty: 16242
Rejestracja: 18 wrz 2010, 06:17
Lokalizacja: Kozienice
Kontakt:

Re: Tokarka TRAUB 360 i Linuxcnc

#6

Post napisał: kamar » 13 sie 2020, 08:16

DOHC pisze:
13 sie 2020, 08:09
i dający na wyjściu numer narzędzia.
Nr. gniazda bo to nie to samo. Żeby jako tako robić to musi przyjąć osiem nr. gniazd i chociaż 30 nr. narzędzi.


Autor tematu
szary11
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 22
Posty: 377
Rejestracja: 16 lut 2011, 22:44
Lokalizacja: Tarnogród

Re: Tokarka TRAUB 360 i Linuxcnc

#7

Post napisał: szary11 » 13 sie 2020, 08:38

DOHC pisze:Coś mi się kojarzy że widziałem że sam pisałeś komponenty. Ja bym w tą stronę poszedł, napisz sobie komponent interpretujący te sygnały z rewolweru i dający na wyjściu numer narzędzia. Nie powinieneś mieć z tym żadnych problemów.


Sam nie piszę, a na gościa od robaczków muszę chwilę poczekać, chyba że zrobi zdalnie.
Także myśle, że trzeba zrobić tak aby LINUXCNC wiedział po włączeniu która pozycja jest aktualnie wybrana, lub mu chociaż wpisać aktualną raz, a potem niech szuka.
Na razie zbieram informacje i możliwe rozwiązania, aby potem przy pisaniu było jasne co się chce, a co się da.
Super będzie jak się uda przypisywać w magazynie narzędzie do nr gniazda.

Kamar, każde rozwiązanie jest dobre jak działa i się sprawdza, a u Ciebe to już chyba kilka lat jest.
Dzięki


atlc
Posty w temacie: 7

Re: Tokarka TRAUB 360 i Linuxcnc

#8

Post napisał: atlc » 13 sie 2020, 09:37

Zostawisz w niej oryginalny napęd?
W mojej był silnik DC 42kW, zmieniłem na 11kW AC.
Maszyna występowała w dwóch wersjach:
-z wariatorem na dole przy silniku
-ze skrzynią biegów we wrzecienniku (zdecydowanie popularniejsza)

Jeśli we wrzecienniku to rozpoznasz też po tym że obok cylindra hydraulicznego jest silnik 3f z przekładnią.
Zmienia bieg przesuwając parę ruchomą za pomocą dźwigni i śruby trapezowej. Odczyt pozycji biegów jest za pomocą dwóch czujników indukcyjnych na pokrywie lub na tylnej ścianie wrzeciennika.
Za wrzeciennikiem masz malutki (70W?) silniczek 1f 230V z pompką do smarowania całego wrzeciennika.

Sam rewolwer jest mechanicznie zbudowany prosto i pancernie, co do obsługi nie podpowiem, bo przy szgh obsługa takiego magazynu jest w kontrolerze gotowa, wystarczy podpiąć przewody.


Autor tematu
szary11
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 22
Posty: 377
Rejestracja: 16 lut 2011, 22:44
Lokalizacja: Tarnogród

Re: Tokarka TRAUB 360 i Linuxcnc

#9

Post napisał: szary11 » 13 sie 2020, 11:31

atlc pisze:
13 sie 2020, 09:37
Zostawisz w niej oryginalny napęd?
W mojej był silnik DC 42kW, zmieniłem na 11kW AC.
Maszyna występowała w dwóch wersjach:
-z wariatorem na dole przy silniku
-ze skrzynią biegów we wrzecienniku (zdecydowanie popularniejsza)

Jeśli we wrzecienniku to rozpoznasz też po tym że obok cylindra hydraulicznego jest silnik 3f z przekładnią.
Zmienia bieg przesuwając parę ruchomą za pomocą dźwigni i śruby trapezowej. Odczyt pozycji biegów jest za pomocą dwóch czujników indukcyjnych na pokrywie lub na tylnej ścianie wrzeciennika.
Za wrzeciennikiem masz malutki (70W?) silniczek 1f 230V z pompką do smarowania całego wrzeciennika.

Sam rewolwer jest mechanicznie zbudowany prosto i pancernie, co do obsługi nie podpowiem, bo przy szgh obsługa takiego magazynu jest w kontrolerze gotowa, wystarczy podpiąć przewody.
U mnie jest chyba DC 27 kw , deje się tym ładnie sterować + - 10V, więc na razie zostaje.
Mam ze skrzynią , którą steruje hydraulika.

Możesz podać typ SZGH, które potrafi czytać logicznie ten revolwer?


atlc
Posty w temacie: 7

Re: Tokarka TRAUB 360 i Linuxcnc

#10

Post napisał: atlc » 13 sie 2020, 13:24

Każdy szgh ;) poszukam czy w dokumentacji nie jest rozpisane dokładne makro obsługi tego.

No widzisz czyli było jeszcze więcej wersji jeśli chodzi o napęd. 27kW bym może zostawił, ale 42 to już przesada jak dla mnie :D
Obrazek

Dodane 31 minuty 39 sekundy:
Łap.
Przy obsłudze rewolweru do 8 narzędzi gdzie każde narzędzie ma swój czujnik po prostu podpinasz przewody i wpisujesz parametry do systemu (opóźnienia, czasy itp).
Obrazek Obrazek
Obrazek

Przy rewolwerze na większą ilość narzędzi lub kodowane binarnie (jak w tej TND), korzystasz z makra, tak wygląda na 12 narzędzi. Przy zamawianiu kontrolera, jak powiesz chińczykowi, że masz np magazyn na te 15 narzędzi, to przyślą już z gotowym wgranym wsadem sprzęt. Jak nie to można prosić ich o dosłanie, raczej nie ma z tym problemu.
Maszyna ma tabelę na 99 narzędzi i przypisujesz narzędzie do numeru gniazda w którym aktualnie się znajduje.
Obrazek Obrazek
Obrazek Obrazek

Obsługa skrzyni biegów do 4 biegów to tylko podpięcie przewodów i wpisanie zakresu obrotów dla poszczególnych biegów. Później maszyna zmienia już wszytko sama.
Tak samo koń, chłodziwo, uchwyt itp.
Obrazek

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „LinuxCNC (dawniej EMC2)”