diff --git a/Beam/BeamData.lua b/Beam/BeamData.lua index e816670..26c3799 100644 --- a/Beam/BeamData.lua +++ b/Beam/BeamData.lua @@ -20,7 +20,7 @@ local BeamData = { MINRAW_L = 1070, -- minimo grezzo in coda scaricabile per sezioni grandi MAX_LEN_SCRAP = 270, -- massima lunghezza scarto di coda MAX_LEN_SCRAP_START = 270, -- massima lunghezza scarto di testa - MAX_DIM_HTCUT = 205, -- larghezza massima taglio di testa o coda + MAX_DIM_HTCUT = 130, -- larghezza massima taglio di testa o coda MAX_DIM_HTCUT_HBEAM = -195, -- larghezza massima taglio di testa o coda con trave alta MIN_DIM_HBEAM = 621, -- altezza minima di trave alta MAX_DIM_DICE = 155, -- dimensione trasversale massima cubetto @@ -32,7 +32,7 @@ local BeamData = { CUT_EXTRA_MIN = 1, -- affondamento extra ridotto per tagli di lama e fresature NZ_MINA = -0.6, -- componente limite in Z normale di una faccia (-36.8deg) NZ_MINB = -0.4, -- componente limite in Z normale di un insieme di facce (-23deg) - DRILL_TOL = 0.2, -- tolleranza tra diametro foro e diametro punta + DRILL_TOL = 0.5, -- tolleranza tra diametro foro e diametro punta DRILL_VZ_MIN = -0.51, -- componente limite in Z del versore di un foro DRILL_VX_MAX = 0.867, -- componente limite in X del versore di un foro sulle facce laterali DRILL_OVERLAP = 5, -- sovrapposizione tra due mezze forature @@ -43,7 +43,7 @@ local BeamData = { LONGCUT_MAXLEN = 1200, -- lunghezza massima sezione di taglio longitudinale (std=1200) MAX_LEN_RIDGELAP_FROM_BOTTOM = 141, -- massima lunghezza ridgelap lavorabile da sotto MAX_LEN_RIDGELAP_FROM_BOTTOM_HBEAM = 96, -- massima lunghezza ridgelap lavorabile da sotto con trave alta - DIM_TO_CENTER_STRIP = 100, -- larghezza minima trave per inseriemento codolo nel centro del trave; 0 = automatico + DIM_TO_CENTER_STRIP = 50, -- larghezza minima trave per inserimento codolo nel centro del trave; 0 = automatico DIM_STRIP = -1, -- dimensione codolo sostegno parti lasciate su contorno libero o archi (-1 = da Q...) DIM_STRIP_SMALL = 1, -- dimensione codolo piccolo (quando le parti sostenute sono sicuramente sulla parte sopra del pezzo) RAWCOL = { 255, 160, 32, 30}, -- colore del grezzo @@ -57,7 +57,7 @@ local BeamData = { MAX_HEIGHT_ROT_B_ABOVE = 500, -- massima altezza della trave che permette di ruotare l'asse B sopra la stessa senza collisioni KIOTP = 3, -- coefficiente moltiplicativo per attacco/uscita lama tangente anzichè perpendicolare MAXDIAM_POCK_CORNER = 30, -- diametro massimo utensile ammesso per tasche con angoli interni - ADVANCE_TAIL_CUT = true, -- per spostare prima del taglio di separazione il taglio di coda su pezzi corti con robabile caduta + ADVANCE_TAIL_CUT = true, -- per spostare prima del taglio di separazione il taglio di coda su pezzi corti con probabile caduta ADVANCE_TAIL_OFFS = 5, -- accorciamento taglio di coda avanzato (minimo 1) } @@ -89,13 +89,19 @@ if EgtExistsFile( sData) then end end +------------------------------------------------------------------------------------------------------------- +local function GetNzLimDownUp( b3Raw, vtN, vtOrtho, bDiceCut) + return -0.173 +end +BeamData.GetNzLimDownUp = GetNzLimDownUp + --------------------------------------------------------------------- local function GetChainSawBlockedAxis( nInd) - --if nInd == 1 then - -- return 'CS=-90' - --else - return 'CS=0' - --end + if nInd == 1 then + return 'CS=0' + else + return 'CS=-90' + end end BeamData.GetChainSawBlockedAxis = GetChainSawBlockedAxis diff --git a/Saomad-KAIROS.SIEMENS.mlpe b/Saomad-KAIROS.SIEMENS.mlpe index 49070de..60503af 100644 --- a/Saomad-KAIROS.SIEMENS.mlpe +++ b/Saomad-KAIROS.SIEMENS.mlpe @@ -306,7 +306,7 @@ function OnToolSelect() if sTool ~= EMT.TOOL then error( "Tool name mismatch") end -- predefinite EMT.TCPOS EMT.HEAD EMT.EXIT EMT.TOOLTYPE = EgtTdbGetCurrToolParam( MCH_TP.TYPE) - EMT.TOOLSEL = EMT.TCPOS..' M06' + EMT.TOOLSEL = string.sub( EMT.TCPOS, 2) EMT.TDIAM = EgtTdbGetCurrToolParam( MCH_TP.DIAM) EMT.TTOTDIAM = EgtTdbGetCurrToolParam( MCH_TP.TOTDIAM) EMT.TLEN = EgtTdbGetCurrToolParam( MCH_TP.LEN) @@ -609,8 +609,7 @@ function OnRapid() local sStep = EgtNumToString( EMT.NSTEP, 0) EmtOutput( '_N'..sStep..':STOPRE') end - local nTool = 100 + tonumber( string.sub( EMT.TCPOS, 2)) - local sOut = 'PRE_WORK(1,1,' .. EgtNumToString( nTool, 0) .. ','..EgtNumToString( EMT.S, 0) ..',,,,)' + local sOut = 'PRE_WORK(1,1,' .. EMT.TOOLSEL .. ','..EgtNumToString( EMT.S, 0) ..',,,,)' EmtOutput( sOut) EMT.SPEED_ON = true -- eventuali emissioni per ripartenza successiva al carico @@ -619,8 +618,7 @@ function OnRapid() EmtOutput( 'GOTOF '..'_N'..sStep1) local sStep = EgtNumToString( EMT.NSTEP, 0) EmtOutput( '_N'..sStep..':STOPRE') - local nTool = 100 + tonumber( string.sub( EMT.TCPOS, 2)) - local sOut = 'PRE_WORK(1,1,' .. EgtNumToString( nTool, 0) .. ','..EgtNumToString( EMT.S, 0) ..',,,,)' + local sOut = 'PRE_WORK(1,1,' .. EMT.TOOLSEL .. ','..EgtNumToString( EMT.S, 0) ..',,,,)' EmtOutput( sOut) EMT.SPEED_ON = true EmtOutput( '_N'..sStep1..':STOPRE') @@ -635,6 +633,11 @@ function OnRapid() sOut = 'SUPA G0 D0' .. EmtGetAxis( 'L3') end EmtOutput( sOut) + -- sega a catena da gestire + if EMT.HEAD == 'H3' then + EmtOutput( '!!! Chainsaw start movements to be calculated !!!') + EgtOutLog( 'ERROR : CHAINSAW START MOVEMENTS TO BE CALCULATED !!!') + end -- movimento YAC con interpolazione approssimata tramite F opportune per ogni asse --EmtOutput( string.format( '; Y:%.3f->%.3f A:%.3f->%.3f C::%.3f->%.3f', EMT.L2opp, EMT.L2, EMT.R2pp, EMT.R2, EMT.R1pp, EMT.R1)) local dFeedY, dFeedA, dFeedC = CalcFeedYAC( EMT.L2opp - EMT.L2, EMT.R2pp - EMT.R2, EMT.R1pp - EMT.R1) @@ -1643,23 +1646,6 @@ function MyAdjustLinearAxes() local MyL2o = EMT.L2 local MyL3o = EMT.L3 - --if EMT.REFLOC then - -- local vtE - -- if EMT.HEAD ~= 'H3' then - -- local Len = EMT.TLEN + EgtIf( EMT.HEAD == 'H1', MillOffs, abs( 0)) - -- local LenRef = MillOffs - -- vtE = Vector3d( EMT.EXTR) * Len - Z_AX() * LenRef - -- else - -- local LenAux = ( EMT.TDIST or ChSawLen) + MillOffs - -- local LenRef = MillOffs - -- local vtAux = EgtGetCalcAuxDirFromAngles( EMT.R1, EMT.R2, EMT.R3) - -- vtE = vtAux * LenAux - Z_AX() * LenRef - -- end - -- EMT.L1 = EMT.L1 - vtE:getX() - -- EMT.L2 = EMT.L2 - vtE:getY() - -- EMT.L3 = EMT.L3 - vtE:getZ() - --end - if EMT.X_OFF then EMT.L1 = EMT.L1 + EMT.X_OFF end EmtAdjustLinearAxes() diff --git a/Saomad-KAIROS.ini b/Saomad-KAIROS.ini index 982f7aa..3243a97 100644 --- a/Saomad-KAIROS.ini +++ b/Saomad-KAIROS.ini @@ -105,7 +105,7 @@ Default=Standard [Estimations] Enable=1 -WinPlace=0,458,74,669,933 +WinPlace=0,698,85,669,863 [VMill] Enable=1 diff --git a/Saomad-KAIROS.mlde b/Saomad-KAIROS.mlde index 34d4625..8098a2e 100644 --- a/Saomad-KAIROS.mlde +++ b/Saomad-KAIROS.mlde @@ -1,12 +1,13 @@ --- Descrizione macchina Saomad-KAIROS by EgalWare s.r.l. 2024/06/27 +-- Descrizione macchina Saomad-KAIROS by EgalWare s.r.l. 2024/07/08 -- 2024/06/27 ver 2.6f1 Prima versione (derivata da Kairos023) -- 2024/07/01 ver 2.6g1 Aggiornato 3D con nuovo gruppo testa -- 2024/07/03 ver 2.6g2 Aggiornato 3D con modello reale e altre piccole modifiche +-- 2024/07/08 ver 2.6g3 Aggiunta gestione sega a catena (MANCA generazione codice CN). require( 'EmtGenerator') EgtEnableDebug( false) -PP_VER = '2.6g2' +PP_VER = '2.6g3' MIN_MACH_VER = '2.5j1' EgtOutLog ( '** Saomad-KAIROS '..PP_VER..' (MinMach '.. MIN_MACH_VER ..') **', 1) @@ -177,7 +178,7 @@ EmtAxis { Type = MCH_AT.ROTARY, Dir = Z_AX(), Pos = Point3d( 0, 0, 0), - Stroke = { -90, 90}, + Stroke = { -90, 0}, Home = 0, Geo = 'CS_AXIS/GEO'} local H3Id = EmtHead { @@ -277,98 +278,98 @@ EmtTable { -- ToolChanger 10 posizioni verticale local ptTcCen = Point3d( -520.9759, -817, 1056.0424) EmtTcPos { - Name = 'T1', + Name = 'T101', Parent = 'Base', Pos = ptTcCen, TDir = X_AX(), ADir = Y_AX(), - Geo = 'BASE/T1'} + Geo = 'BASE/T101'} EmtTcPos { - Name = 'T2', + Name = 'T102', Parent = 'Base', Pos = ptTcCen - Vector3d( 0, 0, 110), TDir = X_AX(), ADir = Y_AX(), - Geo = 'BASE/T2'} + Geo = 'BASE/T102'} EmtTcPos { - Name = 'T3', + Name = 'T103', Parent = 'Base', Pos = ptTcCen - Vector3d( 0, 0, 110*2), TDir = X_AX(), ADir = Y_AX(), - Geo = 'BASE/T3'} + Geo = 'BASE/T103'} EmtTcPos { - Name = 'T4', + Name = 'T104', Parent = 'Base', Pos = ptTcCen - Vector3d( 0, 0, 110*3), TDir = X_AX(), ADir = Y_AX(), - Geo = 'BASE/T4'} + Geo = 'BASE/T104'} EmtTcPos { - Name = 'T5', + Name = 'T105', Parent = 'Base', Pos = ptTcCen - Vector3d( 0, 0, 110*4), TDir = X_AX(), ADir = Y_AX(), - Geo = 'BASE/T5'} + Geo = 'BASE/T105'} EmtTcPos { - Name = 'T6', + Name = 'T106', Parent = 'Base', Pos = ptTcCen - Vector3d( 0, 0, 110*5), TDir = X_AX(), ADir = Y_AX(), - Geo = 'BASE/T6'} + Geo = 'BASE/T106'} EmtTcPos { - Name = 'T7', + Name = 'T107', Parent = 'Base', Pos = ptTcCen - Vector3d( 0, 0, 110*6), TDir = X_AX(), ADir = Y_AX(), - Geo = 'BASE/T7'} + Geo = 'BASE/T107'} EmtTcPos { - Name = 'T8', + Name = 'T108', Parent = 'Base', Pos = ptTcCen - Vector3d( 0, 0, 110*7), TDir = X_AX(), ADir = Y_AX(), - Geo = 'BASE/T8'} + Geo = 'BASE/T108'} EmtTcPos { - Name = 'T9', + Name = 'T109', Parent = 'Base', Pos = ptTcCen - Vector3d( 0, 0, 110*8), TDir = X_AX(), ADir = Y_AX(), - Geo = 'BASE/T9'} + Geo = 'BASE/T109'} EmtTcPos { - Name = 'T10', + Name = 'T110', Parent = 'Base', Pos = ptTcCen - Vector3d( 0, 0, 110*9), TDir = X_AX(), ADir = Y_AX(), - Geo = 'BASE/T10'} + Geo = 'BASE/T110'} EmtTcPos { - Name = 'T11', + Name = 'T111', Parent = 'Base', Pos = ptTcCen - Vector3d( 0, 0, 110*10), TDir = X_AX(), ADir = Y_AX(), - Geo = 'BASE/T11'} + Geo = 'BASE/T111'} -- ToolChanger lama EmtTcPos { - Name = 'T21', + Name = 'T201', Parent = 'Base', Pos = Point3d( 508.0241, -748.997, 271.8273), TDir = -X_AX(), ADir = -Y_AX(), - Geo = 'BASE/T21'} + Geo = 'BASE/T201'} -- ToolChanger motosega EmtTcPos { - Name = 'T22', + Name = 'T202', Parent = 'Base', Pos = Point3d( 656.5865, -768.913, 715.2899), TDir = -X_AX(), ADir = Z_AX(), - Geo = 'BASE/T22'} + Geo = 'BASE/T202'} -- Aggiusto posizioni geometriche local vtMove = Vector3d( 0, ( DeltaTabY - 0), ( DeltaTabZ - 0)) @@ -408,20 +409,17 @@ function OnSetHead() -- aggiustamenti per distanza local dDist = EgtIf( EMC.DIST and abs( EMC.DIST) > 1, EMC.DIST, ChSawLen) EmtModifyExitPosition( EMC.HEAD, EMC.EXIT, Point3d( 0, 0, -dDist)) - if not EMC.VER or EMC.VER < '2.5h2' then - local vtMove = Point3d( 0, 0, -dDist) - Point3d( EMC.EXITPOS) - local ExitId = EgtGetFirstNameInGroup( EgtGetHeadId( EMC.HEAD), 'T'..tostring( EMC.EXIT)) - EgtMove( ExitId, vtMove) - end -- recupero valore asse CS bloccato local sVal = EgtGetMachiningParam( MCH_MP.BLOCKEDAXIS) local dPosCS = tonumber( sVal:sub( 4) or '') EmtModifyAxisHome( 'C', GetChainSawCHomeFromVirtualAxis( dPosCS)) + -- limiti asse A + EmtModifyAxisStroke( 'A', { -91, 91}) -- altrimenti else EmtModifyAxisHome( 'C', ParkC) -- se lama - if EMC.TCPOS == 'T21' then + if EMC.TCPOS == 'T201' then EmtModifyAxisStroke( 'A', { -100, 100}) -- altrimenti else @@ -435,10 +433,10 @@ end function GetChainSawCHomeFromVirtualAxis( dPosCS) -- se CS=0 -> HomeC = -90 if abs( dPosCS) < 0.1 then - return 90 - -- altrimenti CS=90 -> HomeC = -180 + return -90 + -- altrimenti CS=-90 -> HomeC = -180 else - return 0 + return -180 end end diff --git a/Saomad-KAIROS.mlpe b/Saomad-KAIROS.mlpe index 08bc01a..e8ca02c 100644 --- a/Saomad-KAIROS.mlpe +++ b/Saomad-KAIROS.mlpe @@ -36,6 +36,8 @@ function OnSimulStart() end end end + -- Carico l'utensile iniziale o di default sulla testa + LoadFirstTool() -- Se reset o home, esco if EMT.SIM1ST then return end -- Creo o svuoto gruppo per copia finale degli oggetti virtual milling @@ -128,17 +130,6 @@ function OnSimulDispositionStart() EMT.SB = b3Sol:getDimY() EMT.HB = b3Sol:getDimZ() end - -- Carico primo utensile sulla testa 1 - local sTool, nTlen = FindFirstToolOnHead( 'H1') - if sTool then - EMT.TOOL_1 = sTool - else - EMT.TOOL_1 = GetDefaultToolName() - end - EgtLoadTool( 'H1', 1, EMT.TOOL_1) - EMT.TCPOS_1 = GetToolTcPos( EMT.TOOL_1) - ShowToolInTcPos( EMT.TCPOS_1, false) - EMT.LOAD = true -- Se vero inizio e abilitato creo gli Zmap EMT.VMILL = {} if not EMT.SIM1ST and EgtGetInfo( EgtGetCurrMachGroup(), 'Vm', 'b') then @@ -471,7 +462,12 @@ function OnSimulToolDeselect() -- movimento scarico sega a catena if EMT.HEAD == 'H3' then local dPosCS = EgtGetAxisPos( 'CS') - SimulMoveAxes( 'A', ParkA, MCH_SIM_STEP.COLLROT, 'C', GetChainSawCHomeFromVirtualAxis( dPosCS), MCH_SIM_STEP.COLLROT) + if abs( dPosCS) > 0.1 then + SimulMoveAxis( 'A', ParkA, MCH_SIM_STEP.COLLROT) + SimulMoveAxis( 'C', GetChainSawCHomeFromVirtualAxis( dPosCS), MCH_SIM_STEP.COLLROT) + else + SimulMoveAxes( 'A', ParkA, MCH_SIM_STEP.COLLROT, 'C', GetChainSawCHomeFromVirtualAxis( dPosCS), MCH_SIM_STEP.COLLROT) + end SimulMoveAxis( 'Y', ParkY, MCH_SIM_STEP.RAPID) end -- breve pausa @@ -509,7 +505,7 @@ function OnSimulMachiningStart() if EMT.HEAD == 'H3' and EMT.HEAD == EMT.PREVHEAD then local dPrevCS = EgtGetAxisPos( 'CS') local sVal = EgtGetMachiningParam( MCH_MP.BLOCKEDAXIS) - local dPosCS = tonumber( sVal:sub( 3)) + local dPosCS = tonumber( sVal:sub( 4)) if abs( dPosCS - dPrevCS) > 1 then OnSimulToolDeselect() EgtSetStatus( EgtGetHeadId( EMT.HEAD), GDB_ST.ON) @@ -654,6 +650,10 @@ function OnSimulMoveStart() VerifyX2Stroke( EMT.A2) -- se inizio lavorazione if EMT.MCHFIRST then + if EMT.HEAD == 'H3' and abs( EgtGetAxisPos( 'CS')) > 0.1 and not EMT.R1p or abs( EMT.R1 - EMT.R1p) > 15 then + SimulMoveAxis( 'A', ParkA, MCH_SIM_STEP.COLLROT) + SimulMoveAxis( 'C', EMT.R1, MCH_SIM_STEP.COLLROT) + end EgtOutText( '') EMT.MCHFIRST = false EMT.POSTROT = nil @@ -969,22 +969,38 @@ function GetToolTcPos( sTool) return sTcPos end +--------------------------------------------------------------------- +function LoadFirstTool() + -- Carico primo utensile sulla testa 1 + local sTool, nTlen = FindFirstToolOnHead( 'H1') + if sTool then EMT.TOOL_1 = sTool else EMT.TOOL_1 = GetDefaultToolName() end + EMT.TCPOS_1 = GetToolTcPos( EMT.TOOL_1) + local OrigEMC = EMC + EMC = { HEAD = 'H1', TOOL = EMT.TOOL_1, TCPOS = EMT.TCPOS_1} + OnSetHead() + EMC = OrigEMC + EgtResetAxisPos( 'C') ; EgtResetAxisPos( 'A') + EgtLoadTool( 'H1', 1, EMT.TOOL_1) + ShowToolInTcPos( EMT.TCPOS_1, false) + EMT.LOAD = true +end --------------------------------------------------------------------- -- *** ESTIMATION T&L *** --------------------------------------------------------------------- -local RAPID_X_FEED = 75000 -- mm/min -local RAPID_Y_FEED = 100000 -- mm/min -local RAPID_Z_FEED = 50000 -- mm/min -local RAPID_C_FEED = 15000 -- deg/min -local RAPID_B_FEED = 15000 -- deg/min -local RAPID_MIN_T = 0.1 -- s -local LOAD_T = 6 -- s -local CHAR_ONE_MOVE_T = 1 -- s +local RAPID_X_FEED = FmaxX1 -- mm/min +local RAPID_Y_FEED = FmaxY -- mm/min +local RAPID_Z_FEED = FmaxZ -- mm/min +local RAPID_C_FEED = FmaxC -- deg/min +local RAPID_B_FEED = FmaxA -- deg/min +local RAPID_MIN_T = 0.2 -- s +local TOOL_CHANGE = 14 -- s +local LOAD_T = 16 -- s +local CHAR_ONE_MOVE_T = 2 -- s local ROTATION_T = 40 -- s -local SPLIT_T = 6 -- s -local UNLOAD_T = 6 -- s -local FALL_T = 2 -- s +local SPLIT_T = 9 -- s +local UNLOAD_T = 12 -- s +local FALL_T = 4 -- s --------------------------------------------------------------------- function OnEstimStart() @@ -1076,6 +1092,8 @@ end --------------------------------------------------------------------- function OnEstimToolSelect() + -- flag di utensile cambiato + EMT.NEWTOOL = true -- reset indice utensile in tabella lunghezze EMT.TCLIND = 0 -- verifico che l'utensile sia definito @@ -1108,6 +1126,10 @@ function OnEstimMachiningStart() EMT.MCHCUTTIME = 0 EMT.MCHEXTLEN = 0 EMT.MCHEXTTIME = 0 + if EMT.NEWTOOL then + EMT.NEWTOOL = nil + EMT.MCHEXTTIME = EMT.MCHEXTTIME + TOOL_CHANGE + end end --------------------------------------------------------------------- diff --git a/Saomad-KAIROS.nge b/Saomad-KAIROS.nge index 321af2b..86bc2f5 100644 Binary files a/Saomad-KAIROS.nge and b/Saomad-KAIROS.nge differ diff --git a/Scripts/SetUp.lua b/Scripts/SetUp.lua index de04f2b..80f9c0c 100644 --- a/Scripts/SetUp.lua +++ b/Scripts/SetUp.lua @@ -27,19 +27,19 @@ local POS = "Pos" local GS = {} -- Configurazione posizioni -local PositionTable={{Pos = "Pos1", TcPos = "T1", Head = "H1", Group = "G1"}, - {Pos = "Pos2", TcPos = "T2", Head = "H1", Group = "G1"}, - {Pos = "Pos3", TcPos = "T3", Head = "H1", Group = "G1"}, - {Pos = "Pos4", TcPos = "T4", Head = "H1", Group = "G1"}, - {Pos = "Pos5", TcPos = "T5", Head = "H1", Group = "G1"}, - {Pos = "Pos6", TcPos = "T6", Head = "H1", Group = "G1"}, - {Pos = "Pos7", TcPos = "T7", Head = "H1", Group = "G1"}, - {Pos = "Pos8", TcPos = "T8", Head = "H1", Group = "G1"}, - {Pos = "Pos9", TcPos = "T9", Head = "H1", Group = "G1"}, - {Pos = "Pos10", TcPos = "T10", Head = "H1", Group = "G1"}, - {Pos = "Pos11", TcPos = "T11", Head = "H1", Group = "G1"}, - {Pos = "Pos12", TcPos = "T21", Head = "H1", Group = "G2"}, - {Pos = "Pos13", TcPos = "T22", Head = "H3", Group = "G3"}} +local PositionTable={{Pos = "Pos1", TcPos = "T101", Head = "H1", Group = "G1"}, + {Pos = "Pos2", TcPos = "T102", Head = "H1", Group = "G1"}, + {Pos = "Pos3", TcPos = "T103", Head = "H1", Group = "G1"}, + {Pos = "Pos4", TcPos = "T104", Head = "H1", Group = "G1"}, + {Pos = "Pos5", TcPos = "T105", Head = "H1", Group = "G1"}, + {Pos = "Pos6", TcPos = "T106", Head = "H1", Group = "G1"}, + {Pos = "Pos7", TcPos = "T107", Head = "H1", Group = "G1"}, + {Pos = "Pos8", TcPos = "T108", Head = "H1", Group = "G1"}, + {Pos = "Pos9", TcPos = "T109", Head = "H1", Group = "G1"}, + {Pos = "Pos10", TcPos = "T110", Head = "H1", Group = "G1"}, + {Pos = "Pos11", TcPos = "T111", Head = "H1", Group = "G1"}, + {Pos = "Pos12", TcPos = "T201", Head = "H1", Group = "G2"}, + {Pos = "Pos13", TcPos = "T202", Head = "H3", Group = "G3"}} if EgtGetHeadId( 'H3') then PositionTable[13].Head = 'H3' end diff --git a/ToolNotes.ini b/ToolNotes.ini index a9a0f63..59200f9 100644 --- a/ToolNotes.ini +++ b/ToolNotes.ini @@ -1,20 +1,23 @@ ; Commento per evitare BOM con UTF-8 ; Index, Type, Description, Value ; Index = 0,1,..,n -; Type : d=double, l=lenght, s=string, b=boolean, dr=double recalc, sr= string recalc, lr=lenght recalc, br=boolean recalc +; Type : d=double, l=lenght, s=string, b=boolean, dr=double recalc, sr= string recalc, lr=lenght recalc, br=boolean recalc, th=toolholder ; Description : STEP, SIDESTEP, ... [DRILL_STD] -0=sr,TH, +0=th,TH, [SAW_STD] +0=th,TH, [SAW_FLAT] +0=th,TH, [MILL_STD] -0=sr,TH, +0=th,TH, [MILL_NOTIP] -0=sr,TH, +0=th,TH, [MORTISE_STD] +0=th,TH,