Aggiunta gestione testa H12, lama su rinvio anche in generazione

This commit is contained in:
andrea.villa
2026-04-07 09:25:40 +02:00
parent 9585b06976
commit 5fe8e8caf0
7 changed files with 24 additions and 29 deletions
+14 -19
View File
@@ -5,7 +5,7 @@
-- Aggiunta controllo collisione con nuovi oggetti -- Aggiunta controllo collisione con nuovi oggetti
require( 'EmtGenerator') require( 'EmtGenerator')
EgtEnableDebug( false) EgtEnableDebug( true)
if not EmtModifyHeadAuxDirection then error( 'A newer version of the program is required (minimum 2.3j5)') end if not EmtModifyHeadAuxDirection then error( 'A newer version of the program is required (minimum 2.3j5)') end
PP_VER = '3.1d1_DEV4' PP_VER = '3.1d1_DEV4'
@@ -34,9 +34,9 @@ MinX2 = 1047.0
MaxX2 = 6080.0 MaxX2 = 6080.0
MinZ2 = -770.0 MinZ2 = -770.0
MaxZ2 = 0.0 MaxZ2 = 0.0
SawDeltaX = 33.65 SawOffsX = 111.0
SawDeltaY = 210.0 SawOffsY = 0
SawDeltaZ = -133.0 SawOffsZ = -150.25
SawC1Offs = 0 SawC1Offs = 0
SawB1Offs = 0 SawB1Offs = 0
SawOffs = 115.5 SawOffs = 115.5
@@ -119,6 +119,10 @@ if EgtExistsFile( sData) then
if MchOffs.ZERO_Y_MILL and MchOffs.ZERO_Y_SAW then SawDeltaX = ( MchOffs.ZERO_Y_MILL - MchOffs.ZERO_Y_SAW) end if MchOffs.ZERO_Y_MILL and MchOffs.ZERO_Y_SAW then SawDeltaX = ( MchOffs.ZERO_Y_MILL - MchOffs.ZERO_Y_SAW) end
if MchOffs.ZERO_X_MILL and MchOffs.ZERO_X_SAW then SawDeltaY = - ( MchOffs.ZERO_X_MILL - MchOffs.ZERO_X_SAW) end if MchOffs.ZERO_X_MILL and MchOffs.ZERO_X_SAW then SawDeltaY = - ( MchOffs.ZERO_X_MILL - MchOffs.ZERO_X_SAW) end
if MchOffs.ZERO_Z_MILL and MchOffs.ZERO_Z_SAW then SawDeltaZ = ( MchOffs.ZERO_Z_MILL - MchOffs.ZERO_Z_SAW) end if MchOffs.ZERO_Z_MILL and MchOffs.ZERO_Z_SAW then SawDeltaZ = ( MchOffs.ZERO_Z_MILL - MchOffs.ZERO_Z_SAW) end
if Machine.SAWOFFSX then SawOffsX = Machine.SAWOFFSX end
if Machine.SAWOFFSZ then SawOffsZ = Machine.SAWOFFSZ end
if Machine.OFFSETCLAMAT1 then SawC1Offs= Machine.OFFSETCLAMAT1 end
if Machine.OFFSETBLAMAT1 then SawB1Offs= Machine.OFFSETBLAMAT1 end
if MchOffs.ZERO_Y_MILL and MchOffs.ZERO_NAIL11_Y then Nail11DeltaX = ( MchOffs.ZERO_Y_MILL - MchOffs.ZERO_NAIL11_Y) end if MchOffs.ZERO_Y_MILL and MchOffs.ZERO_NAIL11_Y then Nail11DeltaX = ( MchOffs.ZERO_Y_MILL - MchOffs.ZERO_NAIL11_Y) end
if MchOffs.ZERO_X_MILL and MchOffs.ZERO_NAIL11_X then Nail11DeltaY = - ( MchOffs.ZERO_X_MILL - MchOffs.ZERO_NAIL11_X) end if MchOffs.ZERO_X_MILL and MchOffs.ZERO_NAIL11_X then Nail11DeltaY = - ( MchOffs.ZERO_X_MILL - MchOffs.ZERO_NAIL11_X) end
if MchOffs.ZERO_Z_MILL and MchOffs.ZERO_NAIL11_Z then Nail11DeltaZ = ( MchOffs.ZERO_Z_MILL - MchOffs.ZERO_NAIL11_Z) end if MchOffs.ZERO_Z_MILL and MchOffs.ZERO_NAIL11_Z then Nail11DeltaZ = ( MchOffs.ZERO_Z_MILL - MchOffs.ZERO_NAIL11_Z) end
@@ -149,10 +153,6 @@ if EgtExistsFile( sData) then
end end
end end
-- Spostamenti della lama rispetto al disegno
local SawOffsX = SawDeltaX - 33.65
local SawOffsY = SawDeltaY - 210.0
local SawOffsZ = SawDeltaZ + 133.0
-- Spostamenti delle chiodatrici rispetto al disegno -- Spostamenti delle chiodatrici rispetto al disegno
local Nail11OffsX = Nail11DeltaX - 318.0 local Nail11OffsX = Nail11DeltaX - 318.0
local Nail11OffsY = Nail11DeltaY + 112.5 local Nail11OffsY = Nail11DeltaY + 112.5
@@ -262,10 +262,10 @@ EmtHead {
EmtHead { EmtHead {
Name = 'H12', Name = 'H12',
Parent = 'B1', Parent = 'B1',
HSet = 'H12', HSet = 'H1',
Type = MCH_HT.STD, Type = MCH_HT.STD,
Pos = Point3d( -110, 0, -150), Pos = Point3d( SawOffsX, SawOffsY, SawOffsZ),
TDir = Z_AX(), TDir = Vector3d( 0, sin( SawB1Offs), cos( SawB1Offs)),
ADir = X_AX(), ADir = X_AX(),
Rot1W = 0.1, Rot1W = 0.1,
OthColl = {'B1/SOLID', 'C1/SOLID'}, OthColl = {'B1/SOLID', 'C1/SOLID'},
@@ -430,16 +430,11 @@ function OnSetHead()
EmtModifyAxisHome( 'C1', ParkC1) EmtModifyAxisHome( 'C1', ParkC1)
EmtModifyHeadAuxDirection( 'H1', Y_AX()) EmtModifyHeadAuxDirection( 'H1', Y_AX())
end end
elseif EMC.HEAD == '12' then elseif EMC.HEAD == 'H12' then
EmtModifyAxisHome( 'X1', ParkX1) EmtModifyAxisHome( 'Z1', -150)
EmtModifyAxisHome( 'Z1', ParkZ1)
EmtModifyAxisHome( 'C1', ParkC1) EmtModifyAxisHome( 'C1', ParkC1)
EmtModifyAxisHome( 'B1', ParkB1) EmtModifyAxisHome( 'B1', ParkB1)
if EMC.HEAD == 'H12' then EmtModifyAxisDirection( 'B1', Vector3d( cos( SawC1Offs), -sin( SawC1Offs), 0))
EmtModifyAxisDirection( 'B1', Vector3d( cos( SawC1Offs), -sin( SawC1Offs), 0))
else
EmtModifyAxisDirection( 'B1', X_AX())
end
else else
EmtModifyAxisStroke( 'B1', { MinB1, MaxB1}) EmtModifyAxisStroke( 'B1', { MinB1, MaxB1})
EmtModifyAxisHome( 'C1', ParkC1) EmtModifyAxisHome( 'C1', ParkC1)
+7 -7
View File
@@ -352,7 +352,7 @@ function OnRapid()
EmtResetPrev() EmtResetPrev()
local sOut = 'G101' .. EmtGetAxis( 'L1') .. EmtGetAxis( 'L2') .. EmtGetAxis( 'L3') .. local sOut = 'G101' .. EmtGetAxis( 'L1') .. EmtGetAxis( 'L2') .. EmtGetAxis( 'L3') ..
EmtGetAxis( 'R2') .. EmtGetAxis( 'R1') EmtGetAxis( 'R2') .. EmtGetAxis( 'R1')
if EMT.HEAD == 'H1' or EMT.HEAD == 'H3' or ( EMT.HEAD == 'H14' and not EMT.DOUBLE) then if EMT.HEAD == 'H1' or EMT.HEAD == 'H12' or EMT.HEAD == 'H3' or ( EMT.HEAD == 'H14' and not EMT.DOUBLE) then
sOut = sOut .. ' U' .. EmtLenToString( MinX2, 3) .. ' W0 V0 A0' sOut = sOut .. ' U' .. EmtLenToString( MinX2, 3) .. ' W0 V0 A0'
elseif EMT.HEAD == 'H14' then elseif EMT.HEAD == 'H14' then
sOut = sOut .. ' U' .. EmtLenToString( EMT.L2 - EMT.DELTA, 3) .. ' W0 V0 A0' sOut = sOut .. ' U' .. EmtLenToString( EMT.L2 - EMT.DELTA, 3) .. ' W0 V0 A0'
@@ -616,11 +616,11 @@ function MyAdjustLinearAxes()
if EMT.REFLOC then if EMT.REFLOC then
local vtDelta = V_NULL() local vtDelta = V_NULL()
local vtE = V_NULL() local vtE = V_NULL()
if EMT.HEAD == 'H1' then if EMT.HEAD == 'H1' or EMT.HEAD == 'H12' then
local Len = EMT.TLEN + MillOffs local dAddLen = EgtIf( EMT.HEAD == 'H12', -SawOffsZ, 0)
local Len = EMT.TLEN + dAddLen + MillOffs
local LenRef = MillOffs local LenRef = MillOffs
local vtTool = EgtGetCalcToolDirFromAngles( EMT.R1, EMT.R2, EMT.R3) vtE = Vector3d( EMT.TDIR) * Len - Z_AX() * LenRef
vtE = vtTool * Len - Z_AX() * LenRef
elseif EMT.HEAD == 'H2' then elseif EMT.HEAD == 'H2' then
vtDelta = -Vector3d( SawDeltaX, SawDeltaY, SawDeltaZ) vtDelta = -Vector3d( SawDeltaX, SawDeltaY, SawDeltaZ)
elseif EMT.HEAD == 'H3' then elseif EMT.HEAD == 'H3' then
@@ -721,7 +721,7 @@ end
--------------------------------------------------------------------- ---------------------------------------------------------------------
function GetET() function GetET()
local sET local sET
if EMT.HEAD == 'H1' or EMT.HEAD == 'H3' then if EMT.HEAD == 'H1' or EMT.HEAD == 'H12' or EMT.HEAD == 'H3' then
sET = ' ET2' sET = ' ET2'
elseif EMT.HEAD == 'H2' then elseif EMT.HEAD == 'H2' then
sET = ' ET1' sET = ' ET1'
@@ -738,7 +738,7 @@ end
--------------------------------------------------------------------- ---------------------------------------------------------------------
function GetEU() function GetEU()
local sEU local sEU
if EMT.HEAD == 'H1' then if EMT.HEAD == 'H1' or EMT.HEAD == 'H12' then
sEU = ' EU'..string.sub( EMT.TCPOS, 2) sEU = ' EU'..string.sub( EMT.TCPOS, 2)
elseif EMT.HEAD == 'H2' then elseif EMT.HEAD == 'H2' then
sEU = ' EU0' sEU = ' EU0'
+2 -2
View File
@@ -228,7 +228,7 @@ function OnSimulToolSelect()
EMT.TOOLTYPE = EgtTdbGetCurrToolParam( MCH_TP.TYPE) EMT.TOOLTYPE = EgtTdbGetCurrToolParam( MCH_TP.TYPE)
EMT.TOOLTOTLEN = EgtTdbGetCurrToolParam( MCH_TP.TOTLEN) EMT.TOOLTOTLEN = EgtTdbGetCurrToolParam( MCH_TP.TOTLEN)
-- se non lama su rinvio o graffettatrici, carico utensile -- se non lama su rinvio o graffettatrici, carico utensile
if EMT.HEAD == 'H1' or EMT.HEAD == 'H3' then if EMT.HEAD == 'H1' or EMT.HEAD == 'H12' or EMT.HEAD == 'H3' then
-- se sega a catena, imposto subito angolo scelto per asse virtuale A -- se sega a catena, imposto subito angolo scelto per asse virtuale A
if EMT.HEAD == 'H3' then if EMT.HEAD == 'H3' then
-- recupero la lavorazione successiva -- recupero la lavorazione successiva
@@ -307,7 +307,7 @@ function OnSimulToolDeselect()
EMT.TCPOS_1 = nil EMT.TCPOS_1 = nil
end end
-- deposito utensile se non lama su rinvio o graffettatrici -- deposito utensile se non lama su rinvio o graffettatrici
if ( EMT.NEXTHEAD == 'H1' or EMT.NEXTHEAD == 'H3') and ( EMT.HEAD == 'H1' or EMT.HEAD == 'H3') then if ( EMT.NEXTHEAD == 'H1' or EMT.NEXTHEAD == 'H12' or EMT.NEXTHEAD == 'H3') and ( EMT.HEAD == 'H1' or EMT.HEAD == 'H12' or EMT.HEAD == 'H3') then
if EMT.NEXTTOOL ~= EMT.TOOL_1 then if EMT.NEXTTOOL ~= EMT.TOOL_1 then
EgtOutText( 'Tool change in progress...') EgtOutText( 'Tool change in progress...')
-- simulo movimento -- simulo movimento
+1 -1
View File
@@ -48,7 +48,7 @@ function OnSpecialMoveZup()
EMC.TDIR = EgtGetCalcToolDirFromAngles( EMC.R1, EMC.R2, EMC.R3) EMC.TDIR = EgtGetCalcToolDirFromAngles( EMC.R1, EMC.R2, EMC.R3)
end end
-- se altre teste -- se altre teste
elseif EMC.HEAD == 'H14' or EMC.HEAD == 'H2' or EMC.HEAD == 'H21' or EMC.HEAD == 'H22' or EMC.HEAD == 'H23' then elseif EMC.HEAD == 'H14' or EMC.HEAD == 'H12' or EMC.HEAD == 'H21' or EMC.HEAD == 'H22' or EMC.HEAD == 'H23' then
-- non è necessaria una gestione speciale -- non è necessaria una gestione speciale
-- altrimenti errore -- altrimenti errore
else else
Binary file not shown.
Binary file not shown.
Binary file not shown.