Compare commits
11 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| e3e9494411 | |||
| d495c3a2af | |||
| 6d562d1ee6 | |||
| 26efc4308b | |||
| df13a4134e | |||
| 33fdb5a64f | |||
| 0b70495e30 | |||
| a27d448f81 | |||
| 984376affd | |||
| a21e44f2d8 | |||
| 357a317610 |
+36
-2
@@ -442,6 +442,14 @@ function OnMachiningStart()
|
||||
local MyParkCSawC2 = GetChainSawCHomeFromVirtualAxis( dPosA)
|
||||
EmtModifyAxisHome( 'C2', MyParkCSawC2)
|
||||
end
|
||||
-- gestione eventuale tastatura
|
||||
local bProbing = EgtGetValInNotes( EMT.MCHUSERNOTES, 'PROBE', 'b') or EgtGetValInNotes( EMT.MCHUSERNOTES, 'START-PROBE', 'b')
|
||||
if bProbing then
|
||||
if VerifyToolProbeCompatibility() then
|
||||
EMT.PROBE = true
|
||||
EMT.EXECPROBE = true
|
||||
end
|
||||
end
|
||||
-- gestione eventuale lavorazione in doppio
|
||||
local nDouType = EgtGetValInNotes( EMT.MCHUSERNOTES, 'DOUBLE', 'i')
|
||||
if nDouType == 2 or nDouType == 3 then
|
||||
@@ -605,6 +613,16 @@ function OnMachiningEnd()
|
||||
EMT.PREVTOOL = EMT.TOOL
|
||||
EMT.PREVHEAD = EMT.HEAD
|
||||
EMT.PREVTCPOS = EMT.TCPOS
|
||||
|
||||
-- se tastatura attiva, si disabilita la tastatura
|
||||
if EMT.PROBE then
|
||||
-- gestione eventuale tastatura
|
||||
local bStopProbing = EgtGetValInNotes( EMT.MCHUSERNOTES, 'PROBE', 'b') or EgtGetValInNotes( EMT.MCHUSERNOTES, 'END-PROBE', 'b')
|
||||
if bStopProbing then
|
||||
EmtOutput( 'G145 Z-10 EF7')
|
||||
EMT.PROBE = nil
|
||||
end
|
||||
end
|
||||
-- se taglio finale, aggiorno lunghezza barra
|
||||
if EMT.MCHCUT then
|
||||
EMT.LB = EMT.LT + ( EMT.X_OFF or 0)
|
||||
@@ -1508,6 +1526,22 @@ function OnRapid()
|
||||
EMT.RELOAD = false
|
||||
EMT.RELOAD2 = nil
|
||||
end
|
||||
-- se bisogna fare tastatura
|
||||
if EMT.EXECPROBE then
|
||||
EMT.EXECPROBE = nil
|
||||
local vtE = Vector3d( EMT.EXTR)
|
||||
local sFace
|
||||
if AreSameVectorApprox( vtE, Y_AX()) then
|
||||
sFace = 2
|
||||
elseif AreSameVectorApprox( vtE, -Y_AX()) then
|
||||
sFace = 4
|
||||
elseif AreSameVectorApprox( vtE, Z_AX()) then
|
||||
sFace = 3
|
||||
else
|
||||
error( "PROBING DIRECTION NOT MANAGED")
|
||||
end
|
||||
EmtOutput( 'G145 Z-10 EF'..sFace)
|
||||
end
|
||||
-- se taglio di coda senza residuo da scaricare, emetto M175 per accelerare il carico della barra successiva
|
||||
if EMT.MCHUSERNOTES and EMT.MCHUSERNOTES:find( 'Cut', 1, true) then
|
||||
EmtOutput( 'M175')
|
||||
@@ -2996,8 +3030,8 @@ function EmitParkRoller( dPosT, bSplitCut, bUsePrevDelta)
|
||||
end
|
||||
-- se anche solo una morsa è restata in posizione, le sposto comunque entrambe di 5mm per distanziare i pezzi separati
|
||||
if bYNoMove or bVNoMove then
|
||||
MDChar.Y1 = MDChar.Y1 + 5
|
||||
MDChar.Y2 = MDChar.Y2 - 5
|
||||
MDChar.Y1 = MDChar.Y1 + 30
|
||||
MDChar.Y2 = MDChar.Y2 - 30
|
||||
end
|
||||
elseif DiffY1 > 0.1 and DiffY2 < -0.1 then
|
||||
EmtSetLastError( 1201, 'Error Collision in ParkRoller')
|
||||
|
||||
+36
-15
@@ -24,7 +24,7 @@ end
|
||||
---------------------------------------------------------------------
|
||||
-- *** SIMULATION ***
|
||||
---------------------------------------------------------------------
|
||||
local COLL_SAFE_DIST = 4
|
||||
local COLL_SAFE_DIST = 3
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function OnSimulInit()
|
||||
@@ -237,18 +237,24 @@ function OnSimulDispositionStart()
|
||||
end
|
||||
end
|
||||
-- determino la risoluzione dello Zmap
|
||||
local dArea = b3Raw:getDimX() * b3Raw:getDimY() + b3Raw:getDimX() * b3Raw:getDimZ() + b3Raw:getDimY() * b3Raw:getDimZ()
|
||||
local dTol = 4.51
|
||||
if dArea < CoeffVM * 0.5e6 then
|
||||
dTol = 1.01
|
||||
elseif dArea < CoeffVM * 1.2e6 then
|
||||
dTol = 1.51
|
||||
elseif dArea < CoeffVM * 2.5e6 then
|
||||
dTol = 1.97
|
||||
elseif dArea < CoeffVM * 5.0e6 then
|
||||
dTol = 2.81
|
||||
elseif dArea < CoeffVM * 10.0e6 then
|
||||
dTol = 3.77
|
||||
local dTol = 4.00
|
||||
if EmtGetVMillStep then
|
||||
dTol = EmtGetVMillStep( b3Raw:getDimX(), b3Raw:getDimY(), b3Raw:getDimZ(), 4.00)
|
||||
else
|
||||
local dArea = b3Raw:getDimX() * b3Raw:getDimY() + b3Raw:getDimX() * b3Raw:getDimZ() + b3Raw:getDimY() * b3Raw:getDimZ()
|
||||
if dArea < 0.075e6 then
|
||||
dTol = 0.71
|
||||
elseif dArea < 0.15e6 then
|
||||
dTol = 1.01
|
||||
elseif dArea < 0.3e6 then
|
||||
dTol = 1.51
|
||||
elseif dArea < 0.6e6 then
|
||||
dTol = 1.97
|
||||
elseif dArea < 1.2e6 then
|
||||
dTol = 2.81
|
||||
elseif dArea < 2.4e6 then
|
||||
dTol = 3.77
|
||||
end
|
||||
end
|
||||
-- creo lo Zmap
|
||||
local VMillId = EgtVolZmapBox( nPartRawId, b3Raw:getMin(), b3Raw:getDimX(), b3Raw:getDimY(), b3Raw:getDimZ(), dTol, true, GDB_RT.GLOB)
|
||||
@@ -773,6 +779,12 @@ function OnSimulMachiningStart()
|
||||
else
|
||||
EMT.TASKID = 0
|
||||
end
|
||||
-- gestione eventuale tastatura
|
||||
EMT.PROBE = nil
|
||||
local bProbing = EgtGetValInNotes( EMT.MCHUSERNOTES, 'PROBE', 'b')
|
||||
if bProbing then
|
||||
EMT.PROBE = true
|
||||
end
|
||||
-- gestione eventuale lavorazione in doppio
|
||||
local nDouType = EgtGetValInNotes( EMT.MCHUSERNOTES, 'DOUBLE', 'i')
|
||||
if nDouType == 2 then
|
||||
@@ -1859,9 +1871,9 @@ function ExecParkRoller( PosY1, PosY2, PosV1, PosV2, bSpliCut, bAgg)
|
||||
-- se entrambe le morse si spostano vado in posizione calcolata
|
||||
if DiffY1 > 0.1 and DiffY2 < -0.1 then
|
||||
dAddMove = 0
|
||||
-- se almeno una è rimasta ferma in posizione, allontano comunque di 5mm ulteriori
|
||||
-- se almeno una è rimasta ferma in posizione, allontano comunque di 30mm ulteriori
|
||||
else
|
||||
dAddMove = 5
|
||||
dAddMove = 30
|
||||
end
|
||||
local MoveY1 = max( DiffY1, 0.0)
|
||||
local MoveY2 = min( DiffY2, 0.0)
|
||||
@@ -2276,6 +2288,15 @@ function LoadNextTool( nHSet, sTcPosDef, bFirst)
|
||||
return sTool
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
function VerifyToolProbeCompatibility()
|
||||
local bToolIsCompatible = false
|
||||
if EMT.TTOTLEN < 200 and EMT.TTOTDIAM < 80 then
|
||||
bToolIsCompatible = true
|
||||
end
|
||||
return bToolIsCompatible
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------
|
||||
-- *** ESTIMATION T&L ***
|
||||
---------------------------------------------------------------------
|
||||
|
||||
@@ -1,5 +1,15 @@
|
||||
==== Common_ONE-PF Update Log ====
|
||||
|
||||
Versione 2.7-- (--/--/2025)
|
||||
- (SIM) Aggiunta gestione qualità VMILL da impostazioni macchina. Tolto parametro 'CoeffVM'.
|
||||
- (GEN) Prima versione gestione tastatore
|
||||
|
||||
Versione 2.7e1 (28/05/2025)
|
||||
- (SIM-GEN) Alla separazione si spostano i carrelli di 30mm aprendo il taglio. Ticket#2259,Ticket#2328
|
||||
|
||||
Versione 2.7d1 (16/04/2025)
|
||||
- (SIM) Distanza di collisione portata a 3mm, qualità VMILL ridotta a 4mm. Ticket#2395
|
||||
|
||||
Versione 2.7c3 (25/03/2025)
|
||||
- (GEN) Corretto movimento approccio alla lavorazione se utensile lama montata su magazzino 2. Ticket#2361
|
||||
|
||||
|
||||
+1
-1
@@ -3,7 +3,7 @@
|
||||
|
||||
local InfoCommon_STD_PP = {
|
||||
NAME = 'Common_ONE-PF', -- nome script PP standard
|
||||
VERSION = '2.7c3', -- versione script
|
||||
VERSION = '2.7--', -- versione script
|
||||
MIN_MACH_VER_PP_COMMON = '2.5k1' -- versione minima kernel
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user