www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 
Sponsored by SiOL

LinuxCNC (EMC2) "ničenje" Z osi

 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Linux, unix razprave
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
folc
Član
Član



Pridružen-a: Pon 16 Nov 2009 21:25
Prispevkov: 678
Aktiv.: 5.65
Kraj: Nekje med NG in Tolminom

PrispevekObjavljeno: Tor Jan 13, 2015 6:56 pm    Naslov sporočila:  LinuxCNC (EMC2) "ničenje" Z osi Odgovori s citatom

Pozdravljeni,

zanima me če ima kdo izmed vas izkušnje z kreiranjem gumbov po meri za LinuxCNC in sicer najbolj me zanimata gumba za "touchOFF" na z osi tako da ne delam na približno ko menjam rezkar.

Sam sem sledil navodilom ki so v priponki, tudi kodo sem malenkost popravil. Sedaj pa me moti, ker ob dotiku "probe" se aktivira in mi Z nastavi na debelino PCB ploščice. Vse lepo in prav, ampak ne razumem drugega dela kode, katero aktivira gumb in sicer G92 in g0z3 ...
G0 Z3 bi moral z os pomakniti na Z3 pa je ne, ko rezkar aktivira "probe" tam tudi ostane Z pa se nastavi na v mojem primeru Z1,52mm

koda izgleda nekako takole :
[HALUI]
MDI_COMMAND = G38.2 Z-2 f16
MDI_COMMAND = G92 Z1.52 // debelina ploščice
MDI_COMMAND = G0 Z3 // probe removal
MDI_COMMAND = G92 x2 y-.5


upam da sem jasen kaj me muči, in da kdo ve kje tiči problem.

PS: gre se za LinuxCNC 2.6



configfiles.zip
 Opis:
zip datoteka z naovodili in config datotekami

Download
 Ime datoteke:  configfiles.zip
 Velikost datoteke:  18.81 KB
 Downloadano:  3 krat


_________________
elektrika je edina baba, k se ne pusti šlatat Very Happy

Folc
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
folc
Član
Član



Pridružen-a: Pon 16 Nov 2009 21:25
Prispevkov: 678
Aktiv.: 5.65
Kraj: Nekje med NG in Tolminom

PrispevekObjavljeno: Čet Jan 15, 2015 8:26 pm    Naslov sporočila:   Odgovori s citatom

bom drugače vprašal

mi upa kdo izmed vas pomagati s tem, da me usmeri kaj vse moram storiti, da bi gumb po meri (v mojem primeru "Z touch off") izvede spodnjo G-kodo.

Koda:

%
G21   (metrične enote)
G91 G38.2 F350 Z-60  (1. spust Z osi do stika oz. max 60mm)
G90 G0 Z[#5063+2.5]  (ob stiku se dvigne za 2.5mm)
G91 G38.2 F150 Z-3.5 (ponoven počasnejši spust do ponovnega stika oz. max 3.5mm)
G90 G0 Z[#5063+2.0] (višina stika + 2.00mm -> postavi se 2mm nad PCB ploščico)
G10 L20 P1 Z3.50 (postavi Z na trenutno višino ki znaša  ploščica"1.50mm" + 2mm=3.50)
(debug, Rezkar se nazaja 3.50mm nad obdelovancem.)
%


PS. če je slučajno kakšna napaka u kodi me prosim popravite ..

_________________
elektrika je edina baba, k se ne pusti šlatat Very Happy

Folc
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
bostjan 2
Član
Član



Pridružen-a: Pon 05 Dec 2011 19:35
Prispevkov: 121
Aktiv.: 1.27
Kraj: Vače

PrispevekObjavljeno: Čet Jan 15, 2015 11:13 pm    Naslov sporočila:   Odgovori s citatom

Bi po strani:

http://softsolder.com/2010/04/17/ugliest-tool-length-probe-switch-repeatability/

probal tole:

(Tool length probing test)

(--------------------)
( Initialize first tool length at probe switch)
( assumes metric units!)

O<Probe_Init> SUB

G49 ( clear tool length compensation)
G30 ( to probe switch)
G91 ( relative mode for probing)

G38.2 Z-90 F300 ( trip switch on the way down)

G0 Z1 ( back off the switch)
G38.2 Z-10 F10 ( trip switch slowly)

#<_ToolRefZ> = #5063 ( save trip point)

G90 ( absolute mode)
G30 ( return to safe level)

O<Probe_Init> ENDSUB

(--------------------)
( Initialize new tool length at probe switch)
( assumes metric units!)

O<Probe_Tool> SUB

G49 ( clear tool length compensation)
G30 ( to probe switch)
G91 ( relative mode for probing)

G38.2 Z-90 F300 ( trip switch on the way down)

G0 Z1 ( back off the switch)
G38.2 Z-10 F10 ( trip switch slowly)

#<_ToolZ> = #5063 ( save new tool length)

G43.1 K[#<_ToolZ> - #<_ToolRefZ>] ( set new length)

G90 ( absolute mode)
G30 ( return to safe level)

O<Probe_Tool> ENDSUB

(--------------------)
( Set up first tool)

G21 ( metric units)

(msg,Verify origin at indicator ball, hit Resume)
M0
(msg,Verify G30.1 above tool change switch, hit Resume)
M0
(msg,Verify blunt tool installed, hit Resume)
M0

O<Probe_Init> CALL

(debug,Initial tool length = #<_ToolRefZ>)

O100 REPEAT [10]

G0 X0 Y0
G0 Z0
(msg,Record indicator Z-axis reading, hit Resume)
M0

G0 Z5 (get air)
G30 (to tool change position)

O<Probe_Tool> CALL
(debug,Tool length offset = #<_ToolZ>)

O100 ENDREPEAT

M2

_________________
Ja še vedno se ne da...
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
folc
Član
Član



Pridružen-a: Pon 16 Nov 2009 21:25
Prispevkov: 678
Aktiv.: 5.65
Kraj: Nekje med NG in Tolminom

PrispevekObjavljeno: Čet Jan 15, 2015 11:39 pm    Naslov sporočila:   Odgovori s citatom

trenutno delam po tem vodiču Klik
deluje vredu dokler je 1 vrstica ... problem se pojavi ker je več vrstic in nevem kako naj z enim gumbom izvedem zaporedje več MDI-COMMAND v datoteki custom_postgui.hal oz. postgui.hal v tem vodiču

če uporabim
Koda:

net remote-z-off halui.mdi-command-00 <= pyvcp.z-off  (prva vrstica)
net remote-z-off halui.mdi-command-01 <= pyvcp.z-off (druga vrstica)
net remote-z-off halui.mdi-command-02 <= pyvcp.z-off (tretja vrstica)
net remote-z-off halui.mdi-command-03 <= pyvcp.z-off (četrta vrstica)
...

se pojavi problem ker ne počaka, da se ukaz do konca izvede


@boštjan2 bom jutri stestiral to na mašini sedaj programiram prek virtualca GUI da stestiram jutri na sami mašini

_________________
elektrika je edina baba, k se ne pusti šlatat Very Happy

Folc
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
folc
Član
Član



Pridružen-a: Pon 16 Nov 2009 21:25
Prispevkov: 678
Aktiv.: 5.65
Kraj: Nekje med NG in Tolminom

PrispevekObjavljeno: Čet Jan 15, 2015 11:40 pm    Naslov sporočila:   Odgovori s citatom

PS .
kot gledam že obstoječe primere je zadeva v custom_postgui.hal datoteki takšna

Koda:

# set up the z-axis touchoff button
net remote-z-axis-touchoff classicladder.0.in-00 <= pyvcp.z-axis-touchoff
# set to mdi mode
# show pin
net mode halui.mode.is-mdi => classicladder.0.in-01

# wait for motion to finish Use this file if you are using the EMC2 version 2.3.x or newer.
net in_pos motion.in-position => classicladder.0.in-02

# wait for motion to finish Use this for motion if you are using version 2.2.X or older of EMC2

#net in_pos motion.motion-inpos => classicladder.0.in-02
# mdi command 1 MDI_COMMAND = G38.2 Z-3 F16
net z-touchoff classicladder.0.out-00 => halui.mdi-command-00

# mdi command 2 MDI_COMMAND = G92 Z0.25
net z-zero classicladder.0.out-01 => halui.mdi-command-01

# mdi command 3 MDI_COMMAND = G0 Z1
#net rapid-away classicladder.0.out-02 => halui.mdi-command-02

# mdi command 4 MDI_COMMAND = G0 X-2 Y1
net zero-x-y halui.mdi-command-03 <= pyvcp.x-y_zero



a je ne razumem strukture točno

_________________
elektrika je edina baba, k se ne pusti šlatat Very Happy

Folc
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
bostjan 2
Član
Član



Pridružen-a: Pon 05 Dec 2011 19:35
Prispevkov: 121
Aktiv.: 1.27
Kraj: Vače

PrispevekObjavljeno: Pet Jan 16, 2015 12:22 am    Naslov sporočila:   Odgovori s citatom

Folc, tudi jaz delam na LinuxCnc mašini, pa bom tole malce pogledal preko vikenda. Nikoli nisem potreboval touch probe.. Me pa zanima. Sem se pa zaj_ z hali ker sem dodal v sistem joypad za ročne premike.

Lp Boštjan

_________________
Ja še vedno se ne da...
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
folc
Član
Član



Pridružen-a: Pon 16 Nov 2009 21:25
Prispevkov: 678
Aktiv.: 5.65
Kraj: Nekje med NG in Tolminom

PrispevekObjavljeno: Pet Jan 16, 2015 12:53 am    Naslov sporočila:   Odgovori s citatom

no če mi uspe javim jutri, potem me do ponedeljka ni (iskanje zaposlitve :'( ) zraven CNC-ja sem pa pri računalniku in prek virtualca testiram .hal datoteke Very Happy

če ti kaj uspe se močno priporočam

_________________
elektrika je edina baba, k se ne pusti šlatat Very Happy

Folc
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
folc
Član
Član



Pridružen-a: Pon 16 Nov 2009 21:25
Prispevkov: 678
Aktiv.: 5.65
Kraj: Nekje med NG in Tolminom

PrispevekObjavljeno: Tor Jan 20, 2015 1:09 am    Naslov sporočila:   Odgovori s citatom

no zadevi sem nekako prišel do dna, bom pa še tu napisal kaj sem naredil, mogoče še komu pride prav.

Sledil sem temu vodiču: Klik Z avtorjem vodiča sva izmenjala tudi par besed na CNCZone forumu.

Namestitev:

ustvarimo novo "mašino" s pomočjo t.i. "Stepconf Wizard"
kjer v zavihku "Advanced Configuration" obkljukamo tako kot prikazuje spodnja slika A in B opcija !!




Konfirugacija datotek
vir:

1. custompanel.xml
Tu ustvarimo gumb po imenu "Touch Off Z" z ID-jem "o100" -> o kot črka O in NE kot številka NIČ !

Koda:

<?xml version='1.0' encoding='UTF-8'?>
<pyvcp>
<!--
Include your PyVCP panel here.
The contents of this file will not be overwritten when you run stepconf again.
-->
   <labelframe text="Zero Axes">
      <button>
           <halpin>"o100"</halpin>
           <text>"Touch Off Z"</text>
           <font>('fixed',10)</font>
      </button>
    </labelframe>
</pyvcp>


2. custom.hal
tu dodamo spodnjo kodo. Jaz sem predzadnjo in pred-predzadnjo vrstico zakomentiral "#" ker mi je javljalo napako da je probe že vklopljen. Predvideva da zaradi namestitve prej v "Stepconf Čarovniku"

Koda:

#limits debounce to stop false triggers
loadrt debounce cfg=2
setp debounce.0.delay 100
addf debounce.0 base-thread
#net deb-probe-in debounce.0.0.in <= parport.0.pin-13-in-not
#net probe-in debounce.0.0.out
net probe-in => motion.probe-input


3. sledi konfiguracija naše <ime_mašine>.ini datoteke. <ime_mašine> smo določili v StepConfig čarovniku. moj primer je my-mill-01.ini
kjer pod [HALUI] dodamo t.i. MDI ukaz

Koda:

MDI_COMMAND = o100 call


4. custom_postgui.hal

tu sem kopiral spodnjo vrstico

Koda:

net remote-o100 halui.mdi-command-00 <= pyvcp.o100


5. za konec ustvarimo datoteko po imenu 100.ngc in jo shranimo v home/linuxcnc/nc_files . V tej datoteki se nahaja G-koda, ki jo poženem z pritiskom na gumb. Pomembno je da se koda nahaja znotraj <pre> ukaza in da je deklariran "podprogram" v mojem primeru o100 sub

Koda:

[b]<pre>
o100 sub[/b]
#1 = 1.47 (PLATE THICKNESS)
#2 = 2 (UP OFF PLATE FOR 2ND TOUCH)
#3 = -3.5 (Distance depth for retouch)
#4 = 8.53 (offset)

G21 (uporabi metrične enote)
(DEBUG,PROBE is ACTIVE)
G10 L20 P0 Z0    ( Set current Z position to 0 so that we will always be moving down )
G38.2 Z-60 F450 (1st probe move)
G90 G0 Z[#5063+2.5](move #2 above PCB plate for 2nd touch)
G91 G38.2 F150 Z#3 (retouch max -3.5mm)
G90 G0 Z[#5063+#4] (Plate tickness + offset)
G10 L20 P1 Z10 (Set Z to current position = PCB + OffSet = 10mm )
(DEBUG,REMOVE TOUCH PLATE AND PRESS START TO CONTINUE)
[b]o100 endsub
</pre>[/b]



@bostjan 2 upam da ti kaj pomaga Wink

_________________
elektrika je edina baba, k se ne pusti šlatat Very Happy

Folc
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
bostjan 2
Član
Član



Pridružen-a: Pon 05 Dec 2011 19:35
Prispevkov: 121
Aktiv.: 1.27
Kraj: Vače

PrispevekObjavljeno: Tor Jan 20, 2015 4:06 pm    Naslov sporočila:   Odgovori s citatom

Hvala za tole! Malce kratek vikend je bil, pa ni šlo.

Veselo na delo!

LP Boštjan

_________________
Ja še vedno se ne da...
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
trot
Član
Član



Pridružen-a: Čet 18 Jan 2007 20:25
Prispevkov: 1183
Aktiv.: 7.66
Kraj: glej fogl

PrispevekObjavljeno: Tor Jan 20, 2015 6:15 pm    Naslov sporočila:   Odgovori s citatom

Hvala za info, tudi meni bo tole kar prav prišlo... jaz sem ničenje ponavadi vključil kar v G kodo (sem naredil eno skriptico, ki je popravila Gkodo).

BTW, tole kar si zakomentiral... mogoče je bil problem, ker si potegnil signal iz negiranega vhoda parport.0.pin-13-in-not

Od kod pa si potem potegnil signal probe-in, če si ga zakomentiral:
#net probe-in debounce.0.0.out
net probe-in => motion.probe-input

_________________
lp, Klemen
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
folc
Član
Član



Pridružen-a: Pon 16 Nov 2009 21:25
Prispevkov: 678
Aktiv.: 5.65
Kraj: Nekje med NG in Tolminom

PrispevekObjavljeno: Tor Jan 20, 2015 11:28 pm    Naslov sporočila:   Odgovori s citatom

ja jaz imam pin 13 za probe in in je "reverse" zato sem ga tu zakomentiral .. ker mi je javljalo napako da je že v uporabi, predvidevam da zaradi prednastavitve.

Drugače pa je celoten vodič tu Klik

PS: @trot ... tebi je uspelo uporabiti ničenje Z osi s pomočjo tegale članka kot si mi ga predlagal v sorodni temi ? namreč danes sem se malenkost igra s tem t.i. ProbeKins pa mi ni uspelo

_________________
elektrika je edina baba, k se ne pusti šlatat Very Happy

Folc
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
folc
Član
Član



Pridružen-a: Pon 16 Nov 2009 21:25
Prispevkov: 678
Aktiv.: 5.65
Kraj: Nekje med NG in Tolminom

PrispevekObjavljeno: Čet Jan 22, 2015 2:12 pm    Naslov sporočila:   Odgovori s citatom

Imam eno vmesno vprašanje, ki je seveda vezano na samo temo.
Dobil sem odličen primer, kako izdelati t.i. ploščico za dotik na internetu -> Klik do Primera katerega sem kopiral.

Zanima me če kdo ve oz. lahko potrdite moje sume, zakaj mi ko vežem LED diodo kot indikator za dotik na PCB plošči LinuxCNC ne zazna dotika. Namreč če je dotik brez LED diode vse deluje odlično. Hal meter lepo prikaže da je true oz. false signal. Če pa dam vmes LED diodo, dioda zasveti ob dotiku, a LinuxCNC signala ne zazna. Poskusil sem zraven vezati tudi upor a žal ne deluje. Sedaj pa bi rad prišel zadevi do dna zakaj ne in kakšna rešitev bi bila, razen dodatne žice. Je to mogoče zato, ker je LED dioda pol prevodnik ?

še podatki:
napetost na "probe" signalu je 5V
prek upora je sedaj cca 2.51V
če dodam diodo, dioda lepo zasveti, LinuxCNC pa dotika ne zazna.

V priponki še kaj sem naredil:



2015-01-22 12.17.47.jpg
 Opis:
 Velikost datoteke:  1.04 MB
 Pogledana:  3 krat

2015-01-22 12.17.47.jpg



_________________
elektrika je edina baba, k se ne pusti šlatat Very Happy

Folc
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
bostjan 2
Član
Član



Pridružen-a: Pon 05 Dec 2011 19:35
Prispevkov: 121
Aktiv.: 1.27
Kraj: Vače

PrispevekObjavljeno: Čet Jan 22, 2015 2:45 pm    Naslov sporočila:   Odgovori s citatom

folc, to je premalo za logično 1. Kateri krmilnik imaš?
Ali imaš na žici 5V ko ni stika in 2 V ko je stik?

_________________
Ja še vedno se ne da...
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
folc
Član
Član



Pridružen-a: Pon 16 Nov 2009 21:25
Prispevkov: 678
Aktiv.: 5.65
Kraj: Nekje med NG in Tolminom

PrispevekObjavljeno: Čet Jan 22, 2015 2:53 pm    Naslov sporočila:   Odgovori s citatom

5V je ko ni stika, oz. sedaj je 2.51 ker je uporvezan zaporedno umes

krmilnik .. BOB -- dokumentacija v priponki

Probe imam vezan na pin 13.



4axisBOBdata.pdf
 Opis:
4axis-BOB

Download
 Ime datoteke:  4axisBOBdata.pdf
 Velikost datoteke:  205.48 KB
 Downloadano:  2 krat


_________________
elektrika je edina baba, k se ne pusti šlatat Very Happy

Folc
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Linux, unix razprave Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Stran 1 od 1

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 146 dni


Powered by phpBB © 2001, 2005 phpBB Group