Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| bd96eb55e2 | |||
| 73cdbd2df5 | |||
| b28c999198 | |||
| 44def6c43e | |||
| d20c149686 | |||
| f8974da04c | |||
| fde0489fe7 | |||
| efa56704d7 |
+25
-13
@@ -564,10 +564,12 @@ function OnPathStart()
|
||||
--MyOutput( 'CNT='.. tostring( EMT.CNT or 0))
|
||||
-- se utensile non cambiato, salvo eventuali precedenti rotanti
|
||||
if EMT.TOOL == EMT.PREVTOOL and not EMT.ZMAX then
|
||||
EMT.L2pp = EMT.L2op
|
||||
EMT.L3pp = EMT.L3op
|
||||
EMT.R1pp = EMT.R1p
|
||||
EMT.R2pp = EMT.R2p
|
||||
else
|
||||
EMT.L2pp = nil
|
||||
EMT.L3pp = nil
|
||||
EMT.R1pp = nil
|
||||
EMT.R2pp = nil
|
||||
@@ -824,6 +826,9 @@ function OnRapid()
|
||||
EmitMoveDataHead( 2, { X=ParkX2, S=Speed})
|
||||
end
|
||||
end
|
||||
if ( not EMT.L2pp or ( EMT.L2pp and EMT.L2pp > ParkMchY2)) and ( ParkB2 ~= EMT.R2 or ParkC2 ~= EMT.R1) then
|
||||
EmitMoveDataHead( 2, { X=ParkMchY2, Z=ParkZ2, B=ParkB2, C=ParkC2, S=Speed})
|
||||
end
|
||||
EmitMoveStartHead( 2)
|
||||
EmitMoveWaitHead( 2)
|
||||
EmitMoveWaitChars( EgtIf( bOnlyCharY, 1, 3))
|
||||
@@ -1092,28 +1097,35 @@ function OnRapid()
|
||||
local CurrC2 = PrevR1
|
||||
local dSafeZ2 = EgtGetAxisHomePos( 'Z2')
|
||||
local Speed = EMT.S * EgtIf( EMT.HEAD ~= 'H22', 1, 1.65)
|
||||
if not EMT.L2p then EMT.L2p = EgtGetAxisHomePos( 'X2') end
|
||||
if not EMT.L2pp then EMT.L2pp = EgtGetAxisHomePos( 'X2') end
|
||||
-- calcolo posizione reale
|
||||
EMT.TCPOSREAL = 'T' .. AdjustTcPos( false, EMT.TCPOS, EMT.R3)
|
||||
-- se utensile cambiato (controllo il reale perchè per aggregato dipende come è stato caricato)
|
||||
if EMT.PREVTCPOSREAL_H2 ~= EMT.TCPOSREAL then
|
||||
-- se bisogna scrivere tutti gli assi
|
||||
if WriteAllCoordsOnFirstM101 then
|
||||
if EMT.HEAD == 'H22' then
|
||||
EmitMoveDataHead( 2, { X=ParkSawX2, Z=-dSafeZ2, B=0, C=CurrC2, S=Speed})
|
||||
else
|
||||
EmitMoveDataHead( 2, { X=SafeX2, Z=-dSafeZ2, B=CurrB2, C=CurrC2, S=Speed})
|
||||
if EMT.ZMAX then
|
||||
-- se bisogna scrivere tutti gli assi
|
||||
if WriteAllCoordsOnFirstM101 then
|
||||
if EMT.HEAD == 'H22' then
|
||||
EmitMoveDataHead( 2, { X=ParkSawX2, Z=-dSafeZ2, B=0, C=CurrC2, S=Speed})
|
||||
else
|
||||
EmitMoveDataHead( 2, { X=SafeX2, Z=-dSafeZ2, B=CurrB2, C=CurrC2, S=Speed})
|
||||
end
|
||||
end
|
||||
-- scrivo solo se gli assi rotanti sono cambiati
|
||||
EmitMoveDataHead( 2, { Z=-dSafeZ2, S=Speed})
|
||||
if EMT.HEAD ~= 'H22' and EMT.L2pp > ParkMchY2 and ( CurrB2 ~= EMT.R2 or CurrC2 ~= EMT.R1) then
|
||||
EmitMoveDataHead( 2, { X=ParkMchY2, Z=-dSafeZ2, B=CurrB2, C=CurrC2, S=Speed})
|
||||
end
|
||||
else
|
||||
-- scrivo solo se gli assi rotanti sono cambiati
|
||||
if EMT.ZMAX and EMT.L2pp > ParkMchY2 and ( CurrB2 ~= EMT.R2 or CurrC2 ~= EMT.R1) then
|
||||
EmitMoveDataHead( 2, { X=ParkMchY2, Z=-dSafeZ2, B=CurrB2, C=CurrC2, S=Speed})
|
||||
end
|
||||
end
|
||||
-- scrivo solo se gli assi rotanti sono cambiati
|
||||
EmitMoveDataHead( 2, { Z=-dSafeZ2, S=Speed})
|
||||
if EMT.HEAD ~= 'H22' and EMT.L2p > ParkMchY2 and ( CurrB2 ~= EMT.R2 or CurrC2 ~= EMT.R1) then
|
||||
EmitMoveDataHead( 2, { X=ParkMchY2, Z=-dSafeZ2, B=CurrB2, C=CurrC2, S=Speed})
|
||||
end
|
||||
-- se stesso utensile vado già alla X di lavoro
|
||||
else
|
||||
-- scrivo solo se gli assi rotanti sono cambiati
|
||||
if EMT.L2p > ParkMchY2 and ( CurrB2 ~= EMT.R2 or CurrC2 ~= EMT.R1) then
|
||||
if EMT.ZMAX and EMT.L2pp > ParkMchY2 and ( CurrB2 ~= EMT.R2 or CurrC2 ~= EMT.R1) then
|
||||
EmitMoveDataHead( 2, { X=ParkMchY2, Z=-dSafeZ2, B=CurrB2, C=CurrC2, S=Speed})
|
||||
end
|
||||
end
|
||||
|
||||
+2
-2
@@ -980,13 +980,13 @@ function OnSimulMoveStart()
|
||||
end
|
||||
else
|
||||
-- Porto la X alla giusta quota
|
||||
if X2Pos > ParkMchY2 and ( B2Pos ~= EMT.R2 or C2Pos ~= EMT.R1) then
|
||||
if EMT.ZMAX and X2Pos > ParkMchY2 and ( B2Pos ~= EMT.R2 or C2Pos ~= EMT.R1) then
|
||||
SimulMoveAxis( 'X2', ParkMchY2, MCH_SIM_STEP.RAPID)
|
||||
end
|
||||
end
|
||||
else
|
||||
-- Porto la X alla giusta quota
|
||||
if X2Pos > ParkMchY2 and ( B2Pos ~= EMT.R2 or C2Pos ~= EMT.R1) then
|
||||
if EMT.ZMAX and X2Pos > ParkMchY2 and ( B2Pos ~= EMT.R2 or C2Pos ~= EMT.R1) then
|
||||
SimulMoveAxis( 'X2', ParkMchY2, MCH_SIM_STEP.RAPID)
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,5 +1,10 @@
|
||||
==== Common_PF1250 Update Log ====
|
||||
|
||||
Versione 2.6e5 (23/05/2024)
|
||||
- (GEN) Controllo extra-corsa per testa 2 in caso di lavorazioni in doppio in Y
|
||||
- (GEN) Corretta lettura e salvataggio coordinala asse L2 con coordinate rispetto origine. Prima erano locali e sbagliava alcuni calcoli
|
||||
- (SIM-GEN) Se lavorazione con testa 2 e stesso utensile, piccola correzione che manda a parcheggio se cambiano assi rotanti solo se si trova a ZMAX
|
||||
|
||||
Versione 2.6e4 (15/05/2024)
|
||||
- (SIM-GEN) Miglioramento gestione lama su aggregato da sotto
|
||||
|
||||
|
||||
+1
-1
@@ -3,7 +3,7 @@
|
||||
|
||||
local InfoCommon_STD_PP = {
|
||||
NAME = 'Common_PF1250', -- nome script PP standard
|
||||
VERSION = '2.6e4', -- versione script
|
||||
VERSION = '2.6e5', -- versione script
|
||||
MIN_MACH_VER_PP_COMMON = '2.5k1' -- versione minima kernel
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user