Hírek:

Fontos tudnivalók a migrációval kapcsolatban, kérlek olvasd el:

A régi fórumról áthozott hozzászólásoknál a felhasználó neve adatvédelmi megfontolásokból véletlenszerűen generált értékekre lett  lecserélve. Ez akkor tud a valódi értékre visszaállni, ha az adott felhasználó a régi fórumon nyilatkozik, hogy beleegyezik az adatainak az új fórumra továbbításához, majd ezután itt a régi felhasználónevével és email címével regisztrál.
8~20 óra között, 1~30 percen belül megtörténik a jóváhagyás, 30 percenként ellenőrizd email fiókodat (SPAM-ot is) mindenképp kapsz mail-t, a sikeres regisztrácioról, vagy a hibáról és, hogy mi a teendőd.
Nézd meg  "A régi fórumról, az új fórumra költözés útmutatót."
A régi fórumon használt email címmel de más felhasználói azonosítóval érkező regisztrációs kérelmek törlésre kerűlnek.

Main Menu

Mach3 CNC

Indította gaben, 2024 április 09, 16:55

Előző téma - Következő téma

Pali79

Szerintem egy kicsit túl akarod bonyolítani. Nem kell feltétlen a makróba mindent beleszuszikolni, főleg, hogy a főorsó megállítása sincs benne a makróba, legálábbis én nem látom. Inkább úgy csinálnám, hogy M5-tel megállítom a főrosót, M6-tal cserélem a szerszámot (ebbe megy az amit bemásoltál), ez után M3-M4-gyel indítom a főorsót.

ksjus5vax

