Compare commits
11 Commits
3.1d1_DEV10
...
develop
| Author | SHA1 | Date | |
|---|---|---|---|
| 3843cf5e8c | |||
| 94f86eae81 | |||
| c16b1931a9 | |||
| cf9c2ebbb6 | |||
| e9aaede78c | |||
| 874e9f73d7 | |||
| 7940f26f50 | |||
| f59b55e723 | |||
| 421b8dd8a5 | |||
| 5db826e614 | |||
| 7f8f17f358 |
@@ -8,7 +8,8 @@ require( 'EmtGenerator')
|
||||
EgtEnableDebug( false)
|
||||
if not EmtModifyHeadAuxDirection then error( 'A newer version of the program is required (minimum 2.3j5)') end
|
||||
|
||||
PP_VER = '3.1d1_DEV10'
|
||||
PP_VER = '3.1d2'
|
||||
PP_NVER = '3.1.4.2'
|
||||
PP_NVER = '2.7.4.1'
|
||||
|
||||
-- Parametri macchina
|
||||
@@ -36,7 +37,7 @@ MinZ2 = -770.0
|
||||
MaxZ2 = 0.0
|
||||
SawOffsX = 110.0
|
||||
SawOffsY = 0
|
||||
SawOffsZ = -149.55
|
||||
SawOffsZ = -150.3
|
||||
SawC1Offs = 0
|
||||
SawB1Offs = 0
|
||||
SawOffs = 0.0
|
||||
@@ -75,6 +76,7 @@ DeltaTabZ = -1227.6497
|
||||
CoeffVM = 0.5
|
||||
OffsetH12X = 110
|
||||
OffsetH12Z = 150
|
||||
ParkYScrapRemove = nil
|
||||
|
||||
-- Aggiornamento con dati da TechnoEssetre7
|
||||
local sTs3Data = EgtGetStringFromIni( 'Wall', 'DATA_DIR', "C:\\TechnoEssetre7\\EgtData", EgtGetIniFile()).."\\Essetre-90480023_XS-MW.data"
|
||||
@@ -150,6 +152,7 @@ if EgtExistsFile( sData) then
|
||||
if MchOffs.OFFSET_ZERO6_Y then Orig6DeltaX = -MchOffs.OFFSET_ZERO6_Y end
|
||||
if MchOffs.OFFSET_ZERO6_X then Orig6DeltaY = MchOffs.OFFSET_ZERO6_X end
|
||||
if MchOffs.OFFSET_ZERO6_Z then Orig6DeltaZ = MchOffs.OFFSET_ZERO6_Z end
|
||||
if MchOffs.PARK_Y_SCRAP_REMOVE then ParkYScrapRemove = MchOffs.PARK_Y_SCRAP_REMOVE end
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
+53
-45
@@ -60,28 +60,7 @@ function OnProgramStart()
|
||||
end
|
||||
EmtOutput( '('.. MLE_INFO..')')
|
||||
-- Parametri macchina
|
||||
local sOut = 'L151='..EgtNumToString( Nail11DeltaY - DeltaTabY, 2)..'\n'..
|
||||
'L152='..EgtNumToString( DeltaTabX - Nail11DeltaX, 2)..'\n'..
|
||||
'L153='..EgtNumToString( DeltaTabZ - Nail11DeltaZ, 2)..'\n'..
|
||||
'L154='..EgtNumToString( Nail12DeltaY - DeltaTabY, 2)..'\n'..
|
||||
'L155='..EgtNumToString( DeltaTabX - Nail12DeltaX, 2)..'\n'..
|
||||
'L156='..EgtNumToString( DeltaTabZ - Nail12DeltaZ, 2)..'\n'..
|
||||
'L157='..EgtNumToString( Nail13DeltaY - DeltaTabY, 2)..'\n'..
|
||||
'L158='..EgtNumToString( DeltaTabX - Nail13DeltaX, 2)..'\n'..
|
||||
'L159='..EgtNumToString( DeltaTabZ - Nail13DeltaZ, 2)..'\n'..
|
||||
'L160='..EgtNumToString( Nail14DeltaY - DeltaTabY, 2)..'\n'..
|
||||
'L161='..EgtNumToString( DeltaTabX - Nail14DeltaX, 2)..'\n'..
|
||||
'L162='..EgtNumToString( DeltaTabZ - Nail14DeltaZ, 2)..'\n'..
|
||||
'L163='..EgtNumToString( Orig2DeltaY, 2)..'\n'..
|
||||
'L164='..EgtNumToString( -Orig2DeltaX, 2)..'\n'..
|
||||
'L165='..EgtNumToString( Orig2DeltaZ, 2)..'\n'..
|
||||
'L166='..EgtNumToString( Orig3DeltaY, 2)..'\n'..
|
||||
'L167='..EgtNumToString( -Orig3DeltaX, 2)..'\n'..
|
||||
'L168='..EgtNumToString( Orig3DeltaZ, 2)..'\n'..
|
||||
'L169='..EgtNumToString( Orig4DeltaY, 2)..'\n'..
|
||||
'L170='..EgtNumToString( -Orig4DeltaX, 2)..'\n'..
|
||||
'L171='..EgtNumToString( Orig4DeltaZ, 2)..'\n'..
|
||||
'G114'..' EA'..EgtNumToString( -DeltaTabY, 2)..' EB'..EgtNumToString( DeltaTabX, 2)..
|
||||
local sOut = 'G114'..' EA'..EgtNumToString( -DeltaTabY, 2)..' EB'..EgtNumToString( DeltaTabX, 2)..
|
||||
' EC'..EgtNumToString( DeltaTabZ, 2)..' ED'..EgtNumToString( MillOffs, 2)..
|
||||
' EE'..EgtNumToString( Nail11DeltaY - DeltaTabY, 2, 2)..' EF'..EgtNumToString( DeltaTabX - Nail11DeltaX, 2)..' EG'..EgtNumToString( DeltaTabZ - Nail11DeltaZ, 2)..
|
||||
' EH'..EgtNumToString( Nail12DeltaY - DeltaTabY, 2, 2)..' EI'..EgtNumToString( DeltaTabX - Nail12DeltaX, 2)..' EL'..EgtNumToString( DeltaTabZ - Nail12DeltaZ, 2)..
|
||||
@@ -119,7 +98,7 @@ function OnProgramEnd()
|
||||
EmtOutput( 'M05 E80000=1')
|
||||
-- Tipo di scarico
|
||||
if not TEST_USE then
|
||||
EmtOutput( 'M27 E30057=1')
|
||||
EmtOutput( 'M27 E30057=0')
|
||||
end
|
||||
-- Se modalità test, termino il programma
|
||||
if TEST_USE then
|
||||
@@ -157,10 +136,16 @@ function OnDispositionEnd()
|
||||
' E30051='..EgtNumToString( 1000 * b3Raw:getDimX(), 0)..
|
||||
' E30052='..EgtNumToString( 1000 * b3Raw:getDimZ(), 0))
|
||||
EMT.ST = b3Raw:getDimZ()
|
||||
-- Scelta origine
|
||||
EmtOutput( 'M26 E30054='..EgtNumToString( EMT.ORIG, 0))
|
||||
|
||||
-- Comando per gestione carico. Se LOAD90 attivo, bisogna scrivere 4, che significa di attivare il laser posto sul ponte, che cerca lo zero del pannello
|
||||
-- N.B.: si utilizza LOAD90 perchè è un parametro che già leggiamo e che sulle WALL non viene utilizzato
|
||||
local BtlInfoId = EgtGetFirstNameInGroup( GDB_ID.ROOT, 'BtlInfo') or EgtGetCurrMachGroup() or GDB_ID.NULL
|
||||
local nLoad90 = EgtGetInfo( BtlInfoId, 'LOAD90', 'i') or 0
|
||||
if nLoad90 > 0 then nLoad90 = 4 else nLoad90 = 1 end
|
||||
EmtOutput( 'M26 E30054='..EgtNumToString( nLoad90, 0))
|
||||
-- Posizione cuffia
|
||||
local dHCuff = b3Raw:getDimZ() + 32
|
||||
local dHeightSubPiece = EMT.RAWPOS[3] or 0
|
||||
local dHCuff = dHeightSubPiece + b3Raw:getDimZ() + 32
|
||||
EmtOutput( 'E30039=' .. EgtNumToString( dHCuff * 1000, 0))
|
||||
-- Eventuale salto a lavorazione in corso
|
||||
EmtOutput( 'G79 NE80000')
|
||||
@@ -252,11 +237,19 @@ end
|
||||
function OnPathEnd()
|
||||
if IsNailingHead( EMT.HEAD) then
|
||||
local dStep = GetValNotes( EgtGetMachiningParam( MCH_MP.USERNOTES), 'Par', 'd') or 100
|
||||
local dSafeZ = max( EgtGetMachiningParam( MCH_MP.STARTPOS), 10) or 20
|
||||
local dSafeZ = EMT.NAIL_START_L3 + ( max( EgtGetMachiningParam( MCH_MP.STARTPOS), 10) or 20)
|
||||
--local dSafeZ = EgtMdbGetGeneralParam( MCH_GP.SAFEZ)
|
||||
if EMT.HEAD == 'H21' or EMT.HEAD == 'H22' or EMT.HEAD == 'H23' then
|
||||
local nNextOperationId = EgtGetNextActiveOperation( EMT.MCHID)
|
||||
if nNextOperationId then
|
||||
EgtSetCurrMachining( nNextOperationId)
|
||||
EMT.NEXTTOOL = EgtGetMachiningParam( MCH_MP.TOOL)
|
||||
EgtSetCurrMachining( EMT.MCHID)
|
||||
end
|
||||
local sZMax = ''
|
||||
if EMT.TOOL ~= EMT.NEXTTOOL then sZMax = ' EB1' end
|
||||
EmtOutput( 'G124 X'..EmtLenToString( EMT.NAIL_START_L1, 3)..' Y'..EmtLenToString( EMT.NAIL_START_L2, 3)..' Z'..EmtLenToString( EMT.NAIL_START_L3, 3)..
|
||||
' B'..EmtLenToString( EMT.NAIL_END_L1, 3)..' C'..EmtLenToString( EMT.NAIL_END_L2, 3)..' EA'..EmtLenToString( dStep, 3)..' EB1'..
|
||||
' B'..EmtLenToString( EMT.NAIL_END_L1, 3)..' C'..EmtLenToString( EMT.NAIL_END_L2, 3)..' EA'..EmtLenToString( dStep, 3).. sZMax..
|
||||
' W'..EmtLenToString( dSafeZ, 3)..EMT.NAIL_END)
|
||||
else
|
||||
local sExtra = ''
|
||||
@@ -321,7 +314,7 @@ function OnRapid()
|
||||
if EMT.SCRAPFIRST then
|
||||
EMT.SCRAPFIRST = false
|
||||
local b3Raw = EgtGetRawPartBBox( EMT.RAWID)
|
||||
local ParkY = min( -( b3Raw:getMin():getX() - 2000), -MinY)
|
||||
local ParkY = ParkYScrapRemove or min( -( b3Raw:getMin():getX() - 2000), MinY)
|
||||
EmtOutput( 'G104 Y' .. EmtLenToString( ParkY, 3) .. ' ET1' .. GetEF())
|
||||
end
|
||||
-- pre-posizionamento
|
||||
@@ -333,8 +326,8 @@ function OnRapid()
|
||||
local sEE = GetEE()
|
||||
local sEF = GetEF()
|
||||
local sEM = ' EM'..EgtIf( EMT.S > 0, '3', '4')
|
||||
local sES = ' ES'..EgtNumToString( abs( EMT.S), 0)
|
||||
local sEL = ' EL' .. EmtLenToString( ChSawLen, 3)
|
||||
local sES = ' ES'..EgtNumToString( abs( EMT.S) * EgtIf( EMT.HEAD ~= 'H12', 1, 1.65), 0)
|
||||
local sEL = ' EL' .. GetEL()
|
||||
local sER = ' ER' .. EmtLenToString( EMT.TLEN, 3)
|
||||
sOut = sOut .. sET .. sEU .. sEE .. sEF .. sEM .. sES .. sEL .. sER
|
||||
EmtOutput( sOut)
|
||||
@@ -345,7 +338,7 @@ function OnRapid()
|
||||
EMT.SCRAPFIRST = false
|
||||
-- pausa per rimozione sfridi
|
||||
local b3Raw = EgtGetRawPartBBox( EMT.RAWID)
|
||||
local ParkY = min( -( b3Raw:getMin():getX() - 2000), -MinY)
|
||||
local ParkY = ParkYScrapRemove or min( -( b3Raw:getMin():getX() - 2000), MinY)
|
||||
EmtOutput( 'G104 Y' .. EmtLenToString( ParkY, 3) .. ' ET1' .. GetEF())
|
||||
end
|
||||
end
|
||||
@@ -367,8 +360,8 @@ function OnRapid()
|
||||
local sEE = GetEE()
|
||||
local sEF = GetEF()
|
||||
local sEM = ' EM'..EgtIf( EMT.S > 0, '3', '4')
|
||||
local sES = ' ES'..EgtNumToString( abs( EMT.S), 0)
|
||||
local sEL = ' EL' .. EmtLenToString( EgtIf( EMT.HEAD ~= 'H3', EMT.TLEN, ChSawLen), 3)
|
||||
local sES = ' ES'..EgtNumToString( abs( EMT.S) * EgtIf( EMT.HEAD ~= 'H12', 1, 1.65), 0)
|
||||
local sEL = ' EL' .. GetEL()
|
||||
local sER = ' ER' .. EmtLenToString( EgtIf( EMT.HEAD ~= 'H3', EMT.TDIAM / 2, EMT.TLEN), 3)
|
||||
sOut = sOut .. sET .. sEU .. sEE .. sEF .. sEM .. sES .. sEL .. sER
|
||||
EmtOutput( sOut)
|
||||
@@ -395,8 +388,8 @@ function OnRapid()
|
||||
local sEE = GetEE()
|
||||
local sEF = ' EF20000'
|
||||
local sEM = ' EM'..EgtIf( EMT.S > 0, '3', '4')
|
||||
local sES = ' ES'..EgtNumToString( abs( EMT.S), 0)
|
||||
local sEL = ' EL' .. EmtLenToString( EgtIf( EMT.HEAD ~= 'H3', EMT.TLEN, ChSawLen), 3)
|
||||
local sES = ' ES'..EgtNumToString( abs( EMT.S) * EgtIf( EMT.HEAD ~= 'H12', 1, 1.65), 0)
|
||||
local sEL = ' EL' .. GetEL()
|
||||
local sER = ' ER' .. EmtLenToString( EgtIf( EMT.HEAD ~= 'H3', EMT.TDIAM / 2, EMT.TLEN), 3)
|
||||
if not IsNailingHead( EMT.HEAD) then
|
||||
EmtOutput( 'G102'..EmtGetAxis('L1')..EmtGetAxis('L2')..EmtGetAxis('L3')..EmtGetAxis('R2')..EmtGetAxis('R1')..EMT.IPLGLSTR..sET..sEU..sEE..sEF..sEM..sES..sEL..sER)
|
||||
@@ -444,8 +437,8 @@ function OnRapid()
|
||||
local sEE = GetEE()
|
||||
local sEF = GetEF()
|
||||
local sEM = ' EM'..EgtIf( EMT.S > 0, '3', '4')
|
||||
local sES = ' ES'..EgtNumToString( abs( EMT.S), 0)
|
||||
local sEL = ' EL' .. EmtLenToString( EMT.TLEN, 3)
|
||||
local sES = ' ES'..EgtNumToString( abs( EMT.S) * EgtIf( EMT.HEAD ~= 'H12', 1, 1.65), 0)
|
||||
local sEL = ' EL' .. GetEL()
|
||||
local sER = ' ER' .. EmtLenToString( EMT.TDIAM / 2, 3)
|
||||
sOut = sOut .. sET .. sEU .. sEE .. sEF .. sEM .. sES .. sEL .. sER
|
||||
EmtOutput( sOut)
|
||||
@@ -459,8 +452,8 @@ function OnRapid()
|
||||
local sEE = GetEE()
|
||||
local sEF = GetEF()
|
||||
local sEM = ' EM'..EgtIf( EMT.S > 0, '3', '4')
|
||||
local sES = ' ES'..EgtNumToString( abs( EMT.S), 0)
|
||||
local sEL = ' EL' .. EmtLenToString( EMT.TLEN, 3)
|
||||
local sES = ' ES'..EgtNumToString( abs( EMT.S) * EgtIf( EMT.HEAD ~= 'H12', 1, 1.65), 0)
|
||||
local sEL = ' EL' .. GetEL()
|
||||
local sER = ' ER' .. EmtLenToString( EMT.TDIAM / 2, 3)
|
||||
sOut = sOut .. sET .. sEU .. sEE .. sEF .. sEM .. sES .. sEL .. sER
|
||||
EmtOutput( sOut)
|
||||
@@ -513,8 +506,8 @@ function OnLinear()
|
||||
local sEE = GetEE()
|
||||
local sEF = ' EF20000'
|
||||
local sEM = ' EM'..EgtIf( EMT.S > 0, '3', '4')
|
||||
local sES = ' ES'..EgtNumToString( abs( EMT.S), 0)
|
||||
local sEL = ' EL' .. EmtLenToString( EgtIf( EMT.HEAD ~= 'H3', EMT.TLEN, ChSawLen), 3)
|
||||
local sES = ' ES'..EgtNumToString( abs( EMT.S) * EgtIf( EMT.HEAD ~= 'H12', 1, 1.65), 0)
|
||||
local sEL = ' EL' .. GetEL()
|
||||
local sER = ' ER' .. EmtLenToString( EgtIf( EMT.HEAD ~= 'H3', EMT.TDIAM / 2, EMT.TLEN), 3)
|
||||
if not IsNailingHead( EMT.HEAD) then
|
||||
EmtOutput( 'G102'..EmtGetAxis('L1')..EmtGetAxis('L2')..EmtGetAxis('L3')..EmtGetAxis('R2')..EmtGetAxis('R1')..EMT.IPLGLSTR..sET..sEU..sEE..sEF..sEM..sES..sEL..sER)
|
||||
@@ -683,17 +676,20 @@ function CalcInterpPlane()
|
||||
--EmtOutput( 'IPLGLFR='..tostring(EMT.IPLGLFR))
|
||||
local _, dAngV, dAngO = SphericalFromVector( vtE)
|
||||
local dAngO2 = EmtGetAngO2( EMT.IPLGLFR:getVersZ(), EMT.IPLGLFR:getVersX(), dAngV, dAngO)
|
||||
dAngO = dAngO - 90
|
||||
while dAngO < 0 do
|
||||
dAngO = dAngO + 90
|
||||
while dAngO - GEO.EPS_ANG_SMALL < 0 do
|
||||
dAngO = dAngO + 360
|
||||
end
|
||||
while dAngO + GEO.EPS_ANG_SMALL > 360 do
|
||||
dAngO = dAngO - 360
|
||||
end
|
||||
-- se rotazione solo attorno alla C allora si mette come rotazione finale
|
||||
if abs( dAngV) < GEO.EPS_ANG_SMALL then
|
||||
dAngO2 = dAngO2 + dAngO
|
||||
while dAngO2 >= 360 do
|
||||
dAngO2 = dAngO2 - 360
|
||||
end
|
||||
dAngO = 0
|
||||
dAngO = 0
|
||||
end
|
||||
|
||||
local xOut = - ( yS - DeltaTabY)
|
||||
@@ -771,6 +767,18 @@ function GetEF()
|
||||
return ' EF60000'
|
||||
end
|
||||
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function GetEL()
|
||||
local dToolLen = EMT.TLEN
|
||||
if EMT.HEAD == 'H12' then
|
||||
dToolLen = dToolLen - SawOffsZ
|
||||
elseif EMT.HEAD == 'H3' then
|
||||
dToolLen = ChSawLen
|
||||
end
|
||||
return EgtNumToString( dToolLen, 3)
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function EmitCount()
|
||||
EMT.CNT = EMT.CNT + 1
|
||||
|
||||
Binary file not shown.
+3
-1
@@ -30,8 +30,10 @@ local WallData = {
|
||||
MAX_CLEAN_CRN60 = 150, -- massimo spessore per pulitura angolo con fresa 60deg
|
||||
MILL_MAX_DEPTH_AS_MAT = false, -- massimo affondamento frese uguale ad altezza tagliente (max materiale)
|
||||
RAWCOL = { 255, 160, 32, 30}, -- colore del grezzo
|
||||
SIMUL_VIEW_DIR = 2, -- direzione di vista predefinita per la simulazione (1=NW, 2=SW, 3=NE, 4=SE)
|
||||
DEFAULT_RAW_NO_EXTRA_WIDTH = true,
|
||||
SIMUL_VIEW_DIR = 4, -- direzione di vista predefinita per la simulazione (1=NW, 2=SW, 3=NE, 4=SE)
|
||||
ORIG_CORNER = 'BL', -- posizione origine (TL,BL,TR,BR,TM,BM)
|
||||
RAWPART_ROT = 180,
|
||||
USE_POSY = true -- utilizzare POSY di BTL (spostamento sullo spessore per pareti a layer)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user