Sikerült elvileg így kapcsolja a portot míg szerszámcserét kéri ok gomb megnyomása után kikapcsolja a portot.
Az nincs benne azt még nem tudom hova kellene beszúrni neki.
Azért köszönőm [#eljen]

'Tool Change Macro For Manual tool change 09/14 CNC4XR7
OldTool = GetOEMDRO (1224)  'Tool In spindle DRO You must add this to your settings screen
'x = GetToolChangeStart( 0 ) ' Get x tool change start position
'y = GetToolChangeStart( 1 ) ' Get y tool change start position
'z = GetToolChangeStart( 2 ) ' Get z tool change start position
Code "G53 G0 X0 Y0 Z-1.0" ' Move z to tool change position in Machine cord.
While IsMoving ' wait for z to move
Wend
ActivateSignal (9)
tool = GetSelectedTool() ' tool to be changed to
NewTool = tool
Call SetUserDRO (1224,NewTool)
SetCurrentTool( NewTool )  ' input new tool into tool in spindle dro
Code "G43 H" & tool        ' Call tool offsets for new tool
' Verify Tool Change Complete
Dim Msg, Style, Title, Help, Ctxt, Response,MyString
Msg = "Please Insert Tool  Number " & " ( "  & GetSelectedTool() & " ) " & "    " & GetToolDesc(tool) ' Define message
Style = vbYesNo + vbCritical + vbDefaultButton2   ' Define buttons
Style = 0 + 48 + 0   ' Define buttons.
Title = "Tool Change Requested"   ' Define title
Help = "DEMO.HLP"   ' Define Help file
Ctxt = 1000   ' Define topic      
 'context.        
 ' Display message.
Response = MsgBox(Msg, Style, Title, Help, Ctxt)
 If Response = vbOk Then   ' User chose Ok    
MyString = "Ok"   ' Perform some action
End If
Message "Tool  #   " & GetCurrentTool() & " :  " & GetToolDesc(GetCurrentTool()) & "  Installed  " & "   Returning to Tool Change Start Position"
'Code "G00 X" & x  & "Y" & y & "Z" & z 'Move back to where the tool change was prompted
Code "G00 Z .25" 'Move Z back to .25" above zero in work cord.
While IsMoving
Wend
DeactivateSignal (9)
End

dezsoe

Egy megjegyzést én is fűznék hozzá. A szerszámcsere pozícióba mozgást szedd szét két sorba, mert ha egyszerre indul el minden tengely, abból szerszámtörés lehet. Először a Z-t emeld ki, aztán mászkálj a többi tengellyel. Tehát:

Code "G53 G0 X0 Y0 Z-1.0" ' Move z to tool change position in Machine cord.
While IsMoving ' wait for z to move
Wend


sorok helyett két lépésben:

Code "G53 G0 Z-1.0" ' Move z to tool change position in Machine cord.
While IsMoving ' wait for z to move
Wend
Code "G53 G0 X0 Y0" ' Move x,y to tool change position in Machine cord.
While IsMoving ' wait for z to move
Wend

ksjus5vax

Köszönőm hogy szóltál jogos igen lehet törés lenne.
[#worship]

2am4nwzib

Mach3 5-tengely  plugin


000000000

Ez, nagyon jónak tűnik. [#taps]
Köszönet, ezért is meg a sok más dologért, amivel gondolsz ránk![#eljen]

ORCA17

Szerbusztok!

Kérdéssel fordulok a script írásban járatos fórumtárshoz:

Van egy 1024TP képernyő felület, amin kezelni lehet a 3D-s, központ kereső, alkatrész pozíció bemérő funkciókat.


A gondom az, hogy furat központ keresésnél a pozíció felvétel után megindul (helyesen!)az ellentétes irányba, de 2-3 mm megtétele után "ráismétel" és csak utána indul el az ellenkező  oldal pozícióját felvenni.

Nagyobb furat esetében ez nem jelent problémát, van hely a plusz mozgásokra, de kisebb furat bemérése ily módon lehetetlen. Elvileg a tapintó átmérőjétől (4mm) nagyobb furatban kéne tudni használni pl. 6 mm - gondolom én.[#nemtudom]

A probe funkció scriptje:

Rem   VBScript Origo

If GetOemLed (825) <> 0 Then       
   Code "(Touch Probe Not Found)"
Else
   FeedCurrent = GetOemDRO(818)    
   XCurrent = GetDro(10)
   YCurrent = GetDro(10)
   Feed1 = GetUserDRO(1152)
   Feed2 = GetUserDRO(1153)
   MoveX = GetUserDRO(1154)
   MoveY = GetUserDRO(1155)
   Code "G4 P1"         
   

Rem   Touch left

   Code "F" &Feed1         
   XNew = Xcurrent - MoveX      
   Code "G31 X" &XNew
   While IsMoving()      
   Wend
   XPos3 = GetVar(2000)      
   
   code "G0 X" &Xpos3 + 1
   Code "F" &Feed2         
   XNew = XPos3 - 2      
   Code "G31 X" &XNew
   While IsMoving()      
   Wend
   XPos1 = GetVar(2000)      
   Code "G0 X" &XCurrent      

Rem   Touch right

   Code "F" &Feed1         
   XNew = XCurrent + MoveX      
   Code "G31 X" &XNew
   While IsMoving()      
   Wend
   XPos4 = GetVar(2000)
   
   Code "G0 X" &XPos4 - 1      
   Code "F" &Feed2         
   XNew = XPos4 + 2         
   Code "G31 X" &XNew
   While IsMoving()      
   Wend
   XPos2 = GetVar(2000)      


   XCenter = (XPos1 + XPos2) / 2   
   Code "G0 X" &XCenter      
   
Rem   Touch up

   Code "F" &Feed1         
   YNew = YCurrent + MoveY
   Code "G31 Y" &YNew
   While IsMoving()
   Wend
   YPos3 = GetVar(2001)

   Code "G0 Y" &YPos3 - 1
   Code "F" &Feed2         
   YNew = YPos3 + 2
   Code "G31 Y" &YNew
   While IsMoving()
   Wend
   YPos1 = GetVar(2001)
   Code "G0 Y" &YCurrent

Rem   Touch down

   Code "F" &Feed1         
   YNew = YCurrent - MoveY
   Code "G31 Y" &YNew
   While IsMoving()
   Wend
   YPos4 = GetVar(2001)

   Code "G0 Y" &YPos4 + 1
   Code "F" &Feed2         
   YNew = YPos4 - 2
   Code "G31 Y" &YNew
   While IsMoving()
   Wend
   YPos2 = GetVar(2001)
   YCenter = (YPos1 + YPos2) / 2

Rem   Move origo
   
   Code "G0 Y" &YCenter
   While IsMoving ()
   Wend

   Code "F" &FeedCurrent        
   
End If

  
... egy olyan világban, ahol bármi lehetsz, légy kedves!

2am4nwzib

Régen én is szembesültem ezzel a problémával , ha jól emlékszem a a zárójelbeni (értékeket)kell  megváltoztatni.(X,Y,Curent) (Feed =sebesseg) (MoveX,Y).

FeedCurrent = GetOemDRO(818)    
   XCurrent = GetDro(10)
   YCurrent = GetDro(10)
   Feed1 = GetUserDRO(1152)
   Feed2 = GetUserDRO(1153)
   MoveX = GetUserDRO(1154)
   MoveY = GetUserDRO(1155)

ORCA17

Feed1 = GetUserDRO(1152)
Feed2 = GetUserDRO(1153)
MoveX = GetUserDRO(1154)
MoveY = GetUserDRO(1155)


Ezeket az értékeket képernyőn keresztül tudom változtatni.
Ettől függetlenül marad az "ismétlés"
Valahol máshol van a kutyus elhantolva - lehet, hogy magában a .set fájlban?[#nemtudom]

  
... egy olyan világban, ahol bármi lehetsz, légy kedves!

2am4nwzib

Ezt a ,,Scrennt,, nem ismerem DE , van egy funkciójá(update)
 ,,relod brain,.---enable(pipa) ---relod brain vagy relod all.
Frissiteni---gondolom at írja( de azt meg lehet  nézni a scriptben)

  

ORCA17

ez nagyjából tiszta, világos...de azt nem tudom, hogy hol van, hol keressem azt a kód részt, ami az ismétlésre utal. Nem szeretem a "hályogkovács" attitűdöt [#nyes]
... egy olyan világban, ahol bármi lehetsz, légy kedves!

2am4nwzib

Az ,,ArtsoftMach3,, forumon itt elég részletesen elmagyarázzák .

2am4nwzib

A cod a ,,macro,, folderben van

2am4nwzib

A folyamat ;
1----Operator
2----Edit Buton
3----klikk az Ikonra(center finder)

  

ORCA17

Ez nagyon szuper, köszönöm a velem való törődésed[#integet2]
Ami különbség a két eljárás között - már amit én használok és amit Te megmutattál - lényeges.
Én az elektromos megszakítás elvén működő eszközt használok és a videón az elektromos kapcsolás elvén működő eszköz szerepel.

Ettől független nagyon praktikus, mert magával a szerszámmal is képes középre állni és rögtön képes a szerszám magasságát is bemérni.
Letöltöttem a scriptet is.[#eljen]
Továbbá nincs az az ominózus "ismétlés" és több dolgot is lehet beállítani a működést illetően.

Holnap kipróbálok pár dolgot.

Köszönöm
Csaba

Én ezt használom

  
... egy olyan világban, ahol bármi lehetsz, légy kedves